#pragma once // add mix_cc ihdb module to deal with ihyperDB #include "mix_cc/ihyper_db.h" #include // change done #include #include #include #include #include class AlgExpFFT : virtual public AlgExp { public: AlgExpFFT(const string &name, const Json::Value &rulejson, const string &ruleId); virtual ~AlgExpFFT(); public: virtual int init() override; virtual Json::Value exec_mon(); private: int mon_proc(string &outjson, HD3Record *hdRec); // int GetHDTrend(const string &tag); private: MathExpression *exp_act_; MathExpression *exp_feedback_; MathExpression *mp_exp_freq; int max_sample_count_; // double full_tag_level_; int level_count_; // string m_sampletag_refer; string freq_exp_str_; string m_sampletag_data; std::unique_ptr fft_stat_; };