]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOGimmick.cpp
*** empty log message ***
[creaImageIO.git] / src2 / creaImageIOGimmick.cpp
index a9f72644144b8171a78cf9fbea4e736e3246bd48..64099e589c651e2bbf37fe4fefa1667cfcc7ef0a 100644 (file)
@@ -1,6 +1,6 @@
 #include <creaImageIOGimmick.h>
 
-#include <creaMessageManager.h>
+#include <creaImageIOSystem.h>
 #include <creaImageIOImageFinder.h>
 
 #include <boost/filesystem.hpp>
@@ -14,6 +14,8 @@ namespace creaImageIO
   {    
     crea::MessageManager::RegisterMessageType("Gimmick!",
                                              "Gimmick",1);
+    crea::MessageManager::RegisterMessageType("Gimmick! DEBUG",
+                                             "Gimmick",0);
   }
   //==============================================================
 
@@ -28,10 +30,10 @@ namespace creaImageIO
   
 
   //==============================================================
-  bool Gimmick::Initialize()
+  void Gimmick::Initialize()
   {
     // Create the UserSettings dir if does not exist
-    if (!CreateUserSettingsDirectory()) return false;
+    CreateUserSettingsDirectory();
     // Sets the current directory to the home dir
     mCurrentDirectory =  GetHomeDirectory();
 
@@ -40,44 +42,38 @@ namespace creaImageIO
     // Create or open local database
     if (! boost::filesystem::exists( GetLocalDatabasePath() ) )
       {
-       creaMessage("Gimmick!",1,
-                   "[Gimmick!] Local database '"<<GetLocalDatabasePath()<<"' "
-                   << "does not exist : creating it"<<std::endl);
-
+       std::string mess = "Local database '";
+       mess += GetLocalDatabasePath();
+       mess += "' does not exist : creating it";
+       GimmickMessage(1,mess<<std::endl);
+       
        // CREATING DEFAULT DB STRUCTURE
        mLocalDatabase->GetTree().GetDescriptor().CreateDefault();
        
        if ( ! mLocalDatabase->Create(true) )
          {
-           creaMessage("Gimmick!",1,
-                       "[Gimmick!] !! ERROR CREATING '"<<GetLocalDatabasePath()<<"'");
-           return false;
+           GimmickError("ERROR CREATING '"<<GetLocalDatabasePath()<<"'");
          }
        mLocalDatabase->SetAttribute(0,"Name","Local database");
       }
     else 
       {
        /// Open and test it
-       creaMessage("Gimmick!",1,
-                   "[Gimmick!] Opening local database '"
-                   <<GetLocalDatabasePath()<<"' "
-                   <<std::endl);
+       GimmickMessage(1,"Opening local database '"
+                      <<GetLocalDatabasePath()<<"' "
+                      <<std::endl);
        if ( ! mLocalDatabase->Open(true) )
          {
-           creaMessage("Gimmick!",1,
-                       "[Gimmick!] !! ERROR OPENING '"<<GetLocalDatabasePath()<<"'");
-           return false;
+           GimmickError("ERROR OPENING '"<<GetLocalDatabasePath()<<"'");
          }
        
       }
-    return true;
-
   }
   //================================================================
 
 
   //==============================================================
-  bool Gimmick::Finalize()
+  void Gimmick::Finalize()
   {
     delete mLocalDatabase;
   }
@@ -138,22 +134,18 @@ namespace creaImageIO
   //========================================================================
 
   //========================================================================
-  bool Gimmick::CreateUserSettingsDirectory()
+  void Gimmick::CreateUserSettingsDirectory()
   {
     if (! boost::filesystem::is_directory( GetUserSettingsDirectory() ) )
       {
-       creaMessage("Gimmick!",1,
-                   "[Gimmick!] Directory '"<<GetUserSettingsDirectory()<<"' "
-                   << "does not exist : creating it"<<std::endl);
+       GimmickMessage(1,"Directory '"<<GetUserSettingsDirectory()<<"' "
+                      << "does not exist : creating it"<<std::endl);
        
        if ( ! boost::filesystem::create_directory( GetUserSettingsDirectory() ) )
          {
-           creaMessage("Gimmick!",1,
-                       "[Gimmick!] !! ERROR CREATING '"<<GetUserSettingsDirectory()<<"'");
-           return false;
+           GimmickError("ERROR CREATING '"<<GetUserSettingsDirectory()<<"'");
          }
       }
-    return true;
   }
   //========================================================================
 
@@ -166,13 +158,27 @@ namespace creaImageIO
   }
   //========================================================================
 
+  //========================================================================
+  /// Sets message level
+  void Gimmick::SetDebugMessageLevel(int l)
+  {
+    crea::MessageManager::SetMessageLevel("Gimmick! DEBUG",l);
+  }
+  //========================================================================
+
   //========================================================================
   /// Add a file to the local database
   void Gimmick::AddFileToLocalDatabase(const std::string& f)
   {
     ImageFinder finder(mLocalDatabase);
-    if (finder.IsHandledFile(f)) finder.AddFile(f);
-    
+    if (finder.IsHandledFile(f)) 
+      {
+       finder.AddFile(f);
+      }
+    else
+      {
+       GimmickError("File '"<<f<<"' does not exist or is not handled");
+      }    
   }
   //========================================================================