fsfw/src/fsfw/cfdp/handler/UserBase.h

32 lines
973 B
C
Raw Normal View History

2022-08-09 15:46:42 +02:00
#ifndef FSFW_CFDP_USERBASE_H
#define FSFW_CFDP_USERBASE_H
#include "fsfw/memory/HasFileSystemIF.h"
namespace cfdp {
class UserBase {
public:
2022-08-09 15:51:01 +02:00
/**
2022-08-09 16:18:45 +02:00
* @brief Base class which provides a user interface to interact with CFDP handlers.
*
* @details
* This class is also used to pass the Virtual Filestore (VFS) Implementation to the CFDP
2022-08-09 15:51:01 +02:00
* handlers so the filestore operations can be mapped to the underlying filestore.
2022-08-09 16:18:45 +02:00
*
* It is used by implementing it in a child class and then passing it to the CFDP
* handler objects. The base class provides default implementation for the user indication
* primitives specified in the CFDP standard. The user can override these implementations
* to provide custom indication handlers.
2022-08-09 15:51:01 +02:00
* @param vfs Virtual Filestore Object. Will be used for all file operations
*/
2022-08-09 15:46:42 +02:00
explicit UserBase(HasFileSystemIF& vfs);
private:
HasFileSystemIF& vfs;
};
} // namespace cfdp
#endif // FSFW_CFDP_USERBASE_H