18 #include <vlutil/vlSmartPointers.h>
105 virtual std::vector<DtSimTaskMessageType> capableTaskIds()
const;
119 virtual void removeSupportingTasks(
int);
148 virtual int suspendTasks(std::set<DtString> actionCategories);
151 virtual int suspendAllTopLevelTasks();
158 virtual bool resumeTasks(
int suspendId);
162 virtual void addTaskCompleteCallback(DtTaskCompleteCallbackList::DtCallbackFunctionType fcn,
void* usr);
163 virtual void removeTaskCompleteCallback(DtTaskCompleteCallbackList::DtCallbackFunctionType fcn,
void* usr);
168 virtual bool taskActive(
int taskId)
const;
171 virtual void registerInterfaceMessageCallbacks();
174 virtual void registerRadioMessageCallbacks();
184 virtual void skipTask(
bool fromSuperior =
false);
193 virtual void sendTaskCompleted(
const DtTaskMessage& taskMsg,
bool success);
197 void awaitingTask(
int taskIdJustCompleted = -1);
201 virtual void setTaskedBySuperior();
204 virtual bool requestTaskNeeded()
const;
207 virtual void setRequestTaskNeeded(
bool requestTaskNeeded);
211 virtual bool independentlyTasked()
const;
215 virtual void setIndependentlyTasked(
bool independentlyTasked);
220 virtual bool currentTasksMatchEchelonId();
235 virtual void setVrfObject(
DtVrfObject * vrfObject);
240 virtual void setSendSkipTaskMessages(
bool sendSkipTaskMessages);
241 virtual bool sendSkipTaskMessages();
246 virtual void addOnTaskNotifyCallback(
251 virtual void removeOnTaskNotifyCallback(
256 virtual void clearSubtask(
int subtaskId);
263 virtual bool hasTopLevelTask()
const;
274 virtual void updateTaskInfo();
283 static void taskedBySuperiorRequestCallback(
DtSimMessage * msg,
void *
288 static void skipTaskCallback(
DtSimMessage * msg,
void * usr);
292 static void clearTaskCallback(
DtSimMessage * msg,
void * usr);
297 static void objectAboutToBeRemovedCallback(
DtVrfObject*
object,
void* usr);
301 static void subordinateRemoved(DtEntityIdentifier childEid,
void* usr);
313 static void addSimTaskManagerCreatorFcn(
const DtString & type,
331 virtual void processObjectAboutToBeRemoved(
DtVrfObject*
object);
337 virtual bool clearAllTopLevelTasks();
353 void processSubordinateRemoved(DtEntityIdentifier childEid);
357 static void taskMessageCallback(
DtSimMessage* msg,
void* usr);
368 virtual std::vector<DtSimTaskMessageType> conflictingTaskTypes(
const DtSimTaskMessageType& testTaskType)
const;
376 static void unsubscribeCurrentTasksCallback(
const DtVrfObjectMessage* msg,
void* usr);
379 virtual void sendCurrentTasks();
382 static void clearTaskByTrackingNumberCallback(
const DtVrfObjectMessage* msg,
void* usr);
387 virtual void registerSetDataMessageCallbacks();
388 virtual void unregisterSetDataMessageCallbacks();
390 virtual void registerTaskMessageCallbacks();
391 virtual void unregisterTaskMessageCallbacks();