VR-Link API Documentation for DIS
iffSR.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00006 
00010 
00011 #ifndef DtIffStateRepository_H_
00012 #define DtIffStateRepository_H_
00013 
00014 #include <string.h>
00015 #include <vlutil/vlNetTypes.h>
00016 #include "hostStructs.h"
00017 #include "eventId.h"
00018 #include "embedSystemSR.h"
00019 #include "iffAtcNavParm.h"
00020 
00023 class DT_DLL_VL DtIffStateRepository : public DtEmbeddedSystemRepository
00024 {
00025 public:
00026 
00027   enum DtModeOrParameterKind {
00028     Enabled = 0,
00029     IsDamaged,
00030     IsMalfunctioning,
00031     IsOn
00032   };
00033 
00034 public:
00035 
00037    DtIffStateRepository();
00038 
00040    virtual ~DtIffStateRepository();
00041 
00043    DtIffStateRepository(const DtIffStateRepository& orig);
00044 
00046    DtIffStateRepository& operator=(const DtIffStateRepository& orig);
00047 
00049    virtual DtStateRepository* clone(bool copy = false) const;
00050 
00052    virtual void printData() const;
00053 
00055    virtual void printDataToStream(std::ostream& stream) const;
00056 
00058    virtual void setSystemType(DtIffAtcNavaidsSysType type );
00059    virtual DtIffAtcNavaidsSysType systemType() const;
00060 
00062    virtual void setSystemName(DtIffAtcNavaidsSysName name );
00063    virtual DtIffAtcNavaidsSysName systemName() const;
00064 
00066    virtual void setSystemMode(DtU8 mode );
00067    virtual DtU8 systemMode() const;
00068 
00070    virtual void setEventId(const DtEventId &eventid);
00071    virtual const DtEventId& eventId() const;
00072 
00074    virtual void setAlternateMode4(DtIffAtcNavaidsAltParm4 useMode4);
00075    virtual DtIffAtcNavaidsAltParm4 alternateMode4() const;
00076 
00078    virtual void setSystemIsOn(bool ison);
00079    virtual bool systemIsOn() const;
00080 
00082    virtual void setSystemIsOperational(bool isoperational);
00083    virtual bool systemIsOperational() const;
00084 
00090    virtual void setModeOrParameterVal(int type, int status, bool onOff);
00091    virtual bool getModeOrParameterVal(int type, int status) const;
00092 
00097    virtual void setModeOrParameterVal(char type, int status, bool onOff);
00098    virtual bool getModeOrParameterVal(char type, int status) const;
00099 
00102 
00103    virtual void setModeEnabled(char modeType, bool onOff);
00104    virtual bool modeEnabled(char modeType) const;
00105 
00106    virtual void setModeIsMalfunctioning(char modeType, bool onOff);
00107    virtual bool modeIsMalfunctioning(char modeType) const;
00108 
00109    virtual void setModeIsDamaged(char modeType, bool onOff);
00110    virtual bool modeIsDamaged(char modeType) const;
00111 
00112    virtual void setModeIsOn(char modeType, bool onOff);
00113    virtual bool modeIsOn(char modeType) const;
00114 
00118 
00119    virtual void setModeEnabled(int modeType, bool onOff);
00120    virtual bool modeEnabled(int modeType) const;
00121 
00122    virtual void setModeIsMalfunctioning(int modeType, bool onOff);
00123    virtual bool modeIsMalfunctioning(int modeType) const;
00124 
00125    virtual void setModeIsDamaged(int modeType, bool onOff);
00126    virtual bool modeIsDamaged(int modeType) const;
00127 
00128    virtual void setModeIsOn(int modeType, bool onOff);
00129    virtual bool modeIsOn(int modeType) const;
00130 
00132    virtual void setMode4PseudoCrypto(DtU16 val);
00133    virtual DtU16 mode4PseudoCrypto() const; 
00134 
00136    virtual void setMode4PseudoCryptoAvailable(bool onOff);
00137    virtual bool mode4PseudoCryptoAvailable() const; 
00138 
00140    virtual void setModeSIsTcasI(bool onOff);
00141    virtual bool modeSIsTcasI() const;
00142 
00146 
00147    virtual void setParameterEnabled(int paramNum, bool onOff);
00148    virtual bool parameterEnabled(int paramNum) const;
00149 
00150    virtual void setParameterIsMalfunctioning(int paramNum, bool onOff);
00151    virtual bool parameterIsMalfunctioning(int paramNum) const;
00152 
00153    virtual void setParameterIsDamaged(int paramNum, bool onOff);
00154    virtual bool parameterIsDamaged(int paramNum) const;
00155 
00156    virtual void setParameterIsOn(int paramNum, bool onOff);
00157    virtual bool parameterIsOn(int paramNum) const;
00158 
00164    virtual void setModeCode(int modeCodeNum, DtU16 val);
00165    virtual DtU16 modeCode(int modeCodeNum) const;
00166 
00168    virtual void setEmergencyOn(bool onOff);
00169    virtual bool emergencyOn() const;
00170 
00172    virtual void setIdentSquawkFlashOn(bool onOff);
00173    virtual bool identSquawkFlashOn() const;
00174 
00176    virtual void setModeCAltitudeAvailable(bool val);
00177    virtual bool modeCAltitudeAvailable() const;
00178 
00180    virtual void setModeCAltitude(DtInt16 val);
00181    virtual DtInt16 modeCAltitude() const;
00182 
00184    virtual void setStiOn(bool onOff);
00185    virtual bool stiOn() const;
00186 
00188    virtual void setCode(DtU8 code);
00189    virtual DtU8 code() const;
00190 
00192    virtual void setPowerReduction(bool onOff);
00193    virtual bool powerReduction() const;
00194 
00196    virtual void setIsDamaged(bool onOff);
00197    virtual bool isDamaged() const;
00198 
00200    virtual void setIsMalfunctioning(bool onOff);
00201    virtual bool isMalfunctioning() const;
00202 
00204    virtual void setIsOn(bool onOff);
00205    virtual bool isOn() const;
00206 
00208    virtual void setRadarEnhancement(bool onOff);
00209    virtual bool radarEnhancement() const;
00210 
00212 
00215    virtual void setLayer2DataAvailable(bool b);
00216    virtual bool layer2DataAvailable() const;
00217 
00219    virtual void setLayer2SpecificInfo(unsigned int val);
00220    virtual unsigned int layer2SpecificInfo() const;
00221 
00223    virtual void setBeamAzimuthCenter(DtFloat32 val);
00224    virtual DtFloat32 beamAzimuthCenter() const;
00225 
00227    virtual void setBeamAzimuthSweep(DtFloat32 val);
00228    virtual DtFloat32 beamAzimuthSweep() const;
00229    
00231    virtual void setBeamElevationCenter(DtFloat32 val);
00232    virtual DtFloat32 beamElevationCenter() const;
00233     
00235    virtual void setBeamElevationSweep(DtFloat32 val);
00236    virtual DtFloat32 beamElevationSweep() const;
00237  
00239    virtual void setBeamSweepSync(DtFloat32 val);
00240    virtual DtFloat32 beamSweepSync() const;
00241 
00243    virtual void setSecondaryOperationalDataParameter1(
00244       DtIffOperationalParameter1 val);
00245    virtual DtIffOperationalParameter1 
00246       secondaryOperationalDataParameter1() const;
00247 
00249    virtual void setSecondaryOperationalDataParameter2(
00250       DtIffOperationalParameter2 val);
00251    virtual DtIffOperationalParameter2 
00252       secondaryOperationalDataParameter2() const;
00253  
00255    virtual int numParameterSets() const;
00256    virtual void setNumParameterSets(int n);
00257 
00259    virtual bool setParamData(int parmIndex,
00260       const DtIffAtcNavaidsParameter& init);
00261 
00262    virtual bool getParmData(int parmIndex,
00263       DtIffAtcNavaidsParameter& record) const;
00264 
00265    virtual DtIffAtcNavaidsParameter paramData(
00266       int paramIndex, bool *valid = NULL) const; 
00267 
00268 public:
00269 
00271    static DtIffStateRepository* create();
00272 
00273 protected:
00274 
00275    
00276    DtIffAtcNavaidsSysType myType; 
00277    DtIffAtcNavaidsSysName myName; 
00278    DtU8 myMode; 
00279 
00280    DtFloat32 myBeamAzimuthCenter;
00281    DtFloat32 myBeamAzimuthSweep;
00282    DtFloat32 myBeamElevationCenter;
00283    DtFloat32 myBeamElevationSweep;
00284    DtFloat32 myBeamSweepSync;
00285    DtEventId myEventId;
00286    bool myLayer2DataAvailable;
00287 
00288    int myLayer2SpecificInfo;
00289    int myNumParamSets;
00290    DtIffAtcNavaidsParameter* myParamSets;
00291    DtIffAtcNavaidsParameter myEmptyParamSet;
00292    
00293    DtIffOperationalParameter1 mySecondaryOperationalDataParameter1;
00294    DtIffOperationalParameter2 mySecondaryOperationalDataParameter2;
00295    bool mySystemIsOn;
00296    bool mySystemIsOperational;
00297 
00299    DtIffAtcNavaidsAltParm4 myAlternateMode4;
00300    DtU16 myMode4PseudoCrypto;
00301    bool myModeSIsTcasI;
00302    bool myMode4PseudoCryptoAvailable;
00303 
00305    bool myEmergencyOn;
00306    bool myStiOn; 
00307    bool myIdentSquawkFlashOn;
00308 #if DtTENA
00309    DtU16     myModeCode[4];
00310 #else
00311    DtU16     myModeCode[3];
00312 #endif
00313    DtInt16   myModeCAltitude;
00314    bool myModeCAltitudeAvailable;
00315 
00317    DtU8 myCode;
00318    bool myPowerReduction;
00319    bool myIsDamaged;
00320    bool myIsMalfunctioning;
00321    bool myIsOn;
00322    bool myRadarEnhancement;
00323    
00325    bool myModeParameterStatusValues[6][4];
00326 };
00327 
00328 #endif   //! DtIffStateRepository_H_
00329 
00330 

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)