osgCal::Model Class Reference

List of all members.

Public Types

typedef std::map< std::string,
TargetMap
FlattenConf
typedef CoreModel::Textures2D Textures2D
typedef std::vector< osg::ref_ptr<
osg::Drawable > > 
Drawables
typedef std::map< int, DrawablesCoreMeshId2Drawables
typedef std::vector< int > VectorInt

Public Member Functions

 META_Object (osgCal, Model)
 Model ()
 Model (const Model &, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
bool create (void)
 Create model from a templated CoreModel. Remember to set CoreModel with setCoreModel function.
void update (void)
CoreModelgetCoreModel ()
 Retrieves CoreModel.
bool setCoreModel (CoreModel *coreModel)
 Sets CoreModel.
CalCoreModel * getCalCoreModel (void)
 Retrieves the Cal3d CalCoreModel.
CalModel * getCalModel (void)
 Retrieves the Cal3d CalModel associated with the current osgCalModel instance.
Textures2DgetTextures2D (const std::string &materialName)
 Retrieves the 2D textures given a material name.
Textures2DgetTextures2D (int coreMaterialId)
 Retrieves the 2D textures given a material id.
DrawablesgetDrawables (const std::string &materialName)
 Retrieves the drawables given a material name.
DrawablesgetDrawables (int coreMaterialId)
 Retrieves the drawables given a material id.
bool hasDrawables (int coreMeshId)
bool setPrivateTextures (const std::vector< std::string > &privateTextures)
bool setActiveMesh (const std::string &_meshName)
 Activates meshes.
bool setActiveMeshes (const std::vector< int > &activeMeshes)
const std::vector< int > & getActiveMeshes (void) const
bool bindMaterials (const std::string &meshName, const std::vector< std::string > &materials)
bool setInvisibleMesh (const std::string &meshName)
bool setInvisibleMeshes (const std::vector< int > &invisibleMeshes)
const std::vector< int > & getInvisibleMeshes (void) const
bool setCollisionMesh (const std::string &meshName)
bool setCollisionMeshNames (const std::vector< std::string > &meshNames)
const std::vector< std::string > & getCollisionMeshNames (void) const
bool setCollisionMeshes (const std::vector< int > &collisionMeshes)
const std::vector< int > & getCollisionMeshes (void) const
bool setUseVertexProgram (bool useVertexProgram)
bool getUseVertexProgram (void)
bool setUseColorOrTexture (bool useColorOrTexture)
bool getUseColorOrTexture (void)
bool bindMesh (const CoreModel::MeshDescription &meshDescription)
void unapplySlot (const std::string &slotType, int slotIndex)
std::vector< int > & getCoreMeshIdUsedForMesh (const std::string &_itemName)
const std::string & getItemUsedForMesh (int _coreMeshId)
std::vector< std::string > getMeshFromSlot (const std::string &slotType, int index=0)
bool getSlotListFromSlotType (const std::string &name, CoreModel::SlotBank &result)
bool applySlot (const std::string &slotType, const std::string &slotName, int slotIndex)
void setupLayers (const std::string &slotType, const std::string &slotName, int slotIndex)
void setupTLF (const std::string &slotType, int slotIndex)
void freeAllLayersRessource ()
void setFXGroup (osg::Group *_grp)
osg::Group * getFXGroup ()
void setFXState (osg::State *_state)
osg::State * getFXState ()
bool setParam (const std::string &name, const std::string &type, int value)
FlattenConfgetFlattenConfFromSlotType (const std::string &_type)
void flushTextureCache ()
bool removeCollisionMesh (const std::string &meshName)
bool removeInvisibleMesh (const std::string &meshName)
bool unBindMesh (const CoreModel::MeshDescription &meshDescription)
OutfitDescriptiongetOutfit ()
bool initOutfitFromXMLString (const std::string &xmlString, std::vector< std::string > *excludeMesh=0)
bool installOutfitFromXMLString (const std::string &xmlString)
bool applyParameterFromOutfitDescription ()
bool loadOutfit (OutfitDescription *outfit, std::vector< std::string > *toBeIgnored=NULL)

Static Public Member Functions

static void freeLayersRessource ()

Protected Member Functions

virtual ~Model ()

Classes

class  AppliedTextureWithParameter
struct  OutfitDescription
class  TargetMap

Member Typedef Documentation

typedef std::map<int,Drawables> osgCal::Model::CoreMeshId2Drawables

typedef std::vector<osg::ref_ptr<osg::Drawable> > osgCal::Model::Drawables

typedef std::map<std::string, TargetMap> osgCal::Model::FlattenConf

typedef CoreModel::Textures2D osgCal::Model::Textures2D

typedef std::vector<int> osgCal::Model::VectorInt


Constructor & Destructor Documentation

osgCal::Model::Model (  ) 

osgCal::Model::Model ( const Model ,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)

virtual osgCal::Model::~Model (  )  [protected, virtual]


Member Function Documentation

bool osgCal::Model::applyParameterFromOutfitDescription (  ) 

bool osgCal::Model::applySlot ( const std::string &  slotType,
const std::string &  slotName,
int  slotIndex 
)

bool osgCal::Model::bindMaterials ( const std::string &  meshName,
const std::vector< std::string > &  materials 
)

bool osgCal::Model::bindMesh ( const CoreModel::MeshDescription meshDescription  ) 

bool osgCal::Model::create ( void   ) 

Create model from a templated CoreModel. Remember to set CoreModel with setCoreModel function.

void osgCal::Model::flushTextureCache (  ) 

void osgCal::Model::freeAllLayersRessource (  ) 

static void osgCal::Model::freeLayersRessource (  )  [static]

const std::vector<int>& osgCal::Model::getActiveMeshes ( void   )  const [inline]

CalCoreModel* osgCal::Model::getCalCoreModel ( void   )  [inline]

Retrieves the Cal3d CalCoreModel.

CalModel* osgCal::Model::getCalModel ( void   )  [inline]

Retrieves the Cal3d CalModel associated with the current osgCalModel instance.

const std::vector<int>& osgCal::Model::getCollisionMeshes ( void   )  const [inline]

const std::vector<std::string>& osgCal::Model::getCollisionMeshNames ( void   )  const [inline]

std::vector<int>& osgCal::Model::getCoreMeshIdUsedForMesh ( const std::string &  _itemName  )  [inline]

CoreModel* osgCal::Model::getCoreModel (  )  [inline]

Retrieves CoreModel.

Drawables* osgCal::Model::getDrawables ( int  coreMaterialId  ) 

Retrieves the drawables given a material id.

Parameters:
materialId a valid materialId
Remarks:
Each material has map(s) associated, i.e. texture(s). The drawables are osg objects that can be rendered.

Drawables* osgCal::Model::getDrawables ( const std::string &  materialName  ) 

Retrieves the drawables given a material name.

Parameters:
materialName a valid materialName
Remarks:
Each material has map(s) associated, i.e. texture(s). The drawables are osg objects that can be rendered.

FlattenConf& osgCal::Model::getFlattenConfFromSlotType ( const std::string &  _type  )  [inline]

osg::Group* osgCal::Model::getFXGroup (  )  [inline]

osg::State* osgCal::Model::getFXState (  )  [inline]

const std::vector<int>& osgCal::Model::getInvisibleMeshes ( void   )  const [inline]

const std::string& osgCal::Model::getItemUsedForMesh ( int  _coreMeshId  )  [inline]

std::vector<std::string> osgCal::Model::getMeshFromSlot ( const std::string &  slotType,
int  index = 0 
)

OutfitDescription* osgCal::Model::getOutfit (  )  [inline]

bool osgCal::Model::getSlotListFromSlotType ( const std::string &  name,
CoreModel::SlotBank result 
)

Textures2D* osgCal::Model::getTextures2D ( int  coreMaterialId  ) 

Retrieves the 2D textures given a material id.

Parameters:
materialId a valid material Id
Remarks:
Each material has map(s) associated, i.e. texture(s).

Textures2D* osgCal::Model::getTextures2D ( const std::string &  materialName  ) 

Retrieves the 2D textures given a material name.

Parameters:
materialName a valid materialName
Remarks:
Each material has map(s) associated, i.e. texture(s).

bool osgCal::Model::getUseColorOrTexture ( void   )  [inline]

bool osgCal::Model::getUseVertexProgram ( void   )  [inline]

bool osgCal::Model::hasDrawables ( int  coreMeshId  ) 

bool osgCal::Model::initOutfitFromXMLString ( const std::string &  xmlString,
std::vector< std::string > *  excludeMesh = 0 
)

bool osgCal::Model::installOutfitFromXMLString ( const std::string &  xmlString  ) 

bool osgCal::Model::loadOutfit ( OutfitDescription outfit,
std::vector< std::string > *  toBeIgnored = NULL 
)

osgCal::Model::META_Object ( osgCal  ,
Model   
)

bool osgCal::Model::removeCollisionMesh ( const std::string &  meshName  ) 

bool osgCal::Model::removeInvisibleMesh ( const std::string &  meshName  ) 

bool osgCal::Model::setActiveMesh ( const std::string &  _meshName  ) 

Activates meshes.

Parameters:
meshName name of the mesh to active
Remarks:
By default all the meshes are set to active.

bool osgCal::Model::setActiveMeshes ( const std::vector< int > &  activeMeshes  )  [inline]

bool osgCal::Model::setCollisionMesh ( const std::string &  meshName  ) 

bool osgCal::Model::setCollisionMeshes ( const std::vector< int > &  collisionMeshes  )  [inline]

bool osgCal::Model::setCollisionMeshNames ( const std::vector< std::string > &  meshNames  ) 

bool osgCal::Model::setCoreModel ( CoreModel coreModel  ) 

Sets CoreModel.

Returns:
false if case of error, otherwise true.

void osgCal::Model::setFXGroup ( osg::Group *  _grp  )  [inline]

void osgCal::Model::setFXState ( osg::State *  _state  )  [inline]

bool osgCal::Model::setInvisibleMesh ( const std::string &  meshName  ) 

bool osgCal::Model::setInvisibleMeshes ( const std::vector< int > &  invisibleMeshes  )  [inline]

bool osgCal::Model::setParam ( const std::string &  name,
const std::string &  type,
int  value 
)

bool osgCal::Model::setPrivateTextures ( const std::vector< std::string > &  privateTextures  ) 

Set private textures of current model.

Parameters:
privateTextures a container of textures names
Returns:
true in case of succes.
Remarks:
texture names must correspond to material names. In fact the user will with this function set the textures which are not shared with other model instances gotten from the templated CoreModel. If CoreModel or the material associated with a texture name doesn't exist false is returned.

void osgCal::Model::setupLayers ( const std::string &  slotType,
const std::string &  slotName,
int  slotIndex 
)

void osgCal::Model::setupTLF ( const std::string &  slotType,
int  slotIndex 
)

bool osgCal::Model::setUseColorOrTexture ( bool  useColorOrTexture  )  [inline]

bool osgCal::Model::setUseVertexProgram ( bool  useVertexProgram  ) 

void osgCal::Model::unapplySlot ( const std::string &  slotType,
int  slotIndex 
)

bool osgCal::Model::unBindMesh ( const CoreModel::MeshDescription meshDescription  ) 

void osgCal::Model::update ( void   ) 


The documentation for this class was generated from the following file:
Generated on Sun Oct 15 08:44:41 2006 for osgCal by  doxygen 1.4.7