设备网络SDK开发使用手册 |
获取设备能力集。
BOOL NET_DVR_GetDeviceAbility( LONG lUserID, DWORD dwAbilityType, char *pInBuf, DWORD dwInLength, char *pOutBuf, DWORD dwOutLength );
宏定义 | 宏定义值 | 含义 |
---|---|---|
DEVICE_ABILITY_INFO | 0x011 | 设备通用能力类型,具体能力根据发送的能力节点来区分 |
VCA_DEV_ABILITY | 0x100 | 智能设备的能力 |
VCA_CHAN_ABILITY | 0x110 | 智能通道的能力 |
TRUE表示成功,FALSE表示失败。接口返回失败请调用NET_DVR_GetLastError获取错误码,通过错误码判断出错原因。
以下是该接口可能返回的错误值
错误类型 | 错误值 | 错误信息 |
---|---|---|
NET_DVR_NOERROR | 0 | 没有错误。 |
NET_DVR_NOINIT | 3 | SDK未初始化。 |
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。 |
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。 |
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。 |
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。 |
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。 |
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。 |
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。 |
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。 |
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。 |
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。 |
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。 |
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。 |
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断,此错误通常是由于连接中断或目的地不可达。 |
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。 |
接口中pInBuf参数的具体定义格式按照不同的设备规定有所不同,可以是以结构体的形式或者XML描述方式。同样地,参数pOutBuf的输出表达格式也按不同的设备规定可以是以结构体的形式或者XML描述方式。前6种能力描述都是以XML格式给出,详见各产品的能力描述解析方法,这里不进行详细说明。下表列出了其余能力类型获取时,需要输入参数和输出参数的格式定义。
能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf |
---|---|---|---|
DEVICE_ABILITY_INFO | 设备通用能力类型,具体能力根据发送的能力节点来区分 | 获取智能设备能力集 | 智能设备能力XML描述(VcaDevAbility) |
获取智能通道控制能力集 | 智能通道控制能力XML描述(VcaCtrlAbility) | ||
获取智能通道分析能力集 | 智能通道分析能力XML描述(VcaChanAbility) | ||
获取双目能力集 | 双目能力XML描述(BinocularAbility) | ||
VCA_DEV_ABILITY | 获取智能设备的能力 | 无 | NET_VCA_DEV_ABILITY |
VCA_CHAN_ABILITY | 获取智能通道能力 | NET_VCA_CHAN_IN_PARAM byVCAType值为VCA_BEHAVIOR_BASE, VCA_BEHAVIOR_ADVANCE, VCA_BEHAVIOR_FULL等 |
NET_VCA_BEHAVIOR_ABILITY |
VCA_CHAN_ABILITY | 获取智能通道能力 | NET_VCA_CHAN_IN_PARAM byVCAType值为VCA_ITS, VCA_TFS或VCA_TPS |
NET_DVR_ITS_ABILITY |
NET_DVR_Login NET_DVR_Login_V30