VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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 
261  virtual void setWaitUntilOrderedSpeedMetToStopTask(bool);
262  virtual bool waitUntilOrderedSpeedMetToStopTask();
263 
266  virtual void setGeodeticAimingPoint(const DtVector& pnt);
267  virtual const DtVector geodeticAimingPoint() const;
268 
274  virtual void setGoalVector(const DtVector &goalVector);
275  virtual const DtVector& goalVector() const;
276 
279  virtual void setContinueAtGoal(const bool cont);
280  virtual bool continueAtGoal(void) const;
282 
283  virtual void setIsEmergencyStop(const bool isEmergency);
284  virtual bool isEmergencyStop(void)const;
285 
286  virtual void setIsDriftStop(const bool isDriftStop);
287  virtual bool isDriftStop(void) const;
288 
290  virtual void putSelf(std::string& fp, int indentLevel = 0,
291  bool writeUnspecified = false, const DtFilename& path = DtReaderWriter::appPath());
292 
297  virtual DtReal maxYawRate() const;
298  virtual void setMaxYawRate (DtReal maxYawRate);
299 
301  virtual DtReal maxYawAcceleration() const;
302  virtual void setMaxYawAcceleration(DtReal maxYawAcceleration);
303 
305  virtual double stoppingSpeed() const;
306  virtual void setStoppingSpeed(DtReal stoppingSpeed);
307 
309 
310 
311 public:
312 
314  static DtVrfProcessStateRepository* creator (const DtString& rwName,
315  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
316 
317 protected:
318 
339 
344 
356 
357 
358 
365 
369 
396 
413 
421 
442 
449 
455 
464 
475 
481 
489 
492 
496 };

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)