1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QSGSOFTWARERENDERER_H
5#define QSGSOFTWARERENDERER_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include "qsgabstractsoftwarerenderer_p.h"
19
20QT_BEGIN_NAMESPACE
21
22class QPaintDevice;
23class QBackingStore;
24
25class Q_QUICK_PRIVATE_EXPORT QSGSoftwareRenderer : public QSGAbstractSoftwareRenderer
26{
27public:
28 QSGSoftwareRenderer(QSGRenderContext *context);
29 virtual ~QSGSoftwareRenderer();
30
31 void setCurrentPaintDevice(QPaintDevice *device);
32 QPaintDevice *currentPaintDevice() const;
33 void setBackingStore(QBackingStore *backingStore);
34 QRegion flushRegion() const;
35
36protected:
37 void renderScene() final;
38 void render() final;
39
40private:
41 QPaintDevice* m_paintDevice;
42 QBackingStore* m_backingStore;
43 QRegion m_flushRegion;
44};
45
46QT_END_NAMESPACE
47
48#endif // QSGSOFTWARERENDERER_H
49

source code of qtdeclarative/src/quick/scenegraph/adaptations/software/qsgsoftwarerenderer_p.h