1 // SPDX-License-Identifier: Apache-2.0 2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3 #pragma once 4 #include <nlohmann/json.hpp> 5 6 namespace virtual_pci2_pci_bridge 7 { 8 // clang-format off 9 10 enum class vPPBStatusTypes{ 11 Invalid, 12 Unbound, 13 Busy, 14 BoundPhysicalPort, 15 BoundLD, 16 BoundPID, 17 }; 18 19 NLOHMANN_JSON_SERIALIZE_ENUM(vPPBStatusTypes, { 20 {vPPBStatusTypes::Invalid, "Invalid"}, 21 {vPPBStatusTypes::Unbound, "Unbound"}, 22 {vPPBStatusTypes::Busy, "Busy"}, 23 {vPPBStatusTypes::BoundPhysicalPort, "BoundPhysicalPort"}, 24 {vPPBStatusTypes::BoundLD, "BoundLD"}, 25 {vPPBStatusTypes::BoundPID, "BoundPID"}, 26 }); 27 28 } 29 // clang-format on 30