/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.7.0
 *
 * Copyright (c) 2022 Riverbank Computing Limited <info@riverbankcomputing.com>
 * 
 * This file is part of PyQt6-WebEngine.
 * 
 * This file may be used under the terms of the GNU General Public License
 * version 3.0 as published by the Free Software Foundation and appearing in
 * the file LICENSE included in the packaging of this file.  Please review the
 * following information to ensure the GNU General Public License version 3.0
 * requirements will be met: http://www.gnu.org/copyleft/gpl.html.
 * 
 * If you do not wish to use this file under the terms of the GPL version 3.0
 * then you may purchase a commercial license.  For more information contact
 * info@riverbankcomputing.com.
 * 
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

#include "sipAPIQtWebEngineCore.h"

#line 47 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/sip/QtWebEngineCore/qwebenginehistory.sip"
#include <qwebenginehistory.h>
#line 29 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"

#line 271 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qhash.sip"
#include <qhash.h>
#line 33 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 30 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 36 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qvariant.sip"
#include <qvariant.h>
#line 39 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qabstractitemmodel.sip"
#include <qabstractitemmodel.h>
#line 42 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 28 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qobject.sip"
#include <qobject.h>
#line 45 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 25 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qflags.sip"
#include <qglobal.h>
#line 48 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 150 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qtextstream.sip"
#include <qtextstream.h>
#line 53 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qmimedata.sip"
#include <qmimedata.h>
#line 56 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 25 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qflags.sip"
#include <qglobal.h>
#line 59 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 105 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qabstractitemmodel.sip"
#include <qabstractitemmodel.h>
#line 62 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 25 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qflags.sip"
#include <qglobal.h>
#line 65 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 28 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 68 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qdatastream.sip"
#include <qdatastream.h>
#line 71 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 28 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 74 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 71 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qabstractitemmodel.sip"
#include <qabstractitemmodel.h>
#line 77 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 789 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 80 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qsize.sip"
#include <qsize.h>
#line 83 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 25 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qflags.sip"
#include <qglobal.h>
#line 86 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qstringlist.sip"
#include <qstringlist.h>
#line 89 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 146 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qmap.sip"
#include <qmap.h>
#line 92 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 151 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 97 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 100 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 103 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 245 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 106 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 232 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 109 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 24 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qstring.sip"
#include <qstring.h>
#line 112 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 28 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 115 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 135 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 118 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qthread.sip"
#include <qthread.h>
#line 121 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qanystringview.sip"
#include <qanystringview.h>
#line 124 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 25 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qflags.sip"
#include <qglobal.h>
#line 127 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qregularexpression.sip"
#include <qregularexpression.h>
#line 130 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"
#line 26 "/usr/lib/python3.10/site-packages/PyQt6/bindings/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 133 "/build/pyqt6-webengine/src/PyQt6_WebEngine-6.4.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineHistoryModel.cpp"


PyDoc_STRVAR(doc_QWebEngineHistoryModel_rowCount, "rowCount(self, parent: QModelIndex = QModelIndex()) -> int");

extern "C" {static PyObject *meth_QWebEngineHistoryModel_rowCount(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QWebEngineHistoryModel_rowCount(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!PyObject_TypeCheck(sipSelf, sipTypeAsPyTypeObject(sipType_QWebEngineHistoryModel)) || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

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

        static const char *sipKwdList[] = {
            sipName_parent,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|J9", &sipSelf, sipType_QWebEngineHistoryModel, &sipCpp, sipType_QModelIndex, &a0))
        {
            int sipRes;

            sipRes = (sipSelfWasArg ? sipCpp-> ::QWebEngineHistoryModel::rowCount(*a0) : sipCpp->rowCount(*a0));

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineHistoryModel, sipName_rowCount, doc_QWebEngineHistoryModel_rowCount);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QWebEngineHistoryModel_data, "data(self, QModelIndex, role: int = Qt.DisplayRole) -> Any");

extern "C" {static PyObject *meth_QWebEngineHistoryModel_data(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QWebEngineHistoryModel_data(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!PyObject_TypeCheck(sipSelf, sipTypeAsPyTypeObject(sipType_QWebEngineHistoryModel)) || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

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

        static const char *sipKwdList[] = {
            SIP_NULLPTR,
            sipName_role,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|i", &sipSelf, sipType_QWebEngineHistoryModel, &sipCpp, sipType_QModelIndex, &a0, &a1))
        {
             ::QVariant*sipRes;

            sipRes = new  ::QVariant((sipSelfWasArg ? sipCpp-> ::QWebEngineHistoryModel::data(*a0,a1) : sipCpp->data(*a0,a1)));

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

    sipNoMethod(sipParseErr, sipName_QWebEngineHistoryModel, sipName_data, doc_QWebEngineHistoryModel_data);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QWebEngineHistoryModel_roleNames, "roleNames(self) -> Dict[int, QByteArray]");

extern "C" {static PyObject *meth_QWebEngineHistoryModel_roleNames(PyObject *, PyObject *);}
static PyObject *meth_QWebEngineHistoryModel_roleNames(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!PyObject_TypeCheck(sipSelf, sipTypeAsPyTypeObject(sipType_QWebEngineHistoryModel)) || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        const  ::QWebEngineHistoryModel *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QWebEngineHistoryModel, &sipCpp))
        {
            QHash<int, ::QByteArray>*sipRes;

            sipRes = new QHash<int, ::QByteArray>((sipSelfWasArg ? sipCpp-> ::QWebEngineHistoryModel::roleNames() : sipCpp->roleNames()));

            return sipConvertFromNewType(sipRes,sipType_QHash_1800_0100QByteArray,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineHistoryModel, sipName_roleNames, doc_QWebEngineHistoryModel_roleNames);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QWebEngineHistoryModel_reset, "reset(self)");

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

    {
         ::QWebEngineHistoryModel *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QWebEngineHistoryModel, &sipCpp))
        {
            sipCpp->reset();

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QWebEngineHistoryModel, sipName_reset, doc_QWebEngineHistoryModel_reset);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_QWebEngineHistoryModel)
        return sipCppV;

    sipCppV = ((const sipClassTypeDef *)sipType_QAbstractListModel)->ctd_cast(static_cast< ::QAbstractListModel *>(sipCpp), targetType);
    if (sipCppV)
        return sipCppV;

    return SIP_NULLPTR;
}


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


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


static PyMethodDef methods_QWebEngineHistoryModel[] = {
    {sipName_data, SIP_MLMETH_CAST(meth_QWebEngineHistoryModel_data), METH_VARARGS|METH_KEYWORDS, doc_QWebEngineHistoryModel_data},
    {sipName_reset, meth_QWebEngineHistoryModel_reset, METH_VARARGS, doc_QWebEngineHistoryModel_reset},
    {sipName_roleNames, meth_QWebEngineHistoryModel_roleNames, METH_VARARGS, doc_QWebEngineHistoryModel_roleNames},
    {sipName_rowCount, SIP_MLMETH_CAST(meth_QWebEngineHistoryModel_rowCount), METH_VARARGS|METH_KEYWORDS, doc_QWebEngineHistoryModel_rowCount}
};


/* Define the enum members and ints to be added to this type. */
static sipIntInstanceDef intInstances_QWebEngineHistoryModel[] = {
    {sipName_UrlRole, static_cast<int>( ::QWebEngineHistoryModel::UrlRole)},
    {sipName_TitleRole, static_cast<int>( ::QWebEngineHistoryModel::TitleRole)},
    {sipName_OffsetRole, static_cast<int>( ::QWebEngineHistoryModel::OffsetRole)},
    {sipName_IconUrlRole, static_cast<int>( ::QWebEngineHistoryModel::IconUrlRole)},
    {0, 0}
};


static pyqt6ClassPluginDef plugin_QWebEngineHistoryModel = {
    & ::QWebEngineHistoryModel::staticMetaObject,
    SIP_NULLPTR,
    SIP_NULLPTR
};


sipClassTypeDef sipTypeDef_QtWebEngineCore_QWebEngineHistoryModel = {
    {
        SIP_NULLPTR,
        SIP_TYPE_SCC|SIP_TYPE_SUPER_INIT|SIP_TYPE_LIMITED_API|SIP_TYPE_CLASS,
        sipNameNr_QWebEngineHistoryModel,
        SIP_NULLPTR,
        &plugin_QWebEngineHistoryModel
    },
    {
        sipNameNr_QWebEngineHistoryModel,
        {0, 0, 1},
        4, methods_QWebEngineHistoryModel,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, intInstances_QWebEngineHistoryModel, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    SIP_NULLPTR,
    -1,
    -1,
    supers_QWebEngineHistoryModel,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_QWebEngineHistoryModel,
    cast_QWebEngineHistoryModel,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    0,
};
