Adriana Kobylak | 9f89e2e | 2018-05-30 13:16:20 -0500 | [diff] [blame] | 1 | #pragma once |
| 2 | |
| 3 | #include <sdbusplus/bus.hpp> |
| 4 | |
| 5 | namespace phosphor |
| 6 | { |
| 7 | namespace software |
| 8 | { |
| 9 | namespace updater |
| 10 | { |
| 11 | |
| 12 | /** |
| 13 | * @class Flash |
| 14 | * @brief Contains flash management functions. |
| 15 | * @details The software class that contains functions to interact |
| 16 | * with the flash. |
| 17 | */ |
| 18 | class Flash |
| 19 | { |
| 20 | public: |
Pavithra Barithaya | 48de55f | 2024-06-22 05:30:44 -0500 | [diff] [blame] | 21 | Flash() = default; |
| 22 | Flash(const Flash&) = delete; |
| 23 | Flash& operator=(const Flash&) = delete; |
| 24 | Flash(Flash&&) = default; |
| 25 | Flash& operator=(Flash&&) = delete; |
| 26 | |
Adriana Kobylak | 292159f | 2020-05-05 09:25:55 -0500 | [diff] [blame] | 27 | /* Destructor */ |
| 28 | virtual ~Flash() = default; |
| 29 | |
Adriana Kobylak | 9f89e2e | 2018-05-30 13:16:20 -0500 | [diff] [blame] | 30 | /** |
| 31 | * @brief Writes the image file(s) to flash |
| 32 | */ |
| 33 | virtual void flashWrite() = 0; |
Adriana Kobylak | 3ce563a | 2018-06-06 16:41:15 -0500 | [diff] [blame] | 34 | |
| 35 | /** |
| 36 | * @brief Takes action when the state of the activation service file changes |
| 37 | */ |
Patrick Williams | bf2bb2b | 2022-07-22 19:26:52 -0500 | [diff] [blame] | 38 | virtual void onStateChanges(sdbusplus::message_t& msg) = 0; |
Adriana Kobylak | 9f89e2e | 2018-05-30 13:16:20 -0500 | [diff] [blame] | 39 | }; |
| 40 | |
| 41 | } // namespace updater |
| 42 | } // namespace software |
| 43 | } // namespace phosphor |