VR-Link API Documentation for DIS
natoIffDecoder.h
Go to the documentation of this file.
1 #if DtHLA
2 
3 #ifndef DtNatoIffDecoder_H_
4 #define DtNatoIffDecoder_H_
5 
6 #include "iffDecoder.h"
7 
11 
15 
18 
22 #define DtDECLARE_NATO_IFF_ATTR_DECODER(attrName) \
23  DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName)
24 
32 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER( \
33  attrName, netType, inspector) \
34  DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER_WITH_CAST( \
35  attrName, netType, inspector, (netType))
36 
42 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER_WITH_CAST( \
43  attrName, netType, mutator, castExpr) \
44  DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \
45  DtNatoIffDecoder, DtIffStateRepository, \
46  attrName, netType, mutator, castExpr)
47 
48 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM( \
49  attrName, netType, mutator, param, castExpr) \
50  DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM( \
51  DtNatoIffDecoder, attrName, netType, mutator, param, castExpr)
52 
53 class DT_DLL_VL DtNatoIffDecoder : public DtIffDecoder
54 {
55 public:
56 
58  DtNatoIffDecoder(
59  DtExerciseConn* exConn,
60  DtObjClassDesc* classDesc);
61 
63  virtual ~DtNatoIffDecoder();
64 
66  DtNatoIffDecoder(const DtNatoIffDecoder& orig);
67 
69  DtNatoIffDecoder& operator=(const DtNatoIffDecoder& orig);
70 
71 public:
72 
73  static DtHlaStateDecoder* create(
74  DtExerciseConn* exConn,
75  DtObjClassDesc* classDesc);
76 
77 protected:
78 
79  DtDECLARE_NATO_IFF_ATTR_DECODER(AlternateMode4);
80 
81  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1Enabled);
82  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1IsDamaged);
83  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1IsMalfunctioning);
84  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1IsOn);
85 
86  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2Enabled);
87  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2IsDamaged);
88  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2IsMalfunctioning);
89  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2IsOn);
90 
91  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3Enabled);
92  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3IsDamaged);
93  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3IsMalfunctioning);
94  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3IsOn);
95 
96 
97  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AEnabled);
98  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AIsDamaged);
99  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AIsMalfunctioning);
100  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AIsOn);
101 
102  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4Enabled);
103  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4IsDamaged);
104  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4IsMalfunctioning);
105  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4IsOn);
106  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4PseudoCrypto);
107  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4PseudoCryptoAvailable);
108 
109  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCEnabled);
110  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCIsDamaged);
111  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCIsMalfunctioning);
112  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCIsOn);
113 
114  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CEnabled);
115  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CIsDamaged);
116  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CIsMalfunctioning);
117  DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CIsOn);
118 
119  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSEnabled);
120  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsDamaged);
121  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsMalfunctioning);
122  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsOn);
123  DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsTcasI);
124 
125 };
126 
127 #endif
128 #endif
129 

Document ID: Generated on Wed Oct 23 22:25:48 EDT 2013 from SVN revision 132765
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)