summaryrefslogtreecommitdiff
path: root/redfish-core/include/generated/enums/power_subsystem.hpp
blob: 703177311ef1b42e5cb79e7202c9d70457886306 (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
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright OpenBMC Authors
#pragma once
#include <nlohmann/json.hpp>

namespace power_subsystem
{
// clang-format off

enum class ThresholdLevel{
    Invalid,
    Disabled,
    UpperCaution,
    UpperCritical,
};

enum class PowerBrakeReason{
    Invalid,
    LoadPercent,
    Temperature,
    LossOfComms,
    ExternalSignal,
};

NLOHMANN_JSON_SERIALIZE_ENUM(ThresholdLevel, {
    {ThresholdLevel::Invalid, "Invalid"},
    {ThresholdLevel::Disabled, "Disabled"},
    {ThresholdLevel::UpperCaution, "UpperCaution"},
    {ThresholdLevel::UpperCritical, "UpperCritical"},
});

NLOHMANN_JSON_SERIALIZE_ENUM(PowerBrakeReason, {
    {PowerBrakeReason::Invalid, "Invalid"},
    {PowerBrakeReason::LoadPercent, "LoadPercent"},
    {PowerBrakeReason::Temperature, "Temperature"},
    {PowerBrakeReason::LossOfComms, "LossOfComms"},
    {PowerBrakeReason::ExternalSignal, "ExternalSignal"},
});

// clang-format on
} // namespace power_subsystem