58 virtual bool init()
override;
62 virtual const char*
type()
const override;
74 static void requestEmbarkationInformationCallback(
DtSimMessage* msg,
void* usr);
75 virtual void processRequestEmbarkationInformation(
DtSimMessage* msg);
77 static void requestEmbarkationSlotInformationCallback(
DtSimMessage* msg,
void* usr);
78 virtual void processRequestEmbarkationSlotInformation(
DtSimMessage* msg);
80 static void requestEmbarkationEgressPointsCallback(
DtSimMessage* msg,
void* usr);
81 virtual void processRequestEmbarkationEgressPoints(
DtSimMessage* msg);
85 virtual bool canPerformIngressTechnique(
const DtString&)
const;
88 virtual bool canPerformEgressTechnique(
const DtString&)
const;
98 virtual void tick()
override;
105 virtual bool createPSR();
108 virtual void giveUpSlot(
int iSlot,
const DtUUID&);
130 virtual void sendSlotInformationTo(
const DtUUID&,
137 virtual void processDisembarkAllTask(
DtSimMessage* msg);
138 static void disembarkAllTaskCallback(
DtSimMessage* msg,
void* usr);
141 virtual bool objectDisembarked(
const DtUUID&);
145 virtual void disembarkNextObject();
151 static void disembarkObjectCallback(
DtSimMessage* msg,
void* usr);
154 virtual void processDisembarkObjectCallback(
DtSimMessage* msg);
171 virtual bool nextEntityCanDisembark(
const DtSimObject* curEntity)
const;
174 virtual bool isValidForDisembarkLayout(
const DtSimObject*)
const;
177 virtual bool createCollisionDetector();
180 virtual void setObstructionIDsInCollisionDetector();
186 virtual void setupSlots();
190 virtual void initializeSlotManager();
194 virtual void calculateDisembarkPositions(
const std::vector<DtSimObjectReference>&);
198 virtual void generateListForDisembarkation(
const std::vector<DtSimObjectReference>& list);
208 virtual void getDisembarkableObjects(std::vector<DtSimObjectReference>& objects);
UUID is a unique ID wrapper class.
Definition: uuid.h:59
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
virtual const char * type() const override=0
Returns a string identifies the class type of component. Type values are defined in compTypes...
Class DtOccupancyDirectorDescriptor is a DtComponentDescriptor that has parameters that configure the...
Definition: occupancyDirectorDescriptor.h:33
virtual void registerTaskMsgCallbacks()
Definition: embarkationSlotManager.h:92
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: singleTaskControllerComponent.h:22
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
Definition: readerWriterRegistry.h:39
DtCollisionDetector * myCollisionDetector
Definition: occupancyDirectorController.h:231
DtEmbarkationSlotEntry.
Definition: embarkationSlotEntry.h:27
const DtOccupancyDirectorDescriptor * myOccupancyDirectorDescriptor
Definition: occupancyDirectorController.h:229
virtual bool init() override
Calls setRadio()
File: simMsg.h.
Definition: simMessage.h:35
class DtVrfOccupancyDirectorPSR:
Definition: vrfOccupancyDirectorPSR.h:28
virtual void tick()
This gives the thread of control to the component. The component is ticked once each simulation from ...
DtEmbarkationSlotManager * mySlotManager
Definition: occupancyDirectorController.h:230
boost::signals2::scoped_connection mySimObjectDeletedConnection
Definition: occupancyDirectorController.h:237
The DtCollisionDetector is a class used to detect collisions between a specified list of obstructions...
Definition: collisionDetector.h:57
DtOccupancyDirectorController allocates reserved embarkation slots and determines which (if any) obje...
Definition: occupancyDirectorController.h:42
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:80
const DtTaskControllerComponent & operator=(const DtTaskControllerComponent &orig)
assignment operator
DtVrfOccupancyDirectorPSR * myProcessState
Container for state data associated with this component. This state is saved and restored as part of ...
Definition: occupancyDirectorController.h:227
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
std::set< DtString > myObjectsToDisembark
Variable to control which units were disembarked by a superior to avoid multi messages.
Definition: occupancyDirectorController.h:235
A locally simulated VRF object.
Definition: localObject.h:98