VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
groundAutoControllerComponent.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 #pragma once
12 
14 
15 class DtString;
16 class DtSimManager;
18 class DtTaskMessage;
19 class DtSoilFactors;
20 class DtAutomotivePSR;
24 
34 {
35 public:
36 
40  DtVrfObject* owner,
41  DtSimManager* simManager,
42  DtComponentDescriptor* desc = 0,
43  DtReaderWriterRegistry* parentRegistry = 0);
44 
47 
49  virtual bool init();
50 
53  virtual DtString type() const;
54 
57  virtual void clearTask();
58 
74  virtual double approximateThrottle(double desiredSpeed);
75  virtual double calculateSteering(double currentHeading, double
76  desiredHeading) const;
77  virtual double calculateCurrentBrakingDistance() const;
78 
81  virtual bool createAutomotiveControlPortGroup();
82  virtual bool createThrottlePort();
83  virtual bool createSteeringPort();
84  virtual bool createBrakePort();
85  virtual bool createGearPort();
86  virtual bool createParkingBrakePort();
87 
88  virtual DtConstrainedAnalogOutputPort * throttlePort();
89  virtual DtConstrainedAnalogOutputPort * steeringPort();
90  virtual DtConstrainedAnalogOutputPort * brakePort();
91  virtual DtConstrainedIntegerOutputPort * gearPort();
92  virtual DtBooleanOutputPort * parkingBrakePort();
93 
94  virtual double decelerationSoilFactor() const;
95 
101  virtual double calcSteeringForTurnInPlace();
102 
106  virtual double calcThrottleForTurnInPlace();
107 
110  virtual double calcBrakeForTurnInPlace();
111 
119  virtual int calcGearForTurnInPlace();
120 
124  virtual double calcSteeringForPivot();
125 
129  virtual double calcThrottleForPivot();
130 
134  virtual double calcSteeringForKTurn();
135 
139  virtual double calcThrottleForKTurn();
140 
144  virtual double calcBrakeForKTurn();
145 
151  virtual double findSpeedForKTurn();
152 
156  virtual double findHeadingForKTurn();
157 
159  virtual void setHeadingToTurnTo(double headingToTurnTo);
160  virtual double headingToTurnTo() const;
161 
165  virtual void setKTurnReverseGoalHeading(double kTurnReverseGoalHeading);
166  virtual double kTurnReverseGoalHeading() const;
167 
171  virtual void setKTurnReverseComplete(bool kTurnReverseComplete);
172  virtual bool kTurnReverseComplete() const;
173 
174 protected:
176  virtual bool createPorts();
177 
179  virtual bool createPortGroups();
180 
188  virtual void lookupAndCacheProcessSR();
189 
192  virtual bool postAddComponentsInit();
193 
194  virtual DtSoilFactors * currentSoilFactors() const;
195 
198  virtual bool decideToGiveUpTask() const;
199 
200 private:
201 
204 
207  orig);
208 
212 
213 
214 protected:
215 
217 
220 
227 
234 
241 
248 
254 
259 
261 
268 
273 };

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)