18 #include <vlutil/vlSmartPointers.h>
106 virtual std::vector<DtSimTaskMessageType> capableTaskIds()
const;
120 virtual void removeSupportingTasks(
int);
140 virtual void addBackgroundProcess(
const DtString& scriptId,
int backgroundProcessId,
const DtString& controllerName);
141 virtual void removeBackgroundProcess(
const DtString& scriptId);
154 virtual int suspendTasks(std::set<DtString> actionCategories);
157 virtual int suspendAllTopLevelTasks();
164 virtual bool resumeTasks(
int suspendId);
168 virtual void addTaskCompleteCallback(DtTaskCompleteCallbackList::DtCallbackFunctionType fcn,
void* usr);
169 virtual void removeTaskCompleteCallback(DtTaskCompleteCallbackList::DtCallbackFunctionType fcn,
void* usr);
174 virtual bool taskActive(
int taskId)
const;
177 virtual void registerInterfaceMessageCallbacks();
180 virtual void registerRadioMessageCallbacks();
190 virtual void skipTask(
bool fromSuperior =
false);
199 virtual void sendTaskCompleted(
const DtTaskMessage& taskMsg,
bool success);
203 void awaitingTask(
int taskIdJustCompleted = -1);
207 virtual void setTaskedBySuperior();
210 virtual bool requestTaskNeeded()
const;
213 virtual void setRequestTaskNeeded(
bool requestTaskNeeded);
217 virtual bool independentlyTasked()
const;
221 virtual void setIndependentlyTasked(
bool independentlyTasked);
236 virtual void setVrfObject(
DtVrfObject * vrfObject);
241 virtual void setSendSkipTaskMessages(
bool sendSkipTaskMessages);
242 virtual bool sendSkipTaskMessages();
247 virtual void addOnTaskNotifyCallback(
252 virtual void removeOnTaskNotifyCallback(
257 virtual void clearSubtask(
int subtaskId);
264 virtual bool hasTopLevelTask()
const;
275 virtual void updateTaskInfo();
284 static void taskedBySuperiorRequestCallback(
DtSimMessage * msg,
void *
289 static void skipTaskCallback(
DtSimMessage * msg,
void * usr);
293 static void clearTaskCallback(
DtSimMessage * msg,
void * usr);
297 static void taskVisualizationRequestCallback(
DtSimMessage * msg,
void * usr);
302 static void objectAboutToBeRemovedCallback(
DtVrfObject*
object,
void* usr);
306 static void subordinateRemoved(
const DtUUID& subordinate,
void* usr);
318 static void addSimTaskManagerCreatorFcn(
const DtString & type,
334 virtual void processTaskVisualizationRequest(
DtSimMessage * msg);
339 virtual void processObjectAboutToBeRemoved(
DtVrfObject*
object);
345 virtual bool clearAllTopLevelTasks();
361 void processSubordinateRemoved(
const DtUUID& subordinate);
365 static void taskMessageCallback(
DtSimMessage* msg,
void* usr);
376 virtual std::vector<DtSimTaskMessageType> conflictingTaskTypes(
const DtSimTaskMessageType& testTaskType)
const;
384 static void unsubscribeCurrentTasksCallback(
const DtVrfObjectMessage* msg,
void* usr);
387 virtual void sendCurrentTasks();
390 virtual void sendCurrentTaskVisualizations();
391 virtual void stopCurrentTaskVisualizations();
393 static void clearTaskByTrackingNumberCallback(
const DtVrfObjectMessage* msg,
void* usr);
396 static DtGlobalObjectDesignator nextTaskVisualizationGlobalIdCallback(
void* usr);
397 virtual DtGlobalObjectDesignator nextTaskVisualizationGlobalId();
401 virtual void registerSetDataMessageCallbacks();
402 virtual void unregisterSetDataMessageCallbacks();
404 virtual void registerTaskMessageCallbacks();
405 virtual void unregisterTaskMessageCallbacks();