VR-Link API Documentation for HLA 1.3
iffAtcNavPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #ifndef DtIffAtcNavaidsPdu_H_
11 #define DtIffAtcNavaidsPdu_H_
12 
13 #if DtDIS
14 
15 #include <vlutil/vlMachineTypes.h>
16 #include "hostStructs.h"
17 #include "dStateMsg.h"
18 #include "exerciseConn.h"
19 #include <matrix/vlMath.h>
20 
21 #include "packets/iffAtcNavP.h"
22 
23 #include "iffAtcNavBeam.h"
24 #include "iffAtcNavLayr.h"
25 #include "iffAtcNavOper.h"
26 #include "iffAtcNavOpr2.h"
27 #include "iffAtcNavParm.h"
28 #include "iffAtcNavSyID.h"
29 
30 
31 
32 class DT_DLL_VL DtIffAtcNavaidsPdu;
33 
35 typedef void (*DtIffAtcNavaidsPduCb)(DtIffAtcNavaidsPdu* pdu, void* usr);
36 
37 
38 
42 class DT_DLL_VL DtIffAtcNavaidsPdu : public DtStateMsg
43 {
44 
45 public:
46 
48  DtIffAtcNavaidsPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
49  DtIffAtcNavaidsPdu(const DtNetIffAtcNavaidsPduLayer1* initial,
51  DtIffAtcNavaidsPdu(const DtIffAtcNavaidsPdu& orig);
52 
54  virtual ~DtIffAtcNavaidsPdu();
55 
58  static DtPdu* create(const DtNetPacket* initial,
60 
63  static void addCallback(DtExerciseConn* conn,
64  DtIffAtcNavaidsPduCb cb, void* usr);
65  static void removeCallback(DtExerciseConn* conn,
66  DtIffAtcNavaidsPduCb cb, void* usr);
67 
69  DtIffAtcNavaidsPdu& operator=(const DtIffAtcNavaidsPdu& orig);
70 
72  virtual void setEmittingEntityID(const DtEntityIdentifier& entity);
73  virtual const DtEntityIdentifier& emittingEntityID() const;
74 
76  virtual void setEventID(const DtEventID& event);
77  virtual const DtEventID& eventID() const;
78 
80  virtual void setLocation(const DtVector& coords);
81  virtual const DtVector& location() const;
82 
84  virtual void setSystemID(const DtIffAtcNavaidsSystemID& id);
85  virtual const DtIffAtcNavaidsSystemID& systemID() const;
86 
88  virtual void setOperational(const DtIffAtcNavaidsOperational& oper);
89  virtual const DtIffAtcNavaidsOperational& operational() const;
90 
92  virtual bool layerPresent(int layer) const;
93 
96  virtual bool enableLayer2(DtU8 layerSpecificInfo, int numRecords);
97  virtual bool disableLayer2();
98 
102 
105  virtual const DtIffAtcNavaidsLayerHeader& layer2Header() const;
106 
108  virtual void setBeamData(const DtIffAtcNavaidsBeamData& beamData);
109  virtual const DtIffAtcNavaidsBeamData& beamData() const;
110 
112  virtual void setSecondaryOperational(
113  const DtIffAtcNavaidsSecondOperational& oper);
114  virtual const DtIffAtcNavaidsSecondOperational&
115  secondaryOperational() const;
116 
119  virtual DtU16 numParameterSets() const;
120 
122  virtual bool setParmData(int parmIndex,
123  const DtIffAtcNavaidsParameter& init);
124  virtual bool getParmData(int parmIndex,
125  DtIffAtcNavaidsParameter& record) const;
126 
128  virtual void printData() const;
129 
131  virtual void printDataToStream(std::ostream& stream) const;
132 
133 protected:
134 
136  virtual DtPduKind internalGetPduKind() const;
137 
139  virtual DtNetIffAtcNavaidsPduLayer1* netPduStruct() const;
140 
142  virtual DtNetIffAtcNavaidsPduLayer2* netPduStructL2() const;
143 
146  DtIffAtcNavaidsPdu* self() const;
147 
149  virtual DtNetIffAtcNavaidsParameter* parameter() const;
150 
151 protected:
152 
154  static const int theStaticSize;
155 
156 protected:
157 
159  DtEntityIdentifier myEntityID;
160  DtEventID myEventID;
161  DtVector myEntCoords;
162  DtIffAtcNavaidsSystemID mySystemID;
163  DtIffAtcNavaidsOperational myOperational;
164  DtIffAtcNavaidsLayerHeader myLayerHeader;
165  DtIffAtcNavaidsBeamData myBeamData;
166  DtIffAtcNavaidsSecondOperational mySecondOperational;
167  DtIffAtcNavaidsParameter myParameter;
168 
169 };
170 
171 #endif
172 #endif
173 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)