xref: /openbmc/bmcweb/features/redfish/include/generated/enums/connection.hpp (revision 853c0dc5486bbab77b2d1f158152de93847c20d9)
1*853c0dc5SEd Tanous #pragma once
2*853c0dc5SEd Tanous #include <nlohmann/json.hpp>
3*853c0dc5SEd Tanous 
4*853c0dc5SEd Tanous namespace connection
5*853c0dc5SEd Tanous {
6*853c0dc5SEd Tanous // clang-format off
7*853c0dc5SEd Tanous 
8*853c0dc5SEd Tanous enum class ConnectionType{
9*853c0dc5SEd Tanous     Invalid,
10*853c0dc5SEd Tanous     Storage,
11*853c0dc5SEd Tanous     Memory,
12*853c0dc5SEd Tanous };
13*853c0dc5SEd Tanous 
14*853c0dc5SEd Tanous enum class AccessCapability{
15*853c0dc5SEd Tanous     Invalid,
16*853c0dc5SEd Tanous     Read,
17*853c0dc5SEd Tanous     Write,
18*853c0dc5SEd Tanous };
19*853c0dc5SEd Tanous 
20*853c0dc5SEd Tanous enum class AccessState{
21*853c0dc5SEd Tanous     Invalid,
22*853c0dc5SEd Tanous     Optimized,
23*853c0dc5SEd Tanous     NonOptimized,
24*853c0dc5SEd Tanous     Standby,
25*853c0dc5SEd Tanous     Unavailable,
26*853c0dc5SEd Tanous     Transitioning,
27*853c0dc5SEd Tanous };
28*853c0dc5SEd Tanous 
29*853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ConnectionType, {
30*853c0dc5SEd Tanous     {ConnectionType::Invalid, "Invalid"},
31*853c0dc5SEd Tanous     {ConnectionType::Storage, "Storage"},
32*853c0dc5SEd Tanous     {ConnectionType::Memory, "Memory"},
33*853c0dc5SEd Tanous });
34*853c0dc5SEd Tanous 
35*853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AccessCapability, {
36*853c0dc5SEd Tanous     {AccessCapability::Invalid, "Invalid"},
37*853c0dc5SEd Tanous     {AccessCapability::Read, "Read"},
38*853c0dc5SEd Tanous     {AccessCapability::Write, "Write"},
39*853c0dc5SEd Tanous });
40*853c0dc5SEd Tanous 
41*853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AccessState, {
42*853c0dc5SEd Tanous     {AccessState::Invalid, "Invalid"},
43*853c0dc5SEd Tanous     {AccessState::Optimized, "Optimized"},
44*853c0dc5SEd Tanous     {AccessState::NonOptimized, "NonOptimized"},
45*853c0dc5SEd Tanous     {AccessState::Standby, "Standby"},
46*853c0dc5SEd Tanous     {AccessState::Unavailable, "Unavailable"},
47*853c0dc5SEd Tanous     {AccessState::Transitioning, "Transitioning"},
48*853c0dc5SEd Tanous });
49*853c0dc5SEd Tanous 
50*853c0dc5SEd Tanous }
51*853c0dc5SEd Tanous // clang-format on
52