diff options
Diffstat (limited to 'src/core/file_sys/vfs_static.h')
| -rw-r--r-- | src/core/file_sys/vfs_static.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/core/file_sys/vfs_static.h b/src/core/file_sys/vfs_static.h index 4dd47ffcc..44fab51d1 100644 --- a/src/core/file_sys/vfs_static.h +++ b/src/core/file_sys/vfs_static.h @@ -12,21 +12,21 @@ namespace FileSys { -template <u8 value> class StaticVfsFile : public VfsFile { public: - explicit StaticVfsFile(size_t size = 0, std::string name = "", VirtualDir parent = nullptr) - : size(size), name(std::move(name)), parent(std::move(parent)) {} + explicit StaticVfsFile(u8 value, std::size_t size = 0, std::string name = "", + VirtualDir parent = nullptr) + : value{value}, size{size}, name{std::move(name)}, parent{std::move(parent)} {} std::string GetName() const override { return name; } - size_t GetSize() const override { + std::size_t GetSize() const override { return size; } - bool Resize(size_t new_size) override { + bool Resize(std::size_t new_size) override { size = new_size; return true; } @@ -43,23 +43,23 @@ public: return true; } - size_t Read(u8* data, size_t length, size_t offset) const override { + std::size_t Read(u8* data, std::size_t length, std::size_t offset) const override { const auto read = std::min(length, size - offset); std::fill(data, data + read, value); return read; } - size_t Write(const u8* data, size_t length, size_t offset) override { + std::size_t Write(const u8* data, std::size_t length, std::size_t offset) override { return 0; } - boost::optional<u8> ReadByte(size_t offset) const override { + boost::optional<u8> ReadByte(std::size_t offset) const override { if (offset < size) return value; return boost::none; } - std::vector<u8> ReadBytes(size_t length, size_t offset) const override { + std::vector<u8> ReadBytes(std::size_t length, std::size_t offset) const override { const auto read = std::min(length, size - offset); return std::vector<u8>(read, value); } @@ -70,7 +70,8 @@ public: } private: - size_t size; + u8 value; + std::size_t size; std::string name; VirtualDir parent; }; |
