xref: /openbmc/bmcweb/redfish-core/include/generated/enums/connection.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3853c0dc5SEd Tanous #pragma once
4853c0dc5SEd Tanous #include <nlohmann/json.hpp>
5853c0dc5SEd Tanous 
6853c0dc5SEd Tanous namespace connection
7853c0dc5SEd Tanous {
8853c0dc5SEd Tanous // clang-format off
9853c0dc5SEd Tanous 
10853c0dc5SEd Tanous enum class ConnectionType{
11853c0dc5SEd Tanous     Invalid,
12853c0dc5SEd Tanous     Storage,
13853c0dc5SEd Tanous     Memory,
14853c0dc5SEd Tanous };
15853c0dc5SEd Tanous 
16853c0dc5SEd Tanous enum class AccessCapability{
17853c0dc5SEd Tanous     Invalid,
18853c0dc5SEd Tanous     Read,
19853c0dc5SEd Tanous     Write,
20853c0dc5SEd Tanous };
21853c0dc5SEd Tanous 
22853c0dc5SEd Tanous enum class AccessState{
23853c0dc5SEd Tanous     Invalid,
24853c0dc5SEd Tanous     Optimized,
25853c0dc5SEd Tanous     NonOptimized,
26853c0dc5SEd Tanous     Standby,
27853c0dc5SEd Tanous     Unavailable,
28853c0dc5SEd Tanous     Transitioning,
29853c0dc5SEd Tanous };
30853c0dc5SEd Tanous 
31853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ConnectionType, {
32853c0dc5SEd Tanous     {ConnectionType::Invalid, "Invalid"},
33853c0dc5SEd Tanous     {ConnectionType::Storage, "Storage"},
34853c0dc5SEd Tanous     {ConnectionType::Memory, "Memory"},
35853c0dc5SEd Tanous });
36853c0dc5SEd Tanous 
37853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AccessCapability, {
38853c0dc5SEd Tanous     {AccessCapability::Invalid, "Invalid"},
39853c0dc5SEd Tanous     {AccessCapability::Read, "Read"},
40853c0dc5SEd Tanous     {AccessCapability::Write, "Write"},
41853c0dc5SEd Tanous });
42853c0dc5SEd Tanous 
43853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AccessState, {
44853c0dc5SEd Tanous     {AccessState::Invalid, "Invalid"},
45853c0dc5SEd Tanous     {AccessState::Optimized, "Optimized"},
46853c0dc5SEd Tanous     {AccessState::NonOptimized, "NonOptimized"},
47853c0dc5SEd Tanous     {AccessState::Standby, "Standby"},
48853c0dc5SEd Tanous     {AccessState::Unavailable, "Unavailable"},
49853c0dc5SEd Tanous     {AccessState::Transitioning, "Transitioning"},
50853c0dc5SEd Tanous });
51853c0dc5SEd Tanous 
52853c0dc5SEd Tanous }
53853c0dc5SEd Tanous // clang-format on
54