1*da9b5833SJayanth Othayoth #pragma once
2*da9b5833SJayanth Othayoth 
3*da9b5833SJayanth Othayoth #include "data_interface.hpp"
4*da9b5833SJayanth Othayoth 
5*da9b5833SJayanth Othayoth #include <nlohmann/json.hpp>
6*da9b5833SJayanth Othayoth #include <xyz/openbmc_project/HardwareIsolation/Entry/server.hpp>
7*da9b5833SJayanth Othayoth 
8*da9b5833SJayanth Othayoth namespace openpower
9*da9b5833SJayanth Othayoth {
10*da9b5833SJayanth Othayoth namespace pels
11*da9b5833SJayanth Othayoth {
12*da9b5833SJayanth Othayoth namespace phal
13*da9b5833SJayanth Othayoth {
14*da9b5833SJayanth Othayoth 
15*da9b5833SJayanth Othayoth using EntrySeverity =
16*da9b5833SJayanth Othayoth     sdbusplus::xyz::openbmc_project::HardwareIsolation::server::Entry::Type;
17*da9b5833SJayanth Othayoth 
18*da9b5833SJayanth Othayoth /**
19*da9b5833SJayanth Othayoth  * @brief Helper function to create service actions in the PEL
20*da9b5833SJayanth Othayoth  *
21*da9b5833SJayanth Othayoth  * @param[in] jsonCallouts - The array of JSON callouts, or an empty object.
22*da9b5833SJayanth Othayoth  * @param[in] path - The BMC error log object path
23*da9b5833SJayanth Othayoth  * @param[in] dataIface - The DataInterface object
24*da9b5833SJayanth Othayoth  */
25*da9b5833SJayanth Othayoth void createServiceActions(const nlohmann::json& jsonCallouts,
26*da9b5833SJayanth Othayoth                           const std::string& path,
27*da9b5833SJayanth Othayoth                           const DataInterfaceBase& dataIface);
28*da9b5833SJayanth Othayoth } // namespace phal
29*da9b5833SJayanth Othayoth } // namespace pels
30*da9b5833SJayanth Othayoth } // namespace openpower
31