TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
iAnimation Struct Referenceabstract
Inheritance diagram for iAnimation:
iUnknown

Detailed Description

Animation interface.

General

virtual iAnimationClone () const =0
 Clone this animation. More...
 
virtual iAnimationInst () const =0
 Creates an instance of this animation. More...
 
virtual void SetName (iHString *ahspName)=0
 Set the name of the animation. {Property}. More...
 
virtual iHStringGetName () const =0
 Get the name of the animation. {Property}. More...
 

Control

virtual iAnimationTimeGetTime () const =0
 Get the animation's time controller. {Property}. More...
 
virtual tF32 GetKeysInterval () const =0
 Get the interval between two keys. {Property}. More...
 
virtual tU32 GetNumKeys () const =0
 Get the the number of keys. {Property}. More...
 

Animation Keys Sets

virtual void InitializeAnimationKeysSets ()=0
 Initialize animation keys set stats. More...
 
virtual iAnimationKeysSetCreateAnimationKeysSet (eAnimationKeysType aType) const =0
 Create a new keys set. More...
 
virtual tU32 GetNumAnimationKeysSets () const =0
 Get the number of animation keys sets interfaces. {Property}. More...
 
virtual iAnimationKeysSetGetAnimationKeysSet (tU32 aulIdx) const =0
 Get the animation keys set of this animation at the given index. More...
 
virtual tU32 GetAnimationKeysSetFromName (iHString *ahspName) const =0
 Get the animation keys set with the specified name. {Property}. More...
 
virtual tU32 AddAnimationKeysSet (iAnimationKeysSet *apAnimKeys)=0
 Add an animation keys set. More...
 
virtual tBool RemoveAnimationKeysSet (tU32 aulIdx)=0
 Remove the animation keys set at the given index. More...
 
virtual tBool GetCurrentTimeValue (tU32 aulIdx, tPtr apOut) const =0
 Get the current time value of the given animation keys set. More...
 
virtual tF32 GetCurrentFloatTimeValue (tU32 aulIdx) const =0
 Get the current float time value of the given animation keys set. {Property}. More...
 
virtual tF32 GetCurrentEulerAngleTimeValue (tU32 aulIdx) const =0
 Get the current euler angle time value of the given animation keys set. {Property}. More...
 
virtual sVec2f GetCurrentVec2TimeValue (tU32 aulIdx) const =0
 Get the current vector2 time value of the given animation keys set. {Property}. More...
 
virtual sVec3f GetCurrentVec3TimeValue (tU32 aulIdx) const =0
 Get the current vector3 time value of the given animation keys set. {Property}. More...
 
virtual sVec4f GetCurrentVec4TimeValue (tU32 aulIdx) const =0
 Get the current vector4 time value of the given animation keys set. {Property}. More...
 
virtual sMatrixf GetCurrentMatrixTimeValue (tU32 aulIdx) const =0
 Get the current matrix time value of the given animation keys set. {Property}. More...
 
virtual sQuatf GetCurrentQuatTimeValue (tU32 aulIdx) const =0
 Get the current vector4 time value of the given animation keys set. {Property}. More...
 

Serialization

virtual tBool SerializeDataTable (iDataTable *apDT, tSerializeFlags aFlags)=0
 Serialize the animation to/from the specified datatable. More...
 

Additional Inherited Members

- Public Member Functions inherited from iUnknown
virtual tBool IsOK () const =0
 Check if the object is valid. More...
 
virtual tI32 AddRef ()=0
 Signal that one more reference of the object has been created. More...
 
virtual tI32 Release ()=0
 Release a reference of the object. More...
 
virtual void DeleteThis ()=0
 Bypass any reference counting and delete this object. More...
 
virtual void Invalidate ()=0
 Invalidate the object. More...
 
virtual iUnknownQueryInterface (const tUUID &aIID)=0
 Query an interface. More...
 
virtual void ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0
 Fill a UUID list containing the UUIDs of the implemented interfaces. More...
 
virtual tI32 SetNumRefs (tI32 anNumRefs)=0
 Set the reference counter directly. More...
 
virtual tI32 GetNumRefs () const =0
 Get the number of references to this object. More...
 

Member Function Documentation

virtual iAnimation* Clone ( ) const
pure virtual

Clone this animation.

Remarks
Clone the animation and all it's animation keys sets.
virtual iAnimation* Inst ( ) const
pure virtual

Creates an instance of this animation.

Remarks
Same as clone, excepted that key sets are shared.
virtual void SetName ( iHString ahspName)
pure virtual

Set the name of the animation. {Property}.

virtual iHString* GetName ( ) const
pure virtual

Get the name of the animation. {Property}.

virtual iAnimationTime* GetTime ( ) const
pure virtual

Get the animation's time controller. {Property}.

virtual tF32 GetKeysInterval ( ) const
pure virtual

Get the interval between two keys. {Property}.

Remarks
see ni::iAnimation::InitializeAnimationKeysSets()
virtual tU32 GetNumKeys ( ) const
pure virtual

Get the the number of keys. {Property}.

Remarks
see ni::iAnimation::InitializeAnimationKeysSets()
virtual void InitializeAnimationKeysSets ( )
pure virtual

Initialize animation keys set stats.

Remarks
This must be called if you add or remove keys from a key set already added in the animation. Add and Remove animation will already take care of calling this as required.
virtual iAnimationKeysSet* CreateAnimationKeysSet ( eAnimationKeysType  aType) const
pure virtual

Create a new keys set.

virtual tU32 GetNumAnimationKeysSets ( ) const
pure virtual

Get the number of animation keys sets interfaces. {Property}.

virtual iAnimationKeysSet* GetAnimationKeysSet ( tU32  aulIdx) const
pure virtual

Get the animation keys set of this animation at the given index.

Parameters
aulIdxis the index of the animation keys to get.
Returns
NULL if the index is invalid, else an iAnimationKeysSet interface. {Property}
virtual tU32 GetAnimationKeysSetFromName ( iHString ahspName) const
pure virtual

Get the animation keys set with the specified name. {Property}.

virtual tU32 AddAnimationKeysSet ( iAnimationKeysSet apAnimKeys)
pure virtual

Add an animation keys set.

virtual tBool RemoveAnimationKeysSet ( tU32  aulIdx)
pure virtual

Remove the animation keys set at the given index.

Parameters
aulIdxis the index of the animation keys set to remove.
Returns
eFalse if the index is invalid, else remove the animation keys set and return eTrue.
virtual tBool GetCurrentTimeValue ( tU32  aulIdx,
tPtr  apOut 
) const
pure virtual

Get the current time value of the given animation keys set.

Parameters
aulIdxis the index of the animation keys set of which we need to get the value.
apOutis where the key value will be written.
Returns
eFalse if the index is invalid, else aTrue.
Remarks
This method does all the computation. {NoAutomation}
virtual tF32 GetCurrentFloatTimeValue ( tU32  aulIdx) const
pure virtual

Get the current float time value of the given animation keys set. {Property}.

virtual tF32 GetCurrentEulerAngleTimeValue ( tU32  aulIdx) const
pure virtual

Get the current euler angle time value of the given animation keys set. {Property}.

virtual sVec2f GetCurrentVec2TimeValue ( tU32  aulIdx) const
pure virtual

Get the current vector2 time value of the given animation keys set. {Property}.

virtual sVec3f GetCurrentVec3TimeValue ( tU32  aulIdx) const
pure virtual

Get the current vector3 time value of the given animation keys set. {Property}.

virtual sVec4f GetCurrentVec4TimeValue ( tU32  aulIdx) const
pure virtual

Get the current vector4 time value of the given animation keys set. {Property}.

virtual sMatrixf GetCurrentMatrixTimeValue ( tU32  aulIdx) const
pure virtual

Get the current matrix time value of the given animation keys set. {Property}.

virtual sQuatf GetCurrentQuatTimeValue ( tU32  aulIdx) const
pure virtual

Get the current vector4 time value of the given animation keys set. {Property}.

virtual tBool SerializeDataTable ( iDataTable apDT,
tSerializeFlags  aFlags 
)
pure virtual

Serialize the animation to/from the specified datatable.