11 #ifndef DtIffEncoder_H_
12 #define DtIffEncoder_H_
30 #define DtDECLARE_IFF_ATTR_CHECKER(attrName) \
31 DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
35 #define DtDECLARE_IFF_ATTR_ENCODER(attrName) \
36 DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
42 #define DtDEFINE_SIMPLE_IFF_ATTR_ENCODER( \
43 attrName, netType, inspector) \
44 DtDEFINE_SIMPLE_ATTR_ENCODER(DtIffEncoder, \
45 DtIffStateRepository, attrName, netType, inspector)
52 #define DtDEFINE_SIMPLE_IFF_ATTR_CHECKER( \
53 attrName, inspector) \
54 DtDEFINE_SIMPLE_ATTR_CHECKER(DtIffEncoder, \
55 DtIffStateRepository, attrName, inspector)
62 #define DtDEFINE_SIMPLE_IFF_ATTR_ENCODER_WITH_PARAM( \
63 encClass, attrName, netType, inspector, param) \
64 void encClass::encode##attrName(const DtIffStateRepository& rep, \
65 RTI::AttributeHandleValuePairSet* attrs, \
66 RTI::AttributeHandle attrHandle) \
69 netVal = rep.inspector(param); \
70 attrs->add(attrHandle, (char*) &netVal, sizeof(netType)); \
78 #define DtDEFINE_SIMPLE_IFF_ATTR_CHECKER_WITH_PARAM( \
79 encClass, attrName, inspector, param) \
80 bool encClass::need##attrName(const DtIffStateRepository& stateRep, \
81 const DtIffStateRepository& asSeenByRemote) \
83 return (bool) !(stateRep.inspector(param) == \
84 asSeenByRemote.inspector(param)); \
DtBaseEmbeddedSystemEncoder & operator=(const DtBaseEmbeddedSystemEncoder &orig)
assignment operator
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:60
Instances of DtBaseEmbeddedSystemEncoder are used to encode a base embedded system state repository i...
Definition: baseEmbeddedSystemEncoder.h:35
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
#define DtDECLARE_IFF_ATTR_CHECKER(attrName)
We define several macros that can be helpful in defining the class, and the individual decoding funct...
Definition: iffEncoder.h:30
Defines a protocol independent repository of attributes for IFF objects.
Definition: iffStateRepository.h:57
#define DtDECLARE_IFF_ATTR_ENCODER(attrName)
This is used to declare static member functions that perform attribute encoding.
Definition: iffEncoder.h:35
DtHlaStateEncoder is used to provide encoding of a state repository into a state message in an HLA (a...
Definition: hlaStateEncoder.h:30
This file provides a declaration of the class DtBaseEmbeddedSystemEncoder.
An instance of DtObjClassDesc is a "class descriptor" for an HLA Object class.
Definition: objClassDesc13.h:41
The DtIffEncoder class:
Definition: iffEncoder.h:90
static DtHlaStateEncoder * create(DtExerciseConn *exConn, DtObjClassDesc *classDesc)
Create a DtBaseEntityEncoder. Caller is responsible for deletion.