1// Copyright (C) 2017 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 QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_P_H
5#define QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_P_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 for the convenience
12// of other Qt classes. 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 <Qt3DQuickScene2D/qscene2d.h>
19
20#include <private/qnode_p.h>
21#include <private/scene2dsharedobject_p.h>
22
23QT_BEGIN_NAMESPACE
24
25namespace Qt3DCore {
26class QScene;
27}
28
29namespace Qt3DRender {
30
31namespace Quick {
32
33class QScene2D;
34class Scene2DManager;
35
36class Q_AUTOTEST_EXPORT QScene2DPrivate : public Qt3DCore::QNodePrivate
37{
38public:
39 Q_DECLARE_PUBLIC(QScene2D)
40
41 QScene2DPrivate();
42 ~QScene2DPrivate();
43
44 Scene2DManager *m_renderManager;
45 QMetaObject::Connection m_textureDestroyedConnection;
46 Qt3DRender::QRenderTargetOutput *m_output;
47 QList<Qt3DCore::QEntity *> m_entities;
48};
49
50struct QScene2DData
51{
52 QScene2D::RenderPolicy renderPolicy;
53 Scene2DSharedObjectPtr sharedObject;
54 Qt3DCore::QNodeId output;
55 QList<Qt3DCore::QNodeId> entityIds;
56 bool mouseEnabled;
57};
58
59} // namespace Quick
60} // namespace Qt3DRender
61
62QT_END_NAMESPACE
63
64#endif // QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_P_H
65

source code of qt3d/src/quick3d/quick3dscene2d/items/qscene2d_p.h