VR-Link API Documentation for DIS
hNIffXpondrDec.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 DtNatoIffTransponderDecoder_H_
00009 #define DtNatoIffTransponderDecoder_H_
00010 
00011 #include "hNatoIffDec.h"
00012 
00016 
00017 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(attrName) \
00018    DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName)
00019 
00020 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER( \
00021    attrName, netType, inspector) \
00022    DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \
00023       attrName, netType, inspector, (netType))
00024 
00025 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \
00026    attrName, netType, mutator, castExpr) \
00027    DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \
00028       DtNatoIffTransponderDecoder, DtIffStateRepository, \
00029       attrName, netType, mutator, castExpr)
00030 
00031 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST_AND_PARAM( \
00032    attrName, netType, mutator, param, castExpr) \
00033    DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM ( \
00034      DtNatoIffTransponderDecoder, attrName, netType, mutator, param, castExpr)
00035 
00036 class DT_DLL_VL DtNatoIffTransponderDecoder : public DtNatoIffDecoder
00037 {
00038 public:
00039 
00041    DtNatoIffTransponderDecoder(
00042       DtExerciseConn* exConn,
00043       DtObjClassDesc* classDesc);
00044 
00046    virtual ~DtNatoIffTransponderDecoder();
00047 
00049    DtNatoIffTransponderDecoder(
00050       const DtNatoIffTransponderDecoder& orig);
00051 
00053    DtNatoIffTransponderDecoder& operator=(
00054       const DtNatoIffTransponderDecoder& orig);
00055 
00056 public:
00057 
00058    static DtHlaStateDecoder* create(
00059       DtExerciseConn* exConn,
00060       DtObjClassDesc* classDesc);
00061 
00062 protected:
00063 
00064   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(EmergencyOn);
00065   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(IdentSquawkFlashOn);
00066   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode1Code);
00067   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode2Code);
00068   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode3Code);
00069   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(ModeCAltitude);
00070   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(ModeCAltitudeAvailable);
00071   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(StiOn);
00072 
00074   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode5CAltitude);
00075   DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode5CAltitudeAvailable);
00076 };
00077 
00078 #endif
00079 #endif
00080 

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)