[ox/fs] Add resize compactor

This commit is contained in:
2019-06-22 17:23:24 -05:00
parent baff558ff2
commit 6571129686
2 changed files with 21 additions and 2 deletions

View File

@@ -102,6 +102,11 @@ class FileSystemTemplate: public FileSystem {
[[nodiscard]] ox::Error remove(const char *path, bool recursive = false) override;
/**
* Resizes FileSystem to minimum possible size.
*/
void resize();
[[nodiscard]] ox::Error resize(uint64_t size, void *buffer = nullptr) override;
[[nodiscard]] ox::Error write(const char *path, void *buffer, uint64_t size, uint8_t fileType = FileType_NormalFile) override;
@@ -237,6 +242,11 @@ ox::Error FileSystemTemplate<FileStore, Directory>::remove(const char *path, boo
return OxError(0);
}
template<typename FileStore, typename Directory>
void FileSystemTemplate<FileStore, Directory>::resize() {
m_fs.resize();
}
template<typename FileStore, typename Directory>
ox::Error FileSystemTemplate<FileStore, Directory>::resize(uint64_t size, void *buffer) {
oxReturnError(m_fs.resize(size, buffer));