VR-Link API Documentation for DIS
mineQueryPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #ifndef DtMinefieldQueryPdu_H_
10 #define DtMinefieldQueryPdu_H_
11 
12 #if DtDIS
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include "hostStructs.h"
16 #include "dInteraction.h"
17 #include "exerciseConn.h"
18 
19 #include "packets/mineQueryP.h"
20 
21 #include "minePerimeter.h"
22 
23 
25 
27 typedef void (*DtMinefieldQueryPduCb)(DtMinefieldQueryPdu* pdu, void* usr);
28 
29 
34 {
35 
36 public:
37 
43 
45  virtual ~DtMinefieldQueryPdu();
46 
49 
51  virtual void setMinefieldID(const DtEntityIdentifier& id);
52  virtual const DtEntityIdentifier& minefieldID() const;
53 
55  virtual void setRequestingEntityID(const DtEntityIdentifier& id);
56  virtual const DtEntityIdentifier& requestingEntityID() const;
57 
59  virtual void setRequestID(DtU8 id);
60  virtual DtU8 requestID() const;
61 
63  virtual bool setNumPerimeterPoints(DtU8 num);
64  virtual DtU8 numPerimeterPoints() const;
65 
67  virtual bool setNumSensorTypes(DtU8 num);
68  virtual DtU8 numSensorTypes() const;
69 
71  virtual void setDataFilter(DtU32 value);
72  virtual DtU32 dataFilter() const;
73 
77  virtual void setDataFilterField(
78  DtMinefieldDataFilterField field, bool value);
79  virtual bool getDataFilterField(DtMinefieldDataFilterField field);
80 
82  virtual void setRequestedMineType(const DtEntityType& type);
83  virtual const DtEntityType& requestedMineType() const;
84 
87  virtual bool setPerimeterPoint(int index,
88  const DtMinefieldPerimeterRecord& init);
89  virtual bool getPerimeterPoint(int index,
90  DtMinefieldPerimeterRecord& record) const;
91 
94  virtual bool getSensorTypeCategory(int index,
95  DtSensorTypeCategory& value);
96 
100  virtual bool setSensorTypeSubcategory(int index,
102  virtual bool setSensorTypeSubcategory(int index,
104  virtual bool setSensorTypeSubcategory(int index,
106  virtual bool setSensorTypeSubcategory(int index,
108  virtual bool setSensorTypeSubcategory(int index,
110  virtual bool setSensorTypeSubcategory(int index,
112  virtual bool setSensorTypeSubcategory(int index,
114  virtual bool setSensorTypeSubcategory(int index,
116 
121  virtual bool getSensorTypeSubcategory(int index,
123  virtual bool getSensorTypeSubcategory(int index,
125  virtual bool getSensorTypeSubcategory(int index,
127  virtual bool getSensorTypeSubcategory(int index,
129  virtual bool getSensorTypeSubcategory(int index,
131  virtual bool getSensorTypeSubcategory(int index,
133  virtual bool getSensorTypeSubcategory(int index,
135  virtual bool getSensorTypeSubcategory(int index,
137 
139  virtual void printData() const;
140 
142  virtual void printDataToStream(std::ostream &stream) const;
143 
144 public:
145 
148  static DtPdu* create(const DtNetPacket* initial,
150 
153  static void addCallback(DtExerciseConn* conn,
154  DtMinefieldQueryPduCb cb, void* usr);
155  static void removeCallback(DtExerciseConn* conn,
156  DtMinefieldQueryPduCb cb, void* usr);
157 
158 protected:
159 
161  virtual DtPduKind internalGetPduKind() const;
162 
164  virtual DtNetMinefieldQueryPdu* netPduStruct() const;
165 
168  DtMinefieldQueryPdu* self() const;
169 
171  virtual char* var() const;
172 
174  virtual int perimeterPointRecordOffset(int recordIndex) const;
175 
177  virtual int sensorTypeRecordOffset(int recordIndex) const;
178 
180  virtual void setSensorType(int index, DtU16 value);
181  virtual DtU16 sensorType(int index) const;
182 
183 protected:
184 
186  static const int theStaticSize;
187 
188 protected:
189 
194 
195 };
196 
197 #endif
198 #endif
199 

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)