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