eis/eqpalg/utility/build_alarm_info.h

67 lines
2.0 KiB
C
Raw Normal View History

/**
* @file eqpalg/utility/build_alarm_info.h
* @brief
* @author Cat (null.null.null@qq.com)
* @version 0.1
* @date 2021-09-17
*
* Copyright: Baosight Co. Ltd.
* DO NOT COPY/USE WITHOUT PERMISSION
*
*/
#pragma once
#include <eqpalg/define/public.h>
#include <string>
#include "json/json.h"
#include "mix_cc/type/range.h"
namespace utility {
using std::string;
/**
* @brief
* @param alarm_level
* @param ruleId ID
* @param name
* @param group
* @param alarm_content
* @param time_range
* @return AlarmInfo
*/
AlarmInfo build_alarm_info(const string& alarm_level, const string& ruleId,
const string& name, const string& group,
const std::string& alarm_content,
const mix_cc::time_range_t& time_range);
/**
* @brief
* @param alarm_level
* @param ruleId ID
* @param name
* @param group
* @param alarm_content
* @param time_range
* @param value
* @param desire_range
* @return AlarmInfo
*/
AlarmInfo build_alarm_info(
const string& alarm_level, const string& ruleId, const string& name,
const string& group, const std::string& alarm_content,
const std::vector<double>& value,
const std::vector<mix_cc::float_range_t>& desire_range,
const mix_cc::time_range_t& time_range);
/**
* @brief
* @param limit_down My Param doc
* @param limit_up My Param doc
* @param value My Param doc
* @return string
* "WARN"-- 30%
* "ERROR"--- 30%
*/
string get_msg_level(double limit_down, double limit_up, double value);
}