From 168cad8214b2229130485fdbf3f64d85ac458402 Mon Sep 17 00:00:00 2001
From: pansen <pansen626@sina.com>
Date: 星期四, 11 四月 2019 17:35:36 +0800
Subject: [PATCH] 添加宏定义屏蔽VptRpcElement并替换为VptRpcElement

---
 QiaoJiaSystem/StructureApp/AppPipeController.cpp |  113 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 107 insertions(+), 6 deletions(-)

diff --git a/QiaoJiaSystem/StructureApp/AppPipeController.cpp b/QiaoJiaSystem/StructureApp/AppPipeController.cpp
index 4738830..fcddc04 100644
--- a/QiaoJiaSystem/StructureApp/AppPipeController.cpp
+++ b/QiaoJiaSystem/StructureApp/AppPipeController.cpp
@@ -26,7 +26,11 @@
     m_folderPath(folderPath),
     m_sdkRuleMap(ruleMap),
     fdfsClient(nullptr),
+#ifdef YOLOSERVER
     yoloRpcElement(folderPath + "yoloRpc"),
+#else
+    vptRpcElement(folderPath + "yoloRpc"),
+#endif
     faceRpcElement(folderPath + "faceRpc", ruleMap[FaceSdk]),
     faceExtractElement(folderPath + "faceExtract", ruleMap[FaceSdk]),
     triggerElement(25, 10),
@@ -75,7 +79,11 @@
     m_index(0),
     m_camId(camId),
     fdfsClient(nullptr),
+#ifdef YOLOSERVER
     yoloRpcElement(camId + "yoloRpc"),
+#else
+    vptRpcElement(camId + "yoloRpc"),
+#endif
     faceRpcElement(camId + "faceRpc", ruleMap[FaceSdk]),
     faceExtractElement(camId + "faceExtract", ruleMap[FaceSdk]),
     triggerElement(25, 4),
@@ -174,7 +182,6 @@
 }
 
 string test_str;
-
 
 void AppPipeController::RecordVideo() {
     /*std::string imgKeyYolo = yoloRpcElement.getProperty("imgKey");
@@ -290,6 +297,7 @@
                 faceRpcElement.submit();
             }
 
+#ifdef YOLOSERVER
             if (!yoloRpcElement.isBusy()) {
                 //#todo
                 yoloRpcElement.setProperty("time", strNewTime);
@@ -298,6 +306,16 @@
                 yoloRpcElement.setImage(imageTemp);
                 yoloRpcElement.submit();
             }
+#else
+            if (!vptRpcElement.isBusy()) {
+                //#todo
+                vptRpcElement.setProperty("time", strNewTime);
+                vptRpcElement.setProperty("imgKey", imgKey);
+                INFO("Write To vptRpcElement time:" << strNewTime << "    ImgKey: " << imgKey);
+                vptRpcElement.setImage(imageTemp);
+                vptRpcElement.submit();
+            }
+#endif
 
 
             if (appPref.getIntData("show.image") == 1 && !imageDrawElement.isBusy()) {
@@ -344,6 +362,7 @@
     });
 
 
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         imageDrawElement.setYoloObjects(personElement.getLastScoreRects());
         if (!personElement.isBusy()) {
@@ -353,6 +372,19 @@
         //INFO("Record Video By Yolo");
         //this->RecordVideo();
     });
+#else
+    vptRpcElement.registerConnector([&] {
+        imageDrawElement.setYoloObjects(personElement.getLastScoreRects());
+        if (!personElement.isBusy()) {
+            personElement.setObjsResults(vptRpcElement.getLastHpRects());
+            personElement.submit();
+        }
+//#todo HCP
+//#todo Car
+        //INFO("Record Video By Yolo");
+        //this->RecordVideo();
+    });
+#endif
 
     faceRpcElement.registerConnector([&] {
         imageDrawElement.setFaces(faceRpcElement.getLastScoreRects());
@@ -360,11 +392,20 @@
         //this->RecordVideo();
     });
 
+
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector("YoloTrigger", [&] {
 //        auto images = yoloRpcElement.getTriggerMats();
         //INFO("Record Video By Yolo");
         //this->RecordVideo();
     });
+#else
+    vptRpcElement.registerConnector("YoloTrigger", [&] {
+//        auto images = yoloRpcElement.getTriggerMats();
+        //INFO("Record Video By Yolo");
+        //this->RecordVideo();
+    });
+#endif
 
     faceRpcElement.registerConnector("FaceTrigger", [&] {
 //        auto images = faceRpcElement.getTriggerMats();
@@ -406,7 +447,11 @@
     // registerElement(newRecordVideoElement);
     //videoCaptureElement.setOutPutInterval(3);
     faceExtractElement.setProperty("index", to_string(m_index));
+#ifdef YOLOSERVER
     registerElement(yoloRpcElement);
+#else
+    registerElement(vptRpcElement);
+#endif
     //#todo setProperty
 //    faceExtractElement.setProperty("index", to_string(m_index));
 //    faceExtractElement.setProperty("index", to_string(m_index));
@@ -474,18 +519,25 @@
     if (rule.nIsRun != 1) {
         return;
     }
-
-
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!perimeterElement.isBusy()) {
             perimeterElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
             perimeterElement.setImage(yoloRpcElement.getImage());
-
+            perimeterElement.submit();
+        }
+    });
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perimeterElement.isBusy()) {
+            perimeterElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perimeterElement.setImage(vptRpcElement.getImage());
             perimeterElement.submit();
         }
 //        car
 //        prc
     });
+#endif
 //    perimeterElement.registerConnector([&] {
 
 //        peTriggerElement.setState(perimeterElement.getRealNum() > 0);
@@ -517,6 +569,7 @@
 
     crowdElement.setProperty("local_ip", m_localIp);
 
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!crowdElement.isBusy()) {
             crowdElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -524,7 +577,17 @@
             crowdElement.submit();
         }
     });
-
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perimeterElement.isBusy()) {
+            perimeterElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perimeterElement.setImage(vptRpcElement.getImage());
+            perimeterElement.submit();
+        }
+//        car
+//        prc
+    });
+#endif
     registerElement(crowdElement);
 //    registerElement(crowdTriggerElement);
 }
@@ -538,6 +601,7 @@
     rightJudgment.setProperty("local_ip", m_localIp);
     leftJudgment.init(rule.strAreas, rule.strLine);
     rightJudgment.init(rule.strExAreas, rule.strExLine);
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!leftJudgment.isBusy()) {
             leftJudgment.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -552,6 +616,22 @@
         }
 
     });
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!leftJudgment.isBusy()) {
+            leftJudgment.setYoloObjects(vptRpcElement.getLastHpRects());
+            leftJudgment.setImage(vptRpcElement.getImage());
+            leftJudgment.submit();
+        }
+        if (!rightJudgment.isBusy()) {
+            rightJudgment.setYoloObjects(vptRpcElement.getLastHpRects());
+
+            rightJudgment.setImage(vptRpcElement.getImage());
+            rightJudgment.submit();
+        }
+    });
+#endif
+
     registerElement(leftJudgment);
     registerElement(rightJudgment);
 
@@ -566,6 +646,8 @@
     //area="[{\"x\":100,\"y\":6},{\"x\":100,\"y\":1200},{\"x\":1800,\"y\":1200},{\"x\":1800,\"y\":6}]";
 
     perStaticElement.setProperty("local_ip", m_localIp);
+
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!perStaticElement.isBusy()) {
             perStaticElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -573,7 +655,15 @@
             perStaticElement.submit();
         }
     });
-
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perStaticElement.isBusy()) {
+            perStaticElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perStaticElement.setImage(vptRpcElement.getImage());
+            perStaticElement.submit();
+        }
+    });
+#endif
     registerElement(perStaticElement);
 }
 
@@ -586,6 +676,8 @@
     //area="[{\"x\":100,\"y\":6},{\"x\":100,\"y\":1200},{\"x\":1800,\"y\":1200},{\"x\":1800,\"y\":6}]";
 
     perHubElement.setProperty("local_ip", m_localIp);
+
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!perHubElement.isBusy()) {
             perHubElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -593,6 +685,15 @@
             perHubElement.submit();
         }
     });
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perHubElement.isBusy()) {
+            perHubElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perHubElement.setImage(vptRpcElement.getImage());
+            perHubElement.submit();
+        }
+    });
+#endif
 
     registerElement(perHubElement);
 }

--
Gitblit v1.8.0