# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CLodCharacterShapeBank Class Reference

A Bank of CLodCharacterShape. More...

#include <lod_character_shape_bank.h>

List of all members.

Public Methods

 CLodCharacterShapeBank ()
 Constructor. More...

void serial (NLMISC::IStream &f)
 serial. More...

build process
void reset ()
 reset the shapeBank. More...

uint32 addShape ()
 Just add a shape to the bank. Use getShapeFullAcces() to fill it. return id of the shape. More...

sint32 getShapeIdByName (const std::string &name) const
 Get a shapeId by its name. More...

const CLodCharacterShapegetShape (uint32 shapeId) const
 Get a const ref on a shape. Ptr not valid after addShape(). NULL if not found. More...

CLodCharacterShapegetShapeFullAcces (uint32 shapeId)
 Get a ptr on a shape. More...

bool compile ()
 re-compile the shape Bank. More...

uint getNumShapes () const
 get number of shape. This is also the MaxID+1. More...


Private Types

typedef std::map< std::string,
uint32
TStrIdMap
 Map name To Id. More...

typedef TStrIdMap::iterator ItStrIdMap
typedef TStrIdMap::const_iterator CstItStrIdMap

Private Attributes

std::vector< CLodCharacterShape_ShapeArray
 Array of shape. More...

TStrIdMap _ShapeMap
 Map of shape id. More...


Detailed Description

A Bank of CLodCharacterShape.

Can contains at max 65536 shapes. You must call compile() after changing the shape bank.

Author:
Lionel Berenguier , Nevrax France
Date:
2002

Definition at line 44 of file lod_character_shape_bank.h.


Member Typedef Documentation

typedef TStrIdMap::const_iterator NL3D::CLodCharacterShapeBank::CstItStrIdMap [private]
 

Definition at line 93 of file lod_character_shape_bank.h.

Referenced by getShapeIdByName.

typedef TStrIdMap::iterator NL3D::CLodCharacterShapeBank::ItStrIdMap [private]
 

Definition at line 92 of file lod_character_shape_bank.h.

Referenced by compile.

typedef std::map<std::string, uint32> NL3D::CLodCharacterShapeBank::TStrIdMap [private]
 

Map name To Id.

Definition at line 91 of file lod_character_shape_bank.h.


Constructor & Destructor Documentation

NL3D::CLodCharacterShapeBank::CLodCharacterShapeBank  
 

Constructor.

Definition at line 41 of file lod_character_shape_bank.cpp.


Member Function Documentation

uint32 NL3D::CLodCharacterShapeBank::addShape  
 

Just add a shape to the bank. Use getShapeFullAcces() to fill it. return id of the shape.

Definition at line 53 of file lod_character_shape_bank.cpp.

References _ShapeArray.

bool NL3D::CLodCharacterShapeBank::compile  
 

re-compile the shape Bank.

This must be called after changing a shape, or after adding all your shapes. It return false if same names have been found, but it is still correctly builded.

Definition at line 90 of file lod_character_shape_bank.cpp.

References _ShapeArray, _ShapeMap, NLMISC::contReset, ItStrIdMap, and nlwarning.

uint NL3D::CLodCharacterShapeBank::getNumShapes   const
 

get number of shape. This is also the MaxID+1.

Definition at line 115 of file lod_character_shape_bank.cpp.

References _ShapeArray.

const CLodCharacterShape * NL3D::CLodCharacterShapeBank::getShape uint32    shapeId const
 

Get a const ref on a shape. Ptr not valid after addShape(). NULL if not found.

Definition at line 72 of file lod_character_shape_bank.cpp.

References _ShapeArray.

CLodCharacterShape * NL3D::CLodCharacterShapeBank::getShapeFullAcces uint32    shapeId
 

Get a ptr on a shape.

Ptr not valid after addShape(). NULL if not found May be used for example to replace the shape

Definition at line 81 of file lod_character_shape_bank.cpp.

References _ShapeArray.

sint32 NL3D::CLodCharacterShapeBank::getShapeIdByName const std::string &    name const
 

Get a shapeId by its name.

-1 if not found. Possible Values are in 0-65535 Call valid only if compile() has been correctly called

Definition at line 62 of file lod_character_shape_bank.cpp.

References _ShapeMap, and CstItStrIdMap.

void NL3D::CLodCharacterShapeBank::reset  
 

reset the shapeBank.

Definition at line 46 of file lod_character_shape_bank.cpp.

References _ShapeArray, _ShapeMap, and NLMISC::contReset.

void NL3D::CLodCharacterShapeBank::serial NLMISC::IStream   f
 

serial.

Definition at line 121 of file lod_character_shape_bank.cpp.

References _ShapeArray, _ShapeMap, NLMISC::IStream::serialCont, and NLMISC::IStream::serialVersion.


Member Data Documentation

std::vector<CLodCharacterShape> NL3D::CLodCharacterShapeBank::_ShapeArray [private]
 

Array of shape.

Definition at line 99 of file lod_character_shape_bank.h.

Referenced by addShape, compile, getNumShapes, getShape, getShapeFullAcces, reset, and serial.

TStrIdMap NL3D::CLodCharacterShapeBank::_ShapeMap [private]
 

Map of shape id.

Definition at line 102 of file lod_character_shape_bank.h.

Referenced by compile, getShapeIdByName, reset, and serial.


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