VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSettingsBackupManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2009 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrvCore/vrvCore.h>
15 
16 #include <boost/thread/mutex.hpp>
17 
18 #include <string>
19 
20 namespace makVrv
21 {
22  class DtDe;
23 
34  {
35  public:
37  static DtSettingsBackupManager& instance(DtDe& de);
38 
40  virtual ~DtSettingsBackupManager();
41 
43  virtual void setBackupsPath(const std::string&);
44  const std::string& backupsPath() const
45  {
46  return myBackupsPath;
47  }
48 
49  public:
53  virtual void registerSettingsBackup(
54  DtSettingsBackup* backup);
55 
57  virtual void unregisterSettingsBackup(const std::string&);
58 
60  virtual void unregisterSettingsBackup(DtSettingsBackup* backup);
61 
63  virtual void settingsObjectDestroyed(const DtSettingsBackup*);
64  virtual void settingsClearedBackup(const DtSettingsBackup*);
65  virtual void settingsRestored(const DtSettingsBackup*);
66  virtual void settingsBackedUp(const DtSettingsBackup*);
67 
70  virtual bool setFactoryFile(const std::string&, const std::string& factoryFile);
71 
74  virtual bool setFactoryFile(const DtSettingsBackup*, const std::string& factoryFile);
75 
77  virtual bool canBeRevertedFromStartup(const std::string&) const;
78 
80  virtual bool canBeRevertedFromStartup(const DtSettingsBackup*) const;
81 
83  virtual bool canBeRestoredFromFactory(const std::string&) const;
84 
86  virtual bool canBeRestoredFromFactory(const DtSettingsBackup*) const;
87 
90  virtual bool backup(const std::string&);
91 
93  virtual bool backup(const DtSettingsBackup*);
94 
97  virtual void clearBackup(const std::string&);
98 
100  virtual void clearBackup(const DtSettingsBackup*);
101 
104  virtual bool revertToStartup(const std::string&);
105 
107  virtual bool revertToStartup(const DtSettingsBackup*);
108 
110  virtual bool restoreFromFactory(const std::string&);
111 
113  virtual bool restoreFromFactory(const DtSettingsBackup*);
114 
116  virtual bool registered(const std::string&) const;
117 
119  virtual bool registered(const DtSettingsBackup*) const;
120 
123  virtual void restoreWhenRestored(const std::string& toRestore, const std::string& whenRestored,
125 
127  virtual void restoreWhenRestored(const DtSettingsBackup* toRestore, const DtSettingsBackup* whenRestored,
129 
131  virtual void cancelRestoreWhenRestored(const std::string& toRestore, const std::string& whenRestored,
133 
135  virtual void cancelRestoreWhenRestored(const DtSettingsBackup* toRestore, const DtSettingsBackup* whenRestored,
137 
139  virtual std::vector<std::string> willRestoreWhenRestored(const DtSettingsBackup* toRestore,
141 
142  protected:
144  void willRestoreWhenRestored(const std::string& toRestore,
145  std::vector<std::string>& willRestore, const DtSettingsBackup::RestoreFlags& f = DtSettingsBackup::RestoreAll) const;
146 
147  protected:
150 
151  protected:
153  typedef std::map<std::string, DtSettingsBackup*> DtSettingsBackupMap;
155  std::string myBackupsPath;
156  mutable boost::mutex myMonitor;
157  };
158 }
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
DtDe & myDe
Definition: DtSettingsBackupManager.h:152
Contains makVrv::DtLockedBufferedQueue class.
std::string myBackupsPath
Map that maps backup class name to backup of object.
Definition: DtSettingsBackupManager.h:155
Definition: DtSettingsBackup.h:35
The makVrv::DtSettingsBackupManager class is a central place to store objects that can be backed up a...
Definition: DtSettingsBackupManager.h:33
Contains makVrv::DtVirtualBaseClass class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
RestoreFlags
Definition: DtSettingsBackup.h:26
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
std::map< std::string, DtSettingsBackup * > DtSettingsBackupMap
Definition: DtSettingsBackupManager.h:153
DtSettingsBackupMap myBackups
Definition: DtSettingsBackupManager.h:154
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:70
boost::mutex myMonitor
Definition: DtSettingsBackupManager.h:156
const std::string & backupsPath() const
Definition: DtSettingsBackupManager.h:44
The makVrv::DtSettingsBackup is a lightweight class that must be subclassed from if an object wants t...
Contains DLL export macros.

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)