![]() |
VR-Forces Developer's Guide
|
An asynchronous interface to the scene manager.

Public Types | |
| typedef boost::function< void(DtAgentManagerInterface *) > | SceneManagerInterfaceFunction |
| typedef DtLockedBufferedQueue < SceneManagerInterfaceFunction > | AsyncAgentManagerInterfaceFunctionQueue |
Public Member Functions | |
| DtAsynchronousAgentManager (DtAgentManager &agentManager, const std::string &ownerName) | |
| virtual | ~DtAsynchronousAgentManager () |
| virtual void | tick () |
| AsyncAgentManagerInterfaceFunctionQueue * | asyncFunctionQueue () |
| virtual void | addModelDefinition (const DtModelDefinition &) |
| virtual DtModelDefinition * | lookupModelDefinition (const std::string &str) |
Public Member Functions inherited from makVrv::DtAgentManagerInterface | |
| DtAgentManagerInterface (const DtAgentFactory *factory, unsigned char myNamespaceId) | |
| virtual | ~DtAgentManagerInterface () |
| DtUniqueID | createNewUniqueId () |
| unsigned char | namespaceId () const |
| bool | uniqueIdFromAgentManagerInterface (const DtUniqueID &id) const |
| unsigned int | createNewCallID () |
| virtual DtAgent * | createNewObject (const std::string &objectClass, bool bDistribute) |
| virtual void | recreateObject (DtAgent *proxy) |
| bool | encodeUpdate (DtMessage &masterMsg, DtMessage &distributedMsg, double simulationTime) |
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) |
Static Public Attributes inherited from makVrv::DtAgentManagerInterface | |
| static const double | IgnoreSimulationTime |
Protected Types inherited from makVrv::DtAgentManagerInterface | |
| typedef std::list < IndexedMessage, tbb::tbb_allocator < IndexedMessage > > | OrderedCallList |
| typedef std::list< DtAgent * > | AgentList |
Protected Member Functions inherited from makVrv::DtAgentManagerInterface | |
| void | deleteObject (DtAgent *) |
| void | queueObjectForUpdate (DtAgent *object) |
| 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 |