summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/animation/backend/additiveclipblend_p.h5
-rw-r--r--src/animation/backend/clipblendnode.cpp11
-rw-r--r--src/animation/backend/clipblendnode_p.h1
-rw-r--r--src/animation/backend/clipblendvalue_p.h5
-rw-r--r--src/animation/backend/lerpclipblend_p.h5
-rw-r--r--tests/auto/animation/additiveclipblend/tst_additiveclipblend.cpp5
-rw-r--r--tests/auto/animation/animationutils/tst_animationutils.cpp5
-rw-r--r--tests/auto/animation/clipblendnode/tst_clipblendnode.cpp5
-rw-r--r--tests/auto/animation/clipblendnodemanager/tst_clipblendnodemanager.cpp5
-rw-r--r--tests/auto/animation/lerpclipblend/tst_lerpclipblend.cpp5
10 files changed, 52 insertions, 0 deletions
diff --git a/src/animation/backend/additiveclipblend_p.h b/src/animation/backend/additiveclipblend_p.h
index 7267283a5..b3fe240ed 100644
--- a/src/animation/backend/additiveclipblend_p.h
+++ b/src/animation/backend/additiveclipblend_p.h
@@ -73,6 +73,11 @@ public:
void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Q_DECL_FINAL;
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
inline QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_OVERRIDE
{
return { m_baseClipId, m_additiveClipId };
diff --git a/src/animation/backend/clipblendnode.cpp b/src/animation/backend/clipblendnode.cpp
index 26b4c75d7..4f236b11c 100644
--- a/src/animation/backend/clipblendnode.cpp
+++ b/src/animation/backend/clipblendnode.cpp
@@ -121,6 +121,17 @@ ClipResults ClipBlendNode::clipResults(Qt3DCore::QNodeId animatorId) const
*/
/*!
+ \fn QVector<Qt3DCore::QNodeId> ClipBlendNode::allDependencyIds() const
+ \internal
+
+ Similar to currentDependencyIds() but returns the ids of all potential
+ dependency nodes, not just those that are dependencies given the current
+ internal state. For example a generalised lerp node would return the ids
+ of all nodes that can participate in the lerp for any value of the blend
+ parameter. Not just those bounding the current blend value.
+*/
+
+/*!
\internal
Fetches the ClipResults from the nodes listed in the dependencyIds
diff --git a/src/animation/backend/clipblendnode_p.h b/src/animation/backend/clipblendnode_p.h
index 89cf09fa0..865536ea0 100644
--- a/src/animation/backend/clipblendnode_p.h
+++ b/src/animation/backend/clipblendnode_p.h
@@ -83,6 +83,7 @@ public:
void setClipResults(Qt3DCore::QNodeId animatorId, const ClipResults &clipResults);
ClipResults clipResults(Qt3DCore::QNodeId animatorId) const;
+ virtual QVector<Qt3DCore::QNodeId> allDependencyIds() const = 0;
virtual QVector<Qt3DCore::QNodeId> currentDependencyIds() const = 0;
virtual double duration() const = 0;
diff --git a/src/animation/backend/clipblendvalue_p.h b/src/animation/backend/clipblendvalue_p.h
index 8c6d85940..6da800f98 100644
--- a/src/animation/backend/clipblendvalue_p.h
+++ b/src/animation/backend/clipblendvalue_p.h
@@ -66,6 +66,11 @@ public:
void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Q_DECL_OVERRIDE;
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
inline QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_OVERRIDE
{
return { m_clipId };
diff --git a/src/animation/backend/lerpclipblend_p.h b/src/animation/backend/lerpclipblend_p.h
index 56a67ca5d..e09987759 100644
--- a/src/animation/backend/lerpclipblend_p.h
+++ b/src/animation/backend/lerpclipblend_p.h
@@ -73,6 +73,11 @@ public:
void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Q_DECL_FINAL;
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
inline QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_OVERRIDE
{
return { m_startClipId, m_endClipId };
diff --git a/tests/auto/animation/additiveclipblend/tst_additiveclipblend.cpp b/tests/auto/animation/additiveclipblend/tst_additiveclipblend.cpp
index b3b9d98da..28ab8917a 100644
--- a/tests/auto/animation/additiveclipblend/tst_additiveclipblend.cpp
+++ b/tests/auto/animation/additiveclipblend/tst_additiveclipblend.cpp
@@ -50,6 +50,11 @@ public:
, m_duration(duration)
{}
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_FINAL
{
return QVector<Qt3DCore::QNodeId>();
diff --git a/tests/auto/animation/animationutils/tst_animationutils.cpp b/tests/auto/animation/animationutils/tst_animationutils.cpp
index 7de3d42be..17815f5db 100644
--- a/tests/auto/animation/animationutils/tst_animationutils.cpp
+++ b/tests/auto/animation/animationutils/tst_animationutils.cpp
@@ -77,6 +77,11 @@ public:
m_value2Id = value2Id;
}
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_FINAL
{
return QVector<Qt3DCore::QNodeId>() << m_value1Id << m_value2Id;
diff --git a/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp b/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp
index c195b760c..b480a5ab8 100644
--- a/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp
+++ b/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp
@@ -54,6 +54,11 @@ public:
, m_clipResults(clipResults)
{}
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_FINAL
{
return QVector<Qt3DCore::QNodeId>();
diff --git a/tests/auto/animation/clipblendnodemanager/tst_clipblendnodemanager.cpp b/tests/auto/animation/clipblendnodemanager/tst_clipblendnodemanager.cpp
index b909bb3ad..7bcef28ae 100644
--- a/tests/auto/animation/clipblendnodemanager/tst_clipblendnodemanager.cpp
+++ b/tests/auto/animation/clipblendnodemanager/tst_clipblendnodemanager.cpp
@@ -49,6 +49,11 @@ public:
deadCount += 1;
}
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_FINAL
{
return QVector<Qt3DCore::QNodeId>();
diff --git a/tests/auto/animation/lerpclipblend/tst_lerpclipblend.cpp b/tests/auto/animation/lerpclipblend/tst_lerpclipblend.cpp
index f2d6263ae..003b1ef53 100644
--- a/tests/auto/animation/lerpclipblend/tst_lerpclipblend.cpp
+++ b/tests/auto/animation/lerpclipblend/tst_lerpclipblend.cpp
@@ -50,6 +50,11 @@ public:
, m_duration(duration)
{}
+ inline QVector<Qt3DCore::QNodeId> allDependencyIds() const Q_DECL_OVERRIDE
+ {
+ return currentDependencyIds();
+ }
+
QVector<Qt3DCore::QNodeId> currentDependencyIds() const Q_DECL_FINAL
{
return QVector<Qt3DCore::QNodeId>();