VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
DtObjectGeometricModelsManager Class Reference

Manages loading and destruction of object models. More...

Public Member Functions

 DtObjectGeometricModelsManager (DtVrfObjectManager *)
 default constructor More...
 
virtual ~DtObjectGeometricModelsManager ()
 destructor More...
 
virtual boost::shared_ptr
< DtTerrainInterface
objectModelEntry (const DtUUID &parent)
 Given the parent name, looks up the parent in the object manager. More...
 
virtual boost::shared_ptr
< DtTerrainInterface
objectModelEntry (const DtObjectType &type)
 
virtual boost::shared_ptr
< DtTerrainInterface
objectModelEntry (const DtVrfObjectParameters *, const DtEntityType &)
 If object model for entry does not exist, returns new object model for that type and adds it to the internal list. More...
 
virtual boost::shared_ptr
< DtTerrainInterface
lookupModelEntry (const DtMovingObjectParameters &) const
 Looks up and returns a model for a given type. More...
 
virtual boost::shared_ptr
< DtTerrainInterface
addModelEntry (const DtVrfObjectParameters *, const DtEntityType &)
 Adds a new model. More...
 
virtual void remove (const DtMovingObjectParameters &objectType)
 Remove the entry for the given object type from the database. More...
 
virtual void removeAll ()
 Remove all entries in the parameter database. More...
 
virtual boost::shared_ptr
< DtTerrainInterface
createObjectModelEntry (const DtVrfObjectParameters *, const DtEntityType &)
 Creates a new object model (and loads the terrain or creates a new terrain database) and returns it. More...
 
virtual void init ()
 

Protected Types

typedef boost::unordered_map
< std::string,
boost::shared_ptr
< DtTerrainInterface > > 
DtObjectModelContainer
 
typedef
DtObjectModelContainer::iterator 
DtObjectModelIter
 
typedef
DtObjectModelContainer::const_iterator 
DtObjectModelConstIter
 

Protected Member Functions

virtual boost::shared_ptr
< DtTerrainInterface
createObjectModel (const DtFilename &, const DtEntityType &s) const
 Creates a new object model from the visuals provided by the entity type. More...
 

Protected Attributes

DtObjectModelContainer myObjectModels
 
DtVrfObjectManagermyObjectManager
 

Detailed Description

Manages loading and destruction of object models.

Will reference the object parameter database to load up parameter entries to find their object model. If an entry does not have an object model associated with it, then an alternate representation object model will be constructed out of the entity's extent.

Member Typedef Documentation

typedef boost::unordered_map<std::string, boost::shared_ptr<DtTerrainInterface> > DtObjectGeometricModelsManager::DtObjectModelContainer
protected
typedef DtObjectModelContainer::iterator DtObjectGeometricModelsManager::DtObjectModelIter
protected
typedef DtObjectModelContainer::const_iterator DtObjectGeometricModelsManager::DtObjectModelConstIter
protected

Constructor & Destructor Documentation

DtObjectGeometricModelsManager::DtObjectGeometricModelsManager ( DtVrfObjectManager )

default constructor

virtual DtObjectGeometricModelsManager::~DtObjectGeometricModelsManager ( )
virtual

destructor

Member Function Documentation

virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::objectModelEntry ( const DtUUID parent)
virtual

Given the parent name, looks up the parent in the object manager.

If model exists for that object type, returns the object model for that. If not, adds the new object model to the list and returns the new entry

virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::objectModelEntry ( const DtObjectType type)
virtual
virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::objectModelEntry ( const DtVrfObjectParameters ,
const DtEntityType &   
)
virtual

If object model for entry does not exist, returns new object model for that type and adds it to the internal list.

virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::lookupModelEntry ( const DtMovingObjectParameters ) const
virtual

Looks up and returns a model for a given type.

virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::addModelEntry ( const DtVrfObjectParameters ,
const DtEntityType &   
)
virtual

Adds a new model.

virtual void DtObjectGeometricModelsManager::remove ( const DtMovingObjectParameters objectType)
virtual

Remove the entry for the given object type from the database.

Deletes the memory associated with the entry.

virtual void DtObjectGeometricModelsManager::removeAll ( )
virtual

Remove all entries in the parameter database.

Deletes memory associated with entries in the database.

virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::createObjectModelEntry ( const DtVrfObjectParameters ,
const DtEntityType &   
)
virtual

Creates a new object model (and loads the terrain or creates a new terrain database) and returns it.

Also sets the object model should delete the terrain database on deletion

virtual void DtObjectGeometricModelsManager::init ( )
virtual
virtual boost::shared_ptr<DtTerrainInterface> DtObjectGeometricModelsManager::createObjectModel ( const DtFilename &  ,
const DtEntityType &  s 
) const
protectedvirtual

Creates a new object model from the visuals provided by the entity type.

If the underlying system does not support this then no object model will be created. If the filename is empty the underlying code should use the entity type for the visuals

Member Data Documentation

DtObjectModelContainer DtObjectGeometricModelsManager::myObjectModels
protected
DtVrfObjectManager* DtObjectGeometricModelsManager::myObjectManager
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)