VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
groundMovementChooserController.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 
11 
13 
20 
21 class DtMoveToTask;
23 class DtMoveAlongTask;
25 class DtFollowEntityTask;
30 class DtRailRouteTask;
31 
32 
42 {
43 private:
44 
51 
52 public:
56  DtSimManager* simManager, DtComponentDescriptor* desc = NULL,
57  DtReaderWriterRegistry* parentRegistry = NULL);
58 
60 
61  virtual bool init();
62 
63  virtual bool createPSR();
64 
67  virtual const char* type() const;
68 
71  virtual void registerTaskMsgCallbacks();
72 
74  virtual bool postAddComponentsInit();
75 
78  static void movementTaskCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
79 
81  virtual void processMovementTask(DtSimMessage * msg, DtSimTaskStatePtr taskStatePtr);
82 
85  static void taskCompleteReportCallback(DtSimMessage* msg, void* usr);
86 
90  virtual void processTaskCompleteReport(DtSimMessage* msg);
91 
92  virtual void suspendTask(int taskId);
93 
94  virtual DtSimTaskStatePtr currentTaskState(int taskId) const;
95 
96 protected:
97 
99  virtual void processMovementTask(DtFollowEntityTask* taskMsg, int taskId);
100 
102  virtual void processMovementTask(DtMoveAlongTask* taskMsg, int taskId);
103 
109  virtual void processMovementTask(DtRailRouteTask* taskMsg,int taskId);
110 
113  virtual void processMovementTask(DtRailMoveAlongTask* taskMsg, int taskId);
114 
116  virtual void processMovementTask(DtTaskMessage* taskMsg);
117 
119  virtual void processMovementTask(DtMoveToTask* taskMsg, int taskId);
120 
122  virtual void processMovementTask(DtMoveToLocationTask* taskMsg, int taskId);
123 
124  virtual void processMovementTask(DtTurnToHeadingTask* taskMsg, int taskId);
125 
126  virtual void processMovementTask(DtScriptedTaskTask* taskMsg, int taskId);
127 
129  virtual void processMovementTask(DtPatrolRouteTask* taskMsg, int taskId);
130 
132  virtual void processMovementTask(DtPatrolTwoPointsTask* taskMsg, int taskId);
133 
134 public:
135 
139  static DtSimComponent * creator(const DtString& name, DtVrfObject* owner,
140  DtSimManager* simManager, DtComponentDescriptor* desc = 0,
141  DtReaderWriterRegistry* parentRegistry = 0);
142 
143 protected:
145 };
146 

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)