From fa6cd4892d2841f7237a125f4c2ae96f9f49f520 Mon Sep 17 00:00:00 2001 From: miyanhui <dennismi1024@gmail.com> Date: 星期五, 15 二月 2019 15:49:20 +0800 Subject: [PATCH] 解决新的方式程序崩溃的问题 --- QiaoJiaSystem/StructureApp/AppPipeController.cpp | 14 +++--- QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp | 9 +--- QiaoJiaSystem/StructureApp/FaceExtractElement.h | 7 ++- QiaoJiaSystem/StructureApp/PerimeterElement.cpp | 6 +-- QiaoJiaSystem/StructureApp/PerimeterElement.h | 8 ++-- QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h | 10 ++-- QiaoJiaSystem/StructureApp/FaceExtractElement.cpp | 8 +--- 7 files changed, 26 insertions(+), 36 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/AppPipeController.cpp b/QiaoJiaSystem/StructureApp/AppPipeController.cpp index 880a7c9..c3d0998 100644 --- a/QiaoJiaSystem/StructureApp/AppPipeController.cpp +++ b/QiaoJiaSystem/StructureApp/AppPipeController.cpp @@ -28,7 +28,7 @@ fdfsClient(nullptr), yoloRpcElement(folderPath + "yoloRpc"), faceRpcElement(folderPath + "faceRpc", ruleMap[FaceSdk]), - faceExtractElement(folderPath + "faceExtract", ruleMap[FaceSdk],m_rpcClient), + faceExtractElement(folderPath + "faceExtract", ruleMap[FaceSdk]), triggerElement(25, 10), recordVideoElement(-1, ""), bRecordVideoEnable(false), @@ -78,16 +78,16 @@ fdfsClient(nullptr), yoloRpcElement(camId + "yoloRpc"), faceRpcElement(camId + "faceRpc", ruleMap[FaceSdk]), - faceExtractElement(camId + "faceExtract", ruleMap[FaceSdk],m_rpcClient), + faceExtractElement(camId + "faceExtract", ruleMap[FaceSdk]), triggerElement(25, 4), recordVideoElement(camId, appPref.getStringData(camId + "rtsp")), newRecordVideoElement(camId), - perimeterElement(ruleMap[PerimeterSdk],m_rpcClient), - crowdElement(ruleMap[CrowdSdk],m_rpcClient), + perimeterElement(ruleMap[PerimeterSdk]), + crowdElement(ruleMap[CrowdSdk]), perStaticElement(ruleMap[PerStaticSdk]), - perHubElement(ruleMap[PerHubSdk],m_rpcClient), - leftJudgment(ruleMap[KeepRightSdk],m_rpcClient), - rightJudgment(ruleMap[KeepRightSdk],m_rpcClient), + perHubElement(ruleMap[PerHubSdk]), + leftJudgment(ruleMap[KeepRightSdk]), + rightJudgment(ruleMap[KeepRightSdk]), bRecordVideoEnable(RecordVideoEnable), m_sdkRuleMap(ruleMap), m_bSetWH(false) diff --git a/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp b/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp index cc8b003..c3f170a 100644 --- a/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp +++ b/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp @@ -37,7 +37,8 @@ faceSearchRpcClient(appPref.getStringData("faceSear.proxy"), appPref.getStringData("faceSear.ip"), appPref.getIntData("faceSear.port"), "tcp"), // faceSearchRpcClient("faceCmServer", "", 10004, "tcp") - m_sdkRule(rule) + m_sdkRule(rule), + m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp") { sharedMemory = new QSharedMemory(QString(shareMemoryName.c_str())); if (!sharedMemory->create(4608 * 2592 * 4)) { @@ -45,11 +46,6 @@ } } -FaceExtractElement::FaceExtractElement(std::string shareMemoryName, const SdkRule &rule, - SaveVideoRpcClient_t &rpcClient):FaceExtractElement(shareMemoryName,rule) -{ - m_rpcClient=rpcClient; -} FaceExtractElement::~FaceExtractElement() { if (sharedMemory) { delete sharedMemory; diff --git a/QiaoJiaSystem/StructureApp/FaceExtractElement.h b/QiaoJiaSystem/StructureApp/FaceExtractElement.h index 11d3345..94f21b0 100644 --- a/QiaoJiaSystem/StructureApp/FaceExtractElement.h +++ b/QiaoJiaSystem/StructureApp/FaceExtractElement.h @@ -30,7 +30,8 @@ class FaceExtractElement : public TimerElement { public: - FaceExtractElement(std::string shareMemoryName,const SdkRule& rule,SaveVideoRpcClient_t& rpcClient); + FaceExtractElement(std::string shareMemoryName,const SdkRule& rule); + //FaceExtractElement(std::string shareMemoryName,const SdkRule& rule,SaveVideoRpcClient_t& rpcClient); ~FaceExtractElement(); @@ -44,7 +45,7 @@ std::vector<::FaceDetect::Data> getFeatures() const; private: - FaceExtractElement(std::string shareMemoryName,const SdkRule& rule); + virtual void timerFunc() override; IceRpcClient<FaceDetect::FaceExtractServerPrx> faceExtractRpcClient; @@ -59,7 +60,7 @@ Base64 base64; SdkRule m_sdkRule; - SaveVideoRpcClient_t& m_rpcClient; + SaveVideoRpcClient_t m_rpcClient; }; diff --git a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp index 17ebf33..7094791 100644 --- a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp +++ b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp @@ -15,14 +15,10 @@ pManagerEsDB(nullptr), m_bSetWH(false), pointArray(nullptr), - npts(0) + npts(0), + m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp") { pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort")); -} - -JudgmentRetrogradeTool::JudgmentRetrogradeTool(const SdkRule &rule, SaveVideoRpcClient_t &rpcClient):JudgmentRetrogradeTool(rule) -{ - m_rpcClient = rpcClient; } JudgmentRetrogradeTool::~JudgmentRetrogradeTool() { @@ -186,7 +182,6 @@ cv::arrowedLine(image,m_UpBaseLine.start_Point,m_UpBaseLine.end_Point,cv::Scalar(0,0,255)); cv::rectangle(image, scoredRect.rect, cv::Scalar(0, 0, 255), 2); - std::string imgUrl = uploadImgToFdfs(image); saveInfoToEs(imgUrl, scoredRect); state=true; diff --git a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h index 63c7f68..3d6cd76 100644 --- a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h +++ b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h @@ -54,10 +54,10 @@ class JudgmentRetrogradeTool : public basic::PipeElement{ public: - JudgmentRetrogradeTool() {} + JudgmentRetrogradeTool():m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp") {} - - JudgmentRetrogradeTool(const SdkRule &rule,SaveVideoRpcClient_t& rpcClient); + JudgmentRetrogradeTool(const SdkRule &rule); + //JudgmentRetrogradeTool(const SdkRule &rule,SaveVideoRpcClient_t& rpcClient); virtual ~JudgmentRetrogradeTool(); @@ -76,7 +76,7 @@ void setImage(const cv::Mat &value); private: - JudgmentRetrogradeTool(const SdkRule &rule); + bool setMask(QString area, QString line); void setPerPoint(const long &, cv::Point2f); @@ -149,7 +149,7 @@ QString m_area; QString m_line; bool m_bSetWH; - SaveVideoRpcClient_t& m_rpcClient; + SaveVideoRpcClient_t m_rpcClient; }; diff --git a/QiaoJiaSystem/StructureApp/PerimeterElement.cpp b/QiaoJiaSystem/StructureApp/PerimeterElement.cpp index 49e86a4..d4411f1 100644 --- a/QiaoJiaSystem/StructureApp/PerimeterElement.cpp +++ b/QiaoJiaSystem/StructureApp/PerimeterElement.cpp @@ -24,15 +24,13 @@ pManagerEsDB(nullptr), m_bIsMask(true), m_bSetWH(false), - pointArray(nullptr) + pointArray(nullptr), + m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp") { pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort")); } -PerimeterElement::PerimeterElement(const SdkRule &rule,SaveVideoRpcClient_t &rpcClient):PerimeterElement(rule){ - m_rpcClient=rpcClient; -} PerimeterElement::~PerimeterElement() { if (pManagerEsDB) { delete pManagerEsDB; diff --git a/QiaoJiaSystem/StructureApp/PerimeterElement.h b/QiaoJiaSystem/StructureApp/PerimeterElement.h index d259bb8..b9d28a2 100644 --- a/QiaoJiaSystem/StructureApp/PerimeterElement.h +++ b/QiaoJiaSystem/StructureApp/PerimeterElement.h @@ -16,8 +16,8 @@ class PerimeterElement : public basic::PipeElement { public: - PerimeterElement(){} - PerimeterElement(const SdkRule& rule,SaveVideoRpcClient_t& rpcClient); + PerimeterElement():m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp"){} + PerimeterElement(const SdkRule& rule); public: ~PerimeterElement(); @@ -53,7 +53,7 @@ void setImage(const cv::Mat &value) const; private: - PerimeterElement(const SdkRule& rule); + //PerimeterElement(const SdkRule& rule); virtual void threadInitial()override; @@ -90,7 +90,7 @@ std::vector<Point> poly1; bool m_bSetWH; cv::Point2i* pointArray; - SaveVideoRpcClient_t& m_rpcClient; + SaveVideoRpcClient_t m_rpcClient; }; -- Gitblit v1.8.0