Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

EggComponentData Class Reference

This is the base class of both EggJointData and EggSliderData. More...

#include <eggComponentData.h>

Inheritance diagram for EggComponentData:

Namable EggJointData EggSliderData List of all members.

Public Member Functions

 EggComponentData (EggCharacterCollection *collection, EggCharacterData *char_data)
virtual ~EggComponentData ()
void add_name (const string &name)
 Adds the indicated name to the set of names that this component can be identified with.

bool matches_name (const string &name) const
 Returns true if the indicated name matches any name that was ever matched with this particular joint, false otherwise.

virtual void add_back_pointer (int model_index, EggObject *egg_object)=0
virtual void write (ostream &out, int indent_level=0) const=0
int get_num_models () const
 Returns the maximum number of back pointers this component may have.

bool has_model (int model_index) const
 Returns true if the component has a back pointer to an egg file somewhere for the indicated model, false otherwise.

EggBackPointerget_model (int model_index) const
 Returns the back pointer to an egg file for the indicated model if it exists, or NULL if it does not.

void set_model (int model_index, EggBackPointer *back)
 Sets the back_pointer associated with the given model_index.

void set_name (const string &name)
void clear_name ()
bool has_name () const
const string & get_name () const
void output (ostream &out) const

Static Public Member Functions

TypeHandle get_class_type ()
void init_type ()

Protected Types

typedef pvector< EggBackPointer * > BackPointers

Protected Attributes

BackPointers _back_pointers
EggCharacterCollection_collection
EggCharacterData_char_data
string _name

Static Protected Attributes

TypeHandle _type_handle

Detailed Description

This is the base class of both EggJointData and EggSliderData.

It represents a single component of a character, either a joint or a slider, along with back pointers to the references to this component in all model and animation egg files read.

Definition at line 49 of file eggComponentData.h.


Member Typedef Documentation

typedef pvector<EggBackPointer *> EggComponentData::BackPointers [protected]
 

Definition at line 70 of file eggComponentData.h.


Constructor & Destructor Documentation

EggComponentData::EggComponentData EggCharacterCollection collection,
EggCharacterData char_data
 

Definition at line 36 of file eggComponentData.cxx.

EggComponentData::~EggComponentData  )  [virtual]
 

Definition at line 51 of file eggComponentData.cxx.


Member Function Documentation

virtual void EggComponentData::add_back_pointer int  model_index,
EggObject egg_object
[pure virtual]
 

Implemented in EggJointData, and EggSliderData.

void EggComponentData::add_name const string &  name  ) 
 

Adds the indicated name to the set of names that this component can be identified with.

If this is the first name added, it becomes the primary name of the component; later names added do not replace the primary name, but do get added to the list of names that will be accepted by matched_name().

Definition at line 80 of file eggComponentData.cxx.

EggBackPointer * EggComponentData::get_model int  model_index  )  const [inline]
 

Returns the back pointer to an egg file for the indicated model if it exists, or NULL if it does not.

Definition at line 77 of file eggComponentData.I.

Referenced by EggSliderData::EggSliderData(), and EggJointData::get_num_frames().

int EggComponentData::get_num_models  )  const [inline]
 

Returns the maximum number of back pointers this component may have.

The component may store a back pointer for models indexed 0 .. num_models - 1. You must call has_model() on each model index to confirm whether a particular model in that range has a back pointer.

Definition at line 42 of file eggComponentData.I.

References _back_pointers, INLINE, and NULL.

bool EggComponentData::has_model int  model_index  )  const [inline]
 

Returns true if the component has a back pointer to an egg file somewhere for the indicated model, false otherwise.

Definition at line 59 of file eggComponentData.I.

References _back_pointers.

bool EggComponentData::matches_name const string &  name  )  const
 

Returns true if the indicated name matches any name that was ever matched with this particular joint, false otherwise.

Definition at line 99 of file eggComponentData.cxx.

References _back_pointers.

void EggComponentData::set_model int  model_index,
EggBackPointer back
 

Sets the back_pointer associated with the given model_index.

Definition at line 114 of file eggComponentData.cxx.

Referenced by EggSliderData::EggSliderData().

virtual void EggComponentData::write ostream &  out,
int  indent_level = 0
const [pure virtual]
 

Implemented in EggJointData, and EggSliderData.


Member Data Documentation

BackPointers EggComponentData::_back_pointers [protected]
 

Definition at line 71 of file eggComponentData.h.

Referenced by EggJointData::do_rebuild(), get_num_models(), has_model(), and matches_name().

EggCharacterData* EggComponentData::_char_data [protected]
 

Definition at line 75 of file eggComponentData.h.

EggCharacterCollection* EggComponentData::_collection [protected]
 

Definition at line 74 of file eggComponentData.h.


The documentation for this class was generated from the following files:
Generated on Fri May 2 03:26:09 2003 for Panda-Tool by doxygen1.3