25 class DtModelDefinitionManagerSignaler;
26 class DtModelDefinitionBackup;
27 class DtModelDefinitionManager;
45 virtual std::string backupClassType()
const;
46 virtual std::string backupName()
const;
54 virtual void write(boost::archive::xml_oarchive& ar);
58 virtual void read(boost::archive::xml_iarchive& ar);
62 virtual void readIncremental(boost::archive::xml_iarchive& ar);
66 return myRestoredManager;
90 virtual void loadDefinitions();
94 virtual bool skipDefaultDefinitions();
97 virtual void saveDefinitions();
101 virtual void saveAllDefinitions();
105 virtual void saveDefinitions(
const std::string&);
111 virtual void addDefinition(
const DtModelDefinition& definition,
bool autoSave =
true);
128 void renameDefinition(
const std::string& oldModelName,
const std::string& newModelName);
131 const std::string& modelFilename()
const;
134 void setModelFilename(
const std::string& extension);
137 bool modelInstancingEnabled()
const;
140 void setModelInstancingEnabled(
bool enabled);
143 void clearModelInstancingCache();
158 virtual bool loadModelDefinitions(
const std::string&
filename,
bool merge =
true);
164 virtual bool loadModelDefinition(
const std::string&
filename);
168 virtual bool exportToFile(
const std::vector<std::string>& defs,
const std::string&
filename)
const;
171 virtual bool schemaInUse(
const std::string&)
const;
174 virtual bool schemaInUse(
const std::string&, std::vector<std::string>&)
const;
177 virtual void backup();
180 virtual bool mergeModelDefinitions(
const std::string& fileOrDirName);
183 virtual bool modifiedSinceStartup();
195 virtual void resetModifiedFlags();
198 virtual int getNumOfDefinitionsExcludeTerrain();
225 virtual void removeNonPersistentItems();
236 friend class boost::serialization::access;
238 template <
typename Archive>
241 ar & BOOST_SERIALIZATION_NVP(myDefinitions);
263 bool loadModelDefinitionsFromXML(
const std::string&
filename,
bool shouldMerge);
264 bool loadModelDefinitionsFromBinary(
const std::string&
filename,
bool shouldMerge);
the Signals for DtModelDefinitionManager
Definition: DtModelDefinitionManager.h:269
Virtual base class.
Definition: DtVirtualBaseClass.h:19
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
std::string myModelFileExtension
Definition: DtModelDefinitionManager.h:249
The model definition manager is responsible to managing all of the model definitions the IG knows abo...
Definition: DtModelDefinitionManager.h:79
void serialize(Archive &ar, unsigned int version)
Definition: DtModelDefinitionManager.h:239
boost::signalslib::signal< void()> signal_modelDefinitionManagerReset
Signal emitted when the model definition manager is reset.
Definition: DtModelDefinitionManager.h:280
DefinitionMap myDefinitions
Definition: DtModelDefinitionManager.h:247
const DtSettingsBackup * settingsBackup() const
Definition: DtModelDefinitionManager.h:200
DefinitionMap myModifiedDefinitions
Definition: DtModelDefinitionManager.h:258
bool myModelInstancingFlag
Definition: DtModelDefinitionManager.h:254
DtModelDefinitionManagerBackup is the settings backup object for DtModelDefinitions.
Definition: DtModelDefinitionManager.h:32
boost::signalslib::signal< void(const DtModelDefinition &)> signal_modelDefinitionToBeRemoved
Signal emitted when a model definition is to be destroyed.
Definition: DtModelDefinitionManager.h:286
std::map< std::string, DtModelDefinition > DefinitionMap
Definition: DtModelDefinitionManager.h:84
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:38
bool myAutoSave
Definition: DtModelDefinitionManager.h:250
void setAutoSave(bool b)
Sets whether or not to automatically save model definition manager on any change. Default is true...
Definition: DtModelDefinitionManager.h:214
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
bool autoSave() const
Definition: DtModelDefinitionManager.h:219
DtModelDefinitionManager * myRestoredManager
Definition: DtModelDefinitionManager.h:72
std::string myModelFileName
Definition: DtModelDefinitionManager.h:248
Creator for DtModelDefinitionManager class.
Definition: DtModelDefinitionManager.h:296
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtSettingsBackup * settingsBackup()
Definition: DtModelDefinitionManager.h:205
Interaction makVrv::DtModelDefinition class.
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
int myStartupNumOfDefinition
Definition: DtModelDefinitionManager.h:257
DefinitionMap myDeletedDefinitions
Definition: DtModelDefinitionManager.h:260
const DtModelDefinitionManager * restoredManager() const
Definition: DtModelDefinitionManager.h:64
DtDe & myDe
Definition: DtModelDefinitionManager.h:246
Base class to provide boost signal/slot management.
boost::signalslib::signal< void(const DtModelDefinition &)> signal_modelDefinitionAdded
Signal emitted when a model definition is added.
Definition: DtModelDefinitionManager.h:283
Contains makVrv::DtModelDefinitionRecord class.
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtModelDefinitionManagerSignaler & mySignaler
Definition: DtModelDefinitionManager.h:255
DtModelDefinitionManager & mySourceManager
Definition: DtModelDefinitionManager.h:70
DefinitionMap myAddedDefinitions
Definition: DtModelDefinitionManager.h:259
DtDe & myDe
Definition: DtModelDefinitionManager.h:71
DtSignalConnectionManager myConnectionManager
Definition: DtModelDefinitionManager.h:252
DtModelDefinitionManagerBackup * myBackup
Definition: DtModelDefinitionManager.h:256