diff options
Diffstat (limited to 'src/datavisualizationqml2/declarativerendernode_p.h')
-rw-r--r-- | src/datavisualizationqml2/declarativerendernode_p.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/datavisualizationqml2/declarativerendernode_p.h b/src/datavisualizationqml2/declarativerendernode_p.h index d284813b..a4fd910c 100644 --- a/src/datavisualizationqml2/declarativerendernode_p.h +++ b/src/datavisualizationqml2/declarativerendernode_p.h @@ -37,16 +37,21 @@ #include <QtQuick/QSGGeometryNode> #include <QtQuick/QSGTextureMaterial> #include <QtQuick/QQuickWindow> +#include <QtCore/QMutex> +#include <QtCore/QSharedPointer> +#include <QtCore/QObject> QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Abstract3DController; class AbstractDeclarative; -class DeclarativeRenderNode : public QSGGeometryNode +class DeclarativeRenderNode : public QObject, public QSGGeometryNode { + Q_OBJECT public: - DeclarativeRenderNode(AbstractDeclarative *declarative); + DeclarativeRenderNode(AbstractDeclarative *declarative, + const QSharedPointer<QMutex> &nodeMutex); ~DeclarativeRenderNode(); void setSize(const QSize &size); @@ -61,6 +66,9 @@ public: void preprocess(); +public Q_SLOTS: + void handleControllerDestroyed(); + private: QSGTextureMaterial m_material; QSGOpaqueTextureMaterial m_materialO; @@ -76,6 +84,9 @@ private: int m_samples; bool m_dirtyFBO; + + QSharedPointer<QMutex> m_nodeMutex; + }; QT_END_NAMESPACE_DATAVISUALIZATION |