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

#include "sipAPIdnssd.h"

#line 27 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/servicebrowser.sip"
#include <dnssd/servicebrowser.h>
#line 12 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"

#line 27 "/usr/share/sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 16 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 340 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/kdecore/typedefs.sip"
#include <ksharedptr.h>
#line 19 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 27 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
#include <dnssd/remoteservice.h>
#line 22 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 26 "/usr/share/sip/PyQt4/QtNetwork/qhostaddress.sip"
#include <qhostaddress.h>
#line 25 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 53 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
#include <qlist.h>
#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 26 "/usr/share/sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 31 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 368 "/usr/share/sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 34 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 351 "/usr/share/sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 37 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 29 "/usr/share/sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 40 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 265 "/usr/share/sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 43 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 28 "/usr/share/sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 46 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 32 "/usr/share/sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 49 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 26 "/usr/share/sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 52 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 115 "/usr/share/sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 55 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 26 "/usr/share/sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 58 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 26 "/usr/share/sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 61 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 26 "/usr/share/sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 64 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"


class sipDNSSD_ServiceBrowser : public  ::DNSSD::ServiceBrowser
{
public:
    sipDNSSD_ServiceBrowser(const  ::QString&,bool,const  ::QString&,const  ::QString&);
    virtual ~sipDNSSD_ServiceBrowser();

    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 virtual_hook(int,void*);
    void startBrowse();
    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_ServiceBrowser(const sipDNSSD_ServiceBrowser &);
    sipDNSSD_ServiceBrowser &operator = (const sipDNSSD_ServiceBrowser &);

    char sipPyMethods[9];
};

sipDNSSD_ServiceBrowser::sipDNSSD_ServiceBrowser(const  ::QString& a0,bool a1,const  ::QString& a2,const  ::QString& a3):  ::DNSSD::ServiceBrowser(a0,a1,a2,a3), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipDNSSD_ServiceBrowser::~sipDNSSD_ServiceBrowser()
{
    sipInstanceDestroyed(sipPySelf);
}

const QMetaObject *sipDNSSD_ServiceBrowser::metaObject() const
{
    return sip_dnssd_qt_metaobject(sipPySelf,sipType_DNSSD_ServiceBrowser);
}

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

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

    return _id;
}

void *sipDNSSD_ServiceBrowser::qt_metacast(const char *_clname)
{
    return (sip_dnssd_qt_metacast(sipPySelf, sipType_DNSSD_ServiceBrowser, _clname)) ? this :  ::DNSSD::ServiceBrowser::qt_metacast(_clname);
}

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

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

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

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

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

void sipDNSSD_ServiceBrowser::startBrowse()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::DNSSD::ServiceBrowser::startBrowse();
        return;
    }

    extern void sipVH_dnssd_6(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    sipVH_dnssd_6(sipGILState, 0, sipPySelf, sipMeth);
}

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

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

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

    extern bool sipVH_dnssd_5(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    return sipVH_dnssd_5(sipGILState, 0, sipPySelf, sipMeth, a0);
}

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

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

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

    extern bool sipVH_dnssd_4(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QObject*, ::QEvent*);

    return sipVH_dnssd_4(sipGILState, 0, sipPySelf, sipMeth, a0, a1);
}

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

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

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

    extern void sipVH_dnssd_3(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QTimerEvent*);

    sipVH_dnssd_3(sipGILState, 0, sipPySelf, sipMeth, a0);
}

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

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

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

    extern void sipVH_dnssd_2(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QChildEvent*);

    sipVH_dnssd_2(sipGILState, 0, sipPySelf, sipMeth, a0);
}

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

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

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

    extern void sipVH_dnssd_1(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    sipVH_dnssd_1(sipGILState, 0, sipPySelf, sipMeth, a0);
}

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

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

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

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

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

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

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

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

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

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


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

    {
        const  ::DNSSD::ServiceBrowser *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_ServiceBrowser, &sipCpp))
        {
             ::QList< ::DNSSD::RemoteService::Ptr>*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new  ::QList< ::DNSSD::RemoteService::Ptr>(sipCpp->services());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
         ::DNSSD::ServiceBrowser *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_DNSSD_ServiceBrowser, &sipCpp))
        {
            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp-> ::DNSSD::ServiceBrowser::startBrowse() : sipCpp->startBrowse());
            Py_END_ALLOW_THREADS

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

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

    return NULL;
}


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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
             ::DNSSD::ServiceBrowser::State sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes =  ::DNSSD::ServiceBrowser::isAvailable();
            Py_END_ALLOW_THREADS

            return sipConvertFromEnum(sipRes,sipType_DNSSD_ServiceBrowser_State);
        }
    }

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

    return NULL;
}


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

    {
        const  ::DNSSD::ServiceBrowser *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->isAutoResolving();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    {
        const  ::QString* a0;
        int a0State = 0;

        if (sipParseArgs(&sipParseErr, sipArgs, "J1", sipType_QString,&a0, &a0State))
        {
             ::QHostAddress*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new  ::QHostAddress( ::DNSSD::ServiceBrowser::resolveHostName(*a0));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::QString *>(a0),sipType_QString,a0State);

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

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

    return NULL;
}


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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
             ::QString*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new  ::QString( ::DNSSD::ServiceBrowser::getLocalHostName());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

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

        if (sipParseArgs(&sipParseErr, sipArgs, "piv", &sipSelf, sipType_DNSSD_ServiceBrowser, &sipCpp, &a0, &a1))
        {
            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp-> ::DNSSD::ServiceBrowser::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_ServiceBrowser, sipName_virtual_hook, NULL);

    return NULL;
}


/* Cast a pointer to a type somewhere in its inheritance hierarchy. */
extern "C" {static void *cast_DNSSD_ServiceBrowser(void *, const sipTypeDef *);}
static void *cast_DNSSD_ServiceBrowser(void *sipCppV, const sipTypeDef *targetType)
{
     ::DNSSD::ServiceBrowser *sipCpp = reinterpret_cast< ::DNSSD::ServiceBrowser *>(sipCppV);

    if (targetType == sipType_QObject)
        return static_cast< ::QObject *>(sipCpp);

    return sipCppV;
}


/* Call the instance's destructor. */
extern "C" {static void release_DNSSD_ServiceBrowser(void *, int);}
static void release_DNSSD_ServiceBrowser(void *sipCppV, int)
{
     ::DNSSD::ServiceBrowser *sipCpp = reinterpret_cast< ::DNSSD::ServiceBrowser *>(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_ServiceBrowser(sipSimpleWrapper *);}
static void dealloc_DNSSD_ServiceBrowser(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerivedClass(sipSelf))
        reinterpret_cast<sipDNSSD_ServiceBrowser *>(sipGetAddress(sipSelf))->sipPySelf = NULL;

    if (sipIsOwnedByPython(sipSelf))
    {
        release_DNSSD_ServiceBrowser(sipGetAddress(sipSelf), sipIsDerivedClass(sipSelf));
    }
}


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

    {
        const  ::QString* a0;
        int a0State = 0;
        bool a1 = 0;
        const  ::QString& a2def = QString();
        const  ::QString* a2 = &a2def;
        int a2State = 0;
        const  ::QString& a3def = QString();
        const  ::QString* a3 = &a3def;
        int a3State = 0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "J1|bJ1J1", sipType_QString,&a0, &a0State, &a1, sipType_QString,&a2, &a2State, sipType_QString,&a3, &a3State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipDNSSD_ServiceBrowser(*a0,a1,*a2,*a3);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::QString *>(a0),sipType_QString,a0State);
            sipReleaseType(const_cast< ::QString *>(a2),sipType_QString,a2State);
            sipReleaseType(const_cast< ::QString *>(a3),sipType_QString,a3State);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return NULL;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_DNSSD_ServiceBrowser[] = {{7, 0, 1}};


static PyMethodDef methods_DNSSD_ServiceBrowser[] = {
    {SIP_MLNAME_CAST(sipName_getLocalHostName), meth_DNSSD_ServiceBrowser_getLocalHostName, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isAutoResolving), meth_DNSSD_ServiceBrowser_isAutoResolving, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isAvailable), meth_DNSSD_ServiceBrowser_isAvailable, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_resolveHostName), meth_DNSSD_ServiceBrowser_resolveHostName, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_services), meth_DNSSD_ServiceBrowser_services, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_startBrowse), meth_DNSSD_ServiceBrowser_startBrowse, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_virtual_hook), meth_DNSSD_ServiceBrowser_virtual_hook, METH_VARARGS, NULL}
};

static sipEnumMemberDef enummembers_DNSSD_ServiceBrowser[] = {
    {sipName_Stopped, static_cast<int>( ::DNSSD::ServiceBrowser::Stopped), 8},
    {sipName_Unsupported, static_cast<int>( ::DNSSD::ServiceBrowser::Unsupported), 8},
    {sipName_Working, static_cast<int>( ::DNSSD::ServiceBrowser::Working), 8},
};


/* Define this type's signals. */
static const pyqt4QtSignal signals_DNSSD_ServiceBrowser[] = {
    {"finished()", 0, 0, 0},
    {"serviceRemoved(DNSSD::RemoteService::Ptr)", 0, 0, 0},
    {"serviceAdded(DNSSD::RemoteService::Ptr)", 0, 0, 0},
    {0, 0, 0, 0}
};


static pyqt4ClassPluginDef plugin_DNSSD_ServiceBrowser = {
    & ::DNSSD::ServiceBrowser::staticMetaObject,
    0,
    signals_DNSSD_ServiceBrowser
};


sipClassTypeDef sipTypeDef_dnssd_DNSSD_ServiceBrowser = {
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_DNSSD__ServiceBrowser,
        {0},
        &plugin_DNSSD_ServiceBrowser
    },
    {
        sipNameNr_ServiceBrowser,
        {0, 255, 0},
        7, methods_DNSSD_ServiceBrowser,
        3, enummembers_DNSSD_ServiceBrowser,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_DNSSD_ServiceBrowser,
    0,
    init_type_DNSSD_ServiceBrowser,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_DNSSD_ServiceBrowser,
    0,
    0,
    0,
    release_DNSSD_ServiceBrowser,
    cast_DNSSD_ServiceBrowser,
    0,
    0,
    0,
    0,
    0,
    0
};

#line 53 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
#include <qlist.h>
#line 644 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"

#line 340 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/kdecore/typedefs.sip"
#include <ksharedptr.h>
#line 648 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
#line 27 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
#include <dnssd/remoteservice.h>
#line 651 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"


extern "C" {static void assign_QList_0100DNSSD_RemoteService_Ptr(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100DNSSD_RemoteService_Ptr(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast< ::QList< ::DNSSD::RemoteService::Ptr> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const  ::QList< ::DNSSD::RemoteService::Ptr> *>(sipSrc);
}


extern "C" {static void *array_QList_0100DNSSD_RemoteService_Ptr(SIP_SSIZE_T);}
static void *array_QList_0100DNSSD_RemoteService_Ptr(SIP_SSIZE_T sipNrElem)
{
    return new  ::QList< ::DNSSD::RemoteService::Ptr>[sipNrElem];
}


extern "C" {static void *copy_QList_0100DNSSD_RemoteService_Ptr(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100DNSSD_RemoteService_Ptr(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new  ::QList< ::DNSSD::RemoteService::Ptr>(reinterpret_cast<const  ::QList< ::DNSSD::RemoteService::Ptr> *>(sipSrc)[sipSrcIdx]);
}


/* Call the mapped type's destructor. */
extern "C" {static void release_QList_0100DNSSD_RemoteService_Ptr(void *, int);}
static void release_QList_0100DNSSD_RemoteService_Ptr(void *ptr, int)
{
    Py_BEGIN_ALLOW_THREADS
    delete reinterpret_cast< ::QList< ::DNSSD::RemoteService::Ptr> *>(ptr);
    Py_END_ALLOW_THREADS
}



extern "C" {static int convertTo_QList_0100DNSSD_RemoteService_Ptr(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100DNSSD_RemoteService_Ptr(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
     ::QList< ::DNSSD::RemoteService::Ptr> **sipCppPtr = reinterpret_cast< ::QList< ::DNSSD::RemoteService::Ptr> **>(sipCppPtrV);

#line 84 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PyList_Check(sipPy))
            return 0;

        for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
            if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, SIP_NOT_NONE))
                return 0;

        return 1;
    }

    QList<DNSSD::RemoteService::Ptr> *ql = new QList<DNSSD::RemoteService::Ptr>;
 
    for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
    {
        int state;
        DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_DNSSD_RemoteService, state);

            delete ql;
            return 0;
        }

        DNSSD::RemoteService::Ptr *tptr = new DNSSD::RemoteService::Ptr (t);

        ql->append(*tptr);

        sipReleaseType(t, sipType_DNSSD_RemoteService, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 730 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100DNSSD_RemoteService_Ptr(void *, PyObject *);}
static PyObject *convertFrom_QList_0100DNSSD_RemoteService_Ptr(void *sipCppV, PyObject *sipTransferObj)
{
    ::QList< ::DNSSD::RemoteService::Ptr> *sipCpp = reinterpret_cast< ::QList< ::DNSSD::RemoteService::Ptr> *>(sipCppV);

#line 57 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/src/pykde4-4.14.3/sip/dnssd/remoteservice.sip"
    // Create the list.
    PyObject *l;

    if ((l = PyList_New(sipCpp->size())) == NULL)
        return NULL;

    // Set the list elements.
    for (int i = 0; i < sipCpp->size(); ++i)
    {
        DNSSD::RemoteService::Ptr *t = new DNSSD::RemoteService::Ptr (sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t->data(), sipType_DNSSD_RemoteService, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 764 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-4.i686/build/py3/sip/dnssd/sipdnssdpart2.cpp"
}


sipMappedTypeDef sipTypeDef_dnssd_QList_0100DNSSD_RemoteService_Ptr = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_104,     /* QList<DNSSD::RemoteService::Ptr> */
        {0},
        0
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100DNSSD_RemoteService_Ptr,
    array_QList_0100DNSSD_RemoteService_Ptr,
    copy_QList_0100DNSSD_RemoteService_Ptr,
    release_QList_0100DNSSD_RemoteService_Ptr,
    convertTo_QList_0100DNSSD_RemoteService_Ptr,
    convertFrom_QList_0100DNSSD_RemoteService_Ptr
};
