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 Member Functions | Static Public Member Functions | Protected Member Functions
DtBaseEntityEncoder Class Reference

class DtBaseEntityEncoder: More...

+ Inheritance diagram for DtBaseEntityEncoder:
+ Collaboration diagram for DtBaseEntityEncoder:

Public Member Functions

 DtBaseEntityEncoder (DtExerciseConn *exConn, DtObjClassDesc *classDesc)
 constructor
virtual ~DtBaseEntityEncoder ()
 destructor
 DtBaseEntityEncoder (const DtBaseEntityEncoder &orig)
 copy constructor
DtBaseEntityEncoderoperator= (const DtBaseEntityEncoder &orig)
 assignment operator
- Public Member Functions inherited from DtHlaStateEncoder
 DtHlaStateEncoder (DtExerciseConn *exConn, DtObjClassDesc *classDesc)
 constructor
virtual ~DtHlaStateEncoder ()
 destructor
 DtHlaStateEncoder (const DtHlaStateEncoder &orig)
 copy constructor
DtHlaStateEncoderoperator= (const DtHlaStateEncoder &orig)
 assignment operator
DtAttributeEncoder addEncoder (RTI::AttributeHandle hand, DtAttributeEncoder func)
 Add/Remove an encoding function for the attribute specified by handle.
DtAttributeEncoder removeEncoder (RTI::AttributeHandle hand)
DtAttributeEncoder addEncoder (char *name, DtAttributeEncoder func, bool complain=true)
 Add/Remove an encoding function for the attribute specified by name.
DtAttributeEncoder removeEncoder (char *name, bool complain=true)
DtAttributeChecker addChecker (RTI::AttributeHandle hand, DtAttributeChecker func)
 Add/Remove a checker function for the attribute specified by handle.
DtAttributeChecker removeChecker (RTI::AttributeHandle hand)
DtAttributeChecker addChecker (char *name, DtAttributeChecker func, bool complain=true)
 Add/Remove a checker function for the attribute specified by name.
DtAttributeChecker removeChecker (char *name, bool complain=true)
DtAttributeEncoder encoder (const RTI::AttributeHandle &handle)
 Get the attribute encoder for the specified handle.
DtAttributeChecker checker (const RTI::AttributeHandle &handle)
 Get the attribute checker for the specified handle.
virtual void encode (const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote, const RTI::AttributeHandleSet &neededAttrs, const RTI::AttributeHandleSet &includeThese, DtStateMsg *msg)
 Encode necessary values from the state repository.
virtual RTI::ObjectClassHandle objectClassHandle ()
 Get the object's class handle.
virtual DtHlaStateEncoderclone (DtObjClassDesc *classDesc) const
 Returns a new-ed clone of this object which corresponds to the class description classDesc.
virtual DtHlaStateEncoderclone () const
 Returns a new-ed clone of this object.
virtual void preCalculateEligible (const RTI::AttributeHandleSet &neededAttrs)

Static Public Member Functions

static DtHlaStateEncodercreate (DtExerciseConn *exConn, DtObjClassDesc *classDesc)
 Create a DtBaseEntityEncoder. Caller is responsible for deletion.
static bool tpsiChanged (const DtBaseEntityStateRepository &stateRep, const DtBaseEntityStateRepository &asSeenByRemote)
 Get whether or not rotational or translational thresholds have been exceeded.
- Static Public Member Functions inherited from DtHlaStateEncoder
static bool trueChecker (const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote)
 A checker function that always returns 1, meaning that the attribute for which it is being used will be deemed necessary to send on every tick.
static bool falseChecker (const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote)
 A checker function that always returns 0, meaning that the attribute for which it is being used will never be deemed necessary to send.

Protected Member Functions

 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (Spatial)
 Static need<Attribute> member functions.
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (RelativeSpatial)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (IsPartOf)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (AccelerationVector)
 For versions > 1.0.
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (AngularVelocityVector)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (EntityType)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (IsFrozen)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (Orientation)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (VelocityVector)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (DeadReckoningAlgorithm)
 For versions > 0.8.
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (Position)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (EntityIdentifier)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (DRAlgorithm)
 For versions <= 0.8.
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (WorldLocation)
 DtDECLARE_BASE_ENTITY_ATTR_CHECKER (EntityID)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (Spatial)
 Static encode<Attribute> member functions.
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (RelativeSpatial)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (IsPartOf)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (IsPartOf_RPR_20014)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (AccelerationVector)
 For versions > 1.0.
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (AngularVelocityVector)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (EntityType)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (IsFrozen)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (Orientation)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (VelocityVector)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (DeadReckoningAlgorithm)
 For versions > 0.8.
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (Position)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (EntityIdentifier)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (DRAlgorithm)
 For versions <= 0.8.
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (WorldLocation)
 DtDECLARE_BASE_ENTITY_ATTR_ENCODER (EntityID)

Additional Inherited Members

- Public Types inherited from DtHlaStateEncoder
typedef void(* DtAttributeEncoder )(const DtStateRepository &stateRep, RTI::AttributeHandleValuePairSet *avList, RTI::AttributeHandle handle)
 Attribute encoding function declaration.
typedef bool(* DtAttributeChecker )(const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote)
 Attribute checking function declaration.
typedef bool(* DtAttributeCheckerWithHandle )(const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote, RTI::AttributeHandle handle)
 Attribute checking function declaration that takes a handle and checks the specific attribute pointed to by that handle.
- Protected Attributes inherited from DtHlaStateEncoder
DtExerciseConnmyExConn
DtObjClassDescmyClassDesc
RTI::ObjectClassHandle myHandle
std::map< RTI::AttributeHandle,
DtAttributeEncoder
myEncoderList
 myEncoderList and myCheckerList are arrays of classDesc->maxAttrHandle() items.
std::map< RTI::AttributeHandle,
DtAttributeChecker
myCheckerList
std::vector< DtAttributeCheckermyCheckerCache
 This is a helper varaible that pre-lookups decoder functions in order to avoid making map calls on every update.
const RTI::AttributeHandleSet * myCachedSet
std::map< RTI::AttributeHandle,
bool
myReportedWarning
 myReportedWarning is an array for keeping track of which warnings have already been reported

Detailed Description

class DtBaseEntityEncoder:

Instances of DtBaseEntityEncoder are used to encode a base entity state repository into a state message in an HLA (as opposed to DIS) environment.

Constructor & Destructor Documentation

DtBaseEntityEncoder::DtBaseEntityEncoder ( DtExerciseConn exConn,
DtObjClassDesc classDesc 
)

constructor

virtual DtBaseEntityEncoder::~DtBaseEntityEncoder ( )
virtual

destructor

DtBaseEntityEncoder::DtBaseEntityEncoder ( const DtBaseEntityEncoder orig)

copy constructor

Member Function Documentation

static DtHlaStateEncoder* DtBaseEntityEncoder::create ( DtExerciseConn exConn,
DtObjClassDesc classDesc 
)
static
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( Spatial  )
protected

Static need<Attribute> member functions.

For versions greater than 2.0006

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( RelativeSpatial  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( IsPartOf  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( AccelerationVector  )
protected

For versions > 1.0.

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( AngularVelocityVector  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( EntityType  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( IsFrozen  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( Orientation  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( VelocityVector  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( DeadReckoningAlgorithm  )
protected

For versions > 0.8.

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( Position  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( EntityIdentifier  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( DRAlgorithm  )
protected

For versions <= 0.8.

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( WorldLocation  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_CHECKER ( EntityID  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( Spatial  )
protected

Static encode<Attribute> member functions.

For versions greater than 2.0006

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( RelativeSpatial  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( IsPartOf  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( IsPartOf_RPR_20014  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( AccelerationVector  )
protected

For versions > 1.0.

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( AngularVelocityVector  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( EntityType  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( IsFrozen  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( Orientation  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( VelocityVector  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( DeadReckoningAlgorithm  )
protected

For versions > 0.8.

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( Position  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( EntityIdentifier  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( DRAlgorithm  )
protected

For versions <= 0.8.

DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( WorldLocation  )
protected
DtBaseEntityEncoder::DtDECLARE_BASE_ENTITY_ATTR_ENCODER ( EntityID  )
protected
DtBaseEntityEncoder& DtBaseEntityEncoder::operator= ( const DtBaseEntityEncoder orig)

assignment operator

static bool DtBaseEntityEncoder::tpsiChanged ( const DtBaseEntityStateRepository stateRep,
const DtBaseEntityStateRepository asSeenByRemote 
)
static

Get whether or not rotational or translational thresholds have been exceeded.


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

Document ID: Generated on Mon Feb 6 18:36:34 EST 2017 from SVN revision 173107
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)