VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator 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 
11 
12 #pragma once
13 
15 
17 
25 {
26 
27 public:
28 
32  DtVrfObject* owner,
33  DtSimManager* simManager,
34  DtComponentDescriptor* desc = 0,
35  DtReaderWriterRegistry* parentRegistry = 0);
36 
39 
41  virtual bool init();
42 
45  virtual const char* type() const;
46 
51  virtual void preFirstTickInit();
52 
56  virtual void tick();
57 
58  static void moveAlongCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
59 
60  virtual DtSimTaskStatePtr currentTaskState() const;
61 
63  static void routeChangedCallback(DtVrfObject* obj, void * usr);
64  virtual void processRouteChanged(DtVrfObject* obj);
65 
67  virtual void registerTaskMsgCallbacks();
68 
70  static DtReaderWriter* provideNextRoutePointIndex(void* c);
71 
74 
78  static DtSimComponent * creator(const DtString& name,
79  DtVrfObject* owner,
80  DtSimManager* simManager,
81  DtComponentDescriptor* desc = 0,
82  DtReaderWriterRegistry* parentRegistry = 0);
83 
91  virtual bool setupRoute();
92 
99  virtual bool setupDestination();
100 
119  virtual double findDesiredSpeed();
120 
122  virtual double findCosTurnAngle();
123 
129  virtual void stop();
130 
132  static void objectAddedCb(DtVrfObject * vrfObject, void * usr);
133 
134  static void objectAboutToBeRemovedCallback(DtVrfObject* obj, void* usr);
135 
136 protected:
137  virtual void processMoveAlong(const DtTaskMessage& msg, DtSimTaskStatePtr taskStatePtr);
138 
141 
145 
149 
153  virtual void buildLocalRoute();
154 
157  virtual void emptyVertexList();
158 
162  virtual void processObjectAdded(DtVrfObject * vrfObject);
163 
166  virtual void clearTask();
167 
168  virtual bool decideToGiveUpTask() const;
169 
170  virtual void processObjectAboutToBeRemoved(DtVrfObject* obj);
171 
172  virtual void updateTaskVisualizations();
173 
174 protected:
175 
179 
184 
186 };

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)