123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192 |
- /////////////////////////////////////////////////////////////////////////
- /// @file nvCFPDDTDI.h
- /// @brief 此文件提供探测器SDK DTDI功能的接口函数,接口函数需要配合SDK的标准函数进行使用,不可独立使用
- /// @version V1.0.0.0
- /// @author Liliudan
- /// @date 2020-06-30
- /// @par Copyright (c): Sensview Technology 成都善思微科技有限公司
- /////////////////////////////////////////////////////////////////////////
- #ifndef NV_DTDI_H
- #define NV_DTDI_H
- #ifdef NVDTDI_EXPORTS
- #define NVDTDI_API __declspec(dllexport)
- #else
- #define NVDTDI_API __declspec(dllimport)
- #endif
- #include "nvDTDITypes.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- /////////////////////////////////////////////////////////////////////////
- /// @brief 创建一个DTDI转换器
- /// @param [in out] HDTDICONV 创建成功后返回的转换器句柄
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /// @note 该函数用户创建一个DTDI转换器,当转换器不再使用时必须调用 @c NV_DTDI_DestroyConventer()
- /// @sa @c NV_DTDI_DestroyConventer()
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_CreateConverter(HDTDICONV * hConv);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 销毁一个DTDI转换器
- /// @param [in] hConv 转换器句柄
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /// @sa @c NV_DTDI_CreateConventer()
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_DestroyConverter(HDTDICONV hConv);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置DTDI转换器物体运动方向
- /// @param [in] hConv 转换器句柄
- /// @param [in] eMotionDirection 待扫描物体运动方向
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetMotionDirection(HDTDICONV hConv, NV_DTDIMotionDirection eMotionDirection);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 获取DTDI转换器物体运动方向
- /// @param [in] hConv 转换器句柄
- /// @param [in] eMotionDirection 待扫描物体运动方向存储空间指针
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_GetMotionDirection(HDTDICONV hConv, NV_DTDIMotionDirection * eMotionDirection);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置DTDI转换器工作模式
- /// @param [in] hConv 转换器句柄
- /// @param [in] eWorkMode 工作模式
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetWorkMode(HDTDICONV hConv, NV_DTDIWorkMode eWorkMode);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 获取DTDI转换器工作模式
- /// @param [in] hConv 转换器句柄
- /// @param [in] eWorkMode 工作模式指针
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_GetWorkMode(HDTDICONV hConv, NV_DTDIWorkMode * eWorkMode);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置DTDI转换器图像模式
- /// @param [in] hConv 转换器句柄
- /// @param [in] eWorkMode 图像模式
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetImageMode(HDTDICONV hConv, NV_DTDIImageMode eImageMode);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 获取DTDI转换器图像模式
- /// @param [in] hConv 转换器句柄
- /// @param [out] eWorkMode 图像模式
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_GetImageMode(HDTDICONV hConv, NV_DTDIImageMode * eImageMode);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置每次触发移动的步长,单位mm
- /// @param [in] hConv 转换器句柄
- /// @param [in] fStepmm 每次触发移动步长单位mm
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetMotionStep(HDTDICONV hConv, float fStepmm);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 获取每次触发移动的步长,单位mm
- /// @param [in] hConv 转换器句柄
- /// @param [in] fStepmm 每次触发移动步长缓冲区指针
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_GetMotionStep(HDTDICONV hConv, float * fStepmm);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置期待的拼接图像尺寸
- /// @param [in] hConv 转换器句柄
- /// @param [in] iSize 期待的拼接图像尺寸
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /// @note 该函数仅适用于连续模式,图像拼接大小描述的方向与探测器扫描方向一致
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetExpectCombineSize(HDTDICONV hConv, int iSize);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 获取期待的拼接图像尺寸
- /// @param [in] hConv 转换器句柄
- /// @param [in] iSize 期待的拼接图像尺寸缓冲区指针
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /// @note 该函数仅适用于连续模式,图像拼接大小描述的方向与探测器扫描方向一致
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_GetExpectCombineSize(HDTDICONV hConv, int * iSize);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置DTDI转换器回调函数及调用对象
- /// @param [in] hConv 转换器句柄
- /// @param [in] pCallback 回调函数指针
- /// @param [in] pCallbackData 回调函数调用对象
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetDTDIConvCallback(HDTDICONV hConv, NV_DTDI_EVENT_CALLBACK pCallback, void * pCallbackData);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 开始进行DTDI转换
- /// @param [in] hConv 转换器句柄
- /// @param [in] pMode 每次触发移动步长单位mm
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_ConvertStart(HDTDICONV hConv);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 停止进行DTDI转换
- /// @param [in] hConv 转换器句柄
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_ConvertStop(HDTDICONV hConv);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 输入原始图像数据
- /// @param [in] hConv 转换器句柄
- /// @param [in] pImg 图像数据指针
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_InputRawData(HDTDICONV hConv, const _NV_ImageInfo * pImg);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 开始FPN校准
- /// @param [in] hConv 转换器句柄
- /// @param [in] pCallback 回调函数指针
- /// @param [in] pCallbackData 函数调用对象
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_RunFPNCalThread(HDTDICONV hConv);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 取消FPN校准
- /// @param [in] hConv 转换器句柄
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_CancelFPNCal(HDTDICONV hConv);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 设置FPN校正使能
- /// @param [in] hConv 转换器句柄
- /// @param [in] type 校正类型
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_SetFPNCal(HDTDICONV hConv, _NV_CorrType type);
- /////////////////////////////////////////////////////////////////////////
- /// @brief 获取FPN校正使能
- /// @param [in] hConv 转换器句柄
- /// @param [in] type 校正类型
- /// @retval NV_StatusCodes 返回状态码,若成功则返回NV_SC_SUCCESS
- /////////////////////////////////////////////////////////////////////////
- NVDTDI_API NV_StatusType NV_DTDI_GetFPNCal(HDTDICONV hConv, _NV_CorrType * type);
- #ifdef __cplusplus
- }
- #endif
- #endif
|