You.i Engine
CYITimelineTrack Class Reference

Detailed Description

A representation of a single track of a CYITimeline.

This class contains the attribute of the track which defines the type of transformation the track is responsible for on a CYISceneNode. The track also contains keytimes for the track and is capable of interpolating these keytimes to update the properties of a CYISceneNode as the CYITimeline progresses. CYITimelineTracks are added to a CYITimelineBackingStore to create a CYITimeline.

See also
CYITimelineKeyTime
CYITimelineBackingStore
CYITimeline

#include <animation/YiTimelineTrack.h>

Inheritance diagram for CYITimelineTrack:

Classes

struct  TRACK_IDENTIFIER
 

Public Types

enum  ATTRIBUTE_TYPE {
  INVALID = 0,
  POSITION,
  ROTATION_X,
  ROTATION_Y,
  ROTATION_Z,
  ORIENTATION,
  SCALE,
  OPACITY,
  SEP_POSITION_X,
  SEP_POSITION_Y,
  SEP_POSITION_Z,
  IS_VISIBLE,
  ANCHOR_POINT,
  CUSTOM
}
 

Public Member Functions

 CYITimelineTrack (uint32_t nTrackID, ATTRIBUTE_TYPE eAttributeType, const CYIString &targetName)
 
virtual ~CYITimelineTrack ()
 
void AddKeytime (const CYITimelineKeyTime::KEYTIME_SETUP *pKeytimeSetup)
 
std::vector< CYITimelineKeyTime * > GetKeyTimes () const
 
ATTRIBUTE_TYPE GetAttribute () const
 
const char * GetAttributeName () const
 
CYIVariant::TYPE GetDataType () const
 
int32_t GetTargetID () const
 
const CYIStringGetTargetName () const
 
uint64_t GetTotalTime () const
 
uint32_t GetTrackID () const
 
CYIVariant ReadStream (uint64_t uTime) const
 
void SetTargetID (int32_t nID)
 
const CYIStringGetName () const
 
void SetName (const CYIString &trackName)
 
void SetNewAttributeType (ATTRIBUTE_TYPE eAttributeType)
 
int32_t GetApproximateSize () const
 
- Public Member Functions inherited from CYIScriptableObject
 CYIScriptableObject ()
 
 CYIScriptableObject (const CYIScriptableObject &other)
 
CYIScriptableObjectoperator= (const CYIScriptableObject &other)
 
virtual ~CYIScriptableObject ()
 
CYIBindingImplementationGetBindingImplementation () const
 
void SetBindingImplementation (CYIBindingImplementation *pBindingImplementation)
 
virtual const CYIRuntimeTypeInfoGetRuntimeTypeInfoForScriptObject () const
 

Member Enumeration Documentation

Enumeration of the timeline track attributes supported by You.i Engine. These attributes represent the transformation that takes place on the timeline track.

Enumerator
INVALID 
POSITION 
ROTATION_X 
ROTATION_Y 
ROTATION_Z 
ORIENTATION 
SCALE 
OPACITY 
SEP_POSITION_X 
SEP_POSITION_Y 
SEP_POSITION_Z 
IS_VISIBLE 
ANCHOR_POINT 
CUSTOM 

Constructor & Destructor Documentation

CYITimelineTrack::CYITimelineTrack ( uint32_t  nTrackID,
ATTRIBUTE_TYPE  eAttributeType,
const CYIString targetName 
)

Constructs a timeline track with the nTrackID, the eAttributeType of the track and the targetName which is the name of the CYISceneNode transformed by the timeline track.

virtual CYITimelineTrack::~CYITimelineTrack ( )
virtual

Member Function Documentation

void CYITimelineTrack::AddKeytime ( const CYITimelineKeyTime::KEYTIME_SETUP pKeytimeSetup)

Adds a CYITimelineKeyTime to the CYITimelineTrack. The keytime will be intialized with the information provided in pKeytimeSetup.

Note
The caller retains ownership of pKeytimeSetup.
int32_t CYITimelineTrack::GetApproximateSize ( ) const

Returns the approximate size of the CYITimelineTrack object, in bytes. This approximation includes the keytimes associated with the track as well as class signatures.

ATTRIBUTE_TYPE CYITimelineTrack::GetAttribute ( ) const

Returns transformation attribute associated with this track.

See also
SetNewAttributeType
GetAttributeName
const char* CYITimelineTrack::GetAttributeName ( ) const

Returns the name of the attribute associated with this track. This is a string translation of the CYITimelineTrack::ATTRIBUTE_TYPE.

See also
GetAttribute
CYIVariant::TYPE CYITimelineTrack::GetDataType ( ) const

Returns the data type of the keytimes associated with this track.

See also
CYITimelineKeyTime::GetKeyValue
CYIVariant::GetType
std::vector<CYITimelineKeyTime *> CYITimelineTrack::GetKeyTimes ( ) const

Returns a vector of all key times present in this timeline track.

Note
This object retains ownership of the CYITimelineKeyTime objects.
const CYIString& CYITimelineTrack::GetName ( ) const

Returns the name of this track. In general this is the attribute name of the track.

See also
GetAttributeName
SetName
int32_t CYITimelineTrack::GetTargetID ( ) const

Returns the ID of the CYISceneNode which this track modifies.

See also
SetTargetID
CYISceneNode::GetID
const CYIString& CYITimelineTrack::GetTargetName ( ) const

Returns the name of the CYISceneNode which this track modifies. This is set via the constructor of the CYITimelineTrack.

uint64_t CYITimelineTrack::GetTotalTime ( ) const

Returns the total time of this track. This is this combined duration of all keytimes associated with this track.

See also
CYITimelineKeyTime::GetDuration
uint32_t CYITimelineTrack::GetTrackID ( ) const

Returns the ID of this track. This is set via the constructor of the CYITimelineTrack.

CYIVariant CYITimelineTrack::ReadStream ( uint64_t  uTime) const

Returns the stream data closest to uTime, in milliseconds. This will return the interpolated data of keytimes. This is used to update the CYISceneNode properties as the associated CYITimeline progresses.

void CYITimelineTrack::SetName ( const CYIString trackName)

Sets the name of this track to trackName.

See also
GetName
void CYITimelineTrack::SetNewAttributeType ( ATTRIBUTE_TYPE  eAttributeType)

Sets the eAttributeType of this track.

See also
GetAttributeType
void CYITimelineTrack::SetTargetID ( int32_t  nID)

Sets the ID of the CYISceneNode which this track modifies.

See also
GetTargetID

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