1 #ifndef __creaImageIOGimmick_h_INCLUDED__
2 #define __creaImageIOGimmick_h_INCLUDED__
4 #include <creaImageIOSQLiteTreeHandler.h>
9 * \defgroup Controller Controller
15 * \defgroup Model Model
18 * \defgroup GUI Top level graphical user interfaces
25 //=======================================================================
26 /// Central controler of the gimmick application
35 /// Initialize (read/creates databases, etc.)
38 /// Finalize (closes databases, etc.)
41 /// Sets level for messages "Gimmick!"
42 static void SetMessageLevel(int level);
43 /// Sets level for debug messages "Gimmick! DEBUG"
44 static void SetDebugMessageLevel(int level);
46 /// Type of map from TreeHandler name to TreeHandler*
47 typedef std::map<std::string, TreeHandler*> TreeHandlerMapType;
49 /// Returns the TreeHandlerMap (ref)
50 TreeHandlerMapType& GetTreeHandlerMap() { return mTreeHandlerMap; }
51 /// Returns the TreeHandlerMap (const ref)
52 const TreeHandlerMapType& GetTreeHandlerMap() const
53 { return mTreeHandlerMap; }
56 /// Add a file to the given TreeHandler
57 void AddFile(const std::string& handler, const std::string& filename);
58 /// Add a dir to the given TreeHandler
59 void AddDir(const std::string& handler, const std::string& path,
62 /// Prints the tree handled by the handler
63 void Print(const std::string& handler);
66 /// Returns the TreeHandler with a given name
67 TreeHandler* GetTreeHandler(const std::string& name) const;
69 SQLiteTreeHandler* GetLocalDatabase() { return mLocalDatabase; }
71 const SQLiteTreeHandler* GetLocalDatabase() const
72 { return mLocalDatabase; }
77 const std::string& GetHomeDirectory();
78 const std::string& GetUserSettingsDirectory();
79 void CreateUserSettingsDirectory();
80 const std::string& GetLocalDatabasePath();
83 SQLiteTreeHandler* mLocalDatabase;
84 TreeHandlerMapType mTreeHandlerMap;
86 std::string mCurrentDirectory;
87 std::string mHomeDirectory;
88 std::string mUserSettingsDirectory;
89 std::string mLocalDatabasePath;
93 //=======================================================================
96 } // EO namespace creaImageIO