VR-Vantage API Documentation
List of all members | Public Types | Public Member Functions | Protected Attributes | Private Member Functions
DtVrfAggregatePublisher Class Reference

This class will wrap a VR-Link DtAggregatePublisher to allow for easier creation of a publisher that is compatible with VR-Forces. More...

Public Types

typedef
DtAggregateStateRepository *(* 
MyStateRepCreator )()

Public Member Functions

 DtVrfAggregatePublisher (const DtEntityType &type, DtExerciseConn *conn, const DtGlobalObjectDesignator &id=DtVrfObjectIdGenerator::nullId())
 Create a new instance of the vrf aggregate publisher which will, in turn, create the vrlink aggregate publisher, given a object id (DIS) or name (HLA).
virtual ~DtVrfAggregatePublisher ()
 Also destroys publisher.
virtual void addEntity (const DtBaseEntityStateRepository *)
 Convenience routines to add/remove subordinates.
virtual void removeEntity (const DtBaseEntityStateRepository *)
virtual void addAggregate (const DtBaseEntityStateRepository *)
virtual void removeAggregate (const DtBaseEntityStateRepository *)
virtual void tick ()
 Class method taken from publisher class for aggregates at VR-Link level.
virtual
DtExtAggregateStateRepository
aggregateProcessStateRep ()
 Returns a pointer to the DtExtAggregateStateRepository - through which you can set or inspect current state information.
virtual
DtExtAggregateStateRepository
aggregateStateRep ()
virtual
DtExtAggregateStateRepository
agsr ()
 Synonym for aggregateProcessStateRep().
virtual DtAggPublisherDecoderdecoder ()
 Returns a pointer to the Decoder being used to decode PDUs that we send back into the asSeenByRemote ESR.
virtual DtAggPublisherEncoderencoder ()
 Returns a pointer to the Encoder being used to encode current state into an entity state PDU.
virtual const DtObjectId & id () const
 Get the aggregates process's identifier.
virtual const DtObjectId & localId () const
 Get the aggregates process's localId - same as id for DIS.
virtual const
DtGlobalObjectDesignator & 
globalId () const
 Get the global object designator - same as id for DIS.
virtual void forceUpdate ()
 Force a state update to be sent during the next call to tick, even if nothing would normally cause a send.

Protected Attributes

DtAggregatePublisher * myPublisher

Private Member Functions

 DtVrfAggregatePublisher (const DtVrfAggregatePublisher &)
 Unimplemented.
DtVrfAggregatePublisheroperator= (const DtVrfAggregatePublisher &)

Detailed Description

This class will wrap a VR-Link DtAggregatePublisher to allow for easier creation of a publisher that is compatible with VR-Forces.

If you want to create and publish aggregate objects that can be used by VR-Forces, you can use a publisher of this class to facilitate in that creation

Member Typedef Documentation

typedef DtAggregateStateRepository*(* DtVrfAggregatePublisher::MyStateRepCreator)()

Constructor & Destructor Documentation

DtVrfAggregatePublisher::DtVrfAggregatePublisher ( const DtEntityType &  type,
DtExerciseConn *  conn,
const DtGlobalObjectDesignator &  id = DtVrfObjectIdGenerator::nullId() 
)

Create a new instance of the vrf aggregate publisher which will, in turn, create the vrlink aggregate publisher, given a object id (DIS) or name (HLA).

This class will use the default factory as supplied in the DtVrfObjectIdGenerator class

The state repository will initially be set to the DtExtAggregateStateRepository class. You can change it in the global DtVrfAggregatePublisher class before calling this creator

virtual DtVrfAggregatePublisher::~DtVrfAggregatePublisher ( )
virtual

Also destroys publisher.

DtVrfAggregatePublisher::DtVrfAggregatePublisher ( const DtVrfAggregatePublisher )
private

Unimplemented.

Member Function Documentation

virtual void DtVrfAggregatePublisher::addEntity ( const DtBaseEntityStateRepository *  )
virtual

Convenience routines to add/remove subordinates.

Note that this will also effect the subordinate order that is used by VRF. This is a passthru to the state repository

virtual void DtVrfAggregatePublisher::removeEntity ( const DtBaseEntityStateRepository *  )
virtual
virtual void DtVrfAggregatePublisher::addAggregate ( const DtBaseEntityStateRepository *  )
virtual
virtual void DtVrfAggregatePublisher::removeAggregate ( const DtBaseEntityStateRepository *  )
virtual
virtual void DtVrfAggregatePublisher::tick ( )
virtual

Class method taken from publisher class for aggregates at VR-Link level.

This will simply call down to the publisher to handle the method This function should be called once per frame for each aggregate object. It determines if any data needs to be sent to the other exercise participants, and sends that data.

virtual DtExtAggregateStateRepository* DtVrfAggregatePublisher::aggregateProcessStateRep ( )
virtual

Returns a pointer to the DtExtAggregateStateRepository - through which you can set or inspect current state information.

virtual DtExtAggregateStateRepository* DtVrfAggregatePublisher::aggregateStateRep ( )
virtual
virtual DtExtAggregateStateRepository* DtVrfAggregatePublisher::agsr ( )
virtual
virtual DtAggPublisherDecoder* DtVrfAggregatePublisher::decoder ( )
virtual

Returns a pointer to the Decoder being used to decode PDUs that we send back into the asSeenByRemote ESR.

virtual DtAggPublisherEncoder* DtVrfAggregatePublisher::encoder ( )
virtual

Returns a pointer to the Encoder being used to encode current state into an entity state PDU.

virtual const DtObjectId& DtVrfAggregatePublisher::id ( ) const
virtual

Get the aggregates process's identifier.

virtual const DtObjectId& DtVrfAggregatePublisher::localId ( ) const
virtual

Get the aggregates process's localId - same as id for DIS.

virtual const DtGlobalObjectDesignator& DtVrfAggregatePublisher::globalId ( ) const
virtual

Get the global object designator - same as id for DIS.

virtual void DtVrfAggregatePublisher::forceUpdate ( )
virtual

Force a state update to be sent during the next call to tick, even if nothing would normally cause a send.

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

Member Data Documentation

DtAggregatePublisher* DtVrfAggregatePublisher::myPublisher
protected

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


Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)