/* * Author: Patrick-Christopher Mattulat * Company: Lynar Studios * E-Mail: webmaster@lynarstudios.com * Created: 2020-08-19 * Changed: 2021-05-01 * * */ #ifndef LS_STD_STORABLE_FILE_HPP #define LS_STD_STORABLE_FILE_HPP #include #include #include "IStorable.hpp" #include "File.hpp" namespace ls_std { class StorableFile : public ls_std::IStorable { public: explicit StorableFile(const std::string &_path); ~StorableFile() = default; std::shared_ptr getFile(); ls_std::byte_field load() override; void reset(const std::string &_path); void save(const ls_std::byte_field &_data) override; private: std::shared_ptr file{}; void _init(const std::string &_path); }; } #endif