eive-obsw/bsp_q7s/memory/FileSystemHandler.h

40 lines
1.3 KiB
C
Raw Normal View History

2021-07-08 12:22:41 +02:00
#ifndef BSP_Q7S_MEMORY_FILESYSTEMHANDLER_H_
#define BSP_Q7S_MEMORY_FILESYSTEMHANDLER_H_
2021-07-08 12:32:24 +02:00
#include "fsfw/ipc/MessageQueueIF.h"
2021-07-08 12:22:41 +02:00
#include "fsfw/tasks/ExecutableObjectIF.h"
#include "fsfw/objectmanager/SystemObject.h"
#include "fsfw/memory/HasFileSystemIF.h"
class FileSystemHandler: public SystemObject,
public ExecutableObjectIF,
public HasFileSystemIF {
public:
FileSystemHandler(object_id_t fileSystemHandler);
2021-07-08 12:32:24 +02:00
virtual~ FileSystemHandler();
2021-07-08 12:22:41 +02:00
ReturnValue_t performOperation(uint8_t) override;
/**
* Function to get the MessageQueueId_t of the implementing object
* @return MessageQueueId_t of the object
*/
2021-07-08 12:32:24 +02:00
MessageQueueId_t getCommandQueue() const override;
2021-07-08 12:22:41 +02:00
private:
2021-07-08 12:32:24 +02:00
MessageQueueIF* mq = nullptr;
2021-07-08 12:22:41 +02:00
ReturnValue_t appendToFile(const char* repositoryPath,
const char* filename, const uint8_t* data, size_t size,
uint16_t packetNumber, void* args = nullptr) override;
ReturnValue_t createFile(const char* repositoryPath,
const char* filename, const uint8_t* data = nullptr,
size_t size = 0, void* args = nullptr) override;
ReturnValue_t deleteFile(const char* repositoryPath,
const char* filename, void* args = nullptr) override;
};
#endif /* BSP_Q7S_MEMORY_FILESYSTEMMANAGER_H_ */