![]() |
VR-Link API Documentation for HLA Evolved
|
DtHlaStateEncoder is used to provide encoding of a state repository into a state message in an HLA (as opposed to DIS) environment. More...
Inheritance diagram for DtHlaStateEncoder:
Collaboration diagram for DtHlaStateEncoder:Public Types | |
| 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. | |
Public Member Functions | |
| DtHlaStateEncoder (DtExerciseConn *exConn, DtObjClassDesc *classDesc) | |
| constructor | |
| virtual | ~DtHlaStateEncoder () |
| destructor | |
| DtHlaStateEncoder (const DtHlaStateEncoder &orig) | |
| copy constructor | |
| DtHlaStateEncoder & | operator= (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) |
| virtual DtAttributeEncoder | encoder (const RTI::AttributeHandle &handle) |
| Get the attribute encoder for the specified handle. | |
| virtual 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 DtHlaStateEncoder * | clone (DtObjClassDesc *classDesc) const |
| Returns a new-ed clone of this object which corresponds to the class description classDesc. | |
| virtual DtHlaStateEncoder * | clone () const |
| Returns a new-ed clone of this object. | |
Static Public Member Functions | |
| 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 Attributes | |
| DtExerciseConn * | myExConn |
| DtObjClassDesc * | myClassDesc |
| 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::map< RTI::AttributeHandle, bool > | myReportedWarning |
| myReportedWarning is an array for keeping track of which warnings have already been reported | |
DtHlaStateEncoder is used to provide encoding of a state repository into a state message in an HLA (as opposed to DIS) environment.
| typedef bool(* DtHlaStateEncoder::DtAttributeChecker)(const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote) |
Attribute checking function declaration.
| typedef void(* DtHlaStateEncoder::DtAttributeEncoder)(const DtStateRepository &stateRep, RTI::AttributeHandleValuePairSet *avList, RTI::AttributeHandle handle) |
Attribute encoding function declaration.
1516 Note: In this case, the RTI::AttributeHandleValuePairSet is defined by VR-Link for backwards compatibility
| DtHlaStateEncoder::DtHlaStateEncoder | ( | DtExerciseConn * | exConn, |
| DtObjClassDesc * | classDesc | ||
| ) |
constructor
|
virtual |
destructor
| DtHlaStateEncoder::DtHlaStateEncoder | ( | const DtHlaStateEncoder & | orig | ) |
copy constructor
| DtAttributeChecker DtHlaStateEncoder::addChecker | ( | RTI::AttributeHandle | hand, |
| DtAttributeChecker | func | ||
| ) |
Add/Remove a checker function for the attribute specified by handle.
Returns the checker function which is replaced by the add/remove. Note: This is non-virtual since it is typically called by constructors.
Referenced by DtF18EntityEncoder::DtF18EntityEncoder().
| DtAttributeChecker DtHlaStateEncoder::addChecker | ( | char * | name, |
| DtAttributeChecker | func, | ||
| bool | complain = true |
||
| ) |
Add/Remove a checker function for the attribute specified by name.
Complain flag determines whether to print a warning if the attribute does not exist in the FOM. Returns the checker function which is replaced by the add/remove. Note: This is non-virtual since it is typically called by constructors.
| DtAttributeEncoder DtHlaStateEncoder::addEncoder | ( | RTI::AttributeHandle | hand, |
| DtAttributeEncoder | func | ||
| ) |
Add/Remove an encoding function for the attribute specified by handle.
Returns the encoding function which is replaced by the add/remove. Note: This is non-virtual since it is typically called by constructors.
Referenced by DtF18EntityEncoder::DtF18EntityEncoder().
| DtAttributeEncoder DtHlaStateEncoder::addEncoder | ( | char * | name, |
| DtAttributeEncoder | func, | ||
| bool | complain = true |
||
| ) |
Add/Remove an encoding function for the attribute specified by name.
Complain flag determines whether to print a warning if the attribute does not exist in the FOM. Returns the encoding function which is replaced by the add/remove. Note: This is non-virtual since it is typically called by constructors.
|
inlinevirtual |
Get the attribute checker for the specified handle.
References myCheckerList.
|
virtual |
Returns a new-ed clone of this object which corresponds to the class description classDesc.
Use this function if you want a subclass in the FOM to use the same encoder as its parent
|
virtual |
Returns a new-ed clone of this object.
|
virtual |
Encode necessary values from the state repository.
The second state repository represents what is seen by remote simulators and is used to determine when things need to be sent in the state message. includeThese is a set of attributes that should be included even if their thresholds have not been exceeded. neededAttrs is the set of owned attributes that are needed by the federation (i.e. we've received turnOnUpdates messages including these attributes)
Reimplemented in DtGenericObjectEncoder.
|
inlinevirtual |
Get the attribute encoder for the specified handle.
References myEncoderList.
|
static |
A checker function that always returns 0, meaning that the attribute for which it is being used will never be deemed necessary to send.
|
inlinevirtual |
Get the object's class handle.
References myHandle.
| DtHlaStateEncoder& DtHlaStateEncoder::operator= | ( | const DtHlaStateEncoder & | orig | ) |
assignment operator
| DtAttributeChecker DtHlaStateEncoder::removeChecker | ( | RTI::AttributeHandle | hand | ) |
| DtAttributeChecker DtHlaStateEncoder::removeChecker | ( | char * | name, |
| bool | complain = true |
||
| ) |
| DtAttributeEncoder DtHlaStateEncoder::removeEncoder | ( | RTI::AttributeHandle | hand | ) |
| DtAttributeEncoder DtHlaStateEncoder::removeEncoder | ( | char * | name, |
| bool | complain = true |
||
| ) |
|
static |
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.
|
protected |
Referenced by checker().
|
protected |
|
protected |
myEncoderList and myCheckerList are arrays of classDesc->maxAttrHandle() items.
Referenced by encoder().
|
protected |
|
protected |
Referenced by objectClassHandle().
|
protected |
myReportedWarning is an array for keeping track of which warnings have already been reported