xref: /openbmc/bmcweb/features/redfish/include/generated/enums/physical_context.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
30ec8b83dSEd Tanous #pragma once
40ec8b83dSEd Tanous #include <nlohmann/json.hpp>
50ec8b83dSEd Tanous 
60ec8b83dSEd Tanous namespace physical_context
70ec8b83dSEd Tanous {
80ec8b83dSEd Tanous // clang-format off
90ec8b83dSEd Tanous 
100ec8b83dSEd Tanous enum class PhysicalContext{
110ec8b83dSEd Tanous     Invalid,
120ec8b83dSEd Tanous     Room,
130ec8b83dSEd Tanous     Intake,
140ec8b83dSEd Tanous     Exhaust,
150ec8b83dSEd Tanous     LiquidInlet,
160ec8b83dSEd Tanous     LiquidOutlet,
170ec8b83dSEd Tanous     Front,
180ec8b83dSEd Tanous     Back,
190ec8b83dSEd Tanous     Upper,
200ec8b83dSEd Tanous     Lower,
210ec8b83dSEd Tanous     CPU,
220ec8b83dSEd Tanous     CPUSubsystem,
230ec8b83dSEd Tanous     GPU,
240ec8b83dSEd Tanous     GPUSubsystem,
250ec8b83dSEd Tanous     FPGA,
260ec8b83dSEd Tanous     Accelerator,
270ec8b83dSEd Tanous     ASIC,
280ec8b83dSEd Tanous     Backplane,
290ec8b83dSEd Tanous     SystemBoard,
300ec8b83dSEd Tanous     PowerSupply,
310ec8b83dSEd Tanous     PowerSubsystem,
320ec8b83dSEd Tanous     VoltageRegulator,
330ec8b83dSEd Tanous     Rectifier,
340ec8b83dSEd Tanous     StorageDevice,
35dd5c81e9SGunnar Mills     StorageSubsystem,
360ec8b83dSEd Tanous     NetworkingDevice,
37dd5c81e9SGunnar Mills     ExpansionSubsystem,
380ec8b83dSEd Tanous     ComputeBay,
390ec8b83dSEd Tanous     StorageBay,
400ec8b83dSEd Tanous     NetworkBay,
410ec8b83dSEd Tanous     ExpansionBay,
420ec8b83dSEd Tanous     PowerSupplyBay,
430ec8b83dSEd Tanous     Memory,
440ec8b83dSEd Tanous     MemorySubsystem,
450ec8b83dSEd Tanous     Chassis,
460ec8b83dSEd Tanous     Fan,
470ec8b83dSEd Tanous     CoolingSubsystem,
480ec8b83dSEd Tanous     Motor,
490ec8b83dSEd Tanous     Transformer,
500ec8b83dSEd Tanous     ACUtilityInput,
510ec8b83dSEd Tanous     ACStaticBypassInput,
520ec8b83dSEd Tanous     ACMaintenanceBypassInput,
530ec8b83dSEd Tanous     DCBus,
540ec8b83dSEd Tanous     ACOutput,
550ec8b83dSEd Tanous     ACInput,
56dd5c81e9SGunnar Mills     PowerOutlet,
570ec8b83dSEd Tanous     TrustedModule,
580ec8b83dSEd Tanous     Board,
590ec8b83dSEd Tanous     Transceiver,
600ec8b83dSEd Tanous     Battery,
610ec8b83dSEd Tanous     Pump,
6228cfceb2SGunnar Mills     Filter,
6328cfceb2SGunnar Mills     Reservoir,
6428cfceb2SGunnar Mills     Switch,
6528cfceb2SGunnar Mills     Manager,
660ec8b83dSEd Tanous };
670ec8b83dSEd Tanous 
680ec8b83dSEd Tanous enum class PhysicalSubContext{
690ec8b83dSEd Tanous     Invalid,
700ec8b83dSEd Tanous     Input,
710ec8b83dSEd Tanous     Output,
720ec8b83dSEd Tanous };
730ec8b83dSEd Tanous 
740ec8b83dSEd Tanous enum class LogicalContext{
750ec8b83dSEd Tanous     Invalid,
760ec8b83dSEd Tanous     Capacity,
770ec8b83dSEd Tanous     Environment,
780ec8b83dSEd Tanous     Network,
790ec8b83dSEd Tanous     Performance,
800ec8b83dSEd Tanous     Security,
810ec8b83dSEd Tanous     Storage,
820ec8b83dSEd Tanous };
830ec8b83dSEd Tanous 
840ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(PhysicalContext, {
850ec8b83dSEd Tanous     {PhysicalContext::Invalid, "Invalid"},
860ec8b83dSEd Tanous     {PhysicalContext::Room, "Room"},
870ec8b83dSEd Tanous     {PhysicalContext::Intake, "Intake"},
880ec8b83dSEd Tanous     {PhysicalContext::Exhaust, "Exhaust"},
890ec8b83dSEd Tanous     {PhysicalContext::LiquidInlet, "LiquidInlet"},
900ec8b83dSEd Tanous     {PhysicalContext::LiquidOutlet, "LiquidOutlet"},
910ec8b83dSEd Tanous     {PhysicalContext::Front, "Front"},
920ec8b83dSEd Tanous     {PhysicalContext::Back, "Back"},
930ec8b83dSEd Tanous     {PhysicalContext::Upper, "Upper"},
940ec8b83dSEd Tanous     {PhysicalContext::Lower, "Lower"},
950ec8b83dSEd Tanous     {PhysicalContext::CPU, "CPU"},
960ec8b83dSEd Tanous     {PhysicalContext::CPUSubsystem, "CPUSubsystem"},
970ec8b83dSEd Tanous     {PhysicalContext::GPU, "GPU"},
980ec8b83dSEd Tanous     {PhysicalContext::GPUSubsystem, "GPUSubsystem"},
990ec8b83dSEd Tanous     {PhysicalContext::FPGA, "FPGA"},
1000ec8b83dSEd Tanous     {PhysicalContext::Accelerator, "Accelerator"},
1010ec8b83dSEd Tanous     {PhysicalContext::ASIC, "ASIC"},
1020ec8b83dSEd Tanous     {PhysicalContext::Backplane, "Backplane"},
1030ec8b83dSEd Tanous     {PhysicalContext::SystemBoard, "SystemBoard"},
1040ec8b83dSEd Tanous     {PhysicalContext::PowerSupply, "PowerSupply"},
1050ec8b83dSEd Tanous     {PhysicalContext::PowerSubsystem, "PowerSubsystem"},
1060ec8b83dSEd Tanous     {PhysicalContext::VoltageRegulator, "VoltageRegulator"},
1070ec8b83dSEd Tanous     {PhysicalContext::Rectifier, "Rectifier"},
1080ec8b83dSEd Tanous     {PhysicalContext::StorageDevice, "StorageDevice"},
109dd5c81e9SGunnar Mills     {PhysicalContext::StorageSubsystem, "StorageSubsystem"},
1100ec8b83dSEd Tanous     {PhysicalContext::NetworkingDevice, "NetworkingDevice"},
111dd5c81e9SGunnar Mills     {PhysicalContext::ExpansionSubsystem, "ExpansionSubsystem"},
1120ec8b83dSEd Tanous     {PhysicalContext::ComputeBay, "ComputeBay"},
1130ec8b83dSEd Tanous     {PhysicalContext::StorageBay, "StorageBay"},
1140ec8b83dSEd Tanous     {PhysicalContext::NetworkBay, "NetworkBay"},
1150ec8b83dSEd Tanous     {PhysicalContext::ExpansionBay, "ExpansionBay"},
1160ec8b83dSEd Tanous     {PhysicalContext::PowerSupplyBay, "PowerSupplyBay"},
1170ec8b83dSEd Tanous     {PhysicalContext::Memory, "Memory"},
1180ec8b83dSEd Tanous     {PhysicalContext::MemorySubsystem, "MemorySubsystem"},
1190ec8b83dSEd Tanous     {PhysicalContext::Chassis, "Chassis"},
1200ec8b83dSEd Tanous     {PhysicalContext::Fan, "Fan"},
1210ec8b83dSEd Tanous     {PhysicalContext::CoolingSubsystem, "CoolingSubsystem"},
1220ec8b83dSEd Tanous     {PhysicalContext::Motor, "Motor"},
1230ec8b83dSEd Tanous     {PhysicalContext::Transformer, "Transformer"},
1240ec8b83dSEd Tanous     {PhysicalContext::ACUtilityInput, "ACUtilityInput"},
1250ec8b83dSEd Tanous     {PhysicalContext::ACStaticBypassInput, "ACStaticBypassInput"},
1260ec8b83dSEd Tanous     {PhysicalContext::ACMaintenanceBypassInput, "ACMaintenanceBypassInput"},
1270ec8b83dSEd Tanous     {PhysicalContext::DCBus, "DCBus"},
1280ec8b83dSEd Tanous     {PhysicalContext::ACOutput, "ACOutput"},
1290ec8b83dSEd Tanous     {PhysicalContext::ACInput, "ACInput"},
130dd5c81e9SGunnar Mills     {PhysicalContext::PowerOutlet, "PowerOutlet"},
1310ec8b83dSEd Tanous     {PhysicalContext::TrustedModule, "TrustedModule"},
1320ec8b83dSEd Tanous     {PhysicalContext::Board, "Board"},
1330ec8b83dSEd Tanous     {PhysicalContext::Transceiver, "Transceiver"},
1340ec8b83dSEd Tanous     {PhysicalContext::Battery, "Battery"},
1350ec8b83dSEd Tanous     {PhysicalContext::Pump, "Pump"},
13628cfceb2SGunnar Mills     {PhysicalContext::Filter, "Filter"},
13728cfceb2SGunnar Mills     {PhysicalContext::Reservoir, "Reservoir"},
13828cfceb2SGunnar Mills     {PhysicalContext::Switch, "Switch"},
13928cfceb2SGunnar Mills     {PhysicalContext::Manager, "Manager"},
1400ec8b83dSEd Tanous });
1410ec8b83dSEd Tanous 
1420ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(PhysicalSubContext, {
1430ec8b83dSEd Tanous     {PhysicalSubContext::Invalid, "Invalid"},
1440ec8b83dSEd Tanous     {PhysicalSubContext::Input, "Input"},
1450ec8b83dSEd Tanous     {PhysicalSubContext::Output, "Output"},
1460ec8b83dSEd Tanous });
1470ec8b83dSEd Tanous 
1480ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(LogicalContext, {
1490ec8b83dSEd Tanous     {LogicalContext::Invalid, "Invalid"},
1500ec8b83dSEd Tanous     {LogicalContext::Capacity, "Capacity"},
1510ec8b83dSEd Tanous     {LogicalContext::Environment, "Environment"},
1520ec8b83dSEd Tanous     {LogicalContext::Network, "Network"},
1530ec8b83dSEd Tanous     {LogicalContext::Performance, "Performance"},
1540ec8b83dSEd Tanous     {LogicalContext::Security, "Security"},
1550ec8b83dSEd Tanous     {LogicalContext::Storage, "Storage"},
1560ec8b83dSEd Tanous });
1570ec8b83dSEd Tanous 
1580ec8b83dSEd Tanous }
1590ec8b83dSEd Tanous // clang-format on
160