16 #include <boost/signals2.hpp>
17 #include <boost/unordered_map.hpp>
54 virtual bool isScenarioEvent(
const DtUUID& o)
const;
75 static void scenarioEventMessageCallback(
DtSimMessage*,
void* usr);
76 virtual void processScenarioEventMessageCallback(
DtSimMessage*);
79 virtual void setScenarioEventEnabled(
const DtUUID&,
bool,
bool sendMessageIfNotLocal =
true);
82 virtual bool scenarioEventIsEnabled(
const DtUUID&)
const;
86 virtual void startScenarioEvent(
const DtUUID&,
bool sendMessageIfNotLocal =
true);
90 virtual void stopScenarioEvent(
const DtUUID&,
bool sendMessageIfNotLocal =
true);
93 virtual bool scenarioEventInProgress(
const DtUUID&)
const;
96 virtual bool scenarioEventIsConcluded(
const DtUUID&)
const;
99 virtual bool scenarioEventConcluded(
const DtUUID&)
const;
108 virtual double simulationStartTime(
const DtUUID&)
const;
111 virtual double simulationEndTime(
const DtUUID&)
const;
115 virtual void processScenarioEventAdded(
const DtLocalObject*);
118 static void scenarioEventRemoved(
const DtLocalObject*,
void*);
119 virtual void processScenarioEventRemoved(
const DtLocalObject*);
122 virtual void setOrdinalOrder(
const DtUUID& uniqueId,
int ordinal);
125 virtual void resetScenarioEvent(
const DtUUID& uniqueId,
bool sendMessageIfNotLocal =
true);
128 virtual void setTriggerStatus(
const DtUUID& uniqueId,
int);
143 return myEventsThatNeedUpdate;
148 return myEventsThatNeedUpdate;
152 virtual void updateScenarioEvents();
155 virtual void startUpEvent(
const DtUUID& uniqueId);
158 virtual void stopEvent(
const DtUUID& uniqueId);
162 virtual void updateEnabledStatesLinkedTo(
const DtUUID&);
165 virtual DtUUID scenarioEventUUIDBasedOf(
const DtUUID&)
const;
167 virtual void processObjectModifiedViaMessage(
DtLocalObject* o);
174 virtual void slot_eventDataModified(
const DtSimObject*);
UUID is a unique ID wrapper class.
Definition: uuid.h:59
std::set< DtUUID > myUpdateUpdateEnabledStateLinkedTo
Definition: scenarioEventManager.h:224
class DtLocalObjectManager:
Definition: localObjectManager.h:151
DtLocalObjectManager * myObjectManager
Definition: scenarioEventManager.h:178
LocalScenarioEvents myLocalScenarioEvents
Definition: scenarioEventManager.h:200
DtCallbackList< DtEnableStateChanged > ScenarioEventEnableStateChangedCallbacks
Definition: scenarioEventManager.h:184
ScenarioEventCallbacks myScenarioEventStoppedCallbacks
Definition: scenarioEventManager.h:182
DtCallbackList< DtEnableStateChanged >::DtCallbackFunctionType DtScenarioEventManagerEnabledStateChangedCallbackFcn
Definition: scenarioEventManager.h:32
std::vector< PredecessorItem > PredecessorList
Definition: rwScenarioEvent.h:160
bool isEnabled
Definition: scenarioEventManager.h:30
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
boost::signals2::scoped_connection mySimObjectAddedConnection
Definition: scenarioEventManager.h:221
EventsThatNeedUpdate & eventsThatNeedUpdate()
Definition: scenarioEventManager.h:146
Contains the DtUUID class declaration.
EventsThatNeedUpdate myEventsThatNeedUpdate
Definition: scenarioEventManager.h:218
int myMaxOrdinal
Definition: scenarioEventManager.h:220
Definition: scenarioEventManager.h:27
DtCallbackList< const DtUUID & >::DtCallbackFunctionType DtScenarioEventManagerCallbackFcn
Callback function definition for any kind of scripted task change.
Definition: scenarioEventManager.h:22
The scenario event manager will keep track of all scenario event objects and their state...
Definition: scenarioEventManager.h:36
DtUUID uuid
Definition: scenarioEventManager.h:29
std::map< DtUUID, DtUUID > ObjectEvents
Definition: scenarioEventManager.h:215
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
File: simMsg.h.
Definition: simMessage.h:35
std::map< const DtLocalObject *, EventUpdateInformation > EventsThatNeedUpdate
Definition: scenarioEventManager.h:139
Definition: noArgumentCallbackList.h:91
CurrentFrameScenarioEvents myCurrentFrameScenarioEvents
Definition: scenarioEventManager.h:213
ScenarioEventEnableStateChangedCallbacks myScenarioEventEnabledStateChangedCallbacks
Definition: scenarioEventManager.h:185
const char * source
Definition: lz4.h:442
The DtRwScenarioEvent class will define the contents of a scenario event and it's current status...
Definition: rwScenarioEvent.h:68
DtSimulationServices * mySimulationServices
Definition: scenarioEventManager.h:177
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
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:88
const EventsThatNeedUpdate & eventsThatNeedUpdate() const
Definition: scenarioEventManager.h:141
boost::signals2::scoped_connection myAdvancedFrameConnection
Definition: scenarioEventManager.h:223
ObjectEvents myObjectEvents
Definition: scenarioEventManager.h:216
std::map< DtUUID, LocalScenarioEventInformation > LocalScenarioEvents
Definition: scenarioEventManager.h:199
Contains the DtSimObjectReference class declaration.
std::map< DtUUID, CurrentFrameScenarioEventInformation > CurrentFrameScenarioEvents
Definition: scenarioEventManager.h:212
boost::signals2::scoped_connection myUpdateScenarioEventsConnection
Definition: scenarioEventManager.h:222
DtCallbackList< const DtUUID & > ScenarioEventCallbacks
Definition: scenarioEventManager.h:180
ScenarioEventCallbacks myScenarioEventStartedCallbacks
Definition: scenarioEventManager.h:181
char * dest
Definition: lz4.h:440
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86