/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* HCNetSDK.java
*
* Created on 2009-9-14, 19:31:34
*/
package com.kx.hcws.sdk;
import com.sun.jna.Native;
import com.sun.jna.NativeLong;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import com.sun.jna.Union;
import com.sun.jna.examples.win32.GDI32.RECT;
import com.sun.jna.examples.win32.W32API;
import com.sun.jna.examples.win32.W32API.HWND;
import com.sun.jna.ptr.ByteByReference;
import com.sun.jna.ptr.IntByReference;
import com.sun.jna.ptr.NativeLongByReference;
import com.sun.jna.ptr.ShortByReference;
import com.sun.jna.win32.StdCallLibrary;
//SDK接口说明,HCNetSDK.dll
public interface HCNetSDK extends StdCallLibrary {
HCNetSDK INSTANCE = (HCNetSDK) Native.loadLibrary("HCNetSDK", HCNetSDK.class);
/*** 宏定义 ***/
// 常量
public static final int MAX_NAMELEN = 16; // DVR本地登陆名
public static final int MAX_RIGHT = 32; // 设备支持的权限(1-12表示本地权限,13-32表示远程权限)
public static final int NAME_LEN = 32; // 用户名长度
public static final int PASSWD_LEN = 16; // 密码长度
public static final int SERIALNO_LEN = 48; // 序列号长度
public static final int MACADDR_LEN = 6; // mac地址长度
public static final int MAX_ETHERNET = 2; // 设备可配以太网络
public static final int PATHNAME_LEN = 128; // 路径长度
public static final int MAX_TIMESEGMENT_V30 = 8; // 9000设备最大时间段数
public static final int MAX_TIMESEGMENT = 4; // 8000设备最大时间段数
public static final int MAX_SHELTERNUM = 4; // 8000设备最大遮挡区域数
public static final int MAX_DAYS = 7; // 每周天数
public static final int PHONENUMBER_LEN = 32; // pppoe拨号号码最大长度
public static final int MAX_DISKNUM_V30 = 33; // 9000设备最大硬盘数/*
// 最多33个硬盘(包括16个内置SATA硬盘、1个eSATA硬盘和16个NFS盘)
// */
public static final int MAX_DISKNUM = 16; // 8000设备最大硬盘数
public static final int MAX_DISKNUM_V10 = 8; // 1.2版本之前版本
public static final int MAX_WINDOW_V30 = 32; // 9000设备本地显示最大播放窗口数
public static final int MAX_WINDOW = 16; // 8000设备最大硬盘数
public static final int MAX_VGA_V30 = 4; // 9000设备最大可接VGA数
public static final int MAX_VGA = 1; // 8000设备最大可接VGA数
public static final int MAX_USERNUM_V30 = 32; // 9000设备最大用户数
public static final int MAX_USERNUM = 16; // 8000设备最大用户数
public static final int MAX_EXCEPTIONNUM_V30 = 32; // 9000设备最大异常处理数
public static final int MAX_EXCEPTIONNUM = 16; // 8000设备最大异常处理数
public static final int MAX_LINK = 6; // 8000设备单通道最大视频流连接数
public static final int MAX_DECPOOLNUM = 4; // 单路解码器每个解码通道最大可循环解码数
public static final int MAX_DECNUM = 4; // 单路解码器的最大解码通道数(实际只有一个,其他三个保留)
public static final int MAX_TRANSPARENTNUM = 2; // 单路解码器可配置最大透明通道数
public static final int MAX_CYCLE_CHAN = 16; // 单路解码器最大轮循通道数
public static final int MAX_DIRNAME_LENGTH = 80; // 最大目录长度
public static final int MAX_STRINGNUM_V30 = 8; // 9000设备最大OSD字符行数数
public static final int MAX_STRINGNUM = 4; // 8000设备最大OSD字符行数数
public static final int MAX_STRINGNUM_EX = 8; // 8000定制扩展
public static final int MAX_AUXOUT_V30 = 16; // 9000设备最大辅助输出数
public static final int MAX_AUXOUT = 4; // 8000设备最大辅助输出数
public static final int MAX_HD_GROUP = 16; // 9000设备最大硬盘组数
public static final int MAX_NFS_DISK = 8; // 8000设备最大NFS硬盘数
public static final int IW_ESSID_MAX_SIZE = 32; // WIFI的SSID号长度
public static final int IW_ENCODING_TOKEN_MAX = 32; // WIFI密锁最大字节数
public static final int MAX_SERIAL_NUM = 64; // 最多支持的透明通道路数
public static final int MAX_DDNS_NUMS = 10; // 9000设备最大可配ddns数
public static final int MAX_DOMAIN_NAME = 64; /* 最大域名长度 */
public static final int MAX_EMAIL_ADDR_LEN = 48; // 最大email地址长度
public static final int MAX_EMAIL_PWD_LEN = 32; // 最大email密码长度
public static final int MAXPROGRESS = 100; // 回放时的最大百分率
public static final int MAX_SERIALNUM = 2; // 8000设备支持的串口数 1-232, 2-485
public static final int CARDNUM_LEN = 20; // 卡号长度
public static final int MAX_VIDEOOUT_V30 = 4; // 9000设备的视频输出数
public static final int MAX_VIDEOOUT = 2; // 8000设备的视频输出数
public static final int MAX_PRESET_V30 = 256; /* 9000设备支持的云台预置点数 */
public static final int MAX_TRACK_V30 = 256; /* 9000设备支持的云台轨迹数 */
public static final int MAX_CRUISE_V30 = 256; /* 9000设备支持的云台巡航数 */
public static final int MAX_PRESET = 128; /* 8000设备支持的云台预置点数 */
public static final int MAX_TRACK = 128; /* 8000设备支持的云台轨迹数 */
public static final int MAX_CRUISE = 128; /* 8000设备支持的云台巡航数 */
public static final int CRUISE_MAX_PRESET_NUMS = 32; /* 一条巡航最多的巡航点 */
public static final int MAX_SERIAL_PORT = 8; // 9000设备支持232串口数
public static final int MAX_PREVIEW_MODE = 8; /*
* 设备支持最大预览模式数目
* 1画面,4画面,9画面,16画面....
*/
public static final int MAX_MATRIXOUT = 16; /* 最大模拟矩阵输出个数 */
public static final int LOG_INFO_LEN = 11840; /* 日志附加信息 */
public static final int DESC_LEN = 16; /* 云台描述字符串长度 */
public static final int PTZ_PROTOCOL_NUM = 200; /* 9000最大支持的云台协议数 */
public static final int MAX_AUDIO = 1; // 8000语音对讲通道数
public static final int MAX_AUDIO_V30 = 2; // 9000语音对讲通道数
public static final int MAX_CHANNUM = 16; // 8000设备最大通道数
public static final int MAX_ALARMIN = 16; // 8000设备最大报警输入数
public static final int MAX_ALARMOUT = 4; // 8000设备最大报警输出数
// 9000 IPC接入
public static final int MAX_ANALOG_CHANNUM = 32; // 最大32个模拟通道
public static final int MAX_ANALOG_ALARMOUT = 32; // 最大32路模拟报警输出
public static final int MAX_ANALOG_ALARMIN = 32; // 最大32路模拟报警输入
public static final int MAX_IP_DEVICE = 32; // 允许接入的最大IP设备数
public static final int MAX_IP_CHANNEL = 32; // 允许加入的最多IP通道数
public static final int MAX_IP_ALARMIN = 128; // 允许加入的最多报警输入数
public static final int MAX_IP_ALARMOUT = 64; // 允许加入的最多报警输出数
/* 最大支持的通道数 最大模拟加上最大IP支持 */
public static final int MAX_CHANNUM_V30 = (MAX_ANALOG_CHANNUM + MAX_IP_CHANNEL);// 64
public static final int MAX_ALARMOUT_V30 = (MAX_ANALOG_ALARMOUT + MAX_IP_ALARMOUT);// 96
public static final int MAX_ALARMIN_V30 = (MAX_ANALOG_ALARMIN + MAX_IP_ALARMIN);// 160
/******************* 全局错误码 begin **********************/
public static final int NET_DVR_NOERROR = 0; // 没有错误
public static final int NET_DVR_PASSWORD_ERROR = 1; // 用户名密码错误
public static final int NET_DVR_NOENOUGHPRI = 2;// 权限不足
public static final int NET_DVR_NOINIT = 3;// 没有初始化
public static final int NET_DVR_CHANNEL_ERROR = 4; // 通道号错误
public static final int NET_DVR_OVER_MAXLINK = 5; // 连接到DVR的客户端个数超过最大
public static final int NET_DVR_VERSIONNOMATCH = 6; // 版本不匹配
public static final int NET_DVR_NETWORK_FAIL_CONNECT = 7;// 连接服务器失败
public static final int NET_DVR_NETWORK_SEND_ERROR = 8; /
评论1