/*
 * Module code.
 *
 * Generated by SIP 4.12.4 on Fri Dec 30 00:41:07 2011
 */

#include "sipAPIphonon.h"

#line 33 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 12 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/effectparameter.sip"
#include <phonon/effectparameter.h>
#line 16 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0100Phonon_EffectParameter(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100Phonon_EffectParameter(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<Phonon::EffectParameter> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<Phonon::EffectParameter> *>(sipSrc);
}


extern "C" {static void *array_QList_0100Phonon_EffectParameter(SIP_SSIZE_T);}
static void *array_QList_0100Phonon_EffectParameter(SIP_SSIZE_T sipNrElem)
{
    return new QList<Phonon::EffectParameter>[sipNrElem];
}


extern "C" {static void *copy_QList_0100Phonon_EffectParameter(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100Phonon_EffectParameter(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<Phonon::EffectParameter>(reinterpret_cast<const QList<Phonon::EffectParameter> *>(sipSrc)[sipSrcIdx]);
}


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



extern "C" {static int convertTo_QList_0100Phonon_EffectParameter(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100Phonon_EffectParameter(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<Phonon::EffectParameter> **sipCppPtr = reinterpret_cast<QList<Phonon::EffectParameter> **>(sipCppPtrV);

#line 64 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *itm = PySequence_ITEM(sipPy, i);
            bool ok = (itm && sipCanConvertToType(itm, sipType_Phonon_EffectParameter, SIP_NOT_NONE));

            Py_XDECREF(itm);

            if (!ok)
                return 0;
        }

        return 1;
    }

    QList<Phonon::EffectParameter> *ql = new QList<Phonon::EffectParameter>;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *itm = PySequence_ITEM(sipPy, i);
        int state;
        Phonon::EffectParameter *t = reinterpret_cast<Phonon::EffectParameter *>(sipConvertToType(itm, sipType_Phonon_EffectParameter, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

        Py_DECREF(itm);
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_Phonon_EffectParameter, state);

            delete ql;
            return 0;
        }

        ql->append(*t);

        sipReleaseType(t, sipType_Phonon_EffectParameter, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 106 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100Phonon_EffectParameter(void *, PyObject *);}
static PyObject *convertFrom_QList_0100Phonon_EffectParameter(void *sipCppV,PyObject *sipTransferObj)
{
   QList<Phonon::EffectParameter> *sipCpp = reinterpret_cast<QList<Phonon::EffectParameter> *>(sipCppV);

#line 37 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        Phonon::EffectParameter *t = new Phonon::EffectParameter(sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t, sipType_Phonon_EffectParameter, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 140 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0100Phonon_EffectParameter = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_699,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100Phonon_EffectParameter,
    array_QList_0100Phonon_EffectParameter,
    copy_QList_0100Phonon_EffectParameter,
    release_QList_0100Phonon_EffectParameter,
    convertTo_QList_0100Phonon_EffectParameter,
    convertFrom_QList_0100Phonon_EffectParameter
};

#line 33 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 171 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 41 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/objectdescription.sip"
#include <phonon/objectdescription.h>
#line 175 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0100Phonon_VideoCaptureDevice(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100Phonon_VideoCaptureDevice(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<Phonon::VideoCaptureDevice> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<Phonon::VideoCaptureDevice> *>(sipSrc);
}


extern "C" {static void *array_QList_0100Phonon_VideoCaptureDevice(SIP_SSIZE_T);}
static void *array_QList_0100Phonon_VideoCaptureDevice(SIP_SSIZE_T sipNrElem)
{
    return new QList<Phonon::VideoCaptureDevice>[sipNrElem];
}


extern "C" {static void *copy_QList_0100Phonon_VideoCaptureDevice(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100Phonon_VideoCaptureDevice(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<Phonon::VideoCaptureDevice>(reinterpret_cast<const QList<Phonon::VideoCaptureDevice> *>(sipSrc)[sipSrcIdx]);
}


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



extern "C" {static int convertTo_QList_0100Phonon_VideoCaptureDevice(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100Phonon_VideoCaptureDevice(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<Phonon::VideoCaptureDevice> **sipCppPtr = reinterpret_cast<QList<Phonon::VideoCaptureDevice> **>(sipCppPtrV);

#line 64 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *itm = PySequence_ITEM(sipPy, i);
            bool ok = (itm && sipCanConvertToType(itm, sipType_Phonon_VideoCaptureDevice, SIP_NOT_NONE));

            Py_XDECREF(itm);

            if (!ok)
                return 0;
        }

        return 1;
    }

    QList<Phonon::VideoCaptureDevice> *ql = new QList<Phonon::VideoCaptureDevice>;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *itm = PySequence_ITEM(sipPy, i);
        int state;
        Phonon::VideoCaptureDevice *t = reinterpret_cast<Phonon::VideoCaptureDevice *>(sipConvertToType(itm, sipType_Phonon_VideoCaptureDevice, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

        Py_DECREF(itm);
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_Phonon_VideoCaptureDevice, state);

            delete ql;
            return 0;
        }

        ql->append(*t);

        sipReleaseType(t, sipType_Phonon_VideoCaptureDevice, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 265 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100Phonon_VideoCaptureDevice(void *, PyObject *);}
static PyObject *convertFrom_QList_0100Phonon_VideoCaptureDevice(void *sipCppV,PyObject *sipTransferObj)
{
   QList<Phonon::VideoCaptureDevice> *sipCpp = reinterpret_cast<QList<Phonon::VideoCaptureDevice> *>(sipCppV);

#line 37 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        Phonon::VideoCaptureDevice *t = new Phonon::VideoCaptureDevice(sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t, sipType_Phonon_VideoCaptureDevice, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 299 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0100Phonon_VideoCaptureDevice = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_366,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100Phonon_VideoCaptureDevice,
    array_QList_0100Phonon_VideoCaptureDevice,
    copy_QList_0100Phonon_VideoCaptureDevice,
    release_QList_0100Phonon_VideoCaptureDevice,
    convertTo_QList_0100Phonon_VideoCaptureDevice,
    convertFrom_QList_0100Phonon_VideoCaptureDevice
};

#line 33 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 330 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 41 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/objectdescription.sip"
#include <phonon/objectdescription.h>
#line 334 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0100Phonon_EffectDescription(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100Phonon_EffectDescription(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<Phonon::EffectDescription> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<Phonon::EffectDescription> *>(sipSrc);
}


extern "C" {static void *array_QList_0100Phonon_EffectDescription(SIP_SSIZE_T);}
static void *array_QList_0100Phonon_EffectDescription(SIP_SSIZE_T sipNrElem)
{
    return new QList<Phonon::EffectDescription>[sipNrElem];
}


extern "C" {static void *copy_QList_0100Phonon_EffectDescription(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100Phonon_EffectDescription(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<Phonon::EffectDescription>(reinterpret_cast<const QList<Phonon::EffectDescription> *>(sipSrc)[sipSrcIdx]);
}


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



extern "C" {static int convertTo_QList_0100Phonon_EffectDescription(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100Phonon_EffectDescription(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<Phonon::EffectDescription> **sipCppPtr = reinterpret_cast<QList<Phonon::EffectDescription> **>(sipCppPtrV);

#line 64 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *itm = PySequence_ITEM(sipPy, i);
            bool ok = (itm && sipCanConvertToType(itm, sipType_Phonon_EffectDescription, SIP_NOT_NONE));

            Py_XDECREF(itm);

            if (!ok)
                return 0;
        }

        return 1;
    }

    QList<Phonon::EffectDescription> *ql = new QList<Phonon::EffectDescription>;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *itm = PySequence_ITEM(sipPy, i);
        int state;
        Phonon::EffectDescription *t = reinterpret_cast<Phonon::EffectDescription *>(sipConvertToType(itm, sipType_Phonon_EffectDescription, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

        Py_DECREF(itm);
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_Phonon_EffectDescription, state);

            delete ql;
            return 0;
        }

        ql->append(*t);

        sipReleaseType(t, sipType_Phonon_EffectDescription, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 424 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100Phonon_EffectDescription(void *, PyObject *);}
static PyObject *convertFrom_QList_0100Phonon_EffectDescription(void *sipCppV,PyObject *sipTransferObj)
{
   QList<Phonon::EffectDescription> *sipCpp = reinterpret_cast<QList<Phonon::EffectDescription> *>(sipCppV);

#line 37 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        Phonon::EffectDescription *t = new Phonon::EffectDescription(sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t, sipType_Phonon_EffectDescription, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 458 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0100Phonon_EffectDescription = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_502,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100Phonon_EffectDescription,
    array_QList_0100Phonon_EffectDescription,
    copy_QList_0100Phonon_EffectDescription,
    release_QList_0100Phonon_EffectDescription,
    convertTo_QList_0100Phonon_EffectDescription,
    convertFrom_QList_0100Phonon_EffectDescription
};

#line 33 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 489 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 41 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/objectdescription.sip"
#include <phonon/objectdescription.h>
#line 493 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0100Phonon_AudioCaptureDevice(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100Phonon_AudioCaptureDevice(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<Phonon::AudioCaptureDevice> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<Phonon::AudioCaptureDevice> *>(sipSrc);
}


extern "C" {static void *array_QList_0100Phonon_AudioCaptureDevice(SIP_SSIZE_T);}
static void *array_QList_0100Phonon_AudioCaptureDevice(SIP_SSIZE_T sipNrElem)
{
    return new QList<Phonon::AudioCaptureDevice>[sipNrElem];
}


extern "C" {static void *copy_QList_0100Phonon_AudioCaptureDevice(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100Phonon_AudioCaptureDevice(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<Phonon::AudioCaptureDevice>(reinterpret_cast<const QList<Phonon::AudioCaptureDevice> *>(sipSrc)[sipSrcIdx]);
}


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



extern "C" {static int convertTo_QList_0100Phonon_AudioCaptureDevice(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100Phonon_AudioCaptureDevice(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<Phonon::AudioCaptureDevice> **sipCppPtr = reinterpret_cast<QList<Phonon::AudioCaptureDevice> **>(sipCppPtrV);

#line 64 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *itm = PySequence_ITEM(sipPy, i);
            bool ok = (itm && sipCanConvertToType(itm, sipType_Phonon_AudioCaptureDevice, SIP_NOT_NONE));

            Py_XDECREF(itm);

            if (!ok)
                return 0;
        }

        return 1;
    }

    QList<Phonon::AudioCaptureDevice> *ql = new QList<Phonon::AudioCaptureDevice>;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *itm = PySequence_ITEM(sipPy, i);
        int state;
        Phonon::AudioCaptureDevice *t = reinterpret_cast<Phonon::AudioCaptureDevice *>(sipConvertToType(itm, sipType_Phonon_AudioCaptureDevice, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

        Py_DECREF(itm);
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_Phonon_AudioCaptureDevice, state);

            delete ql;
            return 0;
        }

        ql->append(*t);

        sipReleaseType(t, sipType_Phonon_AudioCaptureDevice, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 583 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100Phonon_AudioCaptureDevice(void *, PyObject *);}
static PyObject *convertFrom_QList_0100Phonon_AudioCaptureDevice(void *sipCppV,PyObject *sipTransferObj)
{
   QList<Phonon::AudioCaptureDevice> *sipCpp = reinterpret_cast<QList<Phonon::AudioCaptureDevice> *>(sipCppV);

#line 37 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        Phonon::AudioCaptureDevice *t = new Phonon::AudioCaptureDevice(sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t, sipType_Phonon_AudioCaptureDevice, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 617 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0100Phonon_AudioCaptureDevice = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_400,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100Phonon_AudioCaptureDevice,
    array_QList_0100Phonon_AudioCaptureDevice,
    copy_QList_0100Phonon_AudioCaptureDevice,
    release_QList_0100Phonon_AudioCaptureDevice,
    convertTo_QList_0100Phonon_AudioCaptureDevice,
    convertFrom_QList_0100Phonon_AudioCaptureDevice
};

#line 33 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 648 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 41 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/objectdescription.sip"
#include <phonon/objectdescription.h>
#line 652 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0100Phonon_AudioOutputDevice(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100Phonon_AudioOutputDevice(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<Phonon::AudioOutputDevice> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<Phonon::AudioOutputDevice> *>(sipSrc);
}


extern "C" {static void *array_QList_0100Phonon_AudioOutputDevice(SIP_SSIZE_T);}
static void *array_QList_0100Phonon_AudioOutputDevice(SIP_SSIZE_T sipNrElem)
{
    return new QList<Phonon::AudioOutputDevice>[sipNrElem];
}


extern "C" {static void *copy_QList_0100Phonon_AudioOutputDevice(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100Phonon_AudioOutputDevice(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<Phonon::AudioOutputDevice>(reinterpret_cast<const QList<Phonon::AudioOutputDevice> *>(sipSrc)[sipSrcIdx]);
}


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



extern "C" {static int convertTo_QList_0100Phonon_AudioOutputDevice(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100Phonon_AudioOutputDevice(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<Phonon::AudioOutputDevice> **sipCppPtr = reinterpret_cast<QList<Phonon::AudioOutputDevice> **>(sipCppPtrV);

#line 64 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *itm = PySequence_ITEM(sipPy, i);
            bool ok = (itm && sipCanConvertToType(itm, sipType_Phonon_AudioOutputDevice, SIP_NOT_NONE));

            Py_XDECREF(itm);

            if (!ok)
                return 0;
        }

        return 1;
    }

    QList<Phonon::AudioOutputDevice> *ql = new QList<Phonon::AudioOutputDevice>;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *itm = PySequence_ITEM(sipPy, i);
        int state;
        Phonon::AudioOutputDevice *t = reinterpret_cast<Phonon::AudioOutputDevice *>(sipConvertToType(itm, sipType_Phonon_AudioOutputDevice, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

        Py_DECREF(itm);
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_Phonon_AudioOutputDevice, state);

            delete ql;
            return 0;
        }

        ql->append(*t);

        sipReleaseType(t, sipType_Phonon_AudioOutputDevice, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 742 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100Phonon_AudioOutputDevice(void *, PyObject *);}
static PyObject *convertFrom_QList_0100Phonon_AudioOutputDevice(void *sipCppV,PyObject *sipTransferObj)
{
   QList<Phonon::AudioOutputDevice> *sipCpp = reinterpret_cast<QList<Phonon::AudioOutputDevice> *>(sipCppV);

#line 37 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        Phonon::AudioOutputDevice *t = new Phonon::AudioOutputDevice(sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t, sipType_Phonon_AudioOutputDevice, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 776 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0100Phonon_AudioOutputDevice = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_535,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100Phonon_AudioOutputDevice,
    array_QList_0100Phonon_AudioOutputDevice,
    copy_QList_0100Phonon_AudioOutputDevice,
    release_QList_0100Phonon_AudioOutputDevice,
    convertTo_QList_0100Phonon_AudioOutputDevice,
    convertFrom_QList_0100Phonon_AudioOutputDevice
};

#line 33 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#line 807 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 27 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/path.sip"
#include <phonon/path.h>
#line 811 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0100Phonon_Path(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0100Phonon_Path(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<Phonon::Path> *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<Phonon::Path> *>(sipSrc);
}


extern "C" {static void *array_QList_0100Phonon_Path(SIP_SSIZE_T);}
static void *array_QList_0100Phonon_Path(SIP_SSIZE_T sipNrElem)
{
    return new QList<Phonon::Path>[sipNrElem];
}


extern "C" {static void *copy_QList_0100Phonon_Path(const void *, SIP_SSIZE_T);}
static void *copy_QList_0100Phonon_Path(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<Phonon::Path>(reinterpret_cast<const QList<Phonon::Path> *>(sipSrc)[sipSrcIdx]);
}


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



extern "C" {static int convertTo_QList_0100Phonon_Path(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0100Phonon_Path(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<Phonon::Path> **sipCppPtr = reinterpret_cast<QList<Phonon::Path> **>(sipCppPtrV);

#line 64 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *itm = PySequence_ITEM(sipPy, i);
            bool ok = (itm && sipCanConvertToType(itm, sipType_Phonon_Path, SIP_NOT_NONE));

            Py_XDECREF(itm);

            if (!ok)
                return 0;
        }

        return 1;
    }

    QList<Phonon::Path> *ql = new QList<Phonon::Path>;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *itm = PySequence_ITEM(sipPy, i);
        int state;
        Phonon::Path *t = reinterpret_cast<Phonon::Path *>(sipConvertToType(itm, sipType_Phonon_Path, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));

        Py_DECREF(itm);
 
        if (*sipIsErr)
        {
            sipReleaseType(t, sipType_Phonon_Path, state);

            delete ql;
            return 0;
        }

        ql->append(*t);

        sipReleaseType(t, sipType_Phonon_Path, state);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 901 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0100Phonon_Path(void *, PyObject *);}
static PyObject *convertFrom_QList_0100Phonon_Path(void *sipCppV,PyObject *sipTransferObj)
{
   QList<Phonon::Path> *sipCpp = reinterpret_cast<QList<Phonon::Path> *>(sipCppV);

#line 37 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        Phonon::Path *t = new Phonon::Path(sipCpp->at(i));
        PyObject *tobj;

        if ((tobj = sipConvertFromNewType(t, sipType_Phonon_Path, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete t;

            return NULL;
        }

        PyList_SET_ITEM(l, i, tobj);
    }

    return l;
#line 935 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0100Phonon_Path = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_2887,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0100Phonon_Path,
    array_QList_0100Phonon_Path,
    copy_QList_0100Phonon_Path,
    release_QList_0100Phonon_Path,
    convertTo_QList_0100Phonon_Path,
    convertFrom_QList_0100Phonon_Path
};

#line 201 "/usr/local/share/py-sip/QtCore/qlist.sip"
#include <qlist.h>
#include <qpair.h>
#line 967 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"

#line 37 "/usr/local/share/py-sip/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 971 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
#line 77 "/usr/local/share/py-sip/QtCore/qstring.sip"
#include <qstring.h>
#line 974 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"


extern "C" {static void assign_QList_0600QPair_0100QByteArray_0100QString(void *, SIP_SSIZE_T, const void *);}
static void assign_QList_0600QPair_0100QByteArray_0100QString(void *sipDst, SIP_SSIZE_T sipDstIdx, const void *sipSrc)
{
    reinterpret_cast<QList<QPair<QByteArray,QString> > *>(sipDst)[sipDstIdx] = *reinterpret_cast<const QList<QPair<QByteArray,QString> > *>(sipSrc);
}


extern "C" {static void *array_QList_0600QPair_0100QByteArray_0100QString(SIP_SSIZE_T);}
static void *array_QList_0600QPair_0100QByteArray_0100QString(SIP_SSIZE_T sipNrElem)
{
    return new QList<QPair<QByteArray,QString> >[sipNrElem];
}


extern "C" {static void *copy_QList_0600QPair_0100QByteArray_0100QString(const void *, SIP_SSIZE_T);}
static void *copy_QList_0600QPair_0100QByteArray_0100QString(const void *sipSrc, SIP_SSIZE_T sipSrcIdx)
{
    return new QList<QPair<QByteArray,QString> >(reinterpret_cast<const QList<QPair<QByteArray,QString> > *>(sipSrc)[sipSrcIdx]);
}


/* Call the mapped type's destructor. */
extern "C" {static void release_QList_0600QPair_0100QByteArray_0100QString(void *, int);}
static void release_QList_0600QPair_0100QByteArray_0100QString(void *ptr, int)
{
    Py_BEGIN_ALLOW_THREADS
    delete reinterpret_cast<QList<QPair<QByteArray,QString> > *>(ptr);
    Py_END_ALLOW_THREADS
}



extern "C" {static int convertTo_QList_0600QPair_0100QByteArray_0100QString(PyObject *, void **, int *, PyObject *);}
static int convertTo_QList_0600QPair_0100QByteArray_0100QString(PyObject *sipPy,void **sipCppPtrV,int *sipIsErr,PyObject *sipTransferObj)
{
    QList<QPair<QByteArray,QString> > **sipCppPtr = reinterpret_cast<QList<QPair<QByteArray,QString> > **>(sipCppPtrV);

#line 236 "/usr/local/share/py-sip/QtCore/qlist.sip"
    SIP_SSIZE_T len;

    // Check the type if that is all that is required.
    if (sipIsErr == NULL)
    {
        if (!PySequence_Check(sipPy) || (len = PySequence_Size(sipPy)) < 0)
            return 0;

        for (SIP_SSIZE_T i = 0; i < len; ++i)
        {
            PyObject *seq = PySequence_ITEM(sipPy, i);

            if (!seq || !PySequence_Check(seq) || PySequence_Size(seq) != 2)
            {
                Py_XDECREF(seq);
                return 0;
            }

            PyObject *itm0 = PySequence_ITEM(seq, 0);
            PyObject *itm1 = PySequence_ITEM(seq, 1);

            if (!itm0 || !itm1)
            {
                Py_XDECREF(itm0);
                Py_XDECREF(itm1);
                Py_DECREF(seq);
                return 0;
            }

            if (!sipCanConvertToType(itm0, sipType_QByteArray, SIP_NOT_NONE) ||
                !sipCanConvertToType(itm1, sipType_QString, SIP_NOT_NONE))
            {
                Py_DECREF(itm0);
                Py_DECREF(itm1);
                Py_DECREF(seq);
                return 0;
            }
        }

        return 1;
    }

    QList<QPair<QByteArray, QString> > *ql = new QList<QPair<QByteArray, QString> >;
    len = PySequence_Size(sipPy);
 
    for (SIP_SSIZE_T i = 0; i < len; ++i)
    {
        PyObject *seq = PySequence_ITEM(sipPy, i);
        PyObject *itm0 = PySequence_ITEM(seq, 0);
        PyObject *itm1 = PySequence_ITEM(seq, 1);
        int state1, state2;

        QByteArray *s1 = reinterpret_cast<QByteArray *>(sipConvertToType(itm0, sipType_QByteArray, sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr));
        QString *s2 = reinterpret_cast<QString *>(sipConvertToType(itm1, sipType_QString, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
 
        Py_DECREF(itm0);
        Py_DECREF(itm1);
        Py_DECREF(seq);

        if (*sipIsErr)
        {
            sipReleaseType(s1, sipType_QByteArray, state1);
            sipReleaseType(s2, sipType_QString, state2);

            delete ql;
            return 0;
        }

        ql->append(QPair<QByteArray, QString>(*s1, *s2));

        sipReleaseType(s1, sipType_QByteArray, state1);
        sipReleaseType(s2, sipType_QString, state2);
    }
 
    *sipCppPtr = ql;
 
    return sipGetState(sipTransferObj);
#line 1092 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


extern "C" {static PyObject *convertFrom_QList_0600QPair_0100QByteArray_0100QString(void *, PyObject *);}
static PyObject *convertFrom_QList_0600QPair_0100QByteArray_0100QString(void *sipCppV,PyObject *sipTransferObj)
{
   QList<QPair<QByteArray,QString> > *sipCpp = reinterpret_cast<QList<QPair<QByteArray,QString> > *>(sipCppV);

#line 206 "/usr/local/share/py-sip/QtCore/qlist.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)
    {
        const QPair<QByteArray, QString> &p = sipCpp->at(i);
        QByteArray *s1 = new QByteArray(p.first);
        QString *s2 = new QString(p.second);
        PyObject *pobj;

        if ((pobj = sipBuildResult(NULL, "(NN)", s1, sipType_QByteArray, sipTransferObj, s2, sipType_QString, sipTransferObj)) == NULL)
        {
            Py_DECREF(l);
            delete s1;
            delete s2;

            return NULL;
        }

        PyList_SET_ITEM(l, i, pobj);
    }

    return l;
#line 1129 "/work/a/ports/devel/kdebindings4-python-pykde4/work/pykde4-4.7.3/sip/phonon/sipphononpart1.cpp"
}


sipMappedTypeDef sipTypeDef_phonon_QList_0600QPair_0100QByteArray_0100QString = {
    {
        -1,
        0,
        0,
        SIP_TYPE_MAPPED,
        sipNameNr_434,
        {0}
    },
    {
        -1,
        {0, 0, 1},
        0, 0,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    },
    assign_QList_0600QPair_0100QByteArray_0100QString,
    array_QList_0600QPair_0100QByteArray_0100QString,
    copy_QList_0600QPair_0100QByteArray_0100QString,
    release_QList_0600QPair_0100QByteArray_0100QString,
    convertTo_QList_0600QPair_0100QByteArray_0100QString,
    convertFrom_QList_0600QPair_0100QByteArray_0100QString
};
