| #pragma once |
| |
| #include "file_io_by_type.hpp" |
| |
| namespace pldm |
| { |
| namespace responder |
| { |
| |
| using namespace pldm::responder::dma; |
| |
| /** @class PelHandler |
| * |
| * @brief Inherits and implements FileHandler. This class is used |
| * to read/write pels. |
| */ |
| class PelHandler : public FileHandler |
| { |
| public: |
| /** @brief PelHandler constructor |
| */ |
| PelHandler(uint32_t fileHandle) : FileHandler(fileHandle) |
| { |
| } |
| |
| virtual int writeFromMemory(uint32_t offset, uint32_t length, |
| uint64_t address); |
| virtual int readIntoMemory(uint32_t offset, uint32_t& length, |
| uint64_t address); |
| virtual int read(uint32_t offset, uint32_t& length, Response& response); |
| |
| virtual int fileAck(uint8_t fileStatus); |
| |
| /** @brief method to store a pel file in tempfs and send |
| * d-bus notification to pel daemon that it is ready for consumption |
| * |
| * @param[in] pelFileName - the pel file path |
| */ |
| virtual int storePel(std::string&& pelFileName); |
| |
| /** @brief PelHandler destructor |
| */ |
| ~PelHandler() |
| { |
| } |
| }; |
| |
| } // namespace responder |
| } // namespace pldm |