1342 lines
69 KiB
C
1342 lines
69 KiB
C
|
||
#ifndef _MV_CAMERA_PARAMS_H_
|
||
#define _MV_CAMERA_PARAMS_H_
|
||
|
||
#include "PixelType.h"
|
||
|
||
#ifndef __cplusplus
|
||
typedef char bool;
|
||
#define true 1
|
||
#define false 0
|
||
#endif
|
||
|
||
/// \~chinese 排序方式 \~english The Method of Sorting
|
||
typedef enum _MV_SORT_METHOD_
|
||
{
|
||
SortMethod_SerialNumber =
|
||
0, ///< \~chinese 按序列号排序 \~english Sorting by SerialNumber
|
||
SortMethod_UserID =
|
||
1, ///< \~chinese 按用户自定义名字排序 \~english Sorting by UserID
|
||
SortMethod_CurrentIP_ASC =
|
||
2, ///< \~chinese 按当前IP地址排序(升序) \~english Sorting by current IP(Ascending)
|
||
SortMethod_CurrentIP_DESC =
|
||
3, ///< \~chinese 按当前IP地址排序(降序) \~english Sorting by current IP(Descending)
|
||
|
||
} MV_SORT_METHOD;
|
||
|
||
/// \~chinese GigE设备信息 \~english GigE device info
|
||
typedef struct _MV_GIGE_DEVICE_INFO_
|
||
{
|
||
unsigned int
|
||
nIpCfgOption; ///< [OUT] \~chinese IP配置选项 \~english IP Configuration Options
|
||
unsigned int
|
||
nIpCfgCurrent; ///< [OUT] \~chinese 当前IP配置 \~english IP Configuration
|
||
unsigned int nCurrentIp; ///< [OUT] \~chinese 当前IP地址 \~english Current Ip
|
||
unsigned int
|
||
nCurrentSubNetMask; ///< [OUT] \~chinese 当前子网掩码 \~english Curtent Subnet Mask
|
||
unsigned int
|
||
nDefultGateWay; ///< [OUT] \~chinese 当前网关 \~english Current Gateway
|
||
unsigned char
|
||
chManufacturerName[32]; ///< [OUT] \~chinese 制造商名称 \~english Manufacturer Name
|
||
unsigned char chModelName[32]; ///< [OUT] \~chinese 型号名称 \~english Model Name
|
||
unsigned char
|
||
chDeviceVersion[32]; ///< [OUT] \~chinese 设备版本 \~english Device Version
|
||
unsigned char chManufacturerSpecificInfo
|
||
[48]; ///< [OUT] \~chinese 制造商的具体信息 \~english Manufacturer Specific Information
|
||
unsigned char
|
||
chSerialNumber[16]; ///< [OUT] \~chinese 序列号 \~english Serial Number
|
||
unsigned char
|
||
chUserDefinedName[16]; ///< [OUT] \~chinese 用户自定义名称 \~english User Defined Name
|
||
unsigned int nNetExport; ///< [OUT] \~chinese 网口IP地址 \~english NetWork IP Address
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_GIGE_DEVICE_INFO;
|
||
|
||
///< \~chinese 最大的数据信息大小 \~english Maximum data information size
|
||
#define INFO_MAX_BUFFER_SIZE 64
|
||
|
||
/// \~chinese USB设备信息 \~english USB device info
|
||
typedef struct _MV_USB3_DEVICE_INFO_
|
||
{
|
||
unsigned char
|
||
CrtlInEndPoint; ///< [OUT] \~chinese 控制输入端点 \~english Control input endpoint
|
||
unsigned char
|
||
CrtlOutEndPoint; ///< [OUT] \~chinese 控制输出端点 \~english Control output endpoint
|
||
unsigned char StreamEndPoint; ///< [OUT] \~chinese 流端点 \~english Flow endpoint
|
||
unsigned char EventEndPoint; ///< [OUT] \~chinese 事件端点 \~english Event endpoint
|
||
unsigned short idVendor; ///< [OUT] \~chinese 供应商ID号 \~english Vendor ID Number
|
||
unsigned short idProduct; ///< [OUT] \~chinese 产品ID号 \~english Device ID Number
|
||
unsigned int nDeviceNumber; ///< [OUT] \~chinese 设备索引号 \~english Device Number
|
||
unsigned char chDeviceGUID
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 设备GUID号 \~english Device GUID Number
|
||
unsigned char chVendorName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 供应商名字 \~english Vendor Name
|
||
unsigned char chModelName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 型号名字 \~english Model Name
|
||
unsigned char chFamilyName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 家族名字 \~english Family Name
|
||
unsigned char chDeviceVersion
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 设备版本 \~english Device Version
|
||
unsigned char chManufacturerName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 制造商名字 \~english Manufacturer Name
|
||
unsigned char chSerialNumber
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 序列号 \~english Serial Number
|
||
unsigned char chUserDefinedName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 用户自定义名字 \~english User Defined Name
|
||
unsigned int nbcdUSB; ///< [OUT] \~chinese 支持的USB协议 \~english Support USB Protocol
|
||
unsigned int nDeviceAddress; ///< [OUT] \~chinese 设备地址 \~english Device Address
|
||
|
||
unsigned int nReserved[2]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_USB3_DEVICE_INFO;
|
||
|
||
/// \~chinese CameraLink设备信息 \~english CameraLink device info
|
||
typedef struct _MV_CamL_DEV_INFO_
|
||
{
|
||
unsigned char
|
||
chPortID[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 端口号 \~english Port ID
|
||
unsigned char chModelName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 型号名字 \~english Model Name
|
||
unsigned char chFamilyName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 名称 \~english Family Name
|
||
unsigned char chDeviceVersion
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 设备版本 \~english Device Version
|
||
unsigned char chManufacturerName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 制造商名字 \~english Manufacturer Name
|
||
unsigned char chSerialNumber
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 序列号 \~english Serial Number
|
||
|
||
unsigned int nReserved[38]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CamL_DEV_INFO;
|
||
|
||
///< \~chinese 设备传输层协议类型 \~english Device Transport Layer Protocol Type
|
||
#define MV_UNKNOW_DEVICE \
|
||
0x00000000 ///< \~chinese 未知设备类型,保留意义 \~english Unknown Device Type, Reserved
|
||
#define MV_GIGE_DEVICE 0x00000001 ///< \~chinese GigE设备 \~english GigE Device
|
||
#define MV_1394_DEVICE \
|
||
0x00000002 ///< \~chinese 1394-a/b 设备 \~english 1394-a/b Device
|
||
#define MV_USB_DEVICE 0x00000004 ///< \~chinese USB 设备 \~english USB Device
|
||
#define MV_CAMERALINK_DEVICE \
|
||
0x00000008 ///< \~chinese CameraLink设备 \~english CameraLink Device
|
||
#define MV_VIR_GIGE_DEVICE \
|
||
0x00000010 ///< \~chinese 虚拟GigE设备 \~english Virtual GigE Device
|
||
#define MV_VIR_USB_DEVICE \
|
||
0x00000020 ///< \~chinese 虚拟USB设备 \~english Virtual USB Device
|
||
#define MV_GENTL_GIGE_DEVICE \
|
||
0x00000040 ///< \~chinese 自研网卡下GigE设备 \~english GenTL GigE Device
|
||
|
||
/// \~chinese 设备信息 \~english Device info
|
||
typedef struct _MV_CC_DEVICE_INFO_
|
||
{
|
||
unsigned short nMajorVer; ///< [OUT] \~chinese 主要版本 \~english Major Version
|
||
unsigned short nMinorVer; ///< [OUT] \~chinese 次要版本 \~english Minor Version
|
||
unsigned int nMacAddrHigh; ///< [OUT] \~chinese 高MAC地址 \~english High MAC Address
|
||
unsigned int nMacAddrLow; ///< [OUT] \~chinese 低MAC地址 \~english Low MAC Address
|
||
unsigned int
|
||
nTLayerType; ///< [OUT] \~chinese 设备传输层协议类型 \~english Device Transport Layer Protocol Type
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
union {
|
||
MV_GIGE_DEVICE_INFO
|
||
stGigEInfo; ///< [OUT] \~chinese GigE设备信息 \~english GigE Device Info
|
||
MV_USB3_DEVICE_INFO
|
||
stUsb3VInfo; ///< [OUT] \~chinese USB设备信息 \~english USB Device Info
|
||
MV_CamL_DEV_INFO
|
||
stCamLInfo; ///< [OUT] \~chinese CameraLink设备信息 \~english CameraLink Device Info
|
||
// more ...
|
||
} SpecialInfo;
|
||
|
||
} MV_CC_DEVICE_INFO;
|
||
|
||
///< \~chinese 最多支持的传输层实例个数 \~english The maximum number of supported transport layer instances
|
||
#define MV_MAX_TLS_NUM 8
|
||
///< \~chinese 最大支持的设备个数 \~english The maximum number of supported devices
|
||
#define MV_MAX_DEVICE_NUM 256
|
||
|
||
/// \~chinese 设备信息列表 \~english Device Information List
|
||
typedef struct _MV_CC_DEVICE_INFO_LIST_
|
||
{
|
||
unsigned int
|
||
nDeviceNum; ///< [OUT] \~chinese 在线设备数量 \~english Online Device Number
|
||
MV_CC_DEVICE_INFO * pDeviceInfo
|
||
[MV_MAX_DEVICE_NUM]; ///< [OUT] \~chinese 支持最多256个设备 \~english Support up to 256 devices
|
||
|
||
} MV_CC_DEVICE_INFO_LIST;
|
||
|
||
/// \~chinese 通过GenTL枚举到的接口信息 \~english Interface Information with GenTL
|
||
typedef struct _MV_GENTL_IF_INFO_
|
||
{
|
||
unsigned char chInterfaceID
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese GenTL接口ID \~english Interface ID
|
||
unsigned char chTLType
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 传输层类型 \~english GenTL Type
|
||
unsigned char chDisplayName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese Interface显示名称 \~english Display Name
|
||
unsigned int
|
||
nCtiIndex; ///< [OUT] \~chinese GenTL的cti文件索引 \~english The Index of Cti Files
|
||
|
||
unsigned int nReserved[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_GENTL_IF_INFO;
|
||
|
||
///< \~chinese 最大支持的GenTL接口数量 \~english The maximum number of GenTL interface supported
|
||
#define MV_MAX_GENTL_IF_NUM 256
|
||
|
||
/// \~chinese 通过GenTL枚举到的接口信息列表 \~english Inferface Information List with GenTL
|
||
typedef struct _MV_GENTL_IF_INFO_LIST_
|
||
{
|
||
unsigned int
|
||
nInterfaceNum; ///< [OUT] \~chinese 在线接口数量 \~english Online Inferface Number
|
||
MV_GENTL_IF_INFO * pIFInfo
|
||
[MV_MAX_GENTL_IF_NUM]; ///< [OUT] \~chinese 支持最多256个接口 \~english Support up to 256 inferfaces
|
||
|
||
} MV_GENTL_IF_INFO_LIST;
|
||
|
||
/// \~chinese 通过GenTL枚举到的设备信息 \~english Device Information with GenTL
|
||
typedef struct _MV_GENTL_DEV_INFO_
|
||
{
|
||
unsigned char chInterfaceID
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese GenTL接口ID \~english Interface ID
|
||
unsigned char chDeviceID
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 设备ID \~english Device ID
|
||
unsigned char chVendorName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 供应商名字 \~english Vendor Name
|
||
unsigned char chModelName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 型号名字 \~english Model Name
|
||
unsigned char chTLType
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 传输层类型 \~english GenTL Type
|
||
unsigned char chDisplayName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 设备显示名称 \~english Display Name
|
||
unsigned char chUserDefinedName
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 用户自定义名字 \~english User Defined Name
|
||
unsigned char chSerialNumber
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 序列号 \~english Serial Number
|
||
unsigned char chDeviceVersion
|
||
[INFO_MAX_BUFFER_SIZE]; ///< [OUT] \~chinese 设备版本号 \~english Device Version
|
||
unsigned int
|
||
nCtiIndex; ///< [OUT] \~chinese GenTL的cti文件索引 \~english The Index of Cti Files
|
||
|
||
unsigned int nReserved[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_GENTL_DEV_INFO;
|
||
|
||
///< \~chinese 最大支持的GenTL设备数量 \~english The maximum number of GenTL devices supported
|
||
#define MV_MAX_GENTL_DEV_NUM 256
|
||
|
||
/// \~chinese 通过GenTL枚举到的设备信息列表 \~english Device Information List with GenTL
|
||
typedef struct _MV_GENTL_DEV_INFO_LIST_
|
||
{
|
||
unsigned int
|
||
nDeviceNum; ///< [OUT] \~chinese 在线设备数量 \~english Online Device Number
|
||
MV_GENTL_DEV_INFO * pDeviceInfo
|
||
[MV_MAX_GENTL_DEV_NUM]; ///< [OUT] \~chinese 支持最多256个设备 \~english Support up to 256 devices
|
||
|
||
} MV_GENTL_DEV_INFO_LIST;
|
||
|
||
/// \~chinese 设备的访问模式 \~english Device Access Mode
|
||
#define MV_ACCESS_Exclusive \
|
||
1 /// \~chinese 独占权限,其他APP只允许读CCP寄存器 \~english Exclusive authority, other APP is only allowed to read the CCP register
|
||
#define MV_ACCESS_ExclusiveWithSwitch \
|
||
2 /// \~chinese 可以从5模式下抢占权限,然后以独占权限打开 \~english You can seize the authority from the 5 mode, and then open with exclusive authority
|
||
#define MV_ACCESS_Control \
|
||
3 /// \~chinese 控制权限,其他APP允许读所有寄存器 \~english Control authority, allows other APP reading all registers
|
||
#define MV_ACCESS_ControlWithSwitch \
|
||
4 /// \~chinese 可以从5的模式下抢占权限,然后以控制权限打开 \~english You can seize the authority from the 5 mode, and then open with control authority
|
||
#define MV_ACCESS_ControlSwitchEnable \
|
||
5 /// \~chinese 以可被抢占的控制权限打开 \~english Open with seized control authority
|
||
#define MV_ACCESS_ControlSwitchEnableWithKey \
|
||
6 /// \~chinese 可以从5的模式下抢占权限,然后以可被抢占的控制权限打开 \~english You can seize the authority from the 5 mode, and then open with seized control authority
|
||
#define MV_ACCESS_Monitor \
|
||
7 /// \~chinese 读模式打开设备,适用于控制权限下 \~english Open with read mode and is available under control authority
|
||
|
||
/// \~chinese Chunk内容 \~english The content of ChunkData
|
||
typedef struct _MV_CHUNK_DATA_CONTENT_
|
||
{
|
||
unsigned char * pChunkData; ///< [OUT] \~chinese Chunk数据 \~english Chunk Data
|
||
unsigned int nChunkID; ///< [OUT] \~chinese Chunk ID \~english Chunk ID
|
||
unsigned int nChunkLen; ///< [OUT] \~chinese Chunk的长度 \~english Chunk Length
|
||
|
||
unsigned int nReserved[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CHUNK_DATA_CONTENT;
|
||
|
||
/// \~chinese 输出帧的信息 \~english Output Frame Information
|
||
typedef struct _MV_FRAME_OUT_INFO_EX_
|
||
{
|
||
unsigned short
|
||
nWidth; ///< [OUT] \~chinese 图像宽(最大65535,超出请用nExtendWidth) \~english Image Width (over 65535, use nExtendWidth)
|
||
unsigned short
|
||
nHeight; ///< [OUT] \~chinese 图像高(最大65535,超出请用nExtendHeight) \~english Image Height(over 65535, use nExtendHeight)
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [OUT] \~chinese 像素格式 \~english Pixel Type
|
||
|
||
unsigned int nFrameNum; ///< [OUT] \~chinese 帧号 \~english Frame Number
|
||
unsigned int
|
||
nDevTimeStampHigh; ///< [OUT] \~chinese 时间戳高32位 \~english Timestamp high 32 bits
|
||
unsigned int
|
||
nDevTimeStampLow; ///< [OUT] \~chinese 时间戳低32位 \~english Timestamp low 32 bits
|
||
unsigned int
|
||
nReserved0; ///< [OUT] \~chinese 保留,8字节对齐 \~english Reserved, 8-byte aligned
|
||
int64_t
|
||
nHostTimeStamp; ///< [OUT] \~chinese 主机生成的时间戳 \~english Host-generated timestamp
|
||
|
||
unsigned int nFrameLen; ///< [OUT] \~chinese 帧的长度 \~english The Length of Frame
|
||
|
||
/// \~chinese 设备水印时标 \~english Device frame-specific time scale
|
||
unsigned int nSecondCount; ///< [OUT] \~chinese 秒数 \~english The Seconds
|
||
unsigned int
|
||
nCycleCount; ///< [OUT] \~chinese 周期数 \~english The Count of Cycle
|
||
unsigned int
|
||
nCycleOffset; ///< [OUT] \~chinese 周期偏移量 \~english The Offset of Cycle
|
||
|
||
float fGain; ///< [OUT] \~chinese 增益 \~english Gain
|
||
float fExposureTime; ///< [OUT] \~chinese 曝光时间 \~english Exposure Time
|
||
unsigned int
|
||
nAverageBrightness; ///< [OUT] \~chinese 平均亮度 \~english Average brightness
|
||
|
||
/// \~chinese 白平衡相关 \~english White balance
|
||
unsigned int nRed; ///< [OUT] \~chinese 红色 \~english Red
|
||
unsigned int nGreen; ///< [OUT] \~chinese 绿色 \~english Green
|
||
unsigned int nBlue; ///< [OUT] \~chinese 蓝色 \~english Blue
|
||
|
||
unsigned int nFrameCounter; ///< [OUT] \~chinese 总帧数 \~english Frame Counter
|
||
unsigned int
|
||
nTriggerIndex; ///< [OUT] \~chinese 触发计数 \~english Trigger Counting
|
||
|
||
unsigned int nInput; ///< [OUT] \~chinese 输入 \~english Input
|
||
unsigned int nOutput; ///< [OUT] \~chinese 输出 \~english Output
|
||
|
||
/// \~chinese ROI区域 \~english ROI Region
|
||
unsigned short nOffsetX; ///< [OUT] \~chinese 水平偏移量 \~english OffsetX
|
||
unsigned short nOffsetY; ///< [OUT] \~chinese 垂直偏移量 \~english OffsetY
|
||
unsigned short
|
||
nChunkWidth; ///< [OUT] \~chinese Chunk宽 \~english The Width of Chunk
|
||
unsigned short
|
||
nChunkHeight; ///< [OUT] \~chinese Chunk高 \~english The Height of Chunk
|
||
|
||
unsigned int
|
||
nLostPacket; ///< [OUT] \~chinese 本帧丢包数 \~english Lost Packet Number In This Frame
|
||
|
||
unsigned int
|
||
nUnparsedChunkNum; ///< [OUT] \~chinese 未解析的Chunkdata个数 \~english Unparsed Chunk Number
|
||
union {
|
||
MV_CHUNK_DATA_CONTENT *
|
||
pUnparsedChunkContent; ///< [OUT] \~chinese 未解析的Chunk \~english Unparsed Chunk Content
|
||
int64_t nAligning; ///< [OUT] \~chinese 校准 \~english Aligning
|
||
} UnparsedChunkList;
|
||
|
||
unsigned int nExtendWidth; ///< [OUT] \~chinese 图像宽(扩展变量) \~english Image Width
|
||
unsigned int nExtendHeight; ///< [OUT] \~chinese 图像高(扩展变量) \~english Image Height
|
||
|
||
unsigned int nReserved[34]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_FRAME_OUT_INFO_EX;
|
||
|
||
/// \~chinese 图像结构体,输出图像地址及图像信息 \~english Image Struct, output the pointer of Image and the information of the specific image
|
||
typedef struct _MV_FRAME_OUT_
|
||
{
|
||
unsigned char * pBufAddr; ///< [OUT] \~chinese 图像指针地址 \~english pointer of image
|
||
MV_FRAME_OUT_INFO_EX
|
||
stFrameInfo; ///< [OUT] \~chinese 图像信息 \~english information of the specific image
|
||
|
||
unsigned int nRes[16]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_FRAME_OUT;
|
||
|
||
/// \~chinese 取流策略 \~english The strategy of Grabbing
|
||
typedef enum _MV_GRAB_STRATEGY_
|
||
{
|
||
MV_GrabStrategy_OneByOne =
|
||
0, ///< \~chinese 从旧到新一帧一帧的获取图像 \~english Grab One By One
|
||
MV_GrabStrategy_LatestImagesOnly =
|
||
1, ///< \~chinese 获取列表中最新的一帧图像 \~english Grab The Latest Image
|
||
MV_GrabStrategy_LatestImages =
|
||
2, ///< \~chinese 获取列表中最新的图像 \~english Grab The Latest Images
|
||
MV_GrabStrategy_UpcomingImage =
|
||
3, ///< \~chinese 等待下一帧图像 \~english Grab The Upcoming Image
|
||
|
||
} MV_GRAB_STRATEGY;
|
||
|
||
/// \~chinese 网络传输的相关信息 \~english Network transmission information
|
||
typedef struct _MV_NETTRANS_INFO_
|
||
{
|
||
int64_t
|
||
nReceiveDataSize; ///< [OUT] \~chinese 已接收数据大小[Start和Stop之间] \~english Received Data Size
|
||
int
|
||
nThrowFrameCount; ///< [OUT] \~chinese 丢帧数量 \~english Throw frame number
|
||
unsigned int
|
||
nNetRecvFrameCount; ///< [OUT] \~chinese 已接收的帧数 \~english Received Frame Count
|
||
int64_t
|
||
nRequestResendPacketCount; ///< [OUT] \~chinese 请求重发包数 \~english Request Resend Packet Count
|
||
int64_t
|
||
nResendPacketCount; ///< [OUT] \~chinese 重发包数 \~english Resend Packet Count
|
||
|
||
} MV_NETTRANS_INFO;
|
||
|
||
/// \~chinese 信息类型 \~english Information Type
|
||
#define MV_MATCH_TYPE_NET_DETECT \
|
||
0x00000001 ///< \~chinese 网络流量和丢包信息 \~english Network traffic and packet loss information
|
||
#define MV_MATCH_TYPE_USB_DETECT \
|
||
0x00000002 ///< \~chinese host接收到来自U3V设备的字节总数 \~english The total number of bytes host received from U3V device
|
||
|
||
/// \~chinese 全匹配的一种信息结构体 \~english A fully matched information structure
|
||
typedef struct _MV_ALL_MATCH_INFO_
|
||
{
|
||
unsigned int
|
||
nType; ///< [IN] \~chinese 需要输出的信息类型,e.g. MV_MATCH_TYPE_NET_DETECT \~english Information type need to output ,e.g. MV_MATCH_TYPE_NET_DETECT
|
||
void *
|
||
pInfo; ///< [OUT] \~chinese 输出的信息缓存,由调用者分配 \~english Output information cache, which is allocated by the caller
|
||
unsigned int
|
||
nInfoSize; ///< [IN] \~chinese 信息缓存的大小 \~english Information cache size
|
||
|
||
} MV_ALL_MATCH_INFO;
|
||
|
||
/// \~chinese 网络流量和丢包信息反馈结构体,对应类型为 MV_MATCH_TYPE_NET_DETECT \~english Network traffic and packet loss feedback structure, the corresponding type is MV_MATCH_TYPE_NET_DETECT
|
||
typedef struct _MV_MATCH_INFO_NET_DETECT_
|
||
{
|
||
int64_t
|
||
nReceiveDataSize; ///< [OUT] \~chinese 已接收数据大小[Start和Stop之间] \~english Received data size
|
||
int64_t
|
||
nLostPacketCount; ///< [OUT] \~chinese 丢失的包数量 \~english Number of packets lost
|
||
unsigned int
|
||
nLostFrameCount; ///< [OUT] \~chinese 丢帧数量 \~english Number of frames lost
|
||
unsigned int
|
||
nNetRecvFrameCount; ///< [OUT] \~chinese 保留 \~english Received Frame Count
|
||
int64_t
|
||
nRequestResendPacketCount; ///< [OUT] \~chinese 请求重发包数 \~english Request Resend Packet Count
|
||
int64_t
|
||
nResendPacketCount; ///< [OUT] \~chinese 重发包数 \~english Resend Packet Count
|
||
|
||
} MV_MATCH_INFO_NET_DETECT;
|
||
|
||
/// \~chinese host收到从u3v设备端的总字节数,对应类型为 MV_MATCH_TYPE_USB_DETECT \~english The total number of bytes host received from the u3v device side, the corresponding type is MV_MATCH_TYPE_USB_DETECT
|
||
typedef struct _MV_MATCH_INFO_USB_DETECT_
|
||
{
|
||
int64_t
|
||
nReceiveDataSize; ///< [OUT] \~chinese 已接收数据大小 [Open和Close之间] \~english Received data size
|
||
unsigned int
|
||
nReceivedFrameCount; ///< [OUT] \~chinese 已收到的帧数 \~english Number of frames received
|
||
unsigned int
|
||
nErrorFrameCount; ///< [OUT] \~chinese 错误帧数 \~english Number of error frames
|
||
|
||
unsigned int
|
||
nReserved[2]; ///< \~chinese 保留 \~english Reserved
|
||
|
||
} MV_MATCH_INFO_USB_DETECT;
|
||
|
||
/// \~chinese 显示帧信息 \~english Display frame information
|
||
typedef struct _MV_DISPLAY_FRAME_INFO_
|
||
{
|
||
void * hWnd; ///< [IN] \~chinese 窗口句柄 \~english HWND
|
||
unsigned char * pData; ///< [IN] \~chinese 显示的数据 \~english Data Buffer
|
||
unsigned int nDataLen; ///< [IN] \~chinese 数据长度 \~english Data Size
|
||
unsigned short nWidth; ///< [IN] \~chinese 图像宽 \~english Width
|
||
unsigned short nHeight; ///< [IN] \~chinese 图像高 \~english Height
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 像素格式 \~english Pixel format
|
||
|
||
unsigned int nRes[4]; ///< \~chinese 保留 \~english Reserved
|
||
|
||
} MV_DISPLAY_FRAME_INFO;
|
||
|
||
typedef struct _MV_DISPLAY_FRAME_INFO_EX_
|
||
{
|
||
unsigned int nWidth; ///< [IN] \~chinese 图像宽 \~english Width
|
||
unsigned int nHeight; ///< [IN] \~chinese 图像高 \~english Height
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 像素格式 \~english Pixel type
|
||
|
||
unsigned char *
|
||
pImageBuf; ///< [IN] \~chinese 输入图像缓存 \~english Input image buffer
|
||
unsigned int
|
||
nImageBufLen; ///< [IN] \~chinese 输入图像长度 \~english Input image length
|
||
|
||
unsigned int nRes[4]; ///< \~chinese 保留 \~english Reserved
|
||
|
||
} MV_DISPLAY_FRAME_INFO_EX;
|
||
|
||
/// \~chinese 保存的3D数据格式 \~english The saved format for 3D data
|
||
enum MV_SAVE_POINT_CLOUD_FILE_TYPE
|
||
{
|
||
MV_PointCloudFile_Undefined =
|
||
0, ///< \~chinese 未定义的点云格式 \~english Undefined point cloud format
|
||
MV_PointCloudFile_PLY =
|
||
1, ///< \~chinese PLY点云格式 \~english The point cloud format named PLY
|
||
MV_PointCloudFile_CSV =
|
||
2, ///< \~chinese CSV点云格式 \~english The point cloud format named CSV
|
||
MV_PointCloudFile_OBJ =
|
||
3, ///< \~chinese OBJ点云格式 \~english The point cloud format named OBJ
|
||
|
||
};
|
||
|
||
/// \~chinese 保存3D数据到缓存 \~english Save 3D data to buffer
|
||
typedef struct _MV_SAVE_POINT_CLOUD_PARAM_
|
||
{
|
||
unsigned int
|
||
nLinePntNum; ///< [IN] \~chinese 行点数,即图像宽 \~english The number of points in each row,which is the width of the image
|
||
unsigned int
|
||
nLineNum; ///< [IN] \~chinese 行数,即图像高 \~english The number of rows,which is the height of the image
|
||
|
||
enum MvGvspPixelType
|
||
enSrcPixelType; ///< [IN] \~chinese 输入数据的像素格式 \~english The pixel format of the input data
|
||
unsigned char * pSrcData; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcDataLen; ///< [IN] \~chinese 输入数据长度 \~english Input data length
|
||
|
||
unsigned char *
|
||
pDstBuf; ///< [OUT] \~chinese 输出像素数据缓存 \~english Output pixel data buffer
|
||
unsigned int
|
||
nDstBufSize; ///< [IN] \~chinese 提供的输出缓冲区大小(nLinePntNum * nLineNum * (16*3 + 4) + 2048) \~english Output buffer size provided(nLinePntNum * nLineNum * (16*3 + 4) + 2048)
|
||
unsigned int
|
||
nDstBufLen; ///< [OUT] \~chinese 输出像素数据缓存长度 \~english Output pixel data buffer size
|
||
MV_SAVE_POINT_CLOUD_FILE_TYPE
|
||
enPointCloudFileType; ///< [IN] \~chinese 提供输出的点云文件类型 \~english Output point data file type provided
|
||
|
||
unsigned int nReserved[8]; ///< \~chinese 保留字段 \~english Reserved
|
||
|
||
} MV_SAVE_POINT_CLOUD_PARAM;
|
||
|
||
/// \~chinese 保存图片格式 \~english Save image type
|
||
enum MV_SAVE_IAMGE_TYPE
|
||
{
|
||
MV_Image_Undefined =
|
||
0, ///< \~chinese 未定义的图像格式 \~english Undefined Image Type
|
||
MV_Image_Bmp = 1, ///< \~chinese BMP图像格式 \~english BMP Image Type
|
||
MV_Image_Jpeg = 2, ///< \~chinese JPEG图像格式 \~english Jpeg Image Type
|
||
MV_Image_Png = 3, ///< \~chinese PNG图像格式 \~english Png Image Type
|
||
MV_Image_Tif = 4, ///< \~chinese TIFF图像格式 \~english TIFF Image Type
|
||
|
||
};
|
||
|
||
/// \~chinese 图片保存参数 \~english Save Image Parameters
|
||
typedef struct _MV_SAVE_IMAGE_PARAM_EX3_
|
||
{
|
||
unsigned char * pData; ///< [IN] \~chinese 输入数据缓存 \~english Input Data Buffer
|
||
unsigned int nDataLen; ///< [IN] \~chinese 输入数据长度 \~english Input Data length
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 输入数据的像素格式 \~english Input Data Pixel Format
|
||
unsigned int nWidth; ///< [IN] \~chinese 图像宽 \~english Image Width
|
||
unsigned int nHeight; ///< [IN] \~chinese 图像高 \~english Image Height
|
||
|
||
unsigned char *
|
||
pImageBuffer; ///< [OUT] \~chinese 输出图片缓存 \~english Output Image Buffer
|
||
unsigned int nImageLen; ///< [OUT] \~chinese 输出图片长度 \~english Output Image length
|
||
unsigned int
|
||
nBufferSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Output buffer size provided
|
||
enum MV_SAVE_IAMGE_TYPE
|
||
enImageType; ///< [IN] \~chinese 输出图片格式 \~english Output Image Format
|
||
unsigned int
|
||
nJpgQuality; ///< [IN] \~chinese JPG编码质量(50-99],其它格式无效 \~english Encoding quality(50-99],Other formats are invalid
|
||
|
||
unsigned int
|
||
iMethodValue; ///< [IN] \~chinese 插值方法 0-快速 1-均衡 2-最优(其它值默认为最优) \~english Bayer interpolation method 0-Fast 1-Equilibrium 2-Optimal
|
||
|
||
unsigned int nReserved[3]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_SAVE_IMAGE_PARAM_EX3;
|
||
|
||
// 保存图片到文件参数
|
||
typedef struct _MV_SAVE_IMAGE_TO_FILE_PARAM_EX_
|
||
{
|
||
unsigned int nWidth; // [IN] 图像宽
|
||
unsigned int nHeight; // [IN] 图像高
|
||
MvGvspPixelType enPixelType; // [IN] 输入数据的像素格式
|
||
unsigned char * pData; // [IN] 输入数据缓存
|
||
unsigned int nDataLen; // [IN] 输入数据大小
|
||
|
||
MV_SAVE_IAMGE_TYPE enImageType; // [IN] 输入图片格式
|
||
char * pcImagePath; // [IN] 输入文件路径
|
||
|
||
unsigned int nQuality; // [IN] JPG编码质量(50-99],PNG编码质量[0-9]
|
||
int iMethodValue; // [IN] 插值方法 0-快速 1-均衡 2-最优(其它值默认为最优)
|
||
unsigned int nReserved[8];
|
||
|
||
} MV_SAVE_IMAGE_TO_FILE_PARAM_EX;
|
||
|
||
/// \~chinese 旋转角度 \~english Rotation angle
|
||
typedef enum _MV_IMG_ROTATION_ANGLE_
|
||
{
|
||
MV_IMAGE_ROTATE_90 = 1,
|
||
MV_IMAGE_ROTATE_180 = 2,
|
||
MV_IMAGE_ROTATE_270 = 3,
|
||
|
||
} MV_IMG_ROTATION_ANGLE;
|
||
|
||
/// \~chinese 图像旋转结构体 \~english Rotate image structure
|
||
typedef struct _MV_CC_ROTATE_IMAGE_PARAM_T_
|
||
{
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 像素格式 \~english Pixel format
|
||
unsigned int nWidth; ///< [IN][OUT] \~chinese 图像宽 \~english Width
|
||
unsigned int nHeight; ///< [IN][OUT] \~chinese 图像高 \~english Height
|
||
|
||
unsigned char * pSrcData; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcDataLen; ///< [IN] \~chinese 输入数据长度 \~english Input data length
|
||
|
||
unsigned char * pDstBuf; ///< [OUT] \~chinese 输出数据缓存 \~english Output data buffer
|
||
unsigned int nDstBufLen; ///< [OUT] \~chinese 输出数据长度 \~english Output data length
|
||
unsigned int
|
||
nDstBufSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Provided output buffer size
|
||
|
||
MV_IMG_ROTATION_ANGLE
|
||
enRotationAngle; ///< [IN] \~chinese 旋转角度 \~english Rotation angle
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_ROTATE_IMAGE_PARAM;
|
||
|
||
/// \~chinese 翻转类型 \~english Flip type
|
||
typedef enum _MV_IMG_FLIP_TYPE_
|
||
{
|
||
MV_FLIP_VERTICAL = 1,
|
||
MV_FLIP_HORIZONTAL = 2,
|
||
|
||
} MV_IMG_FLIP_TYPE;
|
||
|
||
/// \~chinese 图像翻转结构体 \~english Flip image structure
|
||
typedef struct _MV_CC_FLIP_IMAGE_PARAM_T_
|
||
{
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 像素格式 \~english Pixel format
|
||
unsigned int nWidth; ///< [IN] \~chinese 图像宽 \~english Width
|
||
unsigned int nHeight; ///< [IN] \~chinese 图像高 \~english Height
|
||
|
||
unsigned char * pSrcData; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcDataLen; ///< [IN] \~chinese 输入数据长度 \~english Input data length
|
||
|
||
unsigned char * pDstBuf; ///< [OUT] \~chinese 输出数据缓存 \~english Output data buffer
|
||
unsigned int nDstBufLen; ///< [OUT] \~chinese 输出数据长度 \~english Output data length
|
||
unsigned int
|
||
nDstBufSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Provided output buffer size
|
||
|
||
MV_IMG_FLIP_TYPE enFlipType; ///< [IN] \~chinese 翻转类型 \~english Flip type
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_FLIP_IMAGE_PARAM;
|
||
|
||
/// \~chinese 像素转换结构体 \~english Pixel convert structure
|
||
typedef struct _MV_CC_PIXEL_CONVERT_PARAM_EX_
|
||
{
|
||
unsigned int nWidth; ///< [IN] \~chinese 图像宽 \~english Width
|
||
unsigned int nHeight; ///< [IN] \~chinese 图像高 \~english Height
|
||
|
||
enum MvGvspPixelType
|
||
enSrcPixelType; ///< [IN] \~chinese 源像素格式 \~english Source pixel format
|
||
unsigned char * pSrcData; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcDataLen; ///< [IN] \~chinese 输入数据长度 \~english Input data length
|
||
|
||
enum MvGvspPixelType
|
||
enDstPixelType; ///< [IN] \~chinese 目标像素格式 \~english Destination pixel format
|
||
unsigned char *
|
||
pDstBuffer; ///< [OUT] \~chinese 输出数据缓存 \~english Output data buffer
|
||
unsigned int nDstLen; ///< [OUT] \~chinese 输出数据长度 \~english Output data length
|
||
unsigned int
|
||
nDstBufferSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Provided output buffer size
|
||
|
||
unsigned int nRes[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_PIXEL_CONVERT_PARAM_EX;
|
||
|
||
/// \~chinese Gamma类型 \~english Gamma type
|
||
typedef enum _MV_CC_GAMMA_TYPE_
|
||
{
|
||
MV_CC_GAMMA_TYPE_NONE = 0, ///< \~chinese 不启用 \~english Disable
|
||
MV_CC_GAMMA_TYPE_VALUE = 1, ///< \~chinese Gamma值 \~english Gamma value
|
||
MV_CC_GAMMA_TYPE_USER_CURVE =
|
||
2, ///< \~chinese Gamma曲线 \~english Gamma curve
|
||
///< \~chinese 8位,长度:256*sizeof(unsigned char) \~english 8bit,length:256*sizeof(unsigned char)
|
||
///< \~chinese 10位,长度:1024*sizeof(unsigned short) \~english 10bit,length:1024*sizeof(unsigned short)
|
||
///< \~chinese 12位,长度:4096*sizeof(unsigned short) \~english 12bit,length:4096*sizeof(unsigned short)
|
||
///< \~chinese 16位,长度:65536*sizeof(unsigned short) \~english 16bit,length:65536*sizeof(unsigned short)
|
||
MV_CC_GAMMA_TYPE_LRGB2SRGB =
|
||
3, ///< \~chinese linear RGB to sRGB \~english linear RGB to sRGB
|
||
MV_CC_GAMMA_TYPE_SRGB2LRGB =
|
||
4, ///< \~chinese sRGB to linear RGB(仅色彩插值时支持,色彩校正时无效) \~english sRGB to linear RGB
|
||
|
||
} MV_CC_GAMMA_TYPE;
|
||
|
||
// Gamma信息
|
||
/// \~chinese Gamma信息结构体 \~english Gamma info structure
|
||
typedef struct _MV_CC_GAMMA_PARAM_T_
|
||
{
|
||
MV_CC_GAMMA_TYPE enGammaType; ///< [IN] \~chinese Gamma类型 \~english Gamma type
|
||
float fGammaValue; ///< [IN] \~chinese Gamma值:0.1 ~ 4.0 \~english Gamma value:0.1 ~ 4.0
|
||
unsigned char *
|
||
pGammaCurveBuf; ///< [IN] \~chinese Gamma曲线缓存 \~english Gamma curve buffer
|
||
unsigned int
|
||
nGammaCurveBufLen; ///< [IN] \~chinese Gamma曲线长度 \~english Gamma curve buffer size
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_GAMMA_PARAM;
|
||
|
||
/// \~chinese CCM参数 \~english CCM param
|
||
typedef struct _MV_CC_CCM_PARAM_T_
|
||
{
|
||
bool bCCMEnable; ///< [IN] \~chinese 是否启用CCM \~english CCM enable
|
||
int nCCMat
|
||
[9]; ///< [IN] \~chinese CCM矩阵(-8192~8192) \~english Color correction matrix(-8192~8192)
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_CCM_PARAM;
|
||
|
||
/// \~chinese CCM参数 \~english CCM param
|
||
typedef struct _MV_CC_CCM_PARAM_EX_T_
|
||
{
|
||
bool bCCMEnable; ///< [IN] \~chinese 是否启用CCM \~english CCM enable
|
||
int nCCMat
|
||
[9]; ///< [IN] \~chinese CCM矩阵(-65536~65536) \~english Color correction matrix(-65536~65536)
|
||
unsigned int
|
||
nCCMScale; ///< [IN] \~chinese 量化系数(2的整数幂,最大65536) \~english Quantitative scale(Integer power of 2, <= 65536)
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_CCM_PARAM_EX;
|
||
|
||
/// \~chinese 对比度调节结构体 \~english Contrast structure
|
||
typedef struct _MV_CC_CONTRAST_PARAM_T_
|
||
{
|
||
unsigned int nWidth; ///< [IN] \~chinese 图像宽度(最小8) \~english Image Width
|
||
unsigned int nHeight; ///< [IN] \~chinese 图像高度(最小8) \~english Image Height
|
||
unsigned char * pSrcBuf; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcBufLen; ///< [IN] \~chinese 输入数据大小 \~english Input data length
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 像素格式 \~english Pixel format
|
||
|
||
unsigned char * pDstBuf; ///< [OUT] \~chinese 输出数据缓存 \~english Output data buffer
|
||
unsigned int
|
||
nDstBufSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Provided output buffer size
|
||
unsigned int nDstBufLen; ///< [OUT] \~chinese 输出数据长度 \~english Output data length
|
||
|
||
unsigned int
|
||
nContrastFactor; ///< [IN] \~chinese 对比度值,[1,10000] \~english Contrast factor,[1,10000]
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_CONTRAST_PARAM;
|
||
|
||
/// \~chinese 水印信息 \~english Frame-specific information
|
||
typedef struct _MV_CC_FRAME_SPEC_INFO_
|
||
{
|
||
/// \~chinese 设备水印时标 \~english Device frame-specific time scale
|
||
unsigned int nSecondCount; ///< [OUT] \~chinese 秒数 \~english The Seconds
|
||
unsigned int
|
||
nCycleCount; ///< [OUT] \~chinese 周期数 \~english The Count of Cycle
|
||
unsigned int
|
||
nCycleOffset; ///< [OUT] \~chinese 周期偏移量 \~english The Offset of Cycle
|
||
|
||
float fGain; ///< [OUT] \~chinese 增益 \~english Gain
|
||
float fExposureTime; ///< [OUT] \~chinese 曝光时间 \~english Exposure Time
|
||
unsigned int
|
||
nAverageBrightness; ///< [OUT] \~chinese 平均亮度 \~english Average brightness
|
||
|
||
/// \~chinese 白平衡相关 \~english White balance
|
||
unsigned int nRed; ///< [OUT] \~chinese 红色 \~english Red
|
||
unsigned int nGreen; ///< [OUT] \~chinese 绿色 \~english Green
|
||
unsigned int nBlue; ///< [OUT] \~chinese 蓝色 \~english Blue
|
||
|
||
unsigned int nFrameCounter; ///< [OUT] \~chinese 总帧数 \~english Frame Counter
|
||
unsigned int
|
||
nTriggerIndex; ///< [OUT] \~chinese 触发计数 \~english Trigger Counting
|
||
|
||
unsigned int nInput; ///< [OUT] \~chinese 输入 \~english Input
|
||
unsigned int nOutput; ///< [OUT] \~chinese 输出 \~english Output
|
||
|
||
/// \~chinese ROI区域 \~english ROI Region
|
||
unsigned short nOffsetX; ///< [OUT] \~chinese 水平偏移量 \~english OffsetX
|
||
unsigned short nOffsetY; ///< [OUT] \~chinese 垂直偏移量 \~english OffsetY
|
||
unsigned short
|
||
nFrameWidth; ///< [OUT] \~chinese 水印宽 \~english The Width of Chunk
|
||
unsigned short
|
||
nFrameHeight; ///< [OUT] \~chinese 水印高 \~english The Height of Chunk
|
||
|
||
unsigned int nReserved[16]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_FRAME_SPEC_INFO;
|
||
|
||
/// \~chinese 无损解码参数 \~english High Bandwidth decode structure
|
||
typedef struct _MV_CC_HB_DECODE_PARAM_T_
|
||
{
|
||
unsigned char * pSrcBuf; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcLen; ///< [IN] \~chinese 输入数据大小 \~english Input data size
|
||
|
||
unsigned int nWidth; ///< [OUT] \~chinese 图像宽 \~english Width
|
||
unsigned int nHeight; ///< [OUT] \~chinese 图像高 \~english Height
|
||
unsigned char * pDstBuf; ///< [OUT] \~chinese 输出数据缓存 \~english Output data buffer
|
||
unsigned int
|
||
nDstBufSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Provided output buffer size
|
||
unsigned int nDstBufLen; ///< [OUT] \~chinese 输出数据大小 \~english Output data size
|
||
enum MvGvspPixelType
|
||
enDstPixelType; ///< [OUT] \~chinese 输出的像素格式 \~english Output pixel format
|
||
|
||
MV_CC_FRAME_SPEC_INFO
|
||
stFrameSpecInfo; ///< [OUT] \~chinese 水印信息 \~english Frame Spec Info
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_HB_DECODE_PARAM;
|
||
|
||
/// \~chinese 录像格式定义 \~english Record Format Type
|
||
typedef enum _MV_RECORD_FORMAT_TYPE_
|
||
{
|
||
MV_FormatType_Undefined =
|
||
0, ///< \~chinese 未定义的录像格式 \~english Undefined Recode Format Type
|
||
MV_FormatType_AVI =
|
||
1, ///< \~chinese AVI录像格式 \~english AVI Recode Format Type
|
||
|
||
} MV_RECORD_FORMAT_TYPE;
|
||
|
||
/// \~chinese 录像参数 \~english Record Parameters
|
||
typedef struct _MV_CC_RECORD_PARAM_T_
|
||
{
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [IN] \~chinese 输入数据的像素格式 \~english Pixel Type
|
||
|
||
unsigned short nWidth; ///< [IN] \~chinese 图像宽(2的倍数) \~english Width
|
||
unsigned short nHeight; ///< [IN] \~chinese 图像高(2的倍数) \~english Height
|
||
|
||
float fFrameRate; ///< [IN] \~chinese 帧率fps(大于1/16) \~english The Rate of Frame
|
||
unsigned int nBitRate; ///< [IN] \~chinese 码率kbps(128-16*1024) \~english The Rate of Bitrate
|
||
|
||
MV_RECORD_FORMAT_TYPE
|
||
enRecordFmtType; ///< [IN] \~chinese 录像格式 \~english Recode Format Type
|
||
|
||
char *
|
||
strFilePath; ///< [IN] \~chinese 录像文件存放路径(如果路径中存在中文,需转成utf-8) \~english File Path
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_RECORD_PARAM;
|
||
|
||
/// \~chinese 传入的图像数据 \~english Input Data
|
||
typedef struct _MV_CC_INPUT_FRAME_INFO_T_
|
||
{
|
||
unsigned char * pData; ///< [IN] \~chinese 图像数据指针 \~english Record Data
|
||
unsigned int
|
||
nDataLen; ///< [IN] \~chinese 图像大小 \~english The Length of Record Data
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_INPUT_FRAME_INFO;
|
||
|
||
/// \~chinese 采集模式 \~english Acquisition mode
|
||
typedef enum _MV_CAM_ACQUISITION_MODE_
|
||
{
|
||
MV_ACQ_MODE_SINGLE = 0, ///< \~chinese 单帧模式 \~english Single Mode
|
||
MV_ACQ_MODE_MUTLI = 1, ///< \~chinese 多帧模式 \~english Multi Mode
|
||
MV_ACQ_MODE_CONTINUOUS = 2, ///< \~chinese 持续采集模式 \~english Continuous Mode
|
||
|
||
} MV_CAM_ACQUISITION_MODE;
|
||
|
||
/// \~chinese 增益模式 \~english Gain Mode
|
||
typedef enum _MV_CAM_GAIN_MODE_
|
||
{
|
||
MV_GAIN_MODE_OFF = 0, ///< \~chinese 关闭 \~english Single Mode
|
||
MV_GAIN_MODE_ONCE = 1, ///< \~chinese 一次 \~english Multi Mode
|
||
MV_GAIN_MODE_CONTINUOUS =
|
||
2, ///< \~chinese 连续 \~english Continuous Mode
|
||
|
||
} MV_CAM_GAIN_MODE;
|
||
|
||
/// \~chinese 曝光模式 \~english Exposure Mode
|
||
typedef enum _MV_CAM_EXPOSURE_MODE_
|
||
{
|
||
MV_EXPOSURE_MODE_TIMED = 0, ///< \~chinese 时间 \~english Timed
|
||
MV_EXPOSURE_MODE_TRIGGER_WIDTH =
|
||
1, ///< \~chinese 触发脉冲宽度 \~english TriggerWidth
|
||
} MV_CAM_EXPOSURE_MODE;
|
||
|
||
/// \~chinese 自动曝光模式 \~english Auto Exposure Mode
|
||
typedef enum _MV_CAM_EXPOSURE_AUTO_MODE_
|
||
{
|
||
MV_EXPOSURE_AUTO_MODE_OFF = 0, ///< \~chinese 关闭 \~english Off
|
||
MV_EXPOSURE_AUTO_MODE_ONCE = 1, ///< \~chinese 一次 \~english Once
|
||
MV_EXPOSURE_AUTO_MODE_CONTINUOUS =
|
||
2, ///< \~chinese 连续 \~english Continuous
|
||
|
||
} MV_CAM_EXPOSURE_AUTO_MODE;
|
||
|
||
/// \~chinese 触发模式 \~english Trigger Mode
|
||
typedef enum _MV_CAM_TRIGGER_MODE_
|
||
{
|
||
MV_TRIGGER_MODE_OFF = 0, ///< \~chinese 关闭 \~english Off
|
||
MV_TRIGGER_MODE_ON = 1, ///< \~chinese 打开 \~english ON
|
||
|
||
} MV_CAM_TRIGGER_MODE;
|
||
|
||
/// \~chinese Gamma选择器 \~english Gamma Selector
|
||
typedef enum _MV_CAM_GAMMA_SELECTOR_
|
||
{
|
||
MV_GAMMA_SELECTOR_USER =
|
||
1, ///< \~chinese 用户 \~english Gamma Selector User
|
||
MV_GAMMA_SELECTOR_SRGB =
|
||
2, ///< \~chinese sRGB \~english Gamma Selector sRGB
|
||
|
||
} MV_CAM_GAMMA_SELECTOR;
|
||
|
||
/// \~chinese 白平衡 \~english White Balance
|
||
typedef enum _MV_CAM_BALANCEWHITE_AUTO_
|
||
{
|
||
MV_BALANCEWHITE_AUTO_OFF = 0, ///< \~chinese 关闭 \~english Off
|
||
MV_BALANCEWHITE_AUTO_ONCE = 2, ///< \~chinese 一次 \~english Once
|
||
MV_BALANCEWHITE_AUTO_CONTINUOUS =
|
||
1, ///< \~chinese 连续 \~english Continuous
|
||
|
||
} MV_CAM_BALANCEWHITE_AUTO;
|
||
|
||
/// \~chinese 触发源 \~english Trigger Source
|
||
typedef enum _MV_CAM_TRIGGER_SOURCE_
|
||
{
|
||
MV_TRIGGER_SOURCE_LINE0 = 0, ///< \~chinese Line0 \~english Line0
|
||
MV_TRIGGER_SOURCE_LINE1 = 1, ///< \~chinese Line1 \~english Line1
|
||
MV_TRIGGER_SOURCE_LINE2 = 2, ///< \~chinese Line2 \~english Line2
|
||
MV_TRIGGER_SOURCE_LINE3 = 3, ///< \~chinese Line3 \~english Line3
|
||
MV_TRIGGER_SOURCE_COUNTER0 = 4, ///< \~chinese Conuter0 \~english Conuter0
|
||
|
||
MV_TRIGGER_SOURCE_SOFTWARE = 7, ///< \~chinese 软触发 \~english Software
|
||
MV_TRIGGER_SOURCE_FrequencyConverter =
|
||
8, ///< \~chinese 变频器 \~english Frequency Converter
|
||
|
||
} MV_CAM_TRIGGER_SOURCE;
|
||
|
||
/// \~chinese GigEVision IP配置 \~english GigEVision IP Configuration
|
||
#define MV_IP_CFG_STATIC 0x05000000 ///< \~chinese 静态 \~english Static
|
||
#define MV_IP_CFG_DHCP 0x06000000 ///< \~chinese DHCP \~english DHCP
|
||
#define MV_IP_CFG_LLA 0x04000000 ///< \~chinese LLA \~english LLA
|
||
|
||
/// \~chinese GigEVision网络传输模式 \~english GigEVision Net Transfer Mode
|
||
#define MV_NET_TRANS_DRIVER 0x00000001 ///< \~chinese 驱动 \~english Driver
|
||
#define MV_NET_TRANS_SOCKET 0x00000002 ///< \~chinese Socket \~english Socket
|
||
|
||
/// \~chinese CameraLink波特率 \~english CameraLink Baud Rates (CLUINT32)
|
||
#define MV_CAML_BAUDRATE_9600 0x00000001 ///< \~chinese 9600 \~english 9600
|
||
#define MV_CAML_BAUDRATE_19200 \
|
||
0x00000002 ///< \~chinese 19200 \~english 19200
|
||
#define MV_CAML_BAUDRATE_38400 \
|
||
0x00000004 ///< \~chinese 38400 \~english 38400
|
||
#define MV_CAML_BAUDRATE_57600 \
|
||
0x00000008 ///< \~chinese 57600 \~english 57600
|
||
#define MV_CAML_BAUDRATE_115200 \
|
||
0x00000010 ///< \~chinese 115200 \~english 115200
|
||
#define MV_CAML_BAUDRATE_230400 \
|
||
0x00000020 ///< \~chinese 230400 \~english 230400
|
||
#define MV_CAML_BAUDRATE_460800 \
|
||
0x00000040 ///< \~chinese 460800 \~english 460800
|
||
#define MV_CAML_BAUDRATE_921600 \
|
||
0x00000080 ///< \~chinese 921600 \~english 921600
|
||
#define MV_CAML_BAUDRATE_AUTOMAX \
|
||
0x40000000 ///< \~chinese 最大值 \~english Auto Max
|
||
|
||
/// \~chinese 异常消息类型 \~english Exception message type
|
||
#define MV_EXCEPTION_DEV_DISCONNECT \
|
||
0x00008001 ///< \~chinese 设备断开连接 \~english The device is disconnected
|
||
#define MV_EXCEPTION_VERSION_CHECK \
|
||
0x00008002 ///< \~chinese SDK与驱动版本不匹配 \~english SDK does not match the driver version
|
||
|
||
/// \~chinese U3V流异常类型
|
||
typedef enum _MV_CC_STREAM_EXCEPTION_TYPE_
|
||
{
|
||
MV_CC_STREAM_EXCEPTION_ABNORMAL_IMAGE = 0x4001, ///< \~chinese 异常的图像,该帧被丢弃
|
||
MV_CC_STREAM_EXCEPTION_LIST_OVERFLOW = 0x4002, ///< \~chinese 缓存列表溢出,清除最旧的一帧
|
||
MV_CC_STREAM_EXCEPTION_LIST_EMPTY = 0x4003, ///< \~chinese 缓存列表为空,该帧被丢弃
|
||
MV_CC_STREAM_EXCEPTION_RECONNECTION = 0x4004, ///< \~chinese 断流恢复
|
||
MV_CC_STREAM_EXCEPTION_DISCONNECTED = 0x4005, ///< \~chinese 断流,恢复失败,取流被中止
|
||
MV_CC_STREAM_EXCEPTION_DEVICE = 0x4006, ///< \~chinese 设备异常,取流被中止
|
||
|
||
} MV_CC_STREAM_EXCEPTION_TYPE;
|
||
|
||
///< \~chinese 设备Event事件名称最大长度 \~english Max length of event name
|
||
#define MAX_EVENT_NAME_SIZE 128
|
||
|
||
/// \~chinese Event事件回调信息\ \~english Event callback infomation
|
||
typedef struct _MV_EVENT_OUT_INFO_
|
||
{
|
||
char EventName
|
||
[MAX_EVENT_NAME_SIZE]; ///< [OUT] \~chinese Event名称 \~english Event name
|
||
|
||
unsigned short nEventID; ///< [OUT] \~chinese Event号 \~english Event ID
|
||
unsigned short
|
||
nStreamChannel; ///< [OUT] \~chinese 流通道序号 \~english Circulation number
|
||
|
||
unsigned int nBlockIdHigh; ///< [OUT] \~chinese 帧号高位 \~english BlockId high
|
||
unsigned int nBlockIdLow; ///< [OUT] \~chinese 帧号低位 \~english BlockId low
|
||
|
||
unsigned int
|
||
nTimestampHigh; ///< [OUT] \~chinese 时间戳高位 \~english Timestramp high
|
||
unsigned int nTimestampLow; ///< [OUT] \~chinese 时间戳低位 \~english Timestramp low
|
||
|
||
void * pEventData; ///< [OUT] \~chinese Event数据 \~english Event data
|
||
unsigned int nEventDataSize; ///< [OUT] \~chinese Event数据长度 \~english Event data len
|
||
|
||
unsigned int nReserved[16]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_EVENT_OUT_INFO;
|
||
|
||
/// \~chinese 文件存取 \~english File Access
|
||
typedef struct _MV_CC_FILE_ACCESS_T
|
||
{
|
||
const char * pUserFileName; ///< [IN] \~chinese 用户文件名 \~english User file name
|
||
const char * pDevFileName; ///< [IN] \~chinese 设备文件名 \~english Device file name
|
||
|
||
unsigned int nReserved[32]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_FILE_ACCESS;
|
||
|
||
/// \~chinese 文件存取 \~english File Access
|
||
typedef struct _MV_CC_FILE_ACCESS_E
|
||
{
|
||
char *
|
||
pUserFileBuf; ///< [IN] \~chinese 用户数据缓存 \~english User data Buffer
|
||
unsigned int
|
||
pFileBufSize; ///< [IN] \~chinese 用户数据缓存大小 \~english data buffer size
|
||
unsigned int
|
||
pFileBufLen; ///< [OUT][IN] \~chinese 文件数据缓存总长度(读取时输出文件数据总长度,写入时输入文件数据总长度) \~english data buffer len
|
||
const char *
|
||
pDevFileName; ///< [IN] \~chinese 设备文件名 \~english Device file name
|
||
|
||
unsigned int nReserved
|
||
[32]; ///< \~chinese 预留 \~english Reserved
|
||
} MV_CC_FILE_ACCESS_EX;
|
||
|
||
/// \~chinese 文件存取进度 \~english File Access Progress
|
||
typedef struct _MV_CC_FILE_ACCESS_PROGRESS_T
|
||
{
|
||
int64_t nCompleted; ///< [OUT] \~chinese 已完成的长度 \~english Completed Length
|
||
int64_t nTotal; ///< [OUT] \~chinese 总长度 \~english Total Length
|
||
|
||
unsigned int nReserved[8]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_CC_FILE_ACCESS_PROGRESS;
|
||
|
||
/// \~chinese Gige的传输类型 \~english The transmission type of Gige
|
||
typedef enum _MV_GIGE_TRANSMISSION_TYPE_
|
||
{
|
||
MV_GIGE_TRANSTYPE_UNICAST =
|
||
0x0, ///< \~chinese 表示单播(默认) \~english Unicast mode
|
||
MV_GIGE_TRANSTYPE_MULTICAST =
|
||
0x1, ///< \~chinese 表示组播(组播IP范围[224.*.*.*-239.*.*.*]) \~english Multicast mode
|
||
MV_GIGE_TRANSTYPE_LIMITEDBROADCAST =
|
||
0x2, ///< \~chinese 表示局域网内广播,暂不支持 \~english Limited broadcast mode,not support
|
||
MV_GIGE_TRANSTYPE_SUBNETBROADCAST =
|
||
0x3, ///< \~chinese 表示子网内广播,暂不支持 \~english Subnet broadcast mode,not support
|
||
MV_GIGE_TRANSTYPE_CAMERADEFINED =
|
||
0x4, ///< \~chinese 表示从设备获取,暂不支持 \~english Transtype from camera,not support
|
||
MV_GIGE_TRANSTYPE_UNICAST_DEFINED_PORT =
|
||
0x5, ///< \~chinese 表示用户自定义应用端接收图像数据Port号 \~english User Defined Receive Data Port
|
||
MV_GIGE_TRANSTYPE_UNICAST_WITHOUT_RECV =
|
||
0x00010000, ///< \~chinese 表示设置了单播,但本实例不接收图像数据 \~english Unicast without receive data
|
||
MV_GIGE_TRANSTYPE_MULTICAST_WITHOUT_RECV =
|
||
0x00010001, ///< \~chinese 表示组播模式,但本实例不接收图像数据 \~english Multicast without receive data
|
||
|
||
} MV_GIGE_TRANSMISSION_TYPE;
|
||
|
||
/// \~chinese 网络传输模式 \~english Transmission type
|
||
typedef struct _MV_TRANSMISSION_TYPE_T
|
||
{
|
||
MV_GIGE_TRANSMISSION_TYPE
|
||
enTransmissionType; ///< [IN] \~chinese 传输模式 \~english Transmission type
|
||
unsigned int nDestIp; ///< [IN] \~chinese 目标IP,组播模式下有意义 \~english Destination IP
|
||
unsigned short
|
||
nDestPort; ///< [IN] \~chinese 目标Port,组播模式下有意义 \~english Destination port
|
||
|
||
unsigned int nReserved[32]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_TRANSMISSION_TYPE;
|
||
|
||
/// \~chinese 动作命令信息 \~english Action Command
|
||
typedef struct _MV_ACTION_CMD_INFO_T
|
||
{
|
||
unsigned int
|
||
nDeviceKey; ///< [IN] \~chinese 设备密钥 \~english Device Key;
|
||
unsigned int
|
||
nGroupKey; ///< [IN] \~chinese 组键 \~english Group Key
|
||
unsigned int
|
||
nGroupMask; ///< [IN] \~chinese 组掩码 \~english Group Mask
|
||
|
||
unsigned int
|
||
bActionTimeEnable; ///< [IN] \~chinese 只有设置成1时Action Time才有效,非1时无效 \~english Action Time Enable
|
||
int64_t
|
||
nActionTime; ///< [IN] \~chinese 预定的时间,和主频有关 \~english Action Time
|
||
|
||
const char *
|
||
pBroadcastAddress; ///< [IN] \~chinese 广播包地址 \~english Broadcast Address
|
||
unsigned int
|
||
nTimeOut; ///< [IN] \~chinese 等待ACK的超时时间,如果为0表示不需要ACK \~english TimeOut
|
||
|
||
unsigned int
|
||
bSpecialNetEnable; ///< [IN] \~chinese 只有设置成1时指定的网卡IP才有效,非1时无效 \~english Special IP Enable
|
||
unsigned int
|
||
nSpecialNetIP; ///< [IN] \~chinese 指定的网卡IP \~english Special Net IP address
|
||
|
||
unsigned int nReserved
|
||
[14]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_ACTION_CMD_INFO;
|
||
|
||
/// \~chinese 动作命令返回信息 \~english Action Command Result
|
||
typedef struct _MV_ACTION_CMD_RESULT_T
|
||
{
|
||
unsigned char strDeviceAddress
|
||
[12 + 3 + 1]; ///< [OUT] \~chinese 设备IP \~english IP address of the device
|
||
|
||
int
|
||
nStatus; ///< [OUT] \~chinese 状态码 \~english status code returned by the device
|
||
//1.0x0000:success.
|
||
//2.0x8001:Command is not supported by the device.
|
||
//3.0x8013:The device is not synchronized to a master clock to be used as time reference.
|
||
//4.0x8015:A device queue or packet data has overflowed.
|
||
//5.0x8016:The requested scheduled action command was requested at a time that is already past.
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MV_ACTION_CMD_RESULT;
|
||
|
||
/// \~chinese 动作命令返回信息列表 \~english Action Command Result List
|
||
typedef struct _MV_ACTION_CMD_RESULT_LIST_T
|
||
{
|
||
unsigned int
|
||
nNumResults; ///< [OUT] \~chinese 返回值个数 \~english Number of returned values
|
||
MV_ACTION_CMD_RESULT *
|
||
pResults; ///< [OUT] \~chinese 动作命令结果 \~english Reslut of action command
|
||
|
||
} MV_ACTION_CMD_RESULT_LIST;
|
||
|
||
/// \~chinese 每个节点对应的接口类型 \~english Interface type corresponds to each node
|
||
enum MV_XML_InterfaceType
|
||
{
|
||
IFT_IValue, ///< \~chinese Value \~english IValue interface
|
||
IFT_IBase, ///< \~chinese Base \~english IBase interface
|
||
IFT_IInteger, ///< \~chinese Integer \~english IInteger interface
|
||
IFT_IBoolean, ///< \~chinese Boolean \~english IBoolean interface
|
||
IFT_ICommand, ///< \~chinese Command \~english ICommand interface
|
||
IFT_IFloat, ///< \~chinese Float \~english IFloat interface
|
||
IFT_IString, ///< \~chinese String \~english IString interface
|
||
IFT_IRegister, ///< \~chinese Register \~english IRegister interface
|
||
IFT_ICategory, ///< \~chinese Category \~english ICategory interface
|
||
IFT_IEnumeration, ///< \~chinese Enumeration \~english IEnumeration interface
|
||
IFT_IEnumEntry, ///< \~chinese EnumEntry \~english IEnumEntry interface
|
||
IFT_IPort, ///< \~chinese Port \~english IPort interface
|
||
};
|
||
|
||
/// \~chinese 节点的访问模式 \~english Node Access Mode
|
||
enum MV_XML_AccessMode
|
||
{
|
||
AM_NI, ///< \~chinese 不可实现 \~english Not implemented
|
||
AM_NA, ///< \~chinese 不可用 \~english Not available
|
||
AM_WO, ///< \~chinese 只写 \~english Write Only
|
||
AM_RO, ///< \~chinese 只读 \~english Read Only
|
||
AM_RW, ///< \~chinese 读写 \~english Read and Write
|
||
AM_Undefined, ///< \~chinese 未定义 \~english Object is not yet initialized
|
||
AM_CycleDetect, ///< \~chinese 内部用于AccessMode循环检测 \~english used internally for AccessMode cycle detection
|
||
};
|
||
|
||
/// \~chinese 最大XML符号数 \~english Max XML Symbolic Number
|
||
#define MV_MAX_XML_SYMBOLIC_NUM 64
|
||
/// \~chinese 枚举类型值 \~english Enumeration Value
|
||
typedef struct _MVCC_ENUMVALUE_T
|
||
{
|
||
unsigned int nCurValue; ///< [OUT] \~chinese 当前值 \~english Current Value
|
||
unsigned int
|
||
nSupportedNum; ///< [OUT] \~chinese 数据的有效数据个数 \~english Number of valid data
|
||
unsigned int nSupportValue
|
||
[MV_MAX_XML_SYMBOLIC_NUM]; ///< [OUT] \~chinese 支持的枚举值 \~english Support Value
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_ENUMVALUE;
|
||
|
||
/// \~chinese 最大枚举条目对应的符号长度 \~english Max Enum Entry Symbolic Number
|
||
#define MV_MAX_SYMBOLIC_LEN 64
|
||
/// \~chinese 枚举类型条目 \~english Enumeration Entry
|
||
typedef struct _MVCC_ENUMENTRY_T
|
||
{
|
||
unsigned int nValue; ///< [IN] \~chinese 指定值 \~english Value
|
||
char
|
||
chSymbolic[MV_MAX_SYMBOLIC_LEN]; ///< [OUT] \~chinese 指定值对应的符号 \~english Symbolic
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_ENUMENTRY;
|
||
|
||
/// \~chinese Int类型值 \~english Int Value
|
||
typedef struct _MVCC_INTVALUE_T
|
||
{
|
||
unsigned int nCurValue; ///< [OUT] \~chinese 当前值 \~english Current Value
|
||
unsigned int nMax; ///< [OUT] \~chinese 最大值 \~english Max
|
||
unsigned int nMin; ///< [OUT] \~chinese 最小值 \~english Min
|
||
unsigned int nInc; ///< [OUT] \~chinese \~english Inc
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_INTVALUE;
|
||
|
||
/// \~chinese Int类型值Ex \~english Int Value Ex
|
||
typedef struct _MVCC_INTVALUE_EX_T
|
||
{
|
||
int64_t nCurValue; ///< [OUT] \~chinese 当前值 \~english Current Value
|
||
int64_t nMax; ///< [OUT] \~chinese 最大值 \~english Max
|
||
int64_t nMin; ///< [OUT] \~chinese 最小值 \~english Min
|
||
int64_t nInc; ///< [OUT] \~chinese Inc \~english Inc
|
||
|
||
unsigned int nReserved[16]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_INTVALUE_EX;
|
||
|
||
/// \~chinese Float类型值 \~english Float Value
|
||
typedef struct _MVCC_FLOATVALUE_T
|
||
{
|
||
float fCurValue; ///< [OUT] \~chinese 当前值 \~english Current Value
|
||
float fMax; ///< [OUT] \~chinese 最大值 \~english Max
|
||
float fMin; ///< [OUT] \~chinese 最小值 \~english Min
|
||
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_FLOATVALUE;
|
||
|
||
/// \~chinese String类型值 \~english String Value
|
||
typedef struct _MVCC_STRINGVALUE_T
|
||
{
|
||
char chCurValue[256]; ///< [OUT] \~chinese 当前值 \~english Current Value
|
||
|
||
int64_t nMaxLength; ///< [OUT] \~chinese 最大长度 \~english MaxLength
|
||
unsigned int nReserved[2]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_STRINGVALUE;
|
||
|
||
/// \~chinese 辅助线颜色 \~english Color of Auxiliary Line
|
||
typedef struct _MVCC_COLORF
|
||
{
|
||
float
|
||
fR; ///< [IN] \~chinese 红色,根据像素颜色的相对深度,范围为[0.0 , 1.0],代表着[0, 255]的颜色深度 \~english Red,Range[0.0, 1.0]
|
||
float
|
||
fG; ///< [IN] \~chinese 绿色,根据像素颜色的相对深度,范围为[0.0 , 1.0],代表着[0, 255]的颜色深度 \~english Green,Range[0.0, 1.0]
|
||
float
|
||
fB; ///< [IN] \~chinese 蓝色,根据像素颜色的相对深度,范围为[0.0 , 1.0],代表着[0, 255]的颜色深度 \~english Blue,Range[0.0, 1.0]
|
||
float
|
||
fAlpha; ///< [IN] \~chinese 透明度,根据像素颜色的相对透明度,范围为[0.0 , 1.0] (此参数功能暂不支持) \~english Alpha,Range[0.0, 1.0](Not Support)
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_COLORF;
|
||
|
||
/// \~chinese 自定义点 \~english Point defined
|
||
typedef struct _MVCC_POINTF
|
||
{
|
||
float
|
||
fX; ///< [IN] \~chinese 该点距离图像左边缘距离,根据图像的相对位置,范围为[0.0 , 1.0] \~english Distance From Left,Range[0.0, 1.0]
|
||
float
|
||
fY; ///< [IN] \~chinese 该点距离图像上边缘距离,根据图像的相对位置,范围为[0.0 , 1.0] \~english Distance From Top,Range[0.0, 1.0]
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_POINTF;
|
||
|
||
/// \~chinese 矩形框区域信息 \~english Rect Area Info
|
||
typedef struct _MVCC_RECT_INFO
|
||
{
|
||
float
|
||
fTop; ///< [IN] \~chinese 矩形上边缘距离图像上边缘的距离,根据图像的相对位置,范围为[0.0 , 1.0] \~english Distance From Top,Range[0, 1.0]
|
||
float
|
||
fBottom; ///< [IN] \~chinese 矩形下边缘距离图像上边缘的距离,根据图像的相对位置,范围为[0.0 , 1.0] \~english Distance From Top,Range[0, 1.0]
|
||
float
|
||
fLeft; ///< [IN] \~chinese 矩形左边缘距离图像左边缘的距离,根据图像的相对位置,范围为[0.0 , 1.0] \~english Distance From Left,Range[0, 1.0]
|
||
float
|
||
fRight; ///< [IN] \~chinese 矩形右边缘距离图像左边缘的距离,根据图像的相对位置,范围为[0.0 , 1.0] \~english Distance From Left,Range[0, 1.0]
|
||
|
||
MVCC_COLORF
|
||
stColor; ///< [IN] \~chinese 辅助线颜色 \~english Color of Auxiliary Line
|
||
unsigned int
|
||
nLineWidth; ///< [IN] \~chinese 辅助线宽度,宽度只能是1或2 \~english Width of Auxiliary Line, width is 1 or 2
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_RECT_INFO;
|
||
|
||
/// \~chinese 圆形框区域信息 \~english Circle Area Info
|
||
typedef struct _MVCC_CIRCLE_INFO
|
||
{
|
||
MVCC_POINTF
|
||
stCenterPoint; ///< [IN] \~chinese 圆心信息 \~english Circle Point Info
|
||
|
||
float
|
||
fR1; ///< [IN] \~chinese 宽向半径,根据图像的相对位置[0, 1.0],半径与圆心的位置有关,需保证画出的圆在显示框范围之内,否则报错 \~english Windth Radius, Range[0, 1.0]
|
||
float
|
||
fR2; ///< [IN] \~chinese 高向半径,根据图像的相对位置[0, 1.0],半径与圆心的位置有关,需保证画出的圆在显示框范围之内,否则报错 \~english Height Radius, Range[0, 1.0]
|
||
|
||
MVCC_COLORF
|
||
stColor; ///< [IN] \~chinese 辅助线颜色信息 \~english Color of Auxiliary Line
|
||
unsigned int
|
||
nLineWidth; ///< [IN] \~chinese 辅助线宽度,宽度只能是1或2 \~english Width of Auxiliary Line, width is 1 or 2
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_CIRCLE_INFO;
|
||
|
||
/// \~chinese 线条辅助线信息 \~english Linear Auxiliary Line Info
|
||
typedef struct _MVCC_LINES_INFO
|
||
{
|
||
MVCC_POINTF
|
||
stStartPoint; ///< [IN] \~chinese 线条辅助线的起始点坐标 \~english The Start Point of Auxiliary Line
|
||
MVCC_POINTF
|
||
stEndPoint; ///< [IN] \~chinese 线条辅助线的终点坐标 \~english The End Point of Auxiliary Line
|
||
MVCC_COLORF
|
||
stColor; ///< [IN] \~chinese 辅助线颜色信息 \~english Color of Auxiliary Line
|
||
unsigned int
|
||
nLineWidth; ///< [IN] \~chinese 辅助线宽度,宽度只能是1或2 \~english Width of Auxiliary Line, width is 1 or 2
|
||
unsigned int nReserved[4]; ///< \~chinese 预留 \~english Reserved
|
||
|
||
} MVCC_LINES_INFO;
|
||
|
||
///< \~chinese 分时曝光时最多将源图像拆分的个数 \~english The maximum number of source image to be split in time-division exposure
|
||
#define MV_MAX_SPLIT_NUM 8
|
||
|
||
/// \~chinese 图像重构的方式 \~english Image reconstruction method
|
||
typedef enum _MV_IMAGE_RECONSTRUCTION_METHOD_
|
||
{
|
||
MV_SPLIT_BY_LINE =
|
||
1, ///< \~chinese 源图像按行拆分成多张图像 \~english Source image split into multiple images by line
|
||
|
||
} MV_IMAGE_RECONSTRUCTION_METHOD;
|
||
|
||
/// \~chinese 图像重构后的图像列表 \~english List of images after image reconstruction
|
||
typedef struct _MV_OUTPUT_IMAGE_INFO_
|
||
{
|
||
unsigned int
|
||
nWidth; ///< [OUT] \~chinese 源图像宽 \~english Source Image Width
|
||
unsigned int
|
||
nHeight; ///< [OUT] \~chinese 源图像高 \~english Source Image Height
|
||
enum MvGvspPixelType
|
||
enPixelType; ///< [OUT] \~chinese 像素格式 \~english Pixel format
|
||
|
||
unsigned char *
|
||
pBuf; ///< [IN][OUT] \~chinese 输出数据缓存 \~english Output data buffer
|
||
unsigned int
|
||
nBufLen; ///< [OUT] \~chinese 输出数据长度 \~english Output data length
|
||
unsigned int
|
||
nBufSize; ///< [IN] \~chinese 提供的输出缓冲区大小 \~english Provided output buffer size
|
||
|
||
unsigned int nRes[8]; ///< \~chinese 预留 \~english Reserved
|
||
} MV_OUTPUT_IMAGE_INFO;
|
||
|
||
/// \~chinese 重构图像参数信息 \~english Restructure image parameters
|
||
typedef struct _MV_RECONSTRUCT_IMAGE_PARAM_
|
||
{
|
||
unsigned int nWidth; ///< [IN] \~chinese 源图像宽 \~english Source Image Width
|
||
unsigned int nHeight; ///< [IN] \~chinese 源图像高 \~english Source Image Height
|
||
enum MvGvspPixelType enPixelType; ///< [IN] \~chinese 像素格式 \~english Pixel format
|
||
|
||
unsigned char * pSrcData; ///< [IN] \~chinese 输入数据缓存 \~english Input data buffer
|
||
unsigned int nSrcDataLen; ///< [IN] \~chinese 输入数据长度 \~english Input data length
|
||
|
||
unsigned int nExposureNum; ///< [IN] \~chinese 曝光个数(1-8] \~english Exposure number
|
||
MV_IMAGE_RECONSTRUCTION_METHOD
|
||
enReconstructMethod; ///< [IN] \~chinese 图像重构方式 \~english Image restructuring method
|
||
|
||
MV_OUTPUT_IMAGE_INFO stDstBufList
|
||
[MV_MAX_SPLIT_NUM]; ///< [OUT] \~chinese 输出数据缓存信息 \~english Output data info
|
||
|
||
unsigned int nRes[4];
|
||
} MV_RECONSTRUCT_IMAGE_PARAM;
|
||
|
||
#endif /* _MV_CAMERA_PARAMS_H_ */
|