| | |
| | | public: |
| | | FaceDBCompareServer(); |
| | | |
| | | /** |
| | | * 本地库构造 |
| | | */ |
| | | FaceDBCompareServer(SqliteFaceEncap *); |
| | | |
| | | /*** |
| | | * 同步库构造 |
| | | */ |
| | | FaceDBCompareServer(ErlangTool::ErlangDbTool *); |
| | | |
| | | ~FaceDBCompareServer(); |
| | | |
| | | virtual bool compare(std::thread::id key, AlarmData *alarmData, int topN); |
| | | |
| | | /*** |
| | | * @deprecated |
| | | * @param key |
| | | * @param alarmData |
| | | * @return |
| | | */ |
| | | bool compare(std::thread::id key, AlarmData *alarmData); |
| | | |
| | | FaceResults getTopResult(std::thread::id key); |
| | | |
| | | private: |
| | | /** |
| | | * 加载特征 |
| | | * @param str_config |
| | | */ |
| | | virtual void loadDBData(std::string str_config); |
| | | |
| | | protected: |
| | |
| | | std::string m_tableName; |
| | | |
| | | int fea_size; |
| | | // 保护父类的dataMap |
| | | RWLock m_rwLock; |
| | | std::mutex topResultMtx; |
| | | std::map<std::thread::id, FaceResults> topResult; |
| | | |
| | | // 保护m_dbRWLocks |
| | | RWLock m_dbRWLocks_Lock; |
| | | // 保护 topResult |
| | | std::map<std::thread::id, RWLock> m_dbRWLocks; |
| | | |
| | | ErlangTool::ErlangDbTool *m_erlangDbTool; |
| | |
| | | |
| | | static bool getRet(std::string startTime, std::string endTime) { |
| | | auto crrentTime = AppUtil::getTimeSecString(); |
| | | |
| | | if (crrentTime.compare(startTime) > 0 && (crrentTime.compare(endTime) < 0 || endTime == "0000-00-00 00:00:00")) { |
| | | // 根据当前时间是否在设置的时间内或永久生效 |
| | | if (crrentTime.compare(startTime) > 0 && (crrentTime.compare(endTime) < 0 |
| | | || endTime == "0000-00-00 00:00:00")) { |
| | | return true; |
| | | } |
| | | return false; |