/****************************************************************************************************************** * Action instruction algorithm(study sample data online,compare with sample *data) * * arg[0] action expression * arg[1] feedback expression * arg[2] expression of judgment result * * feedback expression * arg[2] expression of judgment result * * 1.0 2020-12-17 zoufuzhou * 1.1 2021-03-10 change format & add mix_cc ******************************************************************************************************************/ #ifndef _H_ALGORITHM_EXPRESSION_TREND_SAMPLE_H #define _H_ALGORITHM_EXPRESSION_TREND_SAMPLE_H // add 2021-03-10 by Cat // add mix_cc ihdb module to deal with ihyperDB #include "mix_cc/utility/ihyper_db/ihyper_db.h" // change done #include #include #include #include #include class AlgExpTrendSample : virtual public AlgExp { public: AlgExpTrendSample(const string &name, const Json::Value &rulejson, const string &ruleid, IHDBTools *ihdb); virtual ~AlgExpTrendSample(); public: virtual int Reload(); virtual int calculate(string &outjson); private: int calculate_once(string &outjson, HD3Record *hdRec); // int GetHDTrend(const string &tag); private: MathExpression *mp_expact; MathExpression *mp_expfbk; // using sample data to storage data from ihdb std::vector sample_data; // delete // HD3Record m_ihdtrend[SAMPLE_COUNT]; string m_sampletag; mix_cc::IhdCom hd_com; // private: // float m_samples[3]; // float m_stat[3]; // bool m_nosample; // bool m_islearned; // vector mv_stat; // int m_archive; // time_t mt_lastsave; }; #endif