This class will wrap a VR-Link DtAggregatePublisher to allow for easier creation of a publisher that is compatible with VR-Forces.
More...
Public Member Functions |
| | DtVrfAggregatePublisher (const DtEntityType &type, DtExerciseConn *conn, const DtGlobalObjectDesignator &glId=DtVrfObjectIdGenerator::nullId(), const DtEntityIdentifier &entId=DtEntityIdentifier::nullId(), DtRwProperties *stateProps=0, DtRwProperties *paramProps=0) |
| | Create a new instance of the VRF aggregate publisher which will, in turn, create the VR-Link aggregate publisher, given a object id (DIS) or name (HLA).
|
| | DtVrfAggregatePublisher (const DtEntityType &type, DtExerciseConn *conn, const DtGlobalObjectDesignator &glId=DtVrfObjectIdGenerator::nullId(), const DtEntityIdentifier &entId=DtEntityIdentifier::nullId(), const DtRwProperties &stateProps=DtRwProperties::emptyProperties(), const DtRwProperties ¶mProps=DtRwProperties::emptyProperties()) |
| | Create a new instance of the VRF aggregate publisher which will, in turn, create the VR-Link aggregate publisher, given a object id (DIS) or name (HLA).
|
| virtual | ~DtVrfAggregatePublisher () |
| | Destructor. 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 bool | tick (bool &extAttrPublisherTick) |
| | Class method taken from publisher class for aggregates at VR-Link level.
|
| virtual DtAggPublisherDecoder * | decoder () |
| | Returns a pointer to the Decoder being used to decode PDUs/updates that we send back into the asSeenByRemote state rep.
|
| virtual DtAggPublisherEncoder * | encoder () |
| | Returns a pointer to the Encoder being used to encode current state into a PDU/update.
|
| DtStateRepository * | sr () |
| | Returns the state repository.
|
| const DtString & | name () const |
| | Returns the name of the object.
|
| virtual const DtObjectId & | id () const |
| | Get the aggregate's identifier.
|
| virtual const DtObjectId & | localId () const |
| | Get the aggregate'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.
|
| virtual DtAggregatePublisher * | aggregatePublisher () |
| | Returns a pointer to myPublisher (the VR-Link DtAggregatePublisher)
|
| virtual void | setSendVrfObjectDataRecord (bool shouldSend) |
| | Sets whether a separate VrfObjectData record should be sent to convey additional VRF object information.
|
|
| virtual void | setExtendedData (const DtString &key, const DtString &value) |
| virtual void | clearExtendedData () |
| virtual void | removeExtendedData (const DtString &key) |
| virtual DtString | extendedData (const DtString &key) const |
|
virtual
DtExtAggregateStateRepository * | aggregateProcessStateRep () |
virtual
DtExtAggregateStateRepository * | aggregateStateRep () |
virtual
DtExtAggregateStateRepository * | agsr () |
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
| DtVrfAggregatePublisher::DtVrfAggregatePublisher |
( |
const DtEntityType & |
type, |
|
|
DtExerciseConn * |
conn, |
|
|
const DtGlobalObjectDesignator & |
glId = DtVrfObjectIdGenerator::nullId(), |
|
|
const DtEntityIdentifier & |
entId = DtEntityIdentifier::nullId(), |
|
|
DtRwProperties * |
stateProps = 0, |
|
|
DtRwProperties * |
paramProps = 0 |
|
) |
| |
Create a new instance of the VRF aggregate publisher which will, in turn, create the VR-Link 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.
If supplied, initializes the state repository to publish extended attributes from the supplied state properties.
| DtVrfAggregatePublisher::DtVrfAggregatePublisher |
( |
const DtEntityType & |
type, |
|
|
DtExerciseConn * |
conn, |
|
|
const DtGlobalObjectDesignator & |
glId = DtVrfObjectIdGenerator::nullId(), |
|
|
const DtEntityIdentifier & |
entId = DtEntityIdentifier::nullId(), |
|
|
const DtRwProperties & |
stateProps = DtRwProperties::emptyProperties(), |
|
|
const DtRwProperties & |
paramProps = DtRwProperties::emptyProperties() |
|
) |
| |
Create a new instance of the VRF aggregate publisher which will, in turn, create the VR-Link 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.
If supplied, initializes the state repository with the provided state properties.
| virtual bool DtVrfAggregatePublisher::tick |
( |
bool & |
extAttrPublisherTick | ) |
|
|
virtual |
Class method taken from publisher class for aggregates at VR-Link level.
This will simply call down to the publisher's tick 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.
Will return true if an update is sent on the network for the entity publisher. In HLA extAttrPublisherTick will be set to true if that publisher has sent a message