// qsgtexture.sip generated by MetaSIP // // This file is part of the QtQuick Python extension module. // // Copyright (c) 2023 Riverbank Computing Limited // // 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. class QSGTexture : QObject { %TypeHeaderCode #include %End public: QSGTexture(); virtual ~QSGTexture(); enum WrapMode { Repeat, ClampToEdge, %If (Qt_5_10_0 -) MirroredRepeat, %End }; enum Filtering { None /PyName=None_/, Nearest, Linear, }; virtual int textureId() const = 0; virtual QSize textureSize() const = 0; virtual bool hasAlphaChannel() const = 0; virtual bool hasMipmaps() const = 0; virtual QRectF normalizedTextureSubRect() const; virtual bool isAtlasTexture() const; virtual QSGTexture *removedFromAtlas() const; virtual void bind() = 0; void updateBindOptions(bool force = false); void setMipmapFiltering(QSGTexture::Filtering filter); QSGTexture::Filtering mipmapFiltering() const; void setFiltering(QSGTexture::Filtering filter); QSGTexture::Filtering filtering() const; void setHorizontalWrapMode(QSGTexture::WrapMode hwrap); QSGTexture::WrapMode horizontalWrapMode() const; void setVerticalWrapMode(QSGTexture::WrapMode vwrap); QSGTexture::WrapMode verticalWrapMode() const; QRectF convertToNormalizedSourceRect(const QRectF &rect) const; %If (Qt_5_9_0 -) enum AnisotropyLevel { AnisotropyNone, Anisotropy2x, Anisotropy4x, Anisotropy8x, Anisotropy16x, }; %End %If (Qt_5_9_0 -) void setAnisotropyLevel(QSGTexture::AnisotropyLevel level); %End %If (Qt_5_9_0 -) QSGTexture::AnisotropyLevel anisotropyLevel() const; %End %If (Qt_5_14_0 -) int comparisonKey() const; %End %If (Qt_5_15_0 -) struct NativeTexture { %TypeHeaderCode #include %End const void *object; int layout; }; %End %If (Qt_5_15_0 -) QSGTexture::NativeTexture nativeTexture() const; %End }; class QSGDynamicTexture : QSGTexture { %TypeHeaderCode #include %End public: %If (Qt_5_14_0 -) QSGDynamicTexture(); %End virtual bool updateTexture() = 0; };