summaryrefslogtreecommitdiff
path: root/redfish-core/include/generated/enums/cable.hpp
blob: 594465e9531f5e9924c1050cab9bb357f1af640f (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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright OpenBMC Authors
#pragma once
#include <nlohmann/json.hpp>

namespace cable
{
// clang-format off

enum class CableClass{
    Invalid,
    Power,
    Network,
    Storage,
    Fan,
    PCIe,
    USB,
    Video,
    Fabric,
    Serial,
    General,
};

enum class ConnectorType{
    Invalid,
    ACPower,
    DB9,
    DCPower,
    DisplayPort,
    HDMI,
    ICI,
    IPASS,
    PCIe,
    Proprietary,
    RJ45,
    SATA,
    SCSI,
    SlimSAS,
    SFP,
    SFPPlus,
    USBA,
    USBC,
    QSFP,
    CDFP,
    OSFP,
};

enum class CableStatus{
    Invalid,
    Normal,
    Degraded,
    Failed,
    Testing,
    Disabled,
    SetByService,
};

NLOHMANN_JSON_SERIALIZE_ENUM(CableClass, {
    {CableClass::Invalid, "Invalid"},
    {CableClass::Power, "Power"},
    {CableClass::Network, "Network"},
    {CableClass::Storage, "Storage"},
    {CableClass::Fan, "Fan"},
    {CableClass::PCIe, "PCIe"},
    {CableClass::USB, "USB"},
    {CableClass::Video, "Video"},
    {CableClass::Fabric, "Fabric"},
    {CableClass::Serial, "Serial"},
    {CableClass::General, "General"},
});

NLOHMANN_JSON_SERIALIZE_ENUM(ConnectorType, {
    {ConnectorType::Invalid, "Invalid"},
    {ConnectorType::ACPower, "ACPower"},
    {ConnectorType::DB9, "DB9"},
    {ConnectorType::DCPower, "DCPower"},
    {ConnectorType::DisplayPort, "DisplayPort"},
    {ConnectorType::HDMI, "HDMI"},
    {ConnectorType::ICI, "ICI"},
    {ConnectorType::IPASS, "IPASS"},
    {ConnectorType::PCIe, "PCIe"},
    {ConnectorType::Proprietary, "Proprietary"},
    {ConnectorType::RJ45, "RJ45"},
    {ConnectorType::SATA, "SATA"},
    {ConnectorType::SCSI, "SCSI"},
    {ConnectorType::SlimSAS, "SlimSAS"},
    {ConnectorType::SFP, "SFP"},
    {ConnectorType::SFPPlus, "SFPPlus"},
    {ConnectorType::USBA, "USBA"},
    {ConnectorType::USBC, "USBC"},
    {ConnectorType::QSFP, "QSFP"},
    {ConnectorType::CDFP, "CDFP"},
    {ConnectorType::OSFP, "OSFP"},
});

NLOHMANN_JSON_SERIALIZE_ENUM(CableStatus, {
    {CableStatus::Invalid, "Invalid"},
    {CableStatus::Normal, "Normal"},
    {CableStatus::Degraded, "Degraded"},
    {CableStatus::Failed, "Failed"},
    {CableStatus::Testing, "Testing"},
    {CableStatus::Disabled, "Disabled"},
    {CableStatus::SetByService, "SetByService"},
});

// clang-format on
} // namespace cable