+ void Finalize();
+
+ /// Sets level for messages "Gimmick!"
+ static void SetMessageLevel(int level);
+ /// Sets level for debug messages "Gimmick! DEBUG"
+ static void SetDebugMessageLevel(int level);
+
+ /// Type of map from TreeHandler name to TreeHandler*
+ typedef std::map<std::string, TreeHandler*> TreeHandlerMapType;
+
+ /// Returns the TreeHandlerMap (ref)
+ TreeHandlerMapType& GetTreeHandlerMap() { return mTreeHandlerMap; }
+ /// Returns the TreeHandlerMap (const ref)
+ const TreeHandlerMapType& GetTreeHandlerMap() const
+ { return mTreeHandlerMap; }
+
+ /// Add the files to the given TreeHandler
+ void AddFiles(const std::string& handler,
+ const std::vector<std::string>& filenames);
+
+ /// Add a dir to the given TreeHandler
+ 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,
+ 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
+ std::string Synchronize(const std::string& d, bool repair, bool checkAttributes);