]> Creatis software - creaImageIO.git/blobdiff - appli/gimmick/main.cxx
*** empty log message ***
[creaImageIO.git] / appli / gimmick / main.cxx
index 516dfd45c312412751fe82ef6a9ce37e95fbc743..1ce38ed72a6ad3cc28d1333d129fdcfc90307cb0 100644 (file)
@@ -2,13 +2,16 @@
 #include <creaMessageManager.h>
 #include <gimmick_ggo.h>
 
+
 int main(int argc, char* argv[])
 {
+
   gengetopt_args_info args;
-  if (cmdline_parser (argc, argv, &args) != 0) exit(1) ;
+  if (cmdline_parser (argc, argv, &args) != 0) return 0 ;
      
   creaImageIO::Gimmick g;
   if (args.verbose_given) g.SetMessageLevel(args.verbose_arg);
+  if (args.debug_given) g.SetDebugMessageLevel(args.debug_arg);
     
   bool something_to_do = 
     args.dir_given |
@@ -18,33 +21,38 @@ int main(int argc, char* argv[])
   if (!something_to_do)
     {
       std::cout << "Nothing to do !" << std::endl;
-      exit(0);
+      return 0;
     }
 
+  std::string handler("Local database");
   try
     {
-      if (!g.Initialize()) return 1;
+      g.Initialize();
       
       if (args.file_given) 
        {
-         g.AddFileToLocalDatabase(args.file_arg);
+         std::vector<std::string> files;
+         // TO DO : multiple files given
+         files.push_back(args.file_arg);
+         g.AddFiles(handler,files);
        }
       if (args.dir_given) 
        {
-         g.AddDirToLocalDatabase(args.dir_arg, args.recurse_given);
+         g.AddDir(handler,args.dir_arg, args.recurse_given);
        }
       
       if (args.print_given) 
        {
-         g.GetLocalDatabase()->LoadChildren(0,0);
-         g.PrintLocalDatabase();
+         g.GetTreeHandler(handler)->LoadChildren(0,0);
+         g.Print(handler);
        }
       
-      if (!g.Finalize()) return 1;
+      g.Finalize();
     }
   catch (crea::Exception e)
     {
       e.Print();
     }
+
   return 0;
 }