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