xref: /openbmc/bmcweb/features/redfish/include/generated/enums/triggers.hpp (revision f263e09c81b798bcf123df8fb144499389e9cbd1)
10ec8b83dSEd Tanous #pragma once
20ec8b83dSEd Tanous #include <nlohmann/json.hpp>
30ec8b83dSEd Tanous 
40ec8b83dSEd Tanous namespace triggers
50ec8b83dSEd Tanous {
60ec8b83dSEd Tanous // clang-format off
70ec8b83dSEd Tanous 
80ec8b83dSEd Tanous enum class MetricTypeEnum{
90ec8b83dSEd Tanous     Invalid,
100ec8b83dSEd Tanous     Numeric,
110ec8b83dSEd Tanous     Discrete,
120ec8b83dSEd Tanous };
130ec8b83dSEd Tanous 
140ec8b83dSEd Tanous enum class TriggerActionEnum{
150ec8b83dSEd Tanous     Invalid,
160ec8b83dSEd Tanous     LogToLogService,
170ec8b83dSEd Tanous     RedfishEvent,
180ec8b83dSEd Tanous     RedfishMetricReport,
190ec8b83dSEd Tanous };
200ec8b83dSEd Tanous 
210ec8b83dSEd Tanous enum class DiscreteTriggerConditionEnum{
220ec8b83dSEd Tanous     Invalid,
230ec8b83dSEd Tanous     Specified,
240ec8b83dSEd Tanous     Changed,
250ec8b83dSEd Tanous };
260ec8b83dSEd Tanous 
270ec8b83dSEd Tanous enum class ThresholdActivation{
280ec8b83dSEd Tanous     Invalid,
290ec8b83dSEd Tanous     Increasing,
300ec8b83dSEd Tanous     Decreasing,
310ec8b83dSEd Tanous     Either,
32*f263e09cSEd Tanous     Disabled,
330ec8b83dSEd Tanous };
340ec8b83dSEd Tanous 
350ec8b83dSEd Tanous enum class DirectionOfCrossingEnum{
360ec8b83dSEd Tanous     Invalid,
370ec8b83dSEd Tanous     Increasing,
380ec8b83dSEd Tanous     Decreasing,
390ec8b83dSEd Tanous };
400ec8b83dSEd Tanous 
410ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(MetricTypeEnum, {
420ec8b83dSEd Tanous     {MetricTypeEnum::Invalid, "Invalid"},
430ec8b83dSEd Tanous     {MetricTypeEnum::Numeric, "Numeric"},
440ec8b83dSEd Tanous     {MetricTypeEnum::Discrete, "Discrete"},
450ec8b83dSEd Tanous });
460ec8b83dSEd Tanous 
470ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(TriggerActionEnum, {
480ec8b83dSEd Tanous     {TriggerActionEnum::Invalid, "Invalid"},
490ec8b83dSEd Tanous     {TriggerActionEnum::LogToLogService, "LogToLogService"},
500ec8b83dSEd Tanous     {TriggerActionEnum::RedfishEvent, "RedfishEvent"},
510ec8b83dSEd Tanous     {TriggerActionEnum::RedfishMetricReport, "RedfishMetricReport"},
520ec8b83dSEd Tanous });
530ec8b83dSEd Tanous 
540ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(DiscreteTriggerConditionEnum, {
550ec8b83dSEd Tanous     {DiscreteTriggerConditionEnum::Invalid, "Invalid"},
560ec8b83dSEd Tanous     {DiscreteTriggerConditionEnum::Specified, "Specified"},
570ec8b83dSEd Tanous     {DiscreteTriggerConditionEnum::Changed, "Changed"},
580ec8b83dSEd Tanous });
590ec8b83dSEd Tanous 
600ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ThresholdActivation, {
610ec8b83dSEd Tanous     {ThresholdActivation::Invalid, "Invalid"},
620ec8b83dSEd Tanous     {ThresholdActivation::Increasing, "Increasing"},
630ec8b83dSEd Tanous     {ThresholdActivation::Decreasing, "Decreasing"},
640ec8b83dSEd Tanous     {ThresholdActivation::Either, "Either"},
65*f263e09cSEd Tanous     {ThresholdActivation::Disabled, "Disabled"},
660ec8b83dSEd Tanous });
670ec8b83dSEd Tanous 
680ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(DirectionOfCrossingEnum, {
690ec8b83dSEd Tanous     {DirectionOfCrossingEnum::Invalid, "Invalid"},
700ec8b83dSEd Tanous     {DirectionOfCrossingEnum::Increasing, "Increasing"},
710ec8b83dSEd Tanous     {DirectionOfCrossingEnum::Decreasing, "Decreasing"},
720ec8b83dSEd Tanous });
730ec8b83dSEd Tanous 
740ec8b83dSEd Tanous }
750ec8b83dSEd Tanous // clang-format on
76