WebLVC 1.8 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Protected Types | Protected Attributes
MAKVrExchange::DtObjectTranslator Class Referenceabstract

DtObjectTranslators provide common logic for translating objects. More...

Inheritance diagram for MAKVrExchange::DtObjectTranslator:
Inheritance graph
[legend]

Classes

struct  CallbackPair
 

Public Types

typedef void(* BrokerObjectCbPtr )(const DtBrokerObject *brokerObj, void *usr)
 

Public Member Functions

 DtObjectTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR. More...
 
virtual ~DtObjectTranslator ()
 Virtual DTOR. More...
 
virtual void shutdown ()=0
 Performs any virtual shutdown logic prior to deletion. More...
 
virtual void forceUpdateAll ()
 Forces an update for all objects on the next tick. More...
 
virtual unsigned int numObjects () const =0
 Returns the current number of objects. More...
 
Abstract Portal Callback Initialization
virtual void initializePortalCallbacks ()=0
 
virtual void removePortalCallbacks ()=0
 
Add Object Callback Methods.
virtual void addObjectDiscoveredCallback (BrokerObjectCbPtr funcPtr, void *usr)
 
virtual void addObjectUpdatedCallback (BrokerObjectCbPtr funcPtr, void *usr)
 
virtual void addObjectRemovedCallback (BrokerObjectCbPtr funcPtr, void *usr)
 
Call Object Callback Methods.
virtual void callObjectDiscoverCallbacks (const DtBrokerObject *obj)
 
virtual void callObjectUpdateCallbacks (const DtBrokerObject *obj)
 
virtual void callObjectRemoveCallbacks (const DtBrokerObject *obj)
 
Portal Publishable/Discoverable Checks.
virtual bool isPortalDiscoverable (const DtPortalReflectedObject *obj)
 Tests whether the Portal object is discoverable. More...
 
virtual bool isPortalPublishable (const DtBrokerObject *obj)
 Tests whether the Portal object is publishable. More...
 
- Public Member Functions inherited from MAKVrExchange::DtTranslator
 DtTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR. More...
 
virtual ~DtTranslator ()
 Virtual DTOR. More...
 
virtual DtString name () const
 Accessor for the translator's name. More...
 
virtual void enableReflectTranslator (bool enabled)
 enables or disables this translator. More...
 
virtual void enablePublishTranslator (bool enabled)
 
virtual bool isReflectEnabled () const
 
virtual bool isPublishEnabled () const
 
virtual void tick ()
 Needs to be implemented for every translator, this is called every frame to allow the translator to do any needed processing. More...
 
DtBrokerbroker () const
 Broker Accessor. More...
 

Protected Types

typedef std::list< CallbackPairCallbackPairList
 

Protected Attributes

CallbackPairList myDiscoverCallbacks
 
CallbackPairList myUpdateCallbacks
 
CallbackPairList myRemoveCallbacks
 
- Protected Attributes inherited from MAKVrExchange::DtTranslator
DtString myTranslatorName
 
DtPortalMessageKind myPortalMessageKind
 
DtBrokermyBroker
 
bool myReflectEnabled
 
bool myPublishEnabled
 

Detailed Description

DtObjectTranslators provide common logic for translating objects.

This class is handles basic callback logic and is the highest level class that can be used to identify an object translator.

Member Typedef Documentation

typedef void(* MAKVrExchange::DtObjectTranslator::BrokerObjectCbPtr)(const DtBrokerObject *brokerObj, void *usr)

Constructor & Destructor Documentation

MAKVrExchange::DtObjectTranslator::DtObjectTranslator ( DtBroker broker,
const DtString name,
DtPortalMessageKind  kind 
)

CTOR.

virtual MAKVrExchange::DtObjectTranslator::~DtObjectTranslator ( )
virtual

Virtual DTOR.

Member Function Documentation

virtual void MAKVrExchange::DtObjectTranslator::addObjectDiscoveredCallback ( BrokerObjectCbPtr  funcPtr,
void *  usr 
)
virtual
virtual void MAKVrExchange::DtObjectTranslator::addObjectRemovedCallback ( BrokerObjectCbPtr  funcPtr,
void *  usr 
)
virtual
virtual void MAKVrExchange::DtObjectTranslator::addObjectUpdatedCallback ( BrokerObjectCbPtr  funcPtr,
void *  usr 
)
virtual
virtual void MAKVrExchange::DtObjectTranslator::callObjectDiscoverCallbacks ( const DtBrokerObject obj)
virtual
virtual void MAKVrExchange::DtObjectTranslator::callObjectRemoveCallbacks ( const DtBrokerObject obj)
virtual
virtual void MAKVrExchange::DtObjectTranslator::callObjectUpdateCallbacks ( const DtBrokerObject obj)
virtual
virtual void MAKVrExchange::DtObjectTranslator::forceUpdateAll ( )
inlinevirtual

Forces an update for all objects on the next tick.

brokers that would like to implement heart beating, should overwrite this function.

Reimplemented in MAKVrExchange::DtRprBroker::DtRprObjectTranslator, MAKVrExchange::DtTenaBroker::DtTenaObjectTranslator, MAKVrExchange::DtDisBroker::DtDisObjectTranslator, and MAKVrExchange::DtDdsBroker::DtDdsObjectTranslator.

virtual void MAKVrExchange::DtObjectTranslator::initializePortalCallbacks ( )
pure virtual
virtual bool MAKVrExchange::DtObjectTranslator::isPortalDiscoverable ( const DtPortalReflectedObject obj)
virtual
virtual bool MAKVrExchange::DtObjectTranslator::isPortalPublishable ( const DtBrokerObject obj)
virtual

Tests whether the Portal object is publishable.

Default implementation always returns true.

virtual unsigned int MAKVrExchange::DtObjectTranslator::numObjects ( ) const
pure virtual
virtual void MAKVrExchange::DtObjectTranslator::removePortalCallbacks ( )
pure virtual
virtual void MAKVrExchange::DtObjectTranslator::shutdown ( )
pure virtual

Member Data Documentation

CallbackPairList MAKVrExchange::DtObjectTranslator::myDiscoverCallbacks
protected
CallbackPairList MAKVrExchange::DtObjectTranslator::myRemoveCallbacks
protected
CallbackPairList MAKVrExchange::DtObjectTranslator::myUpdateCallbacks
protected

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

Document ID: Generated on Wed Mar 12 15:05:17 EDT 2025 from SVN revision 274272
Copyright © 2005-2025 MAK Technologies. All Rights Reserved (www.mak.com)