VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Types | Protected Attributes
makVrv::DtBaseConnection Class Reference

The DtBaseConnection is an abstract class. More...

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

Public Member Functions

 DtBaseConnection (DtSharedSettingsManager &, DtAgentManagerInterface &)
 CTOR. More...
 
virtual ~DtBaseConnection ()
 DTOR MUST call clearInstances first. More...
 
virtual void clearInstances ()
 Clear and delete all instances rooted in the connection MUST be called before the connection is destroyed. More...
 
DtSharedSettingsManagersettingsManager ()
 Get the settings manager. More...
 
virtual DtAgentManagerInterfacesceneInterface ()
 Get the scene manager interface for creating drivers. More...
 
const DtSharedSettingsManagersettingsManager () const
 Get the settings manager. More...
 
void reportElementCreated (DtElementID id, DtElementID parentId, unsigned int type)
 Report an element created. More...
 
void reportElementAttribute (DtElementID id, DtElementAttribute *attribute)
 
void reportElementDestroyed (DtElementID id)
 Report an element destroyed. More...
 
const DtElementChangescurrentElementChanges () const
 Look at the current element changes. More...
 
DtElementChangestakeElementChanges ()
 Take the current changes and internally start a new set of changes. More...
 
DtTemporaryAgentManagertemporaryEffects ()
 Get the temporary effects manager. More...
 
DtBlinkingObjectManagerblinkManager ()
 Get the blinking manager. More...
 
DtRandomNumberGeneratorrandomNumberGenerator ()
 Get the simulation's random number generator. More...
 
virtual const std::string & tag ()
 Get the tag identifying which type of connection this is. More...
 
const DtUnicodeemptyString () const
 Allocated empty string. More...
 
virtual DtVirtualBaseClassfindInstance (const std::string &instanceName)
 Find an instance with the given name. More...
 
bool destroyingInstances () const
 Check to see if the simulation is destroying instances. More...
 
virtual void registerInstance (const std::string &instanceName, DtVirtualBaseClass *instance)
 Register an object as an instance of instanceName, and transfer memory ownership of the instance to the DtConnection. More...
 

Protected Types

typedef boost::unordered_map
< std::string,
DtVirtualBaseClass * > 
InstanceMap
 

Protected Attributes

DtSharedSettingsManagermySettingsManagerCache
 
DtRandomNumberGenerator myRandomNumberGenerator
 
DtAgentManagerInterfacemySceneInterface
 
DtElementChangesmyWorkingElementChanges
 
DtTemporaryAgentManagermyTemporaryEffects
 
DtBlinkingObjectManagermyBlinkManager
 Manager for blinking objects. More...
 
DtUnicode myEmptyString
 
InstanceMap myInstances
 
bool myDestroyingInstanceFlag
 

Detailed Description

The DtBaseConnection is an abstract class.

Member Typedef Documentation

typedef boost::unordered_map<std::string,DtVirtualBaseClass*> makVrv::DtBaseConnection::InstanceMap
protected

Constructor & Destructor Documentation

makVrv::DtBaseConnection::DtBaseConnection ( DtSharedSettingsManager ,
DtAgentManagerInterface  
)

CTOR.

virtual makVrv::DtBaseConnection::~DtBaseConnection ( )
virtual

DTOR MUST call clearInstances first.

Member Function Documentation

virtual void makVrv::DtBaseConnection::clearInstances ( )
virtual

Clear and delete all instances rooted in the connection MUST be called before the connection is destroyed.

DtSharedSettingsManager& makVrv::DtBaseConnection::settingsManager ( )

Get the settings manager.

virtual DtAgentManagerInterface& makVrv::DtBaseConnection::sceneInterface ( )
virtual

Get the scene manager interface for creating drivers.

const DtSharedSettingsManager& makVrv::DtBaseConnection::settingsManager ( ) const

Get the settings manager.

void makVrv::DtBaseConnection::reportElementCreated ( DtElementID  id,
DtElementID  parentId,
unsigned int  type 
)

Report an element created.

void makVrv::DtBaseConnection::reportElementAttribute ( DtElementID  id,
DtElementAttribute attribute 
)
void makVrv::DtBaseConnection::reportElementDestroyed ( DtElementID  id)

Report an element destroyed.

const DtElementChanges& makVrv::DtBaseConnection::currentElementChanges ( ) const

Look at the current element changes.

DtElementChanges* makVrv::DtBaseConnection::takeElementChanges ( )

Take the current changes and internally start a new set of changes.

DtTemporaryAgentManager& makVrv::DtBaseConnection::temporaryEffects ( )

Get the temporary effects manager.

DtBlinkingObjectManager& makVrv::DtBaseConnection::blinkManager ( )

Get the blinking manager.

DtRandomNumberGenerator& makVrv::DtBaseConnection::randomNumberGenerator ( )

Get the simulation's random number generator.

virtual const std::string& makVrv::DtBaseConnection::tag ( )
inlinevirtual

Get the tag identifying which type of connection this is.

Reimplemented in makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection.

const DtUnicode& makVrv::DtBaseConnection::emptyString ( ) const

Allocated empty string.

virtual DtVirtualBaseClass* makVrv::DtBaseConnection::findInstance ( const std::string &  instanceName)
virtual
bool makVrv::DtBaseConnection::destroyingInstances ( ) const
inline

Check to see if the simulation is destroying instances.

This function is used in the destructor of objects which access instances via reference which may throw an exception.

* TestClass::~TestClass()
* {
* if(!mySimulation.destroyingInstances())
* {
* //Safe to get instance now.
* Singleton& anInstance = Singleton::instance(mySimulation);
* ...
* }
*
virtual void makVrv::DtBaseConnection::registerInstance ( const std::string &  instanceName,
DtVirtualBaseClass instance 
)
virtual

Member Data Documentation

DtSharedSettingsManager& makVrv::DtBaseConnection::mySettingsManagerCache
protected
DtRandomNumberGenerator makVrv::DtBaseConnection::myRandomNumberGenerator
protected
DtAgentManagerInterface& makVrv::DtBaseConnection::mySceneInterface
protected
DtElementChanges* makVrv::DtBaseConnection::myWorkingElementChanges
protected
DtTemporaryAgentManager* makVrv::DtBaseConnection::myTemporaryEffects
protected
DtBlinkingObjectManager* makVrv::DtBaseConnection::myBlinkManager
protected

Manager for blinking objects.

DtUnicode makVrv::DtBaseConnection::myEmptyString
protected
InstanceMap makVrv::DtBaseConnection::myInstances
protected
bool makVrv::DtBaseConnection::myDestroyingInstanceFlag
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)