VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
DtDynamicTerrainManager Class Reference

Handles the any dynamic changes to the terrain. There is only one environmental state for the whole simulation. This manager provides access to information about dynamic terrain changes and is responsible for updating the terrain from the network.

Public Member Functions

 DtDynamicTerrainManager (DtSimulationServices *simManager)
 
virtual ~DtDynamicTerrainManager ()
 
virtual bool init ()
 
virtual const
DtDynamicTerrainItemMap
dynamicTerrainChanges () const
 
virtual void processTerrainUnloaded ()
 
virtual void tick (DtVrfCallbackQueue *)
 

Protected Member Functions

virtual void processTerrainLoaded ()
 
virtual void updateDynamicTerrainItem (const DtTerrainGeometryAndData &newData, DtDynamicTerrainItem &terrainItem, bool forceUpdate)
 
virtual void dynamicTerrainObjectRemoved (const makVrf::DtDynamicTerrainStateComponent *stateRep)
 
virtual void dynamicTerrainObjectUpdated (const makVrf::DtDynamicTerrainStateComponent *stateRep, const DtTerrainGeometryAndData &, unsigned id)
 
virtual void processDynamicTerrainObjectAdded (const makVrf::DtFrameStateInterface *object)
 
virtual void processDynamicTerrainAdded (makVrf::DtStateComponent *object)
 
virtual void processDynamicTerrainObjectUpdated (const makVrf::DtFrameStateInterface *object)
 
virtual void processDynamicTerrainObjectRemoved (const makVrf::DtFrameStateInterface *object)
 
virtual void processDynamicTerrainRemoved (makVrf::DtStateComponent *object)
 

Protected Attributes

DtSimulationServicesmySimulationServices
 
tbb::spin_mutex myMutex
 
DtDynamicTerrainItemMap myDynamicTerrainChanges
 
boost::signals2::scoped_connection mySignalWhenStateComponentAdded
 
boost::signals2::scoped_connection mySignalWhenStateComponentRemoved
 
bool myNeedPostTickEntryAdded
 
std::map< const
makVrf::DtDynamicTerrainStateComponent
*, std::map< unsigned,
DtTerrainGeometryAndData > > 
myDynamicTerrainStatesToUpdate
 

Private Member Functions

 DtDynamicTerrainManager (const DtDynamicTerrainManager &orig)
 
const DtDynamicTerrainManageroperator= (const DtDynamicTerrainManager &orig)
 
 DtDynamicTerrainManager ()
 
static void checkIfTerrainLoadedCallback (void *usr)
 
virtual void checkIfTerrainLoaded ()
 

Constructor & Destructor Documentation

DtDynamicTerrainManager::DtDynamicTerrainManager ( const DtDynamicTerrainManager orig)
private

Not implemented.

DtDynamicTerrainManager::DtDynamicTerrainManager ( )
private

Not implemented.

DtDynamicTerrainManager::DtDynamicTerrainManager ( DtSimulationServices simManager)

Constructor.

virtual DtDynamicTerrainManager::~DtDynamicTerrainManager ( )
virtual

Destructor.

Member Function Documentation

const DtDynamicTerrainManager& DtDynamicTerrainManager::operator= ( const DtDynamicTerrainManager orig)
private

Not implemented.

virtual bool DtDynamicTerrainManager::init ( )
virtual

Performs initialization and registers for network callbacks.

virtual const DtDynamicTerrainItemMap& DtDynamicTerrainManager::dynamicTerrainChanges ( ) const
virtual

Get the list of all dynamic terrain changes.

virtual void DtDynamicTerrainManager::processTerrainUnloaded ( )
virtual

Processes terrain being unloaded.

virtual void DtDynamicTerrainManager::tick ( DtVrfCallbackQueue )
virtual
static void DtDynamicTerrainManager::checkIfTerrainLoadedCallback ( void *  usr)
staticprotected

Callback to check if terrain is loaded and create the reflected list.

virtual void DtDynamicTerrainManager::checkIfTerrainLoaded ( )
protectedvirtual

Callback to check if terrain is loaded and create the reflected list.

virtual void DtDynamicTerrainManager::processTerrainLoaded ( )
protectedvirtual

Processes terrain being loaded.

virtual void DtDynamicTerrainManager::updateDynamicTerrainItem ( const DtTerrainGeometryAndData newData,
DtDynamicTerrainItem terrainItem,
bool  forceUpdate 
)
protectedvirtual

Processes incoming dynamic terrain data for an existing item. If the event number has changed, makes the appropriate requests to alter the terrain. Then updates the terrainItem. If forceUpdate is true, changes are made regardless of whether event number has changed.

virtual void DtDynamicTerrainManager::processDynamicTerrainObjectAdded ( const makVrf::DtFrameStateInterface object)
protectedvirtual

Callback for the addition of new dynamic terrain objects.

virtual void DtDynamicTerrainManager::processDynamicTerrainAdded ( makVrf::DtStateComponent object)
protectedvirtual

Callback for the addition of new dynamic terrain objects.

virtual void DtDynamicTerrainManager::processDynamicTerrainObjectUpdated ( const makVrf::DtFrameStateInterface object)
protectedvirtual

Callback for the update of dynamic terrain objects.

virtual void DtDynamicTerrainManager::processDynamicTerrainObjectRemoved ( const makVrf::DtFrameStateInterface object)
protectedvirtual

Callback for the removal of dynamic terrain objects.

virtual void DtDynamicTerrainManager::processDynamicTerrainRemoved ( makVrf::DtStateComponent object)
protectedvirtual

Callback for the removal of dynamic terrain objects.

virtual void DtDynamicTerrainManager::dynamicTerrainObjectRemoved ( const makVrf::DtDynamicTerrainStateComponent stateRep)
protectedvirtual
virtual void DtDynamicTerrainManager::dynamicTerrainObjectUpdated ( const makVrf::DtDynamicTerrainStateComponent stateRep,
const DtTerrainGeometryAndData ,
unsigned  id 
)
protectedvirtual

Member Data Documentation

DtSimulationServices* DtDynamicTerrainManager::mySimulationServices
protected
tbb::spin_mutex DtDynamicTerrainManager::myMutex
protected
DtDynamicTerrainItemMap DtDynamicTerrainManager::myDynamicTerrainChanges
protected
boost::signals2::scoped_connection DtDynamicTerrainManager::mySignalWhenStateComponentAdded
protected
boost::signals2::scoped_connection DtDynamicTerrainManager::mySignalWhenStateComponentRemoved
protected
bool DtDynamicTerrainManager::myNeedPostTickEntryAdded
protected
std::map<const makVrf::DtDynamicTerrainStateComponent*, std::map<unsigned, DtTerrainGeometryAndData> > DtDynamicTerrainManager::myDynamicTerrainStatesToUpdate
protected

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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)