xref: /openbmc/bmcweb/redfish-core/include/generated/enums/manager.hpp (revision d125652e8a30dfeaad88bbfa5b1e04a80610469c)
140e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
240e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
30ec8b83dSEd Tanous #pragma once
40ec8b83dSEd Tanous #include <nlohmann/json.hpp>
50ec8b83dSEd Tanous 
60ec8b83dSEd Tanous namespace manager
70ec8b83dSEd Tanous {
80ec8b83dSEd Tanous // clang-format off
90ec8b83dSEd Tanous 
100ec8b83dSEd Tanous enum class ManagerType{
110ec8b83dSEd Tanous     Invalid,
120ec8b83dSEd Tanous     ManagementController,
130ec8b83dSEd Tanous     EnclosureManager,
140ec8b83dSEd Tanous     BMC,
150ec8b83dSEd Tanous     RackManager,
160ec8b83dSEd Tanous     AuxiliaryController,
170ec8b83dSEd Tanous     Service,
180ec8b83dSEd Tanous };
190ec8b83dSEd Tanous 
200ec8b83dSEd Tanous enum class SerialConnectTypesSupported{
210ec8b83dSEd Tanous     Invalid,
220ec8b83dSEd Tanous     SSH,
230ec8b83dSEd Tanous     Telnet,
240ec8b83dSEd Tanous     IPMI,
250ec8b83dSEd Tanous     Oem,
260ec8b83dSEd Tanous };
270ec8b83dSEd Tanous 
280ec8b83dSEd Tanous enum class CommandConnectTypesSupported{
290ec8b83dSEd Tanous     Invalid,
300ec8b83dSEd Tanous     SSH,
310ec8b83dSEd Tanous     Telnet,
320ec8b83dSEd Tanous     IPMI,
330ec8b83dSEd Tanous     Oem,
340ec8b83dSEd Tanous };
350ec8b83dSEd Tanous 
360ec8b83dSEd Tanous enum class GraphicalConnectTypesSupported{
370ec8b83dSEd Tanous     Invalid,
380ec8b83dSEd Tanous     KVMIP,
390ec8b83dSEd Tanous     Oem,
400ec8b83dSEd Tanous };
410ec8b83dSEd Tanous 
420ec8b83dSEd Tanous enum class ResetToDefaultsType{
430ec8b83dSEd Tanous     Invalid,
440ec8b83dSEd Tanous     ResetAll,
450ec8b83dSEd Tanous     PreserveNetworkAndUsers,
460ec8b83dSEd Tanous     PreserveNetwork,
470ec8b83dSEd Tanous };
480ec8b83dSEd Tanous 
499b46bc0bSMyung Bae enum class DateTimeSource{
509b46bc0bSMyung Bae     Invalid,
519b46bc0bSMyung Bae     RTC,
529b46bc0bSMyung Bae     Firmware,
539b46bc0bSMyung Bae     Host,
549b46bc0bSMyung Bae     NTP,
559b46bc0bSMyung Bae     PTP,
569b46bc0bSMyung Bae };
579b46bc0bSMyung Bae 
58*d125652eSGunnar Mills enum class SecurityModeTypes{
59*d125652eSGunnar Mills     Invalid,
60*d125652eSGunnar Mills     FIPS_140_2,
61*d125652eSGunnar Mills     FIPS_140_3,
62*d125652eSGunnar Mills     CNSA_1_0,
63*d125652eSGunnar Mills     CNSA_2_0,
64*d125652eSGunnar Mills     SuiteB,
65*d125652eSGunnar Mills     OEM,
66*d125652eSGunnar Mills     Default,
67*d125652eSGunnar Mills };
68*d125652eSGunnar Mills 
690ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ManagerType, {
700ec8b83dSEd Tanous     {ManagerType::Invalid, "Invalid"},
710ec8b83dSEd Tanous     {ManagerType::ManagementController, "ManagementController"},
720ec8b83dSEd Tanous     {ManagerType::EnclosureManager, "EnclosureManager"},
730ec8b83dSEd Tanous     {ManagerType::BMC, "BMC"},
740ec8b83dSEd Tanous     {ManagerType::RackManager, "RackManager"},
750ec8b83dSEd Tanous     {ManagerType::AuxiliaryController, "AuxiliaryController"},
760ec8b83dSEd Tanous     {ManagerType::Service, "Service"},
770ec8b83dSEd Tanous });
780ec8b83dSEd Tanous 
790ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(SerialConnectTypesSupported, {
800ec8b83dSEd Tanous     {SerialConnectTypesSupported::Invalid, "Invalid"},
810ec8b83dSEd Tanous     {SerialConnectTypesSupported::SSH, "SSH"},
820ec8b83dSEd Tanous     {SerialConnectTypesSupported::Telnet, "Telnet"},
830ec8b83dSEd Tanous     {SerialConnectTypesSupported::IPMI, "IPMI"},
840ec8b83dSEd Tanous     {SerialConnectTypesSupported::Oem, "Oem"},
850ec8b83dSEd Tanous });
860ec8b83dSEd Tanous 
870ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(CommandConnectTypesSupported, {
880ec8b83dSEd Tanous     {CommandConnectTypesSupported::Invalid, "Invalid"},
890ec8b83dSEd Tanous     {CommandConnectTypesSupported::SSH, "SSH"},
900ec8b83dSEd Tanous     {CommandConnectTypesSupported::Telnet, "Telnet"},
910ec8b83dSEd Tanous     {CommandConnectTypesSupported::IPMI, "IPMI"},
920ec8b83dSEd Tanous     {CommandConnectTypesSupported::Oem, "Oem"},
930ec8b83dSEd Tanous });
940ec8b83dSEd Tanous 
950ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(GraphicalConnectTypesSupported, {
960ec8b83dSEd Tanous     {GraphicalConnectTypesSupported::Invalid, "Invalid"},
970ec8b83dSEd Tanous     {GraphicalConnectTypesSupported::KVMIP, "KVMIP"},
980ec8b83dSEd Tanous     {GraphicalConnectTypesSupported::Oem, "Oem"},
990ec8b83dSEd Tanous });
1000ec8b83dSEd Tanous 
1010ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ResetToDefaultsType, {
1020ec8b83dSEd Tanous     {ResetToDefaultsType::Invalid, "Invalid"},
1030ec8b83dSEd Tanous     {ResetToDefaultsType::ResetAll, "ResetAll"},
1040ec8b83dSEd Tanous     {ResetToDefaultsType::PreserveNetworkAndUsers, "PreserveNetworkAndUsers"},
1050ec8b83dSEd Tanous     {ResetToDefaultsType::PreserveNetwork, "PreserveNetwork"},
1060ec8b83dSEd Tanous });
1070ec8b83dSEd Tanous 
1089b46bc0bSMyung Bae NLOHMANN_JSON_SERIALIZE_ENUM(DateTimeSource, {
1099b46bc0bSMyung Bae     {DateTimeSource::Invalid, "Invalid"},
1109b46bc0bSMyung Bae     {DateTimeSource::RTC, "RTC"},
1119b46bc0bSMyung Bae     {DateTimeSource::Firmware, "Firmware"},
1129b46bc0bSMyung Bae     {DateTimeSource::Host, "Host"},
1139b46bc0bSMyung Bae     {DateTimeSource::NTP, "NTP"},
1149b46bc0bSMyung Bae     {DateTimeSource::PTP, "PTP"},
1159b46bc0bSMyung Bae });
1169b46bc0bSMyung Bae 
117*d125652eSGunnar Mills NLOHMANN_JSON_SERIALIZE_ENUM(SecurityModeTypes, {
118*d125652eSGunnar Mills     {SecurityModeTypes::Invalid, "Invalid"},
119*d125652eSGunnar Mills     {SecurityModeTypes::FIPS_140_2, "FIPS_140_2"},
120*d125652eSGunnar Mills     {SecurityModeTypes::FIPS_140_3, "FIPS_140_3"},
121*d125652eSGunnar Mills     {SecurityModeTypes::CNSA_1_0, "CNSA_1_0"},
122*d125652eSGunnar Mills     {SecurityModeTypes::CNSA_2_0, "CNSA_2_0"},
123*d125652eSGunnar Mills     {SecurityModeTypes::SuiteB, "SuiteB"},
124*d125652eSGunnar Mills     {SecurityModeTypes::OEM, "OEM"},
125*d125652eSGunnar Mills     {SecurityModeTypes::Default, "Default"},
126*d125652eSGunnar Mills });
127*d125652eSGunnar Mills 
1280ec8b83dSEd Tanous }
1290ec8b83dSEd Tanous // clang-format on
130