From 34ad7528652c9016548277331e0e393ab7a782c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antti=20M=C3=A4=C3=A4tt=C3=A4?= Date: Mon, 24 Oct 2016 16:32:34 +0300 Subject: Add QEventForward node manager MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I31cd1463b8c6fead18279754d99e876f6c71bb36 Reviewed-by: Tomi Korpipää Reviewed-by: Sean Harmer --- src/render/backend/managers_p.h | 10 ++++++++++ src/render/backend/nodemanagers.cpp | 8 ++++++++ src/render/backend/nodemanagers_p.h | 10 ++++++++++ 3 files changed, 28 insertions(+) diff --git a/src/render/backend/managers_p.h b/src/render/backend/managers_p.h index ed43fde13..04ac498ff 100644 --- a/src/render/backend/managers_p.h +++ b/src/render/backend/managers_p.h @@ -77,6 +77,7 @@ #include #include #include +#include QT_BEGIN_NAMESPACE @@ -347,6 +348,15 @@ class ObjectPickerManager : public Qt3DCore::QResourceManager< { }; +class EventForwardManager : public Qt3DCore::QResourceManager< + EventForward, + Qt3DCore::QNodeId, + 8, + Qt3DCore::ArrayAllocatingPolicy, + Qt3DCore::NonLockingPolicy> +{ +}; + #if 0 class BoundingVolumeDebugManager : public Qt3DCore::QResourceManager< BoundingVolumeDebug, diff --git a/src/render/backend/nodemanagers.cpp b/src/render/backend/nodemanagers.cpp index 534bb4b9f..898a2b869 100644 --- a/src/render/backend/nodemanagers.cpp +++ b/src/render/backend/nodemanagers.cpp @@ -90,6 +90,7 @@ NodeManagers::NodeManagers() , m_lightManager(new LightManager()) , m_computeJobManager(new ComputeCommandManager()) , m_renderStateManager(new RenderStateManager()) + , m_eventForwardManager(new EventForwardManager()) , m_resourceAccessor(new ResourceAccessor(this)) { } @@ -129,6 +130,7 @@ NodeManagers::~NodeManagers() delete m_computeJobManager; delete m_renderStateManager; delete m_renderNodesManager; + delete m_eventForwardManager; } QSharedPointer NodeManagers::resourceAccessor() @@ -322,6 +324,12 @@ RenderStateManager *NodeManagers::manager() const Q_DECL_NOTHRO return m_renderStateManager; } +template<> +EventForwardManager *NodeManagers::manager() const Q_DECL_NOTHROW +{ + return m_eventForwardManager; +} + } // Render } // Qt3DRender diff --git a/src/render/backend/nodemanagers_p.h b/src/render/backend/nodemanagers_p.h index a57628607..0e27b5d9e 100644 --- a/src/render/backend/nodemanagers_p.h +++ b/src/render/backend/nodemanagers_p.h @@ -98,6 +98,7 @@ class LayerManager; class LightManager; class ComputeCommandManager; class RenderStateManager; +class EventForwardManager; class FrameGraphNode; class Entity; @@ -124,6 +125,7 @@ class Attribute; class Geometry; class GeometryRenderer; class ObjectPicker; +class EventForward; //class BoundingVolumeDebug; class Light; class ComputeCommand; @@ -204,6 +206,7 @@ public: inline LightManager *lightManager() const Q_DECL_NOEXCEPT { return m_lightManager; } inline ComputeCommandManager *computeJobManager() const Q_DECL_NOEXCEPT { return m_computeJobManager; } inline RenderStateManager *renderStateManager() const Q_DECL_NOEXCEPT { return m_renderStateManager; } + inline EventForwardManager *eventForwardManager() const Q_DECL_NOEXCEPT { return m_eventForwardManager; } QSharedPointer resourceAccessor(); @@ -241,6 +244,7 @@ private: LightManager *m_lightManager; ComputeCommandManager *m_computeJobManager; RenderStateManager *m_renderStateManager; + EventForwardManager *m_eventForwardManager; QSharedPointer m_resourceAccessor; }; @@ -328,6 +332,9 @@ QT3DRENDERSHARED_PRIVATE_EXPORT GeometryRendererManager *NodeManagers::manager QT3DRENDERSHARED_PRIVATE_EXPORT ObjectPickerManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT EventForwardManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + //template<> //QT3DRENDERSHARED_PRIVATE_EXPORT BoundingVolumeDebugManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; @@ -340,6 +347,9 @@ QT3DRENDERSHARED_PRIVATE_EXPORT ComputeCommandManager *NodeManagers::manager QT3DRENDERSHARED_PRIVATE_EXPORT RenderStateManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT EventForwardManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + } // Render } // Qt3DRender -- cgit v1.2.3