// Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only #ifndef QT3DEXTRAS_QABSTRACTSPRITESHEET_P_H #define QT3DEXTRAS_QABSTRACTSPRITESHEET_P_H // // W A R N I N G // ------------- // // This file is not part of the Qt API. It exists for the convenience // of other Qt classes. This header file may change from version to // version without notice, or even be removed. // // We mean it. // #include #include #include QT_BEGIN_NAMESPACE namespace Qt3DRender { class QFilterKey; class QEffect; class QAbstractTexture; class QTechnique; class QParameter; class QShaderProgram; class QRenderPass; } // namespace Qt3DRender namespace Qt3DExtras { class QAbstractSpriteSheet; class QAbstractSpriteSheetPrivate : public Qt3DCore::QNodePrivate { public: QAbstractSpriteSheetPrivate(); virtual void init(); void updateTexture(Qt3DRender::QAbstractTexture *texture); void updateIndex(int newIndex); virtual int maxIndex() const = 0; virtual void updateSizes() = 0; virtual void updateTransform() = 0; Qt3DRender::QAbstractTexture *m_texture; QMatrix3x3 m_textureTransform; QSize m_textureSize; int m_currentIndex; Q_DECLARE_PUBLIC(QAbstractSpriteSheet) }; } // Qt3DExtras QT_END_NAMESPACE #endif // QT3DEXTRAS_QABSTRACTSPRITESHEET_P_H