summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2016-04-13 08:32:51 +0200
committerSean Harmer <sean.harmer@kdab.com>2016-04-15 18:51:45 +0000
commitddf85425dbb7292d4cf3a269db0a87e00b47572a (patch)
treef766cd32eccab186cc6d1d347871e6ec7b8f6af8
parent3106671ad0342fdd5333dfb1b4299772772dd317 (diff)
ComputeCommand: use m_enabled member from QBackendNode
sceneChangeEvent calls BackendNode::sceneChangeEvent to handle updates on the enabled property plus some special markDirty handling that might come in later. Change-Id: I03631cbfe554a2c8790f6706b403b5bfa6f8262c Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r--src/render/backend/computecommand.cpp9
-rw-r--r--src/render/backend/computecommand_p.h2
2 files changed, 3 insertions, 8 deletions
diff --git a/src/render/backend/computecommand.cpp b/src/render/backend/computecommand.cpp
index ed3a7fea1..fc73c4530 100644
--- a/src/render/backend/computecommand.cpp
+++ b/src/render/backend/computecommand.cpp
@@ -51,7 +51,6 @@ namespace Render {
ComputeCommand::ComputeCommand()
: BackendNode(ReadOnly)
- , m_enabled(false)
{
m_workGroups[0] = 1;
m_workGroups[1] = 1;
@@ -64,7 +63,7 @@ ComputeCommand::~ComputeCommand()
void ComputeCommand::cleanup()
{
- m_enabled = false;
+ QBackendNode::setEnabled(false);
m_workGroups[0] = 1;
m_workGroups[1] = 1;
m_workGroups[2] = 1;
@@ -72,7 +71,6 @@ void ComputeCommand::cleanup()
void ComputeCommand::updateFromPeer(Qt3DCore::QNode *peer)
{
- m_enabled = peer->isEnabled();
QComputeCommand *computeCommand = static_cast<QComputeCommand *>(peer);
m_workGroups[0] = computeCommand->workGroupX();
m_workGroups[1] = computeCommand->workGroupY();
@@ -85,9 +83,7 @@ void ComputeCommand::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
{
Qt3DCore::QScenePropertyChangePtr propertyChange = qSharedPointerCast<Qt3DCore::QScenePropertyChange>(e);
if (e->type() == Qt3DCore::NodeUpdated) {
- if (propertyChange->propertyName() == QByteArrayLiteral("enabled"))
- m_enabled = propertyChange->value().toBool();
- else if (propertyChange->propertyName() == QByteArrayLiteral("workGroupX"))
+ if (propertyChange->propertyName() == QByteArrayLiteral("workGroupX"))
m_workGroups[0] = propertyChange->value().toInt();
else if (propertyChange->propertyName() == QByteArrayLiteral("workGroupY"))
m_workGroups[1] = propertyChange->value().toInt();
@@ -95,6 +91,7 @@ void ComputeCommand::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
m_workGroups[2] = propertyChange->value().toInt();
markDirty(AbstractRenderer::AllDirty);
}
+ BackendNode::sceneChangeEvent(e);
}
} // Render
diff --git a/src/render/backend/computecommand_p.h b/src/render/backend/computecommand_p.h
index c005c2bce..e407da0ae 100644
--- a/src/render/backend/computecommand_p.h
+++ b/src/render/backend/computecommand_p.h
@@ -72,13 +72,11 @@ public:
void updateFromPeer(Qt3DCore::QNode *peer) Q_DECL_OVERRIDE;
void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Q_DECL_OVERRIDE;
- inline bool isEnabled() const { return m_enabled; }
inline int x() const Q_DECL_NOEXCEPT { return m_workGroups[0]; }
inline int y() const Q_DECL_NOEXCEPT { return m_workGroups[1]; }
inline int z() const Q_DECL_NOEXCEPT { return m_workGroups[2]; }
private:
- bool m_enabled;
int m_workGroups[3];
};