VR-Forces 4.2 Class Documentation
aggregatedPatrolController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2004 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
12 
13 #pragma once
14 
17 
18 class DtFormationState;
20 class DtVrfObjectManager;
21 
33 {
34 public:
35 
37  {
38  DtMovingAlongRoute = 0,
39  DtReversingDirection = 1
40  };
41 
45  DtVrfObject* owner,
46  DtSimManager* simManager,
47  DtComponentDescriptor* desc = 0,
48  DtReaderWriterRegistry* parentRegistry = 0);
49 
52 
55  virtual DtString type() const;
56 
59  virtual bool init();
60 
62  virtual void registerTaskMsgCallbacks();
63 
64  static void patrolCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
65 
69 
74  static void taskCompleteReportCallback(DtSimMessage * msg, void * usr);
75 
79  static DtSimComponent * creator(const DtString& name,
80  DtVrfObject* owner,
81  DtSimManager* simManager,
82  DtComponentDescriptor* desc = 0,
83  DtReaderWriterRegistry* parentRegistry = 0);
84 
85 protected:
86  virtual void processPatrol(const DtTaskMessage& msg, DtSimTaskStatePtr taskStatePtr);
87 
92  virtual void processPatrolTwoPointsTask(DtSimTask* task, DtSimTaskStatePtr taskStatePtr);
93 
101  virtual void onTaskComplete(DtSimMessage * msg);
102 
110  virtual bool moveTo(const DtString& controlPointName);
111 
115  virtual void processPatrolAlongTask(DtSimTask* task, DtSimTaskStatePtr taskStatePtr);
116 
122  virtual bool createPSR();
123 
131  virtual DtIteratorDirection initialTraversalDirection(
132  const DtString& routeName, const DtVector& initialWorldPosition) const;
133 
142  virtual void sendMoveAlongToSelf(const DtString& routeName,
143  enum DtIteratorDirection traversalDirection, bool startAtClosestPoint);
144 
145 private:
146 
149 
152 protected:
153 
157 };
158 

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)