VR-Forces 4.0.4 Class Documentation
Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Friends
makVrv::DtAgentManagerInterface Class Reference

The abstract interface necessary for agents. More...

Inheritance diagram for makVrv::DtAgentManagerInterface:
Inheritance graph
[legend]

List of all members.

Classes

struct  IndexedMessage

Public Member Functions

 DtAgentManagerInterface (const DtAgentFactory *factory, unsigned char myNamespaceId)
 CTOR.
virtual ~DtAgentManagerInterface ()
 DTOR.
DtUniqueID createNewUniqueId ()
 Generate a new id.
unsigned char namespaceId () const
bool uniqueIdFromAgentManagerInterface (const DtUniqueID &id) const
 Check to.
unsigned int createNewCallID ()
 Create a new call id.
virtual DtAgentcreateNewObject (const std::string &objectClass, bool bDistribute)
 Create a new object, and return a driver to that object.
virtual void recreateObject (DtAgent *proxy)
 Add the existing proxy to the map of new objects so it gets "recreated" on slaves.
bool encodeUpdate (DtMessage &masterMsg, DtMessage &distributedMsg, double simulationTime)
 Encode an scene update int a message.
virtual void tick ()=0
 Tick the scene manager.

Static Public Member Functions

static unsigned char namespaceFromUniqueId (DtUniqueID id)
 Get the namespace id from a unique id.

Static Public Attributes

static const double IgnoreSimulationTime
 Special time value used to encode messages where the sim time provided is ignored.

Protected Types

typedef std::list< IndexedMessageOrderedCallList
typedef std::list< DtAgent * > AgentList
 Type of drivers.

Protected Member Functions

void deleteObject (DtAgent *)
 Internal call to queue an object to be deleted next tick.
void queueObjectForUpdate (DtAgent *object)
 Internal call to queue an object to generate an update in the next tick.

Protected Attributes

DtUniqueID myNamespaceId
DtUniqueID myFreeID
unsigned int myUpdateCallIndex
AgentList myUpdatedObjects
AgentList myToBeDeletedObjects
const DtAgentFactorymyDriverFactory
OrderedCallList myMasterList

Friends

class DtAgentManager
 otheer scene manager interfaces).
class DtAgent

Detailed Description

The abstract interface necessary for agents.


Member Typedef Documentation

typedef std::list<DtAgent*> makVrv::DtAgentManagerInterface::AgentList [protected]

Type of drivers.


Constructor & Destructor Documentation

makVrv::DtAgentManagerInterface::DtAgentManagerInterface ( const DtAgentFactory factory,
unsigned char  myNamespaceId 
)

CTOR.

DTOR.


Member Function Documentation

Generate a new id.

static unsigned char makVrv::DtAgentManagerInterface::namespaceFromUniqueId ( DtUniqueID  id) [inline, static]

Get the namespace id from a unique id.

Referenced by uniqueIdFromAgentManagerInterface().

Check to.

References namespaceFromUniqueId().

Create a new call id.

Call ids are internal ids for function calls made onto objects.

virtual DtAgent* makVrv::DtAgentManagerInterface::createNewObject ( const std::string &  objectClass,
bool  bDistribute 
) [virtual]

Create a new object, and return a driver to that object.

Deleting the driver will automatically destroy the actual object.

virtual void makVrv::DtAgentManagerInterface::recreateObject ( DtAgent proxy) [virtual]

Add the existing proxy to the map of new objects so it gets "recreated" on slaves.

Use this if you have late joining slaves and you want them to know about objects were created before the slave came into existence.

bool makVrv::DtAgentManagerInterface::encodeUpdate ( DtMessage masterMsg,
DtMessage distributedMsg,
double  simulationTime 
)

Encode an scene update int a message.

virtual void makVrv::DtAgentManagerInterface::tick ( ) [pure virtual]

Tick the scene manager.

This will generate a message and deliver that message to the slaves (if the IG is the master) and handle the message.

Implemented in makVrv::DtAgentManager, and makVrv::DtAsynchronousAgentManager.

Internal call to queue an object to be deleted next tick.

This is called automatically when a driver for an object is deleted.

Internal call to queue an object to generate an update in the next tick.


Friends And Related Function Documentation

friend class DtAgentManager [friend]

otheer scene manager interfaces).

friend class DtAgent [friend]

Member Data Documentation

Special time value used to encode messages where the sim time provided is ignored.


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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)