VR-Link API Documentation for HLA Evolved
hNatoIffEnc.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 #if DtHLA
00007 
00008 #ifndef DtNatoIffEncoder_H_
00009 #define DtNatoIffEncoder_H_
00010 
00011 #include "hIffEnc.h"
00012 
00016 
00019 class DT_DLL_VL DtIffStateRepository;
00020 
00023 
00026 #define DtDECLARE_NATO_IFF_ATTR_CHECKER(attrName) \
00027    DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
00028 
00031 #define DtDECLARE_NATO_IFF_ATTR_ENCODER(attrName) \
00032    DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
00033 
00038 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_ENCODER( \
00039    attrName, netType, inspector) \
00040    DtDEFINE_SIMPLE_ATTR_ENCODER(DtNatoIffEncoder, \
00041       DtIffStateRepository, attrName, netType, inspector)
00042 
00048 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_CHECKER( \
00049    attrName, inspector) \
00050    DtDEFINE_SIMPLE_ATTR_CHECKER(DtNatoIffEncoder, \
00051       DtIffStateRepository, attrName, inspector)
00052 
00058 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_ENCODER_WITH_PARAM( \
00059    attrName, netType, inspector, param) \
00060    DtDEFINE_SIMPLE_IFF_ATTR_ENCODER_WITH_PARAM( \
00061       DtNatoIffEncoder, attrName, netType, inspector, param)
00062 
00068 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_CHECKER_WITH_PARAM( \
00069    attrName, inspector, param) \
00070    DtDEFINE_SIMPLE_IFF_ATTR_CHECKER_WITH_PARAM( \
00071      DtNatoIffEncoder, attrName, inspector, param)
00072 
00073 
00074 class DT_DLL_VL DtNatoIffEncoder : public DtIffEncoder
00075 {
00076 public:
00077 
00079    DtNatoIffEncoder(
00080       DtExerciseConn* exConn,
00081       DtObjClassDesc* classDesc);
00082 
00084    virtual ~DtNatoIffEncoder();
00085 
00087    DtNatoIffEncoder(const DtNatoIffEncoder& orig);
00088 
00090    DtNatoIffEncoder& operator=(const DtNatoIffEncoder& orig);
00091 
00092 public:
00093 
00094   static DtHlaStateEncoder* create(
00095       DtExerciseConn* exConn,
00096       DtObjClassDesc* classDesc);
00097 
00098 protected:
00099 
00100    DtDECLARE_NATO_IFF_ATTR_CHECKER(AlternateMode4);
00101 
00102    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1Enabled);
00103    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsDamaged);
00104    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsMalfunctioning);
00105    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsOn);
00106 
00107    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2Enabled);
00108    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsDamaged);
00109    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsMalfunctioning);
00110    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsOn);
00111 
00112    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3Enabled);
00113    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsDamaged);
00114    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsMalfunctioning);
00115    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsOn);
00116 
00118    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AEnabled);
00119    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsDamaged);
00120    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsMalfunctioning);
00121    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsOn);
00122 
00123    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4Enabled);
00124    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsDamaged);
00125    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsMalfunctioning);
00126    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsOn);
00127    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4PseudoCrypto);
00128    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4PseudoCryptoAvailable);
00129 
00131    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCEnabled);
00132    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsDamaged);
00133    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsMalfunctioning);
00134    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsOn);
00135 
00137    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CEnabled);
00138    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsDamaged);
00139    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsMalfunctioning);
00140    DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsOn);
00141 
00142    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSEnabled);
00143    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsDamaged);
00144    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsMalfunctioning);
00145    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsOn);
00146    DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsTcasI);
00147 
00148    DtDECLARE_NATO_IFF_ATTR_ENCODER(AlternateMode4);
00149 
00150    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1Enabled);
00151    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsDamaged);
00152    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsMalfunctioning);
00153    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsOn);
00154 
00155    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2Enabled);
00156    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsDamaged);
00157    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsMalfunctioning);
00158    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsOn);
00159 
00160    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3Enabled);
00161    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsDamaged);
00162    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsMalfunctioning);
00163    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsOn);
00164 
00165    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AEnabled);
00166    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsDamaged);
00167    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsMalfunctioning);
00168    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsOn);
00169 
00170    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4Enabled);
00171    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsDamaged);
00172    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsMalfunctioning);
00173    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsOn);
00174    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCrypto);
00175    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCryptoAvailable);
00176 
00177    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCEnabled);
00178    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsDamaged);
00179    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsMalfunctioning);
00180    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsOn);
00181 
00182    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CEnabled);
00183    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsDamaged);
00184    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsMalfunctioning);
00185    DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsOn);
00186 
00187    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSEnabled);
00188    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsDamaged);
00189    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsMalfunctioning);
00190    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsOn);
00191    DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsTcasI);
00192 
00193 };
00194 
00195 #endif
00196 #endif
00197 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)