59 virtual const char*
type()
const;
75 virtual void unregisterTaskMsgCallbacks();
96 static void disembarkTaskCallback(
DtSimMessage* msg,
void* usr);
100 virtual void checkAndSetEgressPosture();
108 static void embarkTaskCallback(
DtSimMessage* msg,
void* usr);
112 static void embarkObjectCallback(
DtSimMessage* msg,
void* usr);
113 virtual void processEmbarkObjectCallback(
DtSimMessage* msg);
115 static void disembarkObjectCallback(
DtSimMessage* msg,
void* usr);
116 virtual void processDisembarkObjectCallback(
DtSimMessage* msg);
121 static void embarkationInformationCallback(
DtSimMessage* msg,
void* usr);
122 virtual void processEmbarkationInformationCallback(
DtSimMessage* msg);
129 static void setLoadEntityCallback(
DtSimMessage * msg,
void * usrData);
130 static void setUnloadEntityCallback(
DtSimMessage * msg,
void * usrData);
133 virtual void unload(
const DtVector& point);
137 static void deleteVrfObjectCallback(
DtVrfObject * msg,
void * usr);
138 virtual void processDeleteVrfObjectCallback(
DtVrfObject* obj);
143 static void taskCompleteReportCallback(
DtSimMessage * msg,
void * usr);
150 virtual void moveToEgress();
153 virtual void movingToEgress();
156 virtual void disembark();
162 virtual void removeControlPoint();
167 virtual void moveToIngress(
const DtUUID& parent);
169 virtual void createControlPoint(
const DtVector& location,
172 virtual void createRoute(
const std::vector<DtVector>&,
177 virtual void moveToEmbarkationPoint();
183 virtual void atEmbarkationPoint();
186 virtual void waitingToStop();
191 virtual void movingToIngress();
194 virtual void embarkObject(
bool overridePosition,
196 const DtUUID& parent,
int appearance = 0xFFFFFFFF,
197 const DtTaitBryan& orientation = DtTaitBryan(),
200 bool invisibleWhenEmbarked =
false);
203 virtual void unloadObject(
const DtVector& unloadPoint);
206 virtual void embark(
const DtVector& loadPosition,
const DtUUID& parent,
207 int appearance = 0xFFFFFFFF,
const DtTaitBryan& orientation = DtTaitBryan(),
210 bool invisibleWhenEmbarked =
false);
214 virtual void movingToEmbarkationPoint();
217 virtual void stoppedAtEmbarkedPoint();
228 virtual bool createPSR();
232 virtual void setupExistingConditions();
236 virtual void completeEmbarkationInformationRequest(
245 virtual void completeDisembarkationInformationRequest(
254 virtual DtTaitBryan embarkedOrientation(
const DtTaitBryan&,
255 const DtUUID& parent)
const;
274 virtual void issueMoveToEgressTask();
275 virtual void issueMoveToIngressTask();
279 virtual void issueMoveAlongToEgressTask();
280 virtual void issueMoveAlongToIngressTask();
284 virtual void issueMoveToEmbarkationPointTask();
288 virtual DtTaitBryan currentBodyOrientation(
const DtUUID& parent)
const;
290 virtual DtVector currentBodyAcceleration(
const DtUUID& parent)
const;
302 virtual bool requestEmbarkationInformationFrom(
const DtUUID& parent,
303 bool start =
false,
int embarkInSlot = -1,
bool anyIfTaken =
true);
304 virtual bool requestDisembarkationInformationFrom(
const DtUUID& parent,
308 virtual void requestGiveUpSlot(
const DtUUID& parent);
310 virtual void waitingForEmbarkationInformation();
311 virtual void waitingForDisembarkationInformation();
314 virtual void placeObject(
bool clamp =
false);
317 virtual void setLocation(
const DtVector&);
325 virtual void calculateAndSetHeading(
const DtVector& start,
const DtVector& end);
330 virtual void processDisembarkationState(
const DtVector& bodyExitPosition);
331 virtual void movingToFinalDestination();
332 virtual void moveToFinalDestination();
336 virtual void preprocessEmbarkTask();
337 virtual void preprocessDisembarkTask();
341 virtual bool checkEmbarkOk(
const DtUUID& parent)
const;
345 virtual void updateDisembarkedAppearance();
350 virtual void updateEmbarkedAppearance(
int);
351 virtual void updateLifeformEmbarkedAppearance(
int);
355 virtual void attachToEmbarkedParent(
const DtUUID& newParent);
360 virtual DtVector fallbackOffloadPoint();
370 virtual bool parentOnGround();
374 static void setHeadingCallback(
DtSimMessage*,
void* usr);
375 virtual void processSetHeading();