50 lines
1.4 KiB
C++
50 lines
1.4 KiB
C++
#ifndef DETECTPRESENTER_H
|
||
#define DETECTPRESENTER_H
|
||
|
||
#include "VrLog.h"
|
||
#include "VrError.h"
|
||
#include "IVrEyeDevice.h"
|
||
#include "IYHoleDetectionStatus.h"
|
||
#include "IVrConfig.h"
|
||
#include "LaserDataLoader.h"
|
||
#include <QString>
|
||
|
||
#include "ProtocolCommon.h"
|
||
|
||
class DetectPresenter
|
||
{
|
||
public:
|
||
DetectPresenter();
|
||
~DetectPresenter();
|
||
|
||
static QString GetAlgoVersion();
|
||
|
||
/**
|
||
* @brief 执行孔洞检测(眼在手上方式)
|
||
* @param cameraIndex 相机索引
|
||
* @param laserLines 激光线数据
|
||
* @param algorithmParams 算法参数
|
||
* @param debugParam 调试参数
|
||
* @param dataLoader 数据加载器
|
||
* @param clibMatrix 手眼标定矩阵(4x4),T_end_to_cam
|
||
* @param eulerOrder 欧拉角顺序
|
||
* @param dirVectorInvert 方向向量反向配置
|
||
* @param robotPose 机器人法兰位姿,T_base_to_end
|
||
* @param detectionResult 检测结果输出
|
||
* @return 错误码
|
||
*/
|
||
int DetectHoles(
|
||
int cameraIndex,
|
||
std::vector<std::pair<EVzResultDataType, SVzLaserLineData>>& laserLines,
|
||
const VrAlgorithmParams& algorithmParams,
|
||
const VrDebugParam& debugParam,
|
||
LaserDataLoader& dataLoader,
|
||
const double clibMatrix[16],
|
||
int eulerOrder,
|
||
int dirVectorInvert,
|
||
const RobotFlangePose& robotPose,
|
||
HoleDetectionResult& detectionResult);
|
||
};
|
||
|
||
#endif // DETECTPRESENTER_H
|