VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
DtPointObjectPublisher Class Reference
+ Inheritance diagram for DtPointObjectPublisher:
+ Collaboration diagram for DtPointObjectPublisher:

Public Types

typedef DtPointObjectRepository *(* DtStateRepCreator )()
 Function prototype for functions that create DtPointObjectRepositories. More...
 
- Public Types inherited from DtObjectPublisher
typedef DtAttributePdu *(* DtNonCoupledAttributePduCreator )(const DtPduWithAttributeRecordSets *, void *)
 Function prototype for functions that create DtAggregateStateRepositories. More...
 

Public Member Functions

 DtPointObjectPublisher (DtExerciseConn *conn, const DtObjectId &id=DtObjectId::defaultId())
 CTOR. More...
 
 DtPointObjectPublisher (DtPointObjectRepository *stateRepToUse, DtExerciseConn *conn, const DtObjectId &id=DtObjectId::defaultId())
 CTOR. More...
 
 DtPointObjectPublisher (const DtSyntheticEnvironmentObjectType &type, DtExerciseConn *conn, const DtObjectId &id=DtObjectId::defaultId())
 CTOR. More...
 
virtual ~DtPointObjectPublisher ()
 Virtual DTOR. More...
 
virtual void tick ()
 This function should be called once per frame for each point object. More...
 
virtual DtPointObjectRepositorypointObjectStateRep ()
 Returns a pointer to the DtPointObjectRepository - through which you can set or inspect current state information. More...
 
virtual DtPointObjectRepositoryposr ()
 Synonym for pointObjectStateRep(). More...
 
virtual DtPointObjectDecoderdecoder ()
 Returns a pointer to the Decoder being used to decode PDUs that we send back into the asSeenByRemote ESR. More...
 
virtual DtPointObjectEncoderencoder ()
 Returns a pointer to the Encoder being used to encode current state into an entity state PDU. More...
 
virtual const DtObjectIdid () const
 Get the point object's identifier. More...
 
virtual const DtObjectIdlocalId () const
 Get the point object's localId - same as id for DIS. More...
 
virtual const
DtGlobalObjectDesignator
globalId () const
 Get the global object designator - same as id for DIS. More...
 
virtual void sendFinalPduOnDestruction (bool onOff)
 Set flag indicating whether to send a final PDU with the "FinalPdu" appearance bit set, from within the DtPointObjectPublisher destructor. More...
 
virtual void forceUpdate ()
 Force a state update to be sent during the next call to tick, even if nothing would normally cause a send. More...
 
virtual void setLocThreshold (double val)
 Set/Query the value of the Location Update Threshold. More...
 
virtual double locThreshold () const
 
virtual void setOriThreshold (double val)
 Set/Query the value of the Orientation Update Threshold. More...
 
virtual double oriThreshold () const
 
- Public Member Functions inherited from DtObjectPublisher
 DtObjectPublisher (DtExerciseConn *conn, DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, bool okToDeleteStateRep=true)
 Constructor takes an DtExerciseConn which must have a lifetime greater than the ObjectPubliser. More...
 
virtual ~DtObjectPublisher ()
 Destructor. More...
 
virtual DtStateRepositorystateRep ()
 Returns a pointer to the DtStateRepository - through which you can set or inspect current state information. More...
 
virtual DtStateRepositorysr ()
 Returns a pointer to the DtStateRepository - through which you can set or inspect current state information. More...
 
virtual DtExerciseConnexerciseConn ()
 Get our exercise connection. More...
 
virtual void parallelTick ()
 Tick (update) this object in parallel threads. More...
 
virtual void setTimeThreshold (DtTime time)
 Set the heartbeat rate for this object. More...
 
virtual DtTime timeThreshold () const
 The heartbeat rate for this object. More...
 
virtual void setRelLocTimeThreshold (DtTime time)
 Set the heartbeat rate of relative location updates for this object. More...
 
virtual DtTime relLocTimeThreshold () const
 The relative location heartbeat rate for this object. More...
 
virtual DtStateRepositoryapproximateRemoteStateRep ()
 Returns a pointer to the approximate remote DtStateRepository – This state repository contains the contents of the last sent message. More...
 
virtual DtTime lastTimeUpdated () const
 Returns the value of wallclock time at the time an update was last received for the entity. More...
 
virtual DtTime lastTimeAttrUpdated () const
 
virtual DtTime lastSimTimeUpdated () const
 Returns the value of sim time at the time an update was last received for the entity. More...
 
virtual void setUseCustomThreshold (bool useCustom)
 Sets whether or not this object will use a custom threshold value, or the default. More...
 
virtual bool useCustomThreshold ()
 Returns whether or not this object will use a custom threshold value, or the default. More...
 
virtual void setAttributePduStrategy (DtAttributePduStrategy strat)
 Sets/Gets whether to couple the attribute PDU. More...
 
virtual DtAttributePduStrategy attributePduStrategy () const
 
virtual void encodeExtensions (DtStateRepository *stateRep, const DtStateRepository &asSeenByRemote)
 Encode State Repository Extensions. Extensions should be added to stateRep attributeRecords. More...
 
virtual void decodeExtensions (DtPdu *pdu, const DtStateRepository &stateRep)
 Decode State Repository Extensions. More...
 
DtNonCoupledAttributePduCreator setNonCoupledAttributePduCreator (DtNonCoupledAttributePduCreator creator)
 Give us a function to be used for creating non-coupled Attribute PDUs. More...
 
DtNonCoupledAttributePduCreator nonCoupledAttributePduCreator (void)
 

Static Public Member Functions

static void setDfltLocThreshold (double val)
 Get/Set default Location threshold. More...
 
static double dfltLocThreshold ()
 
static void setDfltOriThreshold (double val)
 Get/Set default Orientation threshold. More...
 
static double dfltOriThreshold ()
 
static void setStateRepCreator (DtStateRepCreator creator)
 Give us a function to be used for creating SRs. More...
 
static DtStateRepCreator stateRepCreator ()
 
static void setClassDfltTimeThreshold (DtTime threshold)
 
- Static Public Member Functions inherited from DtObjectPublisher
static void setDfltTimeThreshold (DtTime time)
 Set the default heartbeat rate. More...
 
static DtTime dfltTimeThreshold ()
 The default heartbeat rate, see setDfltTimeThreshold(). More...
 
static void setDfltRelLocTimeThreshold (DtTime time)
 Set the default heartbeat rate for relative location updates. More...
 
static DtTime dfltRelLocTimeThreshold ()
 The default heartbeat rate for relative location updates, see setDfltRelLocTimeThreshold() More...
 
static
DtNonCoupledAttributePduCreator 
setDefaultNonCoupledAttributePduCreator (DtNonCoupledAttributePduCreator creator)
 Give us a function to be used for creating non-coupled Attribute PDUs. More...
 
static
DtNonCoupledAttributePduCreator 
defaultNonCoupledAttributePduCreator (void)
 

Protected Member Functions

void init (const DtObjectId &)
 Not virtual since called from constructor. More...
 
void sendFinalPdu ()
 Not virtual since called from destructor. More...
 
- Protected Member Functions inherited from DtObjectPublisher
virtual void send (DtPdu *pdu) const
 Puts the PDU on the network and updates timestamps. More...
 

Protected Attributes

DtPointObjectDecodermyDecoder
 
DtPointObjectEncodermyEncoder
 
bool myStateRepPassedFlag
 
bool mySendFinalInDtor
 
- Protected Attributes inherited from DtObjectPublisher
DtExerciseConnmyExConn
 
DtStateRepositorymyStateRep
 
DtStateRepositorymyAsSeenByRemote
 
bool myOkToDeleteStateRepFlag
 
bool myUseCustomThreshold
 
DtTime myTimeThreshold
 Time threshold for the heartbeat rate. More...
 
DtTime myRelLocTimeThreshold
 Time threshold for heartbeat rate of relative location updates (only for embarked/attached entities) More...
 
DtTime mySimTimeLastUpdate
 Set in const send() method. More...
 
DtTime myRealTimeLastUpdate
 Set in const send() method. More...
 
DtTime myRealTimeLastAttrUpdate
 
DtNonCoupledAttributePduCreator myNonCoupledAttributePduCreator
 
DtAttributePduStrategy myAttributePduStrategy
 
std::vector
< DtStateRepositoryExtensionEncoder * > 
myStateRepositoryExtensionEncoderList
 
std::vector
< DtStateRepositoryExtensionDecoder * > 
myStateRepositoryExtensionDecoderList
 

Static Protected Attributes

static DtStateRepCreator theStateRepCreator
 
static double theDfltLocThreshold
 
static double theDfltOriThreshold
 
static DtTime theClassDfltTimeThreshold
 
static bool theClassDfltIsSetFlag
 
- Static Protected Attributes inherited from DtObjectPublisher
static
DtNonCoupledAttributePduCreator 
theDefaultNonCoupledAttributePduCreator
 
static DtTime theDfltTimeThreshold
 
static DtTime theDfltRelLocTimeThreshold
 

Private Member Functions

 DtPointObjectPublisher (const DtPointObjectPublisher &)
 Copy CTOR not implemented – Do Not Copy! More...
 
DtPointObjectPublisheroperator= (const DtPointObjectPublisher &)
 Assignment Operator not implemented – Do Not Copy! More...
 

Member Typedef Documentation

typedef DtPointObjectRepository*(* DtPointObjectPublisher::DtStateRepCreator)()

Function prototype for functions that create DtPointObjectRepositories.

Constructor & Destructor Documentation

DtPointObjectPublisher::DtPointObjectPublisher ( DtExerciseConn conn,
const DtObjectId id = DtObjectId::defaultId() 
)

CTOR.

DtPointObjectPublisher::DtPointObjectPublisher ( DtPointObjectRepository stateRepToUse,
DtExerciseConn conn,
const DtObjectId id = DtObjectId::defaultId() 
)

CTOR.

DtPointObjectPublisher::DtPointObjectPublisher ( const DtSyntheticEnvironmentObjectType type,
DtExerciseConn conn,
const DtObjectId id = DtObjectId::defaultId() 
)

CTOR.

virtual DtPointObjectPublisher::~DtPointObjectPublisher ( )
virtual

Virtual DTOR.

DtPointObjectPublisher::DtPointObjectPublisher ( const DtPointObjectPublisher )
private

Copy CTOR not implemented – Do Not Copy!

Member Function Documentation

virtual DtPointObjectDecoder* DtPointObjectPublisher::decoder ( )
inlinevirtual

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

double DtPointObjectPublisher::dfltLocThreshold ( )
inlinestatic

References theDfltLocThreshold.

double DtPointObjectPublisher::dfltOriThreshold ( )
inlinestatic

References theDfltOriThreshold.

virtual DtPointObjectEncoder* DtPointObjectPublisher::encoder ( )
inlinevirtual

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

void DtPointObjectPublisher::forceUpdate ( )
inlinevirtual

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

Implements DtObjectPublisher.

References myEncoder, and DtStateEncoder::setSendNeeded().

virtual const DtGlobalObjectDesignator& DtPointObjectPublisher::globalId ( ) const
inlinevirtual

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

Implements DtObjectPublisher.

References DtObjectPublisher::id().

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

Get the point object's identifier.

Implements DtObjectPublisher.

void DtPointObjectPublisher::init ( const DtObjectId )
protected

Not virtual since called from constructor.

virtual const DtObjectId& DtPointObjectPublisher::localId ( ) const
inlinevirtual

Get the point object's localId - same as id for DIS.

Implements DtObjectPublisher.

References DtObjectPublisher::id().

virtual double DtPointObjectPublisher::locThreshold ( ) const
virtual
DtPointObjectPublisher& DtPointObjectPublisher::operator= ( const DtPointObjectPublisher )
private

Assignment Operator not implemented – Do Not Copy!

virtual double DtPointObjectPublisher::oriThreshold ( ) const
virtual
DtPointObjectRepository * DtPointObjectPublisher::pointObjectStateRep ( )
inlinevirtual

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

References posr().

DtPointObjectRepository * DtPointObjectPublisher::posr ( )
inlinevirtual
void DtPointObjectPublisher::sendFinalPdu ( )
protected

Not virtual since called from destructor.

void DtPointObjectPublisher::sendFinalPduOnDestruction ( bool  onOff)
inlinevirtual

Set flag indicating whether to send a final PDU with the "FinalPdu" appearance bit set, from within the DtPointObjectPublisher destructor.

References mySendFinalInDtor.

static void DtPointObjectPublisher::setClassDfltTimeThreshold ( DtTime  threshold)
static
void DtPointObjectPublisher::setDfltLocThreshold ( double  val)
inlinestatic

Get/Set default Location threshold.

References theDfltLocThreshold.

void DtPointObjectPublisher::setDfltOriThreshold ( double  val)
inlinestatic

Get/Set default Orientation threshold.

References theDfltOriThreshold.

virtual void DtPointObjectPublisher::setLocThreshold ( double  val)
virtual

Set/Query the value of the Location Update Threshold.

virtual void DtPointObjectPublisher::setOriThreshold ( double  val)
virtual

Set/Query the value of the Orientation Update Threshold.

static void DtPointObjectPublisher::setStateRepCreator ( DtStateRepCreator  creator)
static

Give us a function to be used for creating SRs.

static DtStateRepCreator DtPointObjectPublisher::stateRepCreator ( )
static
virtual void DtPointObjectPublisher::tick ( )
virtual

This function should be called once per frame for each point object.

It determines if any data needs to be sent to the other exercise participants, and if so then it sends the data.

Implements DtObjectPublisher.

Member Data Documentation

DtPointObjectDecoder* DtPointObjectPublisher::myDecoder
protected
DtPointObjectEncoder* DtPointObjectPublisher::myEncoder
protected

Referenced by forceUpdate().

bool DtPointObjectPublisher::mySendFinalInDtor
protected
bool DtPointObjectPublisher::myStateRepPassedFlag
protected
bool DtPointObjectPublisher::theClassDfltIsSetFlag
staticprotected
DtTime DtPointObjectPublisher::theClassDfltTimeThreshold
staticprotected
double DtPointObjectPublisher::theDfltLocThreshold
staticprotected
double DtPointObjectPublisher::theDfltOriThreshold
staticprotected
DtStateRepCreator DtPointObjectPublisher::theStateRepCreator
staticprotected

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

Document ID: Generated on Tue Feb 2 21:02:17 EST 2021 from SVN revision 223668
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)