#ifndef LIBRARYMANAGER_H #define LIBRARYMANAGER_H #include #include #include #include "story_project.h" class LibraryManager { public: LibraryManager(); void Initialize(const std::string &library_path); bool IsInitialized() const; std::string LibraryPath() const { return m_library_path; } static std::string GetVersion(); std::vector>::const_iterator begin() const { return m_projectsList.begin(); } std::vector>::const_iterator end() const { return m_projectsList.end(); } void Save(); void Scan(); std::shared_ptr NewProject(); void CheckDirectories(); std::shared_ptr GetStory(const std::string &uuid); void SetStoreUrl(const std::string &store_url) { m_storeUrl = store_url; } std::string GetStoreUrl() const { return m_storeUrl; } private: std::string m_library_path; std::vector> m_projectsList; std::string m_storeUrl; }; #endif // LIBRARYMANAGER_H