17 #include <vlutil/vlFilename.h>
24 #include <matrix/3dBoundingVolume.h>
25 #include <tbb/recursive_mutex.h>
41 class DtEntityMapperKey;
69 tbb::mutex::scoped_lock* myLock =
nullptr;
83 static std::string className();
92 virtual void clearModelSet();
95 virtual bool load(
const DtFilename&, std::set<DtString>& iconLists,
bool signal =
false);
102 return myVariableBindings;
109 return mySearchPaths;
120 virtual void getSupportPoints(
const DtEntityType& et,
123 virtual std::string getNavDataPath(
const DtEntityType& et);
129 virtual double getMaximumSpeed(
const DtEntityType& et);
133 virtual double getMinimumSpeed(
const DtEntityType& et);
136 virtual double getDefaultOrderedSpeed(
const DtEntityType& et);
139 virtual double getMaximumAcceleration(
const DtEntityType& et);
142 virtual double getMaximumDeceleration(
const DtEntityType& et);
145 virtual bool loadFromDataFiles(
const DtFilename& entities,
const DtFilename& platforms, std::set<DtString>& iconLists,
bool signal =
true,
DtModelSet* preloadModelSet = 0);
148 virtual void mergeFavorites(
const DtModelSet* f);
157 virtual DtEntityType nameToType(
const DtString&)
const;
165 virtual void setAdditionalKeywords(
const DtEntityMapperKey&,
const std::string&,
bool replace =
false);
190 virtual void statePropertiesFor(
const DtEntityType&,
DtRwProperties&)
const;
193 virtual void parameterPropertiesFor(
const DtEntityType&,
DtRwProperties&);
204 virtual void parameterPropertiesFor(
208 virtual boost::shared_ptr<DtReaderWriter> rwProperty(
const DtEntityType&,
const std::string& prop)
const;
215 virtual void loadPlatforms(
const DtString&);
218 virtual void clearPlatforms();
229 virtual DtObjectType nextAvailableSimulationObjectGroupObjectType()
const;
232 virtual bool enabledRadarCoverageDescriptors(
const DtEntityMapperKey&, std::vector<DtObjectSensorDescriptor*>&);
239 const DtString& c = DtString::nullString())
240 : objectType(ot), label(l), category(c) {};
250 virtual void signalLoaded();
257 typedef std::map<std::string, boost::shared_ptr<DtReaderWriter> >
PropertiesMap;
282 std::string myAdditionalKeywords;
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:63
std::pair< DtString, unsigned > EquipmentTypeCountPair
Definition: sharedModelSet.h:234
a read settings lock on a setting object. The object can only get read access aka const functions...
Definition: DtReadSettingsLock.h:48
Definition: entityMapperKey.h:23
DtOrderedKeyList< AdditionalKey * > AdditionalKeywords
Definition: sharedModelSet.h:285
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
Interaction makVrv::DtWriteSettingsLock class.
makVrv::DtWriteSettingsLock< DtSharedModelSet > & operator->()
Definition: sharedModelSet.h:66
DtModelSet * myModelSet
Definition: sharedModelSet.h:256
A signaler for the shared model set changes.
Definition: sharedModelSet.h:293
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
DtReaderWriter::SearchPaths mySearchPaths
Definition: sharedModelSet.h:273
AdditionalKey(const DtEntityMapperKey &kw)
Definition: sharedModelSet.h:279
DtVariableBindingsSharedPtr myVariableBindings
Definition: sharedModelSet.h:288
ObjectTypeAndLabel(const DtObjectType &ot, const DtString &l, const DtString &c=DtString::nullString())
Definition: sharedModelSet.h:238
List of DtComponentSystemDescriptor instances.
Definition: componentSystemDescriptorList.h:20
std::map< DtString, PlatformStruct > PlatformsMap
Definition: sharedModelSet.h:265
std::multimap< EquipmentTypeCountPair, ObjectTypeAndLabel > EquipmentTypeMap
Definition: sharedModelSet.h:246
Contains makVrv::DtStateView class.
WriteSettingsLock(makVrv::DtSharedSettingsManager &manager)
Definition: sharedModelSet.h:51
Instances of DtComponentDescriptorList are readable/writeable lists of DtComponentDescriptor objects...
Definition: componentDescriptorList.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
DtObjectSensorDescriptor; descriptor for the DtObjectSensor component.
Definition: objectSensorDescriptor.h:27
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
std::map< std::string, boost::shared_ptr< DtReaderWriter > > PropertiesMap
Definition: sharedModelSet.h:257
DtBoost::shared_ptr< DtRwVariableBindings > DtVariableBindingsSharedPtr
Definition: rwVariableBindings.h:149
Contains makVrv::event_signal class.
The base class for all shared settings. Actual settings class should have the following members/decla...
Definition: DtSharedSettings.h:45
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: simulationObjectGroupModelSetEntry.h:161
virtual ~WriteSettingsLock()
Definition: sharedModelSet.h:57
Interface class used to define minimal interface for a property. The DtPropertyInterface class provid...
Definition: propertyInterface.h:48
Definition: objectType.h:27
AdditionalKeywords myAdditionalKeywords
Definition: sharedModelSet.h:286
The event queue interface is a cross thread event queue used to emit event_signal across thread bound...
Definition: DtEventQueueInterface.h:26
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
Contains the DtRwDIGuyCharacterInfo class declaration.
Definition: modelSetEntry.h:34
makVrv::event_signal< void()> signal_modelSetLoaded
Definition: sharedModelSet.h:316
ParameterData myParameterData
Parameter data is mutable so that we can cache retrieved data in paramegerDataFor().
Definition: sharedModelSet.h:271
Contains the DtSharedSettings class declaration.
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtString category
Definition: sharedModelSet.h:244
Shared information about the current model set and entities/platforms that are available to it...
Definition: sharedModelSet.h:45
Definition: sharedModelSet.h:48
Contains makVrv::DtVrlinkSimulatedEntityState class.
a write settings lock on a setting object. The object can be read and modified, but no other threads ...
Definition: DtWriteSettingsLock.h:47
ObjectTypeAndLabel()
Definition: sharedModelSet.h:237
The DtRwDIGuyCharactertInfo class is a readable/writable class that can store itself and read itself ...
Definition: rwDIGuyCharacterInfo.h:32
Definition: sharedModelSet.h:276
Definition: sharedModelSet.h:235
static tbb::mutex theSafetyMutex
Definition: sharedModelSet.h:289
const DtVariableBindingsSharedPtr & variableBindings() const
Definition: sharedModelSet.h:100
const DtReaderWriter::SearchPaths & searchPaths() const
Definition: sharedModelSet.h:107
A list of properties. A DtPropertyInterface object that is a specialized version of DtRwVariableBindi...
Definition: rwProperties.h:126
std::map< DtModelSetEntry *, DtVrfObjectParameters * > ParameterData
Definition: sharedModelSet.h:268
PlatformsMap myAvailablePlatforms
Definition: sharedModelSet.h:266
Definition: modelSet.h:34
DtString label
Definition: sharedModelSet.h:243