libHSPlasma
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
plLineFollowMod Class Reference

#include <plLineFollowMod.h>

Inheritance diagram for plLineFollowMod:
plMultiModifier plModifier plSynchedObject hsKeyedObject plCreatable plRailCameraMod

Public Types

enum  FollowMode { kFollowObject, kFollowListener, kFollowCamera, kFollowLocalAvatar }
enum  {
  kNone = 0, kFullMatrix = 0x1, kOffsetFeet = 0x2, kOffsetAng = 0x4,
  kOffset = kOffsetFeet | kOffsetAng, kOffsetClamp = 0x8, kForceToLine = 0x10, kSpeedClamp = 0x20,
  kSearchPopPos = 0x40
}

Public Member Functions

 plLineFollowMod ()
virtual ~plLineFollowMod ()
virtual void read (hsStream *S, plResManager *mgr)
virtual void write (hsStream *S, plResManager *mgr)
FollowMode getFollowMode () const
unsigned short getFollowFlags () const
plAnimPathgetPath () const
plKey getPathParent () const
plKey getRefObj () const
float getOffset () const
float getOffsetClamp () const
float getSpeedClamp () const
void setFollowMode (FollowMode mode)
void setFollowFlags (unsigned short flags)
void setPathParent (plKey parent)
void setRefObj (plKey obj)
void setOffset (float offset)
void setOffsetClamp (float clamp)
void setSpeedClamp (float clamp)
void setPath (plAnimPath *path)
const std::vector< plKey > & getStereizers () const
std::vector< plKey > & getStereizers ()
void addStereizer (plKey stereizer)
void delStereizer (size_t idx)
void clearStereizers ()
- Public Member Functions inherited from plMultiModifier
bool getFlag (size_t flag) const
void setFlag (size_t flag, bool value)
virtual size_t getTargetsCount () const
virtual plKey getTarget (size_t pos) const
virtual void addTarget (plKey target)
virtual void removeTarget (plKey target)

Protected Member Functions

virtual void IPrcWrite (pfPrcHelper *prc)
virtual void IPrcParse (const pfPrcTag *tag, plResManager *mgr)

Protected Attributes

FollowMode fFollowMode
unsigned short fFollowFlags
plAnimPathfPath
plKey fPathParent
plKey fRefObj
std::vector< plKeyfStereizers
float fOffset
float fOffsetClamp
float fSpeedClamp
- Protected Attributes inherited from plMultiModifier
hsBitVector fFlags
std::vector< plKeyfTargets

Member Enumeration Documentation

anonymous enum
Enumerator:
kNone 
kFullMatrix 
kOffsetFeet 
kOffsetAng 
kOffset 
kOffsetClamp 
kForceToLine 
kSpeedClamp 
kSearchPopPos 
Enumerator:
kFollowObject 
kFollowListener 
kFollowCamera 
kFollowLocalAvatar 

Constructor & Destructor Documentation

plLineFollowMod::plLineFollowMod ( )
virtual plLineFollowMod::~plLineFollowMod ( )
virtual

Member Function Documentation

void plLineFollowMod::addStereizer ( plKey  stereizer)
void plLineFollowMod::clearStereizers ( )
void plLineFollowMod::delStereizer ( size_t  idx)
unsigned short plLineFollowMod::getFollowFlags ( ) const
FollowMode plLineFollowMod::getFollowMode ( ) const
float plLineFollowMod::getOffset ( ) const
float plLineFollowMod::getOffsetClamp ( ) const
plAnimPath* plLineFollowMod::getPath ( ) const
plKey plLineFollowMod::getPathParent ( ) const
plKey plLineFollowMod::getRefObj ( ) const
float plLineFollowMod::getSpeedClamp ( ) const
const std::vector<plKey>& plLineFollowMod::getStereizers ( ) const
std::vector<plKey>& plLineFollowMod::getStereizers ( )
virtual void plLineFollowMod::IPrcParse ( const pfPrcTag tag,
plResManager mgr 
)
protectedvirtual

This must be overloaded by subclasses to parse PRC data specific to the class from the PRC document. It is called once for each tag that is a child to the Creatable tag itself, so subclasses should check for each supported tag and handle it accordingly if it matches. If the tag is not recognized, it should be passed along to the parent class.

Reimplemented from plMultiModifier.

virtual void plLineFollowMod::IPrcWrite ( pfPrcHelper prc)
protectedvirtual

This must be overloaded by subclasses to write PRC data specific to the class to the PRC document. Do not write the top-level creatable tag, that is handled by prcWrite().

Reimplemented from plMultiModifier.

virtual void plLineFollowMod::read ( hsStream ,
plResManager  
)
virtual

Reads this creatable directly from the stream. If any keys are read, they will be added to the plResManager automatically.

Reimplemented from plMultiModifier.

void plLineFollowMod::setFollowFlags ( unsigned short  flags)
void plLineFollowMod::setFollowMode ( FollowMode  mode)
void plLineFollowMod::setOffset ( float  offset)
void plLineFollowMod::setOffsetClamp ( float  clamp)
void plLineFollowMod::setPath ( plAnimPath path)
void plLineFollowMod::setPathParent ( plKey  parent)
void plLineFollowMod::setRefObj ( plKey  obj)
void plLineFollowMod::setSpeedClamp ( float  clamp)
virtual void plLineFollowMod::write ( hsStream ,
plResManager  
)
virtual

Writes this creatable directly to the stream. The plResManager is used to manage any key references written by this creatable.

Reimplemented from plMultiModifier.

Member Data Documentation

unsigned short plLineFollowMod::fFollowFlags
protected
FollowMode plLineFollowMod::fFollowMode
protected
float plLineFollowMod::fOffset
protected
float plLineFollowMod::fOffsetClamp
protected
plAnimPath* plLineFollowMod::fPath
protected
plKey plLineFollowMod::fPathParent
protected
plKey plLineFollowMod::fRefObj
protected
float plLineFollowMod::fSpeedClamp
protected
std::vector<plKey> plLineFollowMod::fStereizers
protected

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