VR-Link API Documentation for DIS
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
DtObjectPublisher Class Reference

Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e. More...

+ Inheritance diagram for DtObjectPublisher:
+ Collaboration diagram for DtObjectPublisher:

List of all members.

Public Member Functions

 DtObjectPublisher (DtExerciseConn *conn, DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, bool okToDeleteStateRep=true)
 Constructor takes an DtExerciseConn which must have a lifetime greater than the ObjectPubliser.
virtual ~DtObjectPublisher ()
 Destructor.
virtual DtStateRepositorystateRep ()
 Returns a pointer to the DtStateRepository - through which you can set or inspect current state information.
virtual DtStateRepositorysr ()
 Returns a pointer to the DtStateRepository - through which you can set or inspect current state information.
virtual DtExerciseConnexerciseConn ()
 Get our exercise connection.
virtual const DtObjectIdlocalId () const =0
 The localId is the same as the globalId, a DtEntityIdentifier unique to this object.
virtual const DtObjectIdid () const =0
 The id is the same as the globalId, a DtEntityIdentifier unique to this object.
virtual const
DtGlobalObjectDesignator
globalId () const =0
 The entityIdentifier unique to this object.
virtual void forceUpdate ()=0
 For publisher to send PDU on next tick.
virtual void tick ()=0
 Tick (update) this object.
virtual void setTimeThreshold (DtTime time)
 Set the heartbeat rate for this object.
virtual DtTime timeThreshold () const
 The heartbeat rate for this object.
virtual DtStateRepositoryapproximateRemoteStateRep ()
 Returns a pointer to the approximate remote DtStateRepository -- This state repository contains the contents of the last sent message.
virtual DtTime lastTimeUpdated () const
 Returns the value of wallclock time at the time an update was last received for the entity.
virtual DtTime lastSimTimeUpdated () const
 Returns the value of sim time at the time an update was last received for the entity.

Static Public Member Functions

static void setDfltTimeThreshold (DtTime time)
 Set the default heartbeat rate.
static DtTime dfltTimeThreshold ()
 The default heartbeat rate, see setDfltTimeThreshold().

Protected Member Functions

void send (DtPdu *pdu) const
 Puts the PDU on the network and updates timestamps.

Protected Attributes

DtExerciseConnmyExConn
DtStateRepositorymyStateRep
DtStateRepositorymyAsSeenByRemote
bool myOkToDeleteStateRepFlag
DtTime myTimeThreshold
DtTime mySimTimeLastUpdate
 Set in const send() method.
DtTime myRealTimeLastUpdate
 Set in const send() method.

Static Protected Attributes

static DtTime theDfltTimeThreshold

Private Member Functions

 DtObjectPublisher (const DtObjectPublisher &orig)
 copy constructor -- not implemented
DtObjectPublisheroperator= (const DtObjectPublisher &orig)
 assignment operator -- not implemented

Detailed Description

Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.

these objects are not dependent on data being produced elsewhere on the network for their existence). These object send data to the network.


Constructor & Destructor Documentation

DtObjectPublisher::DtObjectPublisher ( DtExerciseConn conn,
DtStateRepository stateRep,
DtStateRepository asSeenByRemote,
bool  okToDeleteStateRep = true 
)

Constructor takes an DtExerciseConn which must have a lifetime greater than the ObjectPubliser.

It also takes two DtStateRepositories, the stateRep which it destroys in the DTOR if the okToDeleteStateRep flag was set to true, and the asSeenByRemote which is destroyed in the dtor every time.

Destructor.

copy constructor -- not implemented


Member Function Documentation

Returns a pointer to the approximate remote DtStateRepository -- This state repository contains the contents of the last sent message.

VR-Link keeps this SR so it can ensure that object updates get sent only when their data have changed.

References myAsSeenByRemote.

The default heartbeat rate, see setDfltTimeThreshold().

Get our exercise connection.

References myExConn.

virtual void DtObjectPublisher::forceUpdate ( ) [pure virtual]
virtual const DtGlobalObjectDesignator& DtObjectPublisher::globalId ( ) const [pure virtual]
virtual const DtObjectId& DtObjectPublisher::id ( ) const [pure virtual]
virtual DtTime DtObjectPublisher::lastSimTimeUpdated ( ) const [virtual]

Returns the value of sim time at the time an update was last received for the entity.

virtual DtTime DtObjectPublisher::lastTimeUpdated ( ) const [virtual]

Returns the value of wallclock time at the time an update was last received for the entity.

virtual const DtObjectId& DtObjectPublisher::localId ( ) const [pure virtual]
DtObjectPublisher& DtObjectPublisher::operator= ( const DtObjectPublisher orig) [private]

assignment operator -- not implemented

void DtObjectPublisher::send ( DtPdu pdu) const [protected]

Puts the PDU on the network and updates timestamps.

static void DtObjectPublisher::setDfltTimeThreshold ( DtTime  time) [static]

Set the default heartbeat rate.

The time passed to this function is the number of seconds between heartbeats in published objects at rest. The default time is 5s.

virtual void DtObjectPublisher::setTimeThreshold ( DtTime  time) [virtual]

Set the heartbeat rate for this object.

The default rate for all objects is configured by setDfltTimeThreshold().

DtStateRepository * DtObjectPublisher::sr ( ) [inline, virtual]

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

References myStateRep.

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

References myStateRep.

Referenced by DtEntityPublisher::esr().

virtual void DtObjectPublisher::tick ( ) [pure virtual]
virtual DtTime DtObjectPublisher::timeThreshold ( ) const [virtual]

The heartbeat rate for this object.


Member Data Documentation

Referenced by exerciseConn().

Set in const send() method.

Set in const send() method.


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

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)