#pragma once #include #include #include #include #include #include #include #include #include #include #include "Util/logger.h" #include "Util/NoticeCenter.h" #include "Util/SqlPool.h" #include "Network/TcpClient.h" #include "Poller/Timer.h" // opencv #include #include #include #include #include #include "Util/logger.h" #include #include "recorder.h" using namespace toolkit; using namespace std; namespace MIVA { class Cleaner { public: using Ptr = std::shared_ptr; int ClearType = 1; // 清理类型 0 - 不清除记录 // 1 - 超过设定阈值就删除第一个,保持不超过阈值 // 2 - 超过设定阈值,直接删除全部记录 // 3 - 设定时间,如只保留前多少小时的数据 int recordMax = 100; int validTime = 1; // 有效时间 时间单位 天 public: Cleaner(); ~Cleaner(); /** * @description: 单例 * @param {*} * @return {*} */ static std::shared_ptr CreateNew(); /** * @description: 清除历史记录 * @param {*} * @return {*} */ int32_t ClearHistory(); protected: int rmDir(std::string file_name); }; } // namespace MIVA