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

#include <smoke.h>
#include <qt3support_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqt3support {

class x_Q3ServerSocket : public Q3ServerSocket, 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<Q3ServerSocket*>(this))) {
            const QMetaObject* xret = ((const x_Q3ServerSocket*)this)->Q3ServerSocket::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3ServerSocket*)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<Q3ServerSocket*>(this))) {
            void* xret = this->Q3ServerSocket::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 = Q3ServerSocket::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 = Q3ServerSocket::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 = Q3ServerSocket::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 = Q3ServerSocket::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<Q3ServerSocket*>(this))) {
            int xret = this->Q3ServerSocket::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) {
        // Q3ServerSocket* Q3ServerSocket(Q_UINT16, int, QObject*, const char*)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(Q_UINT16*)x[1].s_class,(int)x[2].s_int,(QObject*)x[3].s_class,(const char*)x[4].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3ServerSocket(Q_UINT16 x1, int x2, QObject* x3, const char* x4) : Q3ServerSocket(x1, x2, x3, x4) {}
    static void x_9(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(const QHostAddress&, Q_UINT16, int, QObject*, const char*)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class,(int)x[3].s_int,(QObject*)x[4].s_class,(const char*)x[5].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3ServerSocket(const QHostAddress& x1, Q_UINT16 x2, int x3, QObject* x4, const char* x5) : Q3ServerSocket(x1, x2, x3, x4, x5) {}
    static void x_10(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(QObject*, const char*)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket((QObject*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3ServerSocket(QObject* x1, const char* x2) : Q3ServerSocket(x1, x2) {}
    void x_11(Smoke::Stack x) {
        // bool ok() const
        bool xret = ((const x_Q3ServerSocket*)this)->Q3ServerSocket::ok();
        x[0].s_bool = xret;
    }
    void x_12(Smoke::Stack x) {
        // Q_UINT16 port() const
        Q_UINT16 xret = ((const x_Q3ServerSocket*)this)->Q3ServerSocket::port();
        x[0].s_class = (void*)new Q_UINT16(xret);
    }
    void x_13(Smoke::Stack x) {
        // int socket() const
        int xret = ((const x_Q3ServerSocket*)this)->Q3ServerSocket::socket();
        x[0].s_int = xret;
    }
    void x_14(Smoke::Stack x) {
        // virtual void setSocket(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3ServerSocket*>(this))) {
            this->Q3ServerSocket::setSocket((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSocket((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // QHostAddress address() const
        QHostAddress xret = ((const x_Q3ServerSocket*)this)->Q3ServerSocket::address();
        x[0].s_class = (void*)new QHostAddress(xret);
    }
    void x_16(Smoke::Stack x) {
        // virtual void newConnection(int) = 0
        this->newConnection((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // Q3SocketDevice* socketDevice()
        Q3SocketDevice* xret = this->Q3ServerSocket::socketDevice();
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3ServerSocket::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 = Q3ServerSocket::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) {
        // Q3ServerSocket* Q3ServerSocket(Q_UINT16)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(Q_UINT16*)x[1].s_class,(int)1,(QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_21(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(Q_UINT16, int)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(Q_UINT16*)x[1].s_class,(int)x[2].s_int,(QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_22(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(Q_UINT16, int, QObject*)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(Q_UINT16*)x[1].s_class,(int)x[2].s_int,(QObject*)x[3].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_23(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(const QHostAddress&, Q_UINT16)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class,(int)1,(QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_24(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(const QHostAddress&, Q_UINT16, int)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class,(int)x[3].s_int,(QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_25(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(const QHostAddress&, Q_UINT16, int, QObject*)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class,(int)x[3].s_int,(QObject*)x[4].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_26(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket()
        x_Q3ServerSocket* xret = new x_Q3ServerSocket((QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_27(Smoke::Stack x) {
        // Q3ServerSocket* Q3ServerSocket(QObject*)
        x_Q3ServerSocket* xret = new x_Q3ServerSocket((QObject*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_28(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3ServerSocket::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3443, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3ServerSocket::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3444, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3ServerSocket::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(3449, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3ServerSocket::qt_metacall(x1, x2, x3);
    }
    virtual void setSocket(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3456, (void*)this, x)) return;
        this->Q3ServerSocket::setSocket(x1);
    }
    virtual void newConnection(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        this->_binding->callMethod(3458, (void*)this, x, true /*pure virtual*/);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5238, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::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(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_Q3ServerSocket() { this->_binding->deleted(91, (void*)this); }
};
void xcall_Q3ServerSocket(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3ServerSocket *xself = (x_Q3ServerSocket*)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_Q3ServerSocket::x_3(args);	break;
        case 4: x_Q3ServerSocket::x_4(args);	break;
        case 5: x_Q3ServerSocket::x_5(args);	break;
        case 6: x_Q3ServerSocket::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3ServerSocket::x_8(args);	break;
        case 9: x_Q3ServerSocket::x_9(args);	break;
        case 10: x_Q3ServerSocket::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_Q3ServerSocket::x_18(args);	break;
        case 19: x_Q3ServerSocket::x_19(args);	break;
        case 20: x_Q3ServerSocket::x_20(args);	break;
        case 21: x_Q3ServerSocket::x_21(args);	break;
        case 22: x_Q3ServerSocket::x_22(args);	break;
        case 23: x_Q3ServerSocket::x_23(args);	break;
        case 24: x_Q3ServerSocket::x_24(args);	break;
        case 25: x_Q3ServerSocket::x_25(args);	break;
        case 26: x_Q3ServerSocket::x_26(args);	break;
        case 27: x_Q3ServerSocket::x_27(args);	break;
        case 28: x_Q3ServerSocket::x_28(args);	break;
        case 29: delete (Q3ServerSocket*)xself;	break;
    }
}
class x_Q3Shared : public Q3Shared {
    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) {
        // Q3Shared* Q3Shared()
        x_Q3Shared* xret = new x_Q3Shared();
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Shared() : Q3Shared() {}
    void x_2(Smoke::Stack x) {
        // void ref()
        this->Q3Shared::ref();
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // bool deref()
        bool xret = this->Q3Shared::deref();
        x[0].s_bool = xret;
    }
    static void x_4(Smoke::Stack x) {
        // Q3Shared* Q3Shared(const Q3Shared&)
        x_Q3Shared* xret = new x_Q3Shared(*(const Q3Shared*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Shared(const Q3Shared& x1) : Q3Shared(x1) {}
    void x_5(Smoke::Stack x) {
        // unsigned int count
        x[0].s_uint = this->Q3Shared::count;
    }
    void x_6(Smoke::Stack x) {
        // unsigned int count=
        this->Q3Shared::count = (unsigned int)x[1].s_uint;
    }
    ~x_Q3Shared() { this->_binding->deleted(92, (void*)this); }
};
void xcall_Q3Shared(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3Shared *xself = (x_Q3Shared*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_Q3Shared::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: x_Q3Shared::x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: delete (Q3Shared*)xself;	break;
    }
}
class x_Q3Signal : public Q3Signal, 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<Q3Signal*>(this))) {
            const QMetaObject* xret = ((const x_Q3Signal*)this)->Q3Signal::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3Signal*)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<Q3Signal*>(this))) {
            void* xret = this->Q3Signal::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 = Q3Signal::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 = Q3Signal::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 = Q3Signal::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 = Q3Signal::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<Q3Signal*>(this))) {
            int xret = this->Q3Signal::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) {
        // Q3Signal* Q3Signal(QObject*, const char*)
        x_Q3Signal* xret = new x_Q3Signal((QObject*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Signal(QObject* x1, const char* x2) : Q3Signal(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // bool connect(const QObject*, const char*)
        bool xret = this->Q3Signal::connect((const QObject*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // bool disconnect(const QObject*, const char*)
        bool xret = this->Q3Signal::disconnect((const QObject*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // void activate()
        this->Q3Signal::activate();
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // bool isBlocked() const
        bool xret = ((const x_Q3Signal*)this)->Q3Signal::isBlocked();
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // void block(bool)
        this->Q3Signal::block((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // void setParameter(int)
        this->Q3Signal::setParameter((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // int parameter() const
        int xret = ((const x_Q3Signal*)this)->Q3Signal::parameter();
        x[0].s_int = xret;
    }
    void x_16(Smoke::Stack x) {
        // void setValue(const QVariant&)
        this->Q3Signal::setValue(*(const QVariant*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // QVariant value() const
        QVariant xret = ((const x_Q3Signal*)this)->Q3Signal::value();
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_18(Smoke::Stack x) {
        // void signal(const QVariant&)
        this->Q3Signal::signal(*(const QVariant*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // void intSignal(int)
        this->Q3Signal::intSignal((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    static void x_20(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3Signal::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_21(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3Signal::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_22(Smoke::Stack x) {
        // Q3Signal* Q3Signal()
        x_Q3Signal* xret = new x_Q3Signal((QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_23(Smoke::Stack x) {
        // Q3Signal* Q3Signal(QObject*)
        x_Q3Signal* xret = new x_Q3Signal((QObject*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    void x_24(Smoke::Stack x) {
        // bool disconnect(const QObject*)
        bool xret = this->Q3Signal::disconnect((const QObject*)x[1].s_class,(const char*)0);
        x[0].s_bool = xret;
    }
    static void x_25(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3Signal::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3479, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3Signal::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3480, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3Signal::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(3485, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3Signal::qt_metacall(x1, x2, x3);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5238, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::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(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_Q3Signal() { this->_binding->deleted(93, (void*)this); }
};
void xcall_Q3Signal(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3Signal *xself = (x_Q3Signal*)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_Q3Signal::x_3(args);	break;
        case 4: x_Q3Signal::x_4(args);	break;
        case 5: x_Q3Signal::x_5(args);	break;
        case 6: x_Q3Signal::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3Signal::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: x_Q3Signal::x_20(args);	break;
        case 21: x_Q3Signal::x_21(args);	break;
        case 22: x_Q3Signal::x_22(args);	break;
        case 23: x_Q3Signal::x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: x_Q3Signal::x_25(args);	break;
        case 26: delete (Q3Signal*)xself;	break;
    }
}
class x_Q3SimpleRichText : public Q3SimpleRichText {
    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) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&, const QString&, const Q3StyleSheet*)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,*(const QString*)x[3].s_class,(const Q3StyleSheet*)x[4].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3SimpleRichText(const QString& x1, const QFont& x2, const QString& x3, const Q3StyleSheet* x4) : Q3SimpleRichText(x1, x2, x3, x4) {}
    static void x_2(Smoke::Stack x) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&, const QString&, const Q3StyleSheet*, const Q3MimeSourceFactory*, int, const QColor&, bool)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,*(const QString*)x[3].s_class,(const Q3StyleSheet*)x[4].s_class,(const Q3MimeSourceFactory*)x[5].s_class,(int)x[6].s_int,*(const QColor*)x[7].s_class,(bool)x[8].s_bool);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3SimpleRichText(const QString& x1, const QFont& x2, const QString& x3, const Q3StyleSheet* x4, const Q3MimeSourceFactory* x5, int x6, const QColor& x7, bool x8) : Q3SimpleRichText(x1, x2, x3, x4, x5, x6, x7, x8) {}
    void x_3(Smoke::Stack x) {
        // void setWidth(int)
        this->Q3SimpleRichText::setWidth((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_4(Smoke::Stack x) {
        // void setWidth(QPainter*, int)
        this->Q3SimpleRichText::setWidth((QPainter*)x[1].s_class,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // void setDefaultFont(const QFont&)
        this->Q3SimpleRichText::setDefaultFont(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // int width() const
        int xret = ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::width();
        x[0].s_int = xret;
    }
    void x_7(Smoke::Stack x) {
        // int widthUsed() const
        int xret = ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::widthUsed();
        x[0].s_int = xret;
    }
    void x_8(Smoke::Stack x) {
        // int height() const
        int xret = ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::height();
        x[0].s_int = xret;
    }
    void x_9(Smoke::Stack x) {
        // void adjustSize()
        this->Q3SimpleRichText::adjustSize();
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void draw(QPainter*, int, int, const QRect&, const QColorGroup&, const QBrush*) const
        ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::draw((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,*(const QRect*)x[4].s_class,*(const QColorGroup*)x[5].s_class,(const QBrush*)x[6].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void draw(QPainter*, int, int, const QRegion&, const QColorGroup&, const QBrush*) const
        ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::draw((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,*(const QRegion*)x[4].s_class,*(const QColorGroup*)x[5].s_class,(const QBrush*)x[6].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QString context() const
        QString xret = ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::context();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_13(Smoke::Stack x) {
        // QString anchorAt(const QPoint&) const
        QString xret = ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::anchorAt(*(const QPoint*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_14(Smoke::Stack x) {
        // bool inText(const QPoint&) const
        bool xret = ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::inText(*(const QPoint*)x[1].s_class);
        x[0].s_bool = xret;
    }
    static void x_15(Smoke::Stack x) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,(const QString&)QString(),(const Q3StyleSheet*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_16(Smoke::Stack x) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&, const QString&)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,*(const QString*)x[3].s_class,(const Q3StyleSheet*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_17(Smoke::Stack x) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&, const QString&, const Q3StyleSheet*, const Q3MimeSourceFactory*)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,*(const QString*)x[3].s_class,(const Q3StyleSheet*)x[4].s_class,(const Q3MimeSourceFactory*)x[5].s_class,(int)-1,(const QColor&)Qt::blue,(bool)true);
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&, const QString&, const Q3StyleSheet*, const Q3MimeSourceFactory*, int)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,*(const QString*)x[3].s_class,(const Q3StyleSheet*)x[4].s_class,(const Q3MimeSourceFactory*)x[5].s_class,(int)x[6].s_int,(const QColor&)Qt::blue,(bool)true);
        x[0].s_class = (void*)xret;
    }
    static void x_19(Smoke::Stack x) {
        // Q3SimpleRichText* Q3SimpleRichText(const QString&, const QFont&, const QString&, const Q3StyleSheet*, const Q3MimeSourceFactory*, int, const QColor&)
        x_Q3SimpleRichText* xret = new x_Q3SimpleRichText(*(const QString*)x[1].s_class,*(const QFont*)x[2].s_class,*(const QString*)x[3].s_class,(const Q3StyleSheet*)x[4].s_class,(const Q3MimeSourceFactory*)x[5].s_class,(int)x[6].s_int,*(const QColor*)x[7].s_class,(bool)true);
        x[0].s_class = (void*)xret;
    }
    void x_20(Smoke::Stack x) {
        // void draw(QPainter*, int, int, const QRect&, const QColorGroup&) const
        ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::draw((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,*(const QRect*)x[4].s_class,*(const QColorGroup*)x[5].s_class,(const QBrush*)0);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // void draw(QPainter*, int, int, const QRegion&, const QColorGroup&) const
        ((const x_Q3SimpleRichText*)this)->Q3SimpleRichText::draw((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,*(const QRegion*)x[4].s_class,*(const QColorGroup*)x[5].s_class,(const QBrush*)0);
        (void)x; // noop (for compiler warning)
    }
    ~x_Q3SimpleRichText() { this->_binding->deleted(94, (void*)this); }
};
void xcall_Q3SimpleRichText(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3SimpleRichText *xself = (x_Q3SimpleRichText*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_Q3SimpleRichText::x_1(args);	break;
        case 2: x_Q3SimpleRichText::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: 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: x_Q3SimpleRichText::x_15(args);	break;
        case 16: x_Q3SimpleRichText::x_16(args);	break;
        case 17: x_Q3SimpleRichText::x_17(args);	break;
        case 18: x_Q3SimpleRichText::x_18(args);	break;
        case 19: x_Q3SimpleRichText::x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: delete (Q3SimpleRichText*)xself;	break;
    }
}
class x_Q3Socket : public Q3Socket, 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<Q3Socket*>(this))) {
            const QMetaObject* xret = ((const x_Q3Socket*)this)->Q3Socket::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3Socket*)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<Q3Socket*>(this))) {
            void* xret = this->Q3Socket::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 = Q3Socket::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 = Q3Socket::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 = Q3Socket::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 = Q3Socket::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<Q3Socket*>(this))) {
            int xret = this->Q3Socket::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) {
        // Q3Socket* Q3Socket(QObject*, const char*)
        x_Q3Socket* xret = new x_Q3Socket((QObject*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Socket(QObject* x1, const char* x2) : Q3Socket(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // Q3Socket::State state() const
        Q3Socket::State xret = ((const x_Q3Socket*)this)->Q3Socket::state();
        x[0].s_enum = xret;
    }
    void x_10(Smoke::Stack x) {
        // int socket() const
        int xret = ((const x_Q3Socket*)this)->Q3Socket::socket();
        x[0].s_int = xret;
    }
    void x_11(Smoke::Stack x) {
        // virtual void setSocket(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            this->Q3Socket::setSocket((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSocket((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_12(Smoke::Stack x) {
        // Q3SocketDevice* socketDevice()
        Q3SocketDevice* xret = this->Q3Socket::socketDevice();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // virtual void setSocketDevice(Q3SocketDevice*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            this->Q3Socket::setSocketDevice((Q3SocketDevice*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSocketDevice((Q3SocketDevice*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_14(Smoke::Stack x) {
        // virtual void connectToHost(const QString&, Q_UINT16)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            this->Q3Socket::connectToHost(*(const QString*)x[1].s_class,*(Q_UINT16*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->connectToHost(*(const QString*)x[1].s_class,*(Q_UINT16*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // QString peerName() const
        QString xret = ((const x_Q3Socket*)this)->Q3Socket::peerName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_16(Smoke::Stack x) {
        // bool open(QFlags<QIODevice::OpenModeFlag>)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            bool xret = this->Q3Socket::open((QFlags<QIODevice::OpenModeFlag>)x[1].s_uint);
            x[0].s_bool = xret;
        } else {
            bool xret = this->open((QFlags<QIODevice::OpenModeFlag>)x[1].s_uint);
            x[0].s_bool = xret;
        }
    }
    void x_17(Smoke::Stack x) {
        // bool open(int)
        bool xret = this->Q3Socket::open((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // void close()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            this->Q3Socket::close();
            (void)x; // noop (for compiler warning)
        } else {
            this->close();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_19(Smoke::Stack x) {
        // bool flush()
        bool xret = this->Q3Socket::flush();
        x[0].s_bool = xret;
    }
    void x_20(Smoke::Stack x) {
        // Offset size() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            Offset xret = ((const x_Q3Socket*)this)->Q3Socket::size();
            x[0].s_class = (void*)new Offset(xret);
        } else {
            Offset xret = ((const x_Q3Socket*)this)->size();
            x[0].s_class = (void*)new Offset(xret);
        }
    }
    void x_21(Smoke::Stack x) {
        // Offset at() const
        Offset xret = ((const x_Q3Socket*)this)->Q3Socket::at();
        x[0].s_class = (void*)new Offset(xret);
    }
    void x_22(Smoke::Stack x) {
        // bool at(Offset)
        bool xret = this->Q3Socket::at(*(Offset*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_23(Smoke::Stack x) {
        // bool atEnd() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            bool xret = ((const x_Q3Socket*)this)->Q3Socket::atEnd();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_Q3Socket*)this)->atEnd();
            x[0].s_bool = xret;
        }
    }
    void x_24(Smoke::Stack x) {
        // long long bytesAvailable() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            long long xret = ((const x_Q3Socket*)this)->Q3Socket::bytesAvailable();
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = ((const x_Q3Socket*)this)->bytesAvailable();
            x[0].s_class = (void*)new long long(xret);
        }
    }
    void x_25(Smoke::Stack x) {
        // Q_ULONG waitForMore(int, bool*) const
        Q_ULONG xret = ((const x_Q3Socket*)this)->Q3Socket::waitForMore((int)x[1].s_int,(bool*)x[2].s_class);
        x[0].s_class = (void*)new Q_ULONG(xret);
    }
    void x_26(Smoke::Stack x) {
        // Q_ULONG waitForMore(int) const
        Q_ULONG xret = ((const x_Q3Socket*)this)->Q3Socket::waitForMore((int)x[1].s_int);
        x[0].s_class = (void*)new Q_ULONG(xret);
    }
    void x_27(Smoke::Stack x) {
        // long long bytesToWrite() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            long long xret = ((const x_Q3Socket*)this)->Q3Socket::bytesToWrite();
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = ((const x_Q3Socket*)this)->bytesToWrite();
            x[0].s_class = (void*)new long long(xret);
        }
    }
    void x_28(Smoke::Stack x) {
        // void clearPendingData()
        this->Q3Socket::clearPendingData();
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // int getch()
        int xret = this->Q3Socket::getch();
        x[0].s_int = xret;
    }
    void x_30(Smoke::Stack x) {
        // int putch(int)
        int xret = this->Q3Socket::putch((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_31(Smoke::Stack x) {
        // int ungetch(int)
        int xret = this->Q3Socket::ungetch((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_32(Smoke::Stack x) {
        // bool canReadLine() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            bool xret = ((const x_Q3Socket*)this)->Q3Socket::canReadLine();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_Q3Socket*)this)->canReadLine();
            x[0].s_bool = xret;
        }
    }
    void x_33(Smoke::Stack x) {
        // Q_UINT16 port() const
        Q_UINT16 xret = ((const x_Q3Socket*)this)->Q3Socket::port();
        x[0].s_class = (void*)new Q_UINT16(xret);
    }
    void x_34(Smoke::Stack x) {
        // Q_UINT16 peerPort() const
        Q_UINT16 xret = ((const x_Q3Socket*)this)->Q3Socket::peerPort();
        x[0].s_class = (void*)new Q_UINT16(xret);
    }
    void x_35(Smoke::Stack x) {
        // QHostAddress address() const
        QHostAddress xret = ((const x_Q3Socket*)this)->Q3Socket::address();
        x[0].s_class = (void*)new QHostAddress(xret);
    }
    void x_36(Smoke::Stack x) {
        // QHostAddress peerAddress() const
        QHostAddress xret = ((const x_Q3Socket*)this)->Q3Socket::peerAddress();
        x[0].s_class = (void*)new QHostAddress(xret);
    }
    void x_37(Smoke::Stack x) {
        // void setReadBufferSize(Q_ULONG)
        this->Q3Socket::setReadBufferSize(*(Q_ULONG*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // Q_ULONG readBufferSize() const
        Q_ULONG xret = ((const x_Q3Socket*)this)->Q3Socket::readBufferSize();
        x[0].s_class = (void*)new Q_ULONG(xret);
    }
    void x_39(Smoke::Stack x) {
        // bool isSequential() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            bool xret = ((const x_Q3Socket*)this)->Q3Socket::isSequential();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_Q3Socket*)this)->isSequential();
            x[0].s_bool = xret;
        }
    }
    void x_40(Smoke::Stack x) {
        // void hostFound()
        this->Q3Socket::hostFound();
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // void connected()
        this->Q3Socket::connected();
        (void)x; // noop (for compiler warning)
    }
    void x_42(Smoke::Stack x) {
        // void connectionClosed()
        this->Q3Socket::connectionClosed();
        (void)x; // noop (for compiler warning)
    }
    void x_43(Smoke::Stack x) {
        // void delayedCloseFinished()
        this->Q3Socket::delayedCloseFinished();
        (void)x; // noop (for compiler warning)
    }
    void x_44(Smoke::Stack x) {
        // void readyRead()
        this->Q3Socket::readyRead();
        (void)x; // noop (for compiler warning)
    }
    void x_45(Smoke::Stack x) {
        // void bytesWritten(int)
        this->Q3Socket::bytesWritten((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_46(Smoke::Stack x) {
        // void error(int)
        this->Q3Socket::error((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_47(Smoke::Stack x) {
        // virtual void sn_read(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            this->Q3Socket::sn_read((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->sn_read((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_48(Smoke::Stack x) {
        // virtual void sn_write()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            this->Q3Socket::sn_write();
            (void)x; // noop (for compiler warning)
        } else {
            this->sn_write();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_49(Smoke::Stack x) {
        // long long readData(char*, long long)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            long long xret = this->Q3Socket::readData((char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = this->readData((char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        }
    }
    void x_50(Smoke::Stack x) {
        // long long writeData(const char*, long long)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Socket*>(this))) {
            long long xret = this->Q3Socket::writeData((const char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = this->writeData((const char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        }
    }
    static void x_51(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3Socket::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_52(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3Socket::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_53(Smoke::Stack x) {
        // Q3Socket* Q3Socket()
        x_Q3Socket* xret = new x_Q3Socket((QObject*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_54(Smoke::Stack x) {
        // Q3Socket* Q3Socket(QObject*)
        x_Q3Socket* xret = new x_Q3Socket((QObject*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    void x_55(Smoke::Stack x) {
        // void sn_read()
        this->Q3Socket::sn_read((bool)false);
        (void)x; // noop (for compiler warning)
    }
    static void x_56(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3Socket::staticMetaObject;
    }
    static void x_57(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::ErrConnectionRefused;
    }
    static void x_58(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::ErrHostNotFound;
    }
    static void x_59(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::ErrSocketRead;
    }
    static void x_60(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::Idle;
    }
    static void x_61(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::HostLookup;
    }
    static void x_62(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::Connecting;
    }
    static void x_63(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::Connected;
    }
    static void x_64(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::Closing;
    }
    static void x_65(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Socket::Connection;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3527, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3Socket::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3528, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3Socket::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(3533, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3Socket::qt_metacall(x1, x2, x3);
    }
    virtual void setSocket(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3537, (void*)this, x)) return;
        this->Q3Socket::setSocket(x1);
    }
    virtual void setSocketDevice(Q3SocketDevice* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3539, (void*)this, x)) return;
        this->Q3Socket::setSocketDevice(x1);
    }
    virtual void connectToHost(const QString& x1, Q_UINT16 x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)new Q_UINT16(x2);
        if (this->_binding->callMethod(3540, (void*)this, x)) return;
        this->Q3Socket::connectToHost(x1, x2);
    }
    virtual void sn_read(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(3573, (void*)this, x)) return;
        this->Q3Socket::sn_read(x1);
    }
    virtual void sn_write() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3574, (void*)this, x)) return;
        this->Q3Socket::sn_write();
    }
    virtual bool isSequential() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3565, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3Socket::isSequential();
    }
    virtual bool open(QFlags<QIODevice::OpenModeFlag> x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = (uint)x1;
        if (this->_binding->callMethod(3542, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3Socket::open(x1);
    }
    virtual void close() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3544, (void*)this, x)) return;
        this->Q3Socket::close();
    }
    virtual long long pos() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5194, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::pos();
    }
    virtual Offset size() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3546, (void*)this, x)) {
            Offset* xptr = (Offset*)x[0].s_class;
            Offset xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3Socket::size();
    }
    virtual bool seek(long long x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)new long long(x1);
        if (this->_binding->callMethod(5195, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::seek(x1);
    }
    virtual bool atEnd() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3549, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3Socket::atEnd();
    }
    virtual bool reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5196, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::reset();
    }
    virtual long long bytesAvailable() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3550, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3Socket::bytesAvailable();
    }
    virtual long long bytesToWrite() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3553, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3Socket::bytesToWrite();
    }
    virtual bool canReadLine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3558, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3Socket::canReadLine();
    }
    virtual bool waitForReadyRead(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5199, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::waitForReadyRead(x1);
    }
    virtual bool waitForBytesWritten(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5200, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::waitForBytesWritten(x1);
    }
    virtual long long readData(char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(3575, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3Socket::readData(x1, x2);
    }
    virtual long long readLineData(char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(5201, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::readLineData(x1, x2);
    }
    virtual long long writeData(const char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(3576, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3Socket::writeData(x1, x2);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5238, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::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(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (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 161: //Q3Socket::Error
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3Socket::Error;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3Socket::Error*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3Socket::Error*)xdata = (Q3Socket::Error)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3Socket::Error*)xdata;
                    break;
            }
            break;
        case 162: //Q3Socket::State
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3Socket::State;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3Socket::State*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3Socket::State*)xdata = (Q3Socket::State)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3Socket::State*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Q3Socket() { this->_binding->deleted(95, (void*)this); }
};
void xenum_Q3Socket(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Q3Socket::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Q3Socket(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3Socket *xself = (x_Q3Socket*)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_Q3Socket::x_3(args);	break;
        case 4: x_Q3Socket::x_4(args);	break;
        case 5: x_Q3Socket::x_5(args);	break;
        case 6: x_Q3Socket::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3Socket::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: 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: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: xself->x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: xself->x_48(args);	break;
        case 49: xself->x_49(args);	break;
        case 50: xself->x_50(args);	break;
        case 51: x_Q3Socket::x_51(args);	break;
        case 52: x_Q3Socket::x_52(args);	break;
        case 53: x_Q3Socket::x_53(args);	break;
        case 54: x_Q3Socket::x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: x_Q3Socket::x_56(args);	break;
        case 57: x_Q3Socket::x_57(args);	break;
        case 58: x_Q3Socket::x_58(args);	break;
        case 59: x_Q3Socket::x_59(args);	break;
        case 60: x_Q3Socket::x_60(args);	break;
        case 61: x_Q3Socket::x_61(args);	break;
        case 62: x_Q3Socket::x_62(args);	break;
        case 63: x_Q3Socket::x_63(args);	break;
        case 64: x_Q3Socket::x_64(args);	break;
        case 65: x_Q3Socket::x_65(args);	break;
        case 66: delete (Q3Socket*)xself;	break;
    }
}
class x_Q3SocketDevice : public Q3SocketDevice, public __internal_SmokeClass {
    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) {
        // Q3SocketDevice* Q3SocketDevice(Q3SocketDevice::Type)
        x_Q3SocketDevice* xret = new x_Q3SocketDevice((Q3SocketDevice::Type)x[1].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3SocketDevice(Q3SocketDevice::Type x1) : Q3SocketDevice(x1) {}
    static void x_2(Smoke::Stack x) {
        // Q3SocketDevice* Q3SocketDevice(Q3SocketDevice::Type, Q3SocketDevice::Protocol, int)
        x_Q3SocketDevice* xret = new x_Q3SocketDevice((Q3SocketDevice::Type)x[1].s_enum,(Q3SocketDevice::Protocol)x[2].s_enum,(int)x[3].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3SocketDevice(Q3SocketDevice::Type x1, Q3SocketDevice::Protocol x2, int x3) : Q3SocketDevice(x1, x2, x3) {}
    static void x_3(Smoke::Stack x) {
        // Q3SocketDevice* Q3SocketDevice(int, Q3SocketDevice::Type)
        x_Q3SocketDevice* xret = new x_Q3SocketDevice((int)x[1].s_int,(Q3SocketDevice::Type)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3SocketDevice(int x1, Q3SocketDevice::Type x2) : Q3SocketDevice(x1, x2) {}
    void x_4(Smoke::Stack x) {
        // bool isValid() const
        bool xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::isValid();
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // Q3SocketDevice::Type type() const
        Q3SocketDevice::Type xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::type();
        x[0].s_enum = xret;
    }
    void x_6(Smoke::Stack x) {
        // Q3SocketDevice::Protocol protocol() const
        Q3SocketDevice::Protocol xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::protocol();
        x[0].s_enum = xret;
    }
    void x_7(Smoke::Stack x) {
        // int socket() const
        int xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::socket();
        x[0].s_int = xret;
    }
    void x_8(Smoke::Stack x) {
        // virtual void setSocket(int, Q3SocketDevice::Type)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            this->Q3SocketDevice::setSocket((int)x[1].s_int,(Q3SocketDevice::Type)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSocket((int)x[1].s_int,(Q3SocketDevice::Type)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_9(Smoke::Stack x) {
        // bool open(QFlags<QIODevice::OpenModeFlag>)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            bool xret = this->Q3SocketDevice::open((QFlags<QIODevice::OpenModeFlag>)x[1].s_uint);
            x[0].s_bool = xret;
        } else {
            bool xret = this->open((QFlags<QIODevice::OpenModeFlag>)x[1].s_uint);
            x[0].s_bool = xret;
        }
    }
    void x_10(Smoke::Stack x) {
        // bool open(int)
        bool xret = this->Q3SocketDevice::open((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // void close()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            this->Q3SocketDevice::close();
            (void)x; // noop (for compiler warning)
        } else {
            this->close();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_12(Smoke::Stack x) {
        // bool flush()
        bool xret = this->Q3SocketDevice::flush();
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // Offset size() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            Offset xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::size();
            x[0].s_class = (void*)new Offset(xret);
        } else {
            Offset xret = ((const x_Q3SocketDevice*)this)->size();
            x[0].s_class = (void*)new Offset(xret);
        }
    }
    void x_14(Smoke::Stack x) {
        // Offset at() const
        Offset xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::at();
        x[0].s_class = (void*)new Offset(xret);
    }
    void x_15(Smoke::Stack x) {
        // bool at(Offset)
        bool xret = this->Q3SocketDevice::at(*(Offset*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool atEnd() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            bool xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::atEnd();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_Q3SocketDevice*)this)->atEnd();
            x[0].s_bool = xret;
        }
    }
    void x_17(Smoke::Stack x) {
        // bool blocking() const
        bool xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::blocking();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // virtual void setBlocking(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            this->Q3SocketDevice::setBlocking((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setBlocking((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_19(Smoke::Stack x) {
        // bool addressReusable() const
        bool xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::addressReusable();
        x[0].s_bool = xret;
    }
    void x_20(Smoke::Stack x) {
        // virtual void setAddressReusable(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            this->Q3SocketDevice::setAddressReusable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setAddressReusable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_21(Smoke::Stack x) {
        // int receiveBufferSize() const
        int xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::receiveBufferSize();
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // virtual void setReceiveBufferSize(unsigned int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            this->Q3SocketDevice::setReceiveBufferSize((unsigned int)x[1].s_uint);
            (void)x; // noop (for compiler warning)
        } else {
            this->setReceiveBufferSize((unsigned int)x[1].s_uint);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_23(Smoke::Stack x) {
        // int sendBufferSize() const
        int xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::sendBufferSize();
        x[0].s_int = xret;
    }
    void x_24(Smoke::Stack x) {
        // virtual void setSendBufferSize(unsigned int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            this->Q3SocketDevice::setSendBufferSize((unsigned int)x[1].s_uint);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSendBufferSize((unsigned int)x[1].s_uint);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_25(Smoke::Stack x) {
        // virtual bool connect(const QHostAddress&, Q_UINT16)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            bool xret = this->Q3SocketDevice::connect(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->connect(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_26(Smoke::Stack x) {
        // virtual bool bind(const QHostAddress&, Q_UINT16)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            bool xret = this->Q3SocketDevice::bind(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->bind(*(const QHostAddress*)x[1].s_class,*(Q_UINT16*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_27(Smoke::Stack x) {
        // virtual bool listen(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            bool xret = this->Q3SocketDevice::listen((int)x[1].s_int);
            x[0].s_bool = xret;
        } else {
            bool xret = this->listen((int)x[1].s_int);
            x[0].s_bool = xret;
        }
    }
    void x_28(Smoke::Stack x) {
        // virtual int accept()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            int xret = this->Q3SocketDevice::accept();
            x[0].s_int = xret;
        } else {
            int xret = this->accept();
            x[0].s_int = xret;
        }
    }
    void x_29(Smoke::Stack x) {
        // long long bytesAvailable() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            long long xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::bytesAvailable();
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = ((const x_Q3SocketDevice*)this)->bytesAvailable();
            x[0].s_class = (void*)new long long(xret);
        }
    }
    void x_30(Smoke::Stack x) {
        // Q_LONG waitForMore(int, bool*) const
        Q_LONG xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::waitForMore((int)x[1].s_int,(bool*)x[2].s_class);
        x[0].s_class = (void*)new Q_LONG(xret);
    }
    void x_31(Smoke::Stack x) {
        // virtual Q_LONG writeBlock(const char*, Q_ULONG, const QHostAddress&, Q_UINT16)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            Q_LONG xret = this->Q3SocketDevice::writeBlock((const char*)x[1].s_class,*(Q_ULONG*)x[2].s_class,*(const QHostAddress*)x[3].s_class,*(Q_UINT16*)x[4].s_class);
            x[0].s_class = (void*)new Q_LONG(xret);
        } else {
            Q_LONG xret = this->writeBlock((const char*)x[1].s_class,*(Q_ULONG*)x[2].s_class,*(const QHostAddress*)x[3].s_class,*(Q_UINT16*)x[4].s_class);
            x[0].s_class = (void*)new Q_LONG(xret);
        }
    }
    void x_32(Smoke::Stack x) {
        // Q_LONG writeBlock(const char*, Q_ULONG)
        Q_LONG xret = this->Q3SocketDevice::writeBlock((const char*)x[1].s_class,*(Q_ULONG*)x[2].s_class);
        x[0].s_class = (void*)new Q_LONG(xret);
    }
    void x_33(Smoke::Stack x) {
        // long long readBlock(char*, Q_ULONG)
        long long xret = this->Q3SocketDevice::readBlock((char*)x[1].s_class,*(Q_ULONG*)x[2].s_class);
        x[0].s_class = (void*)new long long(xret);
    }
    void x_34(Smoke::Stack x) {
        // Q_UINT16 port() const
        Q_UINT16 xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::port();
        x[0].s_class = (void*)new Q_UINT16(xret);
    }
    void x_35(Smoke::Stack x) {
        // Q_UINT16 peerPort() const
        Q_UINT16 xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::peerPort();
        x[0].s_class = (void*)new Q_UINT16(xret);
    }
    void x_36(Smoke::Stack x) {
        // QHostAddress address() const
        QHostAddress xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::address();
        x[0].s_class = (void*)new QHostAddress(xret);
    }
    void x_37(Smoke::Stack x) {
        // QHostAddress peerAddress() const
        QHostAddress xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::peerAddress();
        x[0].s_class = (void*)new QHostAddress(xret);
    }
    void x_38(Smoke::Stack x) {
        // Q3SocketDevice::Error error() const
        Q3SocketDevice::Error xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::error();
        x[0].s_enum = xret;
    }
    void x_39(Smoke::Stack x) {
        // bool isSequential() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            bool xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::isSequential();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_Q3SocketDevice*)this)->isSequential();
            x[0].s_bool = xret;
        }
    }
    void x_40(Smoke::Stack x) {
        // void setError(Q3SocketDevice::Error)
        this->Q3SocketDevice::setError((Q3SocketDevice::Error)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // long long readData(char*, long long)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            long long xret = this->Q3SocketDevice::readData((char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = this->readData((char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        }
    }
    void x_42(Smoke::Stack x) {
        // long long writeData(const char*, long long)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3SocketDevice*>(this))) {
            long long xret = this->Q3SocketDevice::writeData((const char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        } else {
            long long xret = this->writeData((const char*)x[1].s_class,*(long long*)x[2].s_class);
            x[0].s_class = (void*)new long long(xret);
        }
    }
    static void x_43(Smoke::Stack x) {
        // Q3SocketDevice* Q3SocketDevice()
        x_Q3SocketDevice* xret = new x_Q3SocketDevice((Q3SocketDevice::Type)Q3SocketDevice::Stream);
        x[0].s_class = (void*)xret;
    }
    void x_44(Smoke::Stack x) {
        // Q_LONG waitForMore(int) const
        Q_LONG xret = ((const x_Q3SocketDevice*)this)->Q3SocketDevice::waitForMore((int)x[1].s_int,(bool*)0);
        x[0].s_class = (void*)new Q_LONG(xret);
    }
    static void x_45(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::Stream;
    }
    static void x_46(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::Datagram;
    }
    static void x_47(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::IPv4;
    }
    static void x_48(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::IPv6;
    }
    static void x_49(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::Unknown;
    }
    static void x_50(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::NoError;
    }
    static void x_51(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::AlreadyBound;
    }
    static void x_52(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::Inaccessible;
    }
    static void x_53(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::NoResources;
    }
    static void x_54(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::InternalError;
    }
    static void x_55(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::Bug;
    }
    static void x_56(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::Impossible;
    }
    static void x_57(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::NoFiles;
    }
    static void x_58(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::ConnectionRefused;
    }
    static void x_59(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::NetworkFailure;
    }
    static void x_60(Smoke::Stack x) {
        x[0].s_enum = (long)Q3SocketDevice::UnknownError;
    }
    virtual void setSocket(int x1, Q3SocketDevice::Type x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(3600, (void*)this, x)) return;
        this->Q3SocketDevice::setSocket(x1, x2);
    }
    virtual void setBlocking(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(3610, (void*)this, x)) return;
        this->Q3SocketDevice::setBlocking(x1);
    }
    virtual void setAddressReusable(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(3612, (void*)this, x)) return;
        this->Q3SocketDevice::setAddressReusable(x1);
    }
    virtual void setReceiveBufferSize(unsigned int x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = x1;
        if (this->_binding->callMethod(3614, (void*)this, x)) return;
        this->Q3SocketDevice::setReceiveBufferSize(x1);
    }
    virtual void setSendBufferSize(unsigned int x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = x1;
        if (this->_binding->callMethod(3616, (void*)this, x)) return;
        this->Q3SocketDevice::setSendBufferSize(x1);
    }
    virtual bool connect(const QHostAddress& x1, Q_UINT16 x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)new Q_UINT16(x2);
        if (this->_binding->callMethod(3617, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3SocketDevice::connect(x1, x2);
    }
    virtual bool bind(const QHostAddress& x1, Q_UINT16 x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)new Q_UINT16(x2);
        if (this->_binding->callMethod(3618, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3SocketDevice::bind(x1, x2);
    }
    virtual bool listen(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3619, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3SocketDevice::listen(x1);
    }
    virtual int accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3620, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3SocketDevice::accept();
    }
    virtual Q_LONG writeBlock(const char* x1, Q_ULONG x2, const QHostAddress& x3, Q_UINT16 x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new Q_ULONG(x2);
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)new Q_UINT16(x4);
        if (this->_binding->callMethod(3623, (void*)this, x)) {
            Q_LONG* xptr = (Q_LONG*)x[0].s_class;
            Q_LONG xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3SocketDevice::writeBlock(x1, x2, x3, x4);
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5191, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QIODevice::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5192, (void*)this, x)) return (void*)x[0].s_class;
        return this->QIODevice::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(5193, (void*)this, x)) return (int)x[0].s_int;
        return this->QIODevice::qt_metacall(x1, x2, x3);
    }
    virtual bool isSequential() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3631, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3SocketDevice::isSequential();
    }
    virtual bool open(QFlags<QIODevice::OpenModeFlag> x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = (uint)x1;
        if (this->_binding->callMethod(3601, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3SocketDevice::open(x1);
    }
    virtual void close() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3603, (void*)this, x)) return;
        this->Q3SocketDevice::close();
    }
    virtual long long pos() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5194, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::pos();
    }
    virtual Offset size() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3605, (void*)this, x)) {
            Offset* xptr = (Offset*)x[0].s_class;
            Offset xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3SocketDevice::size();
    }
    virtual bool seek(long long x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)new long long(x1);
        if (this->_binding->callMethod(5195, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::seek(x1);
    }
    virtual bool atEnd() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3608, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3SocketDevice::atEnd();
    }
    virtual bool reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5196, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::reset();
    }
    virtual long long bytesAvailable() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3621, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3SocketDevice::bytesAvailable();
    }
    virtual long long bytesToWrite() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5197, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::bytesToWrite();
    }
    virtual bool canReadLine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5198, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::canReadLine();
    }
    virtual bool waitForReadyRead(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5199, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::waitForReadyRead(x1);
    }
    virtual bool waitForBytesWritten(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5200, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::waitForBytesWritten(x1);
    }
    virtual long long readData(char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(3633, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3SocketDevice::readData(x1, x2);
    }
    virtual long long readLineData(char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(5201, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::readLineData(x1, x2);
    }
    virtual long long writeData(const char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(3634, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3SocketDevice::writeData(x1, x2);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5238, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::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(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (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 167: //Q3SocketDevice::Type
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3SocketDevice::Type;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3SocketDevice::Type*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3SocketDevice::Type*)xdata = (Q3SocketDevice::Type)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3SocketDevice::Type*)xdata;
                    break;
            }
            break;
        case 166: //Q3SocketDevice::Protocol
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3SocketDevice::Protocol;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3SocketDevice::Protocol*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3SocketDevice::Protocol*)xdata = (Q3SocketDevice::Protocol)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3SocketDevice::Protocol*)xdata;
                    break;
            }
            break;
        case 164: //Q3SocketDevice::Error
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3SocketDevice::Error;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3SocketDevice::Error*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3SocketDevice::Error*)xdata = (Q3SocketDevice::Error)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3SocketDevice::Error*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Q3SocketDevice() { this->_binding->deleted(96, (void*)this); }
};
void xenum_Q3SocketDevice(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Q3SocketDevice::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Q3SocketDevice(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3SocketDevice *xself = (x_Q3SocketDevice*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_Q3SocketDevice::x_1(args);	break;
        case 2: x_Q3SocketDevice::x_2(args);	break;
        case 3: x_Q3SocketDevice::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: 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: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: x_Q3SocketDevice::x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: x_Q3SocketDevice::x_45(args);	break;
        case 46: x_Q3SocketDevice::x_46(args);	break;
        case 47: x_Q3SocketDevice::x_47(args);	break;
        case 48: x_Q3SocketDevice::x_48(args);	break;
        case 49: x_Q3SocketDevice::x_49(args);	break;
        case 50: x_Q3SocketDevice::x_50(args);	break;
        case 51: x_Q3SocketDevice::x_51(args);	break;
        case 52: x_Q3SocketDevice::x_52(args);	break;
        case 53: x_Q3SocketDevice::x_53(args);	break;
        case 54: x_Q3SocketDevice::x_54(args);	break;
        case 55: x_Q3SocketDevice::x_55(args);	break;
        case 56: x_Q3SocketDevice::x_56(args);	break;
        case 57: x_Q3SocketDevice::x_57(args);	break;
        case 58: x_Q3SocketDevice::x_58(args);	break;
        case 59: x_Q3SocketDevice::x_59(args);	break;
        case 60: x_Q3SocketDevice::x_60(args);	break;
        case 61: delete (Q3SocketDevice*)xself;	break;
    }
}

}
