21 #include <vlutil/vlUtil.h>
34 template <
typename RecordType>
44 const std::string& displayName,
const std::string& ext )
113 DtTHROW_NEW( DtCorruptedState,
"DtDeSettings have gone missing!" );
126 DtTHROW_NEW( DtCorruptedState,
"DtDeSettings have gone missing!" );
193 if ( loadOnlyFactorySettings )
213 if (
settings()->readRecordFrom(record,filePath) )
232 virtual void getRecord( RecordType& record )
const = 0;
237 std::vector<std::string>& fileNames) {};
241 virtual void addRecords(RecordType& rec, RecordType& combinedRec) {};
270 template <
typename RecordType>
283 const std::string& displayName,
const std::string& ext )
311 virtual void getRecord( RecordType& record )
const = 0;
331 template <
typename RecordType,
typename SettingsType>
344 const std::string& displayName,
const std::string& ext )
366 writeSettings->backup();
375 settings->setFromRecord( record );
385 settings->getRecord( record );
virtual DtDeSettings * findSettings(const std::string &settingsType)
Get the settings object for a particular settings type.
virtual void loadDefaultSettings(bool loadOnlyFactorySettings)
Loads the default settings from disk.
Definition: DtBaseSettingsManager.h:189
Base class for (non-shared) settings managers.
Definition: DtBaseSettingsManager.h:271
Base class for shared settings managers.
Definition: DtBaseSettingsManager.h:332
a read settings lock on a setting object.
Definition: DtReadSettingsLock.h:48
virtual void initializeBackup()=0
Creates a backup of the settings' current state (abstract).
virtual void addRecords(RecordType &rec, RecordType &combinedRec)
For directory support, when reading in a directory, add the records from each file to the combined re...
Definition: DtBaseSettingsManager.h:241
static DtDeSettingsManager & instance(DtDe &de)
Get an instance of the settings manager.
bool myAutoSaveFlag
Definition: DtBaseSettingsManager.h:254
Virtual base class.
Definition: DtVirtualBaseClass.h:19
Interaction makVrv::DtWriteSettingsLock class.
virtual bool useDefaultSettingsRecord() const
Gets whether setting initialization should check for a default record.
Definition: DtBaseSettingsManager.h:100
virtual void setUseDefaultSettingsRecord(bool useit)
Sets whether setting initialization should check for a default record.
Definition: DtBaseSettingsManager.h:91
virtual void initializeBackup()
Creates a backup of the settings' current state.
Definition: DtBaseSettingsManager.h:359
virtual void autoSaveIfNecessary()
Saves the current settings as defaults if autosave is enabled.
Definition: DtBaseSettingsManager.h:65
virtual void getRecord(RecordType &record) const
Store the current settings' state in the given record.
Definition: DtBaseSettingsManager.h:381
DtSignalConnectionManager myConnections
Definition: DtBaseSettingsManager.h:241
std::string myExtension
Definition: DtBaseSettingsManager.h:250
bool findDefaultSettingsRecord(const std::string &name, RecordType &record) const
Find a settings default records.
Definition: DtDeInitializer.h:358
Common base class for all types of settings managers.
Definition: DtBaseSettingsManager.h:35
virtual bool autoSave() const
Gets whether autosave is enabled for the settings manager.
Definition: DtBaseSettingsManager.h:82
virtual ~DtBaseSharedSettingsManager()
Virtual DTOR.
Definition: DtBaseSettingsManager.h:350
The makVrv::DtRecordSettingsBackup is a templaced class that settings records will use in order to ba...
Definition: DtRecordSettingsBackup.h:100
virtual void saveDefaultSettings()
Saves the current settings' state as the default (on disk).
Definition: DtBaseSettingsManager.h:179
bool readDefaultRecord(RecordType &r)
Read a record from the default settings.
DtSharedRecordSettingsBackup< SettingsType, RecordType > SharedRecordBackupType
Definition: DtBaseSettingsManager.h:337
Contains DLL export macros.
DtSettingsBackup * mySettingsBackup
Definition: DtBaseSettingsManager.h:256
void setFactoryFile(const std::string &s)
Definition: DtSettingsBackup.h:170
virtual void getRecord(RecordType &record) const =0
Store the current settings' state in the given record (abstract).
bool writeRecordTo(const RecordType &r, const std::string &exportFileName) const
Write a record to a specific location.
Contains makVrv::DtVirtualBaseClass class.
DtDe & myDe
Definition: DtBaseSettingsManager.h:258
virtual DtSettingsBackup * settingsBackup()
Accessor for the manager's settings backup.
Definition: DtBaseSettingsManager.h:132
DtBaseSettingsManager(DtDe &de, const std::string &name, const std::string &displayName, const std::string &ext)
CTOR.
Definition: DtBaseSettingsManager.h:282
std::string myDisplayName
Definition: DtBaseSettingsManager.h:251
bool myUseDefaultSettingsRecordFlag
Definition: DtBaseSettingsManager.h:253
virtual void initializeBackup()
Creates a backup of the settings' current state.
Definition: DtBaseSettingsManager.h:298
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
static DtSharedSettingsManager & instance(DtDe &)
Get an instance of the shared settings manager from the DtDe;.
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
std::string myName
Definition: DtBaseSettingsManager.h:249
a write settings lock on a setting object.
Definition: DtWriteSettingsLock.h:47
virtual ~DtBaseSettingsManager()
Virtual DTOR.
Definition: DtBaseSettingsManager.h:289
virtual void getSplitRecord(std::vector< RecordType > &rec, std::vector< std::string > &fileNames)
For directory support, split the main record into different sub-records and give them each a file nam...
Definition: DtBaseSettingsManager.h:236
DtCommonBaseSettingsManager(DtDe &de, const std::string &name, const std::string &displayName, const std::string &ext)
CTOR The name, displayName, and extension parameters are used for creating the settings object (DtDeS...
Definition: DtBaseSettingsManager.h:43
Contains makVrv::DtReadSettingsLock class.
virtual void createSettings(const std::string &settingsType, const std::string &settingsExt)
Create a settings object with a name and extension.
bool readFactoryDefaultRecord(RecordType &r)
virtual void importSettings(const std::string &filePath)
Load the settings' state from the given file.
Definition: DtBaseSettingsManager.h:210
Base class to provide boost signal/slot management.
virtual DtDeSettings * settings()
Accessor for the manager's DtDeSettings object.
Definition: DtBaseSettingsManager.h:107
Settings class for reading and writing settings to/from files.
Definition: DtDeSettings.h:29
virtual void backup()
Backs up settings to backup file.
DtBaseSharedSettingsManager(DtDe &de, const std::string &name, const std::string &displayName, const std::string &ext)
CTOR.
Definition: DtBaseSettingsManager.h:343
virtual void loadDefaults()
Initializes the settings and creates a backup.
Definition: DtBaseSettingsManager.h:150
virtual void registerSettingsBackup(DtSettingsBackup *backup)
Registers the settings class with the manager.
virtual void setFromRecord(const RecordType &record)=0
Set the current settings' state from the given record (abstract).
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
virtual const DtSettingsBackup * settingsBackup() const
Accessor for the manager's settings backup (const).
Definition: DtBaseSettingsManager.h:138
virtual void setAutoSave(bool doit)
Sets whether autosave is enabled for the settings manager.
Definition: DtBaseSettingsManager.h:75
virtual void getRecord(RecordType &record) const =0
Store the current settings' state in the given record (abstract).
virtual void setFromRecord(const RecordType &record)
Set the current settings' state from the given record.
Definition: DtBaseSettingsManager.h:370
virtual ~DtCommonBaseSettingsManager()
Virtual DTOR.
Definition: DtBaseSettingsManager.h:58
virtual void exportSettings(const std::string &filePath) const
Save the current settings' state to the given file.
Definition: DtBaseSettingsManager.h:221
virtual const DtDeInitializer & deInitializer() const
Return the DtDeInitializer.
The makVrv::DtSharedRecordSettingsBackup is a templaced class that settings records will use in order...
Definition: DtRecordSettingsBackup.h:197
DtRecordSettingsBackup< DtBaseSettingsManager< RecordType >, RecordType > RecordBackupType
Definition: DtBaseSettingsManager.h:276
bool writeDefaultRecord(const RecordType &r)
Write a record as the default settings.
virtual void setFromRecord(const RecordType &record)=0
Set the current settings' state from the given record (abstract).
virtual const DtDeSettings * settings() const
Accessor for the manager's DtDeSettings object (const).
Definition: DtBaseSettingsManager.h:120
static DtSettingsBackupManager & instance(DtDe &de)
Get an instance of the settings manager.