#pragma once #include #include #include #include #include "rodAndBarDetection_Export.h" #include "VZNL_Types.h" #include "VrTimeUtils.h" #include "VrError.h" #include "VrLog.h" #include "IVrConfig.h" #include "LaserDataLoader.h" #include "IYScrewPositionStatus.h" #include "PointCloudImageUtils.h" #include "VrConvert.h" #include "VrDateUtils.h" struct RobotPose6D; class DetectPresenter { private: /* data */ public: DetectPresenter(/* args */); ~DetectPresenter(); static QString GetAlgoVersion(); /// 螺杆检测接口 int DetectScrew( int cameraIndex, std::vector>& laserLines, const VrAlgorithmParams& algorithmParams, const VrDebugParam& debugParam, LaserDataLoader& dataLoader, const double clibMatrix[16], const RobotPose6D& robotPose, int eulerOrder, int poseOutputOrder, int dirVectorInvert, int longAxisDir, DetectionResult& detectionResult); /// 工具盘检测接口 int DetectToolDisk(int cameraIndex, std::vector>& laserLines, const VrAlgorithmParams& algorithmParams, const VrDebugParam& debugParam, LaserDataLoader& dataLoader, const double clibMatrix[16], const RobotPose6D& robotPose, int eulerOrder, int poseOutputOrder, int dirVectorInvert, int longAxisDir, DetectionResult& detectionResult); };