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

EggCharacterCollection Class Reference

#include <eggCharacterCollection.h>

List of all members.

Public Types

typedef pvector< EggInfoEggs
typedef pvector< EggCharacterData * > Characters

Public Member Functions

 EggCharacterCollection ()
virtual ~EggCharacterCollection ()
int add_egg (EggData *egg)
INLINE int get_num_eggs () const
INLINE EggDataget_egg (int i) const
INLINE int get_first_model_index (int egg_index) const
INLINE int get_num_models (int egg_index) const
INLINE int get_num_characters () const
INLINE EggCharacterDataget_character (int i) const
EggCharacterDataget_character_by_name (const string &character_name) const
INLINE EggCharacterDataget_character_by_model_index (int model_index) const
virtual void write (ostream &out, int indent_level=0) const
virtual EggCharacterDatamake_character_data ()
virtual EggJointDatamake_joint_data (EggCharacterData *char_data)
virtual EggSliderDatamake_slider_data (EggCharacterData *char_data)
EggCharacterDatamake_character (const string &character_name)

Public Attributes

Eggs _eggs
Characters _characters
Characters _characters_by_model_index

Private Types

typedef pvector< EggNode * > EggNodeList
typedef pmap< EggNode *, EggNodeListTopEggNodes
typedef pmap< string, TopEggNodesTopEggNodesByName

Private Member Functions

bool scan_hierarchy (EggNode *egg_node)
void scan_for_top_joints (EggNode *egg_node, EggNode *model_root, const string &character_name)
void scan_for_top_tables (EggTable *bundle, EggNode *model_root, const string &character_name)
void scan_for_morphs (EggNode *egg_node, int model_index, EggCharacterData *char_data)
void scan_for_sliders (EggNode *egg_node, int model_index, EggCharacterData *char_data)
void add_morph_back_pointers (EggAttributes *attrib, EggObject *egg_object, int model_index, EggCharacterData *char_data)
void match_egg_nodes (EggCharacterData *char_Data, EggJointData *joint_data, EggNodeList &egg_nodes, int egg_index, int model_index)
void found_egg_match (EggCharacterData *char_data, EggJointData *joint_data, EggNode *egg_node, int egg_index, int model_index)

Private Attributes

TopEggNodesByName _top_egg_nodes
int _next_model_index


Member Typedef Documentation

typedef pvector<EggCharacterData *> EggCharacterCollection::Characters
 

Definition at line 77 of file eggCharacterCollection.h.

typedef pvector<EggNode *> EggCharacterCollection::EggNodeList [private]
 

Definition at line 97 of file eggCharacterCollection.h.

typedef pvector<EggInfo> EggCharacterCollection::Eggs
 

Definition at line 74 of file eggCharacterCollection.h.

typedef pmap<EggNode *, EggNodeList> EggCharacterCollection::TopEggNodes [private]
 

Definition at line 98 of file eggCharacterCollection.h.

typedef pmap<string, TopEggNodes> EggCharacterCollection::TopEggNodesByName [private]
 

Definition at line 99 of file eggCharacterCollection.h.


Constructor & Destructor Documentation

EggCharacterCollection::EggCharacterCollection  ) 
 

Definition at line 43 of file eggCharacterCollection.cxx.

References _next_model_index.

EggCharacterCollection::~EggCharacterCollection  )  [virtual]
 

Definition at line 53 of file eggCharacterCollection.cxx.

References _characters.


Member Function Documentation

int EggCharacterCollection::add_egg EggData egg  ) 
 

Definition at line 76 of file eggCharacterCollection.cxx.

References _characters_by_model_index, _eggs, EggCharacterCollection::EggInfo::_first_model_index, EggCharacterCollection::EggInfo::_models, _next_model_index, _top_egg_nodes, EggCharacterData::add_model(), EggCharacterData::get_root_joint(), make_character(), match_egg_nodes(), nassertr, scan_for_morphs(), scan_for_sliders(), and scan_hierarchy().

Referenced by EggCharacterFilter::post_command_line(), and EggTopstrip::run().

void EggCharacterCollection::add_morph_back_pointers EggAttributes attrib,
EggObject egg_object,
int  model_index,
EggCharacterData char_data
[private]
 

Definition at line 410 of file eggCharacterCollection.cxx.

References EggAttributes::_dnormals, EggAttributes::_drgbas, EggAttributes::_duvs, EggSliderData::add_back_pointer(), EggMorphColor, EggMorphNormal, EggMorphTexCoord, and EggCharacterData::make_slider().

Referenced by scan_for_morphs().

void EggCharacterCollection::found_egg_match EggCharacterData char_data,
EggJointData joint_data,
EggNode egg_node,
int  egg_index,
int  model_index
[private]
 

Definition at line 588 of file eggCharacterCollection.cxx.

References EggJointData::add_back_pointer(), EggComponentData::add_name(), EggGroupNode::begin(), DCAST, EggGroupNode::end(), EggTable::get_class_type(), EggGroup::get_class_type(), EggGroupNode::get_class_type(), EggGroup::get_group_type(), Namable::get_name(), EggGroup::GT_joint, Namable::has_name(), TypedObject::is_of_type(), EggGroupNode::iterator, match_egg_nodes(), and table.

Referenced by match_egg_nodes().

INLINE EggCharacterData* EggCharacterCollection::get_character int  i  )  const
 

Referenced by EggTopstrip::run(), and EggCharacterFilter::write_eggs().

INLINE EggCharacterData* EggCharacterCollection::get_character_by_model_index int  model_index  )  const
 

Referenced by EggTopstrip::run().

EggCharacterData * EggCharacterCollection::get_character_by_name const string &  character_name  )  const
 

Definition at line 131 of file eggCharacterCollection.cxx.

References _characters, Namable::get_name(), and NULL.

INLINE EggData* EggCharacterCollection::get_egg int  i  )  const
 

INLINE int EggCharacterCollection::get_first_model_index int  egg_index  )  const
 

Referenced by EggTopstrip::run().

INLINE int EggCharacterCollection::get_num_characters  )  const
 

Referenced by EggTopstrip::run(), and EggCharacterFilter::write_eggs().

INLINE int EggCharacterCollection::get_num_eggs  )  const
 

Referenced by EggTopstrip::run().

INLINE int EggCharacterCollection::get_num_models int  egg_index  )  const
 

EggCharacterData * EggCharacterCollection::make_character const string &  character_name  ) 
 

Definition at line 194 of file eggCharacterCollection.cxx.

References _characters, Namable::get_name(), make_character_data(), and Namable::set_name().

Referenced by add_egg().

EggCharacterData * EggCharacterCollection::make_character_data  )  [virtual]
 

Definition at line 154 of file eggCharacterCollection.cxx.

Referenced by make_character().

EggJointData * EggCharacterCollection::make_joint_data EggCharacterData char_data  )  [virtual]
 

Definition at line 168 of file eggCharacterCollection.cxx.

Referenced by EggCharacterData::EggCharacterData(), and match_egg_nodes().

EggSliderData * EggCharacterCollection::make_slider_data EggCharacterData char_data  )  [virtual]
 

Definition at line 182 of file eggCharacterCollection.cxx.

Referenced by EggCharacterData::make_slider().

void EggCharacterCollection::match_egg_nodes EggCharacterData char_Data,
EggJointData joint_data,
EggNodeList egg_nodes,
int  egg_index,
int  model_index
[private]
 

Definition at line 448 of file eggCharacterCollection.cxx.

References EggJointData::_children, data, found_egg_match(), Namable::get_name(), make_joint_data(), and size_t.

Referenced by add_egg(), and found_egg_match().

void EggCharacterCollection::scan_for_morphs EggNode egg_node,
int  model_index,
EggCharacterData char_data
[private]
 

Definition at line 330 of file eggCharacterCollection.cxx.

References EggVertex::_dxyzs, EggSliderData::add_back_pointer(), add_morph_back_pointers(), EggGroupNode::begin(), EggPrimitive::begin(), EggPrimitive::const_iterator, DCAST, EggMorphVertex, EggGroupNode::end(), EggPrimitive::end(), EggGroupNode::get_class_type(), EggPrimitive::get_class_type(), TypedObject::is_of_type(), EggGroupNode::iterator, and EggCharacterData::make_slider().

Referenced by add_egg().

void EggCharacterCollection::scan_for_sliders EggNode egg_node,
int  model_index,
EggCharacterData char_data
[private]
 

Definition at line 370 of file eggCharacterCollection.cxx.

References EggSliderData::add_back_pointer(), EggGroupNode::begin(), DCAST, EggGroupNode::end(), EggSAnimData::get_class_type(), EggTable::get_class_type(), Namable::get_name(), TypedObject::is_of_type(), EggGroupNode::iterator, EggCharacterData::make_slider(), and table.

Referenced by add_egg().

void EggCharacterCollection::scan_for_top_joints EggNode egg_node,
EggNode model_root,
const string &  character_name
[private]
 

Definition at line 265 of file eggCharacterCollection.cxx.

References _top_egg_nodes, EggGroupNode::begin(), DCAST, EggGroupNode::end(), EggGroupNode::get_class_type(), EggGroup::get_class_type(), EggGroup::get_group_type(), EggGroup::GT_joint, EggGroup::has_lod(), TypedObject::is_of_type(), and EggGroupNode::iterator.

Referenced by scan_hierarchy().

void EggCharacterCollection::scan_for_top_tables EggTable bundle,
EggNode model_root,
const string &  character_name
[private]
 

Definition at line 298 of file eggCharacterCollection.cxx.

References _top_egg_nodes, EggGroupNode::begin(), DCAST, EggGroupNode::end(), EggTable::get_class_type(), TypedObject::is_of_type(), EggGroupNode::iterator, and table.

Referenced by scan_hierarchy().

bool EggCharacterCollection::scan_hierarchy EggNode egg_node  )  [private]
 

Definition at line 225 of file eggCharacterCollection.cxx.

References EggGroupNode::begin(), DCAST, EggGroup::DT_none, EggGroupNode::end(), EggGroupNode::get_class_type(), EggTable::get_class_type(), EggGroup::get_class_type(), EggGroup::get_dart_type(), Namable::get_name(), TypedObject::is_of_type(), EggGroupNode::iterator, scan_for_top_joints(), scan_for_top_tables(), table, and EggTable::TT_bundle.

Referenced by add_egg().

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

Definition at line 645 of file eggCharacterCollection.cxx.

References _characters, and EggCharacterData::write().


Member Data Documentation

Characters EggCharacterCollection::_characters
 

Definition at line 78 of file eggCharacterCollection.h.

Referenced by get_character_by_name(), make_character(), write(), and ~EggCharacterCollection().

Characters EggCharacterCollection::_characters_by_model_index
 

Definition at line 79 of file eggCharacterCollection.h.

Referenced by add_egg().

Eggs EggCharacterCollection::_eggs
 

Definition at line 75 of file eggCharacterCollection.h.

Referenced by add_egg().

int EggCharacterCollection::_next_model_index [private]
 

Definition at line 102 of file eggCharacterCollection.h.

Referenced by add_egg(), and EggCharacterCollection().

TopEggNodesByName EggCharacterCollection::_top_egg_nodes [private]
 

Definition at line 100 of file eggCharacterCollection.h.

Referenced by add_egg(), scan_for_top_joints(), and scan_for_top_tables().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 01:00:48 2003 for Panda-Tool by doxygen1.3