VR-Forces Development_Version 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) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
13 #include "vrfutil/rwString.h"
14 #include "vrfutil/rwBoolean.h"
15 #include "vrfutil/rwVector.h"
17 #include "vrfutil/rwInt.h"
18 #include "vrfutil/rwReal.h"
19 #include <vrfutil/rwUUID.h>
20 
23 typedef enum
24 {
29 
30 typedef enum
31 {
35 
36 typedef enum
37 {
42 
43 typedef enum
44 {
49 
54 
56 
59 {
60 public:
61 
64  const DtString& rwName = DtString::nullString(),
65  DtReaderWriterRegistry* parentRegistry = 0);
66 
69  const DtString& rwName = DtString::nullString(),
70  DtReaderWriterRegistry* parentRegistry = 0);
71 
73  virtual ~DtSurfaceMovementPSR();
74 
77 
80  const DtString& rwName = DtString::nullString(),
81  DtReaderWriterRegistry* parentRegistry = 0) const;
82 
85  virtual DtString type() const;
86 
90  virtual double forwardSpeed(){return myForwardSpeed;}
91  virtual void setForwardSpeed(const double speed){myForwardSpeed = speed;}
92 
93  virtual double forwardAcceleration(){return myForwardAcceleration;}
94  virtual void setForwardAcceleration(const double acceleration)
95  {
96  myForwardAcceleration = acceleration;
97  }
98 
99  virtual double clampSpeed(){return myClampSpeed;}
100  virtual void setClampSpeed(const double speed){myClampSpeed = speed;}
101 
102  virtual double clampHeading(){return myClampHeading;}
103  virtual void setClampHeading(const double clampHeading)
104  {myClampHeading = clampHeading;}
105 
106  virtual double altitudeChangeRate(){return myAltitudeChangeRate;}
107  virtual void setAltitudeChangeRate(const double altitudeRate)
108  {
109  myAltitudeChangeRate = altitudeRate;
110  }
111 
112  virtual double clampAltitude(){return myClampAltitude;}
113  virtual void setClampAltitude(const double altitude)
114  {
115  myClampAltitude = altitude;
116  }
118 
123  virtual bool hasFuel() const {return myHasFuel;}
124  virtual void setHasFuel(const bool hasFuel)
125  {
126  myHasFuel = hasFuel;
127  }
128 
129  virtual bool isAground() const {return myIsAground;}
130  virtual void setIsAground(bool isAground)
131  {
132  myIsAground = isAground;
133  }
135 
139  virtual double goalDepth(){return myGoalDepth;}
140  virtual void setGoalDepth(const double depth)
141  {myGoalDepth = depth;}
142 
143  virtual double desiredDepthRate(){return myDesiredDepthRate;}
144  virtual void setDesiredDepthRate(const double rate)
145  {myDesiredDepthRate = rate;}
146 
147  virtual bool isTurnContinuous(){return myIsTurnContinuous;}
148  virtual void setIsTurnContinuous(const bool isContinous)
149  { myIsTurnContinuous = isContinous;}
150 
151  virtual double goalHeading(){return myGoalHeading;}
152  virtual void setGoalHeading(const double goalHeading);
153 
154  virtual bool isUsingConstantDiameter(){return myIsUsingConstantDiameter;}
155  virtual void setIsUsingConstantDiameter(const bool usingDiameter)
156  { myIsUsingConstantDiameter = usingDiameter;}
157 
158  virtual bool isTurningRight(){return myIsTurningRight;}
159  virtual void setIsTurningRight(const bool isContinous)
160  { myIsTurningRight = isContinous;}
161 
162  virtual double desiredTurnDiameter(){return myDesiredTurnDiameter;}
163  virtual void setDesiredTurnDiameter(const double desiredTurnDiameter);
164 
165  virtual double desiredTurnRate(){return myDesiredTurnRate;}
166  virtual void setDesiredTurnRate(const double desiredTurnRate);
167 
168  virtual bool turnTaskIsControllingSpeed() const;
169  virtual void setTurnTaskIsControllingSpeed(const bool isControlling);
170 
174  virtual void setControlObject(const DtUUID&);
175 
177  virtual const DtRwVrfObjectReference& controlObject() const;
178  virtual DtRwVrfObjectReference& controlObject();
180 
184  virtual void setRoute(const DtUUID&);
185 
187  virtual const DtRwVrfObjectReference& route() const;
188  virtual DtRwVrfObjectReference& route();
190 
195  virtual void setRouteVertices(const DtLocalVectorIterator& routeIterator);
196  virtual const DtLocalVertexList& routeVertices() const;
197 
199  virtual void emptyRouteVertices();
200 
204  virtual DtLocalVectorIterator* routeState() const;
206 
209  virtual DtReal startTurnDistance2(){return myStartTurnDistance2;}
210  virtual void setStartTurnDistance2(const DtReal distance)
211  { myStartTurnDistance2 = distance;}
213 
216  virtual int prevRoutePointIndex(){return myPrevVertex;}
217  virtual void setPrevRoutPointIndex(const int index);
218  virtual int nextRoutePointIndex(){return myNextVertex;}
219  virtual void setNextRoutePointIndex(const int index);
220  virtual void setCurrentRoutePointIndex(const int index);
222 
225  virtual DtRwInt& currentVertex();
226  virtual const DtRwInt& currentVertex() const;
227 
228  virtual DtRwInt& nextVertex();
229  virtual const DtRwInt& nextVertex() const;
230 
231  virtual DtRwInt& previousVertex();
232  virtual const DtRwInt& previousVertex() const;
234 
237  virtual void setReverseFlag(bool flag);
238  virtual bool reverseFlag() const;
239 
241  virtual void setFirstWaypoint(const DtUUID&);
242  virtual const DtRwVrfObjectReference& firstWaypoint() const;
243  virtual DtRwVrfObjectReference& firstWaypoint();
244 
246  virtual void setSecondWaypoint(const DtUUID&);
247  virtual const DtRwVrfObjectReference& secondWaypoint() const;
248  virtual DtRwVrfObjectReference& secondWaypoint();
249 
251  virtual void setEntityToFollow(const DtUUID&);
252  virtual const DtRwVrfObjectReference& entityToFollow() const;
253  virtual DtRwVrfObjectReference& entityToFollow();
254 
257  virtual void setFollowOffsetVector(const DtVector& offset);
258  virtual const DtVector& followOffsetVector() const;
259 
262  virtual void setGeodeticAimingPoint(const DtVector& pnt);
263  virtual const DtVector geodeticAimingPoint() const;
264 
270  virtual void setGoalVector(const DtVector &goalVector);
271  virtual const DtVector& goalVector() const;
272 
275  virtual void setContinueAtGoal(const bool cont);
276  virtual bool continueAtGoal(void) const;
278 
279  virtual void setIsEmergencyStop(const bool isEmergency);
280  virtual bool isEmergencyStop(void)const;
281 
282  virtual void setIsDriftStop(const bool isDriftStop);
283  virtual bool isDriftStop(void) const;
284 
286  virtual void putSelf(FILE *fp, int indentLevel = 0,
287  bool writeUnspecified = false, const DtFilename& path = DtReaderWriter::appPath());
288 
293  virtual DtReal maxYawRate() const;
294  virtual void setMaxYawRate (DtReal maxYawRate);
295 
297  virtual DtReal maxYawAcceleration() const;
298  virtual void setMaxYawAcceleration(DtReal maxYawAcceleration);
299 
301  virtual double stoppingSpeed() const;
302  virtual void setStoppingSpeed(DtReal stoppingSpeed);
303 
305 
306 
307 public:
308 
310  static DtVrfProcessStateRepository* creator (const DtString& rwName,
311  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
312 
313 protected:
314 
335 
340 
352 
353 
354 
361 
365 
386 
403 
411 
432 
439 
445 
454 
465 
471 
479 
482 
486 };

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)