42 lines
1.1 KiB
C++
42 lines
1.1 KiB
C++
#pragma once
|
|
/**
|
|
* @file meter_bound.h
|
|
* @brief 太原硅钢 上下限报警
|
|
* @author your name (you@domain.com)
|
|
* @version 0.1
|
|
* @date 2023-12-22
|
|
*
|
|
* Copyright: Baosight Co. Ltd.
|
|
* DO NOT COPY/USE WITHOUT PERMISSION
|
|
*
|
|
*/
|
|
#include <eqpalg/algs/exp.h>
|
|
#include <eqpalg/gb_item_memory.h>
|
|
#include <glob/SingletonTemplate.h>
|
|
#include <map>
|
|
class MeterBound : public Exp {
|
|
public:
|
|
MeterBound(const string& name, const mix_cc::json& rule_json,
|
|
const string& ruleId, size_t dims);
|
|
~MeterBound();
|
|
|
|
virtual int init() override;
|
|
|
|
virtual AlarmInfo mon_proc() override;
|
|
|
|
virtual mix_cc::json exec_cron() override;
|
|
|
|
virtual AlarmInfo cron_proc() override;
|
|
virtual void reset_dev_data() override; ///<更新up down
|
|
protected:
|
|
double error_up_; ///<报警上限
|
|
double error_down_; ///<报警下限
|
|
double value_; ///<监控变量
|
|
MemCachedClient m_memclient;
|
|
|
|
private:
|
|
string Jvalue_ = "1"; ///已清除
|
|
string Jkey_ =
|
|
string(CMemVar::Const()->UnitNo) + "_" + "up_down_flag"; ///<更细最大最小
|
|
int reload_config();
|
|
}; |