10 #include <tbb/spin_rw_mutex.h>
11 #include <boost/signals2.hpp>
17 class DtFrameStateInterface;
23 class DtEntityIdentifier;
69 return mySimulationServices;
73 virtual void advanceFrame();
93 mutable boost::signals2::signal<void (const DtUUID& oldUUID, const DtUUID& newUUID)>
signal_uuidChanged;
99 mutable boost::signals2::signal<void (const DtSimObject*, const DtString& oldText, const DtString& newText)>
signal_simObjectRenamed;
101 typedef std::map<unsigned long long, DtSimObjectReference>
SimObjects;
108 virtual void objectsEmbarkedOn(
const DtUUID&, std::vector<DtSimObjectReference>& list)
const;
111 virtual void clear();
114 virtual bool hasValidSimulatedEntity()
const;
117 virtual bool has(
const DtUUID&)
const;
135 virtual std::vector<DtSimObjectReference> objectsOfType(
const DtEntityType&)
const;
142 virtual void uuidChanged(
unsigned long long,
const DtUUID& oldUUID,
const DtUUID& newUUID);
145 virtual void discoveredObjectReference(
const DtString& awaiting);
148 bool isDeleted(
const DtUUID&)
const;
152 virtual void slot_uuidUpgradedTo(
const DtUUID& oldUUID,
const DtUUID& newUUID);
180 #include "vrfobjcore/simObjectManager.inl"
UUID is a unique ID wrapper class.
Definition: uuid.h:59
SimObjects myAdded
Definition: simObjectManager.h:167
boost::signals2::scoped_connection myUUIDChangedConnection
Definition: simObjectManager.h:159
boost::signals2::signal< void(makVrf::DtStateComponent *)> StateComponentRemovedSignal
Definition: simObjectManager.h:123
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
std::map< unsigned long long, DtSimObjectReference > SimObjects
Definition: simObjectManager.h:101
boost::signals2::signal< void(const DtSimObject *, const DtString &oldText, const DtString &newText)> signal_simObjectRenamed
Signal sent when an objects name has changed.
Definition: simObjectManager.h:99
boost::signals2::signal< void(DtSimObjectReference)> signal_simObjectAdded
Signal sent when a new DtSimObjectReference has been added.
Definition: simObjectManager.h:87
boost::signals2::signal< void(const DtUUID &oldUUID, const DtUUID &newUUID)> signal_uuidUpgradedTo
Signal when a UUID is remapped. Called after awaiting list has been changed.
Definition: simObjectManager.h:96
boost::signals2::signal< void(const DtUUID &oldUUID, const DtUUID &newUUID)> signal_uuidChanged
Signal when UUID is changed. Called before the map is updated with the new uuid.
Definition: simObjectManager.h:93
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:339
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Contains data describing the available attributes and animations for each DI-Guy character type...
Definition: diGuyCharacterDataManager.h:33
AwaitingMap myAwaitingMap
Definition: simObjectManager.h:165
SimObjects mySimObjects
Definition: simObjectManager.h:162
VRF4API_METHOD DtSimObjectReference lookupVrfObjectByEntityIdentifier(const DtEntityIdentifier &id) const
Deprecated API added to allow for older code to compile.
Definition: simObjectManager.h:175
boost::signals2::signal< void(DtSimObjectReference)> signal_simObjectDeleted
Signal sent when a new DtSimObjectReference has been deleted.
Definition: simObjectManager.h:90
std::map< DtString, DtSimObjectReference > AwaitingMap
Definition: simObjectManager.h:164
DtSimulationServices * mySimulationServices
Definition: simObjectManager.h:155
DtSimulationServices * simManager()
Definition: simObjectManager.h:67
This is a convenience list that will add DtSimObjectReference objects and modify the list as objects ...
Definition: simObjectReferenceList.h:23
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
This class is the central access point for all current-frame state of all objects in the simulation i...
Definition: simObjectManager.h:42
boost::signals2::signal< void()> signal_advancedFrame
Signal sent when frame is advanced.
Definition: simObjectManager.h:84
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
boost::signals2::scoped_connection myStateDataAddedConnection
Definition: simObjectManager.h:158
boost::signals2::signal< void(makVrf::DtStateComponent *)> StateComponentAddedSignal
Definition: simObjectManager.h:122
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::set< const makVrf::DtFrameStateInterface * > CurrentFrameStates
Definition: simObjectManager.h:119
boost::signals2::scoped_connection myUUIDUpgradedConnection
Definition: simObjectManager.h:160
std::map< DtUUID, DtSimObjectReference > myDeleted
Definition: simObjectManager.h:168
#define VRF4API_METHOD
Include this header file to allow for the definition/usage of the ability to mark something as deprec...
Definition: vrf4XAPI.h:22
VRF4API_METHOD DtSimObjectReference lookupVrfObjectByUUID(const DtUUID &u) const
Deprecated API added to allow for older code to compile.
Definition: simObjectManager.h:173
tbb::spin_rw_mutex myMutex
Definition: simObjectManager.h:156
VRF4API_METHOD DtSimObjectReference lookupVrfObjectByGlobalId(const DtUUID &u) const
Deprecated API added to allow for older code to compile.
Definition: simObjectManager.h:174