3 #ifndef DtRRBIffDecoder_H_
4 #define DtRRBIffDecoder_H_
19 #define DtDECLARE_RRB_IFF_ATTR_DECODER(attrName) \
20 DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName)
29 #define DtDEFINE_SIMPLE_RRB_IFF_ATTR_DECODER( \
30 attrName, netType, inspector) \
31 DtDEFINE_SIMPLE_RRB_IFF_ATTR_DECODER_WITH_CAST( \
32 attrName, netType, inspector, (netType))
41 #define DtDEFINE_SIMPLE_RRB_ATTR_DECODER_WITH_CAST( \
42 decClass, stateRepClass, attrName, netType, mutator, castExpr) \
43 void decClass::decode##attrName( \
44 stateRepClass* stateRep, \
45 const RTI::AttributeHandleValuePairSet& attrs, \
48 RTI::ULong length = 0; \
49 netType* netValPtr = (netType*)attributeData(attrs, index, length, sizeof(netType), #attrName); \
52 stateRep->rrb()->mutator(castExpr *netValPtr); \
61 #define DtDEFINE_SIMPLE_RRB_IFF_ATTR_DECODER_WITH_CAST( \
62 attrName, netType, mutator, castExpr) \
63 DtDEFINE_SIMPLE_RRB_ATTR_DECODER_WITH_CAST( \
64 DtRRBIffDecoder, DtIffStateRepository, \
65 attrName, netType, mutator, castExpr)
68 class DT_DLL_VL DtRRBIffDecoder :
public DtIffDecoder
74 DtObjClassDesc* classDesc);
77 virtual ~DtRRBIffDecoder();
80 DtRRBIffDecoder(
const DtRRBIffDecoder& orig);
83 DtRRBIffDecoder& operator=(
const DtRRBIffDecoder& orig);
87 static DtHlaStateDecoder* create(
89 DtObjClassDesc* classDesc);
93 DtDECLARE_RRB_IFF_ATTR_DECODER(Code);
94 DtDECLARE_RRB_IFF_ATTR_DECODER(IsDamaged);
95 DtDECLARE_RRB_IFF_ATTR_DECODER(IsMalfunctioning);
96 DtDECLARE_RRB_IFF_ATTR_DECODER(IsOn);
97 DtDECLARE_RRB_IFF_ATTR_DECODER(PowerReduction);
98 DtDECLARE_RRB_IFF_ATTR_DECODER(RadarEnhancement);
99 DtDECLARE_RRB_IFF_ATTR_DECODER(PowerReductionIsOn);
100 DtDECLARE_RRB_IFF_ATTR_DECODER(RadarEnhancementIsOn);
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Instances of DtRRBStateRepository are used to store state data for IFFData.RRB objects.
Definition: iffRRBStateRepository.h:29