#ifndef PERSONELEMENT_H #define PERSONELEMENT_H #include #include #include #include #include #include #include "TrackingTrigger.h" #include "DBStruct.h" class QSharedMemory; class PersonElement : public basic::PipeElement { public: PersonElement(){} PersonElement(const SdkRule& sdkRule); ~PersonElement(); void setImage(const cv::Mat &value); std::vector getTriggerMats(); std::vector getLastScoreRects() const; void setFdfs(FastFdsWithLock *p_fdfsClient) { fdfsClient = p_fdfsClient; } bool getTriggerState() const; bool getTrigger() const; void setObjsResults(const std::vector& objs); private: virtual void threadFunc() override; private: // IceRpcClient rpcClient; cv::Mat image; // QSharedMemory *sharedMemory; // ::YoloDetect::ObjInfos objs; std::vector m_objs; // TrackingTrigger *trackingTrigger; std::vector triggerMats; ::YoloDetect::stringData cocoData; FastFdsWithLock *fdfsClient; TriggerElement m_triggerElement; SdkRule m_sdkRule; }; #endif // YOLORPCELEMENT_H