]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOGimmick.h
Added synchronization
[creaImageIO.git] / src2 / creaImageIOGimmick.h
index 93d982a99c10a12d940665891ec4c957f1596f35..f93bac1e5d971967e797e9e48426b8cce0138a21 100644 (file)
@@ -3,7 +3,8 @@
 
 #include <creaImageIOSQLiteTreeHandler.h>
 #include <creaImageIOTreeHandlerImageAdder.h>
-#include <creaImageIOSynchronizer.h>
+#include <creaImageIOTimestampDatabaseHandler.h>
+#include <creaImageIOSynchron.h>
 
 namespace creaImageIO
 {
@@ -90,16 +91,28 @@ namespace creaImageIO
     void AddDir(const std::string& handler, const std::string& path, 
                bool recurse);
 
+       /// Removes a file from the given TreeHandler
+       void RemoveFile(const std::string& d, 
+                       const tree::Node* & filename);
+
        ///Synchronizes the loaded data with the database. If remove is true the database will be updated, otherwise 
        ///only a warning sign will be issued
-       void Synchronize(bool update, TreeHandler* handler);
+       std::string Synchronize(bool repair, bool checkAttributes);
 
     /// Prints the tree handled by the handler
     void Print(const std::string& handler);
+       
+       ///create a DB from a given descriptor file and for a specific location
+       SQLiteTreeHandler *createDB(std::string &i_name, std::string &i_locDesc, std::string &i_locDB);
 
+       // add an existent DB 
+       void addDB(std::string &i_nameDB, std::string &i_locationDB);
 
     /// Returns the TreeHandler with a given name
     TreeHandler* GetTreeHandler(const std::string& name) const;
+
+       /// Returns the TimestampDatabase
+       TimestampDatabaseHandler* GetTimestampDatabase() const;
     /// 
     SQLiteTreeHandler* GetLocalDatabase() { return mLocalDatabase; }
 
@@ -113,11 +126,13 @@ namespace creaImageIO
     const std::string& GetUserSettingsDirectory();
     void CreateUserSettingsDirectory();
     const std::string& GetLocalDatabasePath();
+       const std::string& GetTimestampDatabasePath();
 
 
     //=============================================
   private:
     SQLiteTreeHandler* mLocalDatabase;
+       TimestampDatabaseHandler* mTimestampDatabase;
     TreeHandlerMapType mTreeHandlerMap;
        Synchronizer* mSynchronizer;
 
@@ -125,6 +140,7 @@ namespace creaImageIO
     std::string mHomeDirectory;
     std::string mUserSettingsDirectory;
     std::string mLocalDatabasePath;
+       std::string mTimestampDatabasePath;
 
     TreeHandlerImageAdder mImageAdder;
   };