VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
fixedWingMoveToController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 
13 #pragma once
14 
16 
17 class DtString;
18 class DtSimManager;
19 class DtConstrainedAnalogPort;
20 class boolPort;
21 class DtSimMessage;
22 
23 
24 
31 {
32 
33 public:
34 
38  DtVrfObject* owner,
39  DtSimManager* simManager,
40  DtComponentDescriptor* desc = 0,
41  DtReaderWriterRegistry* parentRegistry = 0);
42 
44  virtual ~DtFixedWingMoveToController();
45 
50  virtual void tick();
51 
54  virtual DtString type() const;
55 
69  bool setMovementStatusFromControlPoint();
70 
73  virtual void doFinishing();
74 
82  virtual void doFinishingForFlying();
83 
87  virtual void doFinishingForTaxiing();
88 
91  virtual void doMoving();
92 
98  virtual void doFlying();
99 
104  virtual void doTaxiing();
105 
110  virtual void doTakeOff();
111 
114  virtual void updateTakeOffDirection();
115 
119  virtual double findDesiredSpeed();
120 
129  virtual bool nearGoal();
130 
135  virtual bool atGoal();
136 
147  virtual bool passedGoal();
148 
152  virtual void taskComplete(bool success = true);
153 
157  static void moveToCallback(DtSimMessage * msg, void * usr);
158  static void moveToAltitudeCallback(DtSimMessage * msg, void * usr);
159  static void setAltitudeCallback(DtSimMessage * msg, void * usrData);
160  static void setLocationCallback(DtSimMessage * msg, void * usrData);
161  static void setRestoreCallback(DtSimMessage * msg, void * usrData);
162  static void waypointChangedCallback(DtVrfObject * msg, void * usr);
164  static void modifyVrfObjectCallback(DtSimMessage * msg, void * usr);
166  static void deleteVrfObjectCallback(DtVrfObject * msg, void * usr);
167 
170  virtual void processMoveToTask(DtSimMessage * msg);
171  virtual void processMoveToAltitudeTask(DtSimMessage * msg);
175  virtual void processSetAltitude(DtSimMessage * msg);
176  virtual void processSetLocation(DtSimMessage * msg);
177  virtual void processSetRestore(DtSimMessage * msg);
178  virtual void processWaypointChanged(DtVrfObject * msg);
184  virtual void processModifyVrfObject(DtSimMessage * msg);
187  virtual void processDeleteVrfObject(DtVrfObject *msg);
188 
194  virtual bool createWorkingControlPoint(const DtVector location);
195 
198  virtual void registerTaskMsgCallbacks();
199 
203  static DtSimComponent * creator(const DtString& name,
204  DtVrfObject* owner,
205  DtSimManager* simManager,
206  DtComponentDescriptor* desc = 0,
207  DtReaderWriterRegistry* parentRegistry = 0);
208 
209 protected:
210  virtual void getLocalDestination(DtVector& local) const;
211  virtual void getWorldDestination(DtVector& world) const;
212 
215  virtual double distanceSquaredToDestination(const DtVector& current) const;
216  virtual double distanceSquaredToDestination2D(const DtVector& current) const;
217 
221  virtual bool atAltitude(double desiredAltitude) const;
222 
225  virtual bool setupControlPoint();
226 
228  virtual void deleteWorkingControlPoint();
229 
231  virtual void clearTask();
232 
233 private:
234 
237 
240  const DtFixedWingMoveToController& orig);
241 
244  const DtFixedWingMoveToController& orig);
245 
246 protected:
247 
251 
254 
256 };
257 

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)