VR-Link API Documentation for HLA 1516
hNIffXpondrEnc.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 
00008 #if DtHLA
00009 
00010 #ifndef DtNatoIffTransponderEncoder_H_
00011 #define DtNatoIffTransponderEncoder_H_
00012 
00013 #include "hNatoIffEnc.h"
00014 
00018 
00019 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(attrName) \
00020    DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
00021 
00022 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(attrName) \
00023    DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
00024 
00025 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_CHECKER( \
00026    attrName, inspector) \
00027    DtDEFINE_SIMPLE_ATTR_CHECKER(DtNatoIffTransponderEncoder, \
00028       DtIffStateRepository, attrName, inspector)
00029 
00030 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_ENCODER( \
00031    attrName, netType, inspector) \
00032    DtDEFINE_SIMPLE_ATTR_ENCODER(DtNatoIffTransponderEncoder, \
00033       DtIffStateRepository, attrName, netType, inspector)
00034 
00035 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_CHECKER_WITH_PARAM( \
00036    attrName, mutator, param) \
00037    DtDEFINE_SIMPLE_IFF_ATTR_CHECKER_WITH_PARAM ( \
00038      DtNatoIffTransponderEncoder, attrName, mutator, param)
00039 
00040 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_ENCODER_WITH_PARAM( \
00041    attrName, netType, mutator, param) \
00042    DtDEFINE_SIMPLE_IFF_ATTR_ENCODER_WITH_PARAM ( \
00043      DtNatoIffTransponderEncoder, attrName, netType, mutator, param)
00044 
00045 class DT_DLL_VL DtNatoIffTransponderEncoder : public DtNatoIffEncoder
00046 {
00047 public:
00048 
00050    DtNatoIffTransponderEncoder(
00051       DtExerciseConn* exConn,
00052       DtObjClassDesc* classDesc);
00053 
00055    virtual ~DtNatoIffTransponderEncoder();
00056 
00058    DtNatoIffTransponderEncoder(
00059       const DtNatoIffTransponderEncoder& orig);
00060 
00062    DtNatoIffTransponderEncoder& operator=(
00063       const DtNatoIffTransponderEncoder& orig);
00064 
00065 public:
00066 
00067    static DtHlaStateEncoder* create(
00068       DtExerciseConn* exConn,
00069       DtObjClassDesc* classDesc);
00070 
00071 protected:
00072 
00073   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(EmergencyOn);
00074   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(IdentSquawkFlashOn);
00075   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode1Code);
00076   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode2Code);
00077   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode3Code);
00078   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(StiOn);
00079 
00080   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(EmergencyOn);
00081   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(IdentSquawkFlashOn);
00082   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode1Code);
00083   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode2Code);
00084   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode3Code);
00085   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(StiOn);
00086 
00088   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(ModeCAltitude);
00089   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(ModeCAltitudeAvailable);
00090   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(ModeCAltitude);
00091   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(ModeCAltitudeAvailable);
00092 
00094   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode5CAltitude);
00095   DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode5CAltitudeAvailable);
00096   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode5CAltitude);
00097   DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode5CAltitudeAvailable);
00098 };
00099 
00100 #endif
00101 #endif
00102 

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)