/*
 * Module code.
 *
 * Generated by SIP 4.16.4 on Thu Nov 20 23:33:07 2014
 */

#include "sipAPIsolid.h"

#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/dvbinterface.sip"
#include <dvbinterface.h>
#line 12 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"

#line 34 "/usr/share/python-sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 16 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 19 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 58 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/deviceinterface.sip"
#include <deviceinterface.h>
#line 22 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 25 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 355 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 338 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 31 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 274 "/usr/share/python-sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 34 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 33 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 37 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 37 "/usr/share/python-sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 40 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 43 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 120 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 46 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 49 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 52 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 55 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"


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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            Solid::DeviceInterface::Type sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = Solid::DvbInterface::deviceInterfaceType();
            Py_END_ALLOW_THREADS

            return sipConvertFromEnum(sipRes,sipType_Solid_DeviceInterface_Type);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::DvbInterface *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->device());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        const Solid::DvbInterface *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_Solid_DvbInterface, &sipCpp))
        {
            int sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->deviceAdapter();
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::DvbInterface *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_Solid_DvbInterface, &sipCpp))
        {
            Solid::DvbInterface::DeviceType sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->deviceType();
            Py_END_ALLOW_THREADS

            return sipConvertFromEnum(sipRes,sipType_Solid_DvbInterface_DeviceType);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::DvbInterface *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_Solid_DvbInterface, &sipCpp))
        {
            int sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->deviceIndex();
            Py_END_ALLOW_THREADS

            return SIPLong_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    if (targetType == sipType_Solid_DvbInterface)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_Solid_DeviceInterface)->ctd_cast((Solid::DeviceInterface *)(Solid::DvbInterface *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


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

    Py_BEGIN_ALLOW_THREADS

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

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_Solid_DvbInterface(sipSimpleWrapper *);}
static void dealloc_Solid_DvbInterface(sipSimpleWrapper *sipSelf)
{
    if (sipIsPyOwned(sipSelf))
    {
        release_Solid_DvbInterface(sipGetAddress(sipSelf),0);
    }
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_Solid_DvbInterface[] = {{18, 255, 1}};


static PyMethodDef methods_Solid_DvbInterface[] = {
    {SIP_MLNAME_CAST(sipName_device), meth_Solid_DvbInterface_device, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deviceAdapter), meth_Solid_DvbInterface_deviceAdapter, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deviceIndex), meth_Solid_DvbInterface_deviceIndex, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deviceInterfaceType), meth_Solid_DvbInterface_deviceInterfaceType, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_deviceType), meth_Solid_DvbInterface_deviceType, METH_VARARGS, NULL}
};

static sipEnumMemberDef enummembers_Solid_DvbInterface[] = {
    {sipName_DvbAudio, static_cast<int>(Solid::DvbInterface::DvbAudio), 22},
    {sipName_DvbCa, static_cast<int>(Solid::DvbInterface::DvbCa), 22},
    {sipName_DvbDemux, static_cast<int>(Solid::DvbInterface::DvbDemux), 22},
    {sipName_DvbDvr, static_cast<int>(Solid::DvbInterface::DvbDvr), 22},
    {sipName_DvbFrontend, static_cast<int>(Solid::DvbInterface::DvbFrontend), 22},
    {sipName_DvbNet, static_cast<int>(Solid::DvbInterface::DvbNet), 22},
    {sipName_DvbOsd, static_cast<int>(Solid::DvbInterface::DvbOsd), 22},
    {sipName_DvbSec, static_cast<int>(Solid::DvbInterface::DvbSec), 22},
    {sipName_DvbUnknown, static_cast<int>(Solid::DvbInterface::DvbUnknown), 22},
    {sipName_DvbVideo, static_cast<int>(Solid::DvbInterface::DvbVideo), 22},
};


pyqt4ClassTypeDef sipTypeDef_solid_Solid_DvbInterface = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_Solid__DvbInterface,
        {0}
    },
    {
        sipNameNr_DvbInterface,
        {3, 255, 0},
        5, methods_Solid_DvbInterface,
        10, enummembers_Solid_DvbInterface,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_Solid_DvbInterface,
    0,
    0,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_Solid_DvbInterface,
    0,
    0,
    0,
    release_Solid_DvbInterface,
    cast_Solid_DvbInterface,
    0,
    0,
    0,
    0,
    0,
    0
},
    &Solid::DvbInterface::staticMetaObject,
    0,
    0
};

#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/devicenotifier.sip"
#include <devicenotifier.h>
#line 315 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"

#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 319 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 322 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 355 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 325 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 338 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 328 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 34 "/usr/share/python-sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 331 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 274 "/usr/share/python-sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 334 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 33 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 337 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 37 "/usr/share/python-sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 340 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 343 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 120 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 346 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 349 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 352 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 355 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"


class sipSolid_DeviceNotifier : public Solid::DeviceNotifier
{
public:
    sipSolid_DeviceNotifier();
    virtual ~sipSolid_DeviceNotifier();

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

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

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[7];
};

sipSolid_DeviceNotifier::sipSolid_DeviceNotifier(): Solid::DeviceNotifier(), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

const QMetaObject *sipSolid_DeviceNotifier::metaObject() const
{
    return sip_solid_qt_metaobject(sipPySelf,sipType_Solid_DeviceNotifier);
}

int sipSolid_DeviceNotifier::qt_metacall(QMetaObject::Call _c,int _id,void **_a)
{
    _id = Solid::DeviceNotifier::qt_metacall(_c,_id,_a);

    if (_id >= 0)
        _id = sip_solid_qt_metacall(sipPySelf,sipType_Solid_DeviceNotifier,_c,_id,_a);

    return _id;
}

void *sipSolid_DeviceNotifier::qt_metacast(const char *_clname)
{
    return (sip_solid_qt_metacast(sipPySelf, sipType_Solid_DeviceNotifier, _clname)) ? this : Solid::DeviceNotifier::qt_metacast(_clname);
}

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

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

    if (!sipMeth)
    {
        Solid::DeviceNotifier::disconnectNotify(a0);
        return;
    }

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

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

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

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

    if (!sipMeth)
    {
        Solid::DeviceNotifier::connectNotify(a0);
        return;
    }

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

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

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

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

    if (!sipMeth)
    {
        Solid::DeviceNotifier::customEvent(a0);
        return;
    }

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

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

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

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

    if (!sipMeth)
    {
        Solid::DeviceNotifier::childEvent(a0);
        return;
    }

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

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

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

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

    if (!sipMeth)
    {
        Solid::DeviceNotifier::timerEvent(a0);
        return;
    }

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

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

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

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

    if (!sipMeth)
        return Solid::DeviceNotifier::eventFilter(a0,a1);

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

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

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

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

    if (!sipMeth)
        return Solid::DeviceNotifier::event(a0);

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

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


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

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = Solid::DeviceNotifier::instance();
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_Solid_DeviceNotifier,NULL);
        }
    }

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

    return NULL;
}


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

    if (targetType == sipType_Solid_DeviceNotifier)
        return ptr;

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

    return NULL;
}


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

    Py_BEGIN_ALLOW_THREADS

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

    Py_END_ALLOW_THREADS
}


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

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


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

    {
        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, ""))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipSolid_DeviceNotifier();
            Py_END_ALLOW_THREADS

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return NULL;
}


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


static PyMethodDef methods_Solid_DeviceNotifier[] = {
    {SIP_MLNAME_CAST(sipName_instance), meth_Solid_DeviceNotifier_instance, METH_VARARGS, NULL}
};


/* Define this type's signals. */
static const pyqt4QtSignal signals_Solid_DeviceNotifier[] = {
    {"deviceRemoved(QString)", 0, 0, 0},
    {"deviceAdded(QString)", 0, 0, 0},
    {0, 0, 0, 0}
};


pyqt4ClassTypeDef sipTypeDef_solid_Solid_DeviceNotifier = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_Solid__DeviceNotifier,
        {0}
    },
    {
        sipNameNr_DeviceNotifier,
        {3, 255, 0},
        1, methods_Solid_DeviceNotifier,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_Solid_DeviceNotifier,
    0,
    init_type_Solid_DeviceNotifier,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_Solid_DeviceNotifier,
    0,
    0,
    0,
    release_Solid_DeviceNotifier,
    cast_Solid_DeviceNotifier,
    0,
    0,
    0,
    0,
    0,
    0
},
    &Solid::DeviceNotifier::staticMetaObject,
    0,
    signals_Solid_DeviceNotifier,
};

#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/device.sip"
#include <device.h>
#line 707 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"

#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 711 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 714 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 58 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/deviceinterface.sip"
#include <deviceinterface.h>
#line 717 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 33 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 720 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/predicate.sip"
#include <predicate.h>
#line 723 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"


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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            QList<Solid::Device>*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<Solid::Device>(Solid::Device::allDevices());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        Solid::DeviceInterface::Type a0;
        const QString& a1def = QString();
        const QString* a1 = &a1def;
        int a1State = 0;

        if (sipParseArgs(&sipParseErr, sipArgs, "E|J1", sipType_Solid_DeviceInterface_Type, &a0, sipType_QString,&a1, &a1State))
        {
            QList<Solid::Device>*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<Solid::Device>(Solid::Device::listFromType(a0,*a1));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);

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

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

    return NULL;
}


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

    {
        const Solid::Predicate* a0;
        const QString& a1def = QString();
        const QString* a1 = &a1def;
        int a1State = 0;

        if (sipParseArgs(&sipParseErr, sipArgs, "J9|J1", sipType_Solid_Predicate, &a0, sipType_QString,&a1, &a1State))
        {
            QList<Solid::Device>*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<Solid::Device>(Solid::Device::listFromQuery(*a0,*a1));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);

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

    {
        const QString* a0;
        int a0State = 0;
        const QString& a1def = QString();
        const QString* a1 = &a1def;
        int a1State = 0;

        if (sipParseArgs(&sipParseErr, sipArgs, "J1|J1", sipType_QString,&a0, &a0State, sipType_QString,&a1, &a1State))
        {
            QList<Solid::Device>*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QList<Solid::Device>(Solid::Device::listFromQuery(*a0,*a1));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);
            sipReleaseType(const_cast<QString *>(a1),sipType_QString,a1State);

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->isValid();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->udi());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->parentUdi());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_Solid_Device, &sipCpp))
        {
            Solid::Device*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new Solid::Device(sipCpp->parent());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->vendor());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->product());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->icon());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    {
        Solid::DeviceInterface::Type a0;
        const Solid::Device *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BE", &sipSelf, sipType_Solid_Device, &sipCpp, sipType_Solid_DeviceInterface_Type, &a0))
        {
            bool sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->isDeviceInterface(a0);
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    {
        Solid::DeviceInterface::Type a0;
        Solid::Device *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BE", &sipSelf, sipType_Solid_Device, &sipCpp, sipType_Solid_DeviceInterface_Type, &a0))
        {
            Solid::DeviceInterface*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->asDeviceInterface(a0);
            Py_END_ALLOW_THREADS

            return sipConvertFromType(sipRes,sipType_Solid_DeviceInterface,NULL);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

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

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

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

    return NULL;
}


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

    {
        const Solid::Device *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QString(sipCpp->description());
            Py_END_ALLOW_THREADS

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

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

    return NULL;
}


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

    return NULL;
}


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

    delete reinterpret_cast<Solid::Device *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void assign_Solid_Device(void *, SIP_SSIZE_T, const void *);}
static void assign_Solid_Device(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<Solid::Device *>(sipDst)[sipDstIdx] = *reinterpret_cast<const Solid::Device *>(sipSrc);
}


extern "C" {static void *array_Solid_Device(SIP_SSIZE_T);}
static void *array_Solid_Device(SIP_SSIZE_T sipNrElem)
{
    return new Solid::Device[sipNrElem];
}


extern "C" {static void *copy_Solid_Device(const void *, SIP_SSIZE_T);}
static void *copy_Solid_Device(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new Solid::Device(reinterpret_cast<const Solid::Device *>(sipSrc)[sipSrcIdx]);
}


extern "C" {static void dealloc_Solid_Device(sipSimpleWrapper *);}
static void dealloc_Solid_Device(sipSimpleWrapper *sipSelf)
{
    if (sipIsPyOwned(sipSelf))
    {
        release_Solid_Device(sipGetAddress(sipSelf),0);
    }
}


extern "C" {static void *init_type_Solid_Device(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_Solid_Device(sipSimpleWrapper *, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
{
    Solid::Device *sipCpp = 0;

    {
        const QString& a0def = QString();
        const QString* a0 = &a0def;
        int a0State = 0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "|J1", sipType_QString,&a0, &a0State))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new Solid::Device(*a0);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);

            return sipCpp;
        }
    }

    {
        const Solid::Device* a0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "J9", sipType_Solid_Device, &a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new Solid::Device(*a0);
            Py_END_ALLOW_THREADS

            return sipCpp;
        }
    }

    return NULL;
}


static PyMethodDef methods_Solid_Device[] = {
    {SIP_MLNAME_CAST(sipName_allDevices), meth_Solid_Device_allDevices, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_asDeviceInterface), meth_Solid_Device_asDeviceInterface, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_description), meth_Solid_Device_description, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_emblems), meth_Solid_Device_emblems, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_icon), meth_Solid_Device_icon, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isDeviceInterface), meth_Solid_Device_isDeviceInterface, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isValid), meth_Solid_Device_isValid, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_listFromQuery), meth_Solid_Device_listFromQuery, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_listFromType), meth_Solid_Device_listFromType, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_parent), meth_Solid_Device_parent, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_parentUdi), meth_Solid_Device_parentUdi, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_product), meth_Solid_Device_product, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_udi), meth_Solid_Device_udi, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_vendor), meth_Solid_Device_vendor, METH_VARARGS, NULL}
};


pyqt4ClassTypeDef sipTypeDef_solid_Solid_Device = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_CLASS,
        sipNameNr_Solid__Device,
        {0}
    },
    {
        sipNameNr_Device,
        {3, 255, 0},
        14, methods_Solid_Device,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    sipNameNr_PyQt4_QtCore_pyqtWrapperType,
    -1,
    0,
    0,
    init_type_Solid_Device,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_Solid_Device,
    assign_Solid_Device,
    array_Solid_Device,
    copy_Solid_Device,
    release_Solid_Device,
    cast_Solid_Device,
    0,
    0,
    0,
    0,
    0,
    0
},
    0,
    0,
    0
};

#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/camera.sip"
#include <camera.h>
#line 1298 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"

#line 34 "/usr/share/python-sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 1302 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 274 "/usr/share/python-sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 1305 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 1308 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 1311 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 58 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/deviceinterface.sip"
#include <deviceinterface.h>
#line 1314 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 1317 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 355 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 1320 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 338 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 1323 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 33 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 1326 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 37 "/usr/share/python-sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 1329 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 1332 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 120 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 1335 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 1338 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 1341 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 1344 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"


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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            Solid::DeviceInterface::Type sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = Solid::Camera::deviceInterfaceType();
            Py_END_ALLOW_THREADS

            return sipConvertFromEnum(sipRes,sipType_Solid_DeviceInterface_Type);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::Camera *sipCpp;

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

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

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

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

    return NULL;
}


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

    {
        QString a0def = QString();
        QString* a0 = &a0def;
        int a0State = 0;
        const Solid::Camera *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B|J1", &sipSelf, sipType_Solid_Camera, &sipCpp, sipType_QString,&a0, &a0State))
        {
            QStringList*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QStringList(sipCpp->supportedDrivers(*a0));
            Py_END_ALLOW_THREADS
            sipReleaseType(a0,sipType_QString,a0State);

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

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

    return NULL;
}


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

    {
        const QString* a0;
        int a0State = 0;
        const Solid::Camera *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_Solid_Camera, &sipCpp, sipType_QString,&a0, &a0State))
        {
            QVariant*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = new QVariant(sipCpp->driverHandle(*a0));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast<QString *>(a0),sipType_QString,a0State);

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

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

    return NULL;
}


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

    if (targetType == sipType_Solid_Camera)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_Solid_DeviceInterface)->ctd_cast((Solid::DeviceInterface *)(Solid::Camera *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


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

    Py_BEGIN_ALLOW_THREADS

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

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_Solid_Camera(sipSimpleWrapper *);}
static void dealloc_Solid_Camera(sipSimpleWrapper *sipSelf)
{
    if (sipIsPyOwned(sipSelf))
    {
        release_Solid_Camera(sipGetAddress(sipSelf),0);
    }
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_Solid_Camera[] = {{18, 255, 1}};


static PyMethodDef methods_Solid_Camera[] = {
    {SIP_MLNAME_CAST(sipName_deviceInterfaceType), meth_Solid_Camera_deviceInterfaceType, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_driverHandle), meth_Solid_Camera_driverHandle, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_supportedDrivers), meth_Solid_Camera_supportedDrivers, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_supportedProtocols), meth_Solid_Camera_supportedProtocols, METH_VARARGS, NULL}
};


pyqt4ClassTypeDef sipTypeDef_solid_Solid_Camera = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_Solid__Camera,
        {0}
    },
    {
        sipNameNr_Camera,
        {3, 255, 0},
        4, methods_Solid_Camera,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_Solid_Camera,
    0,
    0,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_Solid_Camera,
    0,
    0,
    0,
    release_Solid_Camera,
    cast_Solid_Camera,
    0,
    0,
    0,
    0,
    0,
    0
},
    &Solid::Camera::staticMetaObject,
    0,
    0
};

#line 28 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/button.sip"
#include <button.h>
#line 1570 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"

#line 34 "/usr/share/python-sip/PyQt4/QtCore/qobject.sip"
#include <qobject.h>
#line 1574 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 36 "/usr/share/python-sip/PyQt4/QtCore/qstring.sip"
#include <qstring.h>
#line 1577 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 58 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/src/pykde4-4.14.3/sip/solid/deviceinterface.sip"
#include <deviceinterface.h>
#line 1580 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 1583 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 355 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 1586 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 338 "/usr/share/python-sip/PyQt4/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 1589 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 274 "/usr/share/python-sip/PyQt4/QtCore/qvariant.sip"
#include <qvariant.h>
#line 1592 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 33 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 1595 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 37 "/usr/share/python-sip/PyQt4/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 1598 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 1601 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 120 "/usr/share/python-sip/PyQt4/QtCore/qlist.sip"
#include <qlist.h>
#line 1604 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qthread.sip"
#include <qthread.h>
#line 1607 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 35 "/usr/share/python-sip/PyQt4/QtCore/qregexp.sip"
#include <qregexp.h>
#line 1610 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"
#line 31 "/usr/share/python-sip/PyQt4/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 1613 "/usr/src/ports/python-pykde4/python-pykde4-4.14.3-1.x86_64/build/sip/solid/sipsolidpart5.cpp"


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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            Solid::DeviceInterface::Type sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = Solid::Button::deviceInterfaceType();
            Py_END_ALLOW_THREADS

            return sipConvertFromEnum(sipRes,sipType_Solid_DeviceInterface_Type);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::Button *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_Solid_Button, &sipCpp))
        {
            Solid::Button::ButtonType sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->type();
            Py_END_ALLOW_THREADS

            return sipConvertFromEnum(sipRes,sipType_Solid_Button_ButtonType);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::Button *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->hasState();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    {
        const Solid::Button *sipCpp;

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

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->stateValue();
            Py_END_ALLOW_THREADS

            return PyBool_FromLong(sipRes);
        }
    }

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

    return NULL;
}


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

    if (targetType == sipType_Solid_Button)
        return ptr;

    if ((res = ((const sipClassTypeDef *)sipType_Solid_DeviceInterface)->ctd_cast((Solid::DeviceInterface *)(Solid::Button *)ptr,targetType)) != NULL)
        return res;

    return NULL;
}


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

    Py_BEGIN_ALLOW_THREADS

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

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_Solid_Button(sipSimpleWrapper *);}
static void dealloc_Solid_Button(sipSimpleWrapper *sipSelf)
{
    if (sipIsPyOwned(sipSelf))
    {
        release_Solid_Button(sipGetAddress(sipSelf),0);
    }
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_Solid_Button[] = {{18, 255, 1}};


static PyMethodDef methods_Solid_Button[] = {
    {SIP_MLNAME_CAST(sipName_deviceInterfaceType), meth_Solid_Button_deviceInterfaceType, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_hasState), meth_Solid_Button_hasState, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_stateValue), meth_Solid_Button_stateValue, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_type), meth_Solid_Button_type, METH_VARARGS, NULL}
};

static sipEnumMemberDef enummembers_Solid_Button[] = {
    {sipName_LidButton, static_cast<int>(Solid::Button::LidButton), 15},
    {sipName_PowerButton, static_cast<int>(Solid::Button::PowerButton), 15},
    {sipName_SleepButton, static_cast<int>(Solid::Button::SleepButton), 15},
    {sipName_TabletButton, static_cast<int>(Solid::Button::TabletButton), 15},
    {sipName_UnknownButtonType, static_cast<int>(Solid::Button::UnknownButtonType), 15},
};


/* Define this type's signals. */
static const pyqt4QtSignal signals_Solid_Button[] = {
    {"pressed(Solid::Button::ButtonType,QString)", 0, 0, 0},
    {0, 0, 0, 0}
};


pyqt4ClassTypeDef sipTypeDef_solid_Solid_Button = {
{
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_Solid__Button,
        {0}
    },
    {
        sipNameNr_Button,
        {3, 255, 0},
        4, methods_Solid_Button,
        5, enummembers_Solid_Button,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_Solid_Button,
    0,
    0,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_Solid_Button,
    0,
    0,
    0,
    release_Solid_Button,
    cast_Solid_Button,
    0,
    0,
    0,
    0,
    0,
    0
},
    &Solid::Button::staticMetaObject,
    0,
    signals_Solid_Button,
};
