xref: /openbmc/bmcweb/redfish-core/include/generated/enums/zone.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 zone
7 {
8 // clang-format off
9 
10 enum class ExternalAccessibility{
11     Invalid,
12     GloballyAccessible,
13     NonZonedAccessible,
14     ZoneOnly,
15     NoInternalRouting,
16 };
17 
18 enum class ZoneType{
19     Invalid,
20     Default,
21     ZoneOfEndpoints,
22     ZoneOfZones,
23     ZoneOfResourceBlocks,
24 };
25 
26 NLOHMANN_JSON_SERIALIZE_ENUM(ExternalAccessibility, {
27     {ExternalAccessibility::Invalid, "Invalid"},
28     {ExternalAccessibility::GloballyAccessible, "GloballyAccessible"},
29     {ExternalAccessibility::NonZonedAccessible, "NonZonedAccessible"},
30     {ExternalAccessibility::ZoneOnly, "ZoneOnly"},
31     {ExternalAccessibility::NoInternalRouting, "NoInternalRouting"},
32 });
33 
34 NLOHMANN_JSON_SERIALIZE_ENUM(ZoneType, {
35     {ZoneType::Invalid, "Invalid"},
36     {ZoneType::Default, "Default"},
37     {ZoneType::ZoneOfEndpoints, "ZoneOfEndpoints"},
38     {ZoneType::ZoneOfZones, "ZoneOfZones"},
39     {ZoneType::ZoneOfResourceBlocks, "ZoneOfResourceBlocks"},
40 });
41 
42 }
43 // clang-format on
44