summaryrefslogtreecommitdiffstats
path: root/src/animation/backend/handler_p.h
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2017-01-29 09:13:56 +0100
committerSean Harmer <sean.harmer@kdab.com>2017-01-29 18:56:11 +0000
commit89766b24b5f071eaf390eadce6ba635d423201e1 (patch)
treeb231e02518c4dce3f4e73eafaa5e4a5a242b3e5d /src/animation/backend/handler_p.h
parentd555d63084ac13866a78772b43b4ac6b6d9bed9b (diff)
Build blend trees and execute them
Also added loops property to the blendedclipanimator as mandated by rebase. Note: only handles LERP with single node for now Change-Id: I91e071467c604279262ec04288bc7f8b2b19f4a1 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/animation/backend/handler_p.h')
-rw-r--r--src/animation/backend/handler_p.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/animation/backend/handler_p.h b/src/animation/backend/handler_p.h
index a2f5daa8f..3abaae215 100644
--- a/src/animation/backend/handler_p.h
+++ b/src/animation/backend/handler_p.h
@@ -50,6 +50,8 @@
#include <QtGlobal>
#include <Qt3DAnimation/private/handle_types_p.h>
+#include <Qt3DAnimation/private/buildblendtreesjob_p.h>
+#include <Qt3DAnimation/private/evaluateblendclipanimatorjob_p.h>
#include <Qt3DCore/qaspectjob.h>
#include <Qt3DCore/qnodeid.h>
#include <QtCore/qscopedpointer.h>
@@ -90,7 +92,8 @@ public:
enum DirtyFlag {
AnimationClipDirty,
ChannelMappingsDirty,
- ClipAnimatorDirty
+ ClipAnimatorDirty,
+ BlendedClipAnimatorDirty
};
qint64 simulationTime() const { return m_simulationTime; }
@@ -100,6 +103,9 @@ public:
void setClipAnimatorRunning(const HClipAnimator &handle, bool running);
QVector<HClipAnimator> runningClipAnimators() const { return m_runningClipAnimators; }
+ void setBlendedClipAnimatorRunning(const HBlendedClipAnimator &handle, bool running);
+ QVector<HBlendedClipAnimator> runningBlenndedClipAnimators() const { return m_runningBlendedClipAnimators; }
+
AnimationClipManager *animationClipManager() const Q_DECL_NOTHROW { return m_animationClipManager.data(); }
ClipAnimatorManager *clipAnimatorManager() const Q_DECL_NOTHROW { return m_clipAnimatorManager.data(); }
BlendedClipAnimatorManager *blendedClipAnimatorManager() const Q_DECL_NOTHROW { return m_blendedClipAnimatorManager.data(); }
@@ -122,12 +128,16 @@ private:
QVector<HAnimationClip> m_dirtyAnimationClips;
QVector<HChannelMapper> m_dirtyChannelMappers;
QVector<HClipAnimator> m_dirtyClipAnimators;
+ QVector<HBlendedClipAnimator> m_dirtyBlendedAnimators;
QVector<HClipAnimator> m_runningClipAnimators;
+ QVector<HBlendedClipAnimator> m_runningBlendedClipAnimators;
QSharedPointer<LoadAnimationClipJob> m_loadAnimationClipJob;
QSharedPointer<FindRunningClipAnimatorsJob> m_findRunningClipAnimatorsJob;
QVector<QSharedPointer<EvaluateClipAnimatorJob>> m_evaluateClipAnimatorJobs;
+ QVector<EvaluateBlendClipAnimatorJobPtr> m_evaluateBlendClipAnimatorJobs;
+ BuildBlendTreesJobPtr m_buildBlendTreesJob;
qint64 m_simulationTime;