VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
surfaceMovementPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: surfaceMovementPSR.h,v $ $Revision: 1.9 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef DtSurfaceMovementPSR_H_
13 #define DtSurfaceMovementPSR_H_
14 
16 #include "vrfutil/rwString.h"
17 #include "vrfutil/rwBoolean.h"
18 #include "vrfutil/rwVector.h"
20 #include "vrfutil/rwInt.h"
21 #include "vrfutil/rwReal.h"
22 
25 typedef enum
26 {
31 
32 typedef enum
33 {
37 
38 typedef enum
39 {
44 
45 typedef enum
46 {
51 
56 
58 
61 {
62 public:
63 
66  const DtString& rwName = DtString::nullString(),
67  DtReaderWriterRegistry* parentRegistry = 0);
68 
71  const DtString& rwName = DtString::nullString(),
72  DtReaderWriterRegistry* parentRegistry = 0);
73 
75  virtual ~DtSurfaceMovementPSR();
76 
79 
82  const DtString& rwName = DtString::nullString(),
83  DtReaderWriterRegistry* parentRegistry = 0) const;
84 
87  virtual DtString type() const;
88 
92  virtual double forwardSpeed(){return myForwardSpeed;}
93  virtual void setForwardSpeed(const double speed){myForwardSpeed = speed;}
94 
95  virtual double forwardAcceleration(){return myForwardAcceleration;}
96  virtual void setForwardAcceleration(const double acceleration)
97  {
98  myForwardAcceleration = acceleration;
99  }
100 
101  virtual double clampSpeed(){return myClampSpeed;}
102  virtual void setClampSpeed(const double speed){myClampSpeed = speed;}
103 
104  virtual double clampHeading(){return myClampHeading;}
105  virtual void setClampHeading(const double clampHeading)
106  {myClampHeading = clampHeading;}
107 
108  virtual double altitudeChangeRate(){return myAltitudeChangeRate;}
109  virtual void setAltitudeChangeRate(const double altitudeRate)
110  {
111  myAltitudeChangeRate = altitudeRate;
112  }
113 
114  virtual double clampAltitude(){return myClampAltitude;}
115  virtual void setClampAltitude(const double altitude)
116  {
117  myClampAltitude = altitude;
118  }
120 
125  virtual bool hasFuel() const {return myHasFuel;}
126  virtual void setHasFuel(const bool hasFuel)
127  {
128  myHasFuel = hasFuel;
129  }
130 
131  virtual bool isAground() const {return myIsAground;}
132  virtual void setIsAground(bool isAground)
133  {
134  myIsAground = isAground;
135  }
137 
141  virtual double goalDepth(){return myGoalDepth;}
142  virtual void setGoalDepth(const double depth)
143  {myGoalDepth = depth;}
144 
145  virtual double desiredDepthRate(){return myDesiredDepthRate;}
146  virtual void setDesiredDepthRate(const double rate)
147  {myDesiredDepthRate = rate;}
148 
149  virtual bool isTurnContinuous(){return myIsTurnContinuous;}
150  virtual void setIsTurnContinuous(const bool isContinous)
151  { myIsTurnContinuous = isContinous;}
152 
153  virtual double goalHeading(){return myGoalHeading;}
154  virtual void setGoalHeading(const double goalHeading);
155 
156  virtual bool isUsingConstantDiameter(){return myIsUsingConstantDiameter;}
157  virtual void setIsUsingConstantDiameter(const bool usingDiameter)
158  { myIsUsingConstantDiameter = usingDiameter;}
159 
160  virtual bool isTurningRight(){return myIsTurningRight;}
161  virtual void setIsTurningRight(const bool isContinous)
162  { myIsTurningRight = isContinous;}
163 
164  virtual double desiredTurnDiameter(){return myDesiredTurnDiameter;}
165  virtual void setDesiredTurnDiameter(const double desiredTurnDiameter);
166 
167  virtual double desiredTurnRate(){return myDesiredTurnRate;}
168  virtual void setDesiredTurnRate(const double desiredTurnRate);
169 
170  virtual bool turnTaskIsControllingSpeed() const;
171  virtual void setTurnTaskIsControllingSpeed(const bool isControlling);
172 
175  virtual void setControlObjectName(const DtString& objectName);
176  virtual const DtString& controlObjectName() const;
178 
181  virtual void setRouteName(const DtString& objectName);
182  virtual const DtString& routeName() const;
184 
189  virtual void setRouteVertices(const DtLocalVectorIterator& routeIterator);
190  virtual const DtLocalVertexList& routeVertices() const;
191 
193  virtual void emptyRouteVertices();
194 
198  virtual DtLocalVectorIterator* routeState() const;
200 
203  virtual DtReal startTurnDistance2(){return myStartTurnDistance2;}
204  virtual void setStartTurnDistance2(const DtReal distance)
205  { myStartTurnDistance2 = distance;}
207 
210  virtual int prevRoutePointIndex(){return myPrevVertex;}
211  virtual void setPrevRoutPointIndex(const int index)
212  {
213  myPrevVertex = index;
214  }
215  virtual int nextRoutePointIndex(){return myNextVertex;}
216  virtual void setNextRoutePointIndex(const int index)
217  {
218  myNextVertex = index;
219  }
221 
224  virtual void setReverseFlag(bool flag);
225  virtual bool reverseFlag() const;
226 
228  virtual void setFirstWaypoint(const DtString& objectName);
229  virtual const DtString& firstWaypoint() const;
230 
232  virtual void setSecondWaypoint(const DtString& objectName);
233  virtual const DtString& secondWaypoint() const;
234 
236  virtual void setEntityToFollow(const DtString& objectName);
237  virtual const DtString& entityToFollow() const;
238 
241  virtual void setFollowOffsetVector(const DtVector& offset);
242  virtual const DtVector& followOffsetVector() const;
243 
246  virtual void setGeodeticAimingPoint(const DtVector& pnt);
247  virtual const DtVector geodeticAimingPoint() const;
248 
254  virtual void setGoalVector(const DtVector &goalVector);
255  virtual const DtVector& goalVector() const;
256 
259  virtual void setContinueAtGoal(const bool cont);
260  virtual bool continueAtGoal(void) const;
262 
263  virtual void setIsEmergencyStop(const bool isEmergency);
264  virtual bool isEmergencyStop(void)const;
265 
266  virtual void setIsDriftStop(const bool isDriftStop);
267  virtual bool isDriftStop(void) const;
268 
270  virtual void putSelf(FILE *fp, int indentLevel = 0,
271  bool writeUnspecified = false, const DtFilename& path = DtReaderWriter::appPath());
272 
277  virtual DtReal maxYawRate() const;
278  virtual void setMaxYawRate (DtReal maxYawRate);
279 
281  virtual DtReal maxYawAcceleration() const;
282  virtual void setMaxYawAcceleration(DtReal maxYawAcceleration);
283 
285  virtual double stoppingSpeed() const;
286  virtual void setStoppingSpeed(DtReal stoppingSpeed);
287 
289 
292  virtual DtRwInt& currentVertex();
293  virtual const DtRwInt& currentVertex() const;
294 
295  virtual DtRwInt& nextVertex();
296  virtual const DtRwInt& nextVertex() const;
297 
298  virtual DtRwInt& previousVertex();
299  virtual const DtRwInt& previousVertex() const;
301 
302 public:
303 
305  static DtVrfProcessStateRepository* creator (const DtString& rwName,
306  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
307 
308 protected:
309 
330 
335 
347 
348 
349 
356 
360 
381 
398 
406 
427 
434 
440 
449 
460 
466 
474 
477 
481 };
482 
483 #endif

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)