Public Types | Public Member Functions | Static Public Member Functions

IAnimTrack Class Reference

Search for all occurrences

Detailed Description

Interface of a parameter track object, a member of a track set.

The IAnimTrack interface provides access to a member of a track set and represents one track in the track view, for instance, the X position of a node. A track is defined by a node and then a path of subanims, from the node down to a leaf controller. For instance the track for the X position of a node would keep the subAnims of the PRS control, then of the indePos and of the X position. At the moment only tracks that are under a node can belong to a track set.

#include <iTrackSet.h>

Inheritance diagram for IAnimTrack:
Inheritance graph
[legend]

List of all members.

Public Types

enum   {
  get_node, sub_anim_count, get_sub_anim, get_sub_anim_index,
  get_path_name, set
}

Public Member Functions

virtual INode GetNode () const =0
  Returns the node to which the parameter track belongs.
virtual int  SubAnimCount () const =0
  Returns the number of subanims for this track, from the node to the leaf controller.
virtual Animatable GetSubAnim (int index) const =0
  Returns the desired subanim.
virtual int  GetSubAnimIndex (int index) const =0
  Returns the desired subanim index.
virtual const MSTR GetPathName () const =0
  Returns a string describing the track, e.g.
virtual void  Set (MCHAR *pathname)=0
  Sets the animation track from a string.
virtual Control GetLeafController () const =0
  Retrieves the leaf controller of a track.
FPInterfaceDesc GetDesc ()

Static Public Member Functions

static IAnimTrack GetInterface (InterfaceServer &is)
  Retrieves the IAnimTrack interface from an object.

Member Enumeration Documentation

anonymous enum

Member Function Documentation

virtual INode* GetNode ( ) const [pure virtual]

Returns the node to which the parameter track belongs.

Returns:
- the node to which the parameter belongs
virtual int SubAnimCount ( ) const [pure virtual]

Returns the number of subanims for this track, from the node to the leaf controller.

Returns:
- the number of subanims in this track
virtual Animatable* GetSubAnim ( int  index ) const [pure virtual]

Returns the desired subanim.

For instance GetSubAnim(0) on the track "Cone01\Transform\Position\X Position" would return the PRS controller under Cone01

Parameters:
[in] index - zero-based index of the subanim
virtual int GetSubAnimIndex ( int  index ) const [pure virtual]

Returns the desired subanim index.

For instance GetSubAnim(0) on the track "Cone01\Transform\Position\X Position" would return the subanim index of the PRS controller under Cone01

Parameters:
[in] index - zero-based index of the subanim
virtual const MSTR& GetPathName ( ) const [pure virtual]

Returns a string describing the track, e.g.

"Cone01\Transform\Position\X Position"

Returns:
- a string describing the track
virtual void Set ( MCHAR *  pathname ) [pure virtual]

Sets the animation track from a string.

The string will be parsed as a node followed with a backslash-separated list of subanims

Parameters:
[in] pathname - string describing the track
See also:
IAnimTrack::GetSubAnim()
virtual Control* GetLeafController ( ) const [pure virtual]

Retrieves the leaf controller of a track.

Returns:
- Pointer to the controller or NULL
static IAnimTrack* GetInterface ( InterfaceServer is ) [inline, static]

Retrieves the IAnimTrack interface from an object.

Parameters:
[in] is - Pointer to an object
Returns:
- Pointer to the IAnimTrack interface of the object or NULL if the object does not support the animation track interface
                                                         {
        return static_cast<IAnimTrack*>(is.GetInterface(IID_ANIM_TRACK));
    };
FPInterfaceDesc* GetDesc ( ) [virtual]
Remarks:
Returns a pointer to the class which contains the interface metadata.

Implements FPInterface.


IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack
IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack IAnimTrack