VR-Link API Documentation for HLA 1.3
 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
DtIffPublisher Class Reference

class DtIffPublisher: More...

+ Inheritance diagram for DtIffPublisher:
+ Collaboration diagram for DtIffPublisher:

Public Types

typedef DtIffStateRepository *(* DtStateRepCreator )()
 Function prototype for functions that create DtEntityStateRepositories. More...
 

Public Member Functions

 DtIffPublisher (DtIffStateRepository *stateRepToUse, DtExerciseConn *conn, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor – State Rep Must have the NavaidsSysType set. More...
 
 DtIffPublisher (DtIffAtcNavaidsSysType type, DtExerciseConn *conn, DtIffAtcNavaidsSysName systemName, DtEntityIdentifier entityId, DtVector32 relativePosition=DtVector32::zero(), std::vector< DtModeType > enabledModes={DtMode1, DtMode2, DtMode3A, DtMode3C, DtMode5, DtModeS, DtTCAS}, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor – State Rep Must have the NavaidsSysType set Accepts enableMode parameters to specify which modes are enabled for a given system. More...
 
 DtIffPublisher (RTI::ObjectClassHandle h, DtExerciseConn *conn, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor. More...
 
 DtIffPublisher (DtIffAtcNavaidsSysType type, DtExerciseConn *conn, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor. More...
 
 DtIffPublisher (DtHlaObjectWithStateRep *obj, DtExerciseConn *conn)
 Constructor that creates a publisher for an existing DtHlaObject. More...
 
virtual ~DtIffPublisher ()
 destructor More...
 
virtual bool tick ()
 Tick the publisher, returns true if data is sent. More...
 
virtual DtIffStateRepositoryiffStateRep ()
 Returns a pointer to the IffStateRepository - through which you can set current state information. More...
 
virtual DtIffStateRepositoryisr ()
 Synonym for iffStateRep() More...
 
- Public Member Functions inherited from DtObjectPublisher
 DtObjectPublisher (DtExerciseConn *conn, DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, bool okToDeleteStateRep=true, const DtDDMRegionSet *regionSet=0)
 Constructor. More...
 
virtual ~DtObjectPublisher ()
 Destructor. More...
 
virtual void setHlaObject (const char *className, DtHlaStateEncoder *encoder=0, DtHlaStateDecoder *decoder=0, const char *objectName=0, const DtDDMRegionSet *regionSet=0)
 A DtObjectPublisher is not capable of communicating data through the RTI until setHlaObject is called. More...
 
virtual void setHlaObject (RTI::ObjectClassHandle hand, DtHlaStateEncoder *encoder=0, DtHlaStateDecoder *decoder=0, const char *objectName=0, const DtDDMRegionSet *regionSet=0)
 This version takes a classHandle and optional object name, and creates the DtHlaObject for you. More...
 
virtual void setHlaObject (DtHlaObjectWithStateRep *obj, DtHlaStateEncoder *encoder=0, DtHlaStateDecoder *decoder=0)
 This version takes an existing DtHlaObject, and uses it. More...
 
virtual void detachHlaObject ()
 Detach HLA object - bringing the DtObjectPublisher back to the state it was in before setHlaObject was called. More...
 
virtual DtStateRepositorystateRep ()
 Returns a pointer to the DtStateRepository - through which you can set or inspect current state information. More...
 
virtual DtStateRepositorysr ()
 Synonym for stateRep(). More...
 
virtual DtStateRepositoryapproximateRemoteStateRep ()
 Returns a pointer to the approximate remote DtStateRepository – This state repository contains the contents of the last sent message. More...
 
virtual DtHlaStateDecoderdecoder ()
 Returns a pointer to the Decoder being used to decode state messages that we send back into the asSeenByRemote SR. More...
 
virtual DtHlaStateEncoderencoder ()
 Returns a pointer to the Encoder being used to encode current state into an outgoing message. More...
 
virtual DtHlaObjectWithStateRephlaObject ()
 Get the object's hlaObject. More...
 
virtual DtExerciseConnexerciseConn ()
 Get our exercise connection. More...
 
virtual const DtObjectIdid () const
 Get the object's local identifier. More...
 
virtual const DtObjectIdobjectId () const
 Get the object's local identifier. More...
 
virtual const DtObjectIdlocalId () const
 Get the object's local identifier. More...
 
virtual const DtStringname () const
 Get the object's name. More...
 
virtual const
DtGlobalObjectDesignator
globalId () const
 Get the HLA object's global object designator - the object name in RTI1.3.3, but the objectId in RTI1.0.3. More...
 
virtual void forceUpdate ()
 Specify a set of attributes that should be included in the ahvps the next time tick is called, even if they would not otherwise need to be sent. More...
 
virtual void forceUpdate (const RTI::AttributeHandleSet &set)
 
virtual bool parallelTick ()
 Tick (update) this object in parallel threads. More...
 
virtual void setDeleteObjInDtorFlag (bool onOff)
 Set/Get a flag that determines whether to try to delete the HLA object that we represent, upon destruction of this DtObjectPublisher. More...
 
virtual bool deleteObjInDtorFlag () const
 
virtual const DtDDMRegionSetpublishingRegions () const
 
virtual void addRegion (DtDDMRegionSP regionToAdd)
 Adds the specified region to the set of publishing regions, and calls associateRegionForUpdates on the RTI Ambassador. More...
 
virtual void removeRegion (DtDDMRegionSP regionToRemove)
 Removes the specified region from the set of publishing regions, and calls unassociateRegionForUpdates on the RTI Ambassador. More...
 
virtual void setUpdateRateWarningThreshold (unsigned short updatesPerSecond)
 Sets & overrides the default (static) updates per second for a specific instance If a negative integer is passed to it, it will use the difference of the max value of an unsigned short and the absolute value of the negative integer. More...
 
virtual unsigned short updateRateWarningThreshold () const
 Returns the value of the overridden rate warning threshold. More...
 
virtual void checkForUpdateRateWarning ()
 Helper function that determines whether or not to trigger a spam warning. More...
 
 DtObjectPublisher (DtExerciseConn *conn, const char *name=0)
 These constructors and init functions are obsolete, but are here for backwards compatibility with pre-3.4 releases. More...
 
void init (RTI::ObjectClassHandle hand, DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, DtHlaStateEncoder *encoder=0, DtHlaStateDecoder *decoder=0)
 
void init (const char *className, DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, DtHlaStateEncoder *encoder=0, DtHlaStateDecoder *decoder=0)
 

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 removeObjectCb (DtHlaObject *obj, void *pub)
 Callback to be called when our underlying DtHlaObject goes away. 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...
 

Protected Member Functions

 DtIffPublisher (const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor which does not include the DtExerciseConn and does not register the HLA object. More...
 
 DtIffPublisher (const DtIffPublisher &orig)
 copy constructor – not implemented More...
 
DtIffPublisheroperator= (const DtIffPublisher &orig)
 assignment operator – not implemented More...
 
const char * objectClassNameFromType (DtIffAtcNavaidsSysType type)
 Non-virtual since called from constructor. More...
 
virtual void initIffDataPublishers (DtExerciseConn *conn, const char *name, const DtDDMRegionSet *regionSetToUse, DtIffAtcNavaidsSysType type, std::vector< DtModeType > *enabledModesPtr=0)
 Creates IFFData publishers. More...
 
- Protected Member Functions inherited from DtObjectPublisher
 DtObjectPublisher (DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, bool okToDeleteStateRep=true, const DtDDMRegionSet *regionSet=0)
 Constructor which does not include the DtExerciseConn. More...
 
virtual void setExerciseConn (DtExerciseConn *conn)
 Allows the DtExerciseConn to be set after initial publisher creation. More...
 
virtual void processRemoveObject (DtHlaObject *obj)
 Called by removeObjectCb to detachHlaObject when our underlying DtHlaObject goes away. More...
 

Protected Attributes

DtMode1PublishermyMode1Publisher
 
DtMode2PublishermyMode2Publisher
 
DtMode3APublishermyMode3APublisher
 
DtMode3CPublishermyMode3CPublisher
 
DtMode4PublishermyMode4Publisher
 
DtMode5PublishermyMode5Publisher
 
DtModeSPublishermyModeSPublisher
 
DtTCASDataPublishermyTCASDataPublisher
 
DtSovietPublishermySovietPublisher
 
DtRRBPublishermyRRBPublisher
 
std::map< DtModeType,
std::wstring > 
myReservedDataNames
 
- Protected Attributes inherited from DtObjectPublisher
DtExerciseConnmyExConn
 
DtHlaObjectWithStateRepmyHlaObj
 
DtStateRepositorymyStateRep
 
DtStateRepositorymyAsSeenByRemote
 
DtHlaStateEncodermyEncoder
 
DtHlaStateDecodermyDecoder
 
DtObjectId myObjectId
 
bool myOkToDeleteStateRepFlag
 
DtString myName
 
bool myDeleteObjInDtorFlag
 
DtDDMRegionSet myPublishingRegions
 
DtTime myRealTimeLastUpdate
 
DtTime myLastSpamCheckTime
 
unsigned short myNumberOfUpdatesPerSecond
 
unsigned short myUpdateRateWarningThreshold
 
bool myCanWarn
 

Static Protected Attributes

static DtStateRepCreator theStateRepCreator
 
- Static Protected Attributes inherited from DtObjectPublisher
static unsigned short theDfltUpdateRateWarningThreshold
 Static member that holds the value of the number of updates to be sent to trigger a spam warning. More...
 

Detailed Description

class DtIffPublisher:

Instances of IffPublisher are used for local or source simulations of "Iff" objects. The publisher sends data to the network when necessary. This class is derived from DtObjectPublisher, which does most of the work. The derived class mostly exists to provide type safety, and to configure the base object.

Member Typedef Documentation

typedef DtIffStateRepository*(* DtIffPublisher::DtStateRepCreator)()

Function prototype for functions that create DtEntityStateRepositories.

Constructor & Destructor Documentation

DtIffPublisher::DtIffPublisher ( DtIffStateRepository stateRepToUse,
DtExerciseConn conn,
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor – State Rep Must have the NavaidsSysType set.

DtIffPublisher::DtIffPublisher ( DtIffAtcNavaidsSysType  type,
DtExerciseConn conn,
DtIffAtcNavaidsSysName  systemName,
DtEntityIdentifier  entityId,
DtVector32  relativePosition = DtVector32::zero(),
std::vector< DtModeType enabledModes = {DtMode1DtMode2DtMode3ADtMode3CDtMode5DtModeSDtTCAS},
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor – State Rep Must have the NavaidsSysType set Accepts enableMode parameters to specify which modes are enabled for a given system.

It also accepts the IFF System Type, indicating publishing of transponder, interrogator or other, etc

DtIffPublisher::DtIffPublisher ( RTI::ObjectClassHandle  h,
DtExerciseConn conn,
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor.

DtIffPublisher::DtIffPublisher ( DtIffAtcNavaidsSysType  type,
DtExerciseConn conn,
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor.

DtIffPublisher::DtIffPublisher ( DtHlaObjectWithStateRep obj,
DtExerciseConn conn 
)

Constructor that creates a publisher for an existing DtHlaObject.

(DtHlaObjectWithStateRep is derived from DtHlaObject.) Typically used in conjunction with ownership management, when you want to take ownership and begin updating some attributes of an object that you have already discovered.

virtual DtIffPublisher::~DtIffPublisher ( )
virtual

destructor

DtIffPublisher::DtIffPublisher ( const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)
protected

Constructor which does not include the DtExerciseConn and does not register the HLA object.

This is typically not desired, but may be useful in certain cases when a derived publisher wants to better control how the object is published.

DtIffPublisher::DtIffPublisher ( const DtIffPublisher orig)
protected

copy constructor – not implemented

Member Function Documentation

DtIffStateRepository * DtIffPublisher::iffStateRep ( )
inlinevirtual

Returns a pointer to the IffStateRepository - through which you can set current state information.

References DtObjectPublisher::myStateRep.

virtual void DtIffPublisher::initIffDataPublishers ( DtExerciseConn conn,
const char *  name,
const DtDDMRegionSet regionSetToUse,
DtIffAtcNavaidsSysType  type,
std::vector< DtModeType > *  enabledModesPtr = 0 
)
protectedvirtual

Creates IFFData publishers.

Parameters
connThe exercise connection
nameA user specifies name for the publisher
regionSetToUseThe DtDDMRegion
typeThe IFF System Type, indicating publishing of transponder, interrogator or other, etc
DtIffStateRepository * DtIffPublisher::isr ( )
inlinevirtual
const char* DtIffPublisher::objectClassNameFromType ( DtIffAtcNavaidsSysType  type)
protected

Non-virtual since called from constructor.

If you don't like the default mapping between entity type and object class, just pass the object class handle you want to the constructor.

DtIffPublisher& DtIffPublisher::operator= ( const DtIffPublisher orig)
protected

assignment operator – not implemented

static DtStateRepCreator DtIffPublisher::setStateRepCreator ( DtStateRepCreator  creator)
static

Give us a function to be used for creating SRs.

virtual bool DtIffPublisher::tick ( )
virtual

Tick the publisher, returns true if data is sent.

Reimplemented from DtObjectPublisher.

Member Data Documentation

DtMode1Publisher* DtIffPublisher::myMode1Publisher
protected
DtMode2Publisher* DtIffPublisher::myMode2Publisher
protected
DtMode3APublisher* DtIffPublisher::myMode3APublisher
protected
DtMode3CPublisher* DtIffPublisher::myMode3CPublisher
protected
DtMode4Publisher* DtIffPublisher::myMode4Publisher
protected
DtMode5Publisher* DtIffPublisher::myMode5Publisher
protected
DtModeSPublisher* DtIffPublisher::myModeSPublisher
protected
std::map<DtModeType, std::wstring> DtIffPublisher::myReservedDataNames
protected
DtRRBPublisher* DtIffPublisher::myRRBPublisher
protected
DtSovietPublisher* DtIffPublisher::mySovietPublisher
protected
DtTCASDataPublisher* DtIffPublisher::myTCASDataPublisher
protected
DtStateRepCreator DtIffPublisher::theStateRepCreator
staticprotected

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

Document ID: Generated on Wed Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)