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 | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions
makVrv::DtIndirectEntityManager Class Reference

singleton class that acts as a bridge between the

See Also
DtOsgArticulatedModel & the indirect rendering (DtIndirectGoemetry). It routes functions/state on
DtOsgArticulatedModel to
DtIndirectGeometry. It does this by maintaining an internal map of
DtOsgArticulatedModel to the corresponding
DtIndirectEntityManagerInstance (the unique id is used as the key). The indirect geometries are held/created/deleted by the
DtIndirectGeometryGrid which contains a geo located cell for each area that has at least one entity. As entities move around they can move between cells as needed. There is also a
DtIndirectGeometryGrid per model set so that each model set.
Inheritance diagram for makVrv::DtIndirectEntityManager:
Inheritance graph
[legend]

Public Member Functions

virtual ~DtIndirectEntityManager ()
 
virtual bool addInstance (DtUniqueID uniqueId, const DtModelDefinition &modelDefinition, const DtOsgModelInstance &modelInstance, DtModel *model, int modelSet, float modelScale, float modelRadius, bool daylightControlled, bool mapDofsSwitchesSequences, int lightPointGroupId)
 
virtual bool addInstanceAsProp (DtUniqueID uniqueId, const DtModelDefinition &modelDefinition, const DtOsgModelInstance &modelInstance, DtModel *model, float modelScale, float modelRadius, bool daylightControlled, bool mapDofsSwitchesSequences, int lightPointGroupId)
 
virtual bool hasInstance (DtUniqueID uniqueId) const
 
virtual void removeInstance (DtUniqueID uniqueID)
 
virtual int numInstances (void) const
 
virtual void mapMultiSwitches (DtUniqueID uniqueID, DtArticulatedModelParser::MapStateNumberToMultiSwitchList &multiSwitchesOfInstance)
 
virtual void unMapMultiSwitches (DtUniqueID uniqueID)
 
virtual void mapSequences (DtUniqueID uniqueID, DtArticulatedModelParser::AnimationMap &animationMap)
 
virtual void unMapSequences (DtUniqueID uniqueID)
 
virtual void mapDofs (DtUniqueID uniqueID, DtArticulatedModelParser::PartMap &partMap)
 
virtual void unMapDofs (DtUniqueID uniqueID)
 
virtual void setMultiSwitchActiveSwitchSet (DtUniqueID id, osgSim::MultiSwitch *multiSwitchOfInstance)
 
virtual void setSequenceUpdate (DtUniqueID uniqueID, osg::Sequence *dof)
 
virtual void setUvOffsetUpdate (DtUniqueID uniqueID, const std::string &annotation, float uOffset, float vOffset)
 
virtual void scrollUvTextures (DtUniqueID uniqueID, const std::tuple< float, float, float > &uvspeeds)
 
virtual void setDofUpdate (DtUniqueID uniqueID, osgSim::DOFTransform *dof)
 
virtual void setDofTranslation (DtUniqueID uniqueID, osgSim::DOFTransform *dof, const Vector3_64 &trans, const Vector3_64 &transVel)
 
virtual void setDofOrientation (DtUniqueID uniqueID, osgSim::DOFTransform *dof, const Vector3_64 &hpr, const Vector3_64 &hprVel, int animationFlags)
 
virtual void setDofOrientation (DtUniqueID uniqueID, osgSim::DOFTransform *dof, const Vector3_64 &hprVel, bool forceUpdate, int animationFlags)
 
void slot_atcGlobalModelEnableChanged ()
 
virtual void setPositionAndOrientation (DtUniqueID uniqueId, const DtVector &position, const DtTaitBryan &orientation, const DtVector &positionOffset, const DtTaitBryan &orientationOffset)
 
virtual void setColor (DtUniqueID uniqueId, const Vector4_32 &color)
 
virtual void setOtherData0 (DtUniqueID uniqueId, const Vector4_32 &data)
 
virtual void setVisible (DtUniqueID uniqueId, bool visible)
 
virtual void setLightPointMaxDistance (DtUniqueID uniqueId, float maxDistance)
 
virtual void slot_postTick ()
 
virtual void excludeTextureFromLimits (const std::string &textureFileAbolutePath)
 
virtual void excludeModelDefinitionFromLimits (const std::string &modelDefinition)
 
virtual void setTextureLoadTimeSlicePeriod (float period)
 
virtual float textureLoadTimeSlicePeriod (void) const
 
virtual void setUpdateBuffersJobsRequiredCurrentFrame (bool requiredCurrentFrame)
 
virtual bool updateBuffersJobsRequiredCurrentFrame (void) const
 
virtual void setGridCellSize (const Vector3_64 &gridCellSize)
 
virtual const Vector3_64gridCellSize (void) const
 
virtual void setCellPageOutTime (double val)
 
virtual double cellPageOutTime (void) const
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Static Public Member Functions

static DtIndirectEntityManagerinstance (DtDe &de)
 

Public Attributes

Signals
boost::signalslib::signal
< void(DtModel *, DtUniqueID)> 
signal_instanceAdded
 

Protected Types

typedef std::unordered_map
< int, DtIndirectGeometryGrid * > 
MapModelSetToDtIndirectGeometryGrids
 
typedef std::unordered_map
< DtUniqueID,
DtIndirectEntityManagerInstance
MapUniqueIdsToEntityManagerInstances
 
typedef std::unordered_map
< osgSim::MultiSwitch
*, osg::ref_ptr
< osgSim::MultiSwitch > > 
MapMultiSwitchesToMultiSwitches
 
typedef std::unordered_map
< DtUniqueID,
MapMultiSwitchesToMultiSwitches
MapInstanceMultiSwitchesToMasterMultiSwitches
 
typedef std::unordered_map
< std::string,
DtArticulatedModelParser::MapStateNumberToMultiSwitchList
MapModelNameToMasterMapStateNumberToMultiSwitchList
 
typedef std::unordered_map
< std::string,
DtArticulatedModelParser::PartMap
MapModelNameToMasterMapStateNumberToDof
 
typedef std::unordered_map
< osgSim::DOFTransform
*, osg::ref_ptr
< osgSim::DOFTransform > > 
MapDofToDof
 
typedef std::unordered_map
< DtUniqueID, MapDofToDof
MapInstanceDofToMasterDof
 
typedef std::unordered_map
< std::string,
DtArticulatedModelParser::AnimationMap
MapModelNameToMasterMapStateNumberToSequence
 
typedef std::unordered_map
< osg::Sequence
*, osg::ref_ptr< osg::Sequence > > 
MapSequenceToSequence
 
typedef std::unordered_map
< DtUniqueID,
MapSequenceToSequence
MapInstanceSequenceToMasterSequence
 
typedef std::unordered_map
< Vector3_int,
DtIndirectGridCellTime,
DtIndirectCellHasher
CellIdsWithZeroInstancesUpTime
 
typedef std::unordered_map
< int,
CellIdsWithZeroInstancesUpTime
GridToCellIdsWithZeroInstancesUpTime
 

Protected Member Functions

 DtIndirectEntityManager (DtDe &de)
 
virtual
DtIndirectEntityManagerInstanceMoveInfo
createMoveInfoIfNecessary (const DtVector &position, DtIndirectEntityManagerInstance &currentEntityManagerInstance, DtUniqueID uniqueId)
 
virtual void configureIndirectGeometry (DtIndirectGeometry *indirectGeometry)
 
virtual osgSim::DOFTransform * findMasterDof (DtUniqueID uniqueID, osgSim::DOFTransform *dof) const
 
virtual DtIndirectEntityGeometryfindIndirectGeometryAndInstanceId (DtUniqueID uniqueID, int &instanceId) const
 
virtual void calculateAndSetInstanceMatrixTransform (const DtVector &position, const DtTaitBryan &orientation, const DtVector &positionOffset, const DtTaitBryan &orientationOffset, DtIndirectEntityGeometry *indirectGeometry, int instanceId)
 
virtual void tickEntityMoves (void)
 
virtual void tickPaging (void)
 
virtual bool instanceIsBeingMovedTo (const Vector3_int &cellId)
 
void setupRootNodes ()
 
virtual void setupReductionExcludeTextures ()
 
virtual void updateStats ()
 

Protected Attributes

DtDemyDe
 
DtSignalConnectionManager myConnections
 
bool myUpdateBuffersJobsRequiredCurrentFrame
 
Vector3_64 myGridCellSize
 
MapModelSetToDtIndirectGeometryGrids myMapModelSetToDtIndirectGeometryGrids
 
MapUniqueIdsToEntityManagerInstances myMapUniqueIdsToEntityManagerInstances
 
MapModelNameToMasterMapStateNumberToMultiSwitchList myMapModelNameToMasterMapStateNumberToMultiSwitchList
 
MapInstanceMultiSwitchesToMasterMultiSwitches myMapInstanceMultiSwitchesToMasterMultiSwitches
 
MapModelNameToMasterMapStateNumberToDof myMapModelNameToMasterMapStateNumberToDof
 
MapInstanceDofToMasterDof myMapInstanceDofToMasterDof
 
MapModelNameToMasterMapStateNumberToSequence myMapModelNameToMasterMapStateNumberToSequence
 
MapInstanceSequenceToMasterSequence myMapInstanceSequenceToMasterSequence
 
std::unordered_map< DtUniqueID,
DtIndirectEntityManagerInstanceMoveInfo * > 
myInstancesBeingMoved
 
boost::mutex myInstancesBeingMovedMutex
 
GridToCellIdsWithZeroInstancesUpTime myGridToCellIdsWithZeroInstancesUpTime
 
double myCellPageOutTime
 
Vector3_64 myLastObserverLocation
 

Private Member Functions

 DtIndirectEntityManager ()=delete
 
 DtIndirectEntityManager (const DtIndirectEntityManager &)=delete
 
DtIndirectEntityManageroperator= (const DtIndirectEntityManager &)=delete
 

Member Typedef Documentation

There is one grid per model set type in the manager Each grid contains a list of 'cells' Each cell contains an indirect geometry each indirect geometry contains a number of instances.

map of unique ids to the corresponding DtIndirectEntityManagerInstances

typedef std::unordered_map< osgSim::MultiSwitch*, osg::ref_ptr<osgSim::MultiSwitch> > makVrv::DtIndirectEntityManager::MapMultiSwitchesToMultiSwitches
protected
typedef std::unordered_map< osgSim::DOFTransform*, osg::ref_ptr<osgSim::DOFTransform> > makVrv::DtIndirectEntityManager::MapDofToDof
protected
typedef std::unordered_map< osg::Sequence*, osg::ref_ptr<osg::Sequence> > makVrv::DtIndirectEntityManager::MapSequenceToSequence
protected

map of inactive cells to their start and current time

map of each grid (model set) to inactive cells in that grid

Constructor & Destructor Documentation

virtual makVrv::DtIndirectEntityManager::~DtIndirectEntityManager ( )
virtual

destructor

makVrv::DtIndirectEntityManager::DtIndirectEntityManager ( DtDe de)
protected

constructor. protected. only creator can create

makVrv::DtIndirectEntityManager::DtIndirectEntityManager ( )
privatedelete

private default constructor. not allowed.

makVrv::DtIndirectEntityManager::DtIndirectEntityManager ( const DtIndirectEntityManager )
privatedelete

prevent copy-construction

Member Function Documentation

static DtIndirectEntityManager& makVrv::DtIndirectEntityManager::instance ( DtDe de)
static

Get an instance of the instance manager.

DtIndirectEntityManager& makVrv::DtIndirectEntityManager::operator= ( const DtIndirectEntityManager )
privatedelete

prevent assignment

virtual bool makVrv::DtIndirectEntityManager::addInstance ( DtUniqueID  uniqueId,
const DtModelDefinition modelDefinition,
const DtOsgModelInstance modelInstance,
DtModel model,
int  modelSet,
float  modelScale,
float  modelRadius,
bool  daylightControlled,
bool  mapDofsSwitchesSequences,
int  lightPointGroupId 
)
virtual

add an instance returns true if the instance was added. false if the model was unable to be added like there is no renderable geometry in the model

virtual bool makVrv::DtIndirectEntityManager::addInstanceAsProp ( DtUniqueID  uniqueId,
const DtModelDefinition modelDefinition,
const DtOsgModelInstance modelInstance,
DtModel model,
float  modelScale,
float  modelRadius,
bool  daylightControlled,
bool  mapDofsSwitchesSequences,
int  lightPointGroupId 
)
virtual

add an instance as a prop. This just calls addInstance with a model set of -1 under the hood. Props are added to the prop root and rendered in all observer modes. returns true if the instance was added.

virtual bool makVrv::DtIndirectEntityManager::hasInstance ( DtUniqueID  uniqueId) const
virtual

check whether an instance with this id exists.

virtual void makVrv::DtIndirectEntityManager::removeInstance ( DtUniqueID  uniqueID)
virtual

remove an instance

virtual int makVrv::DtIndirectEntityManager::numInstances ( void  ) const
virtual

number of instances added to our manager

virtual void makVrv::DtIndirectEntityManager::mapMultiSwitches ( DtUniqueID  uniqueID,
DtArticulatedModelParser::MapStateNumberToMultiSwitchList multiSwitchesOfInstance 
)
virtual

A model instance multi switches & sequences have the same hierarchy/positions as the original model (or first instance) because its cloned (so that per-entity switches/multi-switches can be manipulated on a per-instance basis) Indirect geometry maintains a list of the original/master switches from the original model in the same hierarchy This function is needed to be called so that it will map an instance multi-switches to the 'master' multi-switches We use the first instance as the 'master'.

virtual void makVrv::DtIndirectEntityManager::unMapMultiSwitches ( DtUniqueID  uniqueID)
virtual

unmap previously mapped switches of the model instance

virtual void makVrv::DtIndirectEntityManager::mapSequences ( DtUniqueID  uniqueID,
DtArticulatedModelParser::AnimationMap animationMap 
)
virtual

Similarly, map sequences.

virtual void makVrv::DtIndirectEntityManager::unMapSequences ( DtUniqueID  uniqueID)
virtual

unmap previously mapped sequences

virtual void makVrv::DtIndirectEntityManager::mapDofs ( DtUniqueID  uniqueID,
DtArticulatedModelParser::PartMap partMap 
)
virtual

Similarly, dofs.

virtual void makVrv::DtIndirectEntityManager::unMapDofs ( DtUniqueID  uniqueID)
virtual

unmap previously mapped dofs

virtual void makVrv::DtIndirectEntityManager::setMultiSwitchActiveSwitchSet ( DtUniqueID  id,
osgSim::MultiSwitch *  multiSwitchOfInstance 
)
virtual

set the multi-switch state on a multi-switch of an instance

virtual void makVrv::DtIndirectEntityManager::setSequenceUpdate ( DtUniqueID  uniqueID,
osg::Sequence *  dof 
)
virtual

set sequence update

virtual void makVrv::DtIndirectEntityManager::setUvOffsetUpdate ( DtUniqueID  uniqueID,
const std::string &  annotation,
float  uOffset,
float  vOffset 
)
virtual

set the uv offset for a particular model and annotation

virtual void makVrv::DtIndirectEntityManager::scrollUvTextures ( DtUniqueID  uniqueID,
const std::tuple< float, float, float > &  uvspeeds 
)
virtual

set the uv offset for a particular model and all the scrollable ids

virtual void makVrv::DtIndirectEntityManager::setDofUpdate ( DtUniqueID  uniqueID,
osgSim::DOFTransform *  dof 
)
virtual

map sequences

virtual void makVrv::DtIndirectEntityManager::setDofTranslation ( DtUniqueID  uniqueID,
osgSim::DOFTransform *  dof,
const Vector3_64 trans,
const Vector3_64 transVel 
)
virtual

set the translation and translation velocity on a dof

virtual void makVrv::DtIndirectEntityManager::setDofOrientation ( DtUniqueID  uniqueID,
osgSim::DOFTransform *  dof,
const Vector3_64 hpr,
const Vector3_64 hprVel,
int  animationFlags 
)
virtual

set the HPR (heading, pitch and roll) & HPR velocity on a dof

virtual void makVrv::DtIndirectEntityManager::setDofOrientation ( DtUniqueID  uniqueID,
osgSim::DOFTransform *  dof,
const Vector3_64 hprVel,
bool  forceUpdate,
int  animationFlags 
)
virtual

set the HPR velocity on a dof

void makVrv::DtIndirectEntityManager::slot_atcGlobalModelEnableChanged ( )

Slot to handle the global alpha to coverage signal for entities Called by constructor so can't be virtual.

virtual void makVrv::DtIndirectEntityManager::setPositionAndOrientation ( DtUniqueID  uniqueId,
const DtVector position,
const DtTaitBryan &  orientation,
const DtVector positionOffset,
const DtTaitBryan &  orientationOffset 
)
virtual

update the position and orientation of a particular model instance.

virtual void makVrv::DtIndirectEntityManager::setColor ( DtUniqueID  uniqueId,
const Vector4_32 color 
)
virtual

set the color modulator of a particular model instance.

virtual void makVrv::DtIndirectEntityManager::setOtherData0 ( DtUniqueID  uniqueId,
const Vector4_32 data 
)
virtual

set the otherData0 of a particular model instance.

virtual void makVrv::DtIndirectEntityManager::setVisible ( DtUniqueID  uniqueId,
bool  visible 
)
virtual

set the visibility of a particular model instance.

virtual void makVrv::DtIndirectEntityManager::setLightPointMaxDistance ( DtUniqueID  uniqueId,
float  maxDistance 
)
virtual

set the max distance for a light point of a particular model instance

virtual void makVrv::DtIndirectEntityManager::setTextureLoadTimeSlicePeriod ( float  period)
virtual

set/get the time slice period/budget to load textures of models per tick (in seconds). Textures are loaded incrementally in time slices. In a tick, if the time taken to load texture(s) exceeds the time slice period/budget, the remainder textures are loaded in the subsequent ticks (again in time slices). Default value is 2ms (0.002 seconds). Ideally call before adding any instances.

virtual float makVrv::DtIndirectEntityManager::textureLoadTimeSlicePeriod ( void  ) const
virtual

set/get the time slice period/budget to load textures of models per tick (in seconds). Textures are loaded incrementally in time slices. In a tick, if the time taken to load texture(s) exceeds the time slice period/budget, the remainder textures are loaded in the subsequent ticks (again in time slices). Default value is 2ms (0.002 seconds). Ideally call before adding any instances.

virtual void makVrv::DtIndirectEntityManager::setUpdateBuffersJobsRequiredCurrentFrame ( bool  requiredCurrentFrame)
virtual

set/get whether to force immediate update of internal gpu buffers for rendering of the model instances/entities Internal gpu buffers are not necessarily updated in a given frame/tick even if they are dirty (i.e. new models, textures came in). Setting this to true forces the internal buffers to update immediately that frame/tick. Ideally call before adding any instances.

virtual bool makVrv::DtIndirectEntityManager::updateBuffersJobsRequiredCurrentFrame ( void  ) const
virtual

set/get whether to force immediate update of internal gpu buffers for rendering of the model instances/entities Internal gpu buffers are not necessarily updated in a given frame/tick even if they are dirty (i.e. new models, textures came in). Setting this to true forces the internal buffers to update immediately that frame/tick. Ideally call before adding any instances.

virtual void makVrv::DtIndirectEntityManager::setGridCellSize ( const Vector3_64 gridCellSize)
virtual

set/get the cells' size for the sparse grid of entities Internally, the entities are spatially divided into a sparse grid of cells This allows us to efficiently do cull/lod out a bunch of entities

virtual const Vector3_64& makVrv::DtIndirectEntityManager::gridCellSize ( void  ) const
virtual

set/get the cells' size for the sparse grid of entities Internally, the entities are spatially divided into a sparse grid of cells This allows us to efficiently do cull/lod out a bunch of entities

virtual void makVrv::DtIndirectEntityManager::setCellPageOutTime ( double  val)
virtual

set/get the page out time of the cells cells get paged out/deleted after they have been inactive for this period of time in seconds. default value is 60 seconds val passed in should be > 0

virtual double makVrv::DtIndirectEntityManager::cellPageOutTime ( void  ) const
virtual

set/get the page out time of the cells cells get paged out/deleted after they have been inactive for this period of time in seconds. default value is 60 seconds val passed in should be > 0

virtual void makVrv::DtIndirectEntityManager::slot_postTick ( )
virtual

handle the postTick signal. This -moves entities, if they are ready to be moved -pages out indirect geometries with 0 entities/instances

virtual void makVrv::DtIndirectEntityManager::excludeTextureFromLimits ( const std::string &  textureFileAbolutePath)
virtual

exclude a texture from limits.

virtual void makVrv::DtIndirectEntityManager::excludeModelDefinitionFromLimits ( const std::string &  modelDefinition)
virtual

exclude all of a model's textures from limits.

virtual DtIndirectEntityManagerInstanceMoveInfo* makVrv::DtIndirectEntityManager::createMoveInfoIfNecessary ( const DtVector position,
DtIndirectEntityManagerInstance currentEntityManagerInstance,
DtUniqueID  uniqueId 
)
protectedvirtual

See if we are moving from old cell to new cell for this position If we are, returns the move info to do this move.

virtual void makVrv::DtIndirectEntityManager::configureIndirectGeometry ( DtIndirectGeometry indirectGeometry)
protectedvirtual

initialize uniform and fading needed for entity indirect geometries.

virtual osgSim::DOFTransform* makVrv::DtIndirectEntityManager::findMasterDof ( DtUniqueID  uniqueID,
osgSim::DOFTransform *  dof 
) const
protectedvirtual

get the master dof for a unique id and clone dof

virtual DtIndirectEntityGeometry* makVrv::DtIndirectEntityManager::findIndirectGeometryAndInstanceId ( DtUniqueID  uniqueID,
int instanceId 
) const
protectedvirtual

find the indirect geometry for a given unique id

virtual void makVrv::DtIndirectEntityManager::calculateAndSetInstanceMatrixTransform ( const DtVector position,
const DtTaitBryan &  orientation,
const DtVector positionOffset,
const DtTaitBryan &  orientationOffset,
DtIndirectEntityGeometry indirectGeometry,
int  instanceId 
)
protectedvirtual

utility function for calculating the instance matrix transform for a paricular instance in an indirect geometry.

virtual void makVrv::DtIndirectEntityManager::tickEntityMoves ( void  )
protectedvirtual

update entity moves

virtual void makVrv::DtIndirectEntityManager::tickPaging ( void  )
protectedvirtual

page out entities that have had 0 instances for page time seconds

virtual bool makVrv::DtIndirectEntityManager::instanceIsBeingMovedTo ( const Vector3_int cellId)
protectedvirtual

whether a cell figures in move info being moved to

void makVrv::DtIndirectEntityManager::setupRootNodes ( )
protected

not virtual because it is called by the constructor. Sets up the geometry grids with the root nodes.

virtual void makVrv::DtIndirectEntityManager::setupReductionExcludeTextures ( )
protectedvirtual

read the textures to exclude from reduction from the csv file and add them to the limiting strategies of each model set

virtual void makVrv::DtIndirectEntityManager::updateStats ( )
protectedvirtual

called in post tick to update the indirect entity related stats.

Member Data Documentation

boost::signalslib::signal<void(DtModel*, DtUniqueID)> makVrv::DtIndirectEntityManager::signal_instanceAdded

Emitted when a new instance of a model is added to the entity manager.

DtDe& makVrv::DtIndirectEntityManager::myDe
protected

reference to de

DtSignalConnectionManager makVrv::DtIndirectEntityManager::myConnections
protected

manager for connections

bool makVrv::DtIndirectEntityManager::myUpdateBuffersJobsRequiredCurrentFrame
protected

whether gpu buffers for instances are updated immediately

Vector3_64 makVrv::DtIndirectEntityManager::myGridCellSize
protected

the grid cell size

MapModelSetToDtIndirectGeometryGrids makVrv::DtIndirectEntityManager::myMapModelSetToDtIndirectGeometryGrids
protected
MapUniqueIdsToEntityManagerInstances makVrv::DtIndirectEntityManager::myMapUniqueIdsToEntityManagerInstances
protected
MapModelNameToMasterMapStateNumberToMultiSwitchList makVrv::DtIndirectEntityManager::myMapModelNameToMasterMapStateNumberToMultiSwitchList
protected
MapInstanceMultiSwitchesToMasterMultiSwitches makVrv::DtIndirectEntityManager::myMapInstanceMultiSwitchesToMasterMultiSwitches
protected
MapModelNameToMasterMapStateNumberToDof makVrv::DtIndirectEntityManager::myMapModelNameToMasterMapStateNumberToDof
protected
MapInstanceDofToMasterDof makVrv::DtIndirectEntityManager::myMapInstanceDofToMasterDof
protected
MapModelNameToMasterMapStateNumberToSequence makVrv::DtIndirectEntityManager::myMapModelNameToMasterMapStateNumberToSequence
protected
MapInstanceSequenceToMasterSequence makVrv::DtIndirectEntityManager::myMapInstanceSequenceToMasterSequence
protected
std::unordered_map<DtUniqueID, DtIndirectEntityManagerInstanceMoveInfo*> makVrv::DtIndirectEntityManager::myInstancesBeingMoved
protected

move info for the instances being moved

boost::mutex makVrv::DtIndirectEntityManager::myInstancesBeingMovedMutex
protected
GridToCellIdsWithZeroInstancesUpTime makVrv::DtIndirectEntityManager::myGridToCellIdsWithZeroInstancesUpTime
protected

map of each grid (model set) to inactive cells in that grid

double makVrv::DtIndirectEntityManager::myCellPageOutTime
protected
Vector3_64 makVrv::DtIndirectEntityManager::myLastObserverLocation
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)