blob: 92bcbf6abd82609dcd782bec23b42ae0775d31c1 [file] [log] [blame]
Sampa Misra854e61f2019-08-22 04:36:47 -05001#pragma once
2
3#include "file_io_by_type.hpp"
4
5namespace pldm
6{
7namespace responder
8{
9
10using namespace pldm::responder::dma;
11
12/** @class PelHandler
13 *
14 * @brief Inherits and implements FileHandler. This class is used
15 * to read/write pels.
16 */
17class PelHandler : public FileHandler
18{
19 public:
20 /** @brief PelHandler constructor
21 */
22 PelHandler(uint32_t fileHandle) : FileHandler(fileHandle)
23 {
24 }
25
26 virtual int writeFromMemory(uint32_t offset, uint32_t length,
27 uint64_t address);
28
29 /** @brief method to store a pel file in tempfs and send
30 * d-bus notification to pel daemon that it is ready for consumption
31 *
32 * @param[in] pelFileName - the pel file path
33 */
34 virtual int storePel(std::string&& pelFileName);
35
36 /** @brief PelHandler destructor
37 */
38 ~PelHandler()
39 {
40 }
41};
42
43} // namespace responder
44} // namespace pldm