From 51a5443baed67eed39dc26a0f8bff546650ab6d8 Mon Sep 17 00:00:00 2001
From: pans <pansen626@sina.com>
Date: 星期二, 16 四月 2019 17:12:51 +0800
Subject: [PATCH] 添加注释

---
 QiaoJiaSystem/VptServer/VptDetectWrapper.cpp                |   15 +-
 QiaoJiaSystem/DataManagerServer/http_configserver.cpp       |    6 
 QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.h   |   45 +++++++-
 QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.cpp |   57 +++++++----
 QiaoJiaSystem/DataManagerServer/http_configserver.h         |   78 +++++++++++++++
 QiaoJiaSystem/FaceDetectServer/FaceDetectServerI.h          |    8 +
 QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.cpp      |   32 +-----
 QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.h        |   25 ++++
 8 files changed, 196 insertions(+), 70 deletions(-)

diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
index 5840b92..d387046 100644
--- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
+++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
@@ -2140,9 +2140,12 @@
 //        auto resType = erlangDbTool->findAllTypeInfo();
         string json = "[";
         for (auto &item : resDB) {
+            //-------------------maybe delete ?------------------------
             if (item.second.tableName.find("lt_") == 0) {
                 continue;
             }
+            //-------------------maybe delete end----------------------
+
             string subJson = "{ ";
             subJson.append("\"uuid\":\"" + item.second.uuid + "\",");
             subJson.append("\"tableName\":\"" + item.second.tableName + "\",");
@@ -3334,8 +3337,7 @@
         rule.strLine = value["strLine"].asCString();
         rule.strExLine = value["strExLine"].asCString();
 
-        if(!value["strPerimeterObjType"].empty())
-        {
+        if (!value["strPerimeterObjType"].empty()) {
             rule.strPerimeterObjType = value["strPerimeterObjType"].asCString();
         }
         if (rule.strCamId.isEmpty()) {
diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.h b/QiaoJiaSystem/DataManagerServer/http_configserver.h
index 7913649..98399e4 100644
--- a/QiaoJiaSystem/DataManagerServer/http_configserver.h
+++ b/QiaoJiaSystem/DataManagerServer/http_configserver.h
@@ -121,7 +121,7 @@
     std::string createDatabase(std::string ip, unsigned int port, std::string content, PResponse &response);
 
     /**
-     * 鍒犻櫎鏁版嵁鍦板簱
+     * 鍒犻櫎鏁版嵁 搴曞簱
      * @param ip
      * @param port
      * @param content
@@ -130,23 +130,97 @@
      */
     std::string deleteDatabase(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /***
+     * 鏇存柊鏁版嵁 搴曞簱
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string updateDatabase(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /**
+     * 鏌ヨ鎵�鏈夊悓姝ュ簱
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string findAllDatabase(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /**
+     * 鏌ヨ鎵�鏈夋湰鍦板簱
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string findLocalDatabase(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /***
+     * 涓婁紶浜哄憳
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string addPerson(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    //#todo 鎵归噺娣诲姞浜哄憳鍊熷彛
+
+    /***
+     * 鍚戝悓姝ュ簱鎵归噺娣诲姞浜哄憳鍙婃洿鏂颁汉鍛�
+     * feature_addPersonTracking 鍒嗘敮涓洿鏂板姛鑳藉垎绂讳负鏂板�熷彛
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string addPersons(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /***
+     * 鍒ゆ柇鍚屾搴撲腑浜哄憳鏄惁瀛樺湪
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string personIsExists(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /**
+     * 鏇存柊鍚屾搴撲腑鐨勪汉鍛�
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string updatePersonByOldId(std::string ip, unsigned int port, std::string content, PResponse &response);
 
-
+    /**
+     * 鍒犻櫎浜哄憳
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string delPerson(std::string ip, unsigned int port, std::string content, PResponse &response);
 
+    /**
+     * 鍔犺浇鐗瑰緛
+     * @param ip
+     * @param port
+     * @param content
+     * @param response
+     * @return
+     */
     std::string loadFaceFeaData(std::string ip, unsigned int port, std::string content, PResponse &response);
 
 
diff --git a/QiaoJiaSystem/FaceDetectServer/FaceDetectServerI.h b/QiaoJiaSystem/FaceDetectServer/FaceDetectServerI.h
index 09dfe1a..fed2cdb 100644
--- a/QiaoJiaSystem/FaceDetectServer/FaceDetectServerI.h
+++ b/QiaoJiaSystem/FaceDetectServer/FaceDetectServerI.h
@@ -10,6 +10,10 @@
     ~FaceDetectServerI();
     // FaceDetectServer interface
 public:
+    /**
+     * 浜鸿劯妫�娴�
+     * @return
+     */
     virtual FaceDetect::Faces faceDetect(Ice::Int, Ice::Int, const std::string &, const Ice::Current &) override;
 
 private:
@@ -19,6 +23,10 @@
 
     // FaceDetectServer interface
 public:
+    /**
+     * 浜鸿劯浜屾灞炴�ф彁鍙�
+     * @return
+     */
     virtual FaceDetect::ThftResult faceProperty(Ice::Int, Ice::Int, const FaceDetect::FacePos &, const std::string &, const Ice::Current &) override;
 
 private:
diff --git a/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.cpp b/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.cpp
index 1c7ca29..3281d1c 100644
--- a/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.cpp
+++ b/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.cpp
@@ -62,6 +62,7 @@
     DBG("m_dbRWLocks ok");
     m_dbRWLocks_Lock.unlock();
 //    ClockTimer clockTimer("compare ");
+    //淇濇姢 t_compareResults
     RWLock t_rwLock;
 
     m_rwLock.rdlock();
@@ -80,12 +81,15 @@
             FaceResult tface{0, data.uuid, alarmData->tableName, sc, data.faceUrl, data.idcard, ""};
             t_rwLock.wrlock();
             //#todo
+            // 瀵规瘮缁撴灉淇濆瓨
             if (sc < t_compareResults.end()->second.confidence) {
                 t_rwLock.unlock();
                 return;
             }
+            // 淇濆瓨瀵规瘮缁撴灉
             t_compareResults.insert(make_pair(tface.confidence, tface));
             //#todo 10
+            // 鍙繚鐣欐渶楂樼殑n涓姣旂粨鏋�
             if (t_compareResults.size() > topN) {
                 t_compareResults.erase((--t_compareResults.end()), t_compareResults.end());
             }
@@ -123,6 +127,7 @@
     auto &t_topResult = topResult[key];
     DBG("topResult[key] ok");
     t_topResult.clear();
+    // 瀵规瘮缁撴灉杞崲
     for (auto &item : t_compareResults) {
         auto &it = item.second;
         //#todo
@@ -203,16 +208,8 @@
             m_tableName = str_tab.substr(1, str_tab.length() - 2);//.append("_fea");
             DBG("m_tableName is  " << m_tableName);
 
-//            string tet = "./syncDBClient ";
-//            string str_json = writer.write(t_json);
-//            tet.append("\"" + str_json.substr(0, str_json.length() - 1) + "\" ");
-//            INFO(tet);
-//            system(tet.c_str());
             dataMap.clear();
             try {
-                // init
-//                BISTL::BiMapFeaData biMapFeaData(m_tableName);
-//                auto mymap = biMapFeaData.getMap();
 
                 auto mymap = m_erlangDbTool->loadFaceFeaData(m_tableName);
                 DBG(m_tableName << "  db size is  " << mymap.size());
@@ -231,29 +228,10 @@
                     test.enabled = it.enable;
                     test.monLevel = it.monLevel;
                 }
-//                //#todo
-//                for (auto it = mymap->begin(); it != mymap->end(); it++) {
-//                    string str_uuid(it->second.m_id.data());
-//                    string ft(it->second.m_feature.data());
-//                    string imgUrl(it->second.m_imgUrl.data());
-//                    string strIdCard(it->second.m_idcard.data());
-//                    string str2;
-//                    str2 = base64.Decode(ft.data(), ft.length());
-//                    std::vector<unsigned char> t_fea;
-//                    t_fea.resize(str2.size());
-//                    memcpy(t_fea.data(), str2.data(), str2.size());
-//                    auto &test = dataMap[str_uuid];
-//                    test.uuid = str_uuid;
-//                    test.features.push_back(t_fea);
-//                    test.faceUrl = imgUrl;
-//                    test.idcard = strIdCard;
-//                }
             } catch (const std::exception &e) {
                 printf("Exception:%s\n", e.what());
-//                BISTL::shared_memory_object::remove(m_tableName.c_str());
             }
             appPref.setIntData(m_tableName, 1);
-//            BISTL::shared_memory_object::remove(m_tableName.c_str());
         } else {
             //#todo get sqlite3 data
             m_tableName = t_json["tableName"].asCString();
diff --git a/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.h b/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.h
index 0667bbf..6ec4fae 100644
--- a/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.h
+++ b/QiaoJiaSystem/FaceSearchServer/FaceDBCompareServer.h
@@ -21,19 +21,35 @@
 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:
@@ -41,10 +57,14 @@
     std::string m_tableName;
 
     int fea_size;
+    // 淇濇姢鐖剁被鐨刣ataMap
     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;
@@ -54,8 +74,9 @@
 
 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;
diff --git a/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.cpp b/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.cpp
index 30fed97..e37f88a 100644
--- a/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.cpp
+++ b/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.cpp
@@ -123,14 +123,25 @@
 }
 
 //#todo 浼樺寲
+/**
+ *
+ * @param feature 闇�瑕佸姣旂殑鐗瑰緛
+ * @param info_json 闇�瑕佹彃鍏ユ暟鎹簱鐨刯son瀛楁
+ * @param topN 鑾峰彇鍓嶅嚑浣�
+ * @param score 瀵规瘮鐨勯槇鍊�
+ * @return
+ */
 ::FaceSearch::FaceResults
 FaceFeatureSearchServerI::faceSearchTopN(const ::FaceSearch::Data &feature, const ::std::string &info_json,
                                          ::Ice::Int topN, ::Ice::Float score, const ::Ice::Current &) {
     ClockTimer clockTimer("faceSearchTopN  " + to_string(score) + "  :");
     INFO("faceSearchTopN start");
+    // 鑾峰彇褰撳墠绾跨▼id
     thread::id key = std::this_thread::get_id();
     ::FaceSearch::FaceResults results;
     FaceResults t_TableCompareResult;
+
+    // 杩涜瀵规瘮鐨勬暟鎹粨鏋�
     AlarmData featureData;
     featureData.num = topN;
     featureData.feature.resize(feature.size());
@@ -142,14 +153,19 @@
     if (reader.parse(info_json, value)) {
         //#todo
         m_rwLock.rdlock();
+        // 鐗瑰緛杞寲涓篵ase64瀛樺叆鍒癹son涓�
         std::string feature_base64;
         feature_base64 = base64.Encode(feature.data(), feature.size());
         value["FaceFeature"] = feature_base64;
+        //---------------------------
+
         DBG("auto &it : m_faceFCMAP start " << m_faceFCMAP.size());
         //#todo lock
+        // 閬嶅巻涓嶅悓鐨勫簳搴撹繘琛屾瘮瀵�
         for (auto &it : m_faceFCMAP) {
             auto &t_FaceFC = it.second;
             auto t_tableInfo = m_tableType[it.first];
+            // 鑾峰彇搴曞簱鐨勬姤璀︾姸鎬�
             bool ret = getRet(t_tableInfo.startTime, t_tableInfo.endTime);
             if (ret) {
                 string t_alarmRet = t_tableInfo.bwType;
@@ -157,10 +173,12 @@
                 //#todo 闈炲悓姝ュ簱鏄惁闇�瑕佹瘮杈冿紵
 
                 DBG("m_faceFCMAP compare start " << it.first);
+                // 瀵规瘮
                 t_FaceFC->compare(key, &featureData, topN);
                 DBG("m_faceFCMAP compare end " << it.first);
-
+                // 鏍规嵁褰撳墠绾跨▼id鑾峰彇瀵规瘮缁撴灉
                 auto t_results = t_FaceFC->getTopResult(key);
+                // 瀵规瘮缁撴灉杞崲
                 for (auto &t_item : t_results) {
                     t_item.tableName = it.first;
                     t_item.alarmRet = t_alarmRet;
@@ -176,6 +194,7 @@
 
         DBG("t_TableCompareResult size" << t_TableCompareResult.size());
         //sort_all_results
+        // 鎺掑簭
         for (auto itor = t_TableCompareResult.begin(); itor != t_TableCompareResult.end(); ++itor) {
             float new_confidence = itor->confidence;
             auto rtTR = results.rbegin();
@@ -194,6 +213,7 @@
                 ERR("topResult is null");
             }
             auto itTR(rtTR.base());
+            // 鏁版嵁杞寲
             ::FaceSearch::FaceResult t_faceCR;
             t_faceCR.id = itor->id;
             t_faceCR.uuid = itor->uuid;
@@ -208,9 +228,10 @@
             results.insert(itTR, t_faceCR);
         }
         bool retface = true;
-//        cout << __FUNCTION__ << " -> " << __LINE__ << " ->  " << results.size() << endl;
         //#todo send message
         if (results.size() > 0) {
+            // 鏍规嵁浼犲叆鐨勫姣旈槇鍊煎仛绛涢��
+            // 鏈垎鏀彧淇濆瓨浜嗙涓�涓姣旂粨鏋�
             for (auto &item : results) {
                 //#todo 寰楀垎姣旇緝锛屽簲璇ュ湪compare涓繘琛�
                 if (item.confidence < score) {
@@ -226,15 +247,6 @@
                     break;
                 }
                 value["personId"] = item.uuid.size() > 0 ? item.uuid : "";//鍏宠仈搴曞簱浜哄憳id,浜鸿劯id
-
-//                string tmp_tableName = item.tableName;
-//                if (tmp_tableName.find("lt_") == 0) {
-//                    tmp_tableName = tmp_tableName.insert(tmp_tableName.find("lt_") + 3, "::");
-//                    value["BaseName"] = tmp_tableName;//鍏宠仈搴曞簱琛ㄥ悕
-//                } else {
-//                    value["BaseName"] = item.tableName.size() > 0 ? item.tableName : "";//鍏宠仈搴曞簱琛ㄥ悕
-//                }
-
                 value["BaseName"] = item.tableName.size() > 0 ? item.tableName : "";//鍏宠仈搴曞簱琛ㄥ悕
 
                 value["likePer"] = item.confidence > 0 ? item.confidence : 0.0;
@@ -244,10 +256,8 @@
                 value["personIsHub"] = item.alarmRet.size() > 0 ? item.alarmRet : "4";
 
                 auto str_uuid = value["Id"].asString();
-//                DBG(value.toStyledString());
 
-                cout << __FUNCTION__ << " -> " << __LINE__ << " ->  " << "value.toStyledString()  "
-                     << value.toStyledString() << "\n score   " << score << endl;
+                DBG("value.toStyledString()  " << value.toStyledString() << "\n score   " << score);
 //                DBG("score  " << score);
                 retface = pManagerEsDB.insertData("videopersons", "perVideoPicture", value.toStyledString(),
                                                   str_uuid);
@@ -258,37 +268,35 @@
             value["personIsHub"] = "4";
             value["likePer"] = 0.0;
             DBG(value.toStyledString());
-//            cout << __FUNCTION__ << " -> " << __LINE__ << " ->  " << "value.toStyledString()  "
-//                 << value.toStyledString() << endl;
             retface = pManagerEsDB.insertData("videopersons", "perVideoPicture", value.toStyledString(),
                                               str_uuid);
         }
         if (!retface) {
             ERR("insert error");
         } else {
-            cout << __FUNCTION__ << " -> " << __LINE__ << " ->  " << "retface  " << retface << endl;
+            ERR("retface  " << retface);
         };
     } else {
         ERR("json is error" << info_json);
     }
 
 
-
-
-//    for (auto &item : t_tables) {
-//        DBG(item);
-//    }
     return results;
 }
 
 bool FaceFeatureSearchServerI::loadFeatureData(FaceFeatureSearchServerI *faceFea) {
+    // 鍔犺浇搴曞簱鏁版嵁
     ErlangTool::map_TabDataCache dataBaseCache = faceFea->m_erlangDbTool.findAllDatabase();
     if (dataBaseCache.size() < 0 && faceFea->m_retUpdatePthread) {
+        // 杩欓噷杩涗笉鏉ュ惂锛�
         faceFea->m_retUpdatePthread = false;
+        //鎺у埗涓嬫柟绾跨▼鍙惎鍔ㄤ竴娆�
         std::thread thd(dataUpdate, faceFea);
         thd.detach();
     }
+    // 鑾峰彇琛ㄤ俊鎭�
     auto typeInfoCache = faceFea->m_erlangDbTool.findAllTypeInfo();
+    //娓呴櫎鏃ф暟鎹�
     faceFea->m_tableType.clear();
     string str_config = faceFea->m_erlangDbTool.getConfigJsonString();
 
@@ -368,6 +376,7 @@
     faceFea->m_inTime = getTimeLong();
     if (faceFea->m_retUpdatePthread) {
         faceFea->m_retUpdatePthread = false;
+        //鎺у埗涓嬫柟绾跨▼鍙惎鍔ㄤ竴娆�
         std::thread thd(dataUpdate, faceFea);
 
 //        faceFea->m_erlangDbTool.test(faceFea, erlangCallBackFunc);
@@ -418,6 +427,10 @@
 //    pthread_mutex_unlock(&(func_cond_mutex));
 //}
 
+/**
+ * 绛夊緟搴曞簱鍔犺浇瀹屾垚锛屽苟绛夊緟淇″彿瑙﹀彂鏂扮殑鏁版嵁鍒锋柊
+ * @param faceFea
+ */
 void FaceFeatureSearchServerI::dataUpdate(FaceFeatureSearchServerI *faceFea) {
     long inTime = faceFea->m_inTime;
     // modify all db ready start update, <10s
diff --git a/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.h b/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.h
index 7a1c16b..8a70b5c 100644
--- a/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.h
+++ b/QiaoJiaSystem/FaceSearchServer/FaceFeatureSearchServerI.h
@@ -24,6 +24,8 @@
 //};
 
 static bool t_live_ret = true;
+
+//鍏ㄥ眬鐨勪俊鍙烽噺锛屽鏋滄暟鎹埛鏂板欢杩熻繃楂樺彲浠ユ敼涓轰娇鐢╪sq娑堟伅闃熷垪銆�
 static pthread_cond_t func_cond(PTHREAD_COND_INITIALIZER);
 static pthread_mutex_t func_cond_mutex(PTHREAD_MUTEX_INITIALIZER);
 
@@ -39,44 +41,71 @@
     virtual ~FaceFeatureSearchServerI();
 
 public:
+    /**
+     * @deprecated
+     * @return
+     */
     virtual ::FaceSearch::FaceResults faceSearchMax(const ::FaceSearch::Data &, const ::std::string &,
                                                     const ::Ice::Current & = ::Ice::emptyCurrent);
 
+    /***
+     * 瀵规瘮鑾峰彇绗琻澶х殑浜哄憳
+     * @return
+     */
     virtual ::FaceSearch::FaceResults
     faceSearchTopN(const ::FaceSearch::Data &, const ::std::string &, ::Ice::Int, ::Ice::Float,
                    const ::Ice::Current & = ::Ice::emptyCurrent);
 
 private:
+    /**
+     * @deprecated
+     * @param nodeName
+     * @param cookie
+     * @return
+     */
     bool initErlang(std::string nodeName, std::string cookie);
 
-    //#todo delete cache
 
     //#todo loadData
+    /**
+     * 鍔犺浇浜鸿劯灞炴��
+     * @param faceFea
+     * @return
+     */
     static bool loadFeatureData(FaceFeatureSearchServerI *faceFea);
 
+    /**
+     * 鏁版嵁鏇存柊绾跨▼锛屾湁淇″彿瑙﹀彂鎵嶄細鏇存柊
+     * @param faceFea
+     */
     static void dataUpdate(FaceFeatureSearchServerI *faceFea);
 
+    /***
+     * 绛夊緟搴曞簱琛ㄥ姞杞芥垚鍔�
+     * @param faceFea
+     * @param loop
+     */
     static void waitTables(FaceFeatureSearchServerI *faceFea, int loop = -1);
-
-//    void erlangCallBackFunc(std::string);
 
 private:
     long m_inTime;
+    // 鐗瑰緛瀵规瘮绫�
     std::map<std::string, FaceDBCompareServer *> m_faceFCMAP;
+    // 搴曞簱绫诲瀷锛岀敓鏁堟椂闂寸瓑
     std::map<std::string, TableInfo> m_tableType;
 
+    // 瀵� m_faceFCMAP 鍔犺鍐欓攣
+    // 褰撳姣旀椂锛屾暟鎹埛鏂颁細绛夊緟
     RWLock m_rwLock;
+
     ErlangTool::ErlangDbTool m_erlangDbTool;
+
     SqliteFaceEncap m_sqliteFaceEncap;
+
     std::mutex m_mutex;
     bool m_retUpdatePthread;
 
     Base64 base64;
-//    Ice::ObjectPrx base_FaceMemoryData;
-//    IceRpcClient<::FaceSearch::FaceMemoryDataPrx> m_faceMemoryClient;
-//    ::FaceSearch::FaceMemoryDataPrx serverFaceMemoryData;
-
-//    func_cond_mutex(PTHREAD_MUTEX_INITIALIZER), func_cond(PTHREAD_COND_INITIALIZER)
 
     EsDBTool pManagerEsDB;//(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort"));
 };
diff --git a/QiaoJiaSystem/VptServer/VptDetectWrapper.cpp b/QiaoJiaSystem/VptServer/VptDetectWrapper.cpp
index 95ccdc3..b4c8b15 100644
--- a/QiaoJiaSystem/VptServer/VptDetectWrapper.cpp
+++ b/QiaoJiaSystem/VptServer/VptDetectWrapper.cpp
@@ -63,7 +63,7 @@
         int colorIndex = result.info[i].obj_index;
 
         if (colorIndex < 0 || colorIndex >= 9)continue;
-        if(colorIndex==4) DBG("detect a car, score =" << result.info[i].obj_score);
+        if (colorIndex == 4) DBG("detect a car, score =" << result.info[i].obj_score);
 //        sprintf(str_i, "%s:%.2f", type[colorIndex].c_str(), result.info[i].obj_score);
 
 //        rectangle(process_image,
@@ -149,13 +149,13 @@
             auto &carRes = vptDetectResults.vptDetectRes.carDetectRes;
 
             // 杞﹂鑹�
-            if(m_param.vehicle_color_config == SY_CONFIG_OPEN) {
+            if (m_param.vehicle_color_config == SY_CONFIG_OPEN) {
                 carRes.colorLabel = static_cast<ColorLabel>(cur_res->vc_res.res_index);
                 carRes.colorLabelProb = cur_res->vc_res.res_prob;
             }
 
             // 杞﹀瀷璇嗗埆
-            if(m_param.vehicle_recg_config == SY_CONFIG_OPEN) {
+            if (m_param.vehicle_recg_config == SY_CONFIG_OPEN) {
                 if (cur_res->vr_res.vehicle_brand != NULL) {
                     cout << "  杞﹁締鍝佺墝 - " << cur_res->vr_res.vehicle_brand << endl;
                     carRes.vehicle_brand = cur_res->vr_res.vehicle_brand;
@@ -193,7 +193,7 @@
                 carRes.vehicle_score = cur_res->vr_res.name_score;
             }
 
-            if(m_param.vehicle_pendant_det_recg_config == SY_CONFIG_OPEN) {
+            if (m_param.vehicle_pendant_det_recg_config == SY_CONFIG_OPEN) {
                 // 杞︾墝
                 if (cur_res->vp_res.rect.height_ != 0 && cur_res->vp_res.rect.width_ != 0) {
                     cout << "杞︾墝浣嶇疆: " << cur_res->vp_res.rect.left_ << " " << cur_res->vp_res.rect.top_ << " "
@@ -210,10 +210,11 @@
                     carRes.carPlateRectScore = cur_res->vp_res.numScore;
                     carRes.carPlatetype = cur_res->vp_res.type;
 //                printf(" numScore = %.2f, detectScore = %.2f\n", cur_res->vp_res.numScore, cur_res->vp_res.detectScore);
-            }
-        };
+                }
+            };
             break;
+        }
+            return vptDetectResults;
     }
-    return vptDetectResults;
 }
 

--
Gitblit v1.8.0