eis/eqpalg/.do_not_use/otheralg/meter_static.h

37 lines
1.0 KiB
C
Raw Permalink Normal View History

#pragma once
/**
* @file meter_static.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/table_static.h>
#include <array>
class MeterStatic : public TableStatic {
public:
MeterStatic(const string name, const mix_cc::json& rule_json,
const string ruleId);
~MeterStatic() override;
virtual int init() override;
virtual AlarmInfo exec_mon() override;
virtual int mon_proc() override;
private:
MeterData meter_data_; ///<仪表数据项
int up_down_flag_; ///<是否有上下限- 0-没有 1-有
int latest_alarm_time_flag_; ///<是否有最新报警时间 0-没有 1-有
string select_latest_alarm_by_ruleid(string ruleid);
std::array<double, 2> select_up_down_by_ruleid(string ruleid);
protected:
virtual int get_ruleid_by_int(int num) override;
virtual void get_ruleid() override;
bool get_clear_flag() override;
};