WebLVC 1.7d API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Private Member Functions
DtModEntityTranslator Class Reference

DtModEntityTranslator is a subclass of DtEntityTranslator. More...

Inheritance diagram for DtModEntityTranslator:
Inheritance graph
[legend]

Public Member Functions

 DtModEntityTranslator (MAKVrExchange::DtBroker *broker)
 CTOR. More...
 
virtual ~DtModEntityTranslator ()
 Virtual DTOR. More...
 
- Public Member Functions inherited from MAKVrExchange::DtRprBroker::DtEntityTranslator
 Dt_DEF_TRANSLATOR_NAME ("Entity State")
 Static translatorName method returns the translator name. More...
 
 DtEntityTranslator (DtBroker *broker)
 CTOR. More...
 
virtual ~DtEntityTranslator ()
 Virtual DTOR. More...
 
virtual void tick ()
 Ticks the publishers for the translated RPR and Portal objects. More...
 
virtual void initializePortalCallbacks ()
 
virtual void removePortalCallbacks ()
 
- Public Member Functions inherited from MAKVrExchange::DtRprBroker::DtRprObjectTranslator< ENTITY_TEMPLATE_ARGS >
 DtRprObjectTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR. More...
 
virtual ~DtRprObjectTranslator ()
 Virtual DTOR. More...
 
virtual void enableReflectTranslator (bool enabled)
 Enables or disables the translator reflecting objects from RPR. More...
 
virtual void forceUpdateAll ()
 Tells all publishers to send an update next tick. More...
 
virtual DtRprBrokerrprBroker ()
 
virtual const DtRprBrokerrprBroker () const
 
virtual void shutdown ()
 Performs any virtual shutdown logic prior to deletion. More...
 
virtual T_PortalObject * translate (T_PortalObject *destination, const T_RprObjectStateRepository &source, const T_RprReflectedObject &refObj)=0
 Translates the given RPR object to a Portal object (abstract). More...
 
virtual
T_RprObjectStateRepository * 
translate (T_RprObjectStateRepository *destination, const T_PortalObject &source, const T_PortalReflectedObject &refObj)=0
 Translates the given Portal object to an RPR object (abstract). More...
 

Protected Member Functions

virtual bool isPortalPublishable (const MAKVrExchange::DtBrokerObject *brokerObject) const
 Returns whether the given Portal object is publishable. More...
 
virtual bool isRprPublishable (const MAKVrExchange::DtBrokerObject *brokerObj, const MAKVrExchange::DtPortalReflectedEntity *refObj)
 Tests discovery prerequisites and returns whether object may be discovered. More...
 
virtual void updatePortalBrokerObject (MAKVrExchange::DtBrokerObject *brokerObj, const MAKVrExchange::DtPortalEntity &sr)
 Updates the object info cached in DtBrokerObject. More...
 
virtual DtEntityStateRepository * translate (DtEntityStateRepository *dest, const MAKVrExchange::DtPortalEntity &src, const MAKVrExchange::DtPortalReflectedEntity &refObj)
 Translates a Portal entity to an HLA entity. More...
 
- Protected Member Functions inherited from MAKVrExchange::DtRprBroker::DtEntityTranslator
virtual bool isPortalPublishable (const DtBrokerObject *brokerObj)
 Checks to make sure entity has entity id before discovering it. More...
 
virtual void discoverRprObject (DtReflectedEntity &refObj)
 Overridden to add discovered entity id to global id map. More...
 
virtual bool isRprPublishable (DtBrokerObject *brokerObj, const DtPortalReflectedEntity *refObj)
 Tests whether the object is publishable as a RPR object. More...
 
virtual void discoverPortalObject (const DtPortalReflectedEntity &refObj)
 
virtual void discoverPortalDiGuy (const DtPortalReflectedDiGuy &obj)
 Discovers DI-Guy objects as their discovered. More...
 
virtual void receivePortalDiGuyUpdate (const DtPortalReflectedDiGuy &obj)
 Updates entity publisher with state from the portal DI-Guy. More...
 
virtual void updateRprBrokerObject (DtBrokerObject *brokerObj, const DtEntityStateRepository &sr)
 Ensures the given object is properly filtered. More...
 
virtual void updateFilteredState (DtBrokerObject *brokerObj, DtPortalEntityPublisher *publisher, DtReflectedEntity *refObj)
 Ensures the given object is properly filtered. More...
 
virtual void updateFilteredState (DtBrokerObject *brokerObj, const DtPortalReflectedEntity *refObj)
 Ensures the given object is properly filtered. More...
 
virtual DtString rprObjectName (const DtPortalReflectedEntity *refObj) const
 Determines the name to use for the given reflected object. More...
 
virtual void fillOutgoingIds (DtEntityPublisher *publisher, const DtString &name)
 Sets the publisher's outgoing entity IDs. More...
 
virtual void createRprPublisher (DtBrokerObject *brokerObject)
 Determines the name to use for the given reflected object. More...
 
virtual void removeRprObject (const DtReflectedObject &refObj)
 
virtual void removePortalObject (const DtPortalReflectedEntity &reflectedObj)
 
virtual void removePortalDiGuy (const DtPortalReflectedDiGuy &obj)
 Removes discovered DI-Guys from the waitlist. More...
 
virtual bool hasDiGuyAttributes (const DtEntityStateRepository &entity)
 Checks whether the entity has DI-Guy attributes. More...
 
virtual void syncRprArtParts (DtBrokerObject *brokerObject)
 Performs additional synchronization of HLA articulated parts. More...
 
virtual void syncRprDeadReckonedValues (DtBrokerObject *brokerObject)
 Syncs the HLA object's dead-reckoned values with the portal object's. More...
 
virtual void syncPortalDeadReconedValues (DtBrokerObject *brokerObject)
 Syncs the Portal object's dead-reckoned values with the HLA object's. More...
 
virtual DtPortalEntitytranslate (DtPortalEntity *destination, const DtEntityStateRepository &source, const DtReflectedEntity &refObj)
 Translates an HLA entity state rep into a Portal entity. More...
 
virtual DtPortalDiGuytranslate (DtPortalDiGuy *destination, const DtEntityStateRepository &source)
 Translates HLA Entity DI-Guy attributes into a portal DI-Guy. More...
 
virtual DtEntityStateRepository * translate (DtEntityStateRepository *destination, const DtPortalDiGuy &source)
 Translates a portal DI-Guy into an HLA entity state rep. More...
 
- Protected Member Functions inherited from MAKVrExchange::DtRprBroker::DtRprObjectTranslator< ENTITY_TEMPLATE_ARGS >
virtual void requestTransDiagCb (const DtRequestTranslationDiagnosticMessage &msg)
 Virtual translation diagnostic request callback. More...
 
virtual void printIncomingOutgoingStateReps (const DtPortalObject &incoming, const DtStateRepository &outgoing) const
 Print debug info for the given state reps. More...
 
virtual void printIncomingOutgoingStateReps (const DtStateRepository &incoming, const DtPortalObject &outgoing) const
 Print debug info for the given state reps. More...
 
virtual void performPortalDebugging (const DtString &objectName)
 Build and send debugging message for GUI debugging. More...
 
virtual void performPortalDebugging (const DtPortalObject &incoming, const DtStateRepository &outgoing)
 Build and send debugging message for GUI debugging. More...
 
virtual void performPortalDebugging (const DtStateRepository &incoming, const DtPortalObject &outgoing)
 Build and send debugging message for GUI debugging. More...
 
virtual unsigned int numObjects () const
 Returns the current number of objects. More...
 
virtual void initializeRprCallbacks ()
 
virtual void removeRprCallbacks ()
 
virtual DtBrokerObjectcreateBrokerObject (const DtReflectedObject *refObj)
 Creates a broker object for the given reflected object. More...
 
virtual DtBrokerObjectcreateBrokerObject (const DtPortalReflectedObject *refObj)
 Creates a broker object for the given reflected object. More...
 
virtual DtBrokerObjectfindBrokerObject (const DtReflectedObject *refObj)
 Find the broker object for the given reflected object. More...
 
virtual DtBrokerObjectfindBrokerObject (const DtPortalReflectedObject *refObj)
 Creates a broker object for the given reflected object. More...
 
virtual DtBrokerObjectfindBrokerObject (const DtString &objectName)
 Find the broker object for the object with the given name. More...
 
virtual DtBrokerObjectreleaseBrokerObject (const DtReflectedObject *refObj)
 Find the broker object for the given reflected object. More...
 
virtual DtBrokerObjectreleaseBrokerObject (const DtPortalReflectedObject *refObj)
 Creates a broker object for the given reflected object. More...
 
virtual bool isPortalDiscoverable (const DtPortalReflectedObject *refObj)
 Creates broker object for reflected Portal object. More...
 
virtual bool isRprPublishable (DtBrokerObject *brokerObj, const T_PortalReflectedObject *refObj)
 Tests whether the object is publishable as a RPR object. More...
 
virtual bool isRprDiscoverable (const DtReflectedObject *refObj)
 Creates broker object for reflected RPR object. More...
 
virtual void discoverRprObject (T_RprReflectedObject &obj)
 
virtual void discoverPortalObject (const T_PortalReflectedObject &obj)
 
virtual DtString rprObjectName (const T_PortalReflectedObject *refObj) const
 Determines the name to use for the given reflected object. More...
 
virtual T_RprObjectPublisher * instantiateRprPublisher (const T_PortalReflectedObject *refObj, const DtString &name)
 Instantiates the publisher for the given reflected object. More...
 
virtual void fillOutgoingIds (T_RprObjectPublisher *publisher, const DtString &name)
 Sets the publisher's outgoing entity IDs. More...
 
virtual void createPortalPublisher (DtBrokerObject *brokerObj)
 Determines the name to use for the given reflected object. More...
 
virtual void receiveRprUpdate (T_RprReflectedObject &obj)
 
virtual void receivePortalUpdate (const T_PortalReflectedObject &obj)
 
virtual void updateRprBrokerObject (DtBrokerObject *brokerObj, const T_RprObjectStateRepository &sr)
 Ensures the given object is properly filtered. More...
 
virtual void updatePortalBrokerObject (DtBrokerObject *brokerObj, const T_PortalObject &sr)
 Ensures the given object is properly filtered. More...
 
virtual void updateFilteredState (DtBrokerObject *brokerObj, DtPortalObjectPublisherTemplate< T_PortalObject > *publisher, T_RprReflectedObject *refObj)
 Ensures the given object is properly filtered. More...
 
virtual void updateFilteredState (DtBrokerObject *brokerObj, const T_PortalReflectedObject *refObj)
 Called by ::receivePortalUpdate. More...
 
virtual bool filterLocation (const DtReflectedObject &refObj, const DtVector &location)
 Checks location filtering and returns the filtered state. More...
 
virtual bool filterLocation (const DtPortalReflectedObject &refObj, const DtVector &location)
 Checks location filtering and returns the filtered state. More...
 
virtual void removePortalObject (const T_PortalReflectedObject &refObj)
 
virtual void deleteRprPublisher (DtBrokerObject *brokerObj)
 
virtual void deletePortalPublisher (DtBrokerObject *brokerObj)
 

Private Member Functions

 DtModEntityTranslator (const DtModEntityTranslator &other)
 
DtModEntityTranslatoroperator= (const DtModEntityTranslator &other)
 

Additional Inherited Members

- Public Types inherited from MAKVrExchange::DtRprBroker::DtRprObjectTranslator< ENTITY_TEMPLATE_ARGS >
enum  UpdateType
 Enums used with the ObjectAction callback. More...
 
typedef DtRprObjectTranslator
< RPR_TEMPLATE_FUNCTION
ParentClass
 Typedef for the templated class type. More...
 
- Protected Types inherited from MAKVrExchange::DtRprBroker::DtEntityTranslator
typedef std::map
< DtEntityIdentifier,
DtBrokerObject * > 
EntityByEntityIdMap
 
typedef std::map
< DtEntityIdentifier, const
DtPortalReflectedDiGuy * > 
DiGuyWaitList
 
typedef std::map
< DtEntityIdentifier,
DtPortalDiGuyPublisher * > 
PortalDiGuyPublisherMap
 
- Protected Types inherited from MAKVrExchange::DtRprBroker::DtRprObjectTranslator< ENTITY_TEMPLATE_ARGS >
typedef std::pair< DtTime, bool > LocationFilteringInfo
 
typedef std::map< const
DtReflectedObject
*, LocationFilteringInfo
LocationFilteringMap
 
typedef std::map< const
DtReflectedObject
*, DtBrokerObject * > 
RprToPortalReflectedMap
 
typedef std::map< const
DtPortalReflectedObject
*, DtBrokerObject * > 
PortalToRprReflectedMap
 
typedef std::set< DtStringTransDebugObjectNamesSet
 
- Static Protected Member Functions inherited from MAKVrExchange::DtRprBroker::DtEntityTranslator
static bool portalDiGuyDiscoveryCriteria (const DtPortalReflectedObject *object, void *usr)
 The Portal reflected list's discovery condition callback. More...
 
static void portalDiGuyAddedCb (const DtPortalReflectedDiGuy &obj, void *usr)
 Callback called when an object is added to the reflected list. More...
 
static void portalDiGuyUpdatedCb (const DtPortalReflectedDiGuy &obj, void *usr)
 Callback called when an object in the reflected list is updated. More...
 
static void portalDiGuyDeletedCb (const DtPortalReflectedDiGuy &obj, void *usr)
 Callback called when an object in the reflected list is deleted. More...
 
- Static Protected Member Functions inherited from MAKVrExchange::DtRprBroker::DtRprObjectTranslator< ENTITY_TEMPLATE_ARGS >
static void requestTransDiagCb (const DtRequestTranslationDiagnosticMessage &msg, void *usr)
 Static translation diagnostic request callback. More...
 
static bool rprDiscoveryCriteria (DtReflectedObject *refObj, void *usr)
 The RPR reflected list's discovery condition callback. More...
 
static void rprObjectAddedCb (T_RprReflectedObject *refObj, void *usr)
 Callback called when an object is added to the reflected list. More...
 
static void rprObjectUpdatedCb (T_RprReflectedObject *refObj, void *usr)
 Callback called when an object in the reflected list is updated. More...
 
static void rprObjectDeletedCb (T_RprReflectedObject *refObj, void *usr)
 Callback called when an object in the reflected list is deleted. More...
 
- Protected Attributes inherited from MAKVrExchange::DtRprBroker::DtEntityTranslator
EntityByEntityIdMap myPortalEntityByEntityIdMap
 
EntityByEntityIdMap myHlaEntityByEntityIdMap
 
DiGuyWaitList myDiGuyWaitList
 
PortalDiGuyPublisherMap myPortalDiGuyPublisherMap
 
DtPortalReflectedDiGuyManagermyPortalReflectedDiGuyManager
 
- Protected Attributes inherited from MAKVrExchange::DtRprBroker::DtRprObjectTranslator< ENTITY_TEMPLATE_ARGS >
T_RprReflectedObjectList * myRprReflectedList
 
LocationFilteringMap myLocationFilteringMap
 
RprToPortalReflectedMap myPortalPublisherMap
 
PortalToRprReflectedMap myRprPublisherMap
 
TransDebugObjectNamesSet myTransDebugNames
 
DtObjectHeartbeater myHeartbeater
 

Detailed Description

DtModEntityTranslator is a subclass of DtEntityTranslator.

It changes the discovery criteria, and also modifies the way that entity-IDs are mapped.

Constructor & Destructor Documentation

DtModEntityTranslator::DtModEntityTranslator ( MAKVrExchange::DtBroker broker)

CTOR.

virtual DtModEntityTranslator::~DtModEntityTranslator ( )
virtual

Virtual DTOR.

DtModEntityTranslator::DtModEntityTranslator ( const DtModEntityTranslator other)
private

Member Function Documentation

virtual bool DtModEntityTranslator::isPortalPublishable ( const MAKVrExchange::DtBrokerObject brokerObject) const
protectedvirtual

Returns whether the given Portal object is publishable.

virtual bool DtModEntityTranslator::isRprPublishable ( const MAKVrExchange::DtBrokerObject brokerObj,
const MAKVrExchange::DtPortalReflectedEntity refObj 
)
protectedvirtual

Tests discovery prerequisites and returns whether object may be discovered.

DtModEntityTranslator& DtModEntityTranslator::operator= ( const DtModEntityTranslator other)
private
virtual DtEntityStateRepository* DtModEntityTranslator::translate ( DtEntityStateRepository *  dest,
const MAKVrExchange::DtPortalEntity src,
const MAKVrExchange::DtPortalReflectedEntity refObj 
)
protectedvirtual

Translates a Portal entity to an HLA entity.

Reimplemented from MAKVrExchange::DtRprBroker::DtEntityTranslator.

virtual void DtModEntityTranslator::updatePortalBrokerObject ( MAKVrExchange::DtBrokerObject brokerObj,
const MAKVrExchange::DtPortalEntity sr 
)
protectedvirtual

Updates the object info cached in DtBrokerObject.

Reimplemented from MAKVrExchange::DtRprBroker::DtEntityTranslator.


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

Document ID: Generated on Wed Jun 21 15:05:44 EDT 2023 from SVN revision 256253
Copyright © 2005-2023 MAK Technologies. All Rights Reserved (www.mak.com)