1 // SPDX-License-Identifier: Apache-2.0 2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3 #pragma once 4 #include <nlohmann/json.hpp> 5 6 namespace resolution_step 7 { 8 // clang-format off 9 10 enum class ResolutionType{ 11 Invalid, 12 ContactVendor, 13 ReplaceComponent, 14 FirmwareUpdate, 15 Reset, 16 PowerCycle, 17 ResetToDefaults, 18 CollectDiagnosticData, 19 OEM, 20 }; 21 22 NLOHMANN_JSON_SERIALIZE_ENUM(ResolutionType, { 23 {ResolutionType::Invalid, "Invalid"}, 24 {ResolutionType::ContactVendor, "ContactVendor"}, 25 {ResolutionType::ReplaceComponent, "ReplaceComponent"}, 26 {ResolutionType::FirmwareUpdate, "FirmwareUpdate"}, 27 {ResolutionType::Reset, "Reset"}, 28 {ResolutionType::PowerCycle, "PowerCycle"}, 29 {ResolutionType::ResetToDefaults, "ResetToDefaults"}, 30 {ResolutionType::CollectDiagnosticData, "CollectDiagnosticData"}, 31 {ResolutionType::OEM, "OEM"}, 32 }); 33 34 } 35 // clang-format on 36