/** * 车号第一步过滤Engine * */ #ifndef MergeEngine_H #define MergeEngine_H #include "AppCommon.h" #include "EngineBase.h" #include "EngineFactory.h" #include "multitype_queue.h" class MultiTypeQueue; class MergeEngine : public ai_matrix::EngineBase { public: MergeEngine(); ~MergeEngine(); APP_ERROR Init() override; APP_ERROR DeInit() override; APP_ERROR Process() override; private: std::string strPort0_; std::string strPort1_; ai_matrix::BaseConfig baseConfig_; ai_matrix::IdentifyConfig identifyConfig_; // ai_matrix::MultiTypeQueue *multiTypeQueue_; std::map mapTrain_; std::map mapHavSecondary_; std::queue queueHavSecondary_; bool isComplete(std::shared_ptr pVTrain); bool isSameCarriage(std::shared_ptr pVTrain, const VTrainInfo & train_secondary); void supplementTrain(std::shared_ptr pVTrain, const VTrainInfo & train_secondary); }; ENGINE_REGIST(MergeEngine) #endif