summaryrefslogtreecommitdiff
path: root/redfish-core/include/generated/enums/outlet.hpp
blob: 15fa830121b3d99fc6326107becbfbf89fa61861 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright OpenBMC Authors
#pragma once
#include <nlohmann/json.hpp>

namespace outlet
{
// clang-format off

enum class PowerState{
    Invalid,
    On,
    Off,
    PowerCycle,
};

enum class ReceptacleType{
    Invalid,
    NEMA_5_15R,
    NEMA_5_20R,
    NEMA_L5_20R,
    NEMA_L5_30R,
    NEMA_L6_20R,
    NEMA_L6_30R,
    IEC_60320_C13,
    IEC_60320_C15,
    IEC_60320_C19,
    IEC_60320_C21,
    CEE_7_Type_E,
    CEE_7_Type_F,
    SEV_1011_TYPE_12,
    SEV_1011_TYPE_23,
    BS_1363_Type_G,
    BusConnection,
    Combination,
};

enum class VoltageType{
    Invalid,
    AC,
    DC,
};

NLOHMANN_JSON_SERIALIZE_ENUM(PowerState, {
    {PowerState::Invalid, "Invalid"},
    {PowerState::On, "On"},
    {PowerState::Off, "Off"},
    {PowerState::PowerCycle, "PowerCycle"},
});

NLOHMANN_JSON_SERIALIZE_ENUM(ReceptacleType, {
    {ReceptacleType::Invalid, "Invalid"},
    {ReceptacleType::NEMA_5_15R, "NEMA_5_15R"},
    {ReceptacleType::NEMA_5_20R, "NEMA_5_20R"},
    {ReceptacleType::NEMA_L5_20R, "NEMA_L5_20R"},
    {ReceptacleType::NEMA_L5_30R, "NEMA_L5_30R"},
    {ReceptacleType::NEMA_L6_20R, "NEMA_L6_20R"},
    {ReceptacleType::NEMA_L6_30R, "NEMA_L6_30R"},
    {ReceptacleType::IEC_60320_C13, "IEC_60320_C13"},
    {ReceptacleType::IEC_60320_C15, "IEC_60320_C15"},
    {ReceptacleType::IEC_60320_C19, "IEC_60320_C19"},
    {ReceptacleType::IEC_60320_C21, "IEC_60320_C21"},
    {ReceptacleType::CEE_7_Type_E, "CEE_7_Type_E"},
    {ReceptacleType::CEE_7_Type_F, "CEE_7_Type_F"},
    {ReceptacleType::SEV_1011_TYPE_12, "SEV_1011_TYPE_12"},
    {ReceptacleType::SEV_1011_TYPE_23, "SEV_1011_TYPE_23"},
    {ReceptacleType::BS_1363_Type_G, "BS_1363_Type_G"},
    {ReceptacleType::BusConnection, "BusConnection"},
    {ReceptacleType::Combination, "Combination"},
});

NLOHMANN_JSON_SERIALIZE_ENUM(VoltageType, {
    {VoltageType::Invalid, "Invalid"},
    {VoltageType::AC, "AC"},
    {VoltageType::DC, "DC"},
});

// clang-format on
} // namespace outlet