![]() |
VR-Forces 4.8 Class Documentation
|
An asynchronous interface to the scene manager. More...

Public Types | |
| typedef boost::function< void(DtAgentManagerInterface *) > | SceneManagerInterfaceFunction |
| typedef DtLockedBufferedQueue < SceneManagerInterfaceFunction > | AsyncAgentManagerInterfaceFunctionQueue |
Public Member Functions | |
| DtAsynchronousAgentManager (DtAgentManager &agentManager, const std::string &ownerName) | |
| CTOR. More... | |
| virtual | ~DtAsynchronousAgentManager () |
| DTOR. More... | |
| virtual void | tick () |
| Tick the scene manager. More... | |
| AsyncAgentManagerInterfaceFunctionQueue * | asyncFunctionQueue () |
| Get a pointer to the asynchronous function queue. More... | |
| virtual void | addModelDefinition (const DtModelDefinition &) |
| Add a new model definition. More... | |
| virtual DtModelDefinition * | lookupModelDefinition (const std::string &str) |
| Lookup a model definition. More... | |
Public Member Functions inherited from makVrv::DtAgentManagerInterface | |
| DtAgentManagerInterface (const DtAgentFactory *factory, unsigned char myNamespaceId) | |
| CTOR. More... | |
| virtual | ~DtAgentManagerInterface () |
| DTOR. More... | |
| DtUniqueID | createNewUniqueId () |
| Generate a new id. More... | |
| unsigned char | namespaceId () const |
| bool | uniqueIdFromAgentManagerInterface (const DtUniqueID &id) const |
| Check to. More... | |
| unsigned int | createNewCallID () |
| Create a new call id. More... | |
| virtual DtAgent * | createNewObject (const std::string &objectClass, bool bDistribute) |
| Create a new object, and return a driver to that object. More... | |
| virtual void | recreateObject (DtAgent *proxy) |
| Add the existing proxy to the map of new objects so it gets "recreated" on slaves. More... | |
| bool | encodeUpdate (DtMessage &masterMsg, DtMessage &distributedMsg, double simulationTime) |
| Encode an scene update int a message. More... | |
Protected Attributes | |
| DtAgentManager & | myAgentManager |
| AsyncAgentManagerInterfaceFunctionQueue | myAsyncFunctionQueue |
Protected Attributes inherited from makVrv::DtAgentManagerInterface | |
| DtUniqueID | myNamespaceId |
| DtUniqueID | myFreeID |
| unsigned int | myUpdateCallIndex |
| AgentList | myUpdatedObjects |
| AgentList | myToBeDeletedObjects |
| const DtAgentFactory * | myDriverFactory |
| OrderedCallList | myMasterList |
Additional Inherited Members | |
Static Public Member Functions inherited from makVrv::DtAgentManagerInterface | |
| static unsigned char | namespaceFromUniqueId (DtUniqueID id) |
| Get the namespace id from a unique id. More... | |
Static Public Attributes inherited from makVrv::DtAgentManagerInterface | |
| static const double | IgnoreSimulationTime |
| Special time value used to encode messages where the sim time provided is ignored. More... | |
Protected Types inherited from makVrv::DtAgentManagerInterface | |
| typedef std::list < IndexedMessage, tbb::tbb_allocator < IndexedMessage > > | OrderedCallList |
| typedef std::list< DtAgent * > | AgentList |
| Type of drivers. More... | |
Protected Member Functions inherited from makVrv::DtAgentManagerInterface | |
| void | deleteObject (DtAgent *) |
| Internal call to queue an object to be deleted next tick. More... | |
| void | queueObjectForUpdate (DtAgent *object) |
| Internal call to queue an object to generate an update in the next tick. More... | |
An asynchronous interface to the scene manager.
| typedef boost::function< void (DtAgentManagerInterface*) > makVrv::DtAsynchronousAgentManager::SceneManagerInterfaceFunction |
| typedef DtLockedBufferedQueue<SceneManagerInterfaceFunction> makVrv::DtAsynchronousAgentManager::AsyncAgentManagerInterfaceFunctionQueue |
| makVrv::DtAsynchronousAgentManager::DtAsynchronousAgentManager | ( | DtAgentManager & | agentManager, |
| const std::string & | ownerName | ||
| ) |
CTOR.
|
virtual |
DTOR.
|
virtual |
Tick the scene manager.
This must be called by the DtDriver implementation to propagate the driver calls to the scene manager. Typically this would be called in thread loop.
Implements makVrv::DtAgentManagerInterface.
|
virtual |
Add a new model definition.
|
virtual |
Lookup a model definition.
This will return a new copy of the original model definition (without any local cache) which must be deleted.
| AsyncAgentManagerInterfaceFunctionQueue* makVrv::DtAsynchronousAgentManager::asyncFunctionQueue | ( | ) |
Get a pointer to the asynchronous function queue.
|
protected |
|
protected |