VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Types | Protected Attributes
DtEnvObjectSync Class Referenceabstract

Synchronizes an environment object to a C++ object. More...

+ Collaboration diagram for DtEnvObjectSync:

Public Member Functions

 DtEnvObjectSync ()
 
virtual ~DtEnvObjectSync ()
 
virtual void generateObject (DtEnvironment &, const DtString &name)
 Create a new object in the environment and bind to it Calls unbind, if currently bound to an object. More...
 
virtual void bind (DtEnvValueSP value, bool createMissingAttributes)
 Bind to existing object, all attributes will also bind, if an attribute is missing, a new value will be created if the createMissingAttributes is set to true, else the attribute is unbounded. More...
 
virtual void unbind ()
 Unbind from object in environment Note environment object still exists. More...
 
virtual DtEnvValueSP binding () const
 Returns object sync is bound to If unbound returns null. More...
 
virtual void addAttributeSync (const DtString &, DtEnvObjectSync *)
 Add attribute sync, note DtEnvObjectSync*, must not outlive, parent If currently bound, attribute sync will bind. More...
 
virtual void removeAttributeSync (const DtString &)
 Remove attribute sync If currently bound, attribute sync will unbind. More...
 
virtual void removeAllAttributeSyncs ()
 Remove all the attributes. More...
 
virtual DtEnvObjectSyncattributeSync (const DtString &)
 Will return sync object for attribute (or null) More...
 
virtual void syncInCB (const DtEnvObject &)=0
 Update native object using environment Called when environment has changed Not this will not be called when changed from syncOutCB. More...
 
virtual void syncOutCB (DtEnvObject &) const =0
 Update environment using native object Called when environment needs to be updated. More...
 
virtual DtString syncType () const =0
 Provide environment type for encoding. More...
 
virtual void unboundAttributeSyncInCB (DtEnvValue *)
 Unbound attribute in environment changed. More...
 
virtual void attributeAddedCB (DtEnvValueSP)
 Called when attribute is added to environment object. More...
 
virtual void attributeRemovedCB (DtEnvValueSP)
 Called when attribute is removed from environment object. More...
 

Protected Types

typedef std::map< DtString,
DtEnvObjectSync * > 
DtAttributeSyncMap
 

Protected Attributes

DtAttributeSyncMap myAttributeMap
 
DtEnvValueWP myBoundObject
 

Detailed Description

Synchronizes an environment object to a C++ object.

Member Typedef Documentation

Constructor & Destructor Documentation

DtEnvObjectSync::DtEnvObjectSync ( )
virtual DtEnvObjectSync::~DtEnvObjectSync ( )
virtual

Member Function Documentation

virtual void DtEnvObjectSync::addAttributeSync ( const DtString ,
DtEnvObjectSync  
)
virtual

Add attribute sync, note DtEnvObjectSync*, must not outlive, parent If currently bound, attribute sync will bind.

virtual void DtEnvObjectSync::attributeAddedCB ( DtEnvValueSP  )
virtual

Called when attribute is added to environment object.

virtual void DtEnvObjectSync::attributeRemovedCB ( DtEnvValueSP  )
virtual

Called when attribute is removed from environment object.

virtual DtEnvObjectSync* DtEnvObjectSync::attributeSync ( const DtString )
virtual

Will return sync object for attribute (or null)

virtual void DtEnvObjectSync::bind ( DtEnvValueSP  value,
bool  createMissingAttributes 
)
virtual

Bind to existing object, all attributes will also bind, if an attribute is missing, a new value will be created if the createMissingAttributes is set to true, else the attribute is unbounded.

virtual DtEnvValueSP DtEnvObjectSync::binding ( ) const
virtual

Returns object sync is bound to If unbound returns null.

virtual void DtEnvObjectSync::generateObject ( DtEnvironment ,
const DtString name 
)
virtual

Create a new object in the environment and bind to it Calls unbind, if currently bound to an object.

virtual void DtEnvObjectSync::removeAllAttributeSyncs ( )
virtual

Remove all the attributes.

virtual void DtEnvObjectSync::removeAttributeSync ( const DtString )
virtual

Remove attribute sync If currently bound, attribute sync will unbind.

virtual void DtEnvObjectSync::syncInCB ( const DtEnvObject )
pure virtual

Update native object using environment Called when environment has changed Not this will not be called when changed from syncOutCB.

virtual void DtEnvObjectSync::syncOutCB ( DtEnvObject ) const
pure virtual

Update environment using native object Called when environment needs to be updated.

virtual DtString DtEnvObjectSync::syncType ( ) const
pure virtual

Provide environment type for encoding.

virtual void DtEnvObjectSync::unbind ( )
virtual

Unbind from object in environment Note environment object still exists.

all attributes will also unbind

virtual void DtEnvObjectSync::unboundAttributeSyncInCB ( DtEnvValue )
virtual

Unbound attribute in environment changed.

Member Data Documentation

DtAttributeSyncMap DtEnvObjectSync::myAttributeMap
protected
DtEnvValueWP DtEnvObjectSync::myBoundObject
protected

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

Document ID: Generated on Tue Aug 10 00:12:31 EDT 2021 from SVN revision 232765
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)