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.
UiCompoundSplineTrack Class Reference

Inherits IUiAnimTrack.

Public Member Functions

 AZ_RTTI (UiCompoundSplineTrack, "{91947B8B-65B7-451D-9D04-0C821C82014E}", IUiAnimTrack)
 
 UiCompoundSplineTrack (int nDims, EUiAnimValue inValueType, CUiAnimParamType subTrackParamTypes[MAX_SUBTRACKS])
 
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
 
EUiAnimCurveType GetCurveType () override
 
EUiAnimValue GetValueType () override
 
const CUiAnimParamTypeGetParameterType () const override
 
void SetParameterType (CUiAnimParamType type) override
 
const UiAnimParamDataGetParamData () const override
 
void SetParamData (const UiAnimParamData &param) 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 GetKeyInfo (int key, const char *&description, float &duration) override
 
int CreateKey (float time) override
 
int CloneKey (int fromKey) override
 
int CopyKey (IUiAnimTrack *pFromTrack, int nFromKey) override
 
void GetKey (int index, IKey *key) const override
 
float GetKeyTime (int index) const override
 
int FindKey (float time) override
 
int GetKeyFlags (int index) override
 
void SetKey (int index, IKey *key) override
 
void SetKeyTime (int index, float time) override
 Set time of specified key.
 
void SetKeyFlags (int index, int flags) override
 Set flags of specified key.
 
void SortKeys () override
 Sort keys in track (after time of keys was modified).
 
bool IsKeySelected (int key) const override
 
void SelectKey (int key, bool select) override
 
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 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, 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 GetValue (float time, bool &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
 
void SetTimeRange (const Range &timeRange) override
 
bool Serialize (IUiAnimationSystem *uiAnimationSystem, XmlNodeRef &xmlNode, bool bLoading, bool bLoadEmptyTracks=true) override
 
bool SerializeSelection (XmlNodeRef &xmlNode, bool bLoading, bool bCopySelected=false, float fTimeOffset=0) override
 
int NextKeyByTime (int key) const override
 
void SetSubTrackName (const int i, const AZStd::string &name)
 
void GetKeyValueRange (float &fMin, float &fMax) const override
 
void SetKeyValueRange (float fMin, float fMax) override
 
- 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::SerializeContext *serializeContext)
 

Protected Member Functions

void PrepareNodeForSubTrackSerialization (XmlNodeRef &subTrackNode, XmlNodeRef &xmlNode, int i, bool bLoading)
 
float PreferShortestRotPath (float degree, float degree0) const
 
int GetSubTrackIndex (int &key) const
 

Protected Attributes

int m_refCount
 
EUiAnimValue m_valueType
 
int m_nDimensions
 
AZStd::array< AZStd::intrusive_ptr< IUiAnimTrack >, MAX_SUBTRACKS > m_subTracks
 
int m_flags
 
CUiAnimParamType m_nParamType
 
AZStd::array< AZStd::string, MAX_SUBTRACKS > m_subTrackNames
 
UiAnimParamData m_componentParamData
 

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...
 

Member Function Documentation

◆ add_ref()

void UiCompoundSplineTrack::add_ref ( )
inlineoverridevirtual

Implements IUiAnimTrack.

◆ CloneKey()

int UiCompoundSplineTrack::CloneKey ( int  key)
inlineoverridevirtual

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

Implements IUiAnimTrack.

◆ CopyKey()

int UiCompoundSplineTrack::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()

int UiCompoundSplineTrack::CreateKey ( float  time)
inlineoverridevirtual

Create key at given time, and return its index.

Returns
Index of new key.

Implements IUiAnimTrack.

◆ FindKey()

int UiCompoundSplineTrack::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()

EUiAnimCurveType UiCompoundSplineTrack::GetCurveType ( )
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetFlags()

int UiCompoundSplineTrack::GetFlags ( )
inlineoverridevirtual

Get track flags.

Implements IUiAnimTrack.

◆ GetKey()

void UiCompoundSplineTrack::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()

int UiCompoundSplineTrack::GetKeyFlags ( int  index)
inlineoverridevirtual

Get flags of specified key.

Returns
key time.

Implements IUiAnimTrack.

◆ GetKeyInfo()

void UiCompoundSplineTrack::GetKeyInfo ( int  key,
const char *&  description,
float &  duration 
)
overridevirtual

Get info about specified key.

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

Implements IUiAnimTrack.

◆ GetKeyTime()

float UiCompoundSplineTrack::GetKeyTime ( int  index) const
overridevirtual

Get time of specified key.

Returns
key time.

Implements IUiAnimTrack.

◆ GetKeyValueRange()

void UiCompoundSplineTrack::GetKeyValueRange ( float &  fMin,
float &  fMax 
) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetNumKeys()

int UiCompoundSplineTrack::GetNumKeys ( ) const
overridevirtual

Return number of keys in track.

Implements IUiAnimTrack.

◆ GetParamData()

const UiAnimParamData & UiCompoundSplineTrack::GetParamData ( ) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetParameterType()

const CUiAnimParamType & UiCompoundSplineTrack::GetParameterType ( ) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetSubTrack()

IUiAnimTrack * UiCompoundSplineTrack::GetSubTrack ( int  nIndex) const
overridevirtual

Implements IUiAnimTrack.

◆ GetSubTrackCount()

int UiCompoundSplineTrack::GetSubTrackCount ( ) const
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetSubTrackName()

AZStd::string UiCompoundSplineTrack::GetSubTrackName ( int  nIndex) const
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [1/9]

void UiCompoundSplineTrack::GetValue ( float  time,
AZ::Color &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [2/9]

void UiCompoundSplineTrack::GetValue ( float  time,
AZ::Vector2 &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [3/9]

void UiCompoundSplineTrack::GetValue ( float  time,
AZ::Vector3 &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [4/9]

void UiCompoundSplineTrack::GetValue ( float  time,
AZ::Vector4 &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [5/9]

void UiCompoundSplineTrack::GetValue ( float  time,
bool &  value 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ GetValue() [6/9]

void UiCompoundSplineTrack::GetValue ( float  time,
float &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [7/9]

void UiCompoundSplineTrack::GetValue ( float  time,
Quat &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [8/9]

void UiCompoundSplineTrack::GetValue ( float  time,
Vec3 &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValue() [9/9]

void UiCompoundSplineTrack::GetValue ( float  time,
Vec4 &  value 
)
overridevirtual

Implements IUiAnimTrack.

◆ GetValueType()

EUiAnimValue UiCompoundSplineTrack::GetValueType ( )
inlineoverridevirtual

Implements IUiAnimTrack.

◆ HasKeys()

bool UiCompoundSplineTrack::HasKeys ( ) const
overridevirtual

Return true if keys exists in this track.

Implements IUiAnimTrack.

◆ IsKeySelected()

bool UiCompoundSplineTrack::IsKeySelected ( int  key) const
overridevirtual

Reimplemented from IUiAnimTrack.

◆ IsMasked()

bool UiCompoundSplineTrack::IsMasked ( const uint32  mask) const
inlineoverridevirtual

Check if track is masked by mask.

Implements IUiAnimTrack.

◆ NextKeyByTime()

int UiCompoundSplineTrack::NextKeyByTime ( int  key) const
overridevirtual

Return the index of the key which lies right after the given key in time.

Parameters
keyIndex of of key.
Returns
Index of the next key in time. If the last key given, this returns -1.

Reimplemented from IUiAnimTrack.

◆ OffsetKeyPosition()

void UiCompoundSplineTrack::OffsetKeyPosition ( const Vec3 &  value)
overridevirtual

Implements IUiAnimTrack.

◆ release()

void UiCompoundSplineTrack::release ( )
inlineoverridevirtual

Implements IUiAnimTrack.

◆ RemoveKey()

void UiCompoundSplineTrack::RemoveKey ( int  num)
overridevirtual

Remove specified key.

Implements IUiAnimTrack.

◆ SelectKey()

void UiCompoundSplineTrack::SelectKey ( int  key,
bool  select 
)
overridevirtual

Reimplemented from IUiAnimTrack.

◆ Serialize()

bool UiCompoundSplineTrack::Serialize ( IUiAnimationSystem uiAnimationSystem,
XmlNodeRef &  xmlNode,
bool  bLoading,
bool  bLoadEmptyTracks = true 
)
overridevirtual

Implements IUiAnimTrack.

◆ SerializeSelection()

bool UiCompoundSplineTrack::SerializeSelection ( XmlNodeRef &  xmlNode,
bool  bLoading,
bool  bCopySelected = false,
float  fTimeOffset = 0 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetFlags()

void UiCompoundSplineTrack::SetFlags ( int  flags)
inlineoverridevirtual

Set track flags.

Implements IUiAnimTrack.

◆ SetKey()

void UiCompoundSplineTrack::SetKey ( int  index,
IKey *  key 
)
inlineoverridevirtual

Set key at specified location.

Parameters
keyMust be valid pointer to compatible key structure.

Implements IUiAnimTrack.

◆ SetKeyFlags()

void UiCompoundSplineTrack::SetKeyFlags ( int  index,
int  flags 
)
inlineoverridevirtual

Set flags of specified key.

Implements IUiAnimTrack.

◆ SetKeyTime()

void UiCompoundSplineTrack::SetKeyTime ( int  index,
float  time 
)
overridevirtual

Set time of specified key.

Implements IUiAnimTrack.

◆ SetKeyValueRange()

void UiCompoundSplineTrack::SetKeyValueRange ( float  fMin,
float  fMax 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetNumKeys()

void UiCompoundSplineTrack::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()

void UiCompoundSplineTrack::SetParamData ( const UiAnimParamData param)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetParameterType()

void UiCompoundSplineTrack::SetParameterType ( CUiAnimParamType  type)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetSubTrackName()

void UiCompoundSplineTrack::SetSubTrackName ( int  nIndex,
const char *  name 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetTimeRange()

void UiCompoundSplineTrack::SetTimeRange ( const Range &  timeRange)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [1/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const AZ::Color &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [2/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const AZ::Vector2 &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [3/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const AZ::Vector3 &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [4/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const AZ::Vector4 &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [5/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const bool &  value,
bool  bDefault = false 
)
inlineoverridevirtual

Implements IUiAnimTrack.

◆ SetValue() [6/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const float &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [7/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const Quat &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [8/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const Vec3 &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SetValue() [9/9]

void UiCompoundSplineTrack::SetValue ( float  time,
const Vec4 &  value,
bool  bDefault = false 
)
overridevirtual

Implements IUiAnimTrack.

◆ SortKeys()

void UiCompoundSplineTrack::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: