VR-Exchange 2.5 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions
ModSetDataInteractionTranslator Class Reference

A class that translates between the Portal SetData Interaction and the DIS Set Data PDU. More...

Inheritance diagram for ModSetDataInteractionTranslator:
Inheritance graph
[legend]

Public Member Functions

 Dt_DEF_TRANSLATOR_NAME ("SetData")
 ModSetDataInteractionTranslator (MAKVrExchange::DtBroker *broker)
 Registers the function callback receiveDisInteraction() with VR-Link; and receivePortalInteraction() with the Portal.
virtual ~ModSetDataInteractionTranslator ()
 Removes the function callbacks receiveDisInteraction() and receivePortalInteraction() from VR-Link and the Portal respectively.
virtual void initializeDisCallbacks ()
virtual void initializePortalCallbacks ()
virtual void removeDisCallbacks ()
virtual void removePortalCallbacks ()
virtual
MAKVrExchange::DtPortalSetDataInteraction
translate (MAKVrExchange::DtPortalSetDataInteraction *destination, const DtSetDataInteraction &source)
 Translates a DIS VR-Link Set Data interaction into a VR-Exchange Portal Set Data interaction.
virtual DtSetDataInteraction * translate (DtSetDataInteraction *destination, const MAKVrExchange::DtPortalSetDataInteraction &source)
 Translates a VR-Exchange Portal Set Data interaction into a DIS VR-Link Set Data interaction.
- Public Member Functions inherited from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >
 DtDisInteractionTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR.
virtual ~DtDisInteractionTranslator ()
 Virtual DTOR.
virtual void enableReflectTranslator (bool enabled)
 Enables or disables the translator reflecting from DIS.
virtual DtDisBrokerdisBroker ()
virtual const DtDisBrokerdisBroker () const
virtual void tick ()
 Checks the waitlist for postponed interaction discoveries.
- Public Member Functions inherited from MAKVrExchange::DtBaseInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction >
 DtBaseInteractionTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR.
virtual ~DtBaseInteractionTranslator ()
 Virtual DTOR.
virtual void enablePublishTranslator (bool enabled)
 Enables or disables the translator from the protocol side.
- Public Member Functions inherited from MAKVrExchange::DtInteractionTranslator
 DtInteractionTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR.
virtual ~DtInteractionTranslator ()
 Virtual DTOR.
virtual unsigned int numInteractions () const
 Returns the number of interactions received.
virtual void setNumInteractions (unsigned int num)
 Sets the interaction count - mainly used for zeroing it.
- Public Member Functions inherited from MAKVrExchange::DtTranslator
 DtTranslator (DtBroker *broker, const DtString &name, DtPortalMessageKind kind)
 CTOR.
virtual ~DtTranslator ()
 Virtual DTOR.
virtual DtString name () const
 Accessor for the translator's name.
virtual bool isReflectEnabled () const
virtual bool isPublishEnabled () const
DtBrokerbroker () const
 Broker Accessor.

Protected Member Functions

virtual void createInteraction (const MAKVrExchange::DtPortalSetDataInteraction &incoming)
 Sends a DIS interaction.
virtual void createPortalInteraction (const DtSetDataInteraction &incoming)
 Sends a Portal interaction.
- Protected Member Functions inherited from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >
virtual void receivePortalInteraction (const MAKVrExchange::DtPortalSetDataInteraction &inter)
 Portal interaction processing callback.
virtual void printIncomingOutgoingInteractions (const DtPortalInteraction &incoming, const DtInteraction &outgoing) const
 Prints incoming and outgoing interactions (before and after translation) to DtInfo.
virtual void printIncomingOutgoingInteractions (const DtInteraction &incoming, const DtPortalInteraction &outgoing) const
 Prints incoming and outgoing interactions (before and after translation) to DtInfo.
virtual bool testGlobalIdMapping (const DtString &idName, const DtString &id)
 Checks whether a valid global id mapping exists for the given ID.
virtual void shutdown ()
 Performs any virtual shutdown logic prior to deletion.
virtual void receiveDisInteraction (const DtSetDataInteraction &inter)
- Protected Member Functions inherited from MAKVrExchange::DtBaseInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction >
virtual bool isPortalDiscoverable (const MAKVrExchange::DtPortalSetDataInteraction &inter)
 Checks whether the interaction is discoverable and returns the verdict.

Static Protected Member Functions

static void receiveDisInteraction (DtSetDataInteraction *interaction, void *userData)
 The callback function registered by the constructor and used by VR-Link.
static void receivePortalInteraction (const MAKVrExchange::DtPortalSetDataInteraction &interaction, void *userData)
 The callback function registered by the constructor and used by the Portal.
- Static Protected Member Functions inherited from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >

Private Member Functions

 ModSetDataInteractionTranslator (const ModSetDataInteractionTranslator &)
 private copy constructor prevents pass-by-value,
ModSetDataInteractionTranslatoroperator= (const ModSetDataInteractionTranslator &)
 private assignment operator prevents assignment.
int operator== (const ModSetDataInteractionTranslator &)
 private compare operators prevents comparisons.
int operator!= (const ModSetDataInteractionTranslator &)
 private compare operators prevents comparisons.

Additional Inherited Members

- Public Types inherited from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >
typedef
DtDisInteractionTranslator
< MAKVrExchange::DtPortalSetDataInteraction,
DtSetDataInteraction > 
ParentClass
 Typedef for the templated class type.
- Protected Types inherited from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >
typedef std::vector
< MAKVrExchange::DtPortalSetDataInteraction
InteractionWaitList
- Protected Attributes inherited from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >
InteractionWaitList myInteractionWaitList

Detailed Description

A class that translates between the Portal SetData Interaction and the DIS Set Data PDU.

Because this is written to VR-Link's protocol independent API much of this example will apply to DIS, HLA and TENA.

This example is almost exactly the same as the code found in the DIS Broker. However, any bug fixes we find with the "real" translator may not be fixed here, so users should beware.

Constructor & Destructor Documentation

ModSetDataInteractionTranslator::ModSetDataInteractionTranslator ( MAKVrExchange::DtBroker broker)

Registers the function callback receiveDisInteraction() with VR-Link; and receivePortalInteraction() with the Portal.

virtual ModSetDataInteractionTranslator::~ModSetDataInteractionTranslator ( )
virtual

Removes the function callbacks receiveDisInteraction() and receivePortalInteraction() from VR-Link and the Portal respectively.

ModSetDataInteractionTranslator::ModSetDataInteractionTranslator ( const ModSetDataInteractionTranslator )
private

private copy constructor prevents pass-by-value,

Member Function Documentation

virtual void ModSetDataInteractionTranslator::createInteraction ( const MAKVrExchange::DtPortalSetDataInteraction incoming)
protectedvirtual

Sends a DIS interaction.

Takes incoming as a Portal Interaction, translates it to a DIS Interaction, then sends this DIS Interaction through myBroker.

Parameters
[in]incomingReceived Portal Interaction
Precondition
incoming is a valid DtPortalSetDataInteraction object.

Reimplemented from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >.

virtual void ModSetDataInteractionTranslator::createPortalInteraction ( const DtSetDataInteraction &  incoming)
protectedvirtual

Sends a Portal interaction.

Takes incoming as a DIS Interaction, translates it to a Portal Interaction, then sends this Portal Interaction though myBroker.

Parameters
[in]incomingReceived DIS VR-Link Interaction.
Precondition
incoming is a valid object.

Reimplemented from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >.

ModSetDataInteractionTranslator::Dt_DEF_TRANSLATOR_NAME ( "SetData"  )
virtual void ModSetDataInteractionTranslator::initializeDisCallbacks ( )
virtual
virtual void ModSetDataInteractionTranslator::initializePortalCallbacks ( )
virtual
int ModSetDataInteractionTranslator::operator!= ( const ModSetDataInteractionTranslator )
private

private compare operators prevents comparisons.

ModSetDataInteractionTranslator& ModSetDataInteractionTranslator::operator= ( const ModSetDataInteractionTranslator )
private

private assignment operator prevents assignment.

int ModSetDataInteractionTranslator::operator== ( const ModSetDataInteractionTranslator )
private

private compare operators prevents comparisons.

static void ModSetDataInteractionTranslator::receiveDisInteraction ( DtSetDataInteraction *  interaction,
void *  userData 
)
staticprotected

The callback function registered by the constructor and used by VR-Link.

This function is called when a DIS VR-Link Data interaction occurs. Calls createPortalInteraction() to send the DIS interaction to the Portal.

Parameters
[in]interactionDIS Interaction to be sent.
[in]userDataModSetDataInteractionTranslator object.
Precondition
interaction is a valid object. userData must either be a valid ModSetDataInteractionTranslator object, or NULL.

Reimplemented from MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >.

static void ModSetDataInteractionTranslator::receivePortalInteraction ( const MAKVrExchange::DtPortalSetDataInteraction interaction,
void *  userData 
)
staticprotected

The callback function registered by the constructor and used by the Portal.

This function is called when a Portal Data interaction occurs. Calls createDisInteration() to send the Portal interaction to DIS VR-Link.

Parameters
[in]interactionPortal Data Interaction to be sent.
[in]userDataModSetDataInteractionTranslator object.
Precondition
interaction is a valid object. userData must either be a valid ModSetDataInteractionTranslator object, or NULL.

Reimplemented from MAKVrExchange::DtBaseInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction >.

virtual void ModSetDataInteractionTranslator::removeDisCallbacks ( )
virtual
virtual void ModSetDataInteractionTranslator::removePortalCallbacks ( )
virtual
virtual MAKVrExchange::DtPortalSetDataInteraction* ModSetDataInteractionTranslator::translate ( MAKVrExchange::DtPortalSetDataInteraction destination,
const DtSetDataInteraction &  source 
)
virtual

Translates a DIS VR-Link Set Data interaction into a VR-Exchange Portal Set Data interaction.

Takes the information found in source and produces a comparable DtPortalSetDataInteraction message found in destination. This function is overloaded to provide translation in the opposite direction.

Parameters
[out]destinationA VR-Exchange Portal Set Data interaction.
[in]sourceA DIS VR-Link Set Data interaction.
Returns
Address of destination.
Precondition
destination and source are both valid.

Implements MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >.

virtual DtSetDataInteraction* ModSetDataInteractionTranslator::translate ( DtSetDataInteraction *  destination,
const MAKVrExchange::DtPortalSetDataInteraction source 
)
virtual

Translates a VR-Exchange Portal Set Data interaction into a DIS VR-Link Set Data interaction.

Takes the information found in source and produces a comparable DIS VR-Link interaction. This function is overloaded to provide translation in the opposite direction.

Returns
Address of destination
Parameters
[out]destinationA DIS VR-Link Set Data interaction.
[in]sourceA VR-Exchange Portal Set Data interaction.
Returns
Address of destination
Precondition
destination and source are both valid.

Implements MAKVrExchange::DtDisBroker::DtDisInteractionTranslator< MAKVrExchange::DtPortalSetDataInteraction, DtSetDataInteraction >.


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

Document ID: Generated on Wed Dec 21 15:05:11 EST 2016 from SVN revision 171891
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)