VController

Engine/source/Verve/Core/VController.h

More...

Public Types

enum
eControllerEventType {
  k_EventInit 
  k_EventReset 
  k_EventPlay 
  k_EventPause 
  k_EventStop 
  k_EventLoop 
}
enum
eControllerJumpType {
  k_JumpTime 
  k_JumpDelta 
  k_JumpInvalid 
}
enum
eControllerStatus {
  k_StatusInit = BIT( 0 )
  k_StatusPlaying = BIT( 1 )
  k_StatusPaused = BIT( 2 )
  k_StatusStopped = BIT( 3 )
}
ControllerEventSignal 
Signal< void(const S32 &pTime, const S32 &pDelta)>
ControllerUpdateSignal 

Private Types

Parent 

Public Functions

advanceTime(F32 timeDelta)

This method is called once every frame regardless of the return value of isProcessingTicks and informs the object of the passage of time.

clearData(const S32 & pIndex)
clearData(const String & pFieldName)
bool
getDataValue(const String & pFieldName, String & pValue)
bool
getObject(const String & pLabel, T *& pObject)

This method is called every frame and lets the control interpolate between ticks so you can smooth things as long as isProcessingTicks returns true when it is called on the object.

bool
bool
bool
bool
play(const S32 & pTime)

This method is called once every 32ms if isProcessingTicks returns true when called on the object.

bool
readDataTable(TiXmlElement * pElement)
reset(const S32 & pTime)
setDuration(const S32 & pDuration)
setTime(const S32 & pTime)
setTimeScale(const F32 & pTimeScale)
stop(const bool & pReset)
bool
writeDataTable(TiXmlElement * pElement)

Public Static Functions

Protected Static Functions

bool
setDuration(void * pObject, const char * pArray, const char * pData)
bool
setTime(void * pObject, const char * pArray, const char * pData)
bool
setTimeScale(void * pObject, const char * pArray, const char * pData)

Detailed Description

Public Types

eControllerEventType

Enumerator

k_EventInit
k_EventReset
k_EventPlay
k_EventPause
k_EventStop
k_EventLoop
eControllerJumpType

Enumerator

k_JumpTime
k_JumpDelta
k_JumpInvalid
eControllerStatus

Enumerator

k_StatusInit = BIT( 0 )
k_StatusPlaying = BIT( 1 )
k_StatusPaused = BIT( 2 )
k_StatusStopped = BIT( 3 )
typedef Signal< bool(eControllerEventType)> ControllerEventSignal 
typedef Signal< void(const S32 &pTime, const S32 &pDelta)> ControllerUpdateSignal 

Private Types

typedef SimObject Parent 

Private Attributes

ControllerEventSignal mControllerEventSignal 
ControllerUpdateSignal mControllerUpdateSignal 
VDataTable mDataTable 
S32 mDuration 
eControllerJumpType mJump 
S32 mJumpTime 
U32 mLastTime 
bool mLoop 
bool mLoopBackwards 
S32 mLoopCount 
S32 mLoopDelay 
S32 mLoopDelayTime 
S32 mLoopIndex 
bool mResetOnCompletion 
S32 mStatus 
S32 mTime 
F32 mTimeScale 

Public Functions

VController()

~VController()

advanceTime(F32 timeDelta)

Reimplemented from: ITickable

clearData(const S32 & pIndex)

clearData(const String & pFieldName)

clearData(void )

DECLARE_CONOBJECT(VController )

getControllerEventSignal(void )

getControllerUpdateSignal(void )

getDataTable(void )

getDataValue(const String & pFieldName, String & pValue)

getDirectorGroup(void )

getDirectorTrack(void )

getDuration(void )

getLoopDelayTime(void )

getObject(const String & pLabel)

getObject(const String & pLabel, T *& pObject)

getTime(void )

getTimeScale(void )

interpolateTick(F32 delta)

Reimplemented from: ITickable

isLooping(void )

isPaused(void )

isPlaying(void )

isPlayingForward(void )

isStopped(void )

jump(const eControllerJumpType & pType, const S32 & pDelta)

jump(void )

onPostTick(void )

pause(void )

play(const S32 & pTime)

play(void )

postEvent(const eControllerEventType & pEvent)

processTick(void )

Reimplemented from: ITickable

readDataTable(TiXmlElement * pElement)

reset(const S32 & pTime)

reset(void )

setDuration(const S32 & pDuration)

setTime(const S32 & pTime)

setTimeScale(const F32 & pTimeScale)

sort(void )

stop(const bool & pReset)

updateStatus(const S32 & pStatus)

writeDataTable(TiXmlElement * pElement)

Public Static Functions

initPersistFields(void )

Protected Static Functions

setDuration(void * pObject, const char * pArray, const char * pData)

setTime(void * pObject, const char * pArray, const char * pData)

setTimeScale(void * pObject, const char * pArray, const char * pData)