Open 3D Engine LyShine Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
TUiAnimSplineTrack< ValueType > Class Template Reference

#include <AnimSplineTrack.h>

Inherits IUiAnimTrack.

Public Member Functions

 AZ_RTTI ((TUiAnimSplineTrack, "{A78AAC62-84D0-4E2E-958E-564F51A140D2}", ValueType), IUiAnimTrack)
 
void add_ref () override
 
void release () override
 
int GetSubTrackCount () const override
 
IUiAnimTrackGetSubTrack (int nIndex) const override
 
AZStd::string GetSubTrackName (int nIndex) const override
 
void SetSubTrackName (int nIndex, const char *name) override
 
const CUiAnimParamTypeGetParameterType () const override
 
void SetParameterType (CUiAnimParamType type) override
 
const UiAnimParamDataGetParamData () const override
 
void SetParamData (const UiAnimParamData &param) override
 
void GetKeyValueRange (float &fMin, float &fMax) const override
 
void SetKeyValueRange (float fMin, float fMax) override
 
ISplineInterpolator * GetSpline () const override
 
bool IsKeySelected (int key) const override
 
void SelectKey (int key, bool select) override
 
int GetNumKeys () const override
 Return number of keys in track.
 
void SetNumKeys (int numKeys) override
 
bool HasKeys () const override
 Return true if keys exists in this track.
 
void RemoveKey (int num) override
 Remove specified key.
 
void GetKey (int index, IKey *key) const override
 
void SetKey (int index, IKey *key) override
 
float GetKeyTime (int index) const override
 
void SetKeyTime (int index, float time) override
 Set time of specified key.
 
int GetKeyFlags (int index) override
 
void SetKeyFlags (int index, int flags) override
 Set flags of specified key.
 
EUiAnimCurveType GetCurveType () override
 
EUiAnimValue GetValueType () override
 
void GetValue (float time, float &value) override
 
void GetValue (float time, Vec3 &value) override
 
void GetValue (float time, Vec4 &value) override
 
void GetValue (float time, Quat &value) override
 
void GetValue (float time, bool &value) override
 
void GetValue (float time, AZ::Vector2 &value) override
 
void GetValue (float time, AZ::Vector3 &value) override
 
void GetValue (float time, AZ::Vector4 &value) override
 
void GetValue (float time, AZ::Color &value) override
 
void SetValue (float time, const float &value, bool bDefault=false) override
 
void SetValue (float time, const Vec3 &value, bool bDefault=false) override
 
void SetValue (float time, const Vec4 &value, bool bDefault=false) override
 
void SetValue (float time, const Quat &value, bool bDefault=false) override
 
void SetValue (float time, const bool &value, bool bDefault=false) override
 
void SetValue (float time, const AZ::Vector2 &value, bool bDefault=false) override
 
void SetValue (float time, const AZ::Vector3 &value, bool bDefault=false) override
 
void SetValue (float time, const AZ::Vector4 &value, bool bDefault=false) override
 
void SetValue (float time, const AZ::Color &value, bool bDefault=false) override
 
void OffsetKeyPosition (const Vec3 &value) override
 
bool Serialize (IUiAnimationSystem *uiAnimationSystem, XmlNodeRef &xmlNode, bool bLoading, bool bLoadEmptyTracks) override
 
bool SerializeSelection (XmlNodeRef &xmlNode, bool bLoading, bool bCopySelected, float fTimeOffset) override
 
void GetKeyInfo (int key, const char *&description, float &duration) override
 
void SortKeys () override
 Sort keys in track (after time of keys was modified).
 
int GetFlags () override
 Get track flags.
 
bool IsMasked (const uint32 mask) const override
 Check if track is masked by mask.
 
void SetFlags (int flags) override
 Set track flags.
 
void Invalidate ()
 
void SetTimeRange (const Range &timeRange) override
 
int FindKey (float time) override
 
int CreateKey (float time) override
 Create key at given time, and return its index.
 
int CloneKey (int srcKey) override
 
int CopyKey (IUiAnimTrack *pFromTrack, int nFromKey) override
 
void SetKeyAtTime (float time, IKey *key)
 
virtual void SetDefaultValue (const ValueType &value)
 
ColorB GetCustomColor () const
 
void SetCustomColor (ColorB color)
 
bool HasCustomColor () const
 
void ClearCustomColor ()
 
- Public Member Functions inherited from IUiAnimTrack
virtual void add_ref ()=0
 
virtual void release ()=0
 
virtual EUiAnimCurveType GetCurveType ()=0
 
virtual EUiAnimValue GetValueType ()=0
 
virtual ColorB GetCustomColor () const =0
 
virtual void SetCustomColor (ColorB color)=0
 
virtual bool HasCustomColor () const =0
 
virtual void ClearCustomColor ()=0
 
virtual const CUiAnimParamTypeGetParameterType () const =0
 
virtual void SetParameterType (CUiAnimParamType type)=0
 
virtual const UiAnimParamDataGetParamData () const =0
 
virtual void SetParamData (const UiAnimParamData &param)=0
 
virtual int GetSubTrackCount () const =0
 
virtual IUiAnimTrackGetSubTrack (int nIndex) const =0
 
virtual AZStd::string GetSubTrackName (int nIndex) const =0
 
virtual void SetSubTrackName (int nIndex, const char *name)=0
 
virtual void GetKeyValueRange (float &fMin, float &fMax) const =0
 
virtual void SetKeyValueRange (float fMin, float fMax)=0
 
virtual int GetNumKeys () const =0
 Return number of keys in track.
 
virtual bool HasKeys () const =0
 Return true if keys exists in this track.
 
virtual void SetNumKeys (int numKeys)=0
 
virtual void RemoveKey (int num)=0
 Remove specified key.
 
virtual void GetKey (int index, IKey *key) const =0
 
virtual float GetKeyTime (int index) const =0
 
virtual int FindKey (float time)=0
 
virtual int GetKeyFlags (int index)=0
 
virtual void SetKey (int index, IKey *key)=0
 
virtual void SetKeyTime (int index, float time)=0
 Set time of specified key.
 
virtual void SetKeyFlags (int index, int flags)=0
 Set flags of specified key.
 
virtual void SortKeys ()=0
 Sort keys in track (after time of keys was modified).
 
virtual int GetFlags ()=0
 Get track flags.
 
virtual bool IsMasked (const uint32 mask) const =0
 Check if track is masked by mask.
 
virtual void SetFlags (int flags)=0
 Set track flags.
 
virtual int CreateKey (float time)=0
 
virtual int CloneKey (int key)=0
 
virtual int CopyKey (IUiAnimTrack *pFromTrack, int nFromKey)=0
 
virtual void GetKeyInfo (int key, const char *&description, float &duration)=0
 
virtual void GetValue (float time, float &value)=0
 
virtual void GetValue (float time, Vec3 &value)=0
 
virtual void GetValue (float time, Vec4 &value)=0
 
virtual void GetValue (float time, Quat &value)=0
 
virtual void GetValue (float time, bool &value)=0
 
virtual void GetValue (float time, AZ::Vector2 &value)=0
 
virtual void GetValue (float time, AZ::Vector3 &value)=0
 
virtual void GetValue (float time, AZ::Vector4 &value)=0
 
virtual void GetValue (float time, AZ::Color &value)=0
 
virtual void SetValue (float time, const float &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const Vec3 &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const Vec4 &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const Quat &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const bool &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const AZ::Vector2 &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const AZ::Vector3 &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const AZ::Vector4 &value, bool bDefault=false)=0
 
virtual void SetValue (float time, const AZ::Color &value, bool bDefault=false)=0
 
virtual void OffsetKeyPosition (const Vec3 &value)=0
 
virtual void SetTimeRange (const Range &timeRange)=0
 
virtual bool Serialize (IUiAnimationSystem *uiAnimationSystem, XmlNodeRef &xmlNode, bool bLoading, bool bLoadEmptyTracks=true)=0
 
virtual bool SerializeSelection (XmlNodeRef &xmlNode, bool bLoading, bool bCopySelected=false, float fTimeOffset=0)=0
 
virtual void InitPostLoad (IUiAnimSequence *)
 
virtual void Animate (SUiAnimContext &ec)
 For custom track animate parameters.
 
virtual ISplineInterpolator * GetSpline () const
 
virtual bool IsKeySelected (int key) const
 
virtual void SelectKey (int key, bool select)
 
virtual int NextKeyByTime (int key) const
 
virtual int GetAnimationLayerIndex () const
 Get the animation layer index assigned. (only for character/look-at tracks ATM)
 
virtual void SetAnimationLayerIndex (int index)
 Set the animation layer index. (only for character/look-at tracks ATM)
 

Static Public Member Functions

static void Reflect (AZ::ReflectContext *)
 

Protected Member Functions

void UpdateTrackValueRange (float newValue)
 

Additional Inherited Members

- Public Types inherited from IUiAnimTrack
enum  EUiAnimTrackFlags {
  eUiAnimTrackFlags_Linear = BIT(1) , eUiAnimTrackFlags_Loop = BIT(2) , eUiAnimTrackFlags_Cycle = BIT(3) , eUiAnimTrackFlags_Disabled = BIT(4) ,
  eUiAnimTrackFlags_Hidden = BIT(5) , eUiAnimTrackFlags_Muted = BIT(8)
}
 Flags that can be set on animation track. More...
 

Detailed Description

template<class ValueType>
class TUiAnimSplineTrack< ValueType >

Templated class that used as a base for all Tcb spline tracks.

Member Function Documentation

◆ add_ref()

template<class T >
void TUiAnimSplineTrack< T >::add_ref
inlineoverridevirtual

Implements IUiAnimTrack.

◆ ClearCustomColor()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::ClearCustomColor ( )
inlinevirtual

Implements IUiAnimTrack.

◆ CloneKey()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::CloneKey ( int  key)
inlineoverridevirtual

Clone key at specified index. @retun Index of new key.

Implements IUiAnimTrack.

◆ CopyKey()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::CopyKey ( IUiAnimTrack pFromTrack,
int  nFromKey 
)
inlineoverridevirtual

Clone key at specified index from another track of SAME TYPE. @retun Index of new key.

Implements IUiAnimTrack.

◆ CreateKey()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::CreateKey ( float  time)
inlineoverridevirtual

Create key at given time, and return its index.

Implements IUiAnimTrack.

◆ FindKey()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::FindKey ( float  time)
inlineoverridevirtual

Find key at given time.

Returns
Index of found key, or -1 if key with this time not found.

Implements IUiAnimTrack.

◆ GetCurveType()

template<class ValueType >
EUiAnimCurveType TUiAnimSplineTrack< ValueType >::GetCurveType ( )
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetCustomColor()

template<class ValueType >
ColorB TUiAnimSplineTrack< ValueType >::GetCustomColor ( ) const
inlinevirtual

Implements IUiAnimTrack.

◆ GetFlags()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::GetFlags ( )
inlineoverridevirtual

Get track flags.

Implements IUiAnimTrack.

◆ GetKey()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetKey ( int  index,
IKey *  key 
) const
inlineoverridevirtual

Get key at specified location.

Parameters
keyMust be valid pointer to compatible key structure, to be filled with specified key location.

Implements IUiAnimTrack.

◆ GetKeyFlags()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::GetKeyFlags ( int  index)
inlineoverridevirtual

Get flags of specified key.

Returns
key time.

Implements IUiAnimTrack.

◆ GetKeyInfo()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetKeyInfo ( int  key,
const char *&  description,
float &  duration 
)
inlineoverridevirtual

Get info about specified key.

Parameters
Shorthuman readable text description of this key.
durationof this key in seconds.

Implements IUiAnimTrack.

◆ GetKeyTime()

template<class ValueType >
float TUiAnimSplineTrack< ValueType >::GetKeyTime ( int  index) const
inlineoverridevirtual

Get time of specified key.

Returns
key time.

Implements IUiAnimTrack.

◆ GetKeyValueRange()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetKeyValueRange ( float &  fMin,
float &  fMax 
) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetNumKeys()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::GetNumKeys ( ) const
inlineoverridevirtual

Return number of keys in track.

Implements IUiAnimTrack.

◆ GetParamData()

template<class ValueType >
const UiAnimParamData & TUiAnimSplineTrack< ValueType >::GetParamData ( ) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetParameterType()

template<class ValueType >
const CUiAnimParamType & TUiAnimSplineTrack< ValueType >::GetParameterType ( ) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetSpline()

template<class ValueType >
ISplineInterpolator * TUiAnimSplineTrack< ValueType >::GetSpline ( ) const
inlineoverridevirtual

Reimplemented from IUiAnimTrack.

◆ GetSubTrack()

template<class ValueType >
IUiAnimTrack * TUiAnimSplineTrack< ValueType >::GetSubTrack ( int  nIndex) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetSubTrackCount()

template<class ValueType >
int TUiAnimSplineTrack< ValueType >::GetSubTrackCount ( ) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetSubTrackName()

template<class ValueType >
AZStd::string TUiAnimSplineTrack< ValueType >::GetSubTrackName ( int  nIndex) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [1/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
AZ::Color &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [2/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
AZ::Vector2 &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [3/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
AZ::Vector3 &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [4/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
AZ::Vector4 &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [5/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
bool &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [6/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
float &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [7/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
Quat &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [8/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
Vec3 &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [9/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::GetValue ( float  time,
Vec4 &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValueType()

template<class ValueType >
EUiAnimValue TUiAnimSplineTrack< ValueType >::GetValueType ( )
inlineoverridevirtual

Implements IUiAnimTrack.

◆ HasCustomColor()

template<class ValueType >
bool TUiAnimSplineTrack< ValueType >::HasCustomColor ( ) const
inlinevirtual

Implements IUiAnimTrack.

◆ HasKeys()

template<class ValueType >
bool TUiAnimSplineTrack< ValueType >::HasKeys ( ) const
inlineoverridevirtual

Return true if keys exists in this track.

Implements IUiAnimTrack.

◆ IsKeySelected()

template<class ValueType >
bool TUiAnimSplineTrack< ValueType >::IsKeySelected ( int  key) const
inlineoverridevirtual

Reimplemented from IUiAnimTrack.

◆ IsMasked()

template<class ValueType >
bool TUiAnimSplineTrack< ValueType >::IsMasked ( const uint32  mask) const
inlineoverridevirtual

Check if track is masked by mask.

Implements IUiAnimTrack.

◆ OffsetKeyPosition()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::OffsetKeyPosition ( const Vec3 &  value)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ release()

template<class T >
void TUiAnimSplineTrack< T >::release
inlineoverridevirtual

Implements IUiAnimTrack.

◆ RemoveKey()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::RemoveKey ( int  num)
inlineoverridevirtual

Remove specified key.

Implements IUiAnimTrack.

◆ SelectKey()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SelectKey ( int  key,
bool  select 
)
inlineoverridevirtual

Reimplemented from IUiAnimTrack.

◆ Serialize()

template<class T >
bool TUiAnimSplineTrack< T >::Serialize ( IUiAnimationSystem uiAnimationSystem,
XmlNodeRef &  xmlNode,
bool  bLoading,
bool  bLoadEmptyTracks 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SerializeSelection()

template<class T >
bool TUiAnimSplineTrack< T >::SerializeSelection ( XmlNodeRef &  xmlNode,
bool  bLoading,
bool  bCopySelected,
float  fTimeOffset 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetCustomColor()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetCustomColor ( ColorB  color)
inlinevirtual

Implements IUiAnimTrack.

◆ SetFlags()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetFlags ( int  flags)
inlineoverridevirtual

Set track flags.

Implements IUiAnimTrack.

◆ SetKey()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetKey ( int  index,
IKey *  key 
)
inlineoverridevirtual

Set key at specified location.

Parameters
keyMust be valid pointer to compatible key structure.

Implements IUiAnimTrack.

◆ SetKeyAtTime()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetKeyAtTime ( float  time,
IKey *  key 
)
inline

Get key at given time, If key not exist adds key at this time.

◆ SetKeyFlags()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetKeyFlags ( int  index,
int  flags 
)
inlineoverridevirtual

Set flags of specified key.

Implements IUiAnimTrack.

◆ SetKeyTime()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetKeyTime ( int  index,
float  time 
)
inlineoverridevirtual

Set time of specified key.

Implements IUiAnimTrack.

◆ SetKeyValueRange()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetKeyValueRange ( float  fMin,
float  fMax 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetNumKeys()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetNumKeys ( int  numKeys)
inlineoverridevirtual

Set number of keys in track. If needed adds empty keys at end or remove keys from end.

Implements IUiAnimTrack.

◆ SetParamData()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetParamData ( const UiAnimParamData param)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetParameterType()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetParameterType ( CUiAnimParamType  type)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetSubTrackName()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetSubTrackName ( int  nIndex,
const char *  name 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetTimeRange()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetTimeRange ( const Range &  timeRange)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [1/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const AZ::Color &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [2/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const AZ::Vector2 &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [3/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const AZ::Vector3 &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [4/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const AZ::Vector4 &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [5/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const bool &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [6/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const float &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [7/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const Quat &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [8/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const Vec3 &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [9/9]

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SetValue ( float  time,
const Vec4 &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SortKeys()

template<class ValueType >
void TUiAnimSplineTrack< ValueType >::SortKeys ( )
inlineoverridevirtual

Sort keys in track (after time of keys was modified).

Implements IUiAnimTrack.


The documentation for this class was generated from the following file: