VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSettingsBackup.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2009 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtSettingsBackup.h,v $ $Revision: 1.16 $ $State: Exp $
7 ******************************************************************************/
8 
15 
16 #pragma once
18 #include <boost/archive/xml_iarchive.hpp>
19 #include <boost/archive/xml_oarchive.hpp>
20 
21 namespace makVrv
22 {
23 
27  {
28  public:
30  {
31  RestoreFromFactory = 0x00000001,
32  RestoreFromLocal = 0x00000002,
37  KeepRestoreFromLocal = 0x80000000,
38  RestoreAll = RestoreFromFactory | RestoreFromLocal
39  };
40 
41  typedef std::map<DtSettingsBackup*, int> RestoreWhenRestored;
42 
43  public:
44 
47 
49  virtual ~DtSettingsBackup();
50 
54  virtual bool createAndWriteToBackupFile(const std::ostringstream& str, const std::string& path);
55 
56  virtual bool createAndWriteToBackupFiles(const std::vector<std::ostringstream*>& str,
57  const std::string& path, const std::vector<std::string>& fileNames);
58 
60  const std::string& backupFile() const;
61 
63  virtual bool backupFileExists() const;
64 
67  virtual bool backupDirExists() const;
68 
70  virtual bool factoryFileExists() const;
71 
73  virtual bool factoryDirExists() const;
74 
77  virtual void backup();
78 
82  virtual void backupByDir();
83 
86  virtual void deleteBackup();
87 
89  virtual void restore(bool fromFactory = false);
90 
92  virtual void getRestorableNames(NameList& names);
93 
96  virtual void restore(bool fromFactory, bool selectedOnly);
97 
101  virtual void restore(const DtSettingsBackup* from ) = 0;
102 
106  virtual void restoreSelected( const DtSettingsBackup* ) {}
107 
110  virtual std::string backupClassType() const = 0;
111 
114  virtual DtSettingsBackup* create() const = 0;
115 
118  virtual void write(boost::archive::xml_oarchive& ar) = 0;
119 
122  virtual void read(boost::archive::xml_iarchive& ar) = 0;
123 
125  virtual void writeDir(std::vector<std::ostringstream*>& outStreamVec, std::vector<std::string>& fileNames)
126  {
127  // should never be called
128  };
129 
132  virtual void readIncremental(boost::archive::xml_iarchive& ar)
133  {
134  // should never be called
135  };
136 
138  void setManagerDestroyed(bool b)
139  {
140  myManagerDestroyed = b;
141  }
142 
146  virtual void addRestoreWhenRestored(DtSettingsBackup*,
147  const RestoreFlags& f = RestoreAll);
148 
150  {
151  return myRestoreWhenRestored;
152  }
153 
156  virtual void cancelRestoreWhenRestored(DtSettingsBackup*,
157  const RestoreFlags& f = RestoreAll);
158 
161  virtual std::string backupName() const;
162 
163  void setBackupsPath(const std::string& s)
164  {
165  myBackupsPath = s;
166  }
167 
168  const std::string& backupsPath() const
169  {
170  return myBackupsPath;
171  }
172 
173  void setFactoryFile(const std::string& s)
174  {
175  myFactoryFile = s;
176  }
177 
178  const std::string& factoryFile() const
179  {
180  return myFactoryFile;
181  }
182 
183  void setFactoryDir(const std::string& dir)
184  {
185  myFactoryDir = dir;
186  }
187 
188  const std::string& factoryDir() const
189  {
190  return myFactoryDir;
191  }
192 
193  void setBackupDir(const std::string& dir)
194  {
195  myBackupDir = dir;
196  }
197 
198  const std::string& backupDir() const
199  {
200  return myBackupDir;
201  }
202 
205  boost::signal<void (const DtSettingsBackup*)> signal_destructing;
206  boost::signal<void (const DtSettingsBackup*)> signal_backupCleared;
207  boost::signal<void (const DtSettingsBackup*)> signal_backedUp;
208  boost::signal<void (const DtSettingsBackup*)> signal_restored;
209 
210  protected:
211 
213  virtual bool restore(bool fromFactory,
214  std::vector<DtSettingsBackup*>& hasBeenRestored, bool selectedOnly);
215 
216  protected:
217 
220  std::string myBackupFile;
221  std::string myFactoryFile;
222  std::string myBackupsPath;
223  std::string myBackupDir;
224  std::string myFactoryDir;
225 
226  };
227 
228 }
const std::string & factoryFile() const
Definition: DtSettingsBackup.h:178
void setBackupsPath(const std::string &s)
Definition: DtSettingsBackup.h:163
std::string myBackupsPath
Definition: DtSettingsBackup.h:222
std::string myBackupFile
Definition: DtSettingsBackup.h:220
boost::signal< void(const DtSettingsBackup *)> signal_backedUp
Definition: DtSettingsBackup.h:207
void setManagerDestroyed(bool b)
If true, will not signal destroyed.
Definition: DtSettingsBackup.h:138
virtual void readIncremental(boost::archive::xml_iarchive &ar)
Support for reading files from a directory by looping over files and incrementally adding their conte...
Definition: DtSettingsBackup.h:132
void setFactoryDir(const std::string &dir)
Definition: DtSettingsBackup.h:183
std::string myBackupDir
Definition: DtSettingsBackup.h:223
const std::string & backupDir() const
Definition: DtSettingsBackup.h:198
const std::string & backupsPath() const
Definition: DtSettingsBackup.h:168
boost::signal< void(const DtSettingsBackup *)> signal_destructing
Called when destructing.
Definition: DtSettingsBackup.h:205
void setFactoryFile(const std::string &s)
Definition: DtSettingsBackup.h:173
std::string myFactoryFile
Definition: DtSettingsBackup.h:221
bool myManagerDestroyed
Definition: DtSettingsBackup.h:218
const RestoreWhenRestored & restoreWhenRestored() const
Definition: DtSettingsBackup.h:149
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
boost::signal< void(const DtSettingsBackup *)> signal_restored
Definition: DtSettingsBackup.h:208
RestoreFlags
Definition: DtSettingsBackup.h:29
boost::signal< void(const DtSettingsBackup *)> signal_backupCleared
Definition: DtSettingsBackup.h:206
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:26
std::map< DtSettingsBackup *, int > RestoreWhenRestored
Definition: DtSettingsBackup.h:41
virtual void restoreSelected(const DtSettingsBackup *)
Called with the object that needs to be restored from.
Definition: DtSettingsBackup.h:106
const std::string & factoryDir() const
Definition: DtSettingsBackup.h:188
void setBackupDir(const std::string &dir)
Definition: DtSettingsBackup.h:193
std::string myFactoryDir
Definition: DtSettingsBackup.h:224
RestoreWhenRestored myRestoreWhenRestored
Definition: DtSettingsBackup.h:219
virtual void writeDir(std::vector< std::ostringstream * > &outStreamVec, std::vector< std::string > &fileNames)
Support for writing settings to files in a directory.
Definition: DtSettingsBackup.h:125
The backup interface, is used by components to control backups of a state.
Definition: DtBackupInterface.h:22
Contains makVrv::DtBackupInterface class.
std::vector< std::string > NameList
Definition: DtBackupInterface.h:26

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)