diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2016-07-05 11:38:31 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2016-09-07 12:57:45 +0000 |
commit | f2a06fcd0e1542d2b20e7e3a0fb42d19c7cad66a (patch) | |
tree | a687e75e5b9c01a254a5941a787e67172a47bf98 | |
parent | 432da61aa30455bdf6a369c71a15d8a7de49430c (diff) |
Parameter: store a UniformValue
Should soon allow to get rid of QVariant
Change-Id: I85b37fd013523eecdccb747d2835b5d25145022a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r-- | src/render/materialsystem/parameter.cpp | 7 | ||||
-rw-r--r-- | src/render/materialsystem/parameter_p.h | 3 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/render/materialsystem/parameter.cpp b/src/render/materialsystem/parameter.cpp index b13c0d5ae..22724552b 100644 --- a/src/render/materialsystem/parameter.cpp +++ b/src/render/materialsystem/parameter.cpp @@ -69,6 +69,7 @@ void Parameter::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &ch m_name = data.name; m_nameId = StringToInt::lookupId(m_name); m_value = data.backendValue; + m_uniformValue = UniformValue::fromVariant(data.backendValue); } void Parameter::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) @@ -81,6 +82,7 @@ void Parameter::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) m_nameId = StringToInt::lookupId(m_name); } else if (propertyChange->propertyName() == QByteArrayLiteral("value")) { m_value = propertyChange->value(); + m_uniformValue = UniformValue::fromVariant(propertyChange->value()); } markDirty(AbstractRenderer::AllDirty); } @@ -103,6 +105,11 @@ int Parameter::nameId() const Q_DECL_NOTHROW return m_nameId; } +UniformValue Parameter::uniformValue() const +{ + return m_uniformValue; +} + } // namespace Render } // namespace Qt3DRender diff --git a/src/render/materialsystem/parameter_p.h b/src/render/materialsystem/parameter_p.h index c5c94243d..6e9833e1a 100644 --- a/src/render/materialsystem/parameter_p.h +++ b/src/render/materialsystem/parameter_p.h @@ -52,6 +52,7 @@ // #include <Qt3DRender/private/backendnode_p.h> +#include <Qt3DRender/private/uniform_p.h> #include <QVariant> QT_BEGIN_NAMESPACE @@ -74,12 +75,14 @@ public: QString name() const; QVariant value() const; int nameId() const Q_DECL_NOTHROW; + UniformValue uniformValue() const; private: void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL; QString m_name; QVariant m_value; + UniformValue m_uniformValue; int m_nameId; }; |