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
DtAerodromePublisher Class Reference

Instances of DtAerodromePublisher publish Aerodrome objects to the network. More...

+ Inheritance diagram for DtAerodromePublisher:
+ Collaboration diagram for DtAerodromePublisher:

Public Types

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

Public Member Functions

 DtAerodromePublisher (DtAerodromeStateRepository *stateRepToUse, DtExerciseConn *conn, const DtObjectId &id=DtObjectId::nullId())
 Constructor. More...
 
 DtAerodromePublisher (DtExerciseConn *conn, const DtObjectId &id=DtObjectId::nullId())
 Constructor. More...
 
virtual ~DtAerodromePublisher ()
 Destructor. More...
 
virtual
DtAerodromeStateRepository
aerodromeStateRep ()
 Returns a pointer to the DtAerodromeStateRepository - through which you can set or inspect current state information. More...
 
virtual
DtAerodromeStateRepository
asr ()
 Synonym for aerodromeStateRep(). More...
 
virtual bool tick ()
 tick the publisher More...
 
virtual void forceUpdate ()
 for the next tick call to send out a PDU even if it is not needed. More...
 
virtual const DtObjectIdid () const
 Get the entity's identifier. More...
 
virtual const DtObjectIdlocalId () const
 Get the entity's localId - same as id for DIS. More...
 
virtual const
DtGlobalObjectDesignator
globalId () const
 Get the global object designator - same as id for DIS. More...
 
- 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 bool 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...
 
virtual void setUpdateRateWarningThreshold (unsigned short updatesPerSecond)
 Overrides the default (static) updates per second for a specific instance Sets/Gets for private member. More...
 
virtual unsigned short updateRateWarningThreshold () const
 
virtual void checkForUpdateRateWarning () const
 Helper function that determines whether or not to trigger a spam warning. 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 DtStateRepCreator setStateRepCreator (DtStateRepCreator creator)
 Give us a function to be used for creating SRs. More...
 
- 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 setDfltUpdateRateWarningThreshold (unsigned short updatesPerSecond)
 Sets the default (static) updates per second for any instance. More...
 
static unsigned short dfltUpdateRateWarningThreshold ()
 Return the value of theDfltUpdateRateWarningThreshold. 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

virtual void syncRunwayList ()
 Update myRunwayPubs to match the Runway list from the state repository. More...
 
virtual bool publisherForRsr (DtRunwayStateRepository *rsr)
 Checks if there is a DtRunwayPublisher in myRunwayPubs for the specified DtRunwayStateRepository. More...
 
virtual bool runwayStateRepForPublisher (DtRunwayPublisher *runwayPub)
 Checks if there is a DtRunwayStateRepository in the DtAerodromeStateRepository runwayList for the given DtRunwayPublisher from myRunwayPubs. More...
 
void sendFinalPdu ()
 Not virtual since called from destructor. Sends a final PDU for this runway. 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

DtObjectId myId
 
DtAerodomeDecodermyDecoder
 
DtAerodromeEncodermyEncoder
 
DtRunwayPublisherList myRunwayPubs
 
- 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
 
DtTime myLastSpamCheckTime
 Set in constructor. More...
 
unsigned short myNumberOfPdusPerSecond
 Set in constructor. More...
 
unsigned short myUpdateRateWarningThreshold
 Set in constructor. More...
 
bool myCanWarn
 Set in constructor. More...
 
DtNonCoupledAttributePduCreator myNonCoupledAttributePduCreator
 
DtAttributePduStrategy myAttributePduStrategy
 
std::vector
< DtStateRepositoryExtensionEncoder * > 
myStateRepositoryExtensionEncoderList
 
std::vector
< DtStateRepositoryExtensionDecoder * > 
myStateRepositoryExtensionDecoderList
 

Static Protected Attributes

static DtStateRepCreator theStateRepCreator
 
- Static Protected Attributes inherited from DtObjectPublisher
static
DtNonCoupledAttributePduCreator 
theDefaultNonCoupledAttributePduCreator
 
static DtTime theDfltTimeThreshold
 
static DtTime theDfltRelLocTimeThreshold
 
static unsigned short theDfltUpdateRateWarningThreshold
 

Private Member Functions

 DtAerodromePublisher (const DtAerodromePublisher &orig)
 Copy Constructor – not implemented. More...
 
DtAerodromePublisheroperator= (const DtAerodromePublisher &orig)
 Assignment operator – not implemented. More...
 

Detailed Description

Instances of DtAerodromePublisher publish Aerodrome objects to the network.

Member Typedef Documentation

typedef DtAerodromeStateRepository*(* DtAerodromePublisher::DtStateRepCreator)()

Function prototype for a function that creates a DtAerodromeStateRepository.

Constructor & Destructor Documentation

DtAerodromePublisher::DtAerodromePublisher ( DtAerodromeStateRepository stateRepToUse,
DtExerciseConn conn,
const DtObjectId id = DtObjectId::nullId() 
)

Constructor.

DtAerodromePublisher::DtAerodromePublisher ( DtExerciseConn conn,
const DtObjectId id = DtObjectId::nullId() 
)

Constructor.

virtual DtAerodromePublisher::~DtAerodromePublisher ( )
virtual

Destructor.

DtAerodromePublisher::DtAerodromePublisher ( const DtAerodromePublisher orig)
private

Copy Constructor – not implemented.

Member Function Documentation

DtAerodromeStateRepository * DtAerodromePublisher::aerodromeStateRep ( )
inlinevirtual

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

References DtObjectPublisher::myStateRep.

DtAerodromeStateRepository * DtAerodromePublisher::asr ( )
inlinevirtual
virtual void DtAerodromePublisher::forceUpdate ( )
virtual

for the next tick call to send out a PDU even if it is not needed.

Implements DtObjectPublisher.

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

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

Implements DtObjectPublisher.

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

Get the entity's identifier.

Implements DtObjectPublisher.

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

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

Implements DtObjectPublisher.

DtAerodromePublisher& DtAerodromePublisher::operator= ( const DtAerodromePublisher orig)
private

Assignment operator – not implemented.

virtual bool DtAerodromePublisher::publisherForRsr ( DtRunwayStateRepository rsr)
protectedvirtual

Checks if there is a DtRunwayPublisher in myRunwayPubs for the specified DtRunwayStateRepository.

Used during syncRunwayList() to create new publisher for added runways

virtual bool DtAerodromePublisher::runwayStateRepForPublisher ( DtRunwayPublisher runwayPub)
protectedvirtual

Checks if there is a DtRunwayStateRepository in the DtAerodromeStateRepository runwayList for the given DtRunwayPublisher from myRunwayPubs.

Used during syncRunwayList to delete publishers for removed runways

void DtAerodromePublisher::sendFinalPdu ( )
protected

Not virtual since called from destructor. Sends a final PDU for this runway.

static DtStateRepCreator DtAerodromePublisher::setStateRepCreator ( DtStateRepCreator  creator)
static

Give us a function to be used for creating SRs.

virtual void DtAerodromePublisher::syncRunwayList ( )
protectedvirtual

Update myRunwayPubs to match the Runway list from the state repository.

Creates a new DtRunwayPublisher for any new Runways added to the state rep since the last tick Deletes any publishers for Runways that have been removed since the last tick.

virtual bool DtAerodromePublisher::tick ( )
virtual

tick the publisher

Implements DtObjectPublisher.

Member Data Documentation

DtAerodomeDecoder* DtAerodromePublisher::myDecoder
protected
DtAerodromeEncoder* DtAerodromePublisher::myEncoder
protected
DtObjectId DtAerodromePublisher::myId
protected
DtRunwayPublisherList DtAerodromePublisher::myRunwayPubs
protected
DtStateRepCreator DtAerodromePublisher::theStateRepCreator
staticprotected

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

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)