/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.15.3
 *
 * Copyright (c) 2024 Riverbank Computing Limited <info@riverbankcomputing.com>
 * 
 * This file is part of PyQt5.
 * 
 * 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 "sipAPIQtQuick.h"

#line 28 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickframebufferobject.sip"
#include <qquickframebufferobject.h>
#line 29 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"

#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitem.sip"
#include <qquickitem.h>
#line 33 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qsgtextureprovider.sip"
#include <qsgtextureprovider.h>
#line 36 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qsgnode.sip"
#include <qsgnode.h>
#line 39 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitem.sip"
#include <qquickitem.h>
#line 185 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitem.sip"
#include <qquickitem.h>
#line 44 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 164 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qrect.sip"
#include <qrect.h>
#line 47 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 28 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickframebufferobject.sip"
#include <qquickframebufferobject.h>
#line 35 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickframebufferobject.sip"
#include <qquickframebufferobject.h>
#line 52 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 28 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qobject.sip"
#include <qobject.h>
#line 55 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 103 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qsize.sip"
#include <qsize.h>
#line 58 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 98 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qpoint.sip"
#include <qpoint.h>
#line 61 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 28 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitemgrabresult.sip"
#include <qquickitemgrabresult.h>
#line 64 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qsize.sip"
#include <qsize.h>
#line 67 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickwindow.sip"
#include <qquickwindow.h>
#line 70 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 73 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 570 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 76 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 619 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 79 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 592 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 82 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 608 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 85 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 238 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 88 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 726 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 91 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 253 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 94 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 205 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 97 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 384 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 100 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 509 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 103 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 363 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 106 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 109 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitem.sip"
#include <qquickitem.h>
#line 65 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitem.sip"
#include <qquickitem.h>
#line 114 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 117 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 120 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 442 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qpycore_qvector.sip"
#include <qvector.h>
#line 123 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtGui/qcursor.sip"
#include <qcursor.h>
#line 126 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 129 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtQuick/qquickitem.sip"
#include <qquickitem.h>
#line 132 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 27 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qstring.sip"
#include <qstring.h>
#line 135 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 149 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 138 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 146 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 143 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 146 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 252 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 149 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 240 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 152 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 38 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 155 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 30 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 158 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 149 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 161 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qthread.sip"
#include <qthread.h>
#line 164 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 167 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qregexp.sip"
#include <qregexp.h>
#line 170 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qregularexpression.sip"
#include <qregularexpression.h>
#line 173 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.11/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 176 "/build/pyqt5/src/PyQt5-5.15.11/build/QtQuick/sipQtQuickQQuickFramebufferObject.cpp"

sipQQuickFramebufferObject::sipQQuickFramebufferObject(::QQuickItem*a0): ::QQuickFramebufferObject(a0), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipQQuickFramebufferObject::~sipQQuickFramebufferObject()
{
    sipInstanceDestroyedEx(&sipPySelf);
}

const QMetaObject *sipQQuickFramebufferObject::metaObject() const
{
    if (sipGetInterpreter())
        return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : sip_QtQuick_qt_metaobject(sipPySelf, sipType_QQuickFramebufferObject);

    return ::QQuickFramebufferObject::metaObject();
}

int sipQQuickFramebufferObject::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = ::QQuickFramebufferObject::qt_metacall(_c, _id, _a);

    if (_id >= 0)
    {
        SIP_BLOCK_THREADS
        _id = sip_QtQuick_qt_metacall(sipPySelf, sipType_QQuickFramebufferObject, _c, _id, _a);
        SIP_UNBLOCK_THREADS
    }

    return _id;
}

void *sipQQuickFramebufferObject::qt_metacast(const char *_clname)
{
    void *sipCpp;

    return (sip_QtQuick_qt_metacast(sipPySelf, sipType_QQuickFramebufferObject, _clname, &sipCpp) ? sipCpp : ::QQuickFramebufferObject::qt_metacast(_clname));
}

::QQuickFramebufferObject::Renderer* sipQQuickFramebufferObject::createRenderer() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, const_cast<char *>(&sipPyMethods[0]), const_cast<sipSimpleWrapper **>(&sipPySelf), sipName_QQuickFramebufferObject, sipName_createRenderer);

    if (!sipMeth)
        return 0;

    extern ::QQuickFramebufferObject::Renderer* sipVH_QtQuick_26(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtQuick_26(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQQuickFramebufferObject::disconnectNotify(const ::QMetaMethod& a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[1], &sipPySelf, SIP_NULLPTR, sipName_disconnectNotify);

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

    extern void sipVH_QtQuick_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::QMetaMethod&);

    sipVH_QtQuick_0(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::connectNotify(const ::QMetaMethod& a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[2], &sipPySelf, SIP_NULLPTR, sipName_connectNotify);

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

    extern void sipVH_QtQuick_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::QMetaMethod&);

    sipVH_QtQuick_0(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[3], &sipPySelf, SIP_NULLPTR, sipName_customEvent);

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

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

    sipVH_QtQuick_1(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[4], &sipPySelf, SIP_NULLPTR, sipName_childEvent);

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

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

    sipVH_QtQuick_2(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[5], &sipPySelf, SIP_NULLPTR, sipName_timerEvent);

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

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

    sipVH_QtQuick_3(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[6], &sipPySelf, SIP_NULLPTR, sipName_eventFilter);

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

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

    return sipVH_QtQuick_4(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

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

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[7], &sipPySelf, SIP_NULLPTR, sipName_event);

    if (!sipMeth)
        return ::QQuickFramebufferObject::event(a0);

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

    return sipVH_QtQuick_5(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::componentComplete()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[8], &sipPySelf, SIP_NULLPTR, sipName_componentComplete);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::componentComplete();
        return;
    }

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

    sipVH_QtQuick_6(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQQuickFramebufferObject::classBegin()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[9], &sipPySelf, SIP_NULLPTR, sipName_classBegin);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::classBegin();
        return;
    }

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

    sipVH_QtQuick_6(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

bool sipQQuickFramebufferObject::contains(const ::QPointF& a0) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, const_cast<char *>(&sipPyMethods[10]), const_cast<sipSimpleWrapper **>(&sipPySelf), SIP_NULLPTR, sipName_contains);

    if (!sipMeth)
        return ::QQuickFramebufferObject::contains(a0);

    extern bool sipVH_QtQuick_7(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::QPointF&);

    return sipVH_QtQuick_7(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

::QVariant sipQQuickFramebufferObject::inputMethodQuery(::Qt::InputMethodQuery a0) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, const_cast<char *>(&sipPyMethods[11]), const_cast<sipSimpleWrapper **>(&sipPySelf), SIP_NULLPTR, sipName_inputMethodQuery);

    if (!sipMeth)
        return ::QQuickFramebufferObject::inputMethodQuery(a0);

    extern ::QVariant sipVH_QtQuick_8(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::Qt::InputMethodQuery);

    return sipVH_QtQuick_8(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

bool sipQQuickFramebufferObject::isTextureProvider() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, const_cast<char *>(&sipPyMethods[12]), const_cast<sipSimpleWrapper **>(&sipPySelf), SIP_NULLPTR, sipName_isTextureProvider);

    if (!sipMeth)
        return ::QQuickFramebufferObject::isTextureProvider();

    extern bool sipVH_QtQuick_9(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtQuick_9(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

::QSGTextureProvider* sipQQuickFramebufferObject::textureProvider() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, const_cast<char *>(&sipPyMethods[13]), const_cast<sipSimpleWrapper **>(&sipPySelf), SIP_NULLPTR, sipName_textureProvider);

    if (!sipMeth)
        return ::QQuickFramebufferObject::textureProvider();

    extern ::QSGTextureProvider* sipVH_QtQuick_10(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtQuick_10(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQQuickFramebufferObject::itemChange(::QQuickItem::ItemChange a0, const ::QQuickItem::ItemChangeData& a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[14], &sipPySelf, SIP_NULLPTR, sipName_itemChange);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::itemChange(a0, a1);
        return;
    }

    extern void sipVH_QtQuick_11(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QQuickItem::ItemChange, const ::QQuickItem::ItemChangeData&);

    sipVH_QtQuick_11(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

void sipQQuickFramebufferObject::keyPressEvent(::QKeyEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[15], &sipPySelf, SIP_NULLPTR, sipName_keyPressEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::keyPressEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_12(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QKeyEvent*);

    sipVH_QtQuick_12(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::keyReleaseEvent(::QKeyEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[16], &sipPySelf, SIP_NULLPTR, sipName_keyReleaseEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::keyReleaseEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_12(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QKeyEvent*);

    sipVH_QtQuick_12(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::inputMethodEvent(::QInputMethodEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[17], &sipPySelf, SIP_NULLPTR, sipName_inputMethodEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::inputMethodEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_13(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QInputMethodEvent*);

    sipVH_QtQuick_13(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::focusInEvent(::QFocusEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[18], &sipPySelf, SIP_NULLPTR, sipName_focusInEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::focusInEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_14(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QFocusEvent*);

    sipVH_QtQuick_14(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::focusOutEvent(::QFocusEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[19], &sipPySelf, SIP_NULLPTR, sipName_focusOutEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::focusOutEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_14(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QFocusEvent*);

    sipVH_QtQuick_14(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::mousePressEvent(::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[20], &sipPySelf, SIP_NULLPTR, sipName_mousePressEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::mousePressEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_15(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QMouseEvent*);

    sipVH_QtQuick_15(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::mouseMoveEvent(::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[21], &sipPySelf, SIP_NULLPTR, sipName_mouseMoveEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::mouseMoveEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_15(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QMouseEvent*);

    sipVH_QtQuick_15(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::mouseReleaseEvent(::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[22], &sipPySelf, SIP_NULLPTR, sipName_mouseReleaseEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::mouseReleaseEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_15(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QMouseEvent*);

    sipVH_QtQuick_15(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::mouseDoubleClickEvent(::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[23], &sipPySelf, SIP_NULLPTR, sipName_mouseDoubleClickEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::mouseDoubleClickEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_15(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QMouseEvent*);

    sipVH_QtQuick_15(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::mouseUngrabEvent()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[24], &sipPySelf, SIP_NULLPTR, sipName_mouseUngrabEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::mouseUngrabEvent();
        return;
    }

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

    sipVH_QtQuick_6(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQQuickFramebufferObject::touchUngrabEvent()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[25], &sipPySelf, SIP_NULLPTR, sipName_touchUngrabEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::touchUngrabEvent();
        return;
    }

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

    sipVH_QtQuick_6(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQQuickFramebufferObject::wheelEvent(::QWheelEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[26], &sipPySelf, SIP_NULLPTR, sipName_wheelEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::wheelEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_16(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QWheelEvent*);

    sipVH_QtQuick_16(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::touchEvent(::QTouchEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[27], &sipPySelf, SIP_NULLPTR, sipName_touchEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::touchEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_17(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QTouchEvent*);

    sipVH_QtQuick_17(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::hoverEnterEvent(::QHoverEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[28], &sipPySelf, SIP_NULLPTR, sipName_hoverEnterEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::hoverEnterEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_18(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QHoverEvent*);

    sipVH_QtQuick_18(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::hoverMoveEvent(::QHoverEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[29], &sipPySelf, SIP_NULLPTR, sipName_hoverMoveEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::hoverMoveEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_18(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QHoverEvent*);

    sipVH_QtQuick_18(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::hoverLeaveEvent(::QHoverEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[30], &sipPySelf, SIP_NULLPTR, sipName_hoverLeaveEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::hoverLeaveEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_18(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QHoverEvent*);

    sipVH_QtQuick_18(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::dragEnterEvent(::QDragEnterEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[31], &sipPySelf, SIP_NULLPTR, sipName_dragEnterEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::dragEnterEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_19(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QDragEnterEvent*);

    sipVH_QtQuick_19(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::dragMoveEvent(::QDragMoveEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[32], &sipPySelf, SIP_NULLPTR, sipName_dragMoveEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::dragMoveEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_20(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QDragMoveEvent*);

    sipVH_QtQuick_20(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::dragLeaveEvent(::QDragLeaveEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[33], &sipPySelf, SIP_NULLPTR, sipName_dragLeaveEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::dragLeaveEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_21(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QDragLeaveEvent*);

    sipVH_QtQuick_21(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQQuickFramebufferObject::dropEvent(::QDropEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[34], &sipPySelf, SIP_NULLPTR, sipName_dropEvent);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::dropEvent(a0);
        return;
    }

    extern void sipVH_QtQuick_22(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QDropEvent*);

    sipVH_QtQuick_22(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

bool sipQQuickFramebufferObject::childMouseEventFilter(::QQuickItem*a0, ::QEvent*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[35], &sipPySelf, SIP_NULLPTR, sipName_childMouseEventFilter);

    if (!sipMeth)
        return ::QQuickFramebufferObject::childMouseEventFilter(a0, a1);

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

    return sipVH_QtQuick_23(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

void sipQQuickFramebufferObject::geometryChanged(const ::QRectF& a0, const ::QRectF& a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[36], &sipPySelf, SIP_NULLPTR, sipName_geometryChanged);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::geometryChanged(a0, a1);
        return;
    }

    extern void sipVH_QtQuick_24(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::QRectF&, const ::QRectF&);

    sipVH_QtQuick_24(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

::QSGNode* sipQQuickFramebufferObject::updatePaintNode(::QSGNode*a0, ::QQuickItem::UpdatePaintNodeData*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[37], &sipPySelf, SIP_NULLPTR, sipName_updatePaintNode);

    if (!sipMeth)
        return ::QQuickFramebufferObject::updatePaintNode(a0, a1);

    extern ::QSGNode* sipVH_QtQuick_25(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::QSGNode*, ::QQuickItem::UpdatePaintNodeData*);

    return sipVH_QtQuick_25(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

void sipQQuickFramebufferObject::releaseResources()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[38], &sipPySelf, SIP_NULLPTR, sipName_releaseResources);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::releaseResources();
        return;
    }

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

    sipVH_QtQuick_6(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQQuickFramebufferObject::updatePolish()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[39], &sipPySelf, SIP_NULLPTR, sipName_updatePolish);

    if (!sipMeth)
    {
        ::QQuickFramebufferObject::updatePolish();
        return;
    }

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

    sipVH_QtQuick_6(sipGILState, sipImportedVirtErrorHandlers_QtQuick_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_textureFollowsItemSize, "textureFollowsItemSize(self) -> bool");

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

    {
        const ::QQuickFramebufferObject *sipCpp;

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

            sipRes = sipCpp->textureFollowsItemSize();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_textureFollowsItemSize, doc_QQuickFramebufferObject_textureFollowsItemSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_setTextureFollowsItemSize, "setTextureFollowsItemSize(self, follows: bool)");

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

    {
        bool a0;
        ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bb", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp, &a0))
        {
            sipCpp->setTextureFollowsItemSize(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_setTextureFollowsItemSize, doc_QQuickFramebufferObject_setTextureFollowsItemSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_createRenderer, "createRenderer(self) -> QQuickFramebufferObject.Renderer|None");

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

    {
        const ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp))
        {
            ::QQuickFramebufferObject::Renderer*sipRes;

            if (!sipOrigSelf)
            {
                sipAbstractMethod(sipName_QQuickFramebufferObject, sipName_createRenderer);
                return SIP_NULLPTR;
            }

            sipRes = sipCpp->createRenderer();

            return sipConvertFromType(sipRes, sipType_QQuickFramebufferObject_Renderer, Py_None);
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_createRenderer, doc_QQuickFramebufferObject_createRenderer);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_geometryChanged, "geometryChanged(self, newGeometry: QRectF, oldGeometry: QRectF)");

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

    {
        const ::QRectF* a0;
        const ::QRectF* a1;
        ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ9J9", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp, sipType_QRectF, &a0, sipType_QRectF, &a1))
        {
            (sipSelfWasArg ? sipCpp->::QQuickFramebufferObject::geometryChanged(*a0, *a1) : sipCpp->geometryChanged(*a0, *a1));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_geometryChanged, doc_QQuickFramebufferObject_geometryChanged);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_updatePaintNode, "updatePaintNode(self, a0: QSGNode|None, a1: QQuickItem.UpdatePaintNodeData|None) -> QSGNode|None");

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

    {
        ::QSGNode* a0;
        ::QQuickItem::UpdatePaintNodeData* a1;
        ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8J8", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp, sipType_QSGNode, &a0, sipType_QQuickItem_UpdatePaintNodeData, &a1))
        {
            ::QSGNode*sipRes;

            sipRes = (sipSelfWasArg ? sipCpp->::QQuickFramebufferObject::updatePaintNode(a0, a1) : sipCpp->updatePaintNode(a0, a1));

            return sipConvertFromType(sipRes, sipType_QSGNode, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_updatePaintNode, doc_QQuickFramebufferObject_updatePaintNode);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_isTextureProvider, "isTextureProvider(self) -> bool");

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

    {
        const ::QQuickFramebufferObject *sipCpp;

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

            sipRes = (sipSelfWasArg ? sipCpp->::QQuickFramebufferObject::isTextureProvider() : sipCpp->isTextureProvider());

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_isTextureProvider, doc_QQuickFramebufferObject_isTextureProvider);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_textureProvider, "textureProvider(self) -> QSGTextureProvider|None");

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

    {
        const ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp))
        {
            ::QSGTextureProvider*sipRes;

            sipRes = (sipSelfWasArg ? sipCpp->::QQuickFramebufferObject::textureProvider() : sipCpp->textureProvider());

            return sipConvertFromType(sipRes, sipType_QSGTextureProvider, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_textureProvider, doc_QQuickFramebufferObject_textureProvider);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_releaseResources, "releaseResources(self)");

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

    {
        ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp))
        {
            (sipSelfWasArg ? sipCpp->::QQuickFramebufferObject::releaseResources() : sipCpp->releaseResources());

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_releaseResources, doc_QQuickFramebufferObject_releaseResources);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_mirrorVertically, "mirrorVertically(self) -> bool");

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

    {
        const ::QQuickFramebufferObject *sipCpp;

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

            sipRes = sipCpp->mirrorVertically();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_mirrorVertically, doc_QQuickFramebufferObject_mirrorVertically);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QQuickFramebufferObject_setMirrorVertically, "setMirrorVertically(self, enable: bool)");

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

    {
        bool a0;
        ::QQuickFramebufferObject *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bb", &sipSelf, sipType_QQuickFramebufferObject, &sipCpp, &a0))
        {
            sipCpp->setMirrorVertically(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QQuickFramebufferObject, sipName_setMirrorVertically, doc_QQuickFramebufferObject_setMirrorVertically);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_QQuickFramebufferObject)
        return sipCppV;

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

    return SIP_NULLPTR;
}


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

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


extern "C" {static void dealloc_QQuickFramebufferObject(sipSimpleWrapper *);}
static void dealloc_QQuickFramebufferObject(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerivedClass(sipSelf))
        reinterpret_cast<sipQQuickFramebufferObject *>(sipGetAddress(sipSelf))->sipPySelf = SIP_NULLPTR;

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


extern "C" {static void *init_type_QQuickFramebufferObject(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_QQuickFramebufferObject(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **sipOwner, PyObject **sipParseErr)
{
    sipQQuickFramebufferObject *sipCpp = SIP_NULLPTR;

    {
        ::QQuickItem* a0 = 0;

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

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "|JH", sipType_QQuickItem, &a0, sipOwner))
        {
            sipCpp = new sipQQuickFramebufferObject(a0);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


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


static PyMethodDef methods_QQuickFramebufferObject[] = {
    {sipName_createRenderer, meth_QQuickFramebufferObject_createRenderer, METH_VARARGS, doc_QQuickFramebufferObject_createRenderer},
    {sipName_geometryChanged, meth_QQuickFramebufferObject_geometryChanged, METH_VARARGS, doc_QQuickFramebufferObject_geometryChanged},
    {sipName_isTextureProvider, meth_QQuickFramebufferObject_isTextureProvider, METH_VARARGS, doc_QQuickFramebufferObject_isTextureProvider},
    {sipName_mirrorVertically, meth_QQuickFramebufferObject_mirrorVertically, METH_VARARGS, doc_QQuickFramebufferObject_mirrorVertically},
    {sipName_releaseResources, meth_QQuickFramebufferObject_releaseResources, METH_VARARGS, doc_QQuickFramebufferObject_releaseResources},
    {sipName_setMirrorVertically, meth_QQuickFramebufferObject_setMirrorVertically, METH_VARARGS, doc_QQuickFramebufferObject_setMirrorVertically},
    {sipName_setTextureFollowsItemSize, meth_QQuickFramebufferObject_setTextureFollowsItemSize, METH_VARARGS, doc_QQuickFramebufferObject_setTextureFollowsItemSize},
    {sipName_textureFollowsItemSize, meth_QQuickFramebufferObject_textureFollowsItemSize, METH_VARARGS, doc_QQuickFramebufferObject_textureFollowsItemSize},
    {sipName_textureProvider, meth_QQuickFramebufferObject_textureProvider, METH_VARARGS, doc_QQuickFramebufferObject_textureProvider},
    {sipName_updatePaintNode, meth_QQuickFramebufferObject_updatePaintNode, METH_VARARGS, doc_QQuickFramebufferObject_updatePaintNode}
};

PyDoc_STRVAR(doc_QQuickFramebufferObject, "\1QQuickFramebufferObject(parent: QQuickItem|None = None)");


/* Define this type's signals. */
static const pyqt5QtSignal signals_QQuickFramebufferObject[] = {
    {"mirrorVerticallyChanged(bool)", "\1mirrorVerticallyChanged(self, a0: bool)", SIP_NULLPTR, SIP_NULLPTR},
    {"textureFollowsItemSizeChanged(bool)", "\1textureFollowsItemSizeChanged(self, a0: bool)", SIP_NULLPTR, SIP_NULLPTR},
    {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR}
};


static pyqt5ClassPluginDef plugin_QQuickFramebufferObject = {
    &::QQuickFramebufferObject::staticMetaObject,
    0,
    signals_QQuickFramebufferObject,
    SIP_NULLPTR
};


sipClassTypeDef sipTypeDef_QtQuick_QQuickFramebufferObject = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_ABSTRACT|SIP_TYPE_SCC|SIP_TYPE_SUPER_INIT|SIP_TYPE_LIMITED_API|SIP_TYPE_CLASS,
        sipNameNr_QQuickFramebufferObject,
        SIP_NULLPTR,
        &plugin_QQuickFramebufferObject,
    },
    {
        sipNameNr_QQuickFramebufferObject,
        {0, 0, 1},
        10, methods_QQuickFramebufferObject,
        0, SIP_NULLPTR,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_QQuickFramebufferObject,
    -1,
    -1,
    supers_QQuickFramebufferObject,
    SIP_NULLPTR,
    init_type_QQuickFramebufferObject,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_QQuickFramebufferObject,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_QQuickFramebufferObject,
    cast_QQuickFramebufferObject,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    sizeof (::QQuickFramebufferObject),
};
