VR-Forces 4.1 Class Documentation
disaggregatedMoveIntoFormController.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 
16 #include <matrix/vlVector.h>
17 #include <vector>
19 
20 
22 class DtFormationState;
23 class DtSimMessage;
24 class DtSetDataManager;
25 class DtSetDataRequest;
28 
51 {
52 public:
53 
57  DtVrfObject* owner,
58  DtSimManager* simManager,
59  DtComponentDescriptor* desc = 0,
60  DtReaderWriterRegistry* parentRegistry = 0);
61 
63 
66  virtual DtString type() const;
67 
69  virtual bool init();
70 
72  virtual void tick();
73 
77  virtual void registerTaskMsgCallbacks();
78 
80  virtual void clearTask();
81 
84  static void taskCompleteReportCallback(DtSimMessage * msg, void * usr);
85 
88  static void formationStateChanged(const DtFormationState& formationState,
89  void* usr);
90 
94  static DtSimComponent * creator(const DtString& name,
95  DtVrfObject* owner,
96  DtSimManager* simManager,
97  DtComponentDescriptor* desc = 0,
98  DtReaderWriterRegistry* parentRegistry = 0);
99 
102  static void moveIntoFormationTaskCallback(DtSimMessage * msg, void * usr);
103 
106  static void subordinateRemoved(DtEntityIdentifier childEid, void* usr);
107 
108 protected:
109 
116  virtual void moveIntoFormation(const DtVector& location, double heading, DtString formation);
117 
128  virtual void onTaskComplete(DtSimMessage * msg);
129 
134  virtual void onFormationStateChanged();
135 
137  virtual void sendRequestToSelf(const DtSetDataRequest& request) const;
138 
140  virtual void sendTaskToSubordinate(const DtSimTask& task,
141  const DtString& subordinateName) const;
142 
144  void sendSetDataRequestToSubordinate(const DtSetDataRequest& request,
145  const DtString& subordinateName) const;
146 
148  virtual void processMoveIntoFormationTask(DtSimMessage * msg);
149 
155  virtual bool createPSR();
156 
157  virtual void clearDebugWaypointNames();
158 
162  virtual void processSubordinateRemoved(DtEntityIdentifier childEid);
163 
166  virtual bool registerOrgNodeCallbacks();
167 
169  virtual void groundClampLocation(DtVector& location);
170 
173  virtual bool shouldGroundClamp() const;
174 
175 private:
176 
179 
182 
183 protected:
184 
189 
195 
199 
202  std::vector<DtString> myDebugWaypointNames;
203 
207 
211 
216 
221 
228 };

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)