VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
groundMoveAlongControllerComponent.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 
10 
11 #pragma once
12 
14 
16 
26 {
27 
28 public:
29 
33  DtVrfObject* owner,
34  DtSimManager* simManager,
35  DtComponentDescriptor* desc = 0,
36  DtReaderWriterRegistry* parentRegistry = 0);
37 
40 
42  virtual bool init();
43 
46  virtual const char* type() const;
47 
52  virtual void preFirstTickInit();
53 
57  virtual void tick();
58 
59  static void moveAlongCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
60 
61  virtual DtSimTaskStatePtr currentTaskState() const;
62 
64  static void routeChangedCallback(DtVrfObject* obj, void * usr);
65  virtual void processRouteChanged(DtVrfObject* obj);
66 
68  virtual void registerTaskMsgCallbacks();
69 
71  static DtReaderWriter* provideNextRoutePointIndex(void* c);
72 
75 
79  static DtSimComponent * creator(const DtString& name,
80  DtVrfObject* owner,
81  DtSimManager* simManager,
82  DtComponentDescriptor* desc = 0,
83  DtReaderWriterRegistry* parentRegistry = 0);
84 
92  virtual bool setupRoute();
93 
100  virtual bool setupDestination();
101 
120  virtual double findDesiredSpeed();
121 
129 
131  virtual double findCosTurnAngle();
132 
138  virtual void stop();
139 
141  static void objectAddedCb(DtVrfObject * vrfObject, void * usr);
142 
143  static void objectAboutToBeRemovedCallback(DtVrfObject* obj, void* usr);
144 
145 protected:
146  virtual void processMoveAlong(const DtTaskMessage& msg, DtSimTaskStatePtr taskStatePtr);
147 
150 
154 
158 
162  virtual void buildLocalRoute();
163 
166  virtual void emptyVertexList();
167 
171  virtual void processObjectAdded(DtVrfObject * vrfObject);
172 
175  virtual void clearTask();
176 
177  virtual bool decideToGiveUpTask() const;
178 
179  virtual void processObjectAboutToBeRemoved(DtVrfObject* obj);
180 
181  virtual void updateTaskVisualizations();
182 
183 protected:
184 
188 
193 
196 };

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)