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