blob: 0da94dec6a7ccc0a62151bcd04cb04228915f5e8 [file] [log] [blame]
#pragma once
#include <sdbusplus/bus.hpp>
namespace phosphor
{
namespace software
{
namespace updater
{
/**
* @class Flash
* @brief Contains flash management functions.
* @details The software class that contains functions to interact
* with the flash.
*/
class Flash
{
public:
/* Destructor */
virtual ~Flash() = default;
/**
* @brief Writes the image file(s) to flash
*/
virtual void flashWrite() = 0;
/**
* @brief Takes action when the state of the activation service file changes
*/
virtual void onStateChanges(sdbusplus::message_t& msg) = 0;
};
} // namespace updater
} // namespace software
} // namespace phosphor