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 Model::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::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::removeCollisionMesh const std::string &  meshName  ) 
 

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

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 Thu Feb 9 23:43:05 2006 for osgCal by  doxygen 1.4.6