summaryrefslogtreecommitdiffstats
path: root/src/runtime/Qt3DSComponentManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/Qt3DSComponentManager.h')
-rw-r--r--src/runtime/Qt3DSComponentManager.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/runtime/Qt3DSComponentManager.h b/src/runtime/Qt3DSComponentManager.h
index 6ede073..4f7677f 100644
--- a/src/runtime/Qt3DSComponentManager.h
+++ b/src/runtime/Qt3DSComponentManager.h
@@ -67,6 +67,7 @@ struct SComponentTimePolicyOverride
};
typedef eastl::hash_map<TElement *, SComponentGotoSlideData> TComponentGotoSlideDataMap;
+typedef eastl::hash_map<TElement *, std::pair<TTimeUnit, bool>> TComponentGotoTimeMap;
typedef eastl::hash_map<TElement *, Q3DStudio::INT32> TComponentIntMap;
//==============================================================================
@@ -93,8 +94,9 @@ public: // Slide
void PlaythroughToSlide(TElement *inComponent);
void applyQueuedChanges(TElement *component) override;
void queueChange(TElement *component, TElement *target, const char *attName,
- const char *value) override;
+ const char *value, Q3DStudio::TAttributeHash attrHash) override;
bool hasSlideChangeQueued(TElement *component) override;
+ bool clearSlideChangeQueued(TElement *component) override;
UINT8 GetSlideCount(TElement *inComponent) override;
UINT8 GetCurrentSlide(TElement *inComponent) override;
@@ -116,8 +118,13 @@ public: // Slide
SComponentGotoSlideData GetComponentGotoSlideCommand(TElement *inElement) override;
void ReleaseComponentGotoSlideCommand(TElement *inElement) override;
+ bool HasComponentGotoTimeCommand(TElement *inElement) override;
+ void SetupComponentGotoTimeCommand(TElement *inElement, Q3DStudio::TTimeUnit time, bool relative) override;
+ void ReleaseComponentGotoTimeCommand(TElement *inElement) override;
+ void ClearGotoTimeQueue() override;
+
public: // Time
- void GoToTime(TElement *inComponent, const TTimeUnit inTime) override;
+ void GoToTime(TElement *inComponent, const TTimeUnit inTime, bool relative) override;
void SetPause(TElement *inComponent, const BOOL inPause) override;
void SetTimePolicy(TElement *inComponent, const TTimeUnit inLoopDuration,
const UINT32 inRepetitions, const BOOL inPingPong, const BOOL inPlayThrough) override;
@@ -136,6 +143,8 @@ private:
TComponentGotoSlideDataMap m_ComponentInitialSlideMap;
TComponentGotoSlideDataMap m_ComponentGotoSlideMap;
+ TComponentGotoTimeMap m_ComponentGotoTimeMap;
+
TComponentIntMap m_PlaythroughOverrideMap;
QHash<TElement *, QHash<TElement *, QHash<TAttributeHash, UVariant>>> m_queuedChanges;