diff options
author | HampusM <hampus@hampusmat.com> | 2022-06-12 13:44:58 +0200 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-06-13 17:57:01 +0200 |
commit | 927e065f9829045247be7c0b3296408b6f577c1f (patch) | |
tree | 7da3d9cd5aa4070414a8708a582f6c3ab3e1e708 /src/game/RLE_reader.hpp | |
parent | eb66598c326862fd9dfc1899be4eac93f81a8023 (diff) |
feat: add reading RLE files
Diffstat (limited to 'src/game/RLE_reader.hpp')
-rw-r--r-- | src/game/RLE_reader.hpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/game/RLE_reader.hpp b/src/game/RLE_reader.hpp new file mode 100644 index 0000000..797575e --- /dev/null +++ b/src/game/RLE_reader.hpp @@ -0,0 +1,24 @@ +#pragma once + +#include "interfaces/RLE_reader.hpp" +#include "interfaces/matrix.hpp" + +#include <yacppdic/auto_wirable.hpp> + +#include <filesystem> +#include <memory> + +class RLEReader + : public IRLEReader, + public yacppdic:: + AutoWirable<IRLEReader, RLEReader, IMatrixFactory<IRLEReader::MatrixElement>> +{ +public: + explicit RLEReader(const IMatrixFactory<MatrixElement> &matrix_factory) noexcept; + + [[nodiscard]] auto read_RLE_file(const std::filesystem::path &path) const + -> std::unique_ptr<IMatrix<MatrixElement>> override; + +private: + IMatrixFactory<MatrixElement> _matrix_factory; +}; |