#pragma once /** * @file eqpm_icei.h * @brief eqpm的ICE * @author your name (you@domain.com) * @version 0.1 * @date 2023-12-22 * * Copyright: Baosight Co. Ltd. * DO NOT COPY/USE WITHOUT PERMISSION * */ #include #include #include #include #include #include #include #include #include #include #include #include ///MemCachedClient namespace baosight { /** * @brief Ice接口类实现,其中包含了对不同电文的调用 */ class eqpmICEI : virtual public MessageICE { public: /** * @brief Construct a new Eqp Alg I C E I object */ eqpmICEI(); virtual ~eqpmICEI(); /** * @brief 简单数据调用接口 */ virtual void SendDataShort(::Ice::Int, const ::Ice::ByteSeq &, ::Ice::Int, const Ice::Current &); /** * @brief 复杂数据调用接口 */ virtual void SendDataLong(::Ice::Int, const ::Ice::ByteSeq &, ::Ice::Int, const ::std::string &, const ::std::string &, const ::std::string &, const Ice::Current &); /** * @brief 定时器调用接口 */ virtual void TimeNotify(::Ice::Int, const ::Ice::ByteSeq &, const Ice::Current &); private: std::unique_ptr logger_; ///< 本地logger EqpmAlg eqpm_alg_; ///<设备点检规则计算类 const int hour_point_ = 23; ///<每天定时更新的时间点,hour_point_:00:00F const int minute_point_ = 0; ///<每天定时更新的时间点,hour_point_:00:00F time_t timep_; std::tm *now_tm_p_; EqpStatus eqp_status_; MemCachedClient m_memclient; ///< MemCachedClient string Jkey = "unit_status"; string Jvalue = ""; }; } // namespace baosight