/*
 * Module code.
 *
 * Generated by SIP 4.8.2 on Sun Oct 11 19:57:13 2009
 */

#include "sipAPIdnssd.h"

#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/dnssd/servicetypebrowser.sip"
#include <dnssd/servicetypebrowser.h>
#line 12 "sipdnssdpart1.cpp"

#line 46 "/usr/local/share/py-sip/QtCore/qstring.sip"
#include <qstring.h>
#line 16 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qobject.sip"
#include <qobject.h>
#line 19 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 22 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 25 "sipdnssdpart1.cpp"
#line 297 "/usr/local/share/py-sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 28 "sipdnssdpart1.cpp"
#line 284 "/usr/local/share/py-sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 31 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 34 "sipdnssdpart1.cpp"
#line 328 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 424 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 637 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 699 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 721 "/usr/local/share/py-sip/QtCore/qlocale.sip"
#include <qlocale.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 210 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 210 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 65 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qfileinfo.sip"
#include <qfileinfo.h>
#line 68 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qabstractitemmodel.sip"
#include <qabstractitemmodel.h>
#line 71 "sipdnssdpart1.cpp"
#line 48 "/usr/local/share/py-sip/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 74 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qurl.sip"
#include <qurl.h>
#line 77 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qlocale.sip"
#include <qlocale.h>
#line 80 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 83 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qthread.sip"
#include <qthread.h>
#line 86 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qregexp.sip"
#include <qregexp.h>
#line 89 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 92 "sipdnssdpart1.cpp"


class sipDNSSD_ServiceTypeBrowser : public DNSSD::ServiceTypeBrowser
{
public:
    sipDNSSD_ServiceTypeBrowser(const QString&,QObject *);
    virtual ~sipDNSSD_ServiceTypeBrowser();

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

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
    int sipProtect_receivers(const char *) const;
    void sipProtectVirt_timerEvent(bool,QTimerEvent *);
    void sipProtectVirt_childEvent(bool,QChildEvent *);
    void sipProtectVirt_customEvent(bool,QEvent *);
    void sipProtectVirt_connectNotify(bool,const char *);
    void sipProtectVirt_disconnectNotify(bool,const char *);

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

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[7];
};

sipDNSSD_ServiceTypeBrowser::sipDNSSD_ServiceTypeBrowser(const QString& a0,QObject *a1): DNSSD::ServiceTypeBrowser(a0,a1), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

const QMetaObject *sipDNSSD_ServiceTypeBrowser::metaObject() const
{
    return sip_dnssd_qt_metaobject(sipPySelf,sipType_DNSSD_ServiceTypeBrowser);
}

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

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

    return _id;
}

void *sipDNSSD_ServiceTypeBrowser::qt_metacast(const char *_clname)
{
    return (sip_dnssd_qt_metacast && sip_dnssd_qt_metacast(sipPySelf,sipType_DNSSD_ServiceTypeBrowser,_clname)) ? this : DNSSD::ServiceTypeBrowser::qt_metacast(_clname);
}

bool sipDNSSD_ServiceTypeBrowser::event(QEvent *a0)
{
    typedef bool (*sipVH_QtCore_13)(sip_gilstate_t,PyObject *,QEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,NULL,sipName_event);

    if (!meth)
        return QObject::event(a0);

    return ((sipVH_QtCore_13)(sipModuleAPI_dnssd_QtCore->em_virthandlers[13]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceTypeBrowser::eventFilter(QObject *a0,QEvent *a1)
{
    typedef bool (*sipVH_QtCore_21)(sip_gilstate_t,PyObject *,QObject *,QEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,NULL,sipName_eventFilter);

    if (!meth)
        return QObject::eventFilter(a0,a1);

    return ((sipVH_QtCore_21)(sipModuleAPI_dnssd_QtCore->em_virthandlers[21]))(sipGILState,meth,a0,a1);
}

void sipDNSSD_ServiceTypeBrowser::timerEvent(QTimerEvent *a0)
{
    typedef void (*sipVH_QtCore_3)(sip_gilstate_t,PyObject *,QTimerEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,NULL,sipName_timerEvent);

    if (!meth)
    {
        QObject::timerEvent(a0);
        return;
    }

    ((sipVH_QtCore_3)(sipModuleAPI_dnssd_QtCore->em_virthandlers[3]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceTypeBrowser::childEvent(QChildEvent *a0)
{
    typedef void (*sipVH_QtCore_20)(sip_gilstate_t,PyObject *,QChildEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

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

    if (!meth)
    {
        QObject::childEvent(a0);
        return;
    }

    ((sipVH_QtCore_20)(sipModuleAPI_dnssd_QtCore->em_virthandlers[20]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceTypeBrowser::customEvent(QEvent *a0)
{
    typedef void (*sipVH_QtCore_19)(sip_gilstate_t,PyObject *,QEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[4],sipPySelf,NULL,sipName_customEvent);

    if (!meth)
    {
        QObject::customEvent(a0);
        return;
    }

    ((sipVH_QtCore_19)(sipModuleAPI_dnssd_QtCore->em_virthandlers[19]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceTypeBrowser::connectNotify(const char *a0)
{
    typedef void (*sipVH_QtCore_18)(sip_gilstate_t,PyObject *,const char *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[5],sipPySelf,NULL,sipName_connectNotify);

    if (!meth)
    {
        QObject::connectNotify(a0);
        return;
    }

    ((sipVH_QtCore_18)(sipModuleAPI_dnssd_QtCore->em_virthandlers[18]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceTypeBrowser::disconnectNotify(const char *a0)
{
    typedef void (*sipVH_QtCore_18)(sip_gilstate_t,PyObject *,const char *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[6],sipPySelf,NULL,sipName_disconnectNotify);

    if (!meth)
    {
        QObject::disconnectNotify(a0);
        return;
    }

    ((sipVH_QtCore_18)(sipModuleAPI_dnssd_QtCore->em_virthandlers[18]))(sipGILState,meth,a0);
}

int sipDNSSD_ServiceTypeBrowser::sipProtect_receivers(const char *a0) const
{
    return QObject::receivers(a0);
}

void sipDNSSD_ServiceTypeBrowser::sipProtectVirt_timerEvent(bool sipSelfWasArg,QTimerEvent *a0)
{
    (sipSelfWasArg ? QObject::timerEvent(a0) : timerEvent(a0));
}

void sipDNSSD_ServiceTypeBrowser::sipProtectVirt_childEvent(bool sipSelfWasArg,QChildEvent *a0)
{
    (sipSelfWasArg ? QObject::childEvent(a0) : childEvent(a0));
}

void sipDNSSD_ServiceTypeBrowser::sipProtectVirt_customEvent(bool sipSelfWasArg,QEvent *a0)
{
    (sipSelfWasArg ? QObject::customEvent(a0) : customEvent(a0));
}

void sipDNSSD_ServiceTypeBrowser::sipProtectVirt_connectNotify(bool sipSelfWasArg,const char *a0)
{
    (sipSelfWasArg ? QObject::connectNotify(a0) : connectNotify(a0));
}

void sipDNSSD_ServiceTypeBrowser::sipProtectVirt_disconnectNotify(bool sipSelfWasArg,const char *a0)
{
    (sipSelfWasArg ? QObject::disconnectNotify(a0) : disconnectNotify(a0));
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_receivers(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_receivers(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        char * a0;
        sipDNSSD_ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pG",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp,&a0))
        {
            int sipRes = 0;

#line 462 "/usr/local/share/py-sip/QtCore/qobject.sip"
        // We need to take into account any proxies for Python signals. Import the
        // helper if it hasn't already been done.
        typedef int (*helper_func)(QObject *, const char *, int);
        
        static helper_func helper = 0;
        
        if (!helper)
            helper = (helper_func)sipImportSymbol("qpycore_qobject_receivers");
        
        if (helper)
            sipRes = helper(sipCpp, a0, sipCpp->sipProtect_receivers(a0));
#line 345 "sipdnssdpart1.cpp"

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_receivers);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_timerEvent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_timerEvent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        QTimerEvent * a0;
        sipDNSSD_ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp,sipType_QTimerEvent,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_timerEvent(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_timerEvent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_childEvent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_childEvent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        QChildEvent * a0;
        sipDNSSD_ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp,sipType_QChildEvent,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_childEvent(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_childEvent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_customEvent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_customEvent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        QEvent * a0;
        sipDNSSD_ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp,sipType_QEvent,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_customEvent(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_customEvent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_connectNotify(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_connectNotify(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        char * a0;
        sipDNSSD_ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pG",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_connectNotify(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_connectNotify);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_disconnectNotify(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_disconnectNotify(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        char * a0;
        sipDNSSD_ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pG",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_disconnectNotify(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_disconnectNotify);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_serviceTypes(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_serviceTypes(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        DNSSD::ServiceTypeBrowser *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_serviceTypes);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_startBrowse(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_startBrowse(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        DNSSD::ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->startBrowse();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_startBrowse);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceTypeBrowser_isRunning(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceTypeBrowser_isRunning(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        DNSSD::ServiceTypeBrowser *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B",&sipSelf,sipType_DNSSD_ServiceTypeBrowser,&sipCpp))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->isRunning();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceTypeBrowser,sipName_isRunning);

    return NULL;
}


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

    if (targetType == sipType_DNSSD_ServiceTypeBrowser)
        return ptr;

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

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_DNSSD_ServiceTypeBrowser(void *, int);}
static void release_DNSSD_ServiceTypeBrowser(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipDNSSD_ServiceTypeBrowser *>(sipCppV);
    else
        delete reinterpret_cast<DNSSD::ServiceTypeBrowser *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_DNSSD_ServiceTypeBrowser(sipSimpleWrapper *);}
static void dealloc_DNSSD_ServiceTypeBrowser(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipDNSSD_ServiceTypeBrowser *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_DNSSD_ServiceTypeBrowser(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_DNSSD_ServiceTypeBrowser(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_DNSSD_ServiceTypeBrowser(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **sipOwner, int *sipArgsParsed)
{
    sipDNSSD_ServiceTypeBrowser *sipCpp = 0;

    if (!sipCpp)
    {
        const QString& a0def = QString();
        const QString * a0 = &a0def;
        int a0State = 0;
        QObject * a1 = 0;

        if (sipParseArgs(sipArgsParsed,sipArgs,"|J1JH",sipType_QString,&a0,&a0State,sipType_QObject,&a1,sipOwner))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipDNSSD_ServiceTypeBrowser(*a0,a1);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


/* Define this type's super-types. */
static sipEncodedClassDef supers_DNSSD_ServiceTypeBrowser[] = {{111, 0, 1}};


static PyMethodDef methods_DNSSD_ServiceTypeBrowser[] = {
    {SIP_MLNAME_CAST(sipName_childEvent), meth_DNSSD_ServiceTypeBrowser_childEvent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_connectNotify), meth_DNSSD_ServiceTypeBrowser_connectNotify, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_customEvent), meth_DNSSD_ServiceTypeBrowser_customEvent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_disconnectNotify), meth_DNSSD_ServiceTypeBrowser_disconnectNotify, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isRunning), meth_DNSSD_ServiceTypeBrowser_isRunning, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_receivers), meth_DNSSD_ServiceTypeBrowser_receivers, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_serviceTypes), meth_DNSSD_ServiceTypeBrowser_serviceTypes, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_startBrowse), meth_DNSSD_ServiceTypeBrowser_startBrowse, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_timerEvent), meth_DNSSD_ServiceTypeBrowser_timerEvent, METH_VARARGS, NULL}
};


/* Define this type's PyQt4 signals. */
static const pyqt4QtSignal pyqt4_signals_DNSSD_ServiceTypeBrowser[] = {
    {"finished()", 0},
    {"serviceTypeAdded(const QString&)", 0},
    {"serviceTypeRemoved(const QString&)", 0},
    {0, 0}
};


pyqt4ClassTypeDef pyqt4Type_dnssd_DNSSD_ServiceTypeBrowser = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_DNSSD__ServiceTypeBrowser,
        {0}
    },
    sipNameNr_ServiceTypeBrowser,
    -1,
    -1,
    {0, 255, 0},
    supers_DNSSD_ServiceTypeBrowser,
    0,
    9, methods_DNSSD_ServiceTypeBrowser,
    0, 0,
    0, 0,
    init_DNSSD_ServiceTypeBrowser,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_DNSSD_ServiceTypeBrowser,
    release_DNSSD_ServiceTypeBrowser,
    cast_DNSSD_ServiceTypeBrowser,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    &DNSSD::ServiceTypeBrowser::staticMetaObject,
    0,
    pyqt4_signals_DNSSD_ServiceTypeBrowser
};

#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/dnssd/servicemodel.sip"
#include <dnssd/servicemodel.h>
#line 724 "sipdnssdpart1.cpp"

#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/kdebindings-4.3.1/python/pykde4/sip/dnssd/servicebrowser.sip"
#include <dnssd/servicebrowser.h>
#line 728 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qobject.sip"
#include <qobject.h>
#line 731 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qabstractitemmodel.sip"
#include <qabstractitemmodel.h>
#line 734 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 737 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 740 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 743 "sipdnssdpart1.cpp"
#line 328 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 424 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 637 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 699 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 721 "/usr/local/share/py-sip/QtCore/qlocale.sip"
#include <qlocale.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 130 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 43 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 210 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 210 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 774 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qfileinfo.sip"
#include <qfileinfo.h>
#line 777 "sipdnssdpart1.cpp"
#line 48 "/usr/local/share/py-sip/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 780 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qurl.sip"
#include <qurl.h>
#line 783 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstring.sip"
#include <qstring.h>
#line 786 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qlocale.sip"
#include <qlocale.h>
#line 789 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qdatastream.sip"
#include <qdatastream.h>
#line 792 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qsize.sip"
#include <qsize.h>
#line 795 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 798 "sipdnssdpart1.cpp"
#line 45 "/usr/local/share/py-sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 801 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qmimedata.sip"
#include <qmimedata.h>
#line 804 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 807 "sipdnssdpart1.cpp"
#line 43 "/usr/local/share/py-sip/QtCore/qmap.sip"
#include <qmap.h>
#line 154 "/usr/local/share/py-sip/QtCore/qmap.sip"
#include <qmap.h>
#line 812 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 815 "sipdnssdpart1.cpp"
#line 297 "/usr/local/share/py-sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 818 "sipdnssdpart1.cpp"
#line 284 "/usr/local/share/py-sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 821 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qthread.sip"
#include <qthread.h>
#line 824 "sipdnssdpart1.cpp"
#line 46 "/usr/local/share/py-sip/QtCore/qregexp.sip"
#include <qregexp.h>
#line 827 "sipdnssdpart1.cpp"
#line 42 "/usr/local/share/py-sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 830 "sipdnssdpart1.cpp"


class sipDNSSD_ServiceModel : public DNSSD::ServiceModel
{
public:
    sipDNSSD_ServiceModel(DNSSD::ServiceBrowser *,QObject *);
    virtual ~sipDNSSD_ServiceModel();

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

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
    int sipProtect_receivers(const char *) const;
    void sipProtectVirt_timerEvent(bool,QTimerEvent *);
    void sipProtectVirt_childEvent(bool,QChildEvent *);
    void sipProtectVirt_customEvent(bool,QEvent *);
    void sipProtectVirt_connectNotify(bool,const char *);
    void sipProtectVirt_disconnectNotify(bool,const char *);
    void sipProtect_encodeData(const QModelIndexList&,QDataStream&) const;
    bool sipProtect_decodeData(int,int,const QModelIndex&,QDataStream&);
    void sipProtect_beginInsertRows(const QModelIndex&,int,int);
    void sipProtect_endInsertRows();
    void sipProtect_beginRemoveRows(const QModelIndex&,int,int);
    void sipProtect_endRemoveRows();
    void sipProtect_beginInsertColumns(const QModelIndex&,int,int);
    void sipProtect_endInsertColumns();
    void sipProtect_beginRemoveColumns(const QModelIndex&,int,int);
    void sipProtect_endRemoveColumns();
    QModelIndexList sipProtect_persistentIndexList() const;
    void sipProtect_reset();
    void sipProtect_changePersistentIndex(const QModelIndex&,const QModelIndex&);
    void sipProtect_changePersistentIndexList(const QModelIndexList&,const QModelIndexList&);
    QModelIndex sipProtect_createIndex(int,int,void *) const;

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    int columnCount(const QModelIndex&) const;
    int rowCount(const QModelIndex&) const;
    QModelIndex parent(const QModelIndex&) const;
    QModelIndex index(int,int,const QModelIndex&) const;
    QVariant data(const QModelIndex&,int) const;
    QVariant headerData(int,Qt::Orientation,int) const;
    bool hasIndex(int,int,const QModelIndex&) const;
    bool hasChildren(const QModelIndex&) const;
    bool setData(const QModelIndex&,const QVariant&,int);
    bool setHeaderData(int,Qt::Orientation,const QVariant&,int);
    QMap<int,QVariant> itemData(const QModelIndex&) const;
    bool setItemData(const QModelIndex&,const QMap<int,QVariant>&);
    QStringList mimeTypes() const;
    QMimeData * mimeData(const QModelIndexList&) const;
    bool dropMimeData(const QMimeData *,Qt::DropAction,int,int,const QModelIndex&);
    Qt::DropActions supportedDropActions() const;
    bool insertRows(int,int,const QModelIndex&);
    bool insertColumns(int,int,const QModelIndex&);
    bool removeRows(int,int,const QModelIndex&);
    bool removeColumns(int,int,const QModelIndex&);
    void fetchMore(const QModelIndex&);
    bool canFetchMore(const QModelIndex&) const;
    Qt::ItemFlags flags(const QModelIndex&) const;
    void sort(int,Qt::SortOrder);
    QModelIndex buddy(const QModelIndex&) const;
    QModelIndexList match(const QModelIndex&,int,const QVariant&,int,Qt::MatchFlags) const;
    QSize span(const QModelIndex&) const;
    bool submit();
    void revert();
    bool event(QEvent *);
    bool eventFilter(QObject *,QEvent *);
    void timerEvent(QTimerEvent *);
    void childEvent(QChildEvent *);
    void customEvent(QEvent *);
    void connectNotify(const char *);
    void disconnectNotify(const char *);

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[36];
};

sipDNSSD_ServiceModel::sipDNSSD_ServiceModel(DNSSD::ServiceBrowser *a0,QObject *a1): DNSSD::ServiceModel(a0,a1), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

const QMetaObject *sipDNSSD_ServiceModel::metaObject() const
{
    return sip_dnssd_qt_metaobject(sipPySelf,sipType_DNSSD_ServiceModel);
}

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

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

    return _id;
}

void *sipDNSSD_ServiceModel::qt_metacast(const char *_clname)
{
    return (sip_dnssd_qt_metacast && sip_dnssd_qt_metacast(sipPySelf,sipType_DNSSD_ServiceModel,_clname)) ? this : DNSSD::ServiceModel::qt_metacast(_clname);
}

int sipDNSSD_ServiceModel::columnCount(const QModelIndex& a0) const
{
    typedef int (*sipVH_QtCore_39)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[0]),sipPySelf,NULL,sipName_columnCount);

    if (!meth)
        return DNSSD::ServiceModel::columnCount(a0);

    return ((sipVH_QtCore_39)(sipModuleAPI_dnssd_QtCore->em_virthandlers[39]))(sipGILState,meth,a0);
}

int sipDNSSD_ServiceModel::rowCount(const QModelIndex& a0) const
{
    typedef int (*sipVH_QtCore_39)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[1]),sipPySelf,NULL,sipName_rowCount);

    if (!meth)
        return DNSSD::ServiceModel::rowCount(a0);

    return ((sipVH_QtCore_39)(sipModuleAPI_dnssd_QtCore->em_virthandlers[39]))(sipGILState,meth,a0);
}

QModelIndex sipDNSSD_ServiceModel::parent(const QModelIndex& a0) const
{
    typedef QModelIndex (*sipVH_QtCore_40)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[2]),sipPySelf,NULL,sipName_parent);

    if (!meth)
        return DNSSD::ServiceModel::parent(a0);

    return ((sipVH_QtCore_40)(sipModuleAPI_dnssd_QtCore->em_virthandlers[40]))(sipGILState,meth,a0);
}

QModelIndex sipDNSSD_ServiceModel::index(int a0,int a1,const QModelIndex& a2) const
{
    typedef QModelIndex (*sipVH_QtCore_42)(sip_gilstate_t,PyObject *,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[3]),sipPySelf,NULL,sipName_index);

    if (!meth)
        return DNSSD::ServiceModel::index(a0,a1,a2);

    return ((sipVH_QtCore_42)(sipModuleAPI_dnssd_QtCore->em_virthandlers[42]))(sipGILState,meth,a0,a1,a2);
}

QVariant sipDNSSD_ServiceModel::data(const QModelIndex& a0,int a1) const
{
    typedef QVariant (*sipVH_QtCore_56)(sip_gilstate_t,PyObject *,const QModelIndex&,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[4]),sipPySelf,NULL,sipName_data);

    if (!meth)
        return DNSSD::ServiceModel::data(a0,a1);

    return ((sipVH_QtCore_56)(sipModuleAPI_dnssd_QtCore->em_virthandlers[56]))(sipGILState,meth,a0,a1);
}

QVariant sipDNSSD_ServiceModel::headerData(int a0,Qt::Orientation a1,int a2) const
{
    typedef QVariant (*sipVH_QtCore_54)(sip_gilstate_t,PyObject *,int,Qt::Orientation,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[5]),sipPySelf,NULL,sipName_headerData);

    if (!meth)
        return DNSSD::ServiceModel::headerData(a0,a1,a2);

    return ((sipVH_QtCore_54)(sipModuleAPI_dnssd_QtCore->em_virthandlers[54]))(sipGILState,meth,a0,a1,a2);
}

bool sipDNSSD_ServiceModel::hasIndex(int a0,int a1,const QModelIndex& a2) const
{
    typedef bool (*sipVH_QtCore_48)(sip_gilstate_t,PyObject *,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[6]),sipPySelf,NULL,sipName_hasIndex);

    if (!meth)
        return DNSSD::ServiceModel::hasIndex(a0,a1,a2);

    return ((sipVH_QtCore_48)(sipModuleAPI_dnssd_QtCore->em_virthandlers[48]))(sipGILState,meth,a0,a1,a2);
}

bool sipDNSSD_ServiceModel::hasChildren(const QModelIndex& a0) const
{
    typedef bool (*sipVH_QtCore_38)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[7]),sipPySelf,NULL,sipName_hasChildren);

    if (!meth)
        return QAbstractItemModel::hasChildren(a0);

    return ((sipVH_QtCore_38)(sipModuleAPI_dnssd_QtCore->em_virthandlers[38]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceModel::setData(const QModelIndex& a0,const QVariant& a1,int a2)
{
    typedef bool (*sipVH_QtCore_55)(sip_gilstate_t,PyObject *,const QModelIndex&,const QVariant&,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[8],sipPySelf,NULL,sipName_setData);

    if (!meth)
        return QAbstractItemModel::setData(a0,a1,a2);

    return ((sipVH_QtCore_55)(sipModuleAPI_dnssd_QtCore->em_virthandlers[55]))(sipGILState,meth,a0,a1,a2);
}

bool sipDNSSD_ServiceModel::setHeaderData(int a0,Qt::Orientation a1,const QVariant& a2,int a3)
{
    typedef bool (*sipVH_QtCore_53)(sip_gilstate_t,PyObject *,int,Qt::Orientation,const QVariant&,int);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[9],sipPySelf,NULL,sipName_setHeaderData);

    if (!meth)
        return QAbstractItemModel::setHeaderData(a0,a1,a2,a3);

    return ((sipVH_QtCore_53)(sipModuleAPI_dnssd_QtCore->em_virthandlers[53]))(sipGILState,meth,a0,a1,a2,a3);
}

QMap<int,QVariant> sipDNSSD_ServiceModel::itemData(const QModelIndex& a0) const
{
    typedef QMap<int,QVariant> (*sipVH_QtCore_52)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[10]),sipPySelf,NULL,sipName_itemData);

    if (!meth)
        return QAbstractItemModel::itemData(a0);

    return ((sipVH_QtCore_52)(sipModuleAPI_dnssd_QtCore->em_virthandlers[52]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceModel::setItemData(const QModelIndex& a0,const QMap<int,QVariant>& a1)
{
    typedef bool (*sipVH_QtCore_51)(sip_gilstate_t,PyObject *,const QModelIndex&,const QMap<int,QVariant>&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[11],sipPySelf,NULL,sipName_setItemData);

    if (!meth)
        return QAbstractItemModel::setItemData(a0,a1);

    return ((sipVH_QtCore_51)(sipModuleAPI_dnssd_QtCore->em_virthandlers[51]))(sipGILState,meth,a0,a1);
}

QStringList sipDNSSD_ServiceModel::mimeTypes() const
{
    typedef QStringList (*sipVH_QtCore_23)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[12]),sipPySelf,NULL,sipName_mimeTypes);

    if (!meth)
        return QAbstractItemModel::mimeTypes();

    return ((sipVH_QtCore_23)(sipModuleAPI_dnssd_QtCore->em_virthandlers[23]))(sipGILState,meth);
}

QMimeData * sipDNSSD_ServiceModel::mimeData(const QModelIndexList& a0) const
{
    typedef QMimeData * (*sipVH_QtCore_50)(sip_gilstate_t,PyObject *,const QList<QModelIndex>&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[13]),sipPySelf,NULL,sipName_mimeData);

    if (!meth)
        return QAbstractItemModel::mimeData(a0);

    return ((sipVH_QtCore_50)(sipModuleAPI_dnssd_QtCore->em_virthandlers[50]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceModel::dropMimeData(const QMimeData *a0,Qt::DropAction a1,int a2,int a3,const QModelIndex& a4)
{
    typedef bool (*sipVH_QtCore_41)(sip_gilstate_t,PyObject *,const QMimeData *,Qt::DropAction,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[14],sipPySelf,NULL,sipName_dropMimeData);

    if (!meth)
        return QAbstractItemModel::dropMimeData(a0,a1,a2,a3,a4);

    return ((sipVH_QtCore_41)(sipModuleAPI_dnssd_QtCore->em_virthandlers[41]))(sipGILState,meth,a0,a1,a2,a3,a4);
}

Qt::DropActions sipDNSSD_ServiceModel::supportedDropActions() const
{
    typedef Qt::DropActions (*sipVH_QtCore_49)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[15]),sipPySelf,NULL,sipName_supportedDropActions);

    if (!meth)
        return QAbstractItemModel::supportedDropActions();

    return ((sipVH_QtCore_49)(sipModuleAPI_dnssd_QtCore->em_virthandlers[49]))(sipGILState,meth);
}

bool sipDNSSD_ServiceModel::insertRows(int a0,int a1,const QModelIndex& a2)
{
    typedef bool (*sipVH_QtCore_48)(sip_gilstate_t,PyObject *,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[16],sipPySelf,NULL,sipName_insertRows);

    if (!meth)
        return QAbstractItemModel::insertRows(a0,a1,a2);

    return ((sipVH_QtCore_48)(sipModuleAPI_dnssd_QtCore->em_virthandlers[48]))(sipGILState,meth,a0,a1,a2);
}

bool sipDNSSD_ServiceModel::insertColumns(int a0,int a1,const QModelIndex& a2)
{
    typedef bool (*sipVH_QtCore_48)(sip_gilstate_t,PyObject *,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[17],sipPySelf,NULL,sipName_insertColumns);

    if (!meth)
        return QAbstractItemModel::insertColumns(a0,a1,a2);

    return ((sipVH_QtCore_48)(sipModuleAPI_dnssd_QtCore->em_virthandlers[48]))(sipGILState,meth,a0,a1,a2);
}

bool sipDNSSD_ServiceModel::removeRows(int a0,int a1,const QModelIndex& a2)
{
    typedef bool (*sipVH_QtCore_48)(sip_gilstate_t,PyObject *,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[18],sipPySelf,NULL,sipName_removeRows);

    if (!meth)
        return QAbstractItemModel::removeRows(a0,a1,a2);

    return ((sipVH_QtCore_48)(sipModuleAPI_dnssd_QtCore->em_virthandlers[48]))(sipGILState,meth,a0,a1,a2);
}

bool sipDNSSD_ServiceModel::removeColumns(int a0,int a1,const QModelIndex& a2)
{
    typedef bool (*sipVH_QtCore_48)(sip_gilstate_t,PyObject *,int,int,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[19],sipPySelf,NULL,sipName_removeColumns);

    if (!meth)
        return QAbstractItemModel::removeColumns(a0,a1,a2);

    return ((sipVH_QtCore_48)(sipModuleAPI_dnssd_QtCore->em_virthandlers[48]))(sipGILState,meth,a0,a1,a2);
}

void sipDNSSD_ServiceModel::fetchMore(const QModelIndex& a0)
{
    typedef void (*sipVH_QtCore_47)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[20],sipPySelf,NULL,sipName_fetchMore);

    if (!meth)
    {
        QAbstractItemModel::fetchMore(a0);
        return;
    }

    ((sipVH_QtCore_47)(sipModuleAPI_dnssd_QtCore->em_virthandlers[47]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceModel::canFetchMore(const QModelIndex& a0) const
{
    typedef bool (*sipVH_QtCore_38)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[21]),sipPySelf,NULL,sipName_canFetchMore);

    if (!meth)
        return QAbstractItemModel::canFetchMore(a0);

    return ((sipVH_QtCore_38)(sipModuleAPI_dnssd_QtCore->em_virthandlers[38]))(sipGILState,meth,a0);
}

Qt::ItemFlags sipDNSSD_ServiceModel::flags(const QModelIndex& a0) const
{
    typedef Qt::ItemFlags (*sipVH_QtCore_46)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[22]),sipPySelf,NULL,sipName_flags);

    if (!meth)
        return QAbstractItemModel::flags(a0);

    return ((sipVH_QtCore_46)(sipModuleAPI_dnssd_QtCore->em_virthandlers[46]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceModel::sort(int a0,Qt::SortOrder a1)
{
    typedef void (*sipVH_QtCore_45)(sip_gilstate_t,PyObject *,int,Qt::SortOrder);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[23],sipPySelf,NULL,sipName_sort);

    if (!meth)
    {
        QAbstractItemModel::sort(a0,a1);
        return;
    }

    ((sipVH_QtCore_45)(sipModuleAPI_dnssd_QtCore->em_virthandlers[45]))(sipGILState,meth,a0,a1);
}

QModelIndex sipDNSSD_ServiceModel::buddy(const QModelIndex& a0) const
{
    typedef QModelIndex (*sipVH_QtCore_40)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[24]),sipPySelf,NULL,sipName_buddy);

    if (!meth)
        return QAbstractItemModel::buddy(a0);

    return ((sipVH_QtCore_40)(sipModuleAPI_dnssd_QtCore->em_virthandlers[40]))(sipGILState,meth,a0);
}

QModelIndexList sipDNSSD_ServiceModel::match(const QModelIndex& a0,int a1,const QVariant& a2,int a3,Qt::MatchFlags a4) const
{
    typedef QList<QModelIndex> (*sipVH_QtCore_44)(sip_gilstate_t,PyObject *,const QModelIndex&,int,const QVariant&,int,Qt::MatchFlags);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[25]),sipPySelf,NULL,sipName_match);

    if (!meth)
        return QAbstractItemModel::match(a0,a1,a2,a3,a4);

    return ((sipVH_QtCore_44)(sipModuleAPI_dnssd_QtCore->em_virthandlers[44]))(sipGILState,meth,a0,a1,a2,a3,a4);
}

QSize sipDNSSD_ServiceModel::span(const QModelIndex& a0) const
{
    typedef QSize (*sipVH_QtCore_43)(sip_gilstate_t,PyObject *,const QModelIndex&);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[26]),sipPySelf,NULL,sipName_span);

    if (!meth)
        return QAbstractItemModel::span(a0);

    return ((sipVH_QtCore_43)(sipModuleAPI_dnssd_QtCore->em_virthandlers[43]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceModel::submit()
{
    typedef bool (*sipVH_QtCore_1)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[27],sipPySelf,NULL,sipName_submit);

    if (!meth)
        return QAbstractItemModel::submit();

    return ((sipVH_QtCore_1)(sipModuleAPI_dnssd_QtCore->em_virthandlers[1]))(sipGILState,meth);
}

void sipDNSSD_ServiceModel::revert()
{
    typedef void (*sipVH_QtCore_5)(sip_gilstate_t,PyObject *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[28],sipPySelf,NULL,sipName_revert);

    if (!meth)
    {
        QAbstractItemModel::revert();
        return;
    }

    ((sipVH_QtCore_5)(sipModuleAPI_dnssd_QtCore->em_virthandlers[5]))(sipGILState,meth);
}

bool sipDNSSD_ServiceModel::event(QEvent *a0)
{
    typedef bool (*sipVH_QtCore_13)(sip_gilstate_t,PyObject *,QEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[29],sipPySelf,NULL,sipName_event);

    if (!meth)
        return QObject::event(a0);

    return ((sipVH_QtCore_13)(sipModuleAPI_dnssd_QtCore->em_virthandlers[13]))(sipGILState,meth,a0);
}

bool sipDNSSD_ServiceModel::eventFilter(QObject *a0,QEvent *a1)
{
    typedef bool (*sipVH_QtCore_21)(sip_gilstate_t,PyObject *,QObject *,QEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[30],sipPySelf,NULL,sipName_eventFilter);

    if (!meth)
        return QObject::eventFilter(a0,a1);

    return ((sipVH_QtCore_21)(sipModuleAPI_dnssd_QtCore->em_virthandlers[21]))(sipGILState,meth,a0,a1);
}

void sipDNSSD_ServiceModel::timerEvent(QTimerEvent *a0)
{
    typedef void (*sipVH_QtCore_3)(sip_gilstate_t,PyObject *,QTimerEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[31],sipPySelf,NULL,sipName_timerEvent);

    if (!meth)
    {
        QObject::timerEvent(a0);
        return;
    }

    ((sipVH_QtCore_3)(sipModuleAPI_dnssd_QtCore->em_virthandlers[3]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceModel::childEvent(QChildEvent *a0)
{
    typedef void (*sipVH_QtCore_20)(sip_gilstate_t,PyObject *,QChildEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[32],sipPySelf,NULL,sipName_childEvent);

    if (!meth)
    {
        QObject::childEvent(a0);
        return;
    }

    ((sipVH_QtCore_20)(sipModuleAPI_dnssd_QtCore->em_virthandlers[20]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceModel::customEvent(QEvent *a0)
{
    typedef void (*sipVH_QtCore_19)(sip_gilstate_t,PyObject *,QEvent *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[33],sipPySelf,NULL,sipName_customEvent);

    if (!meth)
    {
        QObject::customEvent(a0);
        return;
    }

    ((sipVH_QtCore_19)(sipModuleAPI_dnssd_QtCore->em_virthandlers[19]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceModel::connectNotify(const char *a0)
{
    typedef void (*sipVH_QtCore_18)(sip_gilstate_t,PyObject *,const char *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[34],sipPySelf,NULL,sipName_connectNotify);

    if (!meth)
    {
        QObject::connectNotify(a0);
        return;
    }

    ((sipVH_QtCore_18)(sipModuleAPI_dnssd_QtCore->em_virthandlers[18]))(sipGILState,meth,a0);
}

void sipDNSSD_ServiceModel::disconnectNotify(const char *a0)
{
    typedef void (*sipVH_QtCore_18)(sip_gilstate_t,PyObject *,const char *);

    sip_gilstate_t sipGILState;
    PyObject *meth;

    meth = sipIsPyMethod(&sipGILState,&sipPyMethods[35],sipPySelf,NULL,sipName_disconnectNotify);

    if (!meth)
    {
        QObject::disconnectNotify(a0);
        return;
    }

    ((sipVH_QtCore_18)(sipModuleAPI_dnssd_QtCore->em_virthandlers[18]))(sipGILState,meth,a0);
}

int sipDNSSD_ServiceModel::sipProtect_receivers(const char *a0) const
{
    return QObject::receivers(a0);
}

void sipDNSSD_ServiceModel::sipProtectVirt_timerEvent(bool sipSelfWasArg,QTimerEvent *a0)
{
    (sipSelfWasArg ? QObject::timerEvent(a0) : timerEvent(a0));
}

void sipDNSSD_ServiceModel::sipProtectVirt_childEvent(bool sipSelfWasArg,QChildEvent *a0)
{
    (sipSelfWasArg ? QObject::childEvent(a0) : childEvent(a0));
}

void sipDNSSD_ServiceModel::sipProtectVirt_customEvent(bool sipSelfWasArg,QEvent *a0)
{
    (sipSelfWasArg ? QObject::customEvent(a0) : customEvent(a0));
}

void sipDNSSD_ServiceModel::sipProtectVirt_connectNotify(bool sipSelfWasArg,const char *a0)
{
    (sipSelfWasArg ? QObject::connectNotify(a0) : connectNotify(a0));
}

void sipDNSSD_ServiceModel::sipProtectVirt_disconnectNotify(bool sipSelfWasArg,const char *a0)
{
    (sipSelfWasArg ? QObject::disconnectNotify(a0) : disconnectNotify(a0));
}

void sipDNSSD_ServiceModel::sipProtect_encodeData(const QModelIndexList& a0,QDataStream& a1) const
{
    QAbstractItemModel::encodeData(a0,a1);
}

bool sipDNSSD_ServiceModel::sipProtect_decodeData(int a0,int a1,const QModelIndex& a2,QDataStream& a3)
{
    return QAbstractItemModel::decodeData(a0,a1,a2,a3);
}

void sipDNSSD_ServiceModel::sipProtect_beginInsertRows(const QModelIndex& a0,int a1,int a2)
{
    QAbstractItemModel::beginInsertRows(a0,a1,a2);
}

void sipDNSSD_ServiceModel::sipProtect_endInsertRows()
{
    QAbstractItemModel::endInsertRows();
}

void sipDNSSD_ServiceModel::sipProtect_beginRemoveRows(const QModelIndex& a0,int a1,int a2)
{
    QAbstractItemModel::beginRemoveRows(a0,a1,a2);
}

void sipDNSSD_ServiceModel::sipProtect_endRemoveRows()
{
    QAbstractItemModel::endRemoveRows();
}

void sipDNSSD_ServiceModel::sipProtect_beginInsertColumns(const QModelIndex& a0,int a1,int a2)
{
    QAbstractItemModel::beginInsertColumns(a0,a1,a2);
}

void sipDNSSD_ServiceModel::sipProtect_endInsertColumns()
{
    QAbstractItemModel::endInsertColumns();
}

void sipDNSSD_ServiceModel::sipProtect_beginRemoveColumns(const QModelIndex& a0,int a1,int a2)
{
    QAbstractItemModel::beginRemoveColumns(a0,a1,a2);
}

void sipDNSSD_ServiceModel::sipProtect_endRemoveColumns()
{
    QAbstractItemModel::endRemoveColumns();
}

QModelIndexList sipDNSSD_ServiceModel::sipProtect_persistentIndexList() const
{
    return QAbstractItemModel::persistentIndexList();
}

void sipDNSSD_ServiceModel::sipProtect_reset()
{
    QAbstractItemModel::reset();
}

void sipDNSSD_ServiceModel::sipProtect_changePersistentIndex(const QModelIndex& a0,const QModelIndex& a1)
{
    QAbstractItemModel::changePersistentIndex(a0,a1);
}

void sipDNSSD_ServiceModel::sipProtect_changePersistentIndexList(const QModelIndexList& a0,const QModelIndexList& a1)
{
    QAbstractItemModel::changePersistentIndexList(a0,a1);
}

QModelIndex sipDNSSD_ServiceModel::sipProtect_createIndex(int a0,int a1,void *a2) const
{
    return QAbstractItemModel::createIndex(a0,a1,a2);
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_receivers(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_receivers(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        char * a0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pG",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0))
        {
            int sipRes = 0;

#line 462 "/usr/local/share/py-sip/QtCore/qobject.sip"
        // We need to take into account any proxies for Python signals. Import the
        // helper if it hasn't already been done.
        typedef int (*helper_func)(QObject *, const char *, int);
        
        static helper_func helper = 0;
        
        if (!helper)
            helper = (helper_func)sipImportSymbol("qpycore_qobject_receivers");
        
        if (helper)
            sipRes = helper(sipCpp, a0, sipCpp->sipProtect_receivers(a0));
#line 1646 "sipdnssdpart1.cpp"

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_receivers);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_timerEvent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_timerEvent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        QTimerEvent * a0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QTimerEvent,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_timerEvent(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_timerEvent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_childEvent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_childEvent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        QChildEvent * a0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QChildEvent,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_childEvent(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_childEvent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_customEvent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_customEvent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        QEvent * a0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ8",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QEvent,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_customEvent(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_customEvent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_connectNotify(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_connectNotify(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        char * a0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pG",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_connectNotify(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_connectNotify);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_disconnectNotify(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_disconnectNotify(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        char * a0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pG",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_disconnectNotify(sipSelfWasArg,a0);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_disconnectNotify);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_encodeData(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_encodeData(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndexList * a0;
        int a0State = 0;
        QDataStream * a1;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ1J9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QList_0200QModelIndex,&a0,&a0State,sipType_QDataStream,&a1))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_encodeData(*a0,*a1);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QModelIndexList *>(a0),sipType_QList_0200QModelIndex,a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_encodeData);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_decodeData(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_decodeData(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        int a0;
        int a1;
        const QModelIndex * a2;
        QDataStream * a3;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"piiJ9J9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0,&a1,sipType_QModelIndex,&a2,sipType_QDataStream,&a3))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtect_decodeData(a0,a1,*a2,*a3);
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_decodeData);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_beginInsertRows(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_beginInsertRows(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndex * a0;
        int a1;
        int a2;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ9ii",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0,&a1,&a2))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_beginInsertRows(*a0,a1,a2);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_beginInsertRows);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_endInsertRows(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_endInsertRows(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_endInsertRows();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_endInsertRows);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_beginRemoveRows(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_beginRemoveRows(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndex * a0;
        int a1;
        int a2;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ9ii",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0,&a1,&a2))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_beginRemoveRows(*a0,a1,a2);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_beginRemoveRows);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_endRemoveRows(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_endRemoveRows(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_endRemoveRows();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_endRemoveRows);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_beginInsertColumns(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_beginInsertColumns(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndex * a0;
        int a1;
        int a2;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ9ii",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0,&a1,&a2))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_beginInsertColumns(*a0,a1,a2);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_beginInsertColumns);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_endInsertColumns(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_endInsertColumns(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_endInsertColumns();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_endInsertColumns);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_beginRemoveColumns(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_beginRemoveColumns(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndex * a0;
        int a1;
        int a2;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ9ii",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0,&a1,&a2))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_beginRemoveColumns(*a0,a1,a2);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_beginRemoveColumns);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_endRemoveColumns(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_endRemoveColumns(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_endRemoveColumns();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_endRemoveColumns);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_persistentIndexList(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_persistentIndexList(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp))
        {
            QModelIndexList *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QModelIndexList(sipCpp->sipProtect_persistentIndexList());
            Py_END_ALLOW_THREADS

            PyObject *sipResObj = sipConvertFromType(sipRes,sipType_QList_0200QModelIndex,NULL);
            delete sipRes;

            return sipResObj;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_persistentIndexList);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_reset(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_reset(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"p",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_reset();
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_reset);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_changePersistentIndex(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_changePersistentIndex(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndex * a0;
        const QModelIndex * a1;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ9J9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0,sipType_QModelIndex,&a1))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_changePersistentIndex(*a0,*a1);
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_changePersistentIndex);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_changePersistentIndexList(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_changePersistentIndexList(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        const QModelIndexList * a0;
        int a0State = 0;
        const QModelIndexList * a1;
        int a1State = 0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pJ1J1",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QList_0200QModelIndex,&a0,&a0State,sipType_QList_0200QModelIndex,&a1,&a1State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_changePersistentIndexList(*a0,*a1);
            Py_END_ALLOW_THREADS

            sipReleaseType(const_cast<QModelIndexList *>(a0),sipType_QList_0200QModelIndex,a0State);
            sipReleaseType(const_cast<QModelIndexList *>(a1),sipType_QList_0200QModelIndex,a1State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_changePersistentIndexList);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_createIndex(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_createIndex(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;

    {
        int a0;
        int a1;
        PyObject * a2 = 0;
        sipDNSSD_ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"pii|P0",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0,&a1,&a2))
        {
            QModelIndex *sipRes = 0;

#line 226 "/usr/local/share/py-sip/QtCore/qabstractitemmodel.sip"
        // The Qt API is broken (and won't be fixed as it would break binary
        // compatibility) regarding the internal id of a model index on different
        // architectures (32 vs 64 bits).  We choose to work around the breakage as it
        // is fairly subtle and continues to catch people out.  Instead of letting Qt
        // convert betweed an integer id and a pointer id (the internal format used by
        // Qt) we let Python do it.
        
        void *ptr;
        
        if (a2)
        {
            // Try and convert it to a Python long and fallback to the object's
            // address if it fails.
            ptr = PyLong_AsVoidPtr(a2);
        
            if (PyErr_Occurred())
            {
                PyErr_Clear();
                ptr = a2;
            }
        }
        else
        {
            ptr = 0;
        }
        
        sipRes = new QModelIndex(sipCpp->sipProtect_createIndex(a0, a1, ptr));
#line 2241 "sipdnssdpart1.cpp"

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_createIndex);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_columnCount(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_columnCount(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const QModelIndex& a0def = QModelIndex();
        const QModelIndex * a0 = &a0def;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B|J9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0))
        {
            int sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::columnCount(*a0) : sipCpp->columnCount(*a0));
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_columnCount);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_rowCount(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_rowCount(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const QModelIndex& a0def = QModelIndex();
        const QModelIndex * a0 = &a0def;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"B|J9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0))
        {
            int sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::rowCount(*a0) : sipCpp->rowCount(*a0));
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_rowCount);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_parent(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_parent(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const QModelIndex * a0;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0))
        {
            QModelIndex *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QModelIndex((sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::parent(*a0) : sipCpp->parent(*a0)));
            Py_END_ALLOW_THREADS

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_parent);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_index(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_index(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        int a1;
        const QModelIndex& a2def = QModelIndex();
        const QModelIndex * a2 = &a2def;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"Bii|J9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0,&a1,sipType_QModelIndex,&a2))
        {
            QModelIndex *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QModelIndex((sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::index(a0,a1,*a2) : sipCpp->index(a0,a1,*a2)));
            Py_END_ALLOW_THREADS

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_index);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_data(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_data(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        const QModelIndex * a0;
        int a1 = Qt::DisplayRole;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BJ9|i",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,sipType_QModelIndex,&a0,&a1))
        {
            QVariant *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QVariant((sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::data(*a0,a1) : sipCpp->data(*a0,a1)));
            Py_END_ALLOW_THREADS

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_data);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_headerData(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_headerData(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        Qt::Orientation a1;
        int a2 = Qt::DisplayRole;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BiE|i",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0,sipType_Qt_Orientation,&a1,&a2))
        {
            QVariant *sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QVariant((sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::headerData(a0,a1,a2) : sipCpp->headerData(a0,a1,a2)));
            Py_END_ALLOW_THREADS

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_headerData);

    return NULL;
}


extern "C" {static PyObject *meth_DNSSD_ServiceModel_hasIndex(PyObject *, PyObject *);}
static PyObject *meth_DNSSD_ServiceModel_hasIndex(PyObject *sipSelf,PyObject *sipArgs)
{
    int sipArgsParsed = 0;
    bool sipSelfWasArg = (!sipSelf || sipIsDerived((sipSimpleWrapper *)sipSelf));

    {
        int a0;
        int a1;
        const QModelIndex * a2;
        DNSSD::ServiceModel *sipCpp;

        if (sipParseArgs(&sipArgsParsed,sipArgs,"BiiJ9",&sipSelf,sipType_DNSSD_ServiceModel,&sipCpp,&a0,&a1,sipType_QModelIndex,&a2))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->DNSSD::ServiceModel::hasIndex(a0,a1,*a2) : sipCpp->hasIndex(a0,a1,*a2));
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipArgsParsed,sipName_ServiceModel,sipName_hasIndex);

    return NULL;
}


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

    if (targetType == sipType_DNSSD_ServiceModel)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_QAbstractItemModel)->ctd_cast((QAbstractItemModel *)(DNSSD::ServiceModel *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


/* Call the instance's destructor. */
extern "C" {static void release_DNSSD_ServiceModel(void *, int);}
static void release_DNSSD_ServiceModel(void *sipCppV,int state)
{
    Py_BEGIN_ALLOW_THREADS

    if (state & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipDNSSD_ServiceModel *>(sipCppV);
    else
        delete reinterpret_cast<DNSSD::ServiceModel *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_DNSSD_ServiceModel(sipSimpleWrapper *);}
static void dealloc_DNSSD_ServiceModel(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerived(sipSelf))
        reinterpret_cast<sipDNSSD_ServiceModel *>(sipSelf->u.cppPtr)->sipPySelf = NULL;

    if (sipIsPyOwned(sipSelf))
    {
        release_DNSSD_ServiceModel(sipSelf->u.cppPtr,sipSelf->flags);
    }
}


extern "C" {static void *init_DNSSD_ServiceModel(sipSimpleWrapper *, PyObject *, PyObject **, int *);}
static void *init_DNSSD_ServiceModel(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject **sipOwner, int *sipArgsParsed)
{
    sipDNSSD_ServiceModel *sipCpp = 0;

    if (!sipCpp)
    {
        DNSSD::ServiceBrowser * a0;
        QObject * a1 = 0;

        if (sipParseArgs(sipArgsParsed,sipArgs,"J8|JH",sipType_DNSSD_ServiceBrowser,&a0,sipType_QObject,&a1,sipOwner))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipDNSSD_ServiceModel(a0,a1);
            Py_END_ALLOW_THREADS
        }
    }

    if (sipCpp)
        sipCpp->sipPySelf = sipSelf;

    return sipCpp;
}


/* Define this type's super-types. */
static sipEncodedClassDef supers_DNSSD_ServiceModel[] = {{9, 0, 1}};


static PyMethodDef methods_DNSSD_ServiceModel[] = {
    {SIP_MLNAME_CAST(sipName_beginInsertColumns), meth_DNSSD_ServiceModel_beginInsertColumns, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_beginInsertRows), meth_DNSSD_ServiceModel_beginInsertRows, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_beginRemoveColumns), meth_DNSSD_ServiceModel_beginRemoveColumns, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_beginRemoveRows), meth_DNSSD_ServiceModel_beginRemoveRows, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_changePersistentIndex), meth_DNSSD_ServiceModel_changePersistentIndex, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_changePersistentIndexList), meth_DNSSD_ServiceModel_changePersistentIndexList, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_childEvent), meth_DNSSD_ServiceModel_childEvent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_columnCount), meth_DNSSD_ServiceModel_columnCount, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_connectNotify), meth_DNSSD_ServiceModel_connectNotify, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_createIndex), meth_DNSSD_ServiceModel_createIndex, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_customEvent), meth_DNSSD_ServiceModel_customEvent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_data), meth_DNSSD_ServiceModel_data, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_decodeData), meth_DNSSD_ServiceModel_decodeData, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_disconnectNotify), meth_DNSSD_ServiceModel_disconnectNotify, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_encodeData), meth_DNSSD_ServiceModel_encodeData, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_endInsertColumns), meth_DNSSD_ServiceModel_endInsertColumns, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_endInsertRows), meth_DNSSD_ServiceModel_endInsertRows, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_endRemoveColumns), meth_DNSSD_ServiceModel_endRemoveColumns, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_endRemoveRows), meth_DNSSD_ServiceModel_endRemoveRows, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_hasIndex), meth_DNSSD_ServiceModel_hasIndex, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_headerData), meth_DNSSD_ServiceModel_headerData, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_index), meth_DNSSD_ServiceModel_index, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_parent), meth_DNSSD_ServiceModel_parent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_persistentIndexList), meth_DNSSD_ServiceModel_persistentIndexList, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_receivers), meth_DNSSD_ServiceModel_receivers, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_reset), meth_DNSSD_ServiceModel_reset, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_rowCount), meth_DNSSD_ServiceModel_rowCount, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_timerEvent), meth_DNSSD_ServiceModel_timerEvent, METH_VARARGS, NULL}
};

static sipEnumMemberDef enummembers_DNSSD_ServiceModel[] = {
    {sipName_Host, DNSSD::ServiceModel::Host, 11},
    {sipName_Port, DNSSD::ServiceModel::Port, 11},
    {sipName_ServiceName, DNSSD::ServiceModel::ServiceName, 11},
    {sipName_ServicePtrRole, DNSSD::ServiceModel::ServicePtrRole, 10},
};


pyqt4ClassTypeDef pyqt4Type_dnssd_DNSSD_ServiceModel = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_DNSSD__ServiceModel,
        {0}
    },
    sipNameNr_ServiceModel,
    -1,
    -1,
    {0, 255, 0},
    supers_DNSSD_ServiceModel,
    0,
    28, methods_DNSSD_ServiceModel,
    4, enummembers_DNSSD_ServiceModel,
    0, 0,
    init_DNSSD_ServiceModel,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_DNSSD_ServiceModel,
    release_DNSSD_ServiceModel,
    cast_DNSSD_ServiceModel,
    0,
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    0,
    0
},
    0,
    &DNSSD::ServiceModel::staticMetaObject,
    0,
    0
};
