47 lines
1.5 KiB
C
47 lines
1.5 KiB
C
|
|
#pragma once
|
||
|
|
/**
|
||
|
|
* @file eqpalg/build_algorithm.h
|
||
|
|
* @brief 构建算法实例
|
||
|
|
* @author Cat (null.null.null@qq.com)
|
||
|
|
* @version 0.1
|
||
|
|
* @date 2021-07-08
|
||
|
|
*
|
||
|
|
* Company: Baosight Co. Ltd.
|
||
|
|
* DO NOT COPY/USE WITHOUT PERMISSION
|
||
|
|
*
|
||
|
|
*/
|
||
|
|
#include <eqpalg/alg_base.h>
|
||
|
|
#include <json/json.h>
|
||
|
|
#include <memory>
|
||
|
|
#include <string>
|
||
|
|
#include <utility>
|
||
|
|
/**
|
||
|
|
* @brief 构建算法实例
|
||
|
|
* 算法号 算法名
|
||
|
|
* 1 实时逻辑判断
|
||
|
|
* 2 监控变量-上下限 含自学习
|
||
|
|
* 3 动作反馈
|
||
|
|
* 4 动作反馈-上下限 含自学习
|
||
|
|
* 5 监控变量-上下限-持续 含自学习
|
||
|
|
* 6 运行时间累计
|
||
|
|
* 7 出现次数累计
|
||
|
|
* 8 斜率监控
|
||
|
|
* 9 离群检测
|
||
|
|
* 10 故障代码1
|
||
|
|
* 11 故障代码2
|
||
|
|
* 12 多项式拟合
|
||
|
|
* 13 线性相关性
|
||
|
|
* @param algId 算法模板id
|
||
|
|
* @param ruleId 算法实例id
|
||
|
|
* @param name 算法实例名称
|
||
|
|
* @param rule_json 算法参数
|
||
|
|
* @param padding_low 向下偏移
|
||
|
|
* @param padding_up 向上偏移
|
||
|
|
* @return std::unique_ptr<AlgBase>
|
||
|
|
*/
|
||
|
|
std::unique_ptr<AlgBase> build_algorithm(int algId, const string& ruleId,
|
||
|
|
const string& name,
|
||
|
|
const mix_cc::json& rule_json,
|
||
|
|
const double padding_low,
|
||
|
|
const double padding_up);
|