]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOGimmick.h
Added the PACS Connection Panel, a basic socket connection class and on .Gimmick...
[creaImageIO.git] / src2 / creaImageIOGimmick.h
index b7fd64741dd2a1edd37fdb7da7f7c7f947fce298..448fc9ba9fd79c27f82ed89e3b2bcd5d7dd2e23a 100644 (file)
@@ -4,7 +4,8 @@
 #include <creaImageIOSQLiteTreeHandler.h>
 #include <creaImageIOTreeHandlerImageAdder.h>
 #include <creaImageIOTimestampDatabaseHandler.h>
-#include <creaImageIOSynchronizer.h>
+#include <creaImageIOSynchron.h>
+#include <creaImageIOSettings.h>
 
 namespace creaImageIO
 {
@@ -36,7 +37,7 @@ namespace creaImageIO
 
   //=======================================================================
   /// Central controler of the gimmick application
-  class Gimmick
+  class CREAIMAGEIO_EXPORT Gimmick
   {
   public:
     /// Ctor
@@ -91,18 +92,32 @@ namespace creaImageIO
     void AddDir(const std::string& handler, const std::string& path, 
                bool recurse);
 
-       ///Synchronizes the loaded data with the database. If remove is true the database will be updated, otherwise 
+       /// Removes a file from the given TreeHandler
+       void RemoveFile(const std::string& d, 
+                       tree::Node* filename);
+
+       ///Deletes the given drive name from the databases
+       void DeleteDrive(const std::string& drive);
+  
+
+       /// Copies the files into the local directory
+       void CopyFiles(const std::vector<std::string>& filenames, const std::string& d );
+  
+
+       ///Synchronizes the loaded data with the database d. If repair is true the database will be updated, otherwise 
        ///only a warning sign will be issued
-       void Synchronize(bool update, TreeHandler* handler);
+       std::string Synchronize(const std::string& d, 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_locDesc, std::string &i_locDB);
+    ///create a DB from a given descriptor file and for a specific location
+    SQLiteTreeHandler *createDB(const std::string &i_name, 
+                               const std::string &i_locDesc, 
+                               const std::string &i_locDB);
 
        // add an existent DB 
-       void addDB(std::string &i_nameDB, std::string &i_locationDB);
+       void addDB(const std::string &i_nameDB, const std::string &i_locationDB);
 
     /// Returns the TreeHandler with a given name
     TreeHandler* GetTreeHandler(const std::string& name) const;
@@ -115,11 +130,22 @@ namespace creaImageIO
     const SQLiteTreeHandler* GetLocalDatabase() const 
     { return mLocalDatabase; }
 
-    
+       ///Returns the given setting value for the given setting parameter
+       void GetSetting(const std::string& name, std::string& value);
+
+       ///Updates the settings file
+       void UpdateSetting(const std::string& name, const std::string& value);
+
+       /// add DB from Settings file
+    void addDBSettings();
+
+       ///Edits the field described by the name and key provided with the value given
+       void EditField(tree::Node* node, const std::string& d, const std::string& name, const std::string& key, const std::string& val);
 
     /// 
     const std::string& GetHomeDirectory();
     const std::string& GetUserSettingsDirectory();
+       int GetBinaryDirectory(char *pname, size_t pathsize);
     void CreateUserSettingsDirectory();
     const std::string& GetLocalDatabasePath();
        const std::string& GetTimestampDatabasePath();
@@ -137,7 +163,7 @@ namespace creaImageIO
     std::string mUserSettingsDirectory;
     std::string mLocalDatabasePath;
        std::string mTimestampDatabasePath;
-
+       Settings        *mSettings;
     TreeHandlerImageAdder mImageAdder;
   };
   // EO class Gimmick