| | |
| | | #include "PerStaticElement.h" |
| | | #include <jsoncpp/json/json.h> |
| | | #include "DBStruct.h" |
| | | #include <RtspAnalysServer.h> |
| | | #include "SaveVideoRpc.h" |
| | | |
| | | class VideoCaptureElementNotDecoder : public ffmpeg::VideoCaptureElement { |
| | | using ffmpeg::VideoCaptureElement::VideoCaptureElement; |
| | | private: |
| | | virtual void timerFunc() override { |
| | | fireConnectors(); |
| | | } |
| | | |
| | | virtual void threadInitial() override {} |
| | | |
| | | virtual void threadClosing() override {} |
| | | |
| | | private: |
| | | bool m_decoderRet = {false}; |
| | | }; |
| | | |
| | | class AppPipeController : public PipeController { |
| | | public: |
| | | /*** |
| | |
| | | * @param folderPath 任务根目录,用于做共享内存id |
| | | * @param json 参数为rtsp流地址 sdk是否启用的标识 |
| | | */ |
| | | // AppPipeController(std::string folderPath, const Json::Value &json); |
| | | AppPipeController(std::string folderPath, const SdkRuleMap& ruleMap); |
| | | // AppPipeController(std::string folderPath, const Json::Value &json); |
| | | AppPipeController(std::string folderPath, const SdkRuleMap &ruleMap); |
| | | |
| | | // AppPipeController(int index, const Json::Value &json, bool RecordVideoEnable = false); |
| | | // AppPipeController(int index, const Json::Value &json, bool RecordVideoEnable = false); |
| | | |
| | | // AppPipeController(std::string camId, const Json::Value &json, bool RecordVideoEnable); |
| | | // AppPipeController(std::string camId, const Json::Value &json, bool RecordVideoEnable); |
| | | |
| | | AppPipeController(std::string camId, const SdkRuleMap& ruleMap, bool RecordVideoEnable); |
| | | AppPipeController(std::string camId, const SdkRuleMap &ruleMap, bool RecordVideoEnable); |
| | | |
| | | virtual ~AppPipeController(); |
| | | |
| | |
| | | |
| | | void setfdfsClient(FastFdsWithLock *p_fdfsClient); |
| | | |
| | | void setWeekRule(const std::map<int, std::vector<LActRuleWeekRecord>>& weekRuleMap); |
| | | void setWeekRule(const std::map<int, std::vector<LActRuleWeekRecord>> &weekRuleMap); |
| | | |
| | | private: |
| | | void init(); |
| | | |
| | | private://Perimete |
| | | PerimeterElement perimeterElement; |
| | | // TriggerElement peTriggerElement; |
| | | // TriggerElement peTriggerElement; |
| | | |
| | | void initPerimeter(); |
| | | |
| | |
| | | //TriggerElement crowdTriggerElement; |
| | | |
| | | void initCrowd(); |
| | | |
| | | void RecordVideo(); |
| | | |
| | | private://KeepRight |
| | | JudgmentRetrogradeTool leftJudgment; |
| | | JudgmentRetrogradeTool rightJudgment; |
| | |
| | | |
| | | private: |
| | | PerStaticElement perStaticElement; |
| | | |
| | | void initPerStatic(); |
| | | |
| | | private://Perimete |
| | | PerimeterElement perHubElement; |
| | | // TriggerElement peTriggerElement; |
| | | // TriggerElement peTriggerElement; |
| | | |
| | | void initPerHub(); |
| | | |
| | | private: |
| | | ffmpeg::VideoCaptureElement videoCaptureElement; |
| | | SaveVideoRpcClient_t m_rpcClient; |
| | | VideoCaptureElementNotDecoder videoCaptureElement; |
| | | // ffmpeg::VideoCaptureElement videoCaptureElement; |
| | | YoloRpcElement yoloRpcElement; |
| | | FaceRpcElement faceRpcElement; |
| | | FaceExtractElement faceExtractElement; |
| | | ImageDrawElement imageDrawElement; |
| | | RecordVideoElement recordVideoElement; |
| | | NewRecordVideoElement newRecordVideoElement; |
| | | // RecordVideoElement recordVideoElement; |
| | | // NewRecordVideoElement newRecordVideoElement; |
| | | PersonElement personElement; |
| | | |
| | | int m_index; |
| | | std::string m_camId; |
| | | std::string m_folderPath; |
| | | Json::Value m_json; |
| | | Json::Value m_json_Record; |
| | | // Json::Value m_json; |
| | | // Json::Value m_json_Record; |
| | | // Json::FastWriter m_fastWriter; |
| | | |
| | | Json::FastWriter m_fastWriter; |
| | | FastFdsWithLock *fdfsClient; |
| | | |
| | | bool bRecordVideoEnable; |
| | |
| | | std::map<int, std::vector<LActRuleWeekRecord>> m_weekRuleMap; |
| | | SdkRuleMap m_sdkRuleMap; |
| | | std::string m_localIp; |
| | | |
| | | std::string getFullFileName(); |
| | | |
| | | std::mutex mutex; |
| | | bool m_bSetWH; |
| | | HiredisTool m_hiredisTool; |
| | | IceRpcClient<RtspAnalys::RtspAnalysServerPrx> rpcClient; |
| | | |
| | | }; |
| | | |
| | | #endif // APPPIPECONTROLLER_H |