/*
 * Module code.
 *
 * Generated by SIP 4.16.7
 */

#include "sipAPIdnssd.h"

#line 27 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
#include <dnssd/remoteservice.h>
#line 12 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"

#line 36 "/usr/share/python3-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 16 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 31 "/usr/share/python3-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 19 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 355 "/usr/share/python3-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 22 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 338 "/usr/share/python3-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 25 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 34 "/usr/share/python3-sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 28 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 274 "/usr/share/python3-sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 31 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 33 "/usr/share/python3-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 34 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 37 "/usr/share/python3-sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 37 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 35 "/usr/share/python3-sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 40 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 120 "/usr/share/python3-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 31 "/usr/share/python3-sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 46 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 35 "/usr/share/python3-sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 49 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 31 "/usr/share/python3-sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 52 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 26 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/src/pykde4-4.14.3/sip/dnssd/servicebase.sip"
#include <dnssd/servicebase.h>
#line 55 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 33 "/usr/share/python3-sip/PyQt4/QtCore/qmap.sip"
#include <qmap.h>
#line 58 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 77 "/usr/share/python3-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 61 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"


class sipDNSSD_RemoteService : public DNSSD::RemoteService
{
public:
    sipDNSSD_RemoteService(const QString&,const QString&,const QString&);
    virtual ~sipDNSSD_RemoteService();

    int qt_metacall(QMetaObject::Call,int,void **);
    void *qt_metacast(const char *);
    const QMetaObject *metaObject() const;

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void disconnectNotify(const char*);
    void connectNotify(const char*);
    void customEvent(QEvent*);
    void childEvent(QChildEvent*);
    void timerEvent(QTimerEvent*);
    bool eventFilter(QObject*,QEvent*);
    bool event(QEvent*);
    void virtual_hook(int,void*);

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipDNSSD_RemoteService(const sipDNSSD_RemoteService &);
    sipDNSSD_RemoteService &operator = (const sipDNSSD_RemoteService &);

    char sipPyMethods[8];
};

sipDNSSD_RemoteService::sipDNSSD_RemoteService(const QString& a0,const QString& a1,const QString& a2): DNSSD::RemoteService(a0,a1,a2), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipDNSSD_RemoteService::~sipDNSSD_RemoteService()
{
    sipCommonDtor(sipPySelf);
}

const QMetaObject *sipDNSSD_RemoteService::metaObject() const
{
    return sip_dnssd_qt_metaobject(sipPySelf,sipType_DNSSD_RemoteService);
}

int sipDNSSD_RemoteService::qt_metacall(QMetaObject::Call _c,int _id,void **_a)
{
    _id = DNSSD::RemoteService::qt_metacall(_c,_id,_a);

    if (_id >= 0)
        _id = sip_dnssd_qt_metacall(sipPySelf,sipType_DNSSD_RemoteService,_c,_id,_a);

    return _id;
}

void *sipDNSSD_RemoteService::qt_metacast(const char *_clname)
{
    return (sip_dnssd_qt_metacast(sipPySelf, sipType_DNSSD_RemoteService, _clname)) ? this : DNSSD::RemoteService::qt_metacast(_clname);
}

void sipDNSSD_RemoteService::disconnectNotify(const char*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,NULL,sipName_disconnectNotify);

    if (!sipMeth)
    {
        DNSSD::RemoteService::disconnectNotify(a0);
        return;
    }

    typedef void (*sipVH_QtCore_24)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const char*);

    ((sipVH_QtCore_24)(sipModuleAPI_dnssd_QtCore->em_virthandlers[24]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_RemoteService::connectNotify(const char*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,NULL,sipName_connectNotify);

    if (!sipMeth)
    {
        DNSSD::RemoteService::connectNotify(a0);
        return;
    }

    typedef void (*sipVH_QtCore_24)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const char*);

    ((sipVH_QtCore_24)(sipModuleAPI_dnssd_QtCore->em_virthandlers[24]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_RemoteService::customEvent(QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,NULL,sipName_customEvent);

    if (!sipMeth)
    {
        DNSSD::RemoteService::customEvent(a0);
        return;
    }

    typedef void (*sipVH_QtCore_17)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QEvent*);

    ((sipVH_QtCore_17)(sipModuleAPI_dnssd_QtCore->em_virthandlers[17]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_RemoteService::childEvent(QChildEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,NULL,sipName_childEvent);

    if (!sipMeth)
    {
        DNSSD::RemoteService::childEvent(a0);
        return;
    }

    typedef void (*sipVH_QtCore_25)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QChildEvent*);

    ((sipVH_QtCore_25)(sipModuleAPI_dnssd_QtCore->em_virthandlers[25]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_RemoteService::timerEvent(QTimerEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[4],sipPySelf,NULL,sipName_timerEvent);

    if (!sipMeth)
    {
        DNSSD::RemoteService::timerEvent(a0);
        return;
    }

    typedef void (*sipVH_QtCore_9)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QTimerEvent*);

    ((sipVH_QtCore_9)(sipModuleAPI_dnssd_QtCore->em_virthandlers[9]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

bool sipDNSSD_RemoteService::eventFilter(QObject*a0,QEvent*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[5],sipPySelf,NULL,sipName_eventFilter);

    if (!sipMeth)
        return DNSSD::RemoteService::eventFilter(a0,a1);

    typedef bool (*sipVH_QtCore_18)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QObject*,QEvent*);

    return ((sipVH_QtCore_18)(sipModuleAPI_dnssd_QtCore->em_virthandlers[18]))(sipGILState, 0, sipPySelf, sipMeth, a0, a1);
}

bool sipDNSSD_RemoteService::event(QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[6],sipPySelf,NULL,sipName_event);

    if (!sipMeth)
        return DNSSD::RemoteService::event(a0);

    typedef bool (*sipVH_QtCore_5)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QEvent*);

    return ((sipVH_QtCore_5)(sipModuleAPI_dnssd_QtCore->em_virthandlers[5]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_RemoteService::virtual_hook(int a0,void*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[7],sipPySelf,NULL,sipName_virtual_hook);

    if (!sipMeth)
    {
        DNSSD::RemoteService::virtual_hook(a0,a1);
        return;
    }

    extern void sipVH_dnssd_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int,void*);

    sipVH_dnssd_0(sipGILState, 0, sipPySelf, sipMeth, a0, a1);
}


extern "C" {static PyObject *meth_DNSSD_RemoteService_resolveAsync(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_RemoteService_resolveAsync(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        DNSSD::RemoteService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_RemoteService, &sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->resolveAsync();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_RemoteService, sipName_resolveAsync, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_RemoteService_resolve(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_RemoteService_resolve(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        DNSSD::RemoteService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_RemoteService, &sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->resolve();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_RemoteService, sipName_resolve, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_RemoteService_isResolved(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_RemoteService_isResolved(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const DNSSD::RemoteService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_RemoteService, &sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->isResolved();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_RemoteService, sipName_isResolved, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_RemoteService_virtual_hook(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_RemoteService_virtual_hook(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        void* a1;
        DNSSD::RemoteService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "piv", &sipSelf, sipType_DNSSD_RemoteService, &sipCpp, &a0, &a1))
        {
            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->DNSSD::RemoteService::virtual_hook(a0,a1) : sipCpp->virtual_hook(a0,a1));
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_RemoteService, sipName_virtual_hook, NULL);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_DNSSD_RemoteService(void *, const sipTypeDef *);}
static void *cast_DNSSD_RemoteService(void *ptr, const sipTypeDef *targetType)
{
    void *res;

    if (targetType == sipType_DNSSD_RemoteService)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_QObject)->ctd_cast((QObject *)(DNSSD::RemoteService *)ptr,targetType)) != NULL)
        return res;

    if ((res = ((const sipClassTypeDef *)sipType_DNSSD_ServiceBase)->ctd_cast((DNSSD::ServiceBase *)(DNSSD::RemoteService *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_DNSSD_RemoteService(void *, int);}
static void release_DNSSD_RemoteService(void *sipCppV,int)
{
    DNSSD::RemoteService *sipCpp = reinterpret_cast<DNSSD::RemoteService *>(sipCppV);

    Py_BEGIN_ALLOW_THREADS

    if (QThread::currentThread() == sipCpp->thread())
        delete sipCpp;
    else
        sipCpp->deleteLater();

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_DNSSD_RemoteService(sipSimpleWrapper *);}
static void dealloc_DNSSD_RemoteService(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipDNSSD_RemoteService *>(sipGetAddress(sipSelf))->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_DNSSD_RemoteService(sipGetAddress(sipSelf),sipSelf->flags);
    }
}


extern "C" {static void *init_type_DNSSD_RemoteService(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_DNSSD_RemoteService(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
{
    sipDNSSD_RemoteService *sipCpp = 0;

    {
        const QString* a0;
        int a0State = 0;
        const QString* a1;
        int a1State = 0;
        const QString* a2;
        int a2State = 0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "J1J1J1", sipType_QString,&a0, &a0State, sipType_QString,&a1, &a1State, sipType_QString,&a2, &a2State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipDNSSD_RemoteService(*a0,*a1,*a2);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);
            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);
            sipReleaseType(const_cast<QString *>(a2),sipType_QString,a2State);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return NULL;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_DNSSD_RemoteService[] = {{141, 0, 0}, {6, 255, 1}};


static PyMethodDef methods_DNSSD_RemoteService[] = {
    {SIP_MLNAME_CAST(sipName_isResolved), meth_DNSSD_RemoteService_isResolved, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_resolve), meth_DNSSD_RemoteService_resolve, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_resolveAsync), meth_DNSSD_RemoteService_resolveAsync, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_virtual_hook), meth_DNSSD_RemoteService_virtual_hook, METH_VARARGS, NULL}
};


/* Define this type's signals. */
static const pyqt4QtSignal signals_DNSSD_RemoteService[] = {
    {"resolved(bool)", 0, 0, 0},
    {0, 0, 0, 0}
};


pyqt4ClassTypeDef sipTypeDef_dnssd_DNSSD_RemoteService = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_DNSSD__RemoteService,
        {0}
    },
    {
        sipNameNr_RemoteService,
        {0, 255, 0},
        4, methods_DNSSD_RemoteService,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_DNSSD_RemoteService,
    0,
    init_type_DNSSD_RemoteService,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_DNSSD_RemoteService,
    0,
    0,
    0,
    release_DNSSD_RemoteService,
    cast_DNSSD_RemoteService,
    0,
    0,
    0,
    0,
    0,
    0
},
    &DNSSD::RemoteService::staticMetaObject,
    0,
    signals_DNSSD_RemoteService,
};

#line 27 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/src/pykde4-4.14.3/sip/dnssd/publicservice.sip"
#include <dnssd/publicservice.h>
#line 531 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"

#line 36 "/usr/share/python3-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 535 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 36 "/usr/share/python3-sip/PyQt4/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 538 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 33 "/usr/share/python3-sip/PyQt4/QtCore/qmap.sip"
#include <qmap.h>
#line 541 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 77 "/usr/share/python3-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 544 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 37 "/usr/share/python3-sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 547 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 31 "/usr/share/python3-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 550 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 355 "/usr/share/python3-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 553 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 338 "/usr/share/python3-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 556 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 34 "/usr/share/python3-sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 559 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 274 "/usr/share/python3-sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 562 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 33 "/usr/share/python3-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 565 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 35 "/usr/share/python3-sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 568 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 120 "/usr/share/python3-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 571 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 31 "/usr/share/python3-sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 574 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 35 "/usr/share/python3-sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 577 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 31 "/usr/share/python3-sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 580 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"
#line 26 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/src/pykde4-4.14.3/sip/dnssd/servicebase.sip"
#include <dnssd/servicebase.h>
#line 583 "/usr/src/ports/python3-pykde4/python3-pykde4-4.14.3-2.x86_64/build/sip/dnssd/sipdnssdpart3.cpp"


class sipDNSSD_PublicService : public DNSSD::PublicService
{
public:
    sipDNSSD_PublicService(const QString&,const QString&,uint,const QString&,const QStringList&);
    virtual ~sipDNSSD_PublicService();

    int qt_metacall(QMetaObject::Call,int,void **);
    void *qt_metacast(const char *);
    const QMetaObject *metaObject() const;

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void disconnectNotify(const char*);
    void connectNotify(const char*);
    void customEvent(QEvent*);
    void childEvent(QChildEvent*);
    void timerEvent(QTimerEvent*);
    bool eventFilter(QObject*,QEvent*);
    bool event(QEvent*);
    void virtual_hook(int,void*);

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipDNSSD_PublicService(const sipDNSSD_PublicService &);
    sipDNSSD_PublicService &operator = (const sipDNSSD_PublicService &);

    char sipPyMethods[8];
};

sipDNSSD_PublicService::sipDNSSD_PublicService(const QString& a0,const QString& a1,uint a2,const QString& a3,const QStringList& a4): DNSSD::PublicService(a0,a1,a2,a3,a4), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipDNSSD_PublicService::~sipDNSSD_PublicService()
{
    sipCommonDtor(sipPySelf);
}

const QMetaObject *sipDNSSD_PublicService::metaObject() const
{
    return sip_dnssd_qt_metaobject(sipPySelf,sipType_DNSSD_PublicService);
}

int sipDNSSD_PublicService::qt_metacall(QMetaObject::Call _c,int _id,void **_a)
{
    _id = DNSSD::PublicService::qt_metacall(_c,_id,_a);

    if (_id >= 0)
        _id = sip_dnssd_qt_metacall(sipPySelf,sipType_DNSSD_PublicService,_c,_id,_a);

    return _id;
}

void *sipDNSSD_PublicService::qt_metacast(const char *_clname)
{
    return (sip_dnssd_qt_metacast(sipPySelf, sipType_DNSSD_PublicService, _clname)) ? this : DNSSD::PublicService::qt_metacast(_clname);
}

void sipDNSSD_PublicService::disconnectNotify(const char*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,NULL,sipName_disconnectNotify);

    if (!sipMeth)
    {
        DNSSD::PublicService::disconnectNotify(a0);
        return;
    }

    typedef void (*sipVH_QtCore_24)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const char*);

    ((sipVH_QtCore_24)(sipModuleAPI_dnssd_QtCore->em_virthandlers[24]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_PublicService::connectNotify(const char*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,NULL,sipName_connectNotify);

    if (!sipMeth)
    {
        DNSSD::PublicService::connectNotify(a0);
        return;
    }

    typedef void (*sipVH_QtCore_24)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const char*);

    ((sipVH_QtCore_24)(sipModuleAPI_dnssd_QtCore->em_virthandlers[24]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_PublicService::customEvent(QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,NULL,sipName_customEvent);

    if (!sipMeth)
    {
        DNSSD::PublicService::customEvent(a0);
        return;
    }

    typedef void (*sipVH_QtCore_17)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QEvent*);

    ((sipVH_QtCore_17)(sipModuleAPI_dnssd_QtCore->em_virthandlers[17]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_PublicService::childEvent(QChildEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,NULL,sipName_childEvent);

    if (!sipMeth)
    {
        DNSSD::PublicService::childEvent(a0);
        return;
    }

    typedef void (*sipVH_QtCore_25)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QChildEvent*);

    ((sipVH_QtCore_25)(sipModuleAPI_dnssd_QtCore->em_virthandlers[25]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_PublicService::timerEvent(QTimerEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[4],sipPySelf,NULL,sipName_timerEvent);

    if (!sipMeth)
    {
        DNSSD::PublicService::timerEvent(a0);
        return;
    }

    typedef void (*sipVH_QtCore_9)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QTimerEvent*);

    ((sipVH_QtCore_9)(sipModuleAPI_dnssd_QtCore->em_virthandlers[9]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

bool sipDNSSD_PublicService::eventFilter(QObject*a0,QEvent*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[5],sipPySelf,NULL,sipName_eventFilter);

    if (!sipMeth)
        return DNSSD::PublicService::eventFilter(a0,a1);

    typedef bool (*sipVH_QtCore_18)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QObject*,QEvent*);

    return ((sipVH_QtCore_18)(sipModuleAPI_dnssd_QtCore->em_virthandlers[18]))(sipGILState, 0, sipPySelf, sipMeth, a0, a1);
}

bool sipDNSSD_PublicService::event(QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[6],sipPySelf,NULL,sipName_event);

    if (!sipMeth)
        return DNSSD::PublicService::event(a0);

    typedef bool (*sipVH_QtCore_5)(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, QEvent*);

    return ((sipVH_QtCore_5)(sipModuleAPI_dnssd_QtCore->em_virthandlers[5]))(sipGILState, 0, sipPySelf, sipMeth, a0);
}

void sipDNSSD_PublicService::virtual_hook(int a0,void*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[7],sipPySelf,NULL,sipName_virtual_hook);

    if (!sipMeth)
    {
        DNSSD::PublicService::virtual_hook(a0,a1);
        return;
    }

    extern void sipVH_dnssd_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int,void*);

    sipVH_dnssd_0(sipGILState, 0, sipPySelf, sipMeth, a0, a1);
}


extern "C" {static PyObject *meth_DNSSD_PublicService_stop(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_stop(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_PublicService, &sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->stop();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_stop, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_publish(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_publish(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_PublicService, &sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->publish();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_publish, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_isPublished(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_isPublished(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_PublicService, &sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->isPublished();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_isPublished, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_publishAsync(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_publishAsync(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_PublicService, &sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->publishAsync();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_publishAsync, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_setTextData(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_setTextData(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const QMap<QString,QByteArray>* a0;
        int a0State = 0;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, sipType_QMap_0100QString_0100QByteArray,&a0, &a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setTextData(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QMap<QString,QByteArray> *>(a0),sipType_QMap_0100QString_0100QByteArray,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_setTextData, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_setServiceName(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_setServiceName(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const QString* a0;
        int a0State = 0;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, sipType_QString,&a0, &a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setServiceName(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_setServiceName, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_setType(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_setType(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const QString* a0;
        int a0State = 0;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, sipType_QString,&a0, &a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setType(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_setType, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_setSubTypes(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_setSubTypes(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const QStringList* a0;
        int a0State = 0;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, sipType_QStringList,&a0, &a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setSubTypes(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QStringList *>(a0),sipType_QStringList,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_setSubTypes, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_setPort(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_setPort(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        unsigned short a0;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bt", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, &a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setPort(a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_setPort, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_setDomain(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_setDomain(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const QString* a0;
        int a0State = 0;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, sipType_QString,&a0, &a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->setDomain(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_setDomain, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_subtypes(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_subtypes(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;

    {
        const DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_PublicService, &sipCpp))
        {
            QStringList*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QStringList(sipCpp->subtypes());
            Py_END_ALLOW_THREADS

            return sipConvertFromNewType(sipRes,sipType_QStringList,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_subtypes, NULL);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_PublicService_virtual_hook(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_PublicService_virtual_hook(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = NULL;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        void* a1;
        DNSSD::PublicService *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "piv", &sipSelf, sipType_DNSSD_PublicService, &sipCpp, &a0, &a1))
        {
            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->DNSSD::PublicService::virtual_hook(a0,a1) : sipCpp->virtual_hook(a0,a1));
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_PublicService, sipName_virtual_hook, NULL);

    return NULL;
}


/* Cast a pointer to a type somewhere in its superclass hierarchy. */
extern "C" {static void *cast_DNSSD_PublicService(void *, const sipTypeDef *);}
static void *cast_DNSSD_PublicService(void *ptr, const sipTypeDef *targetType)
{
    void *res;

    if (targetType == sipType_DNSSD_PublicService)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_QObject)->ctd_cast((QObject *)(DNSSD::PublicService *)ptr,targetType)) != NULL)
        return res;

    if ((res = ((const sipClassTypeDef *)sipType_DNSSD_ServiceBase)->ctd_cast((DNSSD::ServiceBase *)(DNSSD::PublicService *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_DNSSD_PublicService(void *, int);}
static void release_DNSSD_PublicService(void *sipCppV,int)
{
    DNSSD::PublicService *sipCpp = reinterpret_cast<DNSSD::PublicService *>(sipCppV);

    Py_BEGIN_ALLOW_THREADS

    if (QThread::currentThread() == sipCpp->thread())
        delete sipCpp;
    else
        sipCpp->deleteLater();

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_DNSSD_PublicService(sipSimpleWrapper *);}
static void dealloc_DNSSD_PublicService(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipDNSSD_PublicService *>(sipGetAddress(sipSelf))->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_DNSSD_PublicService(sipGetAddress(sipSelf),sipSelf->flags);
    }
}


extern "C" {static void *init_type_DNSSD_PublicService(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_DNSSD_PublicService(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
{
    sipDNSSD_PublicService *sipCpp = 0;

    {
        const QString& a0def = QString();
        const QString* a0 = &a0def;
        int a0State = 0;
        const QString& a1def = QString();
        const QString* a1 = &a1def;
        int a1State = 0;
        uint a2 = 0;
        const QString& a3def = QString();
        const QString* a3 = &a3def;
        int a3State = 0;
        const QStringList& a4def = QStringList();
        const QStringList* a4 = &a4def;
        int a4State = 0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "|J1J1uJ1J1", sipType_QString,&a0, &a0State, sipType_QString,&a1, &a1State, &a2, sipType_QString,&a3, &a3State, sipType_QStringList,&a4, &a4State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipDNSSD_PublicService(*a0,*a1,a2,*a3,*a4);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);
            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);
            sipReleaseType(const_cast<QString *>(a3),sipType_QString,a3State);
            sipReleaseType(const_cast<QStringList *>(a4),sipType_QStringList,a4State);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return NULL;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_DNSSD_PublicService[] = {{141, 0, 0}, {6, 255, 1}};


static PyMethodDef methods_DNSSD_PublicService[] = {
    {SIP_MLNAME_CAST(sipName_isPublished), meth_DNSSD_PublicService_isPublished, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_publish), meth_DNSSD_PublicService_publish, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_publishAsync), meth_DNSSD_PublicService_publishAsync, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setDomain), meth_DNSSD_PublicService_setDomain, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setPort), meth_DNSSD_PublicService_setPort, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setServiceName), meth_DNSSD_PublicService_setServiceName, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setSubTypes), meth_DNSSD_PublicService_setSubTypes, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setTextData), meth_DNSSD_PublicService_setTextData, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setType), meth_DNSSD_PublicService_setType, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_stop), meth_DNSSD_PublicService_stop, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_subtypes), meth_DNSSD_PublicService_subtypes, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_virtual_hook), meth_DNSSD_PublicService_virtual_hook, METH_VARARGS, NULL}
};


/* Define this type's signals. */
static const pyqt4QtSignal signals_DNSSD_PublicService[] = {
    {"published(bool)", 0, 0, 0},
    {0, 0, 0, 0}
};


pyqt4ClassTypeDef sipTypeDef_dnssd_DNSSD_PublicService = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_DNSSD__PublicService,
        {0}
    },
    {
        sipNameNr_PublicService,
        {0, 255, 0},
        12, methods_DNSSD_PublicService,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_DNSSD_PublicService,
    0,
    init_type_DNSSD_PublicService,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_DNSSD_PublicService,
    0,
    0,
    0,
    release_DNSSD_PublicService,
    cast_DNSSD_PublicService,
    0,
    0,
    0,
    0,
    0,
    0
},
    &DNSSD::PublicService::staticMetaObject,
    0,
    signals_DNSSD_PublicService,
};
