MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
MAKLogger::DtLgrPublisherInterface Class Referenceabstract

Responsible for defining the interface that Object publishers must have. More...

+ Inheritance diagram for MAKLogger::DtLgrPublisherInterface:
+ Collaboration diagram for MAKLogger::DtLgrPublisherInterface:

Public Member Functions

 DtLgrPublisherInterface (DtLgrHlaSimulationManager &simMgr, DtLgrHlaHandle loggerObjectId, DtLgrHlaHandle loggerClassHandle)
 
virtual ~DtLgrPublisherInterface ()
 DTOR. More...
 
virtual void update (const DtStateMsg &msg, const DtAbsoluteTime &updateTime, bool isTimeFromPast, bool isStateUpdate, double scaling, bool isStatic, bool sendFlag)=0
 Process a state update message. More...
 
virtual DtPacketcreateUpdatePacket (const DtAbsoluteTime &time)
 Create an update packet with the given time from the publisher's encoded state data. More...
 
virtual void sendUpdateAtScaleChangePoint (double oldScale, double newScale, bool wasStatic, bool isStatic)=0
 Sends an update when scaling changes. More...
 
virtual void tick (double scaling, bool isStatic)=0
 Tick the publisher with a scaling value. More...
 
virtual bool updateRegion (const DtStateMsg &msg)
 The given message has been decoded into the state repository of the publisher. More...
 
virtual void setRegion (const DtDDMRegionSet &region)=0
 Set the DtDDMRegionSet to play back to. More...
 
virtual const DtDDMRegionSet & publishingRegions () const =0
 Get the publishing regions. More...
 
virtual void setStaticRegionFlag (bool enabled)
 Set status of static region. More...
 
virtual bool staticRegionFlag () const
 Return bool: are regions static? More...
 
virtual bool publishingToRegion (DtDDMRegionSP region)=0
 Determine if the publisher is already playing back to the region provided. More...
 
virtual void setWaitingForRegionData (bool waitForData)
 In some cases, regions are set based on values from attribute updates. More...
 
virtual bool waitingForRegionData ()
 Return bool: waiting for data required to set regions. More...
 
virtual void addUpdatedAttributes (const RTI::AttributeHandleValueMap &handleValues)
 Update the list of updated attributes. More...
 
virtual const
RTI::AttributeHandleSet * 
updatedAttributes () const
 Get the list of updated attributes. More...
 

Protected Member Functions

virtual DtHlaObjectWithStateRep * pubHlaObject ()=0
 Get the object's hlaObject from the actual publisher class. More...
 
virtual void sendTheseAttrs (const RTI::AttributeHandleSet &attrs, double scale, bool isStatic)=0
 Send an update containing the given attributes. More...
 
virtual void sendAttributes (const DtStateMsg &msg, double scaling, bool isStatic)
 Send an update containing the attributes from the given message. More...
 
virtual bool sendAllNextTick ()
 Get whether the publisher will send all attributes next tick. More...
 
virtual void setSendAllNextTick (bool yesNo=true)
 Set the publisher to send all attributes next tick. More...
 

Protected Attributes

DtTime myLastUpdateTime
 
DtLgrHlaHandle myLoggerObjectId
 
DtLgrHlaHandle myLoggerClassHandle
 
DtLgrHlaSimulationManagermySimMgr
 Simulation manager. More...
 
bool myWaitingForRegionData
 
bool myStaticRegionFlag
 
RTI::AttributeHandleSet * myUpdatedAttributes
 
bool mySendAllNextTick
 Stores whether all attributes will be set next tick. More...
 

Detailed Description

Responsible for defining the interface that Object publishers must have.

Constructor & Destructor Documentation

MAKLogger::DtLgrPublisherInterface::DtLgrPublisherInterface ( DtLgrHlaSimulationManager simMgr,
DtLgrHlaHandle  loggerObjectId,
DtLgrHlaHandle  loggerClassHandle 
)
virtual MAKLogger::DtLgrPublisherInterface::~DtLgrPublisherInterface ( )
virtual

DTOR.

Member Function Documentation

virtual void MAKLogger::DtLgrPublisherInterface::addUpdatedAttributes ( const RTI::AttributeHandleValueMap &  handleValues)
virtual

Update the list of updated attributes.

virtual DtPacket* MAKLogger::DtLgrPublisherInterface::createUpdatePacket ( const DtAbsoluteTime time)
virtual

Create an update packet with the given time from the publisher's encoded state data.

Note that because data is encoded, encoding adjustments like dead reckoning may be applied

virtual DtHlaObjectWithStateRep* MAKLogger::DtLgrPublisherInterface::pubHlaObject ( )
protectedpure virtual

Get the object's hlaObject from the actual publisher class.

Implemented in MAKLogger::DtHLAGenericPublisher, MAKLogger::DtLgrHlaEntityPublisher, and MAKLogger::DtLgrHlaAggregatePublisher.

virtual const DtDDMRegionSet& MAKLogger::DtLgrPublisherInterface::publishingRegions ( ) const
pure virtual
virtual bool MAKLogger::DtLgrPublisherInterface::publishingToRegion ( DtDDMRegionSP  region)
pure virtual

Determine if the publisher is already playing back to the region provided.

Implemented in MAKLogger::DtHLAGenericPublisher, MAKLogger::DtLgrHlaAggregatePublisher, and MAKLogger::DtLgrHlaEntityPublisher.

virtual bool MAKLogger::DtLgrPublisherInterface::sendAllNextTick ( )
protectedvirtual

Get whether the publisher will send all attributes next tick.

virtual void MAKLogger::DtLgrPublisherInterface::sendAttributes ( const DtStateMsg &  msg,
double  scaling,
bool  isStatic 
)
protectedvirtual

Send an update containing the attributes from the given message.

TSPI data is adjusted using scaling and static modifiers if necessary.

virtual void MAKLogger::DtLgrPublisherInterface::sendTheseAttrs ( const RTI::AttributeHandleSet &  attrs,
double  scale,
bool  isStatic 
)
protectedpure virtual

Send an update containing the given attributes.

TSPI data is adjusted using scaling and static modifiers if necessary.

Implemented in MAKLogger::DtHLAGenericPublisher, MAKLogger::DtLgrHlaEntityPublisher, and MAKLogger::DtLgrHlaAggregatePublisher.

virtual void MAKLogger::DtLgrPublisherInterface::sendUpdateAtScaleChangePoint ( double  oldScale,
double  newScale,
bool  wasStatic,
bool  isStatic 
)
pure virtual
virtual void MAKLogger::DtLgrPublisherInterface::setRegion ( const DtDDMRegionSet &  region)
pure virtual
virtual void MAKLogger::DtLgrPublisherInterface::setSendAllNextTick ( bool  yesNo = true)
protectedvirtual

Set the publisher to send all attributes next tick.

This should be called before each tick as it is reset to false after a tick.

virtual void MAKLogger::DtLgrPublisherInterface::setStaticRegionFlag ( bool  enabled)
virtual

Set status of static region.

When regions are static, region updates are not performed

virtual void MAKLogger::DtLgrPublisherInterface::setWaitingForRegionData ( bool  waitForData)
virtual

In some cases, regions are set based on values from attribute updates.

Set the status to indicate if the required attributes have been updated. When waiting for region data, updates may not be sent even when update is called.

virtual bool MAKLogger::DtLgrPublisherInterface::staticRegionFlag ( ) const
virtual

Return bool: are regions static?

virtual void MAKLogger::DtLgrPublisherInterface::tick ( double  scaling,
bool  isStatic 
)
pure virtual
virtual void MAKLogger::DtLgrPublisherInterface::update ( const DtStateMsg &  msg,
const DtAbsoluteTime updateTime,
bool  isTimeFromPast,
bool  isStateUpdate,
double  scaling,
bool  isStatic,
bool  sendFlag 
)
pure virtual
virtual const RTI::AttributeHandleSet* MAKLogger::DtLgrPublisherInterface::updatedAttributes ( ) const
virtual

Get the list of updated attributes.

virtual bool MAKLogger::DtLgrPublisherInterface::updateRegion ( const DtStateMsg &  msg)
virtual

The given message has been decoded into the state repository of the publisher.

Called immediately after decoding the message so that no other state should have changed other than the state repository. Update the region if appropriate. Return boolean: region has changed?

Reimplemented in MAKLogger::DtLgrHlaDdmEntityPublisher.

virtual bool MAKLogger::DtLgrPublisherInterface::waitingForRegionData ( )
virtual

Return bool: waiting for data required to set regions.

When waiting for region data, updates may not be sent even when update is called.

Member Data Documentation

DtTime MAKLogger::DtLgrPublisherInterface::myLastUpdateTime
protected
DtLgrHlaHandle MAKLogger::DtLgrPublisherInterface::myLoggerClassHandle
protected
DtLgrHlaHandle MAKLogger::DtLgrPublisherInterface::myLoggerObjectId
protected
bool MAKLogger::DtLgrPublisherInterface::mySendAllNextTick
protected

Stores whether all attributes will be set next tick.

DtLgrHlaSimulationManager& MAKLogger::DtLgrPublisherInterface::mySimMgr
protected

Simulation manager.

bool MAKLogger::DtLgrPublisherInterface::myStaticRegionFlag
protected
RTI::AttributeHandleSet* MAKLogger::DtLgrPublisherInterface::myUpdatedAttributes
protected
bool MAKLogger::DtLgrPublisherInterface::myWaitingForRegionData
protected

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

Document ID: Generated on Thu Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)