xref: /openbmc/bmcweb/redfish-core/include/generated/enums/pcie_slots.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1 // SPDX-License-Identifier: Apache-2.0
2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3 #pragma once
4 #include <nlohmann/json.hpp>
5 
6 namespace pcie_slots
7 {
8 // clang-format off
9 
10 enum class SlotTypes{
11     Invalid,
12     FullLength,
13     HalfLength,
14     LowProfile,
15     Mini,
16     M2,
17     OEM,
18     OCP3Small,
19     OCP3Large,
20     U2,
21 };
22 
23 NLOHMANN_JSON_SERIALIZE_ENUM(SlotTypes, {
24     {SlotTypes::Invalid, "Invalid"},
25     {SlotTypes::FullLength, "FullLength"},
26     {SlotTypes::HalfLength, "HalfLength"},
27     {SlotTypes::LowProfile, "LowProfile"},
28     {SlotTypes::Mini, "Mini"},
29     {SlotTypes::M2, "M2"},
30     {SlotTypes::OEM, "OEM"},
31     {SlotTypes::OCP3Small, "OCP3Small"},
32     {SlotTypes::OCP3Large, "OCP3Large"},
33     {SlotTypes::U2, "U2"},
34 });
35 
36 }
37 // clang-format on
38