18 #include <vlutil/vlSmartPointers.h>
96 virtual std::vector<DtSimTaskMessageType> capableTaskIds()
const;
123 virtual bool taskActive(
int taskId)
const;
126 virtual void registerInterfaceMessageCallbacks();
129 virtual void registerRadioMessageCallbacks();
139 virtual void skipTask(
bool fromSuperior =
false);
148 virtual void sendTaskCompleted(
const DtTaskMessage& taskMsg,
bool success);
152 void awaitingTask(
int taskIdJustCompleted = -1);
156 virtual void setTaskedBySuperior();
159 virtual bool requestTaskNeeded()
const;
162 virtual void setRequestTaskNeeded(
bool requestTaskNeeded);
166 virtual bool independentlyTasked()
const;
170 virtual void setIndependentlyTasked(
bool independentlyTasked);
175 virtual bool currentTasksMatchEchelonId();
190 virtual void setVrfObject(
DtVrfObject * vrfObject);
195 virtual void setSendSkipTaskMessages(
bool sendSkipTaskMessages);
196 virtual bool sendSkipTaskMessages();
201 virtual void addOnTaskNotifyCallback(
206 virtual void removeOnTaskNotifyCallback(
211 virtual void clearSubtask(
int subtaskId);
218 virtual bool hasTopLevelTask()
const;
229 static void taskedBySuperiorRequestCallback(
DtSimMessage * msg,
void *
234 static void skipTaskCallback(
DtSimMessage * msg,
void * usr);
238 static void clearTaskCallback(
DtSimMessage * msg,
void * usr);
243 static void objectAboutToBeRemovedCallback(
DtVrfObject*
object,
void* usr);
247 static void subordinateRemoved(DtEntityIdentifier childEid,
void* usr);
259 static void addSimTaskManagerCreatorFcn(
const DtString & type,
277 virtual void processObjectAboutToBeRemoved(
DtVrfObject*
object);
281 virtual bool clearAllTopLevelTasks();
297 void processSubordinateRemoved(DtEntityIdentifier childEid);
301 static void taskMessageCallback(
DtSimMessage* msg,
void* usr);
309 virtual std::vector<DtSimTaskMessageType> conflictingTaskTypes(
const DtSimTaskMessageType& testTaskType)
const;
317 static void unsubscribeCurrentTasksCallback(
const DtVrfObjectMessage* msg,
void* usr);
320 virtual void sendCurrentTasks();
322 static void clearTaskByTrackingNumberCallback(
const DtVrfObjectMessage* msg,
void* usr);