11 #if !defined(Q_MOC_RUN)
32 #include <vlutil/vlFilename.h>
34 #include <mtl/envValue.h>
35 #include <matrix/3dBoundingVolume.h>
38 #include <QtCore/QHash>
39 #include <QtGui/QPixmap>
40 #include <QtCore/QObject>
45 #include <vlpi/entityType.h>
46 #include <tbb/mutex.h>
47 #include <tbb/spin_mutex.h>
77 class DtEntityMapperKey;
78 class DtVrfVisualsManager;
79 class DtVrfEntityTypeMapper;
80 class DtVrfGuiForceManager;
85 class DtModelDefinitionManager;
86 class DtEntityTypeMapper;
87 class DtModelDefinition;
94 class DtVariableBindingList;
97 class DtEnumDictionary;
106 LoadDataFiles = 0x00000001,
107 LoadParameterFiles = 0x00000002,
108 LoadSystemFiles = 0x00000004,
109 LoadSupportingFiles = 0x00000008,
110 LoadStandardSensorObjects = 0x00000010,
111 LoadTranslationFiles = 0x00000020,
112 LoadVisualFiles = 0x00000040,
113 LoadOrCreateVisualFiles = 0x00000080,
114 LoadAutoTagInformation = 0x00000100,
115 LoadFunctionInformation = 0x00000200,
116 LoadAll = LoadDataFiles | LoadParameterFiles | LoadSystemFiles | LoadSupportingFiles | LoadStandardSensorObjects | LoadTranslationFiles | LoadOrCreateVisualFiles | LoadAutoTagInformation | LoadFunctionInformation
121 SystemCategories = 0,
122 EntityCategories = 1,
123 DefaultDeployableCountries = 2,
124 DefaultOverlayLayers = 3
153 void reparentEnvironmentChildren(DtEnvList*, DtEnvValueSP root)
const;
155 DtEnvValueSP backup();
156 DtEnvValueSP update();
158 void remove(DtEnvValueSP originalNode, DtEnvValueSP modifiedNode);
159 bool isEmpty()
const;
161 DtEnvValueSP replace(
DtEnvironmentSP env, DtEnvValueSP node, DtEnvValueSP replaceWith);
162 void reparentRoots(DtEnvValueSP templateRoot, DtEnvValueSP newRoot)
const;
175 EntityData(
const DtEntityType& objectType,
const DtEntityType& matchType = DtEntityType::nullType());
273 if (myParentFile.isEmpty())
284 typedef std::map<DtArtPartType, DtSimArtPartDescriptor>
ArtPartMap;
295 virtual bool save(
const DtFilename&,
bool forceSaveAll =
false,
QProgressBar* progressBar =
nullptr,
QLabel* fileLabel =
nullptr);
309 virtual void setLoadVisuals(
bool);
312 virtual bool hasFileNamed(
const std::string& s)
const;
318 virtual bool addNewDataFile(
const std::string&,
bool useExactFile =
false,
bool loadInParallel =
true,
DtString* errorString =
nullptr);
321 virtual bool addNewSimulationObjectGroup(
const std::string&);
324 virtual bool addNewRandomizedObject(
const std::string&);
327 virtual bool readOnly()
const;
328 virtual void setReadOnly(
bool);
331 virtual void setSaveReadOnlyFlag(
bool);
332 virtual bool saveReadOnlyFlag()
const;
336 virtual bool hasComponentByDescriptorType(
const DtFilename&,
const DtString& descriptor)
const;
340 virtual bool hasComponentByComponentType(
const DtFilename&,
const DtString& descriptor)
const;
343 virtual bool simulationObjectGroupExists(
const std::string&)
const;
346 virtual bool randomizedObjectExists(
const std::string&)
const;
350 virtual DtModelSetEntry* createNewSimulationObjectGroupFromExisting(
const DtEntityType& base,
const std::string& newName,
352 virtual DtModelSetEntry* createNewSimulationObjectGroupFromExisting(EntityData* data,
const std::string& newName,
354 virtual DtModelSetEntry* createNewAmmunitionEntryFromExisting(EntityData* data,
const std::string& newName,
const DtEntityType& newType,
371 return mySimulationModelSet;
379 virtual void setPartialLoad(
bool);
382 return myPartialLoad;
398 virtual bool addMissingVariablesFromPlatformsAndSystems(QWidget* parent = 0,
bool saveAllIfAnyModified =
false,
QProgressBar* progressBar =
nullptr,
QLabel* fileLabel =
nullptr);
399 virtual bool addMissingVariablesFromPlatformsAndSystems(EntityData* data, std::map<DtString, DtRwVariableBindings*>&);
404 virtual void restoreDefaultResources(
QProgressBar* progressBar =
nullptr,
QLabel* fileLabel =
nullptr);
405 virtual bool restoreDefaultResources(EntityData* data);
406 virtual bool restoreDefaultResources(
const DtEntityType& key);
410 virtual bool restoreResourcesToParent(
const DtEntityType&);
411 virtual bool restoreResourcesToParent(EntityData*);
413 virtual DtReaderWriter* parentValue(
const DtEntityType& t, std::string element);
414 virtual DtReaderWriter* parentValue(EntityData*, std::string element);
419 virtual bool addMissingArticulatedParts(QWidget* parent = 0,
bool saveIfModified =
false);
420 virtual bool addMissingArticulatedPartsForEntity(EntityData* data);
421 virtual bool addMissingArticulatedPartsForEntity(
const DtEntityType& objectType,
423 ArtPartMap& partsFromModel, ArtPartMap& partsFromSystemDefaults);
426 virtual bool addMissingVariablesAndArticulatedPartsFromPlatformsAndSystems(QWidget* parent = 0,
bool saveAllIfAnyModified =
false,
QProgressBar* progressBar =
nullptr,
QLabel* fileLAbel =
nullptr);
429 virtual bool getPartsFromEntityVisualModel(
const DtEntityType& objectType, ArtPartMap& partsFromModel);
432 virtual void regenerateOpeFiles();
435 virtual void regenerateSystemFiles();
437 virtual std::vector<DtComponentSystemDefinition*> systemsThatCanBeDamagedBy(
const DtString&)
const;
438 virtual std::vector<const DtComponentSystemDefinition*> entitiesSystemsThatUseResource(
const DtEntityType& eneity,
const DtEntityType& resource,
int bin)
const;
444 virtual std::vector<DtString> rangesByPowerType(
const DtString&)
const;
445 virtual void setSupportedRangesByPowerType(
const DtString&,
const std::vector<DtString>&);
447 virtual std::set<DtString> powerTypes(
bool hasHumanActuator)
const;
448 virtual void addPowerType(
const DtString&,
const QString& withoutAddition,
const QString& withAddition,
bool needForceAdditional =
false,
449 const QString& withoutAdditionX =
"",
const QString& witAdditionX =
"",
bool humanOnly =
false,
bool titleOnly =
false);
453 virtual QString powerTitle(
const DtString&,
const QString& addition =
"",
bool applyAdditionalToAll =
false,
bool xAxis =
false)
const;
456 virtual void createSupportedDetonations();
458 DtFilename getSystemDirectory()
const;
459 DtFilename getNavDataDirectory()
const;
460 DtFilename getFormationDirectory()
const;
461 DtFilename getGuiDirectory()
const;
462 DtFilename path()
const;
465 DtFilename simulationModelSetFilename()
const;
467 virtual bool checkAndLoadAll(QString text =
"");
469 virtual bool openSystemFiles(
DtSimulationModelSet* set,
const DtFilename& directory,
bool isInMasterSMS);
474 virtual bool loadForceHostilityFile(
const DtFilename& f);
475 virtual bool loadAmmunitionParameters(
const DtFilename& f,
bool inMasterSMS,
DtSimulationModelSet* sms);
476 virtual bool loadDetonationParameters(
const DtFilename& f,
bool inMasterSMS,
DtSimulationModelSet* sms);
478 virtual bool loadDetTerrainDeformParameters(
const DtFilename& f,
bool inMasterSMS,
DtSimulationModelSet* sms);
493 virtual std::vector<DtComponentSystemDefinition*> systemsThatUseAmmunition(
const DtString&)
const;
494 virtual std::vector<DtComponentSystemDefinition*> systemsThatUseTemplate(
const DtFilename&)
const;
497 virtual void makeTemplate(EntityData*);
498 virtual void makeTemplate(
const DtEntityType&);
504 virtual const std::vector<DtString>& iconLists()
const;
505 virtual bool hasIconList(
const DtString&)
const;
508 virtual void addIconList(
const DtString&);
509 virtual void removeIconList(
const DtString&);
510 virtual void setIconLists(
const std::vector<DtString>&);
511 virtual void loadIconLists(
const DtFilename&);
512 virtual void saveIconLists(
const DtFilename&);
518 virtual bool loadModelSet();
522 virtual DtModelSetEntry* modelEntry(
const DtEntityType&,
bool matchPattern =
false)
const;
525 virtual DtFilename modelDefinitionFile(
const DtEntityType&,
bool resolve)
const;
527 virtual std::string diGuyCharacterOMMX()
const;
528 virtual std::string diGuyCharacterLeaf()
const;
531 virtual DtString simulationModelSetFor(
const DtEntityType&)
const;
534 virtual DtString simulationModelSetFor(
const DtFilename&)
const;
538 virtual DtModelSetEntry* createModelSetEntryFrom(
const DtEntityType&)
const;
552 virtual EntityData* dataFor(
const DtEntityType&,
bool completeLoadIfNecessary =
true)
const;
555 virtual EntityData* dataFor(
DtModelSetEntry*,
bool completeLoadIfNecessary =
true)
const;
559 virtual bool containsObjectType(
const DtEntityType&,
bool onlyFromMasterSMS =
false,
DtString* name = 0)
const;
565 virtual bool isSimulationObjectGroup(
const DtEntityType&)
const;
569 virtual bool hasModelNamed(
const DtString&,
bool& isDeleted);
572 virtual std::vector<DtSimulationModelSet*> modelSets()
const;
574 virtual QString ammunitionDisplayName(
const DtEntityType&)
const;
575 virtual QString resourceDisplayName(
const DtEntityType&)
const;
579 return myAvailableParameters;
583 virtual bool hasHumanDamageSystem(
const std::vector<DtComponentSystemDefinition*>&)
const;
586 virtual bool hasMultiHitDamageSystem(
const std::vector<DtComponentSystemDefinition*>& systems)
const;
590 virtual bool createRwVariable(
const DtEntityType&,
const std::string& rwType,
const std::string& rwName,
DtReaderWriter*& original,
593 virtual void replaceSystem(
const DtFilename&);
595 virtual bool entryIsRandomized(
const DtEntityType&)
const;
596 virtual bool canAddSubordinatesTo(
const DtEntityType&)
const;
598 virtual bool isModified(
const DtEntityType&)
const;
599 virtual bool isModified(EntityData*)
const;
603 virtual bool isModified(
const DtFilename&)
const;
605 virtual bool isModified()
const;
607 virtual bool isNew(
const DtEntityType&)
const;
608 virtual bool isNew(EntityData*)
const;
610 virtual bool isDeleted(
const DtEntityType&)
const;
611 virtual bool isDeleted(EntityData*)
const;
614 virtual bool isDeleted(
const DtFilename&)
const;
617 virtual bool isNew(
const DtFilename&)
const;
619 virtual std::vector<EntityData*> objectsThatUseSystems(
const std::vector<const DtComponentSystemDefinition*>& rw)
const;
620 virtual std::vector<EntityData*> objectsThatUseSystems(
const std::vector<DtComponentSystemDefinition*>& rw)
const;
628 virtual void saveModelDefinitionManager();
651 virtual void deleteModel(
const DtEntityType&);
652 virtual void deleteModel(EntityData*);
655 virtual void deleteSystem(
const DtFilename&);
661 virtual bool changeObjectType(
const DtEntityType& oldType,
const DtEntityType& newType);
664 virtual bool changeMatchType(
const DtEntityType& oldType,
const DtEntityType& newType);
666 virtual bool setAdditionalMatchTypes(
const DtEntityType& key,
const std::list<DtEntityType> additionalMatchTypes);
671 virtual std::vector<DtString> updateGuiInformation(EntityData*, DtEnvValueSP = DtEnvValueSP());
674 virtual void updateSystemData(EntityData*);
677 virtual void sharedSystems(
const DtFilename& systemFile, std::vector<DtModelSetEntry*>& result)
const;
680 virtual void updateDataInformation(EntityData*);
695 virtual const QStringList& masterModeCategories(CategoryTypes)
const;
696 virtual QStringList& masterModeCategories(CategoryTypes);
697 virtual QStringList defaultCategoriesAsStringList(CategoryTypes)
const;
705 virtual void loadAutoTagInformation();
713 virtual void revertCategories(CategoryTypes);
714 virtual bool hasModifiedCategories(CategoryTypes)
const;
715 virtual bool saveDefaultCategories(
const DtFilename&, CategoryTypes);
716 virtual bool loadDefaultCategories(
const DtFilename&, CategoryTypes);
718 void setDefaultOverlayLayers(
const QStringList&);
719 const QStringList& defaultOverlayLayers();
720 virtual void revertOverlayLayers();
721 virtual bool hasModifiedOverlayLayers()
const;
722 virtual void changeDefaultOverlayLayer(
const QString& old,
const QString& newCat);
723 virtual void addDefaultOverlayLayers(
QComboBox*);
724 void addDefaultOverlayLayer(
const QString&);
730 virtual void changeDefaultDeployedCountry(
const QString& old,
const QString& newCat);
731 void setDefaultDeployedCountries(
const QStringList&);
732 void addDefaultDeployedCountry(
const QString&);
733 const QStringList& defaultDeployedCountries();
734 virtual void revertDeployedCountries();
735 virtual bool hasModifiedDeployedCountries()
const;
738 virtual void resetVisuals();
744 virtual std::map<std::string, DtEntityType> templatesForKind(
int)
const;
745 virtual std::map<std::string, DtEntityType> templatesThatMatch(
const DtEntityType&)
const;
749 virtual DtModelSetEntry* addNewEntity(
const DtEntityType& base,
const DtEntityType& newType,
const DtString& name,
751 bool replaceAmmoName =
false);
755 virtual DtModelSetEntry* addNewEntity(
const std::string& platformType,
const DtEntityType& newType,
const DtString& name,
761 bool replaceAmmoName =
false);
763 virtual DtModelSetEntry* addNewInheritingEntity(
const DtEntityType& parent,
const DtEntityType& type,
const DtString& name);
770 virtual void removeSystem(
const DtFilename&);
775 bool sizeToFont =
false);
777 virtual QPixmap getUnfilledIcon(
const makVrf::DtEntityMapperKey& key,
const QColor& outlineColor = Qt::black,
const QColor& fillColor = Qt::transparent,
int pointSize = 48,
778 bool sizeToFont =
false);
785 virtual void changeSubordinateTypes(
const DtEntityType& oldType,
const DtEntityType& newType);
787 virtual void checkParameterUpdates(EntityData*);
788 virtual void checkParameterUpdates(
const std::set<makVrf::DtEntityMapperKey>&);
802 virtual void updateFormationTable(
const DtEntityType&,
const DtFormationTable&);
831 virtual Dt3dBoundingVolume boundingVolumeFor(
const DtEntityType&)
const;
834 virtual bool isAggregate(
const DtEntityType&)
const;
848 return myCancelledLoad;
851 virtual bool isTemplate(
const DtEntityType&)
const;
852 virtual bool templateExists(
const DtEntityType&)
const;
854 virtual void setForceManagerModified(
bool);
855 virtual bool forceManagerModified()
const;
857 virtual DtFilename modelDefinitionsPath();
859 virtual bool upgradeCountriesToCountryCodes(EntityData*);
860 virtual bool upgradeTopLevelCategories(EntityData*);
862 virtual bool isInMasterSMS(
const DtEntityType&)
const;
863 virtual bool isInMasterSMS(
const DtFilename&)
const;
866 virtual DtString smsName(
const DtEntityType&)
const;
867 virtual DtString smsName(
const DtFilename&)
const;
874 virtual bool saveData(
QProgressBar* progressBar =
nullptr,
QLabel* fileLabel =
nullptr);
875 virtual bool saveData(EntityData* data,
bool force =
false);
876 virtual bool saveUserRangeRings();
879 virtual void setSaveVrfRangeRings(
bool b);
882 return mySaveVrfRangeRings;
886 virtual bool saveFavorites();
889 virtual bool saveSystems();
892 virtual DtEnumDictionary* userRangeRingIds();
893 virtual DtFilename userRangeIdEnumerationFile()
const;
896 virtual void userRangeRingsChanged();
899 virtual bool saveAmmunitionTable();
902 virtual bool saveDetonationTable();
904 virtual bool saveDetonationTerrainDeformationTable();
907 virtual DtEntityType templateObjectType(
const std::string& parameterType)
const;
910 virtual void addInternalItem(
const std::string&,
bool markDataAsWell =
true);
913 virtual void addIgnorePlatformType(
const DtString&);
917 virtual QString parameterDisplayName(
const DtString& parameterType,
bool stopAtFirst =
true)
const;
920 virtual std::map<DtString, QString> availableParameterTypes(
const std::set<std::string>& except = std::set<std::string>())
const;
924 virtual std::vector<DtReaderWriter*> supportPointsFor(
const DtEntityType&)
const;
927 virtual DtEntityType uniqueEntityTypeFrom(
const DtEntityType&,
bool onlyFromMasterSMS =
false)
const;
930 virtual makVrv::DtUnicode systemNameForSystem(
const std::string&, DtFilename& fullFilename)
const;
933 virtual bool hasFactoryChecksums()
const;
946 virtual DtFilename filenameToSystemFilename(DtFilename systemFilename)
const;
953 virtual std::map<DtSymbolString, DtAmmunitionParamsEntry*> ammunitionTable()
const;
965 virtual std::set<DtEntityType> detonationTypes()
const;
974 using TargetingControlTables = std::map<DtString, std::vector<std::pair<DtTargetingControlTable*, const DtComponentSystemDefinition*>>>;
978 virtual std::map<DtComponentSystemDefinition*, const DtRangeProbabilityTable*> getSystemsAndHitTables()
const;
995 typedef std::map<const DtAmmunitionParamsEntry*, AmmunitionInformation>
AmmunitionMap;
1007 virtual DtEntityType ammunitionType(
const DtSymbolString&)
const;
1010 virtual QString ammunitionDisplayName(
const DtSymbolString&)
const;
1014 virtual bool ammunitionCanTarget(
const DtEntityType&,
const DtEntityType&)
const;
1019 return myNeedsPruning;
1026 boost::signals2::signal<void(std::vector<EntityData*>)> signal_newDataFileAdded;
1048 bool hasSimulationModelSet()
const;
1050 const DtFilename& parameterFilename()
const;
1055 DtFilename modelSetDirectory()
const;
1057 virtual void forceRemoved(DtForceType forceType);
1061 virtual std::map<DtString, const DtComponentSystemDefinition*> systemDefinitionsFor(
const DtEntityType& o)
const;
1062 virtual std::map<DtString, const DtComponentSystemDefinition*> systemDefinitionsFor(
const DtEntityType& o,
const DtString& category)
const;
1063 virtual void writeEnums(
int id, DtEnvironment*);
1081 virtual std::vector<EntityData*> addDataFromFile(
const DtString& file,
1083 bool signalAddition =
true,
bool isTemplate=
false,
LoadFlags flags = LoadAll,
bool loadInParallel =
true,
DtString* errorResult =
nullptr);
1095 virtual const std::vector<DtSubordinateFunctionTable>& subordinateFunctionTables()
const;
1096 virtual std::vector<DtSubordinateFunctionTable>& subordinateFunctionTables();
1115 bool loadTemplates =
false);
1119 virtual void cleanup();
1120 virtual bool ignorePlatformType(
const DtString&)
const;
1122 virtual bool saveForceHostility(
const DtFilename&
filename);
1124 virtual bool warned(
const DtFilename&);
1125 virtual void removeEntityFromSubObjects(
const DtEntityType&);
1147 virtual void addToInternalCategories(
DtModelSetEntry* entry,
bool isInMasterSMS);
1148 virtual void addToInternalCategories(
const std::vector<std::string>&,
bool isInMasterSMS);
1157 virtual void cancelLoad();
1160 virtual void addEntityDataEntry(
EntityData*,
bool signal =
true);
1161 virtual void removeEntityDataEntry(
EntityData*,
bool signal =
true,
bool removeFromVisualsToo =
true);
1164 virtual ParametersMap::const_iterator findAvailablePlatform(
const DtString& platform)
const;
1165 virtual ParametersData::const_iterator findAvailableParameter(
const DtString& platform)
const;
1166 virtual ParametersData::const_iterator findAvailableParameterFromFile(
const DtFilename& platform)
const;
1167 virtual ParametersData::const_iterator findAvailableParameterType(
const DtString& parameterType)
const;
1179 virtual bool updateAndAddMatchTypeVisuals(
EntityData* baseType,
const DtEntityType& matchType);
1182 virtual bool removeMatchingTypeFromVisuals(
const DtEntityType& matchType);
1189 static void setAmmunitionManagerCreator(AmmunitionManagerCreator creator);
1197 virtual void getPartsFromModel(
const DtEntityType& objectType, std::list<DtSimArtPartDescriptor>& artParts);
1198 virtual void parsePowerTypes();
1234 DtEnumLoader* myEnumLoader =
nullptr;
1235 DtEnumDictionary* myUserRangeRingIds =
nullptr;
1236 bool myUserRangeRingsChanged =
false;
1283 bool myForceSaveAll =
false;
1373 return iter->second;
1385 return iter->second;
1450 virtual void loadAllSmsFiles();
1457 bool myLoading =
false;
std::map< DtModelSetEntry *, EntityData * > EntityDataByEntry
Definition: simulationModelSetLoader.h:1256
Definition: simulationModelSetLoader.h:170
Definition: simulationModelSetLoader.h:1438
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:64
LoadFlags myLoadFlags
Definition: simulationModelSetLoader.h:215
BuiltInElementTypes
These types are all automatically registered when the manager is created. This enum is linked with Dt...
Definition: DtElementDefinitionManager.h:572
std::map< std::string, EntityData * > ParametersData
Definition: simulationModelSetLoader.h:282
makVrf::DtOrderedKeyList< EntityData * > myEntityData
Definition: simulationModelSetLoader.h:1244
std::map< int, QStringList > StringCategoriesMap
Definition: simulationModelSetLoader.h:1223
Definition: simulationModelSetLoader.h:142
std::vector< bool > myNeedsSort
Definition: simulationModelSetLoader.h:1282
virtual void setForceSaveAll(bool b)
Definition: simulationModelSetLoader.h:291
Definition: entityMapperKey.h:19
Definition: simulationModelSetLoader.h:124
DtRwVariableBindingsList * myOriginalSystems
Definition: simulationModelSetLoader.h:238
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
The DtAmmunitionManager is a clas that will maintain ammunition (that which is not published...
Definition: ammunitionManager.h:17
bool isMasterSMS
Definition: simulationModelSetLoader.h:134
Definition: rwVariableBindingsList.h:16
bool humanOnly
Definition: simulationModelSetLoader.h:1292
DtModelSetEntry * myCurrentModelSetEntry
Definition: simulationModelSetLoader.h:246
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
tbb::mutex myDataEntryMutex
Definition: simulationModelSetLoader.h:1303
DtVariableBindingsList * myOriginalVariableBindings
Definition: simulationModelSetLoader.h:240
DtRwForces myAllForces
Definition: simulationModelSetLoader.h:1216
Definition: simulationModelSetLoader.h:127
int myLastModifiedDate
Definition: simulationModelSetLoader.h:235
bool myIsInMasterSMS
Definition: simulationModelSetLoader.h:211
std::vector< DtString > myIconLists
Definition: simulationModelSetLoader.h:1296
DtSimulationObjectCategoryInformation & nonMasterModeCategories(CategoryTypes)
Definition: simulationModelSetLoader.h:1388
The model definition manager is responsible to managing all of the model definitions the IG knows abo...
Definition: DtModelDefinitionManager.h:78
DtVrfSubObjectParameterList * myModifiedSubordinateInformation
Definition: simulationModelSetLoader.h:253
bool cancelledLoad() const
Definition: simulationModelSetLoader.h:846
An EntityType to Definition mapper.
Definition: DtEntityTypeMapper.h:34
const DtFilename & filename() const
Filename that this simulation model set was originally loaded from.
Definition: simulationModelSet.h:476
std::vector< DtString > myOriginalIconLists
Definition: simulationModelSetLoader.h:1297
std::string myDiGuyCharacterOMMX
Definition: simulationModelSetLoader.h:1277
std::map< DtString, std::vector< std::pair< DtTargetingControlTable *, const DtComponentSystemDefinition * >>> TargetingControlTables
Returns the targeting control tables for the given entity.
Definition: simulationModelSetLoader.h:974
bool needsForceAddition
Definition: simulationModelSetLoader.h:1291
boost::signals2::signal< void(bool)> signal_readOnlyChanged
Definition: simulationModelSetLoader.h:1031
DtTerrainDeformationParams * myMasterModeDetTerrainDeformParameters
Definition: simulationModelSetLoader.h:1241
Readable-writable class holding all parameters to configure the DtDetonationManager.
Definition: detonationParams.h:22
DtEnvironmentSP myModified
Definition: simulationModelSetLoader.h:165
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
tbb::spin_mutex mySwapCurrentEntryMutex
Definition: simulationModelSetLoader.h:1305
DtEnvironmentSP myParentEnvironment
Definition: simulationModelSetLoader.h:266
std::vector< QTranslator * > myTranslators
Definition: simulationModelSetLoader.h:1259
boost::signals2::signal< void()> signal_simulationModelSetLoaded
Definition: simulationModelSetLoader.h:1025
SystemIsInMasterSMSMap mySystemIsInMasterSMSMap
Definition: simulationModelSetLoader.h:1212
std::map< const DtAmmunitionParamsEntry *, AmmunitionInformation > AmmunitionMap
Definition: simulationModelSetLoader.h:995
Definition: orderedKeyList.h:25
class DtScenarioExplorer:
Definition: scenarioExplorer.h:26
boost::signals2::signal< void(DtComponentSystemDefinition *)> signal_systemEntryAdded
Definition: simulationModelSetLoader.h:1032
tbb::mutex myAddToInternalCategoriesMutex
Definition: simulationModelSetLoader.h:1304
DtTerrainDeformationParams * myDetonationTerrainDeformationParameters
Definition: simulationModelSetLoader.h:1242
boost::signals2::signal< void(EntityData *)> signal_entityEntryAdded
Definition: simulationModelSetLoader.h:1028
DtDiGuyInformation * myOriginalDiGuyInformation
Definition: simulationModelSetLoader.h:244
DtVrfSubObjectParameterList is a readable/writable list of DtVrfSubObjectParameterEntrys.
Definition: vrfSubObjectParameterList.h:21
List of DtComponentSystemDescriptor instances.
Definition: componentSystemDescriptorList.h:20
DtSimulationObjectEditorComponentSystemDatabase * myTemplateSystems
Definition: simulationModelSetLoader.h:1208
Definition: simulationModelSetLoader.h:123
QString withAdditionX
Definition: simulationModelSetLoader.h:1288
std::list< DtEntityType > myAdditionalMatchTypes
Definition: simulationModelSetLoader.h:232
bool partialLoad() const
Definition: simulationModelSetLoader.h:380
virtual const ParametersMap & availableParameters() const
Definition: simulationModelSetLoader.h:577
Definition: readerWriter.h:85
class DtSimResourceManager:
Definition: simResourceManager.h:19
Extends the force manager to add country codes.
Definition: vrfGuiForceManager.h:24
DtSimulationModelSetLoadProgressWidget * myProgressWidget
Definition: simulationModelSetLoader.h:1202
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:29
std::map< DtFilename, bool > SystemIsInMasterSMSMap
Definition: simulationModelSetLoader.h:1211
std::map< DtString, std::vector< DtString > > mySupportedRangesByPowerType
Definition: simulationModelSetLoader.h:1281
DtSimulationModelSet * mySimulationModelSet
Definition: simulationModelSetLoader.h:1458
Definition: readerWriterRegistry.h:39
ParametersData myParametersData
Definition: simulationModelSetLoader.h:1249
DtEnvValueSP myOriginalDataNode
Definition: simulationModelSetLoader.h:214
DtSimulationModelSetLoader * mySimulationModelSetLoader
Definition: simulationModelSetLoader.h:1459
class DtStandardSensorObjects:
Definition: standardSensorObjects.h:23
const QStringList & defaultDeployedCountries()
Definition: simulationModelSetLoader.h:1414
ParameterStruct(DtVrfObjectParameters *p, bool b, const DtFilename &f)
Definition: simulationModelSetLoader.h:130
std::map< DtString, DtString > myDefaultRangeForPowerType
Definition: simulationModelSetLoader.h:1280
std::string myDataFile
Definition: simulationModelSetLoader.h:212
Definition: smsChecksum.h:15
int myTotalNumberOfEntityFiles
Definition: simulationModelSetLoader.h:1271
std::map< DtString, int > myMatchingVisualTypes
Definition: simulationModelSetLoader.h:1264
DtVrfCallbackQueue myDataJobLoader
Definition: simulationModelSetLoader.h:1309
DtFilename myParentFile
Definition: simulationModelSetLoader.h:265
bool needsPruning() const
Definition: simulationModelSetLoader.h:1017
QString withAdditionY
Definition: simulationModelSetLoader.h:1290
std::map< DtString, PowerTitle > myPowerTypes
Definition: simulationModelSetLoader.h:1298
bool myCancelledLoad
Definition: simulationModelSetLoader.h:1275
DtDiGuyInformation * myModifiedDiGuyInformation
Definition: simulationModelSetLoader.h:255
std::map< DtArtPartType, DtSimArtPartDescriptor > ArtPartMap
Definition: simulationModelSetLoader.h:284
const makVrf::DtOrderedKeyList< EntityData * > & entityData() const
Definition: simulationModelSetLoader.h:841
The element type manager is responsible for knowing about the types of elements as well as owning the...
Definition: DtElementDefinitionManager.h:561
std::map< const DtComponentSystemDefinition *, std::pair< const DtTargetingControlTable *, const DtRangeProbabilityTable * > > TargetingControlAndRangeTables
Returns the targeting control and range tables.
Definition: simulationModelSetLoader.h:982
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:42
bool hasSimulationModelSet() const
Definition: simulationModelSetLoader.h:1324
bool myIsDeleted
Definition: simulationModelSetLoader.h:259
CategoriesMap myNonMasterModeCategories
Definition: simulationModelSetLoader.h:1220
DtEntityType myOriginalMatchType
Definition: simulationModelSetLoader.h:230
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: simulationObjectGroupModelSetEntry.h:157
std::list< DtEntityType > myOriginalAdditionalMatchTypes
Definition: simulationModelSetLoader.h:233
bool operator>(const DtEntityType &rhs) const
Definition: simulationModelSetLoader.h:186
DtStandardSensorObjects myStandardSensorObjects
Definition: simulationModelSetLoader.h:1231
Instances of DtSimArtPartDescriptorList are lists of DtSimArtPartDescriptors. This is an optional par...
Definition: simArtPartDescriptorList.h:16
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
DtAmmunitionManager * myAmmunitionManager
Definition: simulationModelSetLoader.h:1232
DtRangeProbabilityTable is a readable/writable list of DtRangeProbEntrys. It's sorted by the entity t...
Definition: rangeProbabilityTable.h:31
StringCategoriesMap myOriginalMasterModeCategories
Definition: simulationModelSetLoader.h:1225
DtSmsChecksum myFactorySmsChecksum
Definition: simulationModelSetLoader.h:1273
DtMunitionDetonationPowerEntry * myModifiedPowerTableEntry
Definition: simulationModelSetLoader.h:226
makVrv::DtDe & myDe
Definition: simulationModelSetLoader.h:1456
bool mySaveReadOnlyFlag
Definition: simulationModelSetLoader.h:1274
DtComponentSystemDefinition.
Definition: componentSystemDefinition.h:27
DtEnvValueSP myOriginalObjectNode
Definition: simulationModelSetLoader.h:239
boost::signals2::signal< void(const DtEntityType &, const DtEntityType &)> signal_objectTypeChanged
Definition: simulationModelSetLoader.h:1036
DtAmmunitionParamsEntry * myOriginalAmmunitionParameters
Definition: simulationModelSetLoader.h:222
DtVrfObjectParameters * myParameters
Definition: simulationModelSetLoader.h:257
DtMunitionDetonationPowerEntry * myOriginalPowerTableEntry
Definition: simulationModelSetLoader.h:225
Definition: modelSetEntry.h:34
DtEmbarkationInformation * myOriginalEmbarkationInformation
Definition: simulationModelSetLoader.h:243
boost::signals2::signal< void(DtComponentSystemDefinition *)> signal_systemAboutToBeRemoved
Definition: simulationModelSetLoader.h:1034
bool loaded() const
Definition: simulationModelSetLoader.h:836
std::string myDiGuyCharacterLeaf
Definition: simulationModelSetLoader.h:1278
Contains makVrv::DtVirtualBaseClass class.
bool saveVrfRangeRings() const
Definition: simulationModelSetLoader.h:880
The DtVrfVisualsManager class is a class that allows for the loading of visuals (definitions, mappings and model definitions) for a given simulation model set. It will also provide routines to create visual mappings from a model set.
Definition: vrfVisualsManager.h:170
DtRwVariableBindingsList * myModifiedSystems
Definition: simulationModelSetLoader.h:249
DtEntityType myMatchType
Definition: simulationModelSetLoader.h:229
CategoriesMap myDefaultCategories
Definition: simulationModelSetLoader.h:1219
bool myLoadedAllFromPartialLoad
Definition: simulationModelSetLoader.h:1302
static AmmunitionManagerCreator theAmmunitionManagerCreator
Definition: simulationModelSetLoader.h:1307
makVrv::DtDe & myDe
Definition: simulationModelSetLoader.h:1228
Definition: simulationModelSetLoader.h:101
DtAutoTagInformation & autoTagInformation()
Definition: simulationModelSetLoader.h:1364
void addDefaultDeployedCountry(const QString &)
Definition: simulationModelSetLoader.h:1430
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
Definition: simulationModelSetLoader.h:1285
const QStringList & defaultOverlayLayers()
Definition: simulationModelSetLoader.h:1393
bool loading() const
Definition: simulationModelSetLoader.h:1445
std::set< DtVariableBindingsList > systemsAddedThisSession
Definition: simulationModelSetLoader.h:269
CategoriesMap myOriginalDefaultCategories
Definition: simulationModelSetLoader.h:1221
Readable-writable class holding all parameters to configure the DtAmmunitionManager.
Definition: ammunitionParams.h:20
DtFilename file
Definition: simulationModelSetLoader.h:135
DtSensorSignatureInformation * myOriginalSensorSignatureInformation
Definition: simulationModelSetLoader.h:245
DtFilename myParameterFilename
Definition: simulationModelSetLoader.h:1214
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
bool mySaveVrfRangeRings
Definition: simulationModelSetLoader.h:1210
DtSimulationModelSetLoader::LoadFlags myLoadFlags
Definition: simulationModelSetLoader.h:1460
EntityDataByEntry myEntityDataByEntry
Definition: simulationModelSetLoader.h:1257
const DtModelSet * modelSet() const
Definition: simulationModelSetLoader.h:1339
StringCategoriesMap myMasterModeCategories
Definition: simulationModelSetLoader.h:1224
DtFormationTable * myModifiedFormationTable
Definition: simulationModelSetLoader.h:252
This class extends the component system database to add a bit more information that the simulation ob...
Definition: simulationObjectEditorComponentSystemDatabase.h:19
bool myLoadVisuals
Definition: simulationModelSetLoader.h:1265
DtDamageProbabilityTable.
Definition: damageProbabilityTable.h:20
DtSensorSignatureInformation * myModifiedSensorSignatureInformation
Definition: simulationModelSetLoader.h:256
std::map< int, DtSimulationObjectCategoryInformation > CategoriesMap
Definition: simulationModelSetLoader.h:1218
bool myReadOnly
Definition: simulationModelSetLoader.h:1268
DtFormationTable * myOriginalFormationTable
Definition: simulationModelSetLoader.h:241
DtSimulationModelSet * masterSMS() const
Definition: simulationModelSetLoader.h:369
QStringList myDefaultDeployedCountries
Definition: simulationModelSetLoader.h:1227
bool myLoaded
Definition: simulationModelSetLoader.h:1230
DtFilename simulationModelSetFilename() const
Returns the filename of the current simulation model set file.
Definition: simulationModelSetLoader.h:1312
const char * source
Definition: lz4.h:442
DtMunitionDetonationPowerEntry.
Definition: munitionDetonationPowerEntry.h:19
DtSimulationObjectEditorComponentSystemDatabase * myModifiedSystemDatabase
Definition: simulationModelSetLoader.h:1207
std::set< std::string > myInternalItems
Definition: simulationModelSetLoader.h:1251
std::set< DtString > elementsAddedThisSession
Definition: simulationModelSetLoader.h:268
Base class for RW objects that describe a system parameter. This data is used by the entity editor to...
Definition: systemParameterData.h:30
DtSimulationModelSet * mySimulationModelSet
Definition: simulationModelSetLoader.h:263
QString withoutAdditionY
Definition: simulationModelSetLoader.h:1289
Description: A readable, writable list of DtForceType.
Definition: rwForces.h:34
std::map< DtString, ParameterStruct > ParametersMap
Definition: simulationModelSetLoader.h:138
void addDefaultOverlayLayer(const QString &)
Definition: simulationModelSetLoader.h:1409
std::shared_ptr< EnvironmentContainer > EnvironmentContainerSP
Definition: simulationModelSetLoader.h:168
Definition: ammunitionParamsEntry.h:24
Subclass to allow for setting of filename.
Definition: vrfVisualsManager.h:40
DtSimulationObjectGroupModelSetEntry * myOriginalSOGData
Definition: simulationModelSetLoader.h:219
virtual void processModelSet(DtSimulationModelSet *)
boost::signals2::signal< void(const DtFilename &)> signal_systemRemoved
Definition: simulationModelSetLoader.h:1033
DtSimulationObjectCategoryInformation & defaultCategories(CategoryTypes)
Definition: simulationModelSetLoader.h:1376
DtSimulationObjectGroupModelSetEntry * myModifiedSOGData
Definition: simulationModelSetLoader.h:220
bool titleOnly
Definition: simulationModelSetLoader.h:1293
LoadFlags
Definition: simulationModelSetLoader.h:104
void setDefaultOverlayLayers(const QStringList &)
Definition: simulationModelSetLoader.h:1404
Descriptor for a DtComponentSystem. Specified a system being added to an entity. This does not actual...
Definition: componentSystemDescriptor.h:23
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
std::set< DtString > myIgnorePlatformType
Definition: simulationModelSetLoader.h:1252
boost::signals2::signal< void(EntityData *)> signal_entityEntryAboutToBeRemoved
Definition: simulationModelSetLoader.h:1027
void setDefaultDeployedCountries(const QStringList &)
Definition: simulationModelSetLoader.h:1425
bool myNeedsPruning
Definition: simulationModelSetLoader.h:1300
vrlink
Definition: subordinateFunctionTable.h:20
ParametersMap myAvailableParameters
Definition: simulationModelSetLoader.h:1248
makVrf::DtVrfVisualsManager * myVrfVisualsManager
Definition: simulationModelSetLoader.h:1262
DtEnvValueSP myModifiedObjectNode
Definition: simulationModelSetLoader.h:250
ParameterStruct()
Definition: simulationModelSetLoader.h:129
DT_DLL_simulationObjectEditorimpl makVrf::DtEntityMapperKey mapperKeyConversion(const DtEntityType &, int force)
bool operator>(const EntityData &rhs) const
Definition: simulationModelSetLoader.h:199
DtVariableBindingsList * myModifiedVariableBindings
Definition: simulationModelSetLoader.h:251
bool myForceManagerModified
Definition: simulationModelSetLoader.h:1260
bool myIsModified
Definition: simulationModelSetLoader.h:260
boost::signals2::signal< void(EntityData *)> signal_visualMappingsModified
Definition: simulationModelSetLoader.h:1029
boost::signals2::signal< void()> signal_resetVisuals
Definition: simulationModelSetLoader.h:1030
bool hasParentFile()
Definition: simulationModelSetLoader.h:271
bool myIsNew
Definition: simulationModelSetLoader.h:258
CategoryTypes
Definition: simulationModelSetLoader.h:119
EnvironmentContainerSP myEnvironment
Definition: simulationModelSetLoader.h:217
DtEnvironmentSP myOriginal
Definition: simulationModelSetLoader.h:164
bool myLoadingSMSFiles
Definition: simulationModelSetLoader.h:1269
DtSimulationObjectEditorScenarioExplorer * myScenarioExplorer
Definition: simulationModelSetLoader.h:1246
DtModelSet * myFavoritesModelSet
Definition: simulationModelSetLoader.h:1253
EntityData * myIsReplacing
Definition: simulationModelSetLoader.h:262
DtModelSet * myBackupFavoritesModelSet
Definition: simulationModelSetLoader.h:1254
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
DtVrfSubObjectParameterList * myOriginalSubordinateInformation
Definition: simulationModelSetLoader.h:242
DtEmbarkationInformation * myModifiedEmbarkationInformation
Definition: simulationModelSetLoader.h:254
DT_DLL_readerWriter std::shared_ptr< DtEnvironment > DtEnvironmentSP
Definition: readerWriter.h:30
boost::signals2::signal< void()> signal_preloadSimulationModelSet
Definition: simulationModelSetLoader.h:1024
DtModelSetEntry * myOriginalModelSetEntry
Definition: simulationModelSetLoader.h:247
static DtUnicode fromAscii(const std::string &ascii)
Create a unicode string from an ascii string, the string MUST be zero terminated if the length is not...
DtDetonationParams * myDetonationParameters
Definition: simulationModelSetLoader.h:1239
bool myPartialLoad
Definition: simulationModelSetLoader.h:1301
static const int DtTemplateKindBase
Definition: simulationModelSetLoader.h:99
QStringList myWarned
Definition: simulationModelSetLoader.h:1204
const DtFilename & parameterFilename() const
Definition: simulationModelSetLoader.h:1349
boost::signals2::signal< void(makVrv::DtDe *)> signal_displayDeSet
Signal sent when display de is set. Connect to this signal so you can add new visualizers for display...
Definition: simulationModelSetLoader.h:1039
DtSimulationObjectEditorComponentSystemDatabase * myOriginalSystemDatabase
Definition: simulationModelSetLoader.h:1206
bool myResolvedParent
Definition: simulationModelSetLoader.h:236
DtSimulationModelSet * mySimulationModelSet
Definition: simulationModelSetLoader.h:1205
std::vector< DtSubordinateFunctionTable > mySubordinateFunctionTables
Definition: simulationModelSetLoader.h:1299
QString withoutAdditionX
Definition: simulationModelSetLoader.h:1287
const DtRwForces & allForces() const
Definition: simulationModelSetLoader.h:1354
Definition: targetingControlTable.h:19
bool forceSaveAll() const
Definition: simulationModelSetLoader.h:292
DtAmmunitionParamsEntry * myModifiedAmmunitionParameters
Definition: simulationModelSetLoader.h:223
Definition: modelSet.h:35
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33
boost::signals2::signal< void(const DtEntityType &, const DtEntityType &)> signal_objectTypeAboutToBeChanged
Definition: simulationModelSetLoader.h:1035
DtAutoTagInformation myAutoTagInformation
Definition: simulationModelSetLoader.h:1267
DtModelSet * myModelSet
Definition: simulationModelSetLoader.h:1215
const DtSimulationModelSet & simulationModelSet() const
Definition: simulationModelSetLoader.h:1329
QStringList myDefaultOverlayLayers
Definition: simulationModelSetLoader.h:1226
void setNeedsPruning(bool b)
Definition: simulationModelSetLoader.h:1016
DtDetonationParams * myMasterModeDetonationParameters
Definition: simulationModelSetLoader.h:1238
makVrv::DtDe * myDisplayDe
Definition: simulationModelSetLoader.h:1229