41 lines
1.8 KiB
C++
41 lines
1.8 KiB
C++
#ifndef FSFW_HAL_HOSTFILESYSTEM_H
|
|
#define FSFW_HAL_HOSTFILESYSTEM_H
|
|
|
|
#include <system_error>
|
|
|
|
#include "fsfw/filesystem/HasFileSystemIF.h"
|
|
|
|
class HostFilesystem : public HasFileSystemIF {
|
|
public:
|
|
HostFilesystem();
|
|
|
|
ReturnValue_t getBaseFilename(const char *path, char *nameBuf, size_t maxLen,
|
|
size_t &baseNameLen) override;
|
|
virtual ReturnValue_t getFileSize(const char *path, uint64_t &fileSize,
|
|
FileSystemArgsIF *args) override;
|
|
ReturnValue_t isDirectory(const char *path, bool &isDirectory) override;
|
|
bool fileExists(const char *path, FileSystemArgsIF *args) override;
|
|
ReturnValue_t truncateFile(const char *path, FileSystemArgsIF *args) override;
|
|
ReturnValue_t writeToFile(const char *path, size_t offset, const uint8_t *data,
|
|
size_t size) override;
|
|
ReturnValue_t readFromFile(const char *path, size_t offset, size_t sizeToRead, uint8_t *buffer,
|
|
size_t &actuallyRead, size_t maxSize) override;
|
|
ReturnValue_t createFile(const char *path, const uint8_t *data, size_t size) override;
|
|
ReturnValue_t removeFile(const char *path, FileSystemArgsIF *args) override;
|
|
ReturnValue_t createDirectory(const char *path, bool createParentDirs,
|
|
FileSystemArgsIF *args) override;
|
|
ReturnValue_t removeDirectory(const char *path, bool deleteRecurively,
|
|
FileSystemArgsIF *args) override;
|
|
ReturnValue_t rename(const char *oldPath, const char *newPath, FileSystemArgsIF *args) override;
|
|
|
|
std::error_code errorCode;
|
|
using HasFileSystemIF::createDirectory;
|
|
using HasFileSystemIF::createFile;
|
|
using HasFileSystemIF::removeDirectory;
|
|
using HasFileSystemIF::removeFile;
|
|
using HasFileSystemIF::rename;
|
|
|
|
private:
|
|
};
|
|
#endif // FSFW_HAL_HOSTFILESYSTEM_H
|