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

Instances of DtEntityPublisher are used for local or source simulations of entities (i.e. More...

+ Inheritance diagram for DtEntityPublisher:
+ Collaboration diagram for DtEntityPublisher:

Public Types

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

Public Member Functions

 DtEntityPublisher (DtEntityStateRepository *stateRepToUse, DtExerciseConn *conn, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor – state rep must contain entityType. More...
 
 DtEntityPublisher (RTI::ObjectClassHandle h, DtExerciseConn *conn, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor. More...
 
 DtEntityPublisher (const DtEntityType &type, DtExerciseConn *conn, const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor. More...
 
 DtEntityPublisher (const DtEntityType &type, DtExerciseConn *conn, DtDeadReckonTypes algorithm, DtForceType forceId, const DtEntityType &guise=guiseSameAsType(), const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor. More...
 
 DtEntityPublisher (DtHlaObjectWithStateRep *obj, DtExerciseConn *conn)
 Constructor that creates a publisher for an existing DtHlaObject. More...
 
virtual ~DtEntityPublisher ()
 destructor More...
 
virtual DtEntityStateRepositoryentityStateRep ()
 Returns a pointer to the EntityStateRepository - through which you can set or inspect current state information. More...
 
virtual DtEntityStateRepositoryesr ()
 Synonym for entityStateRep(). More...
 
virtual void enableDiGuyInformation ()
 Signals that this object has DI Guy information. More...
 
virtual void tick ()
 If there is a region, update it, and then call down to base tick. More...
 
virtual DtOwnershipHandlersetOwnershipHandler (DtOwnershipHandler *handler)
 Sets the current ownership handler to handler. More...
 
virtual void divestObject ()
 Pass through to ownership manager. 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 void 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...
 
 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 const DtEntityTypeguiseSameAsType ()
 Returns a constant that can be passed to the constructor indicating that we should use the entity type as our guise. More...
 
static DtStateRepCreator setStateRepCreator (DtStateRepCreator creator)
 Give us a function to be used for creating SRs. More...
 
static void setDfltRotationThreshold (double r)
 
static double dfltRotationThreshold ()
 
static void setDfltTranslationThreshold (double t)
 
static double dfltTranslationThreshold ()
 
- 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...
 

Protected Member Functions

 DtEntityPublisher (const char *name=0, const DtDDMRegionSet *regionSetToUse=0)
 Constructor which does not include the DtExerciseConn and does not register the HLA object. More...
 
void init ()
 not virtual, called from the constructor More...
 
void createGeographicRegion (DtExerciseConn *conn)
 Creates the publishers region. More...
 
 DtEntityPublisher (const DtEntityPublisher &orig)
 copy constructor - Not Implemented More...
 
DtEntityPublisheroperator= (const DtEntityPublisher &orig)
 assignment operator - Not Implemented More...
 
const char * objectClassNameFromType (const DtEntityType &type)
 Non-virtual, since called from constructor. 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

DtDIGuyObjectPublishermyDiGuyObjectPub
 
DtBoost::shared_ptr
< DtGeodeticRegion
myGeodeticPublishingRegion
 
- Protected Attributes inherited from DtObjectPublisher
DtExerciseConnmyExConn
 
DtHlaObjectWithStateRepmyHlaObj
 
DtStateRepositorymyStateRep
 
DtStateRepositorymyAsSeenByRemote
 
DtHlaStateEncodermyEncoder
 
DtHlaStateDecodermyDecoder
 
DtObjectId myObjectId
 
bool myOkToDeleteStateRepFlag
 
DtString myName
 
bool myDeleteObjInDtorFlag
 
DtDDMRegionSet myPublishingRegions
 

Static Protected Attributes

static DtStateRepCreator theStateRepCreator
 

Detailed Description

Instances of DtEntityPublisher are used for local or source simulations of entities (i.e.

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

Member Typedef Documentation

typedef DtEntityStateRepository*(* DtEntityPublisher::DtStateRepCreator)()

Function prototype for functions that create DtEntityStateRepositories.

Constructor & Destructor Documentation

DtEntityPublisher::DtEntityPublisher ( DtEntityStateRepository stateRepToUse,
DtExerciseConn conn,
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor – state rep must contain entityType.

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

Constructor.

DtEntityPublisher::DtEntityPublisher ( const DtEntityType type,
DtExerciseConn conn,
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor.

DtEntityPublisher::DtEntityPublisher ( const DtEntityType type,
DtExerciseConn conn,
DtDeadReckonTypes  algorithm,
DtForceType  forceId,
const DtEntityType guise = guiseSameAsType(),
const char *  name = 0,
const DtDDMRegionSet regionSetToUse = 0 
)

Constructor.

DtEntityPublisher::DtEntityPublisher ( 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 DtEntityPublisher::~DtEntityPublisher ( )
virtual

destructor

DtEntityPublisher::DtEntityPublisher ( 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.

DtEntityPublisher::DtEntityPublisher ( const DtEntityPublisher orig)
protected

copy constructor - Not Implemented

Member Function Documentation

void DtEntityPublisher::createGeographicRegion ( DtExerciseConn conn)
protected

Creates the publishers region.

Not virtual, since it is called from the constructor.

Exceptions
DtExceptionif the region cannot be created
static double DtEntityPublisher::dfltRotationThreshold ( )
static
Deprecated:
Please use the DtThresholder static member functions instead.
static double DtEntityPublisher::dfltTranslationThreshold ( )
static
Deprecated:
Please use the DtThresholder static member functions instead.
virtual void DtEntityPublisher::divestObject ( )
virtual

Pass through to ownership manager.

virtual void DtEntityPublisher::enableDiGuyInformation ( )
virtual

Signals that this object has DI Guy information.

Once this has been set, the state repositories will contain a DI Guy state repository that allows you to access this data.

DtEntityStateRepository * DtEntityPublisher::entityStateRep ( )
inlinevirtual

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

References DtObjectPublisher::myStateRep.

DtEntityStateRepository * DtEntityPublisher::esr ( )
inlinevirtual
static const DtEntityType& DtEntityPublisher::guiseSameAsType ( )
static

Returns a constant that can be passed to the constructor indicating that we should use the entity type as our guise.

(g++ forces us to define this function before we define our constructors)

void DtEntityPublisher::init ( )
protected

not virtual, called from the constructor

const char* DtEntityPublisher::objectClassNameFromType ( const DtEntityType 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.

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

assignment operator - Not Implemented

static void DtEntityPublisher::setDfltRotationThreshold ( double  r)
static
Deprecated:
Please use the DtThresholder static member functions instead.
static void DtEntityPublisher::setDfltTranslationThreshold ( double  t)
static
Deprecated:
Please use the DtThresholder static member functions instead.
virtual DtOwnershipHandler* DtEntityPublisher::setOwnershipHandler ( DtOwnershipHandler handler)
virtual

Sets the current ownership handler to handler.

A DtOwnershipHandler is an object that encapsulates callback function for a variety of ownership-management-related functions. Returns previous handler.

static DtStateRepCreator DtEntityPublisher::setStateRepCreator ( DtStateRepCreator  creator)
static

Give us a function to be used for creating SRs.

virtual void DtEntityPublisher::tick ( )
virtual

If there is a region, update it, and then call down to base tick.

Reimplemented from DtObjectPublisher.

Member Data Documentation

DtDIGuyObjectPublisher* DtEntityPublisher::myDiGuyObjectPub
protected
DtBoost::shared_ptr<DtGeodeticRegion> DtEntityPublisher::myGeodeticPublishingRegion
protected
DtStateRepCreator DtEntityPublisher::theStateRepCreator
staticprotected

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

Document ID: Generated on Mon Apr 25 03:39:01 EDT 2022 from SVN revision 242502
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)