package com.example.demo.service;
import com.sun.jna.*;
import com.sun.jna.examples.win32.GDI32.RECT;
import com.sun.jna.examples.win32.W32API;
import com.sun.jna.examples.win32.W32API.HDC;
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 java.util.Arrays;
import java.util.List;
//SDK接口说明,HCNetSDK.dll
public interface HCNetSDK extends Library {
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 in
- 1
- 2
- 3
- 4
- 5
- 6
前往页