VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
railMovementControllerPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
16 #include "vrfutil/rwReal.h"
17 #include "vrfutil/rwInt.h"
18 #include "vrfutil/rwBoolean.h"
19 #include "vrfutil/rwString.h"
20 #include "vrfutil/rwVector.h"
21 #include <vrfutil/rwUUID.h>
22 
25 
33 {
44 };
48 {
49 public:
50 
53  const DtString& rwName = DtString::nullString(),
54  DtReaderWriterRegistry* parentRegistry = 0);
55 
58  const DtString& rwName = DtString::nullString(),
59  DtReaderWriterRegistry* parentRegistry = 0);
60 
62  virtual ~DtRailMovementControllerPSR();
63 
66 
69  const DtString& rwName = DtString::nullString(),
70  DtReaderWriterRegistry* parentRegistry = 0) const;
71 
74  virtual DtString type() const;
75 
76  virtual void setCurrentMovementState(DtRailMovementState state);
77  virtual DtRailMovementState currentMovementState() const;
78 
89  virtual void setUseHighFidelityGroundClamping(bool yesOrNo);
90  virtual bool useHighFidelityGroundClamping() const;
92 
95  virtual void resetSegmentIndex();
96  virtual void incrementSegmentIndex();
97  virtual const int segmentIndex() const;
98  virtual void setSegmentIndex(const int);
100 
104  virtual double positionAlongLane() const;
105  virtual void setPositionAlongLane(const double p);
107 
110  virtual double speedAlongLane() const;
111  virtual void setSpeedAlongLane(const double s);
113 
116  virtual double accelerationAlongLane()const;
117  virtual void setAccelerationAlongLane(const double a);
119 
125  virtual double offsetFromLaneCenterline() const;
126  virtual void setOffsetFromLaneCenterline(const double offset);
127 
131  virtual double laneChangeWidth() const;
132  virtual void setLaneChangeWidth(const double f);
133 
138  virtual void setCurrentLanePosition(const int lane);
139  virtual const int currentLanePosition() const;
140 
142  virtual void setCurrentLaneNumber(const int lane);
143  virtual const int currentLaneNumber() const;
145 
150  virtual void setPassingLanePosition(const int lane);
151 
152  virtual const int passingLanePosition() const;
154 
156  virtual void setTurning(bool turn);
157  virtual bool turning() const;
159 
161  virtual void setAllowPassing(bool canPass);
162  virtual bool allowPassing() const;
164 
166  virtual void setPassing(bool pass);
167  virtual bool passing() const;
169 
171  virtual void setAvoidingCollision(bool avoid);
172  virtual bool avoidingCollision() const;
174 
176  virtual void setNeedSwitchLanes(bool switchLane);
177  virtual bool needSwitchLanes() const;
179 
181  virtual void setConvoyTargetSpecified(bool following);
182  virtual bool convoyTargetSpecified() const;
184 
187  virtual void setConvoyFollowTarget(const DtUUID&);
188 
190  virtual const DtRwVrfObjectReference& convoyFollowTarget() const;
191  virtual DtRwVrfObjectReference& convoyFollowTarget();
193 
195  virtual void setConvoyFollowDistance(const double dist);
196  virtual const double convoyFollowDistance() const;
198 
199  void setConvoyUseCatchUpSpeed(const bool useCatchUpSpeed);
200  const bool convoyUseCatchUpSpeed() const;
201 
202 
204  virtual const double maxFollowThreshold() const;
205  virtual void setMaxFollowThreshold(const double threshold);
207 
208 
209 public:
210 
212  static DtVrfProcessStateRepository* creator (const DtString& rwName,
213  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
214 
215 protected:
216 
218 
222 
228 
234 
242 
246 
250 
253 
257 
261 
265 
269 
273 
278 
281 
284 
287 
290 
297 };
298 
299 

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)