HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TsSpline_KeyFrames Class Reference

Maintains the keyframes for a spline. More...

#include <spline_KeyFrames.h>

Public Member Functions

 TsSpline_KeyFrames ()
 
 ~TsSpline_KeyFrames ()
 
 TsSpline_KeyFrames (TsSpline_KeyFrames const &other, TsKeyFrameMap const *keyFrames=NULL)
 
const TsKeyFrameMapGetKeyFrames () const
 
void SetKeyFrames (const TsKeyFrameMap &)
 If looping, just writes to the non unrolled intervals. More...
 
void SwapKeyFrames (std::vector< TsKeyFrame > *keyFrames)
 
void SetKeyFrame (TsKeyFrame kf, GfInterval *intervalAffected=NULL)
 If looping, just writes to the non unrolled intervals. More...
 
void RemoveKeyFrame (TsTime t, GfInterval *intervalAffected=NULL)
 If looping, just affects the non unrolled intervals. More...
 
void Clear ()
 Clears both maps. More...
 
const TsKeyFrameMapGetNormalKeyFrames () const
 Gets the underlying normal keys. More...
 
const TsLoopParamsGetLoopParams () const
 Get the loop parameters. More...
 
void SetLoopParams (const TsLoopParams &loopParams)
 Sets the loop parameters. More...
 
const TsExtrapolationPairGetExtrapolation () const
 Get the left and right extrapolation. More...
 
void SetExtrapolation (const TsExtrapolationPair &extrapolation)
 Sets the left and right extrapolation. More...
 
bool operator== (const TsSpline_KeyFrames &rhs) const
 
void BakeSplineLoops ()
 

Friends

class TsKeyFrameEvalUtil
 
class TsSpline
 

Detailed Description

Maintains the keyframes for a spline.

The TsSpline_KeyFrames is a private class that holds onto and provides API for interacting with the spline's keyframes. Its principle duty is to manage the looping/non-looping representations of the spline. This class should only be held by TsSpline.

Definition at line 49 of file spline_KeyFrames.h.

Constructor & Destructor Documentation

TsSpline_KeyFrames::TsSpline_KeyFrames ( )
TsSpline_KeyFrames::~TsSpline_KeyFrames ( )
TsSpline_KeyFrames::TsSpline_KeyFrames ( TsSpline_KeyFrames const &  other,
TsKeyFrameMap const *  keyFrames = NULL 
)

Generalized copy constructor.

If keyFrames is not NULL, this constructor has the same behavior as first copying other, then calling SetKeyFrames with keyFrames.

Member Function Documentation

void TsSpline_KeyFrames::BakeSplineLoops ( )
void TsSpline_KeyFrames::Clear ( )

Clears both maps.

const TsExtrapolationPair& TsSpline_KeyFrames::GetExtrapolation ( ) const

Get the left and right extrapolation.

const TsKeyFrameMap& TsSpline_KeyFrames::GetKeyFrames ( ) const

Gets the looped or unlooped keys, according to whether the spline is looping.

const TsLoopParams& TsSpline_KeyFrames::GetLoopParams ( ) const

Get the loop parameters.

const TsKeyFrameMap& TsSpline_KeyFrames::GetNormalKeyFrames ( ) const

Gets the underlying normal keys.

bool TsSpline_KeyFrames::operator== ( const TsSpline_KeyFrames rhs) const
void TsSpline_KeyFrames::RemoveKeyFrame ( TsTime  t,
GfInterval intervalAffected = NULL 
)

If looping, just affects the non unrolled intervals.

void TsSpline_KeyFrames::SetExtrapolation ( const TsExtrapolationPair extrapolation)

Sets the left and right extrapolation.

void TsSpline_KeyFrames::SetKeyFrame ( TsKeyFrame  kf,
GfInterval intervalAffected = NULL 
)

If looping, just writes to the non unrolled intervals.

void TsSpline_KeyFrames::SetKeyFrames ( const TsKeyFrameMap )

If looping, just writes to the non unrolled intervals.

void TsSpline_KeyFrames::SetLoopParams ( const TsLoopParams loopParams)

Sets the loop parameters.

void TsSpline_KeyFrames::SwapKeyFrames ( std::vector< TsKeyFrame > *  keyFrames)

Replaces the key frames of this spline with keyFrames, and replaces the contents of keyFrames with the key frames in this spline. If the spline is looping, the data put into keyFrames will be the key frames from the looped view of the spline, and hidden keys will be preserved when keyFrames is swapped into this spline.

Friends And Related Function Documentation

friend class TsKeyFrameEvalUtil
friend

Definition at line 171 of file spline_KeyFrames.h.

friend class TsSpline
friend

Definition at line 172 of file spline_KeyFrames.h.


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