#ifndef _HC_NET_SDK_H_ #define _HC_NET_SDK_H_ #ifndef _WINDOWS_ #if (defined(_WIN32) || defined(_WIN64)) #include #include #endif #endif #ifndef __PLAYRECT_defined #define __PLAYRECT_defined typedef struct __PLAYRECT { int x; int y; int uWidth; int uHeight; }PLAYRECT; #endif #if (defined(_WIN32)) #define NET_DVR_API extern "C" __declspec(dllimport) typedef unsigned __int64 UINT64; typedef signed __int64 INT64; #elif defined(__linux__) || defined(__APPLE__) #define BOOL int typedef unsigned int DWORD; typedef unsigned short WORD; typedef unsigned short USHORT; typedef short SHORT; typedef int LONG; typedef unsigned char BYTE; typedef unsigned int UINT; typedef void* LPVOID; typedef void* HANDLE; typedef unsigned int* LPDWORD; typedef unsigned long long UINT64; typedef signed long long INT64; #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif #ifndef NULL #define NULL 0 #endif #define __stdcall #define CALLBACK #ifdef __cplusplus #define NET_DVR_API extern "C" #else #define NET_DVR_API #endif typedef unsigned int COLORKEY; typedef unsigned int COLORREF; #ifndef __HWND_defined #define __HWND_defined #if defined(__linux__) typedef unsigned int HWND; #else typedef void* HWND; #endif #endif #ifndef __HDC_defined #define __HDC_defined #if defined(__linux__) typedef struct __DC { void* surface; HWND hWnd; }DC; typedef DC* HDC; #else typedef void* HDC; #endif #endif typedef struct tagInitInfo { int uWidth; int uHeight; }INITINFO; #endif #define MAX_NAMELEN 16 #define MAX_RIGHT 32 #define NAME_LEN 32 #define MIN_PASSWD_LEN 8 #define PASSWD_LEN 16 #define MAX_PASSWD_LEN_EX 64 #define GUID_LEN 16 #define DEV_TYPE_NAME_LEN 24 #define SERIALNO_LEN 48 #define MACADDR_LEN 6 #define MAC_ADDRESS_NUM 48 #define MAX_SENCE_NUM 16 #define RULE_REGION_MAX 128 #define MAX_ETHERNET 2 #define MAX_NETWORK_CARD 4 #define MAX_NETWORK_CARD_EX 12 #define PATHNAME_LEN 128 #define MAX_PRESET_V13 16 #define MAX_TEST_COMMAND_NUM 32 #define MAX_NUMBER_LEN 32 #define MAX_NAME_LEN 128 #define MAX_INDEX_LED 8 #define MAX_CUSTOM_DIR 64 #define URL_LEN_V40 256 #define CLOUD_NAME_LEN 48 #define CLOUD_PASSWD_LEN 48 #define MAX_SENSORNAME_LEN 64 #define MAX_SENSORCHAN_LEN 32 #define MAX_DESCRIPTION_LEN 32 #define MAX_DEVNAME_LEN_EX 64 #define NET_SDK_MAX_FILE_PATH 256 #define MAX_TMEVOICE_LEN 64 #define ISO_8601_LEN 32 #define MAX_NUM_INPUT_BOARD 512 #define MAX_SHIPSDETE_REGION_NUM 8 #define MAX_RES_NUM_ONE_VS_INPUT_CHAN 8 #define MAX_VS_INPUT_CHAN_NUM 16 #define NET_SDK_MAX_FDID_LEN 256 #define NET_SDK_MAX_PICID_LEN 256 #define NET_SDK_FDPIC_CUSTOM_INFO_LEN 96 #define NET_DVR_MAX_FACE_ANALYSIS_NUM 32 #define NET_DVR_MAX_FACE_SEARCH_NUM 5 #define NET_SDK_SECRETKEY_LEN 128 #define NET_SDK_CUSTOM_LEN 512 #define NET_SDK_CHECK_CODE_LEN 128 #define MAX_LEN_TEXT_CONTENT 128 #define MAX_NUM_INPUT_SOURCE_TEXT 32 #define MAX_NUM_OUTPUT_CHANNEL 512 #define MAX_LEN_OSD_CONTENT 256 #define MAX_NUM_OSD_ONE_SUBWND 8 #define MAX_NUM_SPLIT_WND 64 #define MAX_NUM_OSD 8 #define MAX_DEVNAME_LEN 32 #define MAX_LED_INFO 256 #define MAX_TIME_LEN 32 #define MAX_CARD_LEN 24 #define MAX_OPERATORNAME_LEN 32 #define THERMOMETRY_ALARMRULE_NUM 40 #define MAX_THERMOMETRY_REGION_NUM 40 #define MAX_THERMOMETRY_DIFFCOMPARISON_NUM 40 #define MAX_SHIPS_NUM 20 #define KEY_WORD_NUM 3 #define KEY_WORD_LEN 128 #define ASYN_LOGIN_SUCC 1 #define ASYN_LOGIN_FAILED 0 #define NET_SDK_MAX_VERIFICATION_CODE_LEN 32 #define NET_SDK_MAX_OPERATE_CODE_LEN 64 #define MAX_TIMESEGMENT_V30 8 #define MAX_TIMESEGMENT 4 #define MAX_ICR_NUM 8 #define MAX_VEHICLEFLOW_INFO 24 #define MAX_SHELTERNUM 4 #define MAX_DAYS 7 #define PHONENUMBER_LEN 32 #define MAX_ACCESSORY_CARD 256 #define MAX_DISKNUM_V30 33 #define NET_SDK_DISK_LOCATION_LEN 16 #define NET_SDK_SUPPLIER_NAME_LEN 32 #define NET_SDK_DISK_MODEL_LEN 64 #define NET_SDK_MAX_DISK_VOLUME 33 #define NET_SDK_DISK_VOLUME_LEN 36 #define MAX_DISKNUM 16 #define MAX_DISKNUM_V10 8 #define CARD_READER_DESCRIPTION 32 #define MAX_FACE_NUM 2 #define MAX_WINDOW_V30 32 #define MAX_WINDOW_V40 64 #define MAX_WINDOW 16 #define MAX_VGA_V30 4 #define MAX_VGA 1 #define MAX_USERNUM_V30 32 #define MAX_USERNUM 16 #define MAX_EXCEPTIONNUM_V30 32 #define MAX_EXCEPTIONNUM 16 #define MAX_LINK 6 #define MAX_ITC_EXCEPTIONOUT 32 #define MAX_SCREEN_DISPLAY_LEN 512 #define MAX_DECPOOLNUM 4 #define MAX_DECNUM 4 #define MAX_TRANSPARENTNUM 2 #define MAX_CYCLE_CHAN 16 #define MAX_CYCLE_CHAN_V30 64 #define MAX_DIRNAME_LENGTH 80 #define MAX_WINDOWS 16 #define MAX_STRINGNUM_V30 8 #define MAX_STRINGNUM 4 #define MAX_STRINGNUM_EX 8 #define MAX_AUXOUT_V30 16 #define MAX_AUXOUT 4 #define MAX_HD_GROUP 16 #define MAX_HD_GROUP_V40 32 #define MAX_NFS_DISK 8 #define NET_SDK_VERSION_LIST_LEN 64 #define IW_ESSID_MAX_SIZE 32 #define IW_ENCODING_TOKEN_MAX 32 #define MAX_SERIAL_NUM 64 #define MAX_DDNS_NUMS 10 #define MAX_DOMAIN_NAME 64 #define MAX_EMAIL_ADDR_LEN 48 #define MAX_EMAIL_PWD_LEN 32 #define MAX_SLAVECAMERA_NUM 8 #define MAX_CALIB_NUM 6 #define MAX_CALIB_NUM_EX 20 #define MAX_LEDDISPLAYINFO_LEN 1024 #define MAX_PEOPLE_DETECTION_NUM 8 #define MAXPROGRESS 100 #define MAX_SERIALNUM 2 #define CARDNUM_LEN 20 #define PATIENTID_LEN 64 #define CARDNUM_LEN_OUT 32 #define MAX_VIDEOOUT_V30 4 #define MAX_VIDEOOUT 2 #define MAX_PRESET_V30 256 #define MAX_TRACK_V30 256 #define MAX_CRUISE_V30 256 #define MAX_PRESET 128 #define MAX_TRACK 128 #define MAX_CRUISE 128 #define MAX_PRESET_V40 300 #define MAX_CRUISE_POINT_NUM 128 #define MAX_CRUISEPOINT_NUM_V50 256 #define CRUISE_MAX_PRESET_NUMS 32 #define MAX_FACE_PIC_NUM 30 #define LOCKGATE_TIME_NUM 4 #define MAX_SERIAL_PORT 8 #define MAX_PREVIEW_MODE 8 #define MAX_MATRIXOUT 16 #define LOG_INFO_LEN 11840 #define DESC_LEN 16 #define PTZ_PROTOCOL_NUM 200 #define IPC_PROTOCOL_NUM 50 #define MAX_AUDIO 1 #define MAX_AUDIO_V30 2 #define MAX_CHANNUM 16 #define MAX_ALARMIN 16 #define MAX_ALARMOUT 4 #define MAX_ANALOG_CHANNUM 32 #define MAX_ANALOG_ALARMOUT 32 #define MAX_ANALOG_ALARMIN 32 #define MAX_IP_DEVICE 32 #define MAX_IP_DEVICE_V40 64 #define MAX_IP_CHANNEL 32 #define MAX_IP_ALARMIN 128 #define MAX_IP_ALARMOUT 64 #define MAX_IP_ALARMIN_V40 4096 #define MAX_IP_ALARMOUT_V40 4096 #define MAX_RECORD_FILE_NUM 20 #define MAX_ACTION_TYPE 12 #define MAX_ATM_PROTOCOL_NUM 256 #define ATM_CUSTOM_PROTO 1025 #define ATM_PROTOCOL_SORT 4 #define ATM_DESC_LEN 32 #define MAX_IPV6_LEN 64 #define MAX_EVENTID_LEN 64 #define INVALID_VALUE_UINT32 0xffffffff #define MAX_CHANNUM_V40 512 #define MAX_MULTI_AREA_NUM 24 #define COURSE_NAME_LEN 32 #define INSTRUCTOR_NAME_LEN 16 #define COURSE_DESCRIPTION_LEN 256 #define MAX_TIMESEGMENT_V40 16 #define MAX_MIX_CHAN_NUM 16 #define MAX_LINE_IN_CHAN_NUM 16 #define MAX_MIC_CHAN_NUM 16 #define INQUEST_CASE_NO_LEN 64 #define INQUEST_CASE_NAME_LEN 64 #define CUSTOM_INFO_LEN 64 #define INQUEST_CASE_LEN 64 #define MAX_FILE_ID_LEN 128 #define MAX_PIC_NAME_LEN 128 #define MAX_CHANNUM_V30 ( MAX_ANALOG_CHANNUM + MAX_IP_CHANNEL ) #define MAX_ALARMOUT_V40 (MAX_IP_ALARMOUT_V40 +MAX_ANALOG_ALARMOUT) #define MAX_ALARMOUT_V30 ( MAX_ANALOG_ALARMOUT + MAX_IP_ALARMOUT ) #define MAX_ALARMIN_V30 ( MAX_ANALOG_ALARMIN + MAX_IP_ALARMIN ) #define MAX_ALARMIN_V40 (MAX_IP_ALARMIN_V40 +MAX_ANALOG_ALARMOUT) #define MAX_ANALOG_ALARM_WITH_VOLT_LIMIT 16 #define MAX_ROIDETECT_NUM 8 #define MAX_LANERECT_NUM 5 #define MAX_FORTIFY_NUM 10 #define MAX_INTERVAL_NUM 4 #define MAX_CHJC_NUM 3 #define MAX_VL_NUM 5 #define MAX_DRIVECHAN_NUM 16 #define MAX_COIL_NUM 3 #define MAX_SIGNALLIGHT_NUM 6 #define LEN_16 16 #define LEN_32 32 #define LEN_64 64 #define LEN_31 31 #define MAX_LINKAGE_CHAN_NUM 16 #define MAX_CABINET_COUNT 8 #define MAX_ID_LEN 48 #define MAX_PARKNO_LEN 16 #define MAX_ALARMREASON_LEN 32 #define MAX_UPGRADE_INFO_LEN 48 #define MAX_CUSTOMDIR_LEN 32 #define MAX_LED_INFO_LEN 512 #define MAX_VOICE_INFO_LEN 128 #define MAX_LITLE_INFO_LEN 64 #define MAX_CUSTOM_INFO_LEN 64 #define MAX_PHONE_NUM_LEN 16 #define MAX_APP_SERIALNUM_LEN 32 #define AUDIOTALKTYPE_G722 0 #define AUDIOTALKTYPE_G711_MU 1 #define AUDIOTALKTYPE_G711_A 2 #define AUDIOTALKTYPE_MP2L2 5 #define AUDIOTALKTYPE_G726 6 #define AUDIOTALKTYPE_AAC 7 #define AUDIOTALKTYPE_PCM 8 #define AUDIOTALKTYPE_G722C 9 #define FILE_HEAD 0 #define VIDEO_I_FRAME 1 #define VIDEO_B_FRAME 2 #define VIDEO_P_FRAME 3 #define AUDIO_PACKET 10 #define PRIVT_PACKET 11 #define HIK_H264_E_FRAME (1 << 6) #define MAX_TRANSPARENT_CHAN_NUM 4 #define MAX_TRANSPARENT_ACCESS_NUM 4 #define MAX_PARKING_STATUS 8 #define MAX_PARKING_NUM 4 #define MAX_ITS_SCENE_NUM 16 #define MAX_SCENE_TIMESEG_NUM 16 #define MAX_IVMS_IP_CHANNEL 128 #define DEVICE_ID_LEN 48 #define MONITORSITE_ID_LEN 48 #define MAX_AUXAREA_NUM 16 #define MAX_SLAVE_CHANNEL_NUM 16 #define MAX_DEVDESC_LEN 64 #define ILLEGAL_LEN 32 #define MAX_TRUCK_AXLE_NUM 10 #define MAX_CATEGORY_LEN 8 #define SERIAL_NO_LEN 16 #define MAX_SECRETKEY_LEN 512 #define MAX_INDEX_CODE_LEN 64 #define MAX_ILLEGAL_LEN 64 #define CODE_LEN 64 #define ALIAS_LEN 32 #define MAX_SCH_TASKS_NUM 10 #define MAX_SERVERID_LEN 64 #define MAX_SERVERDOMAIN_LEN 128 #define MAX_AUTHENTICATEID_LEN 64 #define MAX_AUTHENTICATEPASSWD_LEN 32 #define MAX_SERVERNAME_LEN 64 #define MAX_COMPRESSIONID_LEN 64 #define MAX_SIPSERVER_ADDRESS_LEN 128 #define MAX_PlATE_NO_LEN 32 #define UPNP_PORT_NUM 12 #define MAX_PEOPLE_DETECTION_NUM 8 #define MAX_NOTICE_NUMBER_LEN 32 #define MAX_NOTICE_THEME_LEN 64 #define MAX_NOTICE_DETAIL_LEN 1024 #define MAX_NOTICE_PIC_NUM 6 #define MAX_DEV_NUMBER_LEN 32 #define LOCK_NAME_LEN 32 #define HOLIDAY_GROUP_NAME_LEN 32 #define MAX_HOLIDAY_PLAN_NUM 16 #define TEMPLATE_NAME_LEN 32 #define MAX_HOLIDAY_GROUP_NUM 16 #define DOOR_NAME_LEN 32 #define STRESS_PASSWORD_LEN 8 #define SUPER_PASSWORD_LEN 8 #define GROUP_NAME_LEN 32 #define GROUP_COMBINATION_NUM 8 #define MULTI_CARD_GROUP_NUM 4 #define ACS_CARD_NO_LEN 32 #define NET_SDK_EMPLOYEE_NO_LEN 32 #define NET_SDK_EHOME_KEY_LEN 32 #define CARD_PASSWORD_LEN 8 #define MAX_DOOR_NUM 32 #define MAX_CARD_RIGHT_PLAN_NUM 4 #define MAX_GROUP_NUM_128 128 #define MAX_CARD_READER_NUM 64 #define MAX_SNEAK_PATH_NODE 8 #define MAX_MULTI_DOOR_INTERLOCK_GROUP 8 #define MAX_INTER_LOCK_DOOR_NUM 8 #define MAX_CASE_SENSOR_NUM 8 #define MAX_DOOR_NUM_256 256 #define MAX_READER_ROUTE_NUM 16 #define MAX_FINGER_PRINT_NUM 10 #define MAX_CARD_READER_NUM_512 512 #define NET_SDK_MULTI_CARD_GROUP_NUM_20 20 #define ERROR_MSG_LEN 32 #define MAX_DOOR_CODE_LEN 8 #define MAX_LOCK_CODE_LEN 8 #define PER_RING_PORT_NUM 2 #define SENSORNAME_LEN 32 #define MAX_SENSORDESCR_LEN 64 #define MAX_DNS_SERVER_NUM 2 #define SENSORUNIT_LEN 32 #define WEP_KEY_MAX_SIZE 32 #define WEP_KEY_MAX_NUM 4 #define WPA_KEY_MAX_SIZE 64 #define MAX_SINGLE_FTPPICNAME_LEN 20 #define MAX_CAMNAME_LEN 32 #define MAX_FTPNAME_NUM 12 #define MAX_IDCODE_LEN 128 #define MAX_VERSIIN_LEN 64 #define MAX_IDCODE_NUM 32 #define SDK_LEN_2048 2048 #define SDK_MAX_IP_LEN 48 #define RECT_POINT_NUM 4 #define MAX_PUBLIC_KEY_LEN 512 #define CHIP_SERIALNO_LEN 32 #define ENCRYPT_DEV_ID_LEN 20 #define MAX_SEARCH_ID_LEN 36 #define TERMINAL_NAME_LEN 64 #define MAX_URL_LEN 512 #define REGISTER_NAME_LEN 64 #define MAX_PORT_NUM 64 #define MAX_SINGLE_CARD_PORT_NO 4 #define MAX_FUNC_CARD_NUM 32 #define MAX_FC_CARD_NUM 33 #define MAX_REMARKS_LEN 128 #define MAX_OUTPUT_PORT_NUM 32 #define MAX_SINGLE_PORT_RECVCARD_NUM 64 #define MAX_GAMMA_X_VALUE 256 #define NET_DEV_NAME_LEN 64 #define NET_DEV_TYPE_NAME_LEN 64 #define ABNORMAL_INFO_NUM 4 #define PLAYLIST_NAME_LEN 64 #define PLAYLIST_ITEM_NUM 64 #define NET_SDK_MAX_LOGIN_PASSWORD_LEN 128 #define NET_SDK_MAX_ANSWER_LEN 256 #define NET_SDK_MAX_QUESTION_LIST_LEN 32 #define MAX_SCREEN_AREA_NUM 128 #define NET_SDK_MAX_THERMOMETRYALGNAME 128 #define NET_SDK_MAX_SHIPSALGNAME 128 #define NET_SDK_MAX_FIRESALGNAME 128 #define NET_DVR_NOERROR 0 #define NET_DVR_PASSWORD_ERROR 1 #define NET_DVR_NOENOUGHPRI 2 #define NET_DVR_NOINIT 3 #define NET_DVR_CHANNEL_ERROR 4 #define NET_DVR_OVER_MAXLINK 5 #define NET_DVR_VERSIONNOMATCH 6 #define NET_DVR_NETWORK_FAIL_CONNECT 7 #define NET_DVR_NETWORK_SEND_ERROR 8 #define NET_DVR_NETWORK_RECV_ERROR 9 #define NET_DVR_NETWORK_RECV_TIMEOUT 10 #define NET_DVR_NETWORK_ERRORDATA 11 #define NET_DVR_ORDER_ERROR 12 #define NET_DVR_OPERNOPERMIT 13 #define NET_DVR_COMMANDTIMEOUT 14 #define NET_DVR_ERRORSERIALPORT 15 #define NET_DVR_ERRORALARMPORT 16 #define NET_DVR_PARAMETER_ERROR 17 #define NET_DVR_CHAN_EXCEPTION 18 #define NET_DVR_NODISK 19 #define NET_DVR_ERRORDISKNUM 20 #define NET_DVR_DISK_FULL 21 #define NET_DVR_DISK_ERROR 22 #define NET_DVR_NOSUPPORT 23 #define NET_DVR_BUSY 24 #define NET_DVR_MODIFY_FAIL 25 #define NET_DVR_PASSWORD_FORMAT_ERROR 26 #define NET_DVR_DISK_FORMATING 27 #define NET_DVR_DVRNORESOURCE 28 #define NET_DVR_DVROPRATEFAILED 29 #define NET_DVR_OPENHOSTSOUND_FAIL 30 #define NET_DVR_DVRVOICEOPENED 31 #define NET_DVR_TIMEINPUTERROR 32 #define NET_DVR_NOSPECFILE 33 #define NET_DVR_CREATEFILE_ERROR 34 #define NET_DVR_FILEOPENFAIL 35 #define NET_DVR_OPERNOTFINISH 36 #define NET_DVR_GETPLAYTIMEFAIL 37 #define NET_DVR_PLAYFAIL 38 #define NET_DVR_FILEFORMAT_ERROR 39 #define NET_DVR_DIR_ERROR 40 #define NET_DVR_ALLOC_RESOURCE_ERROR 41 #define NET_DVR_AUDIO_MODE_ERROR 42 #define NET_DVR_NOENOUGH_BUF 43 #define NET_DVR_CREATESOCKET_ERROR 44 #define NET_DVR_SETSOCKET_ERROR 45 #define NET_DVR_MAX_NUM 46 #define NET_DVR_USERNOTEXIST 47 #define NET_DVR_WRITEFLASHERROR 48 #define NET_DVR_UPGRADEFAIL 49 #define NET_DVR_CARDHAVEINIT 50 #define NET_DVR_PLAYERFAILED 51 #define NET_DVR_MAX_USERNUM 52 #define NET_DVR_GETLOCALIPANDMACFAIL 53 #define NET_DVR_NOENCODEING 54 #define NET_DVR_IPMISMATCH 55 #define NET_DVR_MACMISMATCH 56 #define NET_DVR_UPGRADELANGMISMATCH 57 #define NET_DVR_MAX_PLAYERPORT 58 #define NET_DVR_NOSPACEBACKUP 59 #define NET_DVR_NODEVICEBACKUP 60 #define NET_DVR_PICTURE_BITS_ERROR 61 #define NET_DVR_PICTURE_DIMENSION_ERROR 62 #define NET_DVR_PICTURE_SIZ_ERROR 63 #define NET_DVR_LOADPLAYERSDKFAILED 64 #define NET_DVR_LOADPLAYERSDKPROC_ERROR 65 #define NET_DVR_LOADDSSDKFAILED 66 #define NET_DVR_LOADDSSDKPROC_ERROR 67 #define NET_DVR_DSSDK_ERROR 68 #define NET_DVR_VOICEMONOPOLIZE 69 #define NET_DVR_JOINMULTICASTFAILED 70 #define NET_DVR_CREATEDIR_ERROR 71 #define NET_DVR_BINDSOCKET_ERROR 72 #define NET_DVR_SOCKETCLOSE_ERROR 73 #define NET_DVR_USERID_ISUSING 74 #define NET_DVR_SOCKETLISTEN_ERROR 75 #define NET_DVR_PROGRAM_EXCEPTION 76 #define NET_DVR_WRITEFILE_FAILED 77 #define NET_DVR_FORMAT_READONLY 78 #define NET_DVR_WITHSAMEUSERNAME 79 #define NET_DVR_DEVICETYPE_ERROR 80 #define NET_DVR_LANGUAGE_ERROR 81 #define NET_DVR_PARAVERSION_ERROR 82 #define NET_DVR_IPCHAN_NOTALIVE 83 #define NET_DVR_RTSP_SDK_ERROR 84 #define NET_DVR_CONVERT_SDK_ERROR 85 #define NET_DVR_IPC_COUNT_OVERFLOW 86 #define NET_DVR_MAX_ADD_NUM 87 #define NET_DVR_PARAMMODE_ERROR 88 #define NET_DVR_CODESPITTER_OFFLINE 89 #define NET_DVR_BACKUP_COPYING 90 #define NET_DVR_CHAN_NOTSUPPORT 91 #define NET_DVR_CALLINEINVALID 92 #define NET_DVR_CALCANCELCONFLICT 93 #define NET_DVR_CALPOINTOUTRANGE 94 #define NET_DVR_FILTERRECTINVALID 95 #define NET_DVR_DDNS_DEVOFFLINE 96 #define NET_DVR_DDNS_INTER_ERROR 97 #define NET_DVR_FUNCTION_NOT_SUPPORT_OS 98 #define NET_DVR_DEC_CHAN_REBIND 99 #define NET_DVR_INTERCOM_SDK_ERROR 100 #define NET_DVR_NO_CURRENT_UPDATEFILE 101 #define NET_DVR_USER_NOT_SUCC_LOGIN 102 #define NET_DVR_USE_LOG_SWITCH_FILE 103 #define NET_DVR_POOL_PORT_EXHAUST 104 #define NET_DVR_PACKET_TYPE_NOT_SUPPORT 105 #define NET_DVR_IPPARA_IPID_ERROR 106 #define NET_DVR_LOAD_HCPREVIEW_SDK_ERROR 107 #define NET_DVR_LOAD_HCVOICETALK_SDK_ERROR 108 #define NET_DVR_LOAD_HCALARM_SDK_ERROR 109 #define NET_DVR_LOAD_HCPLAYBACK_SDK_ERROR 110 #define NET_DVR_LOAD_HCDISPLAY_SDK_ERROR 111 #define NET_DVR_LOAD_HCINDUSTRY_SDK_ERROR 112 #define NET_DVR_LOAD_HCGENERALCFGMGR_SDK_ERROR 113 #define NET_DVR_LOAD_HCCOREDEVCFG_SDK_ERROR 114 #define NET_DVR_LOAD_HCNETUTILS_SDK_ERROR 115 #define NET_DVR_CORE_VER_MISMATCH 121 #define NET_DVR_CORE_VER_MISMATCH_HCPREVIEW 122 #define NET_DVR_CORE_VER_MISMATCH_HCVOICETALK 123 #define NET_DVR_CORE_VER_MISMATCH_HCALARM 124 #define NET_DVR_CORE_VER_MISMATCH_HCPLAYBACK 125 #define NET_DVR_CORE_VER_MISMATCH_HCDISPLAY 126 #define NET_DVR_CORE_VER_MISMATCH_HCINDUSTRY 127 #define NET_DVR_CORE_VER_MISMATCH_HCGENERALCFGMGR 128 #define NET_DVR_COM_VER_MISMATCH_HCPREVIEW 136 #define NET_DVR_COM_VER_MISMATCH_HCVOICETALK 137 #define NET_DVR_COM_VER_MISMATCH_HCALARM 138 #define NET_DVR_COM_VER_MISMATCH_HCPLAYBACK 139 #define NET_DVR_COM_VER_MISMATCH_HCDISPLAY 140 #define NET_DVR_COM_VER_MISMATCH_HCINDUSTRY 141 #define NET_DVR_COM_VER_MISMATCH_HCGENERALCFGMGR 142 #define NET_DVR_ALIAS_DUPLICATE 150 #define NET_DVR_INVALID_COMMUNICATION 151 #define NET_DVR_USERNAME_NOT_EXIST 152 #define NET_DVR_USER_LOCKED 153 #define NET_DVR_INVALID_USERID 154 #define NET_DVR_LOW_LOGIN_VERSION 155 #define NET_DVR_LOAD_LIBEAY32_DLL_ERROR 156 #define NET_DVR_LOAD_SSLEAY32_DLL_ERROR 157 #define NET_ERR_LOAD_LIBICONV 158 #define NET_ERR_SSL_CONNECT_FAILED 159 #define NET_ERR_MCAST_ADDRESS_ERROR 160 #define NET_DVR_SERVER_NOT_EXIST 164 #define NET_DVR_TEST_SERVER_FAIL_CONNECT 165 #define NET_DVR_NAS_SERVER_INVALID_DIR 166 #define NET_DVR_NAS_SERVER_NOENOUGH_PRI 167 #define NET_DVR_EMAIL_SERVER_NOT_CONFIG_DNS 168 #define NET_DVR_EMAIL_SERVER_NOT_CONFIG_GATEWAY 169 #define NET_DVR_TEST_SERVER_PASSWORD_ERROR 170 #define NET_DVR_EMAIL_SERVER_CONNECT_EXCEPTION_WITH_SMTP 171 #define NET_DVR_FTP_SERVER_FAIL_CREATE_DIR 172 #define NET_DVR_FTP_SERVER_NO_WRITE_PIR 173 #define NET_DVR_IP_CONFLICT 174 #define NET_DVR_INSUFFICIENT_STORAGEPOOL_SPACE 175 #define NET_DVR_STORAGEPOOL_INVALID 176 #define NET_DVR_EFFECTIVENESS_REBOOT 177 #define NET_ERR_ANR_ARMING_EXIST 178 #define NET_ERR_UPLOADLINK_EXIST 179 #define NET_ERR_INCORRECT_FILE_FORMAT 180 #define NET_ERR_INCORRECT_FILE_CONTENT 181 #define NET_ERR_MAX_HRUDP_LINK 182 #define RAID_ERROR_INDEX 200 #define NET_DVR_NAME_NOT_ONLY (RAID_ERROR_INDEX + 0) #define NET_DVR_OVER_MAX_ARRAY (RAID_ERROR_INDEX + 1 ) #define NET_DVR_OVER_MAX_VD (RAID_ERROR_INDEX + 2 ) #define NET_DVR_VD_SLOT_EXCEED (RAID_ERROR_INDEX + 3 ) #define NET_DVR_PD_STATUS_INVALID (RAID_ERROR_INDEX + 4 ) #define NET_DVR_PD_BE_DEDICATE_SPARE (RAID_ERROR_INDEX + 5 ) #define NET_DVR_PD_NOT_FREE (RAID_ERROR_INDEX + 6 ) #define NET_DVR_CANNOT_MIG2NEWMODE (RAID_ERROR_INDEX + 7 ) #define NET_DVR_MIG_PAUSE (RAID_ERROR_INDEX + 8 ) #define NET_DVR_MIG_CANCEL (RAID_ERROR_INDEX + 9 ) #define NET_DVR_EXIST_VD (RAID_ERROR_INDEX + 10) #define NET_DVR_TARGET_IN_LD_FUNCTIONAL (RAID_ERROR_INDEX + 11) #define NET_DVR_HD_IS_ASSIGNED_ALREADY (RAID_ERROR_INDEX + 12) #define NET_DVR_INVALID_HD_COUNT (RAID_ERROR_INDEX + 13) #define NET_DVR_LD_IS_FUNCTIONAL (RAID_ERROR_INDEX + 14) #define NET_DVR_BGA_RUNNING (RAID_ERROR_INDEX + 15) #define NET_DVR_LD_NO_ATAPI (RAID_ERROR_INDEX + 16) #define NET_DVR_MIGRATION_NOT_NEED (RAID_ERROR_INDEX + 17) #define NET_DVR_HD_TYPE_MISMATCH (RAID_ERROR_INDEX + 18) #define NET_DVR_NO_LD_IN_DG (RAID_ERROR_INDEX + 19) #define NET_DVR_NO_ROOM_FOR_SPARE (RAID_ERROR_INDEX + 20) #define NET_DVR_SPARE_IS_IN_MULTI_DG (RAID_ERROR_INDEX + 21) #define NET_DVR_DG_HAS_MISSING_PD (RAID_ERROR_INDEX + 22) #define NET_DVR_NAME_EMPTY (RAID_ERROR_INDEX + 23) #define NET_DVR_INPUT_PARAM (RAID_ERROR_INDEX + 24) #define NET_DVR_PD_NOT_AVAILABLE (RAID_ERROR_INDEX + 25) #define NET_DVR_ARRAY_NOT_AVAILABLE (RAID_ERROR_INDEX + 26) #define NET_DVR_PD_COUNT (RAID_ERROR_INDEX + 27) #define NET_DVR_VD_SMALL (RAID_ERROR_INDEX + 28) #define NET_DVR_NO_EXIST (RAID_ERROR_INDEX + 29) #define NET_DVR_NOT_SUPPORT (RAID_ERROR_INDEX + 30) #define NET_DVR_NOT_FUNCTIONAL (RAID_ERROR_INDEX + 31) #define NET_DVR_DEV_NODE_NOT_FOUND (RAID_ERROR_INDEX + 32) #define NET_DVR_SLOT_EXCEED (RAID_ERROR_INDEX + 33) #define NET_DVR_NO_VD_IN_ARRAY (RAID_ERROR_INDEX + 34) #define NET_DVR_VD_SLOT_INVALID (RAID_ERROR_INDEX + 35) #define NET_DVR_PD_NO_ENOUGH_SPACE (RAID_ERROR_INDEX + 36) #define NET_DVR_ARRAY_NONFUNCTION (RAID_ERROR_INDEX + 37) #define NET_DVR_ARRAY_NO_ENOUGH_SPACE (RAID_ERROR_INDEX + 38) #define NET_DVR_STOPPING_SCANNING_ARRAY (RAID_ERROR_INDEX + 39) #define NET_DVR_NOT_SUPPORT_16T (RAID_ERROR_INDEX + 40) #define NET_DVR_ARRAY_FORMATING (RAID_ERROR_INDEX + 41) #define NET_DVR_QUICK_SETUP_PD_COUNT (RAID_ERROR_INDEX + 42) #define NET_DVR_ERROR_DEVICE_NOT_ACTIVATED 250 #define NET_DVR_ERROR_RISK_PASSWORD 251 #define NET_DVR_ERROR_DEVICE_HAS_ACTIVATED 252 #define VCA_ERROR_INDEX 300 #define NET_DVR_ID_ERROR (VCA_ERROR_INDEX + 0) #define NET_DVR_POLYGON_ERROR (VCA_ERROR_INDEX + 1) #define NET_DVR_RULE_PARAM_ERROR (VCA_ERROR_INDEX + 2) #define NET_DVR_RULE_CFG_CONFLICT (VCA_ERROR_INDEX + 3) #define NET_DVR_CALIBRATE_NOT_READY (VCA_ERROR_INDEX + 4) #define NET_DVR_CAMERA_DATA_ERROR (VCA_ERROR_INDEX + 5) #define NET_DVR_CALIBRATE_DATA_UNFIT (VCA_ERROR_INDEX + 6) #define NET_DVR_CALIBRATE_DATA_CONFLICT (VCA_ERROR_INDEX + 7) #define NET_DVR_CALIBRATE_CALC_FAIL (VCA_ERROR_INDEX + 8) #define NET_DVR_CALIBRATE_LINE_OUT_RECT (VCA_ERROR_INDEX + 9) #define NET_DVR_ENTER_RULE_NOT_READY (VCA_ERROR_INDEX + 10) #define NET_DVR_AID_RULE_NO_INCLUDE_LANE (VCA_ERROR_INDEX + 11) #define NET_DVR_LANE_NOT_READY (VCA_ERROR_INDEX + 12) #define NET_DVR_RULE_INCLUDE_TWO_WAY (VCA_ERROR_INDEX + 13) #define NET_DVR_LANE_TPS_RULE_CONFLICT (VCA_ERROR_INDEX + 14) #define NET_DVR_NOT_SUPPORT_EVENT_TYPE (VCA_ERROR_INDEX + 15) #define NET_DVR_LANE_NO_WAY (VCA_ERROR_INDEX + 16) #define NET_DVR_SIZE_FILTER_ERROR (VCA_ERROR_INDEX + 17) #define NET_DVR_LIB_FFL_NO_FACE (VCA_ERROR_INDEX + 18) #define NET_DVR_LIB_FFL_IMG_TOO_SMALL (VCA_ERROR_INDEX + 19) #define NET_DVR_LIB_FD_IMG_NO_FACE (VCA_ERROR_INDEX + 20) #define NET_DVR_LIB_FACE_TOO_SMALL (VCA_ERROR_INDEX + 21) #define NET_DVR_LIB_FACE_QUALITY_TOO_BAD (VCA_ERROR_INDEX + 22) #define NET_DVR_KEY_PARAM_ERR (VCA_ERROR_INDEX + 23) #define NET_DVR_CALIBRATE_DATA_ERR (VCA_ERROR_INDEX + 24) #define NET_DVR_CALIBRATE_DISABLE_FAIL (VCA_ERROR_INDEX + 25) #define NET_DVR_VCA_LIB_FD_SCALE_OUTRANGE (VCA_ERROR_INDEX + 26) #define NET_DVR_LIB_FD_REGION_TOO_LARGE (VCA_ERROR_INDEX + 27) #define NET_DVR_TRIAL_OVERDUE (VCA_ERROR_INDEX + 28) #define NET_DVR_CONFIG_FILE_CONFLICT (VCA_ERROR_INDEX + 29) #define NET_DVR_FR_FPL_FAIL (VCA_ERROR_INDEX + 30) #define NET_DVR_FR_IQA_FAIL (VCA_ERROR_INDEX + 31) #define NET_DVR_FR_FEM_FAIL (VCA_ERROR_INDEX + 32) #define NET_DVR_FPL_DT_CONF_TOO_LOW (VCA_ERROR_INDEX + 33) #define NET_DVR_FPL_CONF_TOO_LOW (VCA_ERROR_INDEX + 34) #define NET_DVR_E_DATA_SIZE (VCA_ERROR_INDEX + 35) #define NET_DVR_FR_MODEL_VERSION_ERR (VCA_ERROR_INDEX + 36) #define NET_DVR_FR_FD_FAIL (VCA_ERROR_INDEX + 37) #define NET_DVR_FA_NORMALIZE_ERR (VCA_ERROR_INDEX + 38) #define NET_DVR_DOG_PUSTREAM_NOT_MATCH (VCA_ERROR_INDEX + 39) #define NET_DVR_DEV_PUSTREAM_NOT_MATCH (VCA_ERROR_INDEX + 40) #define NET_DVR_PUSTREAM_ALREADY_EXISTS (VCA_ERROR_INDEX + 41) #define NET_DVR_SEARCH_CONNECT_FAILED (VCA_ERROR_INDEX + 42) #define NET_DVR_INSUFFICIENT_DISK_SPACE (VCA_ERROR_INDEX + 43) #define NET_DVR_DATABASE_CONNECTION_FAILED (VCA_ERROR_INDEX + 44) #define NET_DVR_DATABASE_ADM_PW_ERROR (VCA_ERROR_INDEX + 45) #define NET_DVR_DECODE_YUV (VCA_ERROR_INDEX + 46) #define NET_DVR_IMAGE_RESOLUTION_ERROR (VCA_ERROR_INDEX + 47) #define NET_DVR_CHAN_WORKMODE_ERROR (VCA_ERROR_INDEX + 48) #define NET_DVR_RTSP_ERROR_NOENOUGHPRI 401 #define NET_DVR_RTSP_ERROR_ALLOC_RESOURCE 402 #define NET_DVR_RTSP_ERROR_PARAMETER 403 #define NET_DVR_RTSP_ERROR_NO_URL 404 #define NET_DVR_RTSP_ERROR_FORCE_STOP 406 #define NET_DVR_RTSP_GETPORTFAILED 407 #define NET_DVR_RTSP_DESCRIBERROR 410 #define NET_DVR_RTSP_DESCRIBESENDTIMEOUT 411 #define NET_DVR_RTSP_DESCRIBESENDERROR 412 #define NET_DVR_RTSP_DESCRIBERECVTIMEOUT 413 #define NET_DVR_RTSP_DESCRIBERECVDATALOST 414 #define NET_DVR_RTSP_DESCRIBERECVERROR 415 #define NET_DVR_RTSP_DESCRIBESERVERERR 416 #define NET_DVR_RTSP_SETUPERROR 420 #define NET_DVR_RTSP_SETUPSENDTIMEOUT 421 #define NET_DVR_RTSP_SETUPSENDERROR 422 #define NET_DVR_RTSP_SETUPRECVTIMEOUT 423 #define NET_DVR_RTSP_SETUPRECVDATALOST 424 #define NET_DVR_RTSP_SETUPRECVERROR 425 #define NET_DVR_RTSP_OVER_MAX_CHAN 426 #define NET_DVR_RTSP_SETUPSERVERERR 427 #define NET_DVR_RTSP_PLAYERROR 430 #define NET_DVR_RTSP_PLAYSENDTIMEOUT 431 #define NET_DVR_RTSP_PLAYSENDERROR 432 #define NET_DVR_RTSP_PLAYRECVTIMEOUT 433 #define NET_DVR_RTSP_PLAYRECVDATALOST 434 #define NET_DVR_RTSP_PLAYRECVERROR 435 #define NET_DVR_RTSP_PLAYSERVERERR 436 #define NET_DVR_RTSP_TEARDOWNERROR 440 #define NET_DVR_RTSP_TEARDOWNSENDTIMEOUT 441 #define NET_DVR_RTSP_TEARDOWNSENDERROR 442 #define NET_DVR_RTSP_TEARDOWNRECVTIMEOUT 443 #define NET_DVR_RTSP_TEARDOWNRECVDATALOST 444 #define NET_DVR_RTSP_TEARDOWNRECVERROR 445 #define NET_DVR_RTSP_TEARDOWNSERVERERR 446 #define NET_PLAYM4_NOERROR 500 #define NET_PLAYM4_PARA_OVER 501 #define NET_PLAYM4_ORDER_ERROR 502 #define NET_PLAYM4_TIMER_ERROR 503 #define NET_PLAYM4_DEC_VIDEO_ERROR 504 #define NET_PLAYM4_DEC_AUDIO_ERROR 505 #define NET_PLAYM4_ALLOC_MEMORY_ERROR 506 #define NET_PLAYM4_OPEN_FILE_ERROR 507 #define NET_PLAYM4_CREATE_OBJ_ERROR 508 #define NET_PLAYM4_CREATE_DDRAW_ERROR 509 #define NET_PLAYM4_CREATE_OFFSCREEN_ERROR 510 #define NET_PLAYM4_BUF_OVER 511 #define NET_PLAYM4_CREATE_SOUND_ERROR 512 #define NET_PLAYM4_SET_VOLUME_ERROR 513 #define NET_PLAYM4_SUPPORT_FILE_ONLY 514 #define NET_PLAYM4_SUPPORT_STREAM_ONLY 515 #define NET_PLAYM4_SYS_NOT_SUPPORT 516 #define NET_PLAYM4_FILEHEADER_UNKNOWN 517 #define NET_PLAYM4_VERSION_INCORRECT 518 #define NET_PALYM4_INIT_DECODER_ERROR 519 #define NET_PLAYM4_CHECK_FILE_ERROR 520 #define NET_PLAYM4_INIT_TIMER_ERROR 521 #define NET_PLAYM4_BLT_ERROR 522 #define NET_PLAYM4_UPDATE_ERROR 523 #define NET_PLAYM4_OPEN_FILE_ERROR_MULTI 524 #define NET_PLAYM4_OPEN_FILE_ERROR_VIDEO 525 #define NET_PLAYM4_JPEG_COMPRESS_ERROR 526 #define NET_PLAYM4_EXTRACT_NOT_SUPPORT 527 #define NET_PLAYM4_EXTRACT_DATA_ERROR 528 #define NET_CONVERT_ERROR_NOT_SUPPORT 581 #define NET_AUDIOINTERCOM_OK 600 #define NET_AUDIOINTECOM_ERR_NOTSUPORT 601 #define NET_AUDIOINTECOM_ERR_ALLOC_MEMERY 602 #define NET_AUDIOINTECOM_ERR_PARAMETER 603 #define NET_AUDIOINTECOM_ERR_CALL_ORDER 604 #define NET_AUDIOINTECOM_ERR_FIND_DEVICE 605 #define NET_AUDIOINTECOM_ERR_OPEN_DEVICE 606 #define NET_AUDIOINTECOM_ERR_NO_CONTEXT 607 #define NET_AUDIOINTECOM_ERR_NO_WAVFILE 608 #define NET_AUDIOINTECOM_ERR_INVALID_TYPE 609 #define NET_AUDIOINTECOM_ERR_ENCODE_FAIL 610 #define NET_AUDIOINTECOM_ERR_DECODE_FAIL 611 #define NET_AUDIOINTECOM_ERR_NO_PLAYBACK 612 #define NET_AUDIOINTECOM_ERR_DENOISE_FAIL 613 #define NET_AUDIOINTECOM_ERR_UNKOWN 619 #define NET_QOS_OK 700 #define NET_QOS_ERROR (NET_QOS_OK - 1) #define NET_QOS_ERR_INVALID_ARGUMENTS (NET_QOS_OK - 2) #define NET_QOS_ERR_SESSION_NOT_FOUND (NET_QOS_OK - 3) #define NET_QOS_ERR_LIB_NOT_INITIALIZED (NET_QOS_OK - 4) #define NET_QOS_ERR_OUTOFMEM (NET_QOS_OK - 5) #define NET_QOS_ERR_PACKET_UNKNOW (NET_QOS_OK - 10) #define NET_QOS_ERR_PACKET_VERSION (NET_QOS_OK - 11) #define NET_QOS_ERR_PACKET_LENGTH (NET_QOS_OK - 12) #define NET_QOS_ERR_PACKET_TOO_BIG (NET_QOS_OK - 13) #define NET_QOS_ERR_SCHEDPARAMS_INVALID_BANDWIDTH (NET_QOS_OK - 20) #define NET_QOS_ERR_SCHEDPARAMS_BAD_FRACTION (NET_QOS_OK - 21) #define NET_QOS_ERR_SCHEDPARAMS_BAD_MINIMUM_INTERVAL (NET_QOS_OK - 22) #define NET_ERROR_TRUNK_LINE 711 #define NET_ERROR_MIXED_JOINT 712 #define NET_ERROR_DISPLAY_SWITCH 713 #define NET_ERROR_USED_BY_BIG_SCREEN 714 #define NET_ERROR_USE_OTHER_DEC_RESOURCE 715 #define NET_ERROR_DISP_MODE_SWITCH 716 #define NET_ERROR_SCENE_USING 717 #define NET_ERR_NO_ENOUGH_DEC_RESOURCE 718 #define NET_ERR_NO_ENOUGH_FREE_SHOW_RESOURCE 719 #define NET_ERR_NO_ENOUGH_VIDEO_MEMORY 720 #define NET_ERR_MAX_VIDEO_NUM 721 #define NET_ERR_WIN_COVER_FREE_SHOW_AND_NORMAL 722 #define NET_ERR_FREE_SHOW_WIN_SPLIT 723 #define NET_ERR_INAPPROPRIATE_WIN_FREE_SHOW 724 #define NET_DVR_TRANSPARENT_WIN_NOT_SUPPORT_SPLIT 725 #define NET_DVR_SPLIT_WIN_NOT_SUPPORT_TRANSPARENT 726 #define NET_ERR_MAX_LOGO_NUM 727 #define NET_ERR_MAX_WIN_LOOP_NUM 728 #define NET_ERR_VIRTUAL_LED_VERTICAL_CROSS 729 #define NET_ERR_MAX_VIRTUAL_LED_HEIGHT 730 #define NET_ERR_VIRTUAL_LED_ILLEGAL_CHARACTER 731 #define NET_ERR_BASEMAP_NOT_EXIST 732 #define NET_ERR_LED_NOT_SUPPORT_VIRTUAL_LED 733 #define NET_ERR_LED_RESOLUTION_NOT_SUPPORT 734 #define NET_ERR_PLAN_OVERDUE 735 #define NET_ERR_PROCESSER_MAX_SCREEN_BLK 736 #define NET_ERR_WND_SIZE_TOO_SMALL 737 #define NET_ERR_WND_SPLIT_NOT_SUPPORT_ROAM 738 #define NET_ERR_OUTPUT_ONE_BOARD_ONE_WALL 739 #define NET_ERR_WND_CANNOT_LCD_AND_LED_OUTPUT 740 #define NET_ERR_MAX_OSD_NUM 741 #define NET_SDK_CANCEL_WND_TOPKEEP_ATTR_FIRST 751 #define NET_SDK_ERR_LED_SCREEN_CHECKING 752 #define NET_SDK_ERR_NOT_SUPPORT_SINGLE_RESOLUTION 753 #define NET_SDK_ERR_LED_RESOLUTION_MISMATCHED 754 #define NET_SDK_ERR_MAX_VIRTUAL_LED_WIDTH 755 #define NET_SDK_ERR_MAX_VIRTUAL_LED_IN_SCREEN 756 #define NET_SDK_ERR_MAX_VIRTUAL_LED_IN_WALL 757 #define NET_SDK_ERR_VIRTUAL_LED_OVERLAP 758 #define NET_SDK_ERR_VIRTUAL_LED_TYPE 759 #define NET_SDK_ERR_VIRTUAL_LED_COLOUR 760 #define NET_SDK_ERR_VIRTUAL_LED_MOVE_DIRECTION 761 #define NET_SDK_ERR_VIRTUAL_LED_MOVE_MODE 762 #define NET_SDK_ERR_VIRTUAL_LED_MOVE_SPEED 763 #define NET_SDK_ERR_VIRTUAL_LED_DISP_MODE 764 #define NET_SDK_ERR_VIRTUAL_LED_NO 765 #define NET_SDK_ERR_VIRTUAL_LED_PARA 766 #define NET_SDK_ERR_BASEMAP_POSITION 767 #define NET_SDK_ERR_BASEMAP_PICTURE_LEN 768 #define NET_SDK_ERR_BASEMAP_PICTURE_RESOLUTION 769 #define NET_SDK_ERR_BASEMAP_PICTURE_FORMAT 770 #define NET_SDK_ERR_MAX_VIRTUAL_LED_NUM 771 #define NET_SDK_ERR_MAX_TIME_VIRTUAL_LED_IN_WALL 772 #define NET_ERR_TERMINAL_BUSY 780 #define NET_ERR_DATA_RETURNED_ILLEGAL 790 #define NET_DVR_FUNCTION_RESOURCE_USAGE_ERROR 791 #define NET_DVR_DEV_NET_OVERFLOW 800 #define NET_DVR_STATUS_RECORDFILE_WRITING_NOT_LOCK 801 #define NET_DVR_STATUS_CANT_FORMAT_LITTLE_DISK 802 #define NET_SDK_ERR_REMOTE_DISCONNECT 803 #define NET_SDK_ERR_RD_ADD_RD 804 #define NET_SDK_ERR_BACKUP_DISK_EXCEPT 805 #define NET_SDK_ERR_RD_LIMIT 806 #define NET_SDK_ERR_ADDED_RD_IS_WD 807 #define NET_SDK_ERR_ADD_ORDER_WRONG 808 #define NET_SDK_ERR_WD_ADD_WD 809 #define NET_SDK_ERR_WD_SERVICE_EXCETP 810 #define NET_SDK_ERR_RD_SERVICE_EXCETP 811 #define NET_SDK_ERR_ADDED_WD_IS_RD 812 #define NET_SDK_ERR_PERFORMANCE_LIMIT 813 #define NET_SDK_ERR_ADDED_DEVICE_EXIST 814 #define NET_SDK_ERR_INQUEST_RESUMING 815 #define NET_SDK_ERR_RECORD_BACKUPING 816 #define NET_SDK_ERR_DISK_PLAYING 817 #define NET_SDK_ERR_INQUEST_STARTED 818 #define NET_SDK_ERR_LOCAL_OPERATING 819 #define NET_SDK_ERR_INQUEST_NOT_START 820 #define NET_SDK_ERR_CHAN_AUDIO_BIND 821 #define NET_DVR_N_PLUS_ONE_MODE 822 #define NET_DVR_CLOUD_STORAGE_OPENED 823 #define NET_DVR_ERR_OPER_NOT_ALLOWED 824 #define NET_DVR_ERR_NEED_RELOCATE 825 #define NET_SDK_ERR_IR_PORT_ERROR 830 #define NET_SDK_ERR_IR_CMD_ERROR 831 #define NET_SDK_ERR_NOT_INQUESTING 832 #define NET_SDK_ERR_INQUEST_NOT_PAUSED 833 #define NET_DVR_CHECK_PASSWORD_MISTAKE_ERROR 834 #define NET_DVR_CHECK_PASSWORD_NULL_ERROR 835 #define NET_DVR_UNABLE_CALIB_ERROR 836 #define NET_DVR_PLEASE_CALIB_ERROR 837 #define NET_DVR_ERR_PANORAMIC_CAL_EMPTY 838 #define NET_DVR_ERR_CALIB_FAIL_PLEASEAGAIN 839 #define NET_DVR_ERR_DETECTION_LINE 840 #define NET_DVR_ERR_TURN_OFF_IMAGE_PARA 841 #define NET_DVR_EXCEED_FACE_IMAGES_ERROR 843 #define NET_DVR_ANALYSIS_FACE_IMAGES_ERROR 844 #define NET_ERR_ALARM_INPUT_OCCUPIED 845 #define NET_DVR_FACELIB_DATABASE_ERROR 846 #define NET_DVR_FACELIB_DATA_ERROR 847 #define NET_DVR_FACE_DATA_ID_ERROR 848 #define NET_DVR_FACELIB_ID_ERROR 849 #define NET_DVR_EXCEED_FACE_LIBARY_ERROR 850 #define NET_DVR_PIC_ANALYSIS_NO_TARGET_ERROR 851 #define NET_DVR_SUBPIC_ANALYSIS_MODELING_ERROR 852 #define NET_DVR_PIC_ANALYSIS_NO_RESOURCE_ERROR 853 #define NET_DVR_ANALYSIS_ENGINES_NO_RESOURCE_ERROR 854 #define NET_DVR_ANALYSIS_ENGINES_USAGE_EXCEED_ERROR 855 #define NET_DVR_EXCEED_HUMANMISINFO_FILTER_ENABLED_ERROR 856 #define NET_DVR_NAME_ERROR 857 #define NET_DVR_NAME_EXIST_ERROR 858 #define NET_DVR_FACELIB_PIC_IMPORTING_ERROR 859 #define NET_DVR_ERR_CALIB_POSITION 860 #define NET_DVR_ERR_DELETE 861 #define NET_DVR_ERR_SCENE_ID 862 #define NET_DVR_ERR_CALIBING 863 #define NET_DVR_PIC_FORMAT_ERROR 864 #define NET_DVR_PIC_RESOLUTION_INVALID_ERROR 865 #define NET_DVR_PIC_SIZE_EXCEED_ERROR 866 #define NET_DVR_PIC_ANALYSIS_TARGRT_NUM_EXCEED_ERROR 867 #define NET_DVR_ANALYSIS_ENGINES_LOADING_ERROR 868 #define NET_DVR_ANALYSIS_ENGINES_ABNORMA_ERROR 869 #define NET_DVR_ANALYSIS_ENGINES_FACELIB_IMPORTING 870 #define NET_DVR_NO_DATA_FOR_MODELING_ERROR 871 #define NET_DVR_FACE_DATA_MODELING_ERROR 872 #define NET_ERR_FACELIBDATA_OVERLIMIT 873 #define NET_DVR_ANALYSIS_ENGINES_ASSOCIATED_CHANNEL 874 #define NET_DVR_ERR_CUSTOMID_LEN 875 #define NET_DVR_ERR_CUSTOMFACELIBID_REPEAT 876 #define NET_DVR_ERR_CUSTOMHUMANID_REPEAT 877 #define NET_DVR_ERR_URL_DOWNLOAD_FAIL 878 #define NET_DVR_ERR_URL_DOWNLOAD_NOTSTART 879 #define NET_DVR_CFG_FILE_SECRETKEY_ERROR 880 #define NET_DVR_WDR_NOTDISABLE_ERROR 881 #define NET_DVR_HLC_NOTDISABLE_ERROR 882 #define NET_DVR_THERMOMETRY_REGION_OVERSTEP_ERROR 883 #define NET_DVR_ERR_MODELING_DEVICEINTERNAL 884 #define NET_DVR_ERR_MODELING_FACE 885 #define NET_DVR_ERR_MODELING_FACEGRADING 886 #define NET_DVR_ERR_MODELING_FACEGFEATURE 887 #define NET_DVR_ERR_MODELING_FACEGANALYZING 888 #define NET_DVR_ERR_STREAM_LIMIT 889 #define NET_DVR_ERR_STREAM_DESCRIPTION 890 #define NET_DVR_ERR_STREAM_DELETE 891 #define NET_DVR_ERR_CUSTOMSTREAM_NAME 892 #define NET_DVR_ERR_CUSTOMSTREAM_NOTEXISTED 893 #define NET_DVR_ERR_TOO_SHORT_CALIBRATING_TIME 894 #define NET_DVR_ERR_AUTO_CALIBRATE_FAILED 895 #define NET_DVR_ERR_VERIFICATION_FAILED 896 #define NET_DVR_NO_TEMP_SENSOR_ERROR 897 #define NET_DVR_PUPIL_DISTANCE_OVERSIZE_ERROR 898 #define NET_DVR_ERR_UNOPENED_FACE_SNAP 899 #define NET_ERR_CUT_INPUTSTREAM_OVERLIMIT 900 #define NET_ERR_WINCHAN_IDX 901 #define NET_ERR_WIN_LAYER 902 #define NET_ERR_WIN_BLK_NUM 903 #define NET_ERR_OUTPUT_RESOLUTION 904 #define NET_ERR_LAYOUT 905 #define NET_ERR_INPUT_RESOLUTION 906 #define NET_ERR_SUBDEVICE_OFFLINE 907 #define NET_ERR_NO_DECODE_CHAN 908 #define NET_ERR_MAX_WINDOW_ABILITY 909 #define NET_ERR_ORDER_ERROR 910 #define NET_ERR_PLAYING_PLAN 911 #define NET_ERR_DECODER_USED 912 #define NET_ERR_OUTPUT_BOARD_DATA_OVERFLOW 913 #define NET_ERR_SAME_USER_NAME 914 #define NET_ERR_INVALID_USER_NAME 915 #define NET_ERR_MATRIX_USING 916 #define NET_ERR_DIFFERENT_CHAN_TYPE 917 #define NET_ERR_INPUT_CHAN_BINDED 918 #define NET_ERR_BINDED_OUTPUT_CHAN_OVERFLOW 919 #define NET_ERR_MAX_SIGNAL_NUM 920 #define NET_ERR_INPUT_CHAN_USING 921 #define NET_ERR_MANAGER_LOGON 922 #define NET_ERR_USERALREADY_LOGON 923 #define NET_ERR_LAYOUT_INIT 924 #define NET_ERR_BASEMAP_SIZE_NOT_MATCH 925 #define NET_ERR_WINDOW_OPERATING 926 #define NET_ERR_SIGNAL_UPLIMIT 927 #define NET_ERR_SIGNAL_MAX_ENLARGE_TIMES 928 #define NET_ERR_ONE_SIGNAL_MULTI_CROSS 929 #define NET_ERR_ULTRA_HD_SIGNAL_MULTI_WIN 930 #define NET_ERR_MAX_VIRTUAL_LED_WIDTH 931 #define NET_ERR_MAX_VIRTUAL_LED_WORD_LEN 932 #define NET_ERR_SINGLE_OUTPUTPARAM_CONFIG 933 #define NET_ERR_MULTI_WIN_BE_COVER 934 #define NET_ERR_WIN_NOT_EXIST 935 #define NET_ERR_WIN_MAX_SIGNALSOURCE 936 #define NET_ERR_MULTI_WIN_MOVE 937 #define NET_ERR_MULTI_WIN_YPBPR_SDI 938 #define NET_ERR_DIFF_TYPE_OUTPUT_MIXUSE 939 #define NET_ERR_SPLIT_WIN_CROSS 940 #define NET_ERR_SPLIT_WIN_NOT_FULL_SCREEN 941 #define NET_ERR_SPLIT_WIN_MANY_WIN 942 #define NET_ERR_WINDOW_SIZE_OVERLIMIT 943 #define NET_ERR_INPUTSTREAM_ALREADY_JOINT 944 #define NET_ERR_JOINT_INPUTSTREAM_OVERLIMIT 945 #define NET_ERR_LED_RESOLUTION 946 #define NET_ERR_JOINT_SCALE_OVERLIMIT 947 #define NET_ERR_INPUTSTREAM_ALREADY_DECODE 948 #define NET_ERR_INPUTSTREAM_NOTSUPPORT_CAPTURE 949 #define NET_ERR_JOINT_NOTSUPPORT_SPLITWIN 950 #define NET_ERR_MAX_WIN_OVERLAP 951 #define NET_ERR_STREAMID_CHAN_BOTH_VALID 952 #define NET_ERR_NO_ZERO_CHAN 953 #define NEED_RECONNECT 955 #define NET_ERR_NO_STREAM_ID 956 #define NET_DVR_TRANS_NOT_START 957 #define NET_ERR_MAXNUM_STREAM_ID 958 #define NET_ERR_WORKMODE_MISMATCH 959 #define NET_ERR_MODE_IS_USING 960 #define NET_ERR_DEV_PROGRESSING 961 #define NET_ERR_PASSIVE_TRANSCODING 962 #define NET_ERR_RING_NOT_CONFIGURE 964 #define NET_ERR_CLOSE_WINDOW_FIRST 971 #define NET_ERR_SPLIT_WINDOW_NUM_NOT_SUPPORT 972 #define NET_ERR_REACH_ONE_SIGNAL_PREVIEW_MAX_LINK 973 #define NET_ERR_ONLY_SPLITWND_SUPPORT_AMPLIFICATION 974 #define NET_DVR_ERR_WINDOW_SIZE_PLACE 975 #define NET_DVR_ERR_RGIONAL_RESTRICTIONS 976 #define NET_ERR_WNDZOOM_NOT_SUPPORT 977 #define NET_ERR_LED_SCREEN_SIZE 978 #define NET_ERR_OPEN_WIN_IN_ERROR_AREA 979 #define NET_ERR_TITLE_WIN_NOT_SUPPORT_MOVE 980 #define NET_ERR_TITLE_WIN_NOT_SUPPORT_COVER 981 #define NET_ERR_TITLE_WIN_NOT_SUPPORT_SPLIT 982 #define NET_DVR_LED_WINDOWS_ALREADY_CLOSED 983 #define NET_DVR_ERR_CLOSE_WINDOWS 984 #define NET_DVR_ERR_MATRIX_LOOP_ABILITY 985 #define NET_DVR_ERR_MATRIX_LOOP_TIME 986 #define NET_DVR_ERR_LINKED_OUT_ABILITY 987 #define NET_ERR_REACH_SCENE_MAX_NUM 988 #define NET_ERR_SCENE_MEM_NOT_ENOUGH 989 #define NET_ERR_RESOLUTION_NOT_SUPPORT_ODD_VOUT 990 #define NET_ERR_RESOLUTION_NOT_SUPPORT_EVEN_VOUT 991 #define NET_DVR_CANCEL_WND_OPENKEEP_ATTR_FIRST 992 #define NET_SDK_LED_MODE_NOT_SUPPORT_SPLIT 993 #define NET_ERR_VOICETALK_ONLY_SUPPORT_ONE_TALK 994 #define NET_ERR_WND_POSITION_ADJUSTED 995 #define XML_ABILITY_NOTSUPPORT 1000 #define XML_ANALYZE_NOENOUGH_BUF 1001 #define XML_ANALYZE_FIND_LOCALXML_ERROR 1002 #define XML_ANALYZE_LOAD_LOCALXML_ERROR 1003 #define XML_NANLYZE_DVR_DATA_FORMAT_ERROR 1004 #define XML_ANALYZE_TYPE_ERROR 1005 #define XML_ANALYZE_XML_NODE_ERROR 1006 #define XML_INPUT_PARAM_ERROR 1007 #define NET_DVR_ERR_RETURNED_XML_DATA 1008 #define NET_ERR_LEDAREA_EXIST_WINDOW 1051 #define NET_ERR_AUDIO_EXIST 1052 #define NET_ERR_MATERIAL_NAME_EXIST 1053 #define NET_ERR_MATERIAL_APPROVE_STATE 1054 #define NET_ERR_DATAHD_SIGNAL_FORMAT 1055 #define NET_ERR_SCENE_SWITCHING 1056 #define NER_ERR_DATA_TRANSFER 1057 #define NET_ERR_DATA_RESTORE 1058 #define NET_ERR_CHECK_NOT_ENABLE 1059 #define NET_ERR_AREA_OFFLINE 1060 #define NET_ERR_SCREEN_TYPE 1061 #define NET_ERR_MIN_OPERATE_UNIT 1062 #define NET_ERR_MAINHD_NOT_BACKUP 1063 #define NET_ERR_ONE_BACKUP_HD 1064 #define NET_ERR_CONNECT_SUB_SYSTEM_ABNORMAL 1065 #define NET_ERR_SERIAL_PORT_VEST 1066 #define NET_ERR_WHITE_LIST_FULL 1067 #define NET_ERR_NOT_MATCH_SOURCE 1068 #define NET_ERR_CLOCK_VIRTUAL_LED_FULL 1069 #define NET_ERR_MAX_WIN_SIGNAL_LOOP_NUM 1070 #define NET_ERR_RESOLUTION_NO_MATCH_FRAME 1071 #define NET_ERR_PLT_USERID 1100 #define NET_ERR_TRANS_CHAN_START 1101 #define NET_ERR_DEV_UPGRADING 1102 #define NET_ERR_MISMATCH_UPGRADE_PACK_TYPE 1103 #define NET_ERR_DEV_FORMATTING 1104 #define NET_ERR_MISMATCH_UPGRADE_PACK_VERSION 1105 #define NET_ERR_PT_LOCKED 1106 #define NET_DVR_LOGO_OVERLAY_WITHOUT_UPLOAD_PIC 1110 #define NET_DVR_ERR_ILLEGAL_VERIFICATION_CODE 1111 #define NET_DVR_ERR_LACK_VERIFICATION_CODE 1112 #define NET_DVR_ERR_FORBIDDEN_IP 1113 #define NET_DVR_ERR_UNLOCKPTZ 1114 #define NET_DVR_ERR_COUNTAREA_LARGE 1116 #define NET_DVR_ERR_LABEL_ID_EXCEED 1117 #define NET_DVR_ERR_LABEL_TYPE 1118 #define NET_DVR_ERR_LABEL_FULL 1119 #define NET_DVR_ERR_LABEL_DISABLED 1120 #define NET_DVR_ERR_DOME_PT_TRANS_TO_DOME_XY 1121 #define NET_DVR_ERR_DOME_PT_TRANS_TO_PANORAMA_XY 1122 #define NET_DVR_ERR_PANORAMA_XY_TRANS_TO_DOME_PT 1123 #define NET_DVR_ERR_SCENE_DUR_TIME_LESS_THAN_INTERV_TIME 1124 #define NET_DVR_ERR_HTTP_BKN_EXCEED_ONE 1125 #define NET_DVR_ERR_DELETING_FAILED_TURN_OFF_HTTPS_ESDK_WEBSOCKETS_FIRST 1126 #define NET_DVR_ERR_DELETING_FAILED_TURN_OFF_HTTPS_ESDK_FIRST 1127 #define NET_ERR_SEARCHING_MODULE 1201 #define NET_ERR_REGISTERING_MODULE 1202 #define NET_ERR_GETTING_ZONES 1203 #define NET_ERR_GETTING_TRIGGERS 1204 #define NET_ERR_ARMED_STATUS 1205 #define NET_ERR_PROGRAM_MODE_STATUS 1206 #define NET_ERR_WALK_TEST_MODE_STATUS 1207 #define NET_ERR_BYPASS_STATUS 1208 #define NET_ERR_DISABLED_MODULE_STATUS 1209 #define NET_ERR_NOT_SUPPORT_OPERATE_ZONE 1210 #define NET_ERR_NOT_SUPPORT_MOD_MODULE_ADDR 1211 #define NET_ERR_UNREGISTERED_MODULE 1212 #define NET_ERR_PUBLIC_SUBSYSTEM_ASSOCIATE_SELF 1213 #define NET_ERR_EXCEEDS_ASSOCIATE_SUBSYSTEM_NUM 1214 #define NET_ERR_BE_ASSOCIATED_BY_PUBLIC_SUBSYSTEM 1215 #define NET_ERR_ZONE_FAULT_STATUS 1216 #define NET_ERR_SAME_EVENT_TYPE 1217 #define NET_ERR_ZONE_ALARM_STATUS 1218 #define NET_ERR_EXPANSION_BUS_SHORT_CIRCUIT 1219 #define NET_ERR_PWD_CONFLICT 1220 #define NET_ERR_DETECTOR_GISTERED_BY_OTHER_ZONE 1221 #define NET_ERR_DETECTOR_GISTERED_BY_OTHER_PU 1222 #define NET_ERR_DETECTOR_DISCONNECT 1223 #define NET_ERR_CALL_BUSY 1224 #define NET_DVR_ERR_ZONE_TAMPER_STAUS 1225 #define NET_DVR_ERR_WIRELESS_DEV_REGISTER 1226 #define NET_DVR_ERR_WIRELESS_DEV_ADDED 1227 #define NET_DVR_ERR_WIRELESS_DEV_OFFLINE 1228 #define NET_DVR_ERR_WIRELESS_DEV_TAMPER_STATUS 1229 #define NET_DVR_ERR_GPRS_PHONE_CONFLICT 1230 #define NET_ERR_GET_ALL_RETURN_OVER 1300 #define NET_ERR_RESOURCE_USING 1301 #define NET_ERR_FILE_SIZE_OVERLIMIT 1302 #define NET_ERR_MATERIAL_NAME 1303 #define NET_ERR_MATERIAL_NAME_LEN 1304 #define NET_ERR_MATERIAL_REMARK 1305 #define NET_ERR_MATERIAL_REMARK_LEN 1306 #define NET_ERR_MATERIAL_SHARE_PROPERTY 1307 #define NET_ERR_UNSUPPORT_MATERIAL_TYPE 1308 #define NET_ERR_MATERIAL_NOT_EXIST 1309 #define NET_ERR_READ_FROM_DISK 1310 #define NET_ERR_WRITE_TO_DISK 1311 #define NET_ERR_WRITE_DATA_BASE 1312 #define NET_ERR_NO_APPROVED_NOT_EXPORT 1313 #define NET_ERR_MAX_SCREEN_CTRL_NUM 1351 #define NET_ERR_FILE_NOT_EXIST 1352 #define NET_ERR_THUMBNAIL_NOT_EXIST 1353 #define NET_ERR_DEV_OPEN_FILE_FAIL 1354 #define NET_ERR_SERVER_READ_FILE_FAIL 1355 #define NET_ERR_FILE_SIZE 1356 #define NET_ERR_FILE_NAME 1357 #define NET_ERR_BROADCAST_BUSY 1358 #define NET_DVR_ERR_LANENUM_EXCEED 1400 #define NET_DVR_ERR_PRAREA_EXCEED 1401 #define NET_DVR_ERR_LIGHT_PARAM 1402 #define NET_DVR_ERR_LANE_LINE_INVALID 1403 #define NET_DVR_ERR_STOP_LINE_INVALID 1404 #define NET_DVR_ERR_LEFTORRIGHT_LINE_INVALID 1405 #define NET_DVR_ERR_LANE_NO_REPEAT 1406 #define NET_DVR_ERR_PRAREA_INVALID 1407 #define NET_DVR_ERR_LIGHT_NUM_EXCEED 1408 #define NET_DVR_ERR_SUBLIGHT_NUM_INVALID 1409 #define NET_DVR_ERR_LIGHT_AREASIZE_INVALID 1410 #define NET_DVR_ERR_LIGHT_COLOR_INVALID 1411 #define NET_DVR_ERR_LIGHT_DIRECTION_INVALID 1412 #define NET_DVR_ERR_LACK_IOABLITY 1413 #define NET_DVR_ERR_FTP_PORT 1414 #define NET_DVR_ERR_FTP_CATALOGUE 1415 #define NET_DVR_ERR_FTP_UPLOAD_TYPE 1416 #define NET_DVR_ERR_FLASH_PARAM_WRITE 1417 #define NET_DVR_ERR_FLASH_PARAM_READ 1418 #define NET_DVR_ERR_PICNAME_DELIMITER 1419 #define NET_DVR_ERR_PICNAME_ITEM 1420 #define NET_DVR_ERR_PLATE_RECOGNIZE_TYPE 1421 #define NET_DVR_ERR_CAPTURE_TIMES 1422 #define NET_DVR_ERR_LOOP_DISTANCE 1423 #define NET_DVR_ERR_LOOP_INPUT_STATUS 1424 #define NET_DVR_ERR_RELATE_IO_CONFLICT 1425 #define NET_DVR_ERR_INTERVAL_TIME 1426 #define NET_DVR_ERR_SIGN_SPEED 1427 #define NET_DVR_ERR_PIC_FLIP 1428 #define NET_DVR_ERR_RELATE_LANE_NUMBER 1429 #define NET_DVR_ERR_TRIGGER_MODE 1430 #define NET_DVR_ERR_DELAY_TIME 1431 #define NET_DVR_ERR_EXCEED_RS485_COUNT 1432 #define NET_DVR_ERR_RADAR_TYPE 1433 #define NET_DVR_ERR_RADAR_ANGLE 1434 #define NET_DVR_ERR_RADAR_SPEED_VALID_TIME 1435 #define NET_DVR_ERR_RADAR_LINE_CORRECT 1436 #define NET_DVR_ERR_RADAR_CONST_CORRECT 1437 #define NET_DVR_ERR_RECORD_PARAM 1438 #define NET_DVR_ERR_LIGHT_WITHOUT_COLOR_AND_DIRECTION 1439 #define NET_DVR_ERR_LIGHT_WITHOUT_DETECTION_REGION 1440 #define NET_DVR_ERR_RECOGNIZE_PROVINCE_PARAM 1441 #define NET_DVR_ERR_SPEED_TIMEOUT 1442 #define NET_DVR_ERR_NTP_TIMEZONE 1443 #define NET_DVR_ERR_NTP_INTERVAL_TIME 1444 #define NET_DVR_ERR_NETWORK_CARD_NUM 1445 #define NET_DVR_ERR_DEFAULT_ROUTE 1446 #define NET_DVR_ERR_BONDING_WORK_MODE 1447 #define NET_DVR_ERR_SLAVE_CARD 1448 #define NET_DVR_ERR_PRIMARY_CARD 1449 #define NET_DVR_ERR_DHCP_PPOE_WORK 1450 #define NET_DVR_ERR_NET_INTERFACE 1451 #define NET_DVR_ERR_MTU 1452 #define NET_DVR_ERR_NETMASK 1453 #define NET_DVR_ERR_IP_INVALID 1454 #define NET_DVR_ERR_MULTICAST_IP_INVALID 1455 #define NET_DVR_ERR_GATEWAY_INVALID 1456 #define NET_DVR_ERR_DNS_INVALID 1457 #define NET_DVR_ERR_ALARMHOST_IP_INVALID 1458 #define NET_DVR_ERR_IP_CONFLICT 1459 #define NET_DVR_ERR_NETWORK_SEGMENT 1460 #define NET_DVR_ERR_NETPORT 1461 #define NET_DVR_ERR_PPPOE_NOSUPPORT 1462 #define NET_DVR_ERR_DOMAINNAME_NOSUPPORT 1463 #define NET_DVR_ERR_NO_SPEED 1464 #define NET_DVR_ERR_IOSTATUS_INVALID 1465 #define NET_DVR_ERR_BURST_INTERVAL_INVALID 1466 #define NET_DVR_ERR_RESERVE_MODE 1467 #define NET_DVR_ERR_LANE_NO 1468 #define NET_DVR_ERR_COIL_AREA_TYPE 1469 #define NET_DVR_ERR_TRIGGER_AREA_PARAM 1470 #define NET_DVR_ERR_SPEED_LIMIT_PARAM 1471 #define NET_DVR_ERR_LANE_PROTOCOL_TYPE 1472 #define NET_DVR_ERR_INTERVAL_TYPE 1473 #define NET_DVR_ERR_INTERVAL_DISTANCE 1474 #define NET_DVR_ERR_RS485_ASSOCIATE_DEVTYPE 1475 #define NET_DVR_ERR_RS485_ASSOCIATE_LANENO 1476 #define NET_DVR_ERR_LANENO_ASSOCIATE_MULTIRS485 1477 #define NET_DVR_ERR_LIGHT_DETECTION_REGION 1478 #define NET_DVR_ERR_DN2D_NOSUPPORT 1479 #define NET_DVR_ERR_IRISMODE_NOSUPPORT 1480 #define NET_DVR_ERR_WB_NOSUPPORT 1481 #define NET_DVR_ERR_IO_EFFECTIVENESS 1482 #define NET_DVR_ERR_LIGHTNO_MAX 1483 #define NET_DVR_ERR_LIGHTNO_CONFLICT 1484 #define NET_DVR_ERR_CANCEL_LINE 1485 #define NET_DVR_ERR_STOP_LINE 1486 #define NET_DVR_ERR_RUSH_REDLIGHT_LINE 1487 #define NET_DVR_ERR_IOOUTNO_MAX 1488 #define NET_DVR_ERR_IOOUTNO_AHEADTIME_MAX 1489 #define NET_DVR_ERR_IOOUTNO_IOWORKTIME 1490 #define NET_DVR_ERR_IOOUTNO_FREQMULTI 1491 #define NET_DVR_ERR_IOOUTNO_DUTYRATE 1492 #define NET_DVR_ERR_VIDEO_WITH_EXPOSURE 1493 #define NET_DVR_ERR_PLATE_BRIGHTNESS_WITHOUT_FLASHDET 1494 #define NET_DVR_ERR_RECOGNIZE_TYPE_PARAM 1495 #define NET_DVR_ERR_PALTE_RECOGNIZE_AREA_PARAM 1496 #define NET_DVR_ERR_PORT_CONFLICT 1497 #define NET_DVR_ERR_LOOP_IP 1498 #define NET_DVR_ERR_DRIVELINE_SENSITIVE 1499 #define NET_ERR_VQD_TIME_CONFLICT 1500 #define NET_ERR_VQD_PLAN_NO_EXIST 1501 #define NET_ERR_VQD_CHAN_NO_EXIST 1502 #define NET_ERR_VQD_CHAN_MAX 1503 #define NET_ERR_VQD_TASK_MAX 1504 #define NET_SDK_GET_INPUTSTREAMCFG 1551 #define NET_SDK_AUDIO_SWITCH_CONTROL 1552 #define NET_SDK_GET_VIDEOWALLDISPLAYNO 1553 #define NET_SDK_GET_ALLSUBSYSTEM_BASIC_INFO 1554 #define NET_SDK_SET_ALLSUBSYSTEM_BASIC_INFO 1555 #define NET_SDK_GET_AUDIO_INFO 1556 #define NET_SDK_GET_MATRIX_STATUS_V50 1557 #define NET_SDK_DELETE_MONITOR_INFO 1558 #define NET_SDK_DELETE_CAMERA_INFO 1559 #define NET_DVR_ERR_EXCEED_MAX_CAPTURE_TIMES 1600 #define NET_DVR_ERR_REDAR_TYPE_CONFLICT 1601 #define NET_DVR_ERR_LICENSE_PLATE_NULL 1602 #define NET_DVR_ERR_WRITE_DATABASE 1603 #define NET_DVR_ERR_LICENSE_EFFECTIVE_TIME 1604 #define NET_DVR_ERR_PRERECORDED_STARTTIME_LONG 1605 #define NET_DVR_ERR_TRIGGER_RULE_LINE 1606 #define NET_DVR_ERR_LEFTRIGHT_TRIGGERLINE_NOTVERTICAL 1607 #define NET_DVR_ERR_FLASH_LAMP_MODE 1608 #define NET_DVR_ERR_ILLEGAL_SNAPSHOT_NUM 1609 #define NET_DVR_ERR_ILLEGAL_DETECTION_TYPE 1610 #define NET_DVR_ERR_POSITIVEBACK_TRIGGERLINE_HIGH 1611 #define NET_DVR_ERR_MIXEDMODE_CAPTYPE_ALLTARGETS 1612 #define NET_DVR_ERR_CARSIGNSPEED_GREATERTHAN_LIMITSPEED 1613 #define NET_DVR_ERR_BIGCARSIGNSPEED_GREATERTHAN_LIMITSPEED 1614 #define NET_DVR_ERR_BIGCARSIGNSPEED_GREATERTHAN_CARSIGNSPEED 1615 #define NET_DVR_ERR_BIGCARLIMITSPEED_GREATERTHAN_CARLIMITSPEED 1616 #define NET_DVR_ERR_BIGCARLOWSPEEDLIMIT_GREATERTHAN_CARLOWSPEEDLIMIT 1617 #define NET_DVR_ERR_CARLIMITSPEED_GREATERTHAN_EXCEPHIGHSPEED 1618 #define NET_DVR_ERR_BIGCARLIMITSPEED_GREATERTHAN_EXCEPHIGHSPEED 1619 #define NET_DVR_ERR_STOPLINE_MORETHAN_TRIGGERLINE 1620 #define NET_DVR_ERR_YELLOWLIGHTTIME_INVALID 1621 #define NET_DVR_ERR_TRIGGERLINE1_FOR_NOT_YIELD_TO_PEDESTRIAN_CANNOT_EXCEED_TRIGGERLINE2 1622 #define NET_DVR_ERR_TRIGGERLINE2_FOR_NOT_YIELD_TO_PEDESTRIAN_CANNOT_EXCEED_TRIGGERLINE1 1623 #define NET_ERR_TIME_OVERLAP 1900 #define NET_ERR_HOLIDAY_PLAN_OVERLAP 1901 #define NET_ERR_CARDNO_NOT_SORT 1902 #define NET_ERR_CARDNO_NOT_EXIST 1903 #define NET_ERR_ILLEGAL_CARDNO 1904 #define NET_ERR_ZONE_ALARM 1905 #define NET_ERR_ZONE_OPERATION_NOT_SUPPORT 1906 #define NET_ERR_INTERLOCK_ANTI_CONFLICT 1907 #define NET_ERR_DEVICE_CARD_FULL 1908 #define NET_ERR_HOLIDAY_GROUP_DOWNLOAD 1909 #define NET_ERR_LOCAL_CONTROL_OFF 1910 #define NET_ERR_LOCAL_CONTROL_DISADD 1911 #define NET_ERR_LOCAL_CONTROL_HASADD 1912 #define NET_ERR_LOCAL_CONTROL_DOORNO_CONFLICT 1913 #define NET_ERR_LOCAL_CONTROL_COMMUNICATION_FAIL 1914 #define NET_ERR_OPERAND_INEXISTENCE 1915 #define NET_ERR_LOCAL_CONTROL_OVER_LIMIT 1916 #define NET_ERR_DOOR_OVER_LIMIT 1917 #define NET_ERR_ALARM_OVER_LIMIT 1918 #define NET_ERR_LOCAL_CONTROL_ADDRESS_INCONFORMITY_TYPE 1919 #define NET_ERR_NOT_SUPPORT_ONE_MORE_CARD 1920 #define NET_ERR_DELETE_NO_EXISTENCE_FACE 1921 #define NET_ERR_DOOR_SPECIAL_PASSWORD_REPEAT 1922 #define NET_ERR_AUTH_CODE_REPEAT 1923 #define NET_ERR_DEPLOY_EXCEED_MAX 1924 #define NET_ERR_NOT_SUPPORT_DEL_FP_BY_ID 1925 #define NET_ERR_TIME_RANGE 1926 #define NET_DVR_ERR_OUTDOOR_COMMUNICATION 1950 #define NET_DVR_ERR_ROOMNO_UNDEFINED 1951 #define NET_DVR_ERR_NO_CALLING 1952 #define NET_DVR_ERR_RINGING 1953 #define NET_DVR_ERR_IS_CALLING_NOW 1954 #define NET_DVR_ERR_LOCK_PASSWORD_WRONG 1955 #define NET_DVR_ERR_CONTROL_LOCK_FAILURE 1956 #define NET_DVR_ERR_CONTROL_LOCK_OVERTIME 1957 #define NET_DVR_ERR_LOCK_DEVICE_BUSY 1958 #define NET_DVR_ERR_UNOPEN_REMOTE_LOCK_FUNCTION 1959 #define NET_DVR_ERR_FILE_NOT_COMPLETE 2100 #define NET_DVR_ERR_IPC_EXIST 2101 #define NET_DVR_ERR_ADD_IPC 2102 #define NET_DVR_ERR_OUT_OF_RES 2103 #define NET_DVR_ERR_CONFLICT_TO_LOCALIP 2104 #define NET_DVR_ERR_IP_SET 2105 #define NET_DVR_ERR_PORT_SET 2106 #define NET_ERR_WAN_NOTSUPPORT 2107 #define NET_ERR_MUTEX_FUNCTION 2108 #define NET_ERR_QUESTION_CONFIGNUM 2109 #define NET_ERR_FACECHAN_NORESOURCE 2110 #define NET_ERR_DATA_CALLBACK 2111 #define NET_ERR_ATM_VCA_CHAN_IS_RELATED 2112 #define NET_ERR_ATM_VCA_CHAN_IS_OVERLAPED 2113 #define NET_ERR_FACE_CHAN_UNOVERLAP_EACH_OTHER 2114 #define NET_ERR_ACHIEVE_MAX_CHANNLE_LIMIT 2115 #define NET_DVR_SMD_ENCODING_NORESOURSE 2116 #define NET_DVR_SMD_DECODING_NORESOURSE 2117 #define NET_DVR_FACELIB_DATA_PROCESSING 2118 #define NET_DVR_ERR_LARGE_TIME_DIFFRENCE 2119 #define NET_DVR_NO_SUPPORT_WITH_PLAYBACK 2120 #define NET_DVR_CHANNEL_NO_SUPPORT_WITH_SMD 2121 #define NET_DVR_CHANNEL_NO_SUPPORT_WITH_FD 2122 #define NET_DVR_ILLEGAL_PHONE_NUMBER 2123 #define NET_DVR_ILLEGAL_CERITIFICATE_NUMBER 2124 #define NET_DVR_ERR_CHANNEL_RESOLUTION_NO_SUPPORT 2125 #define NET_DVR_ERR_CHANNEL_COMPRESSION_NO_SUPPORT 2126 #define NET_DVR_ERR_CLUSTER_DEVICE_TOO_LESS 2127 #define NET_DVR_ERR_CLUSTER_DEL_DEVICE_CM_PLAYLOAD 2128 #define NET_DVR_ERR_CLUSTER_DEVNUM_OVER_UPPER_LIMIT 2129 #define NET_DVR_ERR_CLUSTER_DEVICE_TYPE_INCONFORMITY 2130 #define NET_DVR_ERR_CLUSTER_DEVICE_VERSION_INCONFORMITY 2131 #define NET_DVR_ERR_CLUSTER_IP_CONFLICT 2132 #define NET_DVR_ERR_CLUSTER_IP_INVALID 2133 #define NET_DVR_ERR_CLUSTER_PORT_CONFLICT 2134 #define NET_DVR_ERR_CLUSTER_PORT_INVALID 2135 #define NET_DVR_ERR_CLUSTER_USERNAEM_OR_PASSWORD_INVALID 2136 #define NET_DVR_ERR_CLUSTER_DEVICE_ALREADY_EXIST 2137 #define NET_DVR_ERR_CLUSTER_DEVICE_NOT_EXIST 2138 #define NET_DVR_ERR_CLUSTER_NON_CLUSTER_MODE 2139 #define NET_DVR_ERR_CLUSTER_IP_NOT_SAME_LAN 2140 #define NET_DVR_ERR_CAPTURE_PACKAGE_FAILED 2141 #define NET_DVR_ERR_CAPTURE_PACKAGE_PROCESSING 2142 #define NET_DVR_ERR_SAFETY_HELMET_NO_RESOURCE 2143 #define NET_DVR_NO_SUPPORT_WITH_ABSTRACT 2144 #define NET_DVR_ERR_TAPE_LIB_NEED_STOP_ARCHIVE 2145 #define NET_DVR_INSUFFICIENT_DEEP_LEARNING_RESOURCES 2146 #define NET_DVR_ERR_IDENTITY_KEY 2147 #define NET_DVR_MISSING_IDENTITY_KEY 2148 #define NET_DVR_NO_SUPPORT_WITH_PERSON_DENSITY_DETECT 2149 #define NET_DVR_IPC_RESOLUTION_OVERFLOW 2150 #define NET_DVR_IPC_BITRATE_OVERFLOW 2151 #define NET_DVR_ERR_INVALID_TASKID 2152 #define NET_DVR_PANEL_MODE_NOT_CONFIG 2153 #define NET_DVR_NO_HUMAN_ENGINES_RESOURCE 2154 #define NET_DVR_ERR_TASK_NUMBER_OVERFLOW 2155 #define NET_DVR_ERR_COLLISION_TIME_OVERFLOW 2156 #define NET_DVR_ERR_CAPTURE_PACKAGE_NO_USB 2157 #define NET_DVR_ERR_NO_SET_SECURITY_EMAIL 2158 #define NET_DVR_ERR_EVENT_NOTSUPPORT 2159 #define NET_DVR_ERR_PASSWORD_FORMAT 2160 #define NET_DVR_ACCESS_FRONT_DEVICE_PARAM_FAILURE 2161 #define NET_DVR_ACCESS_FRONT_DEVICE_STREAM_FAILURE 2162 #define NET_DVR_ERR_USERNAME_FORMAT 2163 #define NET_DVR_ERR_UNOPENED_HIGH_RESOLUTION_MODE 2164 #define NET_DVR_ERR_TOO_SMALL_QUATO 2165 #define NET_DVR_ERR_EMAIL_FORMAT 2166 #define NET_DVR_ERR_SECURITY_CODE_FORMAT 2167 #define NET_DVR_PD_SPACE_TOO_SMALL 2168 #define NET_DVR_PD_NUM_TOO_BIG 2169 #define NET_DVR_ERR_USB_IS_FULL 2170 #define NET_DVR_EXCEED_MAX_SMD_TYPE 2171 #define NET_DVR_CHANNEL_NO_SUPPORT_WITH_BEHAVIOR 2172 #define NET_DVR_NO_BEHAVIOR_ENGINES_RESOURCE 2173 #define NET_DVR_NO_RETENTION_ENGINES_RESOURCE 2174 #define NET_DVR_NO_LEAVE_POSITION_ENGINES_RESOURCE 2175 #define NET_DVR_NO_PEOPLE_NUM_CHANGE_ENGINES_RESOURCE 2176 #define NET_DVR_PANEL_MODE_NUM_OVER_LIMIT 2177 #define NET_DVR_SURROUND_MODE_NUM_OVER_LIMIT 2178 #define NET_DVR_FACE_MODE_NUM_OVER_LIMIT 2179 #define NET_DVR_SAFETYCABIN_MODE_NUM_OVER_LIMIT 2180 #define NET_DVR_DETECT_REGION_RANGE_INVALID 2181 #define NET_DVR_CHANNEL_CAPTURE_PICTURE_FAILURE 2182 #define NET_DVR_VCACHAN_IS_NORESOURCE 2183 #define NET_DVR_IPC_NUM_REACHES_LIMIT 2184 #define NET_DVR_IOT_NUM_REACHES_LIMIT 2185 #define NET_DVR_IOT_CHANNEL_DEVICE_EXIST 2186 #define NET_DVR_IOT_CHANNEL_DEVICE_NOT_EXIST 2187 #define NET_DVR_INVALID_IOT_PROTOCOL_TYPE 2188 #define NET_DVR_INVALID_EZVIZ_SECRET_KEY 2189 #define NET_DVR_DUPLICATE_IOT_DEVICE 2190 #define NET_DVR_SADP_MODIFY_FALIURE 2191 #define NET_DVR_IPC_NETWORK_ABNORMAL 2192 #define NET_DVR_IPC_PASSWORD_ERROR 2193 #define NET_DVR_ERROR_IPC_TYPE 2194 #define NET_DVR_ERROR_IPC_LIST_NOT_EMPTY 2195 #define NET_DVR_ERROR_IPC_LIST_NOT_MATCH_PAIRING 2196 #define NET_DVR_ERROR_IPC_BAD_LANGUAGE 2197 #define NET_DVR_ERROR_IPC_IS_LOCKING 2198 #define NET_DVR_ERROR_IPC_NOT_ACTIVATED 2199 #define NET_DVR_FIELD_CODING_NOT_SUPPORT 2200 #define NET_DVR_ERROR_H323_NOT_SUPPORT_H265 2201 #define NET_DVR_ERROR_EXPOSURE_TIME_TOO_BIG_IN_MODE_P 2202 #define NET_DVR_ERROR_EXPOSURE_TIME_TOO_BIG_IN_MODE_N 2203 #define NET_DVR_ERR_NOTSUPPORT_DEICING 3001 #define NET_DVR_ERR_THERMENABLE_CLOSE 3002 #define NET_DVR_ERR_NOTMEET_DEICING 3003 #define NET_DVR_ERR_PANORAMIC_LIMIT_OPERATED 3004 #define NET_DVR_ERR_SMARTH264_ROI_OPERATED 3005 #define NET_DVR_ERR_RULENUM_LIMIT 3006 #define NET_DVR_ERR_LASER_DEICING_OPERATED 3007 #define NET_DVR_ERR_OFFDIGITALZOOM_OR_MINZOOMLIMIT 3008 #define NET_DVR_ERR_FIREWAITING 3009 #define NET_DVR_SYNCHRONIZEFOV_ERROR 3010 #define NET_DVR_CERTIFICATE_VALIDATION_ERROR 3011 #define NET_DVR_CERTIFICATES_NUM_EXCEED_ERROR 3012 #define NET_ERR_NPQ_BASE_INDEX 8000 #define NET_ERR_NPQ_PARAM (NET_ERR_NPQ_BASE_INDEX + 1) #define NET_ERR_NPQ_SYSTEM (NET_ERR_NPQ_BASE_INDEX + 2) #define NET_ERR_NPQ_GENRAL (NET_ERR_NPQ_BASE_INDEX + 3) #define NET_ERR_NPQ_PRECONDITION (NET_ERR_NPQ_BASE_INDEX + 4) #define NET_ERR_NPQ_NOTSUPPORT (NET_ERR_NPQ_BASE_INDEX + 5) #define NET_ERR_NPQ_NOTCALLBACK (NET_ERR_NPQ_BASE_INDEX + 100) #define NET_ERR_NPQ_LOADLIB (NET_ERR_NPQ_BASE_INDEX + 101) #define NET_ERR_NPQ_STEAM_CLOSE (NET_ERR_NPQ_BASE_INDEX + 104) #define NET_ERR_NPQ_MAX_LINK (NET_ERR_NPQ_BASE_INDEX + 110) #define NET_ERR_NPQ_STREAM_CFG (NET_ERR_NPQ_BASE_INDEX + 111) #define NET_DVR_SUPPORT_DDRAW 0x01 #define NET_DVR_SUPPORT_BLT 0x02 #define NET_DVR_SUPPORT_BLTFOURCC 0x04 #define NET_DVR_SUPPORT_BLTSHRINKX 0x08 #define NET_DVR_SUPPORT_BLTSHRINKY 0x10 #define NET_DVR_SUPPORT_BLTSTRETCHX 0x20 #define NET_DVR_SUPPORT_BLTSTRETCHY 0x40 #define NET_DVR_SUPPORT_SSE 0x80 #define NET_DVR_SUPPORT_MMX 0x100 #define LIGHT_PWRON 2 #define WIPER_PWRON 3 #define FAN_PWRON 4 #define HEATER_PWRON 5 #define AUX_PWRON1 6 #define AUX_PWRON2 7 #define SET_PRESET 8 #define CLE_PRESET 9 #define ZOOM_IN 11 #define ZOOM_OUT 12 #define FOCUS_NEAR 13 #define FOCUS_FAR 14 #define IRIS_OPEN 15 #define IRIS_CLOSE 16 #define TILT_UP 21 #define TILT_DOWN 22 #define PAN_LEFT 23 #define PAN_RIGHT 24 #define UP_LEFT 25 #define UP_RIGHT 26 #define DOWN_LEFT 27 #define DOWN_RIGHT 28 #define PAN_AUTO 29 #define FILL_PRE_SEQ 30 #define SET_SEQ_DWELL 31 #define SET_SEQ_SPEED 32 #define CLE_PRE_SEQ 33 #define STA_MEM_CRUISE 34 #define STO_MEM_CRUISE 35 #define RUN_CRUISE 36 #define RUN_SEQ 37 #define STOP_SEQ 38 #define GOTO_PRESET 39 #define DEL_SEQ 43 #define STOP_CRUISE 44 #define DELETE_CRUISE 45 #define DELETE_ALL_CRUISE 46 #define PAN_CIRCLE 50 #define DRAG_PTZ 51 #define LINEAR_SCAN 52 #define CLE_ALL_PRESET 53 #define CLE_ALL_SEQ 54 #define CLE_ALL_CRUISE 55 #define POPUP_MENU 56 #define TILT_DOWN_ZOOM_IN 58 #define TILT_DOWN_ZOOM_OUT 59 #define PAN_LEFT_ZOOM_IN 60 #define PAN_LEFT_ZOOM_OUT 61 #define PAN_RIGHT_ZOOM_IN 62 #define PAN_RIGHT_ZOOM_OUT 63 #define UP_LEFT_ZOOM_IN 64 #define UP_LEFT_ZOOM_OUT 65 #define UP_RIGHT_ZOOM_IN 66 #define UP_RIGHT_ZOOM_OUT 67 #define DOWN_LEFT_ZOOM_IN 68 #define DOWN_LEFT_ZOOM_OUT 69 #define DOWN_RIGHT_ZOOM_IN 70 #define DOWN_RIGHT_ZOOM_OUT 71 #define TILT_UP_ZOOM_IN 72 #define TILT_UP_ZOOM_OUT 73 #define DVR_VEHICLE_CONTROL_LIST 0x1 #define NET_DVR_PLAYSTART 1 #define NET_DVR_PLAYSTOP 2 #define NET_DVR_PLAYPAUSE 3 #define NET_DVR_PLAYRESTART 4 #define NET_DVR_PLAYFAST 5 #define NET_DVR_PLAYSLOW 6 #define NET_DVR_PLAYNORMAL 7 #define NET_DVR_PLAYFRAME 8 #define NET_DVR_PLAYSTARTAUDIO 9 #define NET_DVR_PLAYSTOPAUDIO 10 #define NET_DVR_PLAYAUDIOVOLUME 11 #define NET_DVR_PLAYSETPOS 12 #define NET_DVR_PLAYGETPOS 13 #define NET_DVR_PLAYGETTIME 14 #define NET_DVR_PLAYGETFRAME 15 #define NET_DVR_GETTOTALFRAMES 16 #define NET_DVR_GETTOTALTIME 17 #define NET_DVR_THROWBFRAME 20 #define NET_DVR_SETSPEED 24 #define NET_DVR_KEEPALIVE 25 #define NET_DVR_PLAYSETTIME 26 #define NET_DVR_PLAYGETTOTALLEN 27 #define NET_DVR_PLAYSETTIME_V50 28 #define NET_DVR_PLAY_FORWARD 29 #define NET_DVR_PLAY_REVERSE 30 #define NET_DVR_SET_DECODEFFRAMETYPE 31 #define NET_DVR_SET_TRANS_TYPE 32 #define NET_DVR_PLAY_CONVERT 33 #define NET_DVR_START_DRAWFRAME 34 #define NET_DVR_STOP_DRAWFRAME 35 #define NET_DVR_CHANGEWNDRESOLUTION 36 #define NET_DVR_RESETBUFFER 37 #define NET_DVR_VOD_DRAG_ING 38 #define NET_DVR_VOD_DRAG_END 39 #define NET_DVR_VOD_RESET_PLAYTIME 40 #define PLAYM4_DECODE_NORMAIL 0 #define PLAYM4_DECODE_KEY_FRAME 1 #define PLAYM4_DECODE_NONE 2 #define PLAYM4_DECODE_TEMPORAL_LAYER_0 3 #define PLAYM4_DECODE_TEMPORAL_LAYER_1 4 #define KEY_CODE_1 1 #define KEY_CODE_2 2 #define KEY_CODE_3 3 #define KEY_CODE_4 4 #define KEY_CODE_5 5 #define KEY_CODE_6 6 #define KEY_CODE_7 7 #define KEY_CODE_8 8 #define KEY_CODE_9 9 #define KEY_CODE_0 10 #define KEY_CODE_POWER 11 #define KEY_CODE_MENU 12 #define KEY_CODE_ENTER 13 #define KEY_CODE_CANCEL 14 #define KEY_CODE_UP 15 #define KEY_CODE_DOWN 16 #define KEY_CODE_LEFT 17 #define KEY_CODE_RIGHT 18 #define KEY_CODE_EDIT 19 #define KEY_CODE_ADD 20 #define KEY_CODE_MINUS 21 #define KEY_CODE_PLAY 22 #define KEY_CODE_REC 23 #define KEY_CODE_PAN 24 #define KEY_CODE_M 25 #define KEY_CODE_A 26 #define KEY_CODE_F1 27 #define KEY_CODE_F2 28 #define KEY_PTZ_UP_START KEY_CODE_UP #define KEY_PTZ_UP_STOP 32 #define KEY_PTZ_DOWN_START KEY_CODE_DOWN #define KEY_PTZ_DOWN_STOP 33 #define KEY_PTZ_LEFT_START KEY_CODE_LEFT #define KEY_PTZ_LEFT_STOP 34 #define KEY_PTZ_RIGHT_START KEY_CODE_RIGHT #define KEY_PTZ_RIGHT_STOP 35 #define KEY_PTZ_AP1_START KEY_CODE_EDIT #define KEY_PTZ_AP1_STOP 36 #define KEY_PTZ_AP2_START KEY_CODE_PAN #define KEY_PTZ_AP2_STOP 37 #define KEY_PTZ_FOCUS1_START KEY_CODE_A #define KEY_PTZ_FOCUS1_STOP 38 #define KEY_PTZ_FOCUS2_START KEY_CODE_M #define KEY_PTZ_FOCUS2_STOP 39 #define KEY_PTZ_B1_START 40 #define KEY_PTZ_B1_STOP 41 #define KEY_PTZ_B2_START 42 #define KEY_PTZ_B2_STOP 43 #define KEY_CODE_11 44 #define KEY_CODE_12 45 #define KEY_CODE_13 46 #define KEY_CODE_14 47 #define KEY_CODE_15 48 #define KEY_CODE_16 49 #define NET_DVR_GET_DEVICECFG 100 #define NET_DVR_SET_DEVICECFG 101 #define NET_DVR_GET_NETCFG 102 #define NET_DVR_SET_NETCFG 103 #define NET_DVR_GET_PICCFG 104 #define NET_DVR_SET_PICCFG 105 #define NET_DVR_GET_COMPRESSCFG 106 #define NET_DVR_SET_COMPRESSCFG 107 #define NET_DVR_GET_RECORDCFG 108 #define NET_DVR_SET_RECORDCFG 109 #define NET_DVR_GET_DECODERCFG 110 #define NET_DVR_SET_DECODERCFG 111 #define NET_DVR_GET_RS232CFG 112 #define NET_DVR_SET_RS232CFG 113 #define NET_DVR_GET_ALARMINCFG 114 #define NET_DVR_SET_ALARMINCFG 115 #define NET_DVR_GET_ALARMOUTCFG 116 #define NET_DVR_SET_ALARMOUTCFG 117 #define NET_DVR_GET_TIMECFG 118 #define NET_DVR_SET_TIMECFG 119 #define NET_DVR_GET_PREVIEWCFG 120 #define NET_DVR_SET_PREVIEWCFG 121 #define NET_DVR_GET_VIDEOOUTCFG 122 #define NET_DVR_SET_VIDEOOUTCFG 123 #define NET_DVR_GET_USERCFG 124 #define NET_DVR_SET_USERCFG 125 #define NET_DVR_GET_EXCEPTIONCFG 126 #define NET_DVR_SET_EXCEPTIONCFG 127 #define NET_DVR_GET_ZONEANDDST 128 #define NET_DVR_SET_ZONEANDDST 129 #define NET_DVR_GET_SHOWSTRING 130 #define NET_DVR_SET_SHOWSTRING 131 #define NET_DVR_GET_EVENTCOMPCFG 132 #define NET_DVR_SET_EVENTCOMPCFG 133 #define NET_DVR_GET_FTPCFG 134 #define NET_DVR_SET_FTPCFG 135 #define NET_DVR_GET_AUXOUTCFG 140 #define NET_DVR_SET_AUXOUTCFG 141 #define NET_DVR_GET_PREVIEWCFG_AUX 142 #define NET_DVR_SET_PREVIEWCFG_AUX 143 #define NET_DVR_GET_PASSWORD_MANAGE_CFG 144 #define NET_DVR_SET_PASSWORD_MANAGE_CFG 145 #define NET_DVR_UNLOCK_USER 146 #define NET_DVR_GET_SECURITY_CFG 147 #define NET_DVR_SET_SECURITY_CFG 148 #define NET_DVR_GET_LOCKED_INFO_LIST 149 #define NET_DVR_SET_RULECFG 152 #define NET_DVR_GET_RULECFG 153 #define NET_DVR_SET_TRACK_CFG 160 #define NET_DVR_GET_TRACK_CFG 161 #define NET_DVR_SET_IVMS_STREAMCFG 162 #define NET_DVR_GET_IVMS_STREAMCFG 163 #define NET_DVR_SET_VCA_CTRLCFG 164 #define NET_DVR_GET_VCA_CTRLCFG 165 #define NET_DVR_SET_VCA_MASK_REGION 166 #define NET_DVR_GET_VCA_MASK_REGION 167 #define NET_DVR_SET_VCA_ENTER_REGION 168 #define NET_DVR_GET_VCA_ENTER_REGION 169 #define NET_DVR_SET_VCA_LINE_SEGMENT 170 #define NET_DVR_GET_VCA_LINE_SEGMENT 171 #define NET_DVR_SET_IVMS_MASK_REGION 172 #define NET_DVR_GET_IVMS_MASK_REGION 173 #define NET_DVR_SET_IVMS_ENTER_REGION 174 #define NET_DVR_GET_IVMS_ENTER_REGION 175 #define NET_DVR_SET_IVMS_BEHAVIORCFG 176 #define NET_DVR_GET_IVMS_BEHAVIORCFG 177 #define NET_DVR_IVMS_SET_SEARCHCFG 178 #define NET_DVR_IVMS_GET_SEARCHCFG 179 #define NET_DVR_SET_POSITION_TRACK 180 #define NET_DVR_GET_POSITION_TRACK 181 #define NET_DVR_SET_CALIBRATION 182 #define NET_DVR_GET_CALIBRATION 183 #define NET_DVR_SET_PDC_RULECFG 184 #define NET_DVR_GET_PDC_RULECFG 185 #define NET_DVR_SET_PU_STREAMCFG 186 #define NET_DVR_GET_PU_STREAMCFG 187 #define NET_VCA_SET_IVMS_BEHAVIOR_CFG 192 #define NET_VCA_GET_IVMS_BEHAVIOR_CFG 193 #define NET_VCA_SET_SIZE_FILTER 194 #define NET_VCA_GET_SIZE_FILTER 195 #define NET_DVR_SET_TRACK_PARAMCFG 196 #define NET_DVR_GET_TRACK_PARAMCFG 197 #define NET_DVR_SET_DOME_MOVEMENT_PARAM 198 #define NET_DVR_GET_DOME_MOVEMENT_PARAM 199 #define NET_DVR_GET_PICCFG_EX 200 #define NET_DVR_SET_PICCFG_EX 201 #define NET_DVR_GET_USERCFG_EX 202 #define NET_DVR_SET_USERCFG_EX 203 #define NET_DVR_GET_COMPRESSCFG_EX 204 #define NET_DVR_SET_COMPRESSCFG_EX 205 #define NET_DVR_GET_NETAPPCFG 222 #define NET_DVR_SET_NETAPPCFG 223 #define NET_DVR_GET_NTPCFG 224 #define NET_DVR_SET_NTPCFG 225 #define NET_DVR_GET_DDNSCFG 226 #define NET_DVR_SET_DDNSCFG 227 #define NET_DVR_GET_EMAILCFG 228 #define NET_DVR_SET_EMAILCFG 229 #define NET_DVR_GET_NFSCFG 230 #define NET_DVR_SET_NFSCFG 231 #define NET_DVR_GET_SHOWSTRING_EX 238 #define NET_DVR_SET_SHOWSTRING_EX 239 #define NET_DVR_GET_NETCFG_OTHER 244 #define NET_DVR_SET_NETCFG_OTHER 245 #define NET_DVR_GET_EMAILPARACFG 250 #define NET_DVR_SET_EMAILPARACFG 251 #define NET_DVR_GET_DDNSCFG_EX 274 #define NET_DVR_SET_DDNSCFG_EX 275 #define NET_DVR_SET_PTZPOS 292 #define NET_DVR_GET_PTZPOS 293 #define NET_DVR_GET_PTZSCOPE 294 #define NET_DVR_GET_AP_INFO_LIST 305 #define NET_DVR_SET_WIFI_CFG 306 #define NET_DVR_GET_WIFI_CFG 307 #define NET_DVR_SET_WIFI_WORKMODE 308 #define NET_DVR_GET_WIFI_WORKMODE 309 #define NET_DVR_GET_WIFI_STATUS 310 #define NET_DVR_GET_REFERENCE_REGION 400 #define NET_DVR_SET_REFERENCE_REGION 401 #define NET_DVR_GET_TRAFFIC_MASK_REGION 402 #define NET_DVR_SET_TRAFFIC_MASK_REGION 403 #define NET_DVR_SET_AID_RULECFG 404 #define NET_DVR_GET_AID_RULECFG 405 #define NET_DVR_SET_TPS_RULECFG 406 #define NET_DVR_GET_TPS_RULECFG 407 #define NET_DVR_SET_LANECFG 408 #define NET_DVR_GET_LANECFG 409 #define NET_DVR_GET_VCA_RULE_COLOR_CFG 410 #define NET_DVR_SET_VCA_RULE_COLOR_CFG 411 #define NET_DVR_GET_SWITCH_LAMP_CFG 412 #define NET_DVR_SET_SWITCH_LAMP_CFG 413 #define NET_DVR_SET_FACEDETECT_RULECFG 420 #define NET_DVR_GET_FACEDETECT_RULECFG 421 #define NET_DVR_SET_VEHICLE_RECOG_TASK 422 #define NET_DVR_GET_VEHICLE_RECOG_TASK 423 #define NET_DVR_SET_TIMECORRECT 432 #define NET_DVR_GET_CONNECT_LIST 433 #define NET_DVR_GET_NETCFG_V30 1000 #define NET_DVR_SET_NETCFG_V30 1001 #define NET_DVR_GET_PICCFG_V30 1002 #define NET_DVR_SET_PICCFG_V30 1003 #define NET_DVR_GET_RECORDCFG_V30 1004 #define NET_DVR_SET_RECORDCFG_V30 1005 #define NET_DVR_GET_USERCFG_V30 1006 #define NET_DVR_SET_USERCFG_V30 1007 #define NET_DVR_GET_RECORDCFG_V40 1008 #define NET_DVR_SET_RECORDCFG_V40 1009 #define NET_DVR_GET_DDNSCFG_V30 1010 #define NET_DVR_SET_DDNSCFG_V30 1011 #define NET_DVR_GET_EMAILCFG_V30 1012 #define NET_DVR_SET_EMAILCFG_V30 1013 #define NET_DVR_GET_NETCFG_V50 1015 #define NET_DVR_SET_NETCFG_V50 1016 #define NET_GET_CRUISEPOINT_V40 1018 #define NET_DVR_GET_CRUISE 1020 #define NET_DVR_SET_CRUISE 1021 #define NET_DVR_GET_ALARMINCFG_V30 1024 #define NET_DVR_SET_ALARMINCFG_V30 1025 #define NET_DVR_GET_ALARMOUTCFG_V30 1026 #define NET_DVR_SET_ALARMOUTCFG_V30 1027 #define NET_DVR_GET_VIDEOOUTCFG_V30 1028 #define NET_DVR_SET_VIDEOOUTCFG_V30 1029 #define NET_DVR_GET_SHOWSTRING_V30 1030 #define NET_DVR_SET_SHOWSTRING_V30 1031 #define NET_DVR_GET_EXCEPTIONCFG_V30 1034 #define NET_DVR_SET_EXCEPTIONCFG_V30 1035 #define NET_DVR_GET_RS232CFG_V30 1036 #define NET_DVR_SET_RS232CFG_V30 1037 #define NET_DVR_GET_NET_DISKCFG 1038 #define NET_DVR_SET_NET_DISKCFG 1039 #define NET_DVR_GET_COMPRESSCFG_V30 1040 #define NET_DVR_SET_COMPRESSCFG_V30 1041 #define NET_DVR_GET_DECODERCFG_V30 1042 #define NET_DVR_SET_DECODERCFG_V30 1043 #define NET_DVR_GET_PREVIEWCFG_V30 1044 #define NET_DVR_SET_PREVIEWCFG_V30 1045 #define NET_DVR_GET_PREVIEWCFG_AUX_V30 1046 #define NET_DVR_SET_PREVIEWCFG_AUX_V30 1047 #define NET_DVR_GET_IPPARACFG 1048 #define NET_DVR_SET_IPPARACFG 1049 #define NET_DVR_GET_IPALARMINCFG 1050 #define NET_DVR_SET_IPALARMINCFG 1051 #define NET_DVR_GET_IPALARMOUTCFG 1052 #define NET_DVR_SET_IPALARMOUTCFG 1053 #define NET_DVR_GET_HDCFG 1054 #define NET_DVR_SET_HDCFG 1055 #define NET_DVR_GET_HDGROUP_CFG 1056 #define NET_DVR_SET_HDGROUP_CFG 1057 #define NET_DVR_GET_COMPRESSCFG_AUD 1058 #define NET_DVR_SET_COMPRESSCFG_AUD 1059 #define NET_DVR_GET_IPPARACFG_V31 1060 #define NET_DVR_SET_IPPARACFG_V31 1061 #define NET_DVR_GET_IPPARACFG_V40 1062 #define NET_DVR_SET_IPPARACFG_V40 1063 #define NET_DVR_GET_CCDPARAMCFG 1067 #define NET_DVR_SET_CCDPARAMCFG 1068 #define NET_DVR_GET_IOINCFG 1070 #define NET_DVR_SET_IOINCFG 1071 #define NET_DVR_GET_IOOUTCFG 1072 #define NET_DVR_SET_IOOUTCFG 1073 #define NET_DVR_GET_FLASHCFG 1074 #define NET_DVR_SET_FLASHCFG 1075 #define NET_DVR_GET_LIGHTSNAPCFG 1076 #define NET_DVR_SET_LIGHTSNAPCFG 1077 #define NET_DVR_GET_MEASURESPEEDCFG 1078 #define NET_DVR_SET_MEASURESPEEDCFG 1079 #define NET_DVR_GET_IMAGEOVERLAYCFG 1080 #define NET_DVR_SET_IMAGEOVERLAYCFG 1081 #define NET_DVR_GET_SNAPCFG 1082 #define NET_DVR_SET_SNAPCFG 1083 #define NET_DVR_GET_VTPPARAM 1084 #define NET_DVR_SET_VTPPARAM 1085 #define NET_DVR_GET_SNAPENABLECFG 1086 #define NET_DVR_SET_SNAPENABLECFG 1087 #define NET_DVR_GET_POSTEPOLICECFG 1088 #define NET_DVR_SET_POSTEPOLICECFG 1089 #define NET_DVR_GET_JPEGCFG_V30 1090 #define NET_DVR_SET_JPEGCFG_V30 1091 #define NET_DVR_GET_SPRCFG 1092 #define NET_DVR_SET_SPRCFG 1093 #define NET_DVR_GET_PLCCFG 1094 #define NET_DVR_SET_PLCCFG 1095 #define NET_DVR_GET_DEVICESTATECFG 1096 #define NET_DVR_SET_CALIBRATE_TIME 1097 #define NET_DVR_GET_CALIBRATE_TIME 1098 #define NET_DVR_GET_DEVICECFG_V40 1100 #define NET_DVR_SET_DEVICECFG_V40 1101 #define NET_DVR_GET_ZEROCHANCFG 1102 #define NET_DVR_SET_ZEROCHANCFG 1103 #define NET_DVR_GET_ZERO_PREVIEWCFG_V30 1104 #define NET_DVR_SET_ZERO_PREVIEWCFG_V30 1105 #define NET_DVR_SET_ZERO_ZOOM 1106 #define NET_DVR_GET_ZERO_ZOOM 1107 #define NET_DVR_NATASSOCIATECFG_GET 1110 #define NET_DVR_NATASSOCIATECFG_SET 1111 #define NET_DVR_GET_SNMPCFG 1112 #define NET_DVR_SET_SNMPCFG 1113 #define NET_DVR_GET_SNMPCFG_V30 1114 #define NET_DVR_SET_SNMPCFG_V30 1115 #define NET_DVR_VIDEOPLATFORMALARMCFG_GET 1130 #define NET_DVR_VIDEOPLATFORMALARMCFG_SET 1131 #define NET_DVR_GET_RAID_ADAPTER_INFO 1134 #define NET_DVR_SET_RAID_ADAPTER_INFO 1135 #define NET_DVR_MATRIX_BIGSCREENCFG_GET 1140 #define NET_DVR_MATRIX_BIGSCREENCFG_SET 1141 #define NET_DVR_GET_MB_PLATFORMPARA 1145 #define NET_DVR_SET_MB_PLATFORMPARA 1146 #define NET_DVR_GET_MB_DEVSTATUS 1147 #define NET_DVR_GET_DECODER_JOINT_CHAN 1151 #define NET_DVR_SET_DECODER_JOINT_CHAN 1152 #define NET_DVR_GET_NETCFG_MULTI 1161 #define NET_DVR_SET_NETCFG_MULTI 1162 #define NET_DVR_GET_NETCFG_MULTI_V50 1163 #define NET_DVR_SET_NETCFG_MULTI_V50 1164 #define NET_DVR_GET_CMSPARA 1170 #define NET_DVR_SET_CMSPARA 1171 #define NET_DVR_GET_DIALSTATUS 1172 #define NET_DVR_GET_SMSRELATIVEPARA 1173 #define NET_DVR_SET_SMSRELATIVEPARA 1174 #define NET_DVR_GET_PINSTATUS 1175 #define NET_DVR_SET_PINCMD 1176 #define NET_DVR_SET_SENSOR_CFG 1180 #define NET_DVR_GET_SENSOR_CFG 1181 #define NET_DVR_SET_ALARMIN_PARAM 1182 #define NET_DVR_GET_ALARMIN_PARAM 1183 #define NET_DVR_SET_ALARMOUT_PARAM 1184 #define NET_DVR_GET_ALARMOUT_PARAM 1185 #define NET_DVR_SET_SIREN_PARAM 1186 #define NET_DVR_GET_SIREN_PARAM 1187 #define NET_DVR_SET_ALARM_RS485CFG 1188 #define NET_DVR_GET_ALARM_RS485CFG 1189 #define NET_DVR_GET_ALARMHOST_MAIN_STATUS 1190 #define NET_DVR_GET_ALARMHOST_OTHER_STATUS 1191 #define NET_DVR_SET_ALARMHOST_ENABLECFG 1192 #define NET_DVR_GET_ALARMHOST_ENABLECFG 1193 #define NET_DVR_SET_ALARM_CAMCFG 1194 #define NET_DVR_GET_ALARM_CAMCFG 1195 #define NET_DVR_GET_GATEWAY_CFG 1196 #define NET_DVR_SET_GATEWAY_CFG 1197 #define NET_DVR_GET_ALARMDIALMODECFG 1198 #define NET_DVR_SET_ALARMDIALMODECFG 1199 #define NET_DVR_SET_ALARMIN_PARAM_V50 1200 #define NET_DVR_GET_ALARMIN_PARAM_V50 1201 #define NET_DVR_SET_WINCFG 1202 #define NET_DVR_GET_ALARMHOSTDIALSETUPMODE 1204 #define NET_DVR_SET_ALARMHOSTDIALSETUPMODE 1205 #define NET_DVR_SET_SUBSYSTEM_ALARM 1210 #define NET_DVR_GET_SUBSYSTEM_ALARM 1211 #define NET_DVR_GET_WHITELIST_ALARM 1215 #define NET_DVR_SET_WHITELIST_ALARM 1216 #define NET_DVR_GET_ALARMHOST_MODULE_LIST 1222 #define NET_DVR_SET_PRIOR_ALARM 1223 #define NET_DVR_GET_PRIOR_ALARM 1224 #define NET_DVR_SET_TAMPER_ALARMIN_PARAM 1225 #define NET_DVR_GET_TAMPER_ALARMIN_PARAM 1226 #define NET_DVR_GET_HOLIDAY_PARAM_CFG 1240 #define NET_DVR_SET_HOLIDAY_PARAM_CFG 1241 #define NET_DVR_GET_MOTION_HOLIDAY_HANDLE 1242 #define NET_DVR_SET_MOTION_HOLIDAY_HANDLE 1243 #define NET_DVR_GET_VILOST_HOLIDAY_HANDLE 1244 #define NET_DVR_SET_VILOST_HOLIDAY_HANDLE 1245 #define NET_DVR_GET_HIDE_HOLIDAY_HANDLE 1246 #define NET_DVR_SET_HIDE_HOLIDAY_HANDLE 1247 #define NET_DVR_GET_ALARMIN_HOLIDAY_HANDLE 1248 #define NET_DVR_SET_ALARMIN_HOLIDAY_HANDLE 1249 #define NET_DVR_GET_ALARMOUT_HOLIDAY_HANDLE 1250 #define NET_DVR_SET_ALARMOUT_HOLIDAY_HANDLE 1251 #define NET_DVR_GET_HOLIDAY_RECORD 1252 #define NET_DVR_SET_HOLIDAY_RECORD 1253 #define NET_DVR_GET_NETWORK_BONDING 1254 #define NET_DVR_SET_NETWORK_BONDING 1255 #define NET_DVR_GET_LINK_STATUS 1256 #define NET_DVR_GET_DISK_QUOTA_CFG 1278 #define NET_DVR_SET_DISK_QUOTA_CFG 1279 #define NET_DVR_GET_JPEG_CAPTURE_CFG 1280 #define NET_DVR_SET_JPEG_CAPTURE_CFG 1281 #define NET_DVR_GET_SCHED_CAPTURECFG 1282 #define NET_DVR_SET_SCHED_CAPTURECFG 1283 #define NET_DVR_GET_VGA_PREVIEWCFG 1284 #define NET_DVR_SET_VGA_PREVIEWCFG 1285 #define NET_DVR_GET_VIDEO_INPUT_EFFECT 1286 #define NET_DVR_SET_VIDEO_INPUT_EFFECT 1287 #define NET_DVR_GET_STORAGE_SERVER_SWITCH 1290 #define NET_DVR_SET_STORAGE_SERVER_SWITCH 1291 #define NET_DVR_GET_OPTICAL_CHANNEL 1300 #define NET_DVR_SET_OPTICAL_CHANNEL 1301 #define NET_DVR_GET_FIBER_CASCADE 1302 #define NET_DVR_SET_FIBER_CASCADE 1303 #define NET_DVR_GET_SPARTAN_STATUS 1304 #define NET_DVR_SET_SPARTAN_STATUS 1305 #define NET_DVR_GET_ETHERNET_CHANNEL 1306 #define NET_DVR_SET_ETHERMET_CHANNEL 1307 #define NET_DVR_OPTICAL_REBOOT 1320 #define NET_DVR_SET_AUDIOCHAN_CFG 1321 #define NET_DVR_GET_AUDIOCHAN_CFG 1322 #define NET_DVR_SET_MATRIX_BASE_CFG 1332 #define NET_DVR_GET_MATRIX_BASE_CFG 1333 #define NET_DVR_SWITCH_MATRIX_IO 1334 #define NET_DVR_GET_MATRIX_IO_RELATION 1335 #define NET_DVR_V6PSUBSYSTEMARAM_GET 1501 #define NET_DVR_V6PSUBSYSTEMARAM_SET 1502 #define NET_DVR_GET_ALLWINCFG 1503 #define NET_DVR_BIGSCREENASSOCIATECFG_GET 1511 #define NET_DVR_BIGSCREENASSOCIATECFG_SET 1512 #define NET_DVR_GETSCREENINFO 1601 #define NET_DVR_SETSCREENINFO 1602 #define NET_DVR_GET_SCREEN_WINCFG 1603 #define NET_DVR_LAYOUTLIST_GET 1605 #define NET_DVR_SET_LAYOUTCFG 1606 #define NET_DVR_LAYOUTCTRL 1607 #define NET_DVR_INPUTLIST_GET 1608 #define NET_DVR_SET_INPUTSTREAMCFG 1609 #define NET_DVR_OUTPUT_SET 1610 #define NET_DVR_OUTPUT_GET 1611 #define NET_DVR_SET_OSDCFG 1612 #define NET_DVR_GET_OSDCFG 1613 #define NET_DVR_BIGSCREEN_GETSERIAL 1614 #define NET_DVR_GET_PLANLIST 1615 #define NET_DVR_SET_PLAN 1616 #define NET_DVR_CTRL_PLAN 1617 #define NET_DVR_GET_DEVICE_RUN_STATUS 1618 #define NET_DVR_GET_EXTERNAL_MATRIX_CFG 1619 #define NET_DVR_SET_EXTERNAL_MATRIX_CFG 1620 #define NET_DVR_GET_OUTPUT_SCREEN_RELATION 1621 #define NET_DVR_SET_OUTPUT_SCREEN_RELATION 1622 #define NET_DVR_GET_VCS_USER_CFG 1623 #define NET_DVR_SET_VCS_USER_CFG 1624 #define NET_DVR_CONTROL_SCREEN 1625 #define NET_DVR_GET_EXTERNAL_MATRIX_CFG_V50 1626 #define NET_DVR_SET_EXTERNAL_MATRIX_CFG_V50 1627 #define NET_DVR_GET_DEV_BASEINFO 1650 #define NET_DVR_SET_DEV_BASEINFO 1651 #define NET_DVR_GET_DEV_NETINFO 1652 #define NET_DVR_SET_DEV_NETINFO 1653 #define NET_DVR_GET_SIGNAL_SOURCE_INFO 1654 #define NET_DVR_SET_SIGNAL_SOURCE_INFO 1655 #define NET_DVR_ADJUST_PIC_V40 1656 #define NET_DVR_RESTORE_V40 1657 #define NET_DVR_SET_NET_SIGNAL 1658 #define NET_DVR_REBOOT_V40 1659 #define NET_DVR_CONTROL_PICTURE_V41 1660 #define NET_DVR_GET_AUTO_REBOOT_CFG 1710 #define NET_DVR_SET_AUTO_REBOOT_CFG 1711 #define NET_DVR_GET_TRUNK_USE_STATE 1713 #define NET_DVR_SET_PTZ_CTRL_INFO 1714 #define NET_DVR_GET_PTZ_CTRL_INFO 1715 #define NET_DVR_GET_PTZ_STATUS 1716 #define NET_DVR_GET_DISP_ROUTE_LIST 1717 #define NET_DVR_GET_DEC_RESOURCE_LIST 1720 #define NET_DVR_SET_DEC_RESOURCE_LIST 1721 #define NET_DVR_GET_DEC_YUV 1722 #define NET_DVR_SET_DEC_YUV 1723 #define NET_DVR_GET_DEC_RESOUCE 1724 #define NET_DVR_FREE_DEC_RESOURCE 1725 #define NET_DVR_SET_VIDEOWALLDISPLAYMODE 1730 #define NET_DVR_GET_VIDEOWALLDISPLAYMODE 1731 #define NET_DVR_GET_VIDEOWALLDISPLAYNO 1732 #define NET_DVR_SET_VIDEOWALLDISPLAYPOSITION 1733 #define NET_DVR_GET_VIDEOWALLDISPLAYPOSITION 1734 #define NET_DVR_GET_VIDEOWALLWINDOWPOSITION 1735 #define NET_DVR_SET_VIDEOWALLWINDOWPOSITION 1736 #define NET_DVR_VIDEOWALLWINDOW_CLOSEALL 1737 #define NET_DVR_SET_VIRTUALLED 1738 #define NET_DVR_GET_VIRTUALLED 1739 #define NET_DVR_GET_IMAGE_CUT_MODE 1740 #define NET_DVR_SET_IMAGE_CUT_MODE 1741 #define NET_DVR_GET_USING_SERIALPORT 1742 #define NET_DVR_SET_USING_SERIALPORT 1743 #define NET_DVR_SCENE_CONTROL 1744 #define NET_DVR_GET_CURRENT_SCENE 1745 #define NET_DVR_GET_VW_SCENE_PARAM 1746 #define NET_DVR_SET_VW_SCENE_PARAM 1747 #define NET_DVR_DISPLAY_CHANNO_CONTROL 1748 #define NET_DVR_GET_WIN_DEC_INFO 1749 #define NET_DVR_RESET_VIDEOWALLDISPLAYPOSITION 1750 #define NET_DVR_SET_VW_AUDIO_CFG 1752 #define NET_DVR_GET_VW_AUDIO_CFG 1753 #define NET_DVR_GET_GBT28181_DECCHANINFO_CFG 1754 #define NET_DVR_SET_GBT28181_DECCHANINFO_CFG 1755 #define NET_DVR_SET_MAINBOARD_SERIAL 1756 #define NET_DVR_GET_MAINBOARD_SERIAL 1757 #define NET_DVR_GET_SUBBOARD_INFO 1758 #define NET_DVR_GET_SUBBOARD_EXCEPTION 1759 #define NET_DVR_GET_CAMERACHAN_SERIALCFG 1760 #define NET_DVR_SET_CAMERACHAN_SERIALCFG 1761 #define NET_DVR_GET_MATRIX_STATUS 1762 #define NET_SET_MULTIFUNCTION_SERIALCFG 1763 #define NET_GET_MULTIFUNCTION_SERIALCFG 1764 #define NET_DVR_PTZ_3D_SPEED 1765 #define NET_DVR_GET_SIGNAL_JOINT 1766 #define NET_DVR_SET_SIGNAL_JOINT 1767 #define NET_DVR_SIGNAL_CUT 1768 #define NET_DVR_DYNAMIC_DECODE_BATCH 1769 #define NET_DVR_DECSWITCH_SET_BATCH 1770 #define NET_DVR_DECSWITCH_GET_BATCH 1771 #define NET_DVR_GET_ALL_SIGNAL_JOINT 1772 #define NET_DVR_GET_PLAYING_PLAN 1773 #define NET_DVR_WALL_RELATION_GET 1774 #define NET_DVR_WALL_RELATION_SET 1775 #define NET_DVR_SET_INPUTSTREAMCFG_V40 1776 #define NET_DVR_PTZCFG_INPUTSTREAM_GET 1777 #define NET_DVR_PTZCFG_INPUTSTREAM_SET 1778 #define NET_DVR_SIGNAL_CUTPARAM_GET 1779 #define NET_DVR_GET_SUBSYSTEM_NETCFG 1780 #define NET_DVR_SET_SUBSYSTEM_NETCFG 1781 #define NET_DVR_DEL_SIGNAL_JOINT 1782 #define NET_DVR_GET_PICTURE_INFO 1783 #define NET_DVR_SET_PICTURE_INFO 1784 #define NET_DVR_GET_VIDEO_INFO 1785 #define NET_DVR_SET_VIDEO_INFO 1786 #define NET_DVR_SET_PLAYLIST 1787 #define NET_DVR_GET_PLAYLIST 1788 #define NET_DVR_GET_ALL_PLAYLIST 1789 #define NET_DVR_PLAYITEM_CONTROL 1790 #define NET_DVR_SET_PLAYPLAN_TEMPLATE 1791 #define NET_DVR_GET_PLAYPLAN_TEMPLATE 1792 #define NET_DVR_GET_ALL_PLAYPLAN_TEMPLATE 1793 #define NET_DVR_SET_WINDOW_PLAYPLAN 1794 #define NET_DVR_GET_WINDOW_PLAYPLAN 1795 #define NET_DVR_TOPLAY_ITEM 1796 #define NET_DVR_DEVICE_PLAY_CONTROL 1797 #define NET_DVR_GET_PLAY_INFO 1798 #define NET_DVR_GET_ALL_PICTURE_INFO 1799 #define NET_DVR_GET_ALL_VIDEO_INFO 1800 #define NET_DVR_DELETE_VIDEO_FILE 1801 #define NET_DVR_GET_ALARMHOSTSUBSYSTEM_CFG 2001 #define NET_DVR_SET_ALARMHOSTSUBSYSTEM_CFG 2002 #define NET_DVR_GETEXTENDALARMININFO 2003 #define NET_DVR_MODIFYALARMINNO 2004 #define NET_DVR_GET_ALARMHOST_WIRELESS_NETWORK_CFG 2005 #define NET_DVR_SET_ALARMHOST_WIRELESS_NETWORK_CFG 2006 #define NET_DVR_GET_ALARMHOST_NETCFG 2007 #define NET_DVR_SET_ALARMHOST_NETCFG 2008 #define NET_DVR_GET_LED_SCREEN_CFG 2009 #define NET_DVR_SET_LED_SCREEN_CFG 2010 #define NET_DVR_GET_LED_CONTENT_CFG 2011 #define NET_DVR_SET_LED_CONTENT_CFG 2012 #define NET_DVR_TURNON_LED 2013 #define NET_DVR_TURNOFF_LED 2014 #define NET_DVR_GET_LED_TIMER_SWITCH 2015 #define NET_DVR_SET_LED_TIMER_SWITCH 2016 #define NET_DVR_SET_LED_BRIGHTNESS 2017 #define NET_DVR_GET_LED_TIMER_BRIGHTNESS 2018 #define NET_DVR_SET_LED_TIMER_BRIGHTNESS 2019 #define NET_DVR_LED_CHECKTIME 2020 #define NET_DVR_GET_ALARMHOST_AUDIO_ASSOCIATE_ALARM 2021 #define NET_DVR_SET_ALARMHOST_AUDIO_ASSOCIATE_ALARM 2022 #define NET_DVR_GET_LED_STATUS 2023 #define NET_DVR_CLOSE_SUBSYSTEM_FAULT_ALARM 2027 #define NET_DVR_SET_SUBSYSTEM_BYPASS 2028 #define NET_DVR_CANCEL_SUBSYSTEM_BYPASS 2029 #define NET_DVR_GET_ALARMHOST_SUBSYSTEM_CFG_EX 2030 #define NET_DVR_SET_ALARMHOST_SUBSYSTEM_CFG_EX 2031 #define NET_DVR_GET_ALARMHOST_PRINTER_CFG 2032 #define NET_DVR_SET_ALARMHOST_PRINTER_CFG 2033 #define NET_DVR_GET_ALARMHOST_ZONE_LIST_IN_SUBSYSTEM 2034 #define NET_DVR_GET_ALARMHOST_TRIGGER_LIST 2035 #define NET_DVR_ARM_ALARMHOST_SUBSYSTEM 2036 #define NET_DVR_GET_ALARMHOST_EVENT_TRIG_ALARMOUT_CFG 2037 #define NET_DVR_SET_ALARMHOST_EVENT_TRIG_ALARMOUT_CFG 2038 #define NET_DVR_GET_ALARMHOST_FAULT_CFG 2039 #define NET_DVR_SET_ALARMHOST_FAULT_CFG 2040 #define NET_DVR_SEARCH_ARMHOST_EXTERNAL_MODULE 2041 #define NET_DVR_REGISTER_ALARMHOST_EXTERNAL_MODULE 2042 #define NET_DVR_CLOSE_ALARMHOST_OVERALL_FAULT_ALARM 2043 #define NET_DVR_GET_SAFETYCABIN_WORK_MODE 2044 #define NET_DVR_SET_SAFETYCABIN_WORK_MODE 2045 #define NET_DVR_GET_SAFETYCABIN_PERSON_SIGNAL_CFG 2046 #define NET_DVR_SET_SAFETYCABIN_PERSON_SIGNAL_CFG 2047 #define NET_DVR_GET_ALARMHOST_MODULE_CFG 2048 #define NET_DVR_GET_ALARMHOST_EXTERNAL_DEVICE_STATE 2050 #define NET_DVR_SET_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE 2051 #define NET_DVR_GET_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE 2052 #define NET_DVR_GET_ALARMHOST_SENSOR_JOINT_CFG 2053 #define NET_DVR_SET_ALARMHOST_SENSOR_JOINT_CFG 2054 #define NET_DVR_SET_ALARMHOST_RS485_SLOT_CFG 2055 #define NET_DVR_GET_ALARMHOST_RS485_SLOT_CFG 2056 #define NET_DVR_GET_ALL_VARIABLE_INFO 2057 #define NET_DVR_GET_ALARM_POINT_CFG 2058 #define NET_DVR_SET_ALARM_POINT_CFG 2059 #define NET_DVR_GET_HISTORY_VALUE 2060 #define NET_DVR_GET_ALARMHOST_ALARM_MODE 2061 #define NET_DVR_SET_ALARMHOST_ALARM_MODE 2062 #define NET_DVR_GET_ALARMHOST_SENSOR_VALUE 2063 #define NET_DVR_GET_ALARMHOST_REPORT_CENTER_V40 2064 #define NET_DVR_SET_ALARMHOST_REPORT_CENTER_V40 2065 #define NET_DVR_GET_OUTPUT_SCHEDULE_RULECFG 2068 #define NET_DVR_SET_OUTPUT_SCHEDULE_RULECFG 2069 #define NET_DVR_GET_CMS_CFG 2070 #define NET_DVR_SET_CMS_CFG 2071 #define NET_DVR_GET_PASSTHROUGH_CAP 2073 #define NET_DVR_GET_ALARMHOST_MAIN_STATUS_V40 2072 #define NET_DVR_GET_ALARMHOST_MAIN_STATUS_V51 2083 #define NET_DVR_GET_ALARM_CAPTRUE_CFG 2074 #define NET_DVR_SET_ALARM_CAPTRUE_CFG 2075 #define NET_DVR_GET_ONE_OUTPUT_SCH_RULECFG_V40 2078 #define NET_DVR_SET_ONE_OUTPUT_SCH_RULECFG_V40 2079 #define NET_DVR_GET_OUTPUT_SCHEDULE_RULECFG_V40 2080 #define NET_DVR_SET_OUTPUT_SCHEDULE_RULECFG_V40 2081 #define NET_DVR_ALARMHOST_CLOSE_SUBSYSTEM 2082 #define NET_DVR_GET_WEEK_PLAN_CFG 2100 #define NET_DVR_SET_WEEK_PLAN_CFG 2101 #define NET_DVR_GET_DOOR_STATUS_HOLIDAY_PLAN 2102 #define NET_DVR_SET_DOOR_STATUS_HOLIDAY_PLAN 2103 #define NET_DVR_GET_DOOR_STATUS_HOLIDAY_GROUP 2104 #define NET_DVR_SET_DOOR_STATUS_HOLIDAY_GROUP 2105 #define NET_DVR_GET_DOOR_STATUS_PLAN_TEMPLATE 2106 #define NET_DVR_SET_DOOR_STATUS_PLAN_TEMPLATE 2107 #define NET_DVR_GET_DOOR_CFG 2108 #define NET_DVR_SET_DOOR_CFG 2109 #define NET_DVR_GET_DOOR_STATUS_PLAN 2110 #define NET_DVR_SET_DOOR_STATUS_PLAN 2111 #define NET_DVR_GET_GROUP_CFG 2112 #define NET_DVR_SET_GROUP_CFG 2113 #define NET_DVR_GET_MULTI_CARD_CFG 2114 #define NET_DVR_SET_MULTI_CARD_CFG 2115 #define NET_DVR_GET_CARD_CFG 2116 #define NET_DVR_SET_CARD_CFG 2117 #define NET_DVR_CLEAR_ACS_PARAM 2118 #define NET_DVR_GET_SNEAK_CFG 2119 #define NET_DVR_SET_SNEAK_CFG 2120 #define NET_DVR_GET_MULTI_DOOR_INTERLOCK_CFG 2121 #define NET_DVR_SET_MULTI_DOOR_INTERLOCK_CFG 2122 #define NET_DVR_GET_ACS_WORK_STATUS 2123 #define NET_DVR_GET_VERIFY_WEEK_PLAN 2124 #define NET_DVR_SET_VERIFY_WEEK_PLAN 2125 #define NET_DVR_GET_CARD_RIGHT_WEEK_PLAN 2126 #define NET_DVR_SET_CARD_RIGHT_WEEK_PLAN 2127 #define NET_DVR_GET_VERIFY_HOLIDAY_PLAN 2128 #define NET_DVR_SET_VERIFY_HOLIDAY_PLAN 2129 #define NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN 2130 #define NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN 2131 #define NET_DVR_GET_VERIFY_HOLIDAY_GROUP 2132 #define NET_DVR_SET_VERIFY_HOLIDAY_GROUP 2133 #define NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP 2134 #define NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP 2135 #define NET_DVR_GET_VERIFY_PLAN_TEMPLATE 2136 #define NET_DVR_SET_VERIFY_PLAN_TEMPLATE 2137 #define NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE 2138 #define NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE 2139 #define NET_DVR_GET_CARD_READER_CFG 2140 #define NET_DVR_SET_CARD_READER_CFG 2141 #define NET_DVR_GET_CARD_READER_PLAN 2142 #define NET_DVR_SET_CARD_READER_PLAN 2143 #define NET_DVR_GET_CASE_SENSOR_CFG 2144 #define NET_DVR_SET_CASE_SENSOR_CFG 2145 #define NET_DVR_GET_CARD_READER_ANTI_SNEAK_CFG 2146 #define NET_DVR_SET_CARD_READER_ANTI_SNEAK_CFG 2147 #define NET_DVR_GET_PHONE_DOOR_RIGHT_CFG 2148 #define NET_DVR_SET_PHONE_DOOR_RIGHT_CFG 2149 #define NET_DVR_GET_FINGERPRINT_CFG 2150 #define NET_DVR_SET_FINGERPRINT_CFG 2151 #define NET_DVR_DEL_FINGERPRINT_CFG 2152 #define NET_DVR_GET_EVENT_CARD_LINKAGE_CFG 2153 #define NET_DVR_SET_EVENT_CARD_LINKAGE_CFG 2154 #define NET_DVR_GET_ANTI_SNEAK_HOST_CFG 2155 #define NET_DVR_SET_ANTI_SNEAK_HOST_CFG 2156 #define NET_DVR_GET_READER_ANTI_SNEAK_HOST_CFG 2157 #define NET_DVR_SET_READER_ANTI_SNEAK_HOST_CFG 2158 #define NET_DVR_GET_ACS_CFG 2159 #define NET_DVR_SET_ACS_CFG 2160 #define NET_DVR_GET_CARD_PASSWD_CFG 2161 #define NET_DVR_SET_CARD_PASSWD_CFG 2162 #define NET_DVR_GET_CARD_USERINFO_CFG 2163 #define NET_DVR_SET_CARD_USERINFO_CFG 2164 #define NET_DVR_GET_ACS_EXTERNAL_DEV_CFG 2165 #define NET_DVR_SET_ACS_EXTERNAL_DEV_CFG 2166 #define NET_DVR_GET_PERSONNEL_CHANNEL_CFG 2167 #define NET_DVR_SET_PERSONNEL_CHANNEL_CFG 2168 #define NET_DVR_SET_PLATFORM_VERIFY_CFG 2169 #define NET_DVR_GET_PERSON_STATISTICS_CFG 2170 #define NET_DVR_SET_PERSON_STATISTICS_CFG 2171 #define NET_DVR_GET_ACS_SCREEN_DISPLAY_CFG 2172 #define NET_DVR_SET_ACS_SCREEN_DISPLAY_CFG 2173 #define NET_DVR_GET_GATE_TIME_CFG 2174 #define NET_DVR_SET_GATE_TIME_CFG 2175 #define NET_DVR_GET_LOCAL_CONTROLLER_STATUS 2176 #define NET_DVR_GET_ONLINE_LOCAL_CONTROLLER 2177 #define NET_DVR_GET_CARD_CFG_V50 2178 #define NET_DVR_SET_CARD_CFG_V50 2179 #define NET_DVR_GET_ACS_WORK_STATUS_V50 2180 #define NET_DVR_GET_EVENT_CARD_LINKAGE_CFG_V50 2181 #define NET_DVR_SET_EVENT_CARD_LINKAGE_CFG_V50 2182 #define NET_DVR_GET_FINGERPRINT_CFG_V50 2183 #define NET_DVR_SET_FINGERPRINT_CFG_V50 2184 #define NET_DVR_GET_SAFETYCABIN_STATE 2197 #define NET_DVR_GET_RS485_CASCADE_CFG 2198 #define NET_DVR_SET_RS485_CASCADE_CFG 2199 #define NET_DVR_GET_REMOTECONTROLLER_PERMISION_CFG 2200 #define NET_DVR_SET_REMOTECONTROLLER_PERMISION_CFG 2201 #define NET_DVR_GET_KEYBOARD_CFG 2202 #define NET_DVR_SET_KEYBOARD_CFG 2203 #define NET_DVR_GET_ALARMHOST_WIRELESS_BUSINNESS_INFO 2204 #define NET_DVR_GET_ALL_REMOTECONTROLLER_LIST 2205 #define NET_DVR_GET_PREVIEW_DELAY_CFG 2206 #define NET_DVR_SET_PREVIEW_DELAY_CFG 2207 #define NET_DVR_GET_ZONE_CHANNEL_LINKAGE_CFG 2208 #define NET_DVR_SET_ZONE_CHANNEL_LINKAGE_CFG 2209 #define NET_DVR_GET_CENTER_SERVER_CFG 2210 #define NET_DVR_SET_CENTER_SERVER_CFG 2211 #define NET_DVR_GET_EMERGENCE_ALARM_PRODUCT_CAP 2212 #define NET_DVR_GET_CALL_WAITTING_CFG_CAP 2213 #define NET_DVR_GET_CALL_WAITTING_CFG 2214 #define NET_DVR_SET_CALL_WAITTING_CFG 2215 #define NET_DVR_GET_ALARM_LAMP_CFG_CAP 2216 #define NET_DVR_GET_ALARM_LAMP_CFG 2217 #define NET_DVR_SET_ALARM_LAMP_CFG 2218 #define NET_DVR_GET_VOICE_PROMPTION_CFG_CAP 2219 #define NET_DVR_GET_VOICE_PROMPTION_CFG 2220 #define NET_DVR_SET_VOICE_PROMPTION_CFG 2221 #define NET_DVR_GET_EMERGENCE_ALARM_RESPONSE_CAP 2222 #define NET_DVR_EMERGENCE_ALARM_RESPONSE_CTRL 2223 #define NET_DVR_GET_ALARMHOST_NETCFG_V50 2224 #define NET_DVR_SET_ALARMHOST_NETCFG_V50 2225 #define NET_DVR_REGISTER_ALARM_RS485 2226 #define NET_DVR_GET_ALARMIN_PARAM_LIST 2227 #define NET_DVR_GET_ALARMHOST_OTHER_STATUS_V50 2228 #define NET_DVR_GET_ALARMHOST_OTHER_STATUS_V51 2236 #define NET_DVR_GET_ALARMIN_ASSOCIATED_CHAN_LIST 2229 #define NET_DVR_GET_ALARMIN_TRIGGER 2230 #define NET_DVR_SET_ALARMIN_TRIGGER 2231 #define NET_DVR_GET_EMERGENCY_CALL_HELP_TRIGGER 2232 #define NET_DVR_SET_EMERGENCY_CALL_HELP_TRIGGER 2233 #define NET_DVR_GET_CONSULT_TRIGGER 2234 #define NET_DVR_SET_CONSULT_TRIGGER 2235 #define NET_DVR_GET_CARD_RIGHT_WEEK_PLAN_V50 2304 #define NET_DVR_SET_CARD_RIGHT_WEEK_PLAN_V50 2305 #define NET_DVR_GET_CARD_RIGHT_HOLIDAY_PLAN_V50 2310 #define NET_DVR_SET_CARD_RIGHT_HOLIDAY_PLAN_V50 2311 #define NET_DVR_GET_CARD_RIGHT_HOLIDAY_GROUP_V50 2316 #define NET_DVR_SET_CARD_RIGHT_HOLIDAY_GROUP_V50 2317 #define NET_DVR_GET_CARD_RIGHT_PLAN_TEMPLATE_V50 2322 #define NET_DVR_SET_CARD_RIGHT_PLAN_TEMPLATE_V50 2323 #define NET_DVR_GET_SCHEDULE_INFO 2500 #define NET_DVR_GET_ATTENDANCE_SUMMARY_INFO 2501 #define NET_DVR_GET_ATTENDANCE_RECORD_INFO 2502 #define NET_DVR_GET_ABNORMAL_INFO 2503 #define NET_DVR_CAPTURE_FINGERPRINT_INFO 2504 #define NET_DVR_BULK_UPLOAD_BLACK_LIST_PICTURE 2520 #define NET_DVR_BULK_UPLOAD_ID_BLACK_LIST 2521 #define NET_DVR_GET_FAILED_FACE_INFO 2522 #define NET_DVR_GET_FACE_AND_TEMPLATE 2523 #define NET_DVR_SET_FACE_AND_TEMPLATE 2524 #define NET_DVR_GET_CARD_READER_CFG_V50 2505 #define NET_DVR_SET_CARD_READER_CFG_V50 2506 #define NET_DVR_GET_FACE_PARAM_CFG 2507 #define NET_DVR_SET_FACE_PARAM_CFG 2508 #define NET_DVR_DEL_FACE_PARAM_CFG 2509 #define NET_DVR_CAPTURE_FACE_INFO 2510 #define NET_DVR_GET_REGISTER_INFO 2511 #define NET_DVR_GET_SMSRELATIVEPARA_V50 2512 #define NET_DVR_SET_SMSRELATIVEPARA_V50 2513 #define NET_DVR_GET_ACS_EVENT 2514 #define NET_DVR_GET_MULTI_CARD_CFG_V50 2515 #define NET_DVR_SET_MULTI_CARD_CFG_V50 2516 #define NET_DVR_DEL_FINGERPRINT_CFG_V50 2517 #define NET_DVR_GET_EVENT_CARD_LINKAGE_CFG_V51 2518 #define NET_DVR_SET_EVENT_CARD_LINKAGE_CFG_V51 2519 #define NET_DVR_SET_EXAM_INFO 2530 #define NET_DVR_SET_EXAMINEE_INFO 2531 #define NET_DVR_SEARCH_EXAM_COMPARE_RESULT 2532 #define NET_DVR_BULK_CHECK_FACE_PICTURE 2533 #define NET_DVR_JSON_CONFIG 2550 #define NET_DVR_FACE_DATA_RECORD 2551 #define NET_DVR_FACE_DATA_SEARCH 2552 #define NET_DVR_FACE_DATA_MODIFY 2553 #define NET_DVR_GET_ALL_ALARM_RS485CFG 2705 #define NET_DVR_GET_ALL_ALARMHOST_RS485_SLOT_CFG 2706 #define NET_DVR_GET_DEVICE_SELF_CHECK_STATE 2707 #define NET_DVR_GET_ALL_ALARM_POINT_CFG 2708 #define NET_DVR_GET_ALL_ALARM_SENSOR_CFG 2709 #define NET_DVR_GET_ALL_ALARM_SENSOR_JOINT 2710 #define NET_DVR_GET_AIR_CONDITION_PARAM 2711 #define NET_DVR_GET_OUT_SCALE_CFG 2712 #define NET_DVR_SET_OUT_SCALE_CFG 2713 #define NET_DVR_GET_ALARM_CHAN_ABLITITY 2714 #define NET_DVR_GET_ALARMCENTER_NETCFG 2715 #define NET_DVR_SET_ALARMCENTER_NETCFG 2716 #define NET_ITC_GET_TRIGGERCFG 3003 #define NET_ITC_SET_TRIGGERCFG 3004 #define NET_ITC_GET_IOOUT_PARAM_CFG 3005 #define NET_ITC_SET_IOOUT_PARAM_CFG 3006 #define NET_DVR_GET_CAMERA_SETUPCFG 3007 #define NET_DVR_SET_CAMERA_SETUPCFG 3008 #define NET_ITC_GET_TRIGGER_DEFAULTCFG 3013 #define NET_DVR_GET_STATUS_DETECTCFG 3015 #define NET_DVR_SET_STATUS_DETECTCFG 3016 #define NET_ITC_GET_VIDEO_TRIGGERCFG 3017 #define NET_ITC_SET_VIDEO_TRIGGERCFG 3018 #define NET_DVR_GET_TPS_ALARMCFG 3019 #define NET_DVR_SET_TPS_ALARMCFG 3020 #define NET_DVR_GET_REDAREACFG 3100 #define NET_DVR_SET_REDAREACFG 3101 #define NET_DVR_GET_TEST_SPOT 3102 #define NET_DVR_SET_TEST_SPOT 3103 #define NET_DVR_GET_CABINETCFG 3104 #define NET_DVR_SET_CABINETCFG 3105 #define NET_DVR_VEHICLE_CHECK_START 3106 #define NET_DVR_SET_CAPTUREPIC_CFG 3107 #define NET_DVR_GET_CAPTUREPIC_CFG 3108 #define NET_DVR_SET_MOBILEPLATE_RECOG_CFG 3109 #define NET_DVR_GET_MOBILEPLATE_RECOG_CFG 3110 #define NET_DVR_SET_MOBILE_RADAR_CFG 3111 #define NET_DVR_GET_MOBILE_RADAR_CFG 3112 #define NET_DVR_SET_MOBILE_LOCALPLATECHK_CFG 3113 #define NET_DVR_GET_MOBILE_LOCALPLATECHK_CFG 3114 #define NET_ITC_GET_ICRCFG 3115 #define NET_ITC_SET_ICRCFG 3116 #define NET_ITC_GET_RS485_ACCESSINFO 3117 #define NET_ITC_SET_RS485_ACCESSINFO 3118 #define NET_ITC_GET_EXCEPTIONCFG 3119 #define NET_ITC_SET_EXCEPTIONCFG 3120 #define NET_ITC_GET_FTPCFG 3121 #define NET_ITC_SET_FTPCFG 3122 #define NET_DVR_VEHICLE_CONTROL_LIST_START 3123 #define NET_DVR_GET_ALL_VEHICLE_CONTROL_LIST 3124 #define NET_DVR_VEHICLE_DELINFO_CTRL 3125 #define NET_DVR_GET_ENTRANCE_PARAMCFG 3126 #define NET_DVR_SET_ENTRANCE_PARAMCFG 3127 #define NET_DVR_BARRIERGATE_CTRL 3128 #define NET_DVR_GATELAMP_CTRL 3129 #define NET_DVR_GET_CURTRIGGERMODE 3130 #define NET_DVR_GET_GPSDATACFG 3131 #define NET_DVR_SET_GPSDATACFG 3132 #define NET_DVR_VEHICLELIST_CTRL_START 3133 #define NET_DVR_GET_GUARDCFG 3134 #define NET_DVR_SET_GUARDCFG 3135 #define NET_DVR_GET_SNAPINFO_CFG 3136 #define NET_DVR_SET_SNAPINFO_CFG 3137 #define NET_DVR_GET_SNAPINFO_CFG_V40 3138 #define NET_DVR_SET_SNAPINFO_CFG_V40 3139 #define NET_DVR_SET_CURTRIGGERMODE 3140 #define NET_DVR_GET_TRAFFIC_DATA 3141 #define NET_DVR_GET_TRAFFIC_FLOW 3142 #define NET_DVR_PARKING_VEHICLE_SEND 3143 #define NET_DVR_PARKING_CARD_SEND 3144 #define NET_DVR_PARKING_CARD_CTRL 3145 #define NET_DVR_GET_ALARMCTRL_CAPABILITIES 3146 #define NET_DVR_SET_ALARMCTRL_CFG 3147 #define NET_DVR_GET_ALARMCTRL_CFG 3148 #define NET_DVR_GET_AUDIO_INPUT 3201 #define NET_DVR_SET_AUDIO_INPUT 3202 #define NET_DVR_GET_CAMERA_DEHAZE_CFG 3203 #define NET_DVR_SET_CAMERA_DEHAZE_CFG 3204 #define NET_DVR_REMOTECONTROL_ALARM 3205 #define NET_DVR_REMOTECONTROL_DISALARM 3206 #define NET_DVR_REMOTECONTROL_STUDY 3207 #define NET_DVR_WIRELESS_ALARM_STUDY 3208 #define NET_IPC_GET_AUX_ALARMCFG 3209 #define NET_IPC_SET_AUX_ALARMCFG 3210 #define NET_DVR_GET_PREVIEW_DISPLAYCFG 3211 #define NET_DVR_SET_PREVIEW_DISPLAYCFG 3212 #define NET_DVR_REMOTECONTROL_PTZ 3213 #define NET_DVR_REMOTECONTROL_PRESETPOINT 3214 #define NET_DVR_REMOTECONTROL_CRUISE 3215 #define NET_DVR_GET_MULTI_STREAM_COMPRESSIONCFG 3216 #define NET_DVR_SET_MULTI_STREAM_COMPRESSIONCFG 3217 #define NET_DVR_GET_WPSCFG 3218 #define NET_DVR_SET_WPSCFG 3219 #define NET_DVR_WPS_CONNECT 3220 #define NET_DVR_GET_DEVICE_PIN 3221 #define NET_DVR_UPDATE_PIN 3223 #define NET_DVR_GET_PRESETCFG 3224 #define NET_DVR_GET_PTZCRUISECFG 3225 #define NET_DVR_GET_PRESET_NUM 3226 #define NET_DVR_GET_PTZCRUISE_NUM 3227 #define NET_DVR_GET_MOTION_TRACK_CFG 3228 #define NET_DVR_SET_MOTION_TRACK_CFG 3229 #define NET_DVR_CLEAR_IPC_PARAM 3230 #define NET_DVR_GET_IPADDR_FILTERCFG 3232 #define NET_DVR_SET_IPADDR_FILTERCFG 3233 #define NET_DVR_GET_LOGO_OVERLAYCFG 3234 #define NET_DVR_SET_LOGO_OVERLAYCFG 3235 #define NET_DVR_GET_IPV6_LIST 3236 #define NET_DVR_GET_AUDIOOUT_VOLUME 3237 #define NET_DVR_SET_AUDIOOUT_VOLUME 3238 #define NET_DVR_GET_FUZZY_UPGRADE 3239 #define NET_DVR_GET_BV_CORRECT_PARAM 3240 #define NET_DVR_SET_BV_CORRECT_PARAM 3241 #define NET_DVR_GET_OUTPUT_VIDEO_TYPE 3242 #define NET_DVR_SET_OUTPUT_VIDEO_TYPE 3243 #define NET_DVR_FISHEYE_CFG 3244 #define NET_DVR_GET_PTZ_POINT 3245 #define NET_DVR_SET_PTZ_POINT 3246 #define NET_DVR_REMOTECONTROL_DEV_PARAM 3247 #define NET_DVR_GET_FISHEYE_STREAM_STATUS 3248 #define NET_DVR_GET_GBT28181_ACCESS_CFG 3249 #define NET_DVR_SET_GBT28181_ACCESS_CFG 3250 #define NET_DVR_GET_GBT28181_CHANINFO_CFG 3251 #define NET_DVR_SET_GBT28181_CHANINFO_CFG 3252 #define NET_DVR_GET_GBT28181_ALARMINCFG 3253 #define NET_DVR_SET_GBT28181_ALARMINCFG 3254 #define NET_DVR_GET_ISP_CAMERAPARAMCFG 3255 #define NET_DVR_SET_ISP_CAMERAPARAMCFG 3256 #define NET_DVR_GET_DEVSERVER_CFG 3257 #define NET_DVR_SET_DEVSERVER_CFG 3258 #define NET_DVR_GET_WIPERINFO_CFG 3259 #define NET_DVR_SET_WIPERINFO_CFG 3260 #define NET_DVR_GET_TRACK_DEV_PARAM 3261 #define NET_DVR_SET_TRACK_DEV_PARAM 3262 #define NET_DVR_GET_PTZ_TRACK_PARAM 3263 #define NET_DVR_SET_PTZ_TRACK_PARAM 3264 #define NET_DVR_GET_CENTER_POINT_CFG 3265 #define NET_DVR_SET_CENTER_POINT_CFG 3266 #define NET_DVR_GET_CENTER_POINT_CFG_CAPABILITIES 3267 #define NET_DVR_GET_FISHEYE_CAPABILITIES 3268 #define NET_DVR_GET_BASICPARAMCFG 3270 #define NET_DVR_SET_BASICPARAMCFG 3271 #define NET_DVR_GET_PTZOSDCFG 3272 #define NET_DVR_SET_PTZOSDCFG 3273 #define NET_DVR_GET_POWEROFFMEMCFG 3274 #define NET_DVR_SET_POWEROFFMEMCFG 3275 #define NET_DVR_GET_LIMITCFG 3276 #define NET_DVR_SET_LIMITCFG 3277 #define NET_DVR_PTZLIMIT_CTRL 3278 #define NET_DVR_PTZ_CLEARCTRL 3279 #define NET_DVR_GET_PRIORITIZECFG 3281 #define NET_DVR_SET_PRIORITIZECFG 3282 #define NET_DVR_PTZ_INITIALPOSITIONCTRL 3283 #define NET_DVR_GET_PRIVACY_MASKSCFG 3285 #define NET_DVR_SET_PRIVACY_MASKSCFG 3286 #define NET_DVR_GET_PTZLOCKCFG 3287 #define NET_DVR_SET_PTZLOCKCFG 3288 #define NET_DVR_PTZ_ZOOMRATIOCTRL 3289 #define NET_DVR_GET_PTZLOCKINFO 3290 #define NET_DVR_GET_PRIVACY_MASKS_ENABLECFG 3291 #define NET_DVR_SET_PRIVACY_MASKS_ENABLECFG 3292 #define NET_DVR_GET_SMARTTRACKCFG 3293 #define NET_DVR_SET_SMARTTRACKCFG 3294 #define NET_DVR_GET_EPTZ_CFG 3295 #define NET_DVR_SET_EPTZ_CFG 3296 #define NET_DVR_GET_EPTZ_CFG_CAPABILITIES 3297 #define NET_DVR_GET_LOW_LIGHTCFG 3303 #define NET_DVR_SET_LOW_LIGHTCFG 3304 #define NET_DVR_GET_FOCUSMODECFG 3305 #define NET_DVR_SET_FOCUSMODECFG 3306 #define NET_DVR_GET_INFRARECFG 3307 #define NET_DVR_SET_INFRARECFG 3308 #define NET_DVR_GET_AEMODECFG 3309 #define NET_DVR_SET_AEMODECFG 3310 #define NET_DVR_CONTROL_RESTORE_SUPPORT 3311 #define NET_DVR_CONTROL_RESTART_SUPPORT 3312 #define NET_DVR_CONTROL_PTZ_PATTERN 3313 #define NET_DVR_GET_PTZ_PARKACTION_CFG 3314 #define NET_DVR_SET_PTZ_PARKACTION_CFG 3315 #define NET_DVR_CONTROL_PTZ_MANUALTRACE 3316 #define NET_DVR_GET_ROI_DETECT_NUM 3349 #define NET_DVR_GET_ROI_DETECT 3350 #define NET_DVR_SET_ROI_DETECT 3351 #define NET_DVR_GET_FACE_DETECT 3352 #define NET_DVR_SET_FACE_DETECT 3353 #define NET_DVR_GET_CORRIDOR_MODE 3354 #define NET_DVR_SET_CORRIDOR_MODE 3355 #define NET_DVR_GET_SCENECHANGE_DETECTIONCFG 3356 #define NET_DVR_SET_SCENECHANGE_DETECTIONCFG 3357 #define NET_DVR_GET_TRAVERSE_PLANE_DETECTION 3360 #define NET_DVR_SET_TRAVERSE_PLANE_DETECTION 3361 #define NET_DVR_GET_FIELD_DETECTION 3362 #define NET_DVR_SET_FIELD_DETECTION 3363 #define NET_DVR_GET_DEFOCUSPARAM 3364 #define NET_DVR_SET_DEFOCUSPARAM 3365 #define NET_DVR_GET_AUDIOEXCEPTIONPARAM 3366 #define NET_DVR_SET_AUDIOEXCEPTIONPARAM 3367 #define NET_DVR_GET_CCDPARAMCFG_EX 3368 #define NET_DVR_SET_CCDPARAMCFG_EX 3369 #define NET_DVR_START_GET_INPUTVOLUME 3370 #define NET_DVR_SET_SCH_TASK 3380 #define NET_DVR_GET_SCH_TASK 3381 #define NET_DVR_SET_PRESET_NAME 3382 #define NET_DVR_GET_PRESET_NAME 3383 #define NET_DVR_SET_AUDIO_NAME 3384 #define NET_DVR_GET_AUDIO_NAME 3385 #define NET_DVR_RESUME_INITRACKPOS 3386 #define NET_DVR_NTP_SERVER_TEST 3387 #define NET_DVR_NAS_SERVER_TEST 3388 #define NET_DVR_EMAIL_SERVER_TEST 3389 #define NET_DVR_FTP_SERVER_TEST 3390 #define NET_DVR_IP_TEST 3391 #define NET_DVR_GET_NET_DISKCFG_V40 3392 #define NET_DVR_SET_NET_DISKCFG_V40 3393 #define NET_DVR_GET_IOOUT_CFG 3394 #define NET_DVR_SET_IOOUT_CFG 3395 #define NET_DVR_GET_SIGNAL_SYNC 3396 #define NET_DVR_SET_SIGNAL_SYNC 3397 #define NET_DVR_GET_EZVIZ_ACCESS_CFG 3398 #define NET_DVR_SET_EZVIZ_ACCESS_CFG 3399 #define NET_DVR_GET_SCHEDULE_AUTO_TRACK_CFG 3400 #define NET_DVR_SET_SCHEDULE_AUTO_TRACK_CFG 3401 #define NET_DVR_MAKE_I_FRAME 3402 #define NET_DVR_GET_ALARM_RELATE 3403 #define NET_DVR_SET_ALARM_RELATE 3404 #define NET_DVR_GET_PDC_RULECFG_V42 3405 #define NET_DVR_SET_PDC_RULECFG_V42 3406 #define NET_DVR_GET_HEATMAP_CFG 3407 #define NET_DVR_SET_HEATMAP_CFG 3408 #define NET_DVR_REMOTECONTROL_LINEARSCAN 3409 #define NET_DVR_DPC_CTRL 3410 #define NET_DVR_FFC_MANUAL_CTRL 3411 #define NET_DVR_FFC_BACKCOMP_CTRL 3412 #define NET_DVR_GET_FOCUSING_POSITION_STATE 3413 #define NET_DVR_GET_PRIVATE_PROTOCOL_CFG 3414 #define NET_DVR_SET_PRIVATE_PROTOCOL_CFG 3415 #define NET_DVR_COMPLETE_RESTORE_CTRL 3420 #define NET_DVR_CLOUDSTORAGE_SERVER_TEST 3421 #define NET_DVR_PHONE_NUM_TEST 3422 #define NET_DVR_GET_REMOTECONTROL_STATUS 3423 #define NET_DVR_GET_MONITOR_LOCATION_INFO 3424 #define NET_DVR_SET_MONITOR_LOCATION_INFO 3425 #define NET_DVR_GET_SMART_CAPABILITIES 3500 #define NET_DVR_GET_EVENT_TRIGGERS_CAPABILITIES 3501 #define NET_DVR_GET_REGION_ENTRANCE_CAPABILITIES 3502 #define NET_DVR_GET_REGION_ENTR_DETECTION 3503 #define NET_DVR_SET_REGION_ENTR_DETECTION 3504 #define NET_DVR_GET_REGION_ENTR_REGION 3505 #define NET_DVR_SET_REGION_ENTR_REGION 3506 #define NET_DVR_GET_REGION_ENTR_TRIGGER 3507 #define NET_DVR_SET_REGION_ENTR_TRIGGER 3508 #define NET_DVR_GET_REGION_ENTR_SCHEDULE 3509 #define NET_DVR_SET_REGION_ENTR_SCHEDULE 3510 #define NET_DVR_GET_REGION_EXITINT_CAPABILITIES 3511 #define NET_DVR_GET_REGION_EXITING_DETECTION 3512 #define NET_DVR_SET_REGION_EXITING_DETECTION 3513 #define NET_DVR_GET_REGION_EXITING_REGION 3514 #define NET_DVR_SET_REGION_EXITING_REGION 3515 #define NET_DVR_GET_REGION_EXIT_TRIGGER 3516 #define NET_DVR_SET_REGION_EXIT_TRIGGER 3517 #define NET_DVR_GET_REGION_EXIT_SCHEDULE 3518 #define NET_DVR_SET_REGION_EXIT_SCHEDULE 3519 #define NET_DVR_GET_LOITERING_CAPABILITIES 3520 #define NET_DVR_GET_LOITERING_DETECTION 3521 #define NET_DVR_SET_LOITERING_DETECTION 3522 #define NET_DVR_GET_LOITERING_REGION 3523 #define NET_DVR_SET_LOITERING_REGION 3524 #define NET_DVR_GET_LOITERING_TRIGGER 3525 #define NET_DVR_SET_LOITERING_TRIGGER 3526 #define NET_DVR_GET_LOITERING_SCHEDULE 3527 #define NET_DVR_SET_LOITERING_SCHEDULE 3528 #define NET_DVR_GET_GROUPDETECTION_CAPABILITIES 3529 #define NET_DVR_GET_GROUP_DETECTION 3530 #define NET_DVR_SET_GROUP_DETECTION 3531 #define NET_DVR_GET_GROUPDETECTION_REGION 3532 #define NET_DVR_SET_GROUPDETECTION_REGION 3533 #define NET_DVR_GET_GROUPDETECTION_TRIGGER 3534 #define NET_DVR_SET_GROUPDETECTION_TRIGGER 3535 #define NET_DVR_GET_GROUPDETECTION_SCHEDULE 3536 #define NET_DVR_SET_GROUPDETECTION_SCHEDULE 3537 #define NET_DVR_GET_RAPIDMOVE_CAPABILITIES 3538 #define NET_DVR_GET_RAPIDMOVE_DETECTION 3539 #define NET_DVR_SET_RAPIDMOVE_DETECTION 3540 #define NET_DVR_GET_RAPIDMOVE_REGION 3541 #define NET_DVR_SET_RAPIDMOVE_REGION 3542 #define NET_DVR_GET_RAPIDMOVE_TRIGGER 3543 #define NET_DVR_SET_RAPIDMOVE_TRIGGER 3544 #define NET_DVR_GET_RAPIDMOVE_SCHEDULE 3545 #define NET_DVR_SET_RAPIDMOVE_SCHEDULE 3546 #define NET_DVR_GET_PATKING_CAPABILITIES 3547 #define NET_DVR_GET_PARKING_DETECTION 3548 #define NET_DVR_SET_PARKING_DETECTION 3549 #define NET_DVR_GET_PARKING_REGION 3550 #define NET_DVR_SET_PARKING_REGION 3551 #define NET_DVR_GET_PARKING_TRIGGER 3552 #define NET_DVR_SET_PARKING_TRIGGER 3553 #define NET_DVR_GET_PARKING_SCHEDULE 3554 #define NET_DVR_SET_PARKING_SCHEDULE 3555 #define NET_DVR_GET_UNATTENDED_BAGGAGE_CAPABILITIES 3556 #define NET_DVR_GET_UNATTENDED_BAGGAGE_DETECTION 3557 #define NET_DVR_SET_UNATTENDED_BAGGAGE_DETECTION 3558 #define NET_DVR_GET_UNATTENDED_BAGGAGE_REGION 3559 #define NET_DVR_SET_UNATTENDED_BAGGAGE_REGION 3560 #define NET_DVR_GET_UNATTENDED_BAGGAGE_TRIGGER 3561 #define NET_DVR_SET_UNATTENDED_BAGGAGE_TRIGGER 3562 #define NET_DVR_GET_UNATTENDED_BAGGAGE_SCHEDULE 3563 #define NET_DVR_SET_UNATTENDED_BAGGAGE_SCHEDULE 3564 #define NET_DVR_GET_ATTENDEDBAGGAGE_CAPABILITIES 3565 #define NET_DVR_GET_ATTENDEDBAGGAGE_DETECTION 3566 #define NET_DVR_SET_ATTENDEDBAGGAGE_DETECTION 3567 #define NET_DVR_GET_ATTENDEDBAGGAGE_REGION 3568 #define NET_DVR_SET_ATTENDEDBAGGAGE_REGION 3569 #define NET_DVR_GET_ATTENDEDBAGGAGE_TRIGGER 3570 #define NET_DVR_SET_ATTENDEDBAGGAGE_TRIGGER 3571 #define NET_DVR_GET_ATTENDEDBAGGAGE_SCHEDULE 3572 #define NET_DVR_SET_ATTENDEDBAGGAGE_SCHEDULE 3573 #define NET_DVR_GET_REGIONCLIP_CAPABILITIES 3574 #define NET_DVR_GET_REGION_CLIP 3575 #define NET_DVR_SET_REGION_CLIP 3576 #define NET_DVR_GET_NETWORK_CAPABILITIES 3577 #define NET_DVR_GET_WIRELESS_DIAL 3578 #define NET_DVR_SET_WIRELESS_DIAL 3579 #define NET_DVR_GET_WIRELESSDIAL_CAPABILITIES 3580 #define NET_DVR_GET_WIRELESSDIAL_SCHEDULE 3581 #define NET_DVR_SET_WIRELESSDIAL_SCHEDULE 3582 #define NET_DVR_GET_WIRELESSDIAL_STATUS 3583 #define NET_DVR_GET_REGION_ENTRANCE_SCHEDULE_CAPABILITIES 3584 #define NET_DVR_GET_REGION_EXITING_SCHEDULE_CAPABILITIES 3585 #define NET_DVR_GET_LOITERING_SCHEDULE_CAPABILITIES 3586 #define NET_DVR_GET_GROUP_SCHEDULE_CAPABILITIES 3587 #define NET_DVR_GET_RAPIDMOVE_SCHEDULE_CAPABILITIES 3588 #define NET_DVR_GET_PARKING_SCHEDULE_CAPABILITIES 3589 #define NET_DVR_GET_UNATTENDEDBAGGAGE_SCHEDULE_CAPABILITIES 3590 #define NET_DVR_GET_ATTENDEDBAGGAGE_SCHEDULE_CAPABILITIES 3591 #define NET_DVR_GET_WIRELESSDIAL_SCHEDULE_CAPABILITIES 3592 #define NET_DVR_WIRELESSDIAL_CONNECT 3593 #define NET_DVR_GET_LITESTORAGE 3594 #define NET_DVR_SET_LITESTORAGE 3595 #define NET_DVR_GET_LITESTORAGE_CAPABILITIES 3596 #define NET_DVR_GET_VEHICLE_CAPABILITIES 3597 #define NET_DVR_GET_VEHICLE_CALIBRATION 3598 #define NET_DVR_GET_SLAVECAMERA_CAPABILITIES 3599 #define NET_DVR_GET_SLAVECAMERA 3600 #define NET_DVR_SET_SLAVECAMERA 3601 #define NET_DVR_GET_SLAVECAMERA_STATUS 3602 #define NET_DVR_GET_SLAVECAMERA_CALIB_CAPABILITIES 3603 #define NET_DVR_GET_SLAVECAMERA_CALIB 3604 #define NET_DVR_SET_SLAVECAMERA_CALIB 3605 #define NET_DVR_GET_PHY_RATIO 3606 #define NET_DVR_SET_PHY_RATIO 3607 #define NET_DVR_GET_MASTERSLAVETRACKING_CAPABILITIES 3608 #define NET_DVR_SET_TRACKINGRATIO 3610 #define NET_DVR_GET_TRACKING 3611 #define NET_DVR_SET_TRACKING 3612 #define NET_DVR_GET_TRACKING_CAPABILITIES 3613 #define NET_DVR_GET_SLAVECAMERA_CALIB_V50 3614 #define NET_DVR_SET_SLAVECAMERA_CALIB_V50 3615 #define NET_DVR_SET_TRACKINGRATIO_MANUAL 3616 #define NET_DVR_GET_TRACKINGRATIO_MANUAL 3617 #define NET_DVR_SET_TRACK_INITPOSTION 3618 #define NET_DVR_GET_PTZ_CAPABILITIES 3619 #define NET_DVR_GET_THERMOMETRY_BASICPARAM_CAPABILITIES 3620 #define NET_DVR_GET_THERMOMETRY_BASICPARAM 3621 #define NET_DVR_SET_THERMOMETRY_BASICPARAM 3622 #define NET_DVR_GET_THERMOMETRY_SCENE_CAPABILITIES 3623 #define NET_DVR_GET_THERMOMETRY_PRESETINFO 3624 #define NET_DVR_SET_THERMOMETRY_PRESETINFO 3625 #define NET_DVR_GET_THERMOMETRY_ALARMRULE_CAPABILITIES 3626 #define NET_DVR_GET_THERMOMETRY_ALARMRULE 3627 #define NET_DVR_SET_THERMOMETRY_ALARMRULE 3628 #define NET_DVR_GET_REALTIME_THERMOMETRY 3629 #define NET_DVR_GET_THERMOMETRY_DIFFCOMPARISON 3630 #define NET_DVR_SET_THERMOMETRY_DIFFCOMPARISON 3631 #define NET_DVR_GET_THERMOMETRY_TRIGGER 3632 #define NET_DVR_SET_THERMOMETRY_TRIGGER 3633 #define NET_DVR_GET_THERMAL_CAPABILITIES 3634 #define NET_DVR_GET_FIREDETECTION_CAPABILITIES 3635 #define NET_DVR_GET_FIREDETECTION 3636 #define NET_DVR_SET_FIREDETECTION 3637 #define NET_DVR_GET_FIREDETECTION_TRIGGER 3638 #define NET_DVR_SET_FIREDETECTION_TRIGGER 3639 #define NET_DVR_GET_OIS_CAPABILITIES 3640 #define NET_DVR_GET_OIS_CFG 3641 #define NET_DVR_SET_OIS_CFG 3642 #define NET_DVR_GET_MACFILTER_CAPABILITIES 3643 #define NET_DVR_GET_MACFILTER_CFG 3644 #define NET_DVR_SET_MACFILTER_CFG 3645 #define NET_DVR_GET_EAGLEFOCUS_CALCFG_CAPABILITIES 3646 #define NET_DVR_GET_EAGLEFOCUSING_CALCFG 3647 #define NET_DVR_SET_EAGLEFOCUSING_CALCFG 3648 #define NET_DVR_GET_EAGLEFOCUSING_CFG_CAPABILITIES 3649 #define NET_DVR_GET_EAGLEFOCUSING_CTRL 3650 #define NET_DVR_SET_EAGLEFOCUSING_CTRL 3651 #define NET_DVR_GET_PXOFFLINE_CAPABILITIES 3652 #define NET_DVR_SET_PXOFFLINE_CFG 3653 #define NET_DVR_GET_PXOFFLINE_CFG 3654 #define NET_DVR_GET_PAPERCHARGEINFO_CAPABILITIES 3655 #define NET_DVR_SET_PAPERCHARGEINFO 3656 #define NET_DVR_GET_PARKINGSAPCE_CAPABILITIES 3657 #define NET_DVR_SET_PARKINGSAPCE_INFO 3658 #define NET_DVR_GET_PXMULTICTRL_CAPABILITIES 3659 #define NET_DVR_GET_CHARGEACCOUNT_CAPABILITIES 3661 #define NET_DVR_SET_CHARGE_ACCOUNTINFO 3662 #define NET_DVR_SET_PXMULTICTRL_CFG 3663 #define NET_DVR_GET_PXMULTICTRL_CFG 3664 #define NET_DVR_GET_TME_CHARGERULE 3665 #define NET_DVR_SET_TME_CHARGERULE 3666 #define NET_DVR_GET_TME_CHARGERULE_CAPABILITIES 3667 #define NET_DVR_GET_ILLEGALCARDFILTERING_CAPABILITIES 3668 #define NET_DVR_GET_ILLEGALCARDFILTERING_CFG 3669 #define NET_DVR_SET_ILLEGALCARDFILTERING_CFG 3670 #define NET_DVR_GET_LEDDISPLAY_CAPABILITIES 3671 #define NET_DVR_SET_LEDDISPLAY_CFG 3672 #define NET_DVR_GET_LEDDISPLAY_CFG 3673 #define NET_DVR_GET_VOICEBROADCAST_CAPABILITIES 3674 #define NET_DVR_SET_VOICEBROADCAST_CFG 3675 #define NET_DVR_GET_PAPERPRINTFORMAT_CAPABILITIES 3676 #define NET_DVR_GET_PAPERPRINTFORMAT_CFG 3677 #define NET_DVR_SET_PAPERPRINTFORMAT_CFG 3678 #define NET_DVR_GET_LOCkGATE_CAPABILITIES 3679 #define NET_DVR_GET_LOCKGATE_CFG 3680 #define NET_DVR_SET_LOCKGATE_CFG 3681 #define NET_DVR_GET_PARKING_DATASTATE 3682 #define NET_DVR_SET_PARKING_DATASTATE 3683 #define NET_DVR_GET_TME_CAPABILITIES 3684 #define NET_DVR_GET_TMEVOICE_CAPABILITIES 3686 #define NET_DVR_SET_TMEVOICE_CFG 3687 #define NET_DVR_GET_TMEVOICE_CFG 3688 #define NET_DVR_DEL_TMEVOICE_CFG 3689 #define NET_DVR_GET_POSITION 3698 #define NET_DVR_SET_POSITION 3699 #define NET_DVR_GET_CENTRALIZEDCTRL_CAPABILITIES 3700 #define NET_DVR_GET_CENTRALIZEDCTRL 3701 #define NET_DVR_SET_CENTRALIZEDCTRL 3702 #define NET_DVR_GET_COMPASS_CAPABILITIES 3703 #define NET_DVR_GET_VANDALPROOFALARM 3704 #define NET_DVR_SET_VANDALPROOFALARM 3705 #define NET_DVR_COMPASS_CALIBRATE_CTRL 3706 #define NET_DVR_COMPASS_NORTH_CTRL 3707 #define NET_DVR_GET_AZIMUTHINFO 3708 #define NET_DVR_GET_SATELLITETIME 3709 #define NET_DVR_SET_SATELLITETIME 3710 #define NET_DVR_GET_GISINFO 3711 #define NET_DVR_GET_STREAMING_CAPABILITIES 3712 #define NET_DVR_GET_REFRESHFRAME_CAPABILITIES 3713 #define NET_DVR_STREAMING_REFRESH_FRAME 3714 #define NET_DVR_FACECAPTURE_STATISTICS 3715 #define NET_DVR_GET_WIRELESSSERVER_CAPABILITIES 3716 #define NET_DVR_GET_WIRELESSSERVER 3717 #define NET_DVR_SET_WIRELESSSERVER 3718 #define NET_DVR_GET_CONNECT_LIST_CAPABILITIES 3719 #define NET_DVR_GET_THSCREEN_CAPABILITIES 3720 #define NET_DVR_GET_THSCREEN 3721 #define NET_DVR_GET_EXTERNALDEVICE_CAPABILITIES 3722 #define NET_DVR_GET_EXTERNALDEVICE 3723 #define NET_DVR_SET_EXTERNALDEVICE 3724 #define NET_DVR_GET_LEDDISPLAYINFO_CAPABILITIES 3725 #define NET_DVR_SET_LEDDISPLAYINFO 3726 #define NET_DVR_GET_SUPPLEMENTLIGHT_CAPABILITIES 3727 #define NET_DVR_GET_SUPPLEMENTLIGHT 3728 #define NET_DVR_SET_SUPPLEMENTLIGHT 3729 #define NET_DVR_SET_THSCREEN 3730 #define NET_DVR_GET_LOWPOWER_CAPABILITIES 3731 #define NET_DVR_GET_LOWPOWER 3732 #define NET_DVR_SET_LOWPOWER 3733 #define NET_DVR_GET_ZOOMLINKAGE_CAPABILITIES 3734 #define NET_DVR_GET_ZOOMLINKAGE 3735 #define NET_DVR_SET_ZOOMLINKAGE 3736 #define NET_DVR_THSCREEN_TIMING 3737 #define NET_DVR_GET_OSD_BATTERY_POWER_CFG 3741 #define NET_DVR_SET_OSD_BATTERY_POWER_CFG 3742 #define NET_DVR_GET_OSD_BATTERY_POWER_CFG_CAPABILITIES 3743 #define NET_DVR_GET_VANDALPROOFALARM_TRIGGER 3744 #define NET_DVR_SET_VANDALPROOFALARM_TRIGGER 3745 #define NET_DVR_GET_PANORAMAIMAGE_CAPABILITIES 3746 #define NET_DVR_GET_PANORAMAIMAGE 3747 #define NET_DVR_SET_PANORAMAIMAGE 3748 #define NET_DVR_GET_STREAMENCRYPTION 3749 #define NET_DVR_SET_STREAMENCRYPTION 3750 #define NET_DVR_GET_STREAMENCRYPTION_CAPABILITIES 3751 #define NET_DVR_GET_REVISE_GPS_CAPABILITIES 3752 #define NET_DVR_GET_REVISE_GPS 3753 #define NET_DVR_SET_REVISE_GPS 3754 #define NET_DVR_GET_PDC_RECOMMEND 3755 #define NET_DVR_REMOVE_FLASHSTORAGE 3756 #define NET_DVR_GET_COUNTING_CAPABILITIES 3757 #define NET_DVR_SET_SENSOR_ADJUSTMENT 3758 #define NET_DVR_GET_SENSOR_ADJUSTMENT_CAPABILITIES 3759 #define NET_DVR_GET_WIRELESSSERVER_FULLVERSION_CFG 3760 #define NET_DVR_SET_WIRELESSSERVER_FULLVERSION_CFG 3761 #define NET_DVR_GET_ONLINEUSER_INFO 3762 #define NET_DVR_GET_SENSOR_ADJUSTMENT_INFO 3763 #define NET_DVR_SENSOR_RESET_CTRL 3764 #define NET_DVR_GET_POSTRADAR_CAPABILITIES 3765 #define NET_DVR_GET_POSTRADARSPEED_CFG 3766 #define NET_DVR_SET_POSTRADARSPEED_CFG 3767 #define NET_DVR_GET_POSTRADARSPEED_RECOM_CFG 3768 #define NET_DVR_GET_POSTRADARPARAM_CFG 3769 #define NET_DVR_SET_POSTRADARPARAM_CFG 3770 #define NET_DVR_GET_POSTRADARPARAM_RECOM_CFG 3771 #define NET_DVR_GET_ENCRYPT_DEVICE_INFO 3772 #define NET_DVR_GET_ANR_ARMING_HOST 3773 #define NET_DVR_GET_FIRMWARE_VERSION 3776 #define NET_DVR_GET_FTP_CAPABILITIES 3782 #define NET_DVR_GET_FTPUPLOAD_CFG 3783 #define NET_DVR_SET_FTPUPLOAD_CFG 3784 #define NET_DVR_GET_VEHICLE_INFORMATION 3785 #define NET_DVR_GET_DDNS_COUNTRY_ABILITY 3800 #define NET_DVR_GET_DEVICECFG_V50 3801 #define NET_DVR_SET_DEVICECFG_V50 3802 #define NET_DVR_SET_VEHICLE_RECOG_TASK_V50 3851 #define NET_DVR_GET_SMARTCALIBRATION_CAPABILITIES 3900 #define NET_DVR_GET_TEMPERATURE_TRIGGER 3903 #define NET_DVR_SET_TEMPERATURE_TRIGGER 3904 #define NET_DVR_GET_SMARTCALIBRATION_CFG 3910 #define NET_DVR_SET_SMARTCALIBRATION_CFG 3911 #define NET_DVR_POST_SETUP_CALIB 3912 #define NET_DVR_SET_POS_INFO_OVERLAY 3913 #define NET_DVR_GET_POS_INFO_OVERLAY 3914 #define NET_DVR_GET_CAMERA_WORK_MODE 3915 #define NET_DVR_SET_CAMERA_WORK_MODE 3916 #define NET_DVR_GET_RESOLUTION_SWITCH_CAPABILITIES 3917 #define NET_DVR_GET_RESOLUTION_SWITCH 3918 #define NET_DVR_SET_RESOLUTION_SWITCH 3919 #define NET_DVR_GET_CONFIRM_MECHANISM_CAPABILITIES 3920 #define NET_DVR_CONFIRM_MECHANISM_CTRL 3921 #define NET_DVR_GET_VEHICLLE_RESULT_CAPABILITIES 3951 #define NET_DVR_GET_CALIB_CAPABILITIES 3952 #define NET_DVR_GET_POSINFO_OVERLAY_CAPABILITIES 3953 #define NET_SDK_FINDMEDICALFILE 3954 #define NET_SDK_FINDMEDICALPICTURE 3955 #define NET_DVR_SET_POSINFO_OVERLAY 3960 #define NET_DVR_GET_POSINFO_OVERLAY 3961 #define NET_DVR_GET_FACELIB_TRIGGER 3962 #define NET_DVR_SET_FACELIB_TRIGGER 3963 #define NET_DVR_GET_FACECONTRAST_TRIGGER 3965 #define NET_DVR_SET_FACECONTRAST_TRIGGER 3966 #define NET_DVR_GET_FACECONTRAST_SCHEDULE_CAPABILITIES 3967 #define NET_DVR_GET_FACECONTRAST_SCHEDULE 3968 #define NET_DVR_SET_FACECONTRAST_SCHEDULE 3969 #define NET_DVR_GET_FACELIB_SCHEDULE_CAPABILITIES 3970 #define NET_DVR_GET_VCA_VERSION_LIST 3973 #define NET_DVR_GET_SETUP_CALIB 3974 #define NET_DVR_GET_PANORAMA_LINKAGE 3975 #define NET_DVR_SET_PANORAMA_LINKAGE 3976 #define NET_DVR_GET_FACELIB_SCHEDULE 3977 #define NET_DVR_SET_FACELIB_SCHEDULE 3978 #define NET_DVR_GET_SOFTWARE_SERVICE_CAPABILITIES 3980 #define NET_DVR_GET_SOFTWARE_SERVICE 3981 #define NET_DVR_SET_SOFTWARE_SERVICE 3982 #define NET_DVR_GET_PREVIEW_MODE_CAPABILITIES 3983 #define NET_DVR_SET_EAGLE_FOCUS_GOTOSCENE 3984 #define NET_DVR_EAGLE_FOCUS_SCENE_DEL 3985 #define NET_DVR_GET_SAFETY_HELMET_TRIGGER 3986 #define NET_DVR_SET_SAFETY_HELMET_TRIGGER 3987 #define NET_DVR_GET_SAFETY_HELMET_SCHEDULE_CAPABILITIES 3988 #define NET_DVR_GET_SAFETY_HELMET_SCHEDULE 3989 #define NET_DVR_SET_SAFETY_HELMET_SCHEDULE 3990 #define NET_DVR_GET_SIGN_ABNORMAL_TRIGGER 4150 #define NET_DVR_SET_SIGN_ABNORMAL_TRIGGER 4151 #define NET_DVR_ONE_KEY_CONFIG_SAN_V50 4152 #define NET_DVR_GET_HDCFG_V50 4153 #define NET_DVR_SET_HDCFG_V50 4154 #define NET_DVR_GET_HDVOLUME_CFG 4155 #define NET_DVR_SET_HDVOLUME_CFG 4156 #define NET_DVR_GET_POWER_SUPPLY_CABINET_TRIGGER 4157 #define NET_DVR_SET_POWER_SUPPLY_CABINET_TRIGGER 4158 #define NET_DVR_GET_SENSOR_TRIGGER 4159 #define NET_DVR_SET_SENSOR_TRIGGER 4160 #define NET_DVR_GET_FACESNAP_TRIGGER 4161 #define NET_DVR_SET_FACESNAP_TRIGGER 4162 #define NET_DVR_GET_FACESNAP_SCHEDULE_CAPABILITIES 4163 #define NET_DVR_GET_FACESNAP_SCHEDULE 4164 #define NET_DVR_SET_FACESNAP_SCHEDULE 4165 #define NET_DVR_SET_SCREEN_SWITCH 4171 #define NET_DVR_GET_BV_CALIB_PIC 4172 #define NET_DVR_GET_BV_CALIB_RESULT 4173 #define NET_DVR_GET_BV_HCORRECTION 4174 #define NET_DVR_DEL_BV_CALIB_PIC 4175 #define NET_DVR_GET_TV_SCREEN_CFG 4176 #define NET_DVR_SET_TV_SCREEN_CFG 4177 #define NET_DVR_ADJUST_BV_CALIB 4178 #define NET_DVR_GET_HUMAN_CALIB 4179 #define NET_DVR_SET_HUMAN_CALIB 4180 #define NET_DVR_GET_USERCFG_V51 4181 #define NET_DVR_SET_USERCFG_V51 4182 #define NET_DVR_GET_SOFTIO_TRIGGER 4183 #define NET_DVR_SET_SOFTIO_TRIGGER 4184 #define NET_DVR_GET_SOFTIO_SCHEDULE_CAPABILITIES 4185 #define NET_DVR_GET_SOFTIO_SCHEDULE 4186 #define NET_DVR_SET_SOFTIO_SCHEDULE 4187 #define NET_DVR_GET_HFPD_TRIGGER 4188 #define NET_DVR_SET_HFPD_TRIGGER 4189 #define NET_DVR_GET_HFPD_SCHEDULE_CAPABILITIES 4190 #define NET_DVR_GET_HFPD_SCHEDULE 4191 #define NET_DVR_SET_HFPD_SCHEDULE 4192 #define NET_DVR_GET_ALARM_INFO 4193 #define NET_DVR_GET_MUTEX_FUNCTION 4353 #define NET_DVR_GET_SINGLE_CHANNELINFO 4360 #define NET_DVR_GET_CHANNELINFO 4361 #define NET_DVR_CHECK_LOGIN_PASSWORDCFG 4362 #define NET_DVR_GET_SINGLE_SECURITY_QUESTION_CFG 4363 #define NET_DVR_SET_SINGLE_SECURITY_QUESTION_CFG 4364 #define NET_DVR_GET_SECURITY_QUESTION_CFG 4365 #define NET_DVR_SET_SECURITY_QUESTION_CFG 4366 #define NET_DVR_GET_ONLINEUSERLIST_SC 4367 #define NET_DVR_GET_BLACKLIST_FACECONTRAST_TRIGGER 4368 #define NET_DVR_SET_BLACKLIST_FACECONTRAST_TRIGGER 4369 #define NET_DVR_GET_WHITELIST_FACECONTRAST_TRIGGER 4370 #define NET_DVR_SET_WHITELIST_FACECONTRAST_TRIGGER 4371 #define NET_DVR_GET_BLACKLIST_FACECONTRAST_SCHEDULE_CAPABILITIES 4372 #define NET_DVR_GET_BLACKLIST_FACECONTRAST_SCHEDULE 4373 #define NET_DVR_SET_BLACKLIST_FACECONTRAST_SCHEDULE 4374 #define NET_DVR_GET_WHITELIST_FACECONTRAST_SCHEDULE_CAPABILITIES 4375 #define NET_DVR_GET_WHITELIST_FACECONTRAST_SCHEDULE 4376 #define NET_DVR_SET_WHITELIST_FACECONTRAST_SCHEDULE 4377 #define NET_DVR_GET_HUMAN_RECOGNITION_SCHEDULE_CAPABILITIES 4378 #define NET_DVR_GET_HUMAN_RECOGNITION_SCHEDULE 4379 #define NET_DVR_SET_HUMAN_RECOGNITION_SCHEDULE 4380 #define NET_DVR_GET_HUMAN_RECOGNITION_TRIGGER 4381 #define NET_DVR_SET_HUMAN_RECOGNITION_TRIGGER 4382 #define NET_DVR_GET_GBT28181_AUDIO_OUTPUT_CFG 4383 #define NET_DVR_SET_GBT28181_AUDIO_OUTPUT_CFG 4384 #define NET_DVR_GET_STUDENTS_STOODUP_TRIGGER 4386 #define NET_DVR_SET_STUDENTS_STOODUP_TRIGGER 4387 #define NET_DVR_GET_FRAMES_PEOPLE_COUNTING_SCHEDULE_CAPABILITIES 4388 #define NET_DVR_GET_FRAMES_PEOPLE_COUNTING_SCHEDULE 4389 #define NET_DVR_SET_FRAMES_PEOPLE_COUNTING_SCHEDULE 4390 #define NET_DVR_GET_FRAMES_PEOPLE_COUNTING_TRIGGER 4391 #define NET_DVR_SET_FRAMES_PEOPLE_COUNTING_TRIGGER 4392 #define NET_DVR_GET_PERSONDENSITY_TRIGGER 4393 #define NET_DVR_SET_PERSONDENSITY_TRIGGER 4394 #define NET_DVR_GET_PERSONDENSITY_SCHEDULE_CAPABILITIES 4395 #define NET_DVR_GET_PERSONDENSITY_SCHEDULE 4396 #define NET_DVR_SET_PERSONDENSITY_SCHEDULE 4397 #define NET_DVR_GET_STUDENTS_STOODUP_SCHEDULE_CAPABILITIES 4398 #define NET_DVR_GET_STUDENTS_STOODUP_SCHEDULE 4399 #define NET_DVR_SET_STUDENTS_STOODUP_SCHEDULE 4400 #define NET_DVR_SET_FACE_THERMOMETRY_TRIGGER 4401 #define NET_DVR_GET_FACE_THERMOMETRY_SCHEDULE_CAPABILITIES 4402 #define NET_DVR_GET_FACE_THERMOMETRY_SCHEDULE 4403 #define NET_DVR_SET_FACE_THERMOMETRY_SCHEDULE 4404 #define NET_DVR_GET_FACE_THERMOMETRY_TRIGGER 4405 #define NET_DVR_GET_PERSONQUEUE_TRIGGER 4406 #define NET_DVR_SET_PERSONQUEUE_TRIGGER 4407 #define NET_DVR_GET_PERSONQUEUE_SCHEDULE_CAPABILITIES 4408 #define NET_DVR_GET_PERSONQUEUE_SCHEDULE 4409 #define NET_DVR_SET_PERSONQUEUE_SCHEDULE 4410 #define NET_DVR_GET_FACESNAPCFG 5001 #define NET_DVR_SET_FACESNAPCFG 5002 #define NET_DVR_GET_DEVACCESS_CFG 5005 #define NET_DVR_SET_DEVACCESS_CFG 5006 #define NET_DVR_GET_SAVE_PATH_CFG 5007 #define NET_DVR_SET_SAVE_PATH_CFG 5008 #define NET_VCA_GET_RULECFG_V41 5011 #define NET_VCA_SET_RULECFG_V41 5012 #define NET_DVR_GET_AID_RULECFG_V41 5013 #define NET_DVR_SET_AID_RULECFG_V41 5014 #define NET_DVR_GET_TPS_RULECFG_V41 5015 #define NET_DVR_SET_TPS_RULECFG_V41 5016 #define NET_VCA_GET_FACEDETECT_RULECFG_V41 5017 #define NET_VCA_SET_FACEDETECT_RULECFG_V41 5018 #define NET_DVR_GET_PDC_RULECFG_V41 5019 #define NET_DVR_SET_PDC_RULECFG_V41 5020 #define NET_DVR_GET_TRIAL_VERSION_CFG 5021 #define NET_DVR_GET_VCA_CTRLINFO_CFG 5022 #define NET_DVR_SET_VCA_CTRLINFO_CFG 5023 #define NET_DVR_SYN_CHANNEL_NAME 5024 #define NET_DVR_GET_RESET_COUNTER 5025 #define NET_DVR_SET_RESET_COUNTER 5026 #define NET_DVR_GET_OBJECT_COLOR 5027 #define NET_DVR_SET_OBJECT_COLOR 5028 #define NET_DVR_GET_AUX_AREA 5029 #define NET_DVR_SET_AUX_AREA 5030 #define NET_DVR_GET_CHAN_WORKMODE 5031 #define NET_DVR_SET_CHAN_WORKMODE 5032 #define NET_DVR_GET_SLAVE_CHANNEL 5033 #define NET_DVR_SET_SLAVE_CHANNEL 5034 #define NET_DVR_GET_VQD_EVENT_RULE 5035 #define NET_DVR_SET_VQD_EVENT_RULE 5036 #define NET_DVR_GET_BASELINE_SCENE 5037 #define NET_DVR_SET_BASELINE_SCENE 5038 #define NET_DVR_CONTROL_BASELINE_SCENE 5039 #define NET_DVR_SET_VCA_DETION_CFG 5040 #define NET_DVR_GET_VCA_DETION_CFG 5041 #define NET_DVR_GET_STREAM_ATTACHINFO_CFG 5042 #define NET_DVR_SET_STREAM_ATTACHINFO_CFG 5043 #define NET_DVR_GET_BV_CALIB_TYPE 5044 #define NET_DVR_CONTROL_BV_SAMPLE_CALIB 5045 #define NET_DVR_GET_BV_SAMPLE_CALIB_CFG 5046 #define NET_DVR_GET_RULECFG_V42 5049 #define NET_DVR_SET_RULECFG_V42 5050 #define NET_DVR_SET_VCA_DETION_CFG_V40 5051 #define NET_DVR_GET_VCA_DETION_CFG_V40 5052 #define NET_DVR_SET_FLASH_CFG 5110 #define NET_DVR_GET_T1TEST_CFG 5053 #define NET_DVR_SET_T1TEST_CFG 5054 #define NET_ITS_GET_OVERLAP_CFG_V50 5055 #define NET_ITS_SET_OVERLAP_CFG_V50 5056 #define NET_DVR_GET_PARKLAMP_STATE 5057 #define NET_DVR_GET_CLOUDSTORAGE_CFG 5058 #define NET_DVR_SET_CLOUDSTORAGE_CFG 5059 #define NET_ITS_GET_BASE_INFO 5060 #define NET_DVR_GET_SENSOR_INFO 5061 #define NET_DVR_SET_SENSOR_SWITCH 5062 #define NET_ITS_GET_IMGMERGE_CFG 5063 #define NET_ITS_SET_IMGMERGE_CFG 5064 #define NET_ITS_GET_UPLOAD_CFG 5065 #define NET_ITS_SET_UPLOAD_CFG 5066 #define NET_DVR_GET_SENSOR_PORT_CAPABILITIES 5067 #define NET_ITS_GET_WORKSTATE 5069 #define NET_ITS_GET_IPC_CHAN_CFG 5070 #define NET_ITS_SET_IPC_CHAN_CFG 5071 #define NET_ITS_GET_OVERLAP_CFG 5072 #define NET_ITS_SET_OVERLAP_CFG 5073 #define NET_DVR_GET_TRIGGEREX_CFG 5074 #define NET_DVR_SET_TRIGGEREX_CFG 5075 #define NET_ITS_GET_ROAD_INFO 5076 #define NET_ITS_REMOTE_DEVICE_CONTROL 5077 #define NET_ITS_GET_GATEIPC_CHAN_CFG 5078 #define NET_ITS_SET_GATEIPC_CHAN_CFG 5079 #define NET_ITS_TRANSCHAN_START 5080 #define NET_ITS_GET_ECTWORKSTATE 5081 #define NET_ITS_GET_ECT_CHAN_INFO 5082 #define NET_DVR_GET_HEATMAP_RESULT 5083 #define NET_DVR_SET_ITS_EXDEVCFG 5084 #define NET_DVR_GET_ITS_EXDEVCFG 5085 #define NET_DVR_GET_ITS_EXDEVSTATUS 5086 #define NET_DVR_SET_ITS_ENDEVCMD 5087 #define NET_DVR_SET_ENISSUED_DATADEL 5088 #define NET_DVR_GET_PDC_RESULT 5089 #define NET_ITS_GET_LAMP_CTRLCFG 5090 #define NET_ITS_SET_LAMP_CTRLCFG 5091 #define NET_ITS_GET_PARKSPACE_ATTRIBUTE_CFG 5092 #define NET_ITS_SET_PARKSPACE_ATTRIBUTE_CFG 5093 #define NET_ITS_SET_LAMP_EXTERNAL_CFG 5095 #define NET_ITS_SET_COMPEL_CAPTURE 5096 #define NET_DVR_SET_TIMESIGN_CFG 5097 #define NET_DVR_GET_TIMESIGN_CFG 5098 #define NET_DVR_GET_SIGNALLAMP_STATUS 5099 #define NET_DVR_GET_MONITOR_PLAN_VQD 5100 #define NET_DVR_GET_MONITORID_VQD 5101 #define NET_DVR_SET_MONITOR_INFO 5102 #define NET_DVR_DEL_MONITOR_PLAN_VQD 5103 #define NET_DVR_GET_MONITOR_VQD_STATUS 5104 #define NET_DVR_GET_RECORD_INFO 5105 #define NET_DVR_GET_MONITOR_VQDCFG 5106 #define NET_DVR_SET_MONITOR_VQDCFG 5107 #define NET_DVR_SET_MONITOR_PLAN_VQDCFG 5108 #define NET_DVR_SCENE_CHANGE_UPDATE 5109 #define NET_DVR_GET_CALIBRATE_POINT 5153 #define NET_DVR_GET_SCENE_CFG 5201 #define NET_DVR_SET_SCENE_CFG 5202 #define NET_DVR_GET_SCENE_REFERENCE_REGION 5203 #define NET_DVR_SET_SCENE_REFERENCE_REGION 5204 #define NET_DVR_GET_SCENE_CALIBRATION 5205 #define NET_DVR_SET_SCENE_CALIBRATION 5206 #define NET_DVR_GET_SCENE_MASK_REGION 5207 #define NET_DVR_SET_SCENE_MASK_REGION 5208 #define NET_DVR_GET_SCENE_LANECFG 5209 #define NET_DVR_SET_SCENE_LANECFG 5210 #define NET_DVR_GET_SCENE_AID_RULECFG 5211 #define NET_DVR_SET_SCENE_AID_RULECFG 5212 #define NET_DVR_GET_SCENE_TPS_RULECFG 5213 #define NET_DVR_SET_SCENE_TPS_RULECFG 5214 #define NET_DVR_GET_SCENE_TIME_CFG 5215 #define NET_DVR_SET_SCENE_TIME_CFG 5216 #define NET_DVR_GET_FORENSICS_MODE 5217 #define NET_DVR_SET_FORENSICS_MODE 5218 #define NET_DVR_FORCESTOP_FORENSICS_CTRL 5219 #define NET_DVR_GET_ALARM_PROCESS_CFG 5220 #define NET_DVR_SET_ALARM_PROCESS_CFG 5221 #define NET_DVR_GET_BLACKLIST_ALARM_INFO 5222 #define NET_DVR_GET_STORAGE_RESOURCE_CFG 5225 #define NET_DVR_SET_STORAGE_RESOURCE_CFG 5226 #define NET_DVR_DEL_BLACKLIST_ALARM_RECORD 5227 #define NET_DVR_SET_BLACKLIST_GROUP_INFO 5229 #define NET_DVR_DEL_BLACKLIST_GROUP_INFO 5230 #define NET_DVR_GET_BLACKLIST_GROUP_INFO 5231 #define NET_DVR_SET_BLACKLIST_GROUP_RECORD_CFG 5232 #define NET_DVR_GET_BLACKLIST_GROUP_RECORD_CFG 5234 #define NET_DVR_DEL_BLACKLIST_GROUP_RECORD_CFG 5235 #define NET_DVR_GET_AREA_MONITOR_CFG 5236 #define NET_DVR_SET_AREA_MONITOR_CFG 5237 #define NET_DVR_DEL_AREA_MONITOR_CFG 5238 #define NET_DVR_RETRIEVAL_SNAP_RECORD 5240 #define NET_DVR_GET_ALARMLIST 5241 #define NET_DVR_DETECT_IMAGE 5242 #define NET_DVR_GET_SNAP_RECORD 5243 #define NET_DVR_DEL_SNAP_RECORD 5244 #define NET_DVR_GET_FACE_RECORD 5245 #define NET_DVR_SET_FACE_RECORD 5246 #define NET_DVR_DEL_FACE_RECORD 5247 #define NET_DVR_GET_FACE_DATABASE 5248 #define NET_DVR_SET_FACE_DATABASE 5249 #define NET_DVR_DEL_FACE_DATABASE 5250 #define NET_DVR_RETRIEVAL_FACE_DATABASE 5251 #define NET_DVR_SET_BLACKLIST_REL_DEV_CFG 5252 #define NET_DVR_DEL_BLACKLIST_REL_DEV 5253 #define NET_DVR_GET_DISK_RAID_INFO 6001 #define NET_DVR_SET_DISK_RAID_INFO 6002 #define NET_DVR_GET_DVR_SYNCHRONOUS_IPC 6005 #define NET_DVR_SET_DVR_SYNCHRONOUS_IPC 6006 #define NET_DVR_SET_DVR_IPC_PASSWD 6008 #define NET_DVR_GET_DEVICE_NET_USING_INFO 6009 #define NET_DVR_SET_DVR_IPC_NET 6012 #define NET_DVR_GET_RECORD_CHANNEL_INFO 6013 #define NET_DVR_SET_RECORD_CHANNEL_INFO 6014 #define NET_DVR_MOUNT_DISK 6015 #define NET_DVR_UNMOUNT_DISK 6016 #define NET_DVR_GET_STREAM_SRC_INFO 6017 #define NET_DVR_SET_STREAM_SRC_INFO 6018 #define NET_DVR_GET_STREAM_RECORD_INFO 6019 #define NET_DVR_SET_STREAM_RECORD_INFO 6020 #define NET_DVR_GET_STREAM_RECORD_STATUS 6021 #define NET_DVR_SET_STREAM_RECORD_STATUS 6022 #define NET_DVR_GET_STREAM_INFO 6023 #define NET_DVR_GET_STREAM_SRC_INFO_V40 6024 #define NET_DVR_SET_STREAM_SRC_INFO_V40 6025 #define NET_DVR_GET_RELOCATE_INFO 6026 #define NET_DVR_START_GOP_INFO_PASSBACK 6032 #define NET_DVR_GET_CHANS_RECORD_STATUS_CFG 6035 #define NET_DVR_SET_CHANS_RECORD_STATUS_CFG 6036 #define NET_DVR_GET_IP_ALARM_GROUP_NUM 6100 #define NET_DVR_GET_IP_ALARM_IN 6101 #define NET_DVR_GET_IP_ALARM_OUT 6102 #define NET_DVR_GET_FTPCFG_SECOND 6103 #define NET_DVR_SET_FTPCFG_SECOND 6104 #define NET_DVR_GET_DEFAULT_VIDEO_EFFECT 6105 #define NET_DVR_SET_VIDEO_EFFECT 6106 #define NET_DVR_DEL_INVALID_DISK 6107 #define NET_DVR_GET_DRAWFRAME_DISK_QUOTA_CFG 6109 #define NET_DVR_SET_DRAWFRAME_DISK_QUOTA_CFG 6110 #define NET_DVR_GET_NAT_CFG 6111 #define NET_DVR_SET_NAT_CFG 6112 #define NET_DVR_GET_AES_KEY 6113 #define NET_DVR_GET_POE_CFG 6114 #define NET_DVR_SET_POE_CFG 6115 #define NET_DVR_GET_CUSTOM_PRO_CFG 6116 #define NET_DVR_SET_CUSTOM_PRO_CFG 6117 #define NET_DVR_GET_STREAM_CABAC 6118 #define NET_DVR_SET_STREAM_CABAC 6119 #define NET_DVR_GET_ESATA_MINISAS_USAGE_CFG 6120 #define NET_DVR_SET_ESATA_MINISAS_USAGE_CFG 6121 #define NET_DVR_GET_HDCFG_V40 6122 #define NET_DVR_SET_HDCFG_V40 6123 #define NET_DVR_GET_POE_CHANNEL_ADD_MODE 6124 #define NET_DVR_SET_POE_CHANNEL_ADD_MODE 6125 #define NET_DVR_GET_DIGITAL_CHANNEL_STATE 6126 #define NET_DVR_GET_BONJOUR_CFG 6127 #define NET_DVR_SET_BONJOUR_CFG 6128 #define NET_DVR_GET_SOCKS_CFG 6130 #define NET_DVR_SET_SOCKS_CFG 6131 #define NET_DVR_GET_QOS_CFG 6132 #define NET_DVR_SET_QOS_CFG 6133 #define NET_DVR_GET_HTTPS_CFG 6134 #define NET_DVR_SET_HTTPS_CFG 6135 #define NET_DVR_GET_WD1_CFG 6136 #define NET_DVR_SET_WD1_CFG 6137 #define NET_DVR_CREATE_CERT 6138 #define NET_DVR_DELETE_CERT 6139 #define NET_DVR_GET_RECORD_LOCK_PERCENTAGE 6140 #define NET_DVR_SET_RECORD_LOCK_PERCENTAGE 6141 #define NET_DVR_CMD_TRIGGER_PERIOD_RECORD 6144 #define NET_DVR_UPLOAD_CERT 6145 #define NET_DVR_DOWNLOAD_CERT 6146 #define NET_DVR_GET_CERT 6147 #define NET_DVR_GET_POS_FILTER_CFG 6148 #define NET_DVR_SET_POS_FILTER_CFG 6149 #define NET_DVR_GET_CONNECT_POS_CFG 6150 #define NET_DVR_SET_CONNECT_POS_CFG 6151 #define NET_DVR_GET_CHAN_FILTER_CFG 6152 #define NET_DVR_SET_CHAN_FILTER_CFG 6153 #define NET_DVR_GET_FTPCFG_V40 6162 #define NET_DVR_SET_FTPCFG_V40 6163 #define NET_DVR_GET_MONTHLY_RECORD_DISTRIBUTION 6164 #define NET_DVR_GET_ACCESS_DEVICE_CHANNEL_INFO 6165 #define NET_DVR_GET_PREVIEW_SWITCH_CFG 6166 #define NET_DVR_SET_PREVIEW_SWITCH_CFG 6167 #define NET_DVR_GET_N_PLUS_ONE_WORK_MODE 6168 #define NET_DVR_SET_N_PLUS_ONE_WORK_MODE 6169 #define NET_DVR_GET_HD_STATUS 6170 #define NET_DVR_SET_HD_STATUS 6171 #define NET_DVR_IMPORT_IPC_CFG_FILE 6172 #define NET_DVR_EXPORT_IPC_CFG_FILE 6173 #define NET_DVR_UPGRADE_IPC 6174 #define NET_DVR_GET_RAID_BACKGROUND_TASK_SPEED 6175 #define NET_DVR_SET_RAID_BACKGROUND_TASK_SPEED 6176 #define NET_DVR_GET_EXCEPTIONCFG_V40 6177 #define NET_DVR_SET_EXCEPTIONCFG_V40 6178 #define NET_DVR_GET_PICCFG_V40 6179 #define NET_DVR_SET_PICCFG_V40 6180 #define NET_DVR_GET_ALARMINCFG_V40 6181 #define NET_DVR_SET_ALARMINCFG_V40 6182 #define NET_DVR_GET_IPALARMINCFG_V40 6183 #define NET_DVR_GET_IPALARMOUTCFG_V40 6185 #define NET_DVR_GET_USERCFG_V40 6187 #define NET_DVR_SET_USERCFG_V40 6188 #define NET_DVR_GET_WORK_STATUS 6189 #define NET_DVR_GET_JPEG_CAPTURE_CFG_V40 6190 #define NET_DVR_SET_JPEG_CAPTURE_CFG_V40 6191 #define NET_DVR_GET_HDGROUP_CFG_V40 6192 #define NET_DVR_SET_HDGROUP_CFG_V40 6193 #define NET_DVR_GET_SMD_HOLIDAY_HANDLE 6194 #define NET_DVR_SET_SMD_HOLIDAY_HANDLE 6195 #define NET_DVR_GET_PIC_MODEL_CFG 6196 #define NET_DVR_SET_PIC_MODEL_CFG 6197 #define NET_DVR_START_LOCAL_MOUSE_EVENT 6198 #define NET_DVR_START_SIMULARE_MOUSE_EVENT 6199 #define NET_DVR_GET_WORK_STATUS_V50 6200 #define NET_DVR_GET_ACCESS_CAMERA_INFO 6201 #define NET_DVR_SET_ACCESS_CAMERA_INFO 6202 #define NET_DVR_PULL_DISK 6203 #define NET_DVR_SCAN_RAID 6204 #define NET_DVR_GET_USER_RIGHT_CFG 6210 #define NET_DVR_SET_USER_RIGHT_CFG 6211 #define NET_DVR_ONE_KEY_CONFIG 6212 #define NET_DVR_RESTART_SERVICE 6213 #define NET_DVR_GET_MAX_MACHINE_NUM_CFG 6214 #define NET_DVR_SET_MAX_MACHINE_NUM_CFG 6215 #define NET_DVR_ADD_DEVICE 6216 #define NET_DVR_DEL_DEVICE 6217 #define NET_DVR_GET_DATA_CALLBACK_CFG 6218 #define NET_DVR_SET_DATA_CALLBACK_CFG 6219 #define NET_DVR_CLONE_LUN 6220 #define NET_DVR_EXPAND_LUN 6221 #define NET_DVR_GET_N_PLUS_ONE_DEVICE_INFO 6222 #define NET_DVR_MODIFY_DVR_NET_DISK 6223 #define NET_DVR_CREATE_NAS 6225 #define NET_DVR_DELETE_NAS 6226 #define NET_DVR_OPEN_ISCSI 6227 #define NET_DVR_CLOSE_ISCSI 6228 #define NET_DVR_GET_FC 6229 #define NET_DVR_OPEN_FC 6230 #define NET_DVR_CLOSE_FC 6231 #define NET_DVR_ONE_KEY_CONFIG_SAN 6232 #define NET_DVR_RECORD_CHECK 6233 #define NET_DVR_ADD_RECORD_PASSBACK_TASK_MANUAL 6234 #define NET_DVR_GET_ALL_RECORD_PASSBACK_TASK_MANUAL 6235 #define NET_DVR_RECORD_PASSBACK_TASK_MANUAL_CTRL 6236 #define NET_DVR_DEL_RECORD_PASSBACK_TASK_MANUAL 6237 #define NET_DVR_GET_RECORD_PASSBACK_PLAN_CFG 6238 #define NET_DVR_SET_RECORD_PASSBACK_PLAN_CFG 6239 #define NET_DVR_GET_DEV_STORAGE_CFG 6240 #define NET_DVR_GET_ONLINE_USER_CFG 6241 #define NET_DVR_GET_RECORD_SEGMENT_CFG 6242 #define NET_DVR_GET_REC_PASSBACK_TASK_EXECUTABLE 6243 #define NET_DVR_GET_STREAM_MEDIA_CFG 6244 #define NET_DVR_SET_STREAM_MEDIA_CFG 6245 #define NET_DVR_GET_USERCFG_V50 6246 #define NET_DVR_SET_USERCFG_V50 6247 #define NET_DVR_GET_RECORD_PASSBACK_BASIC_CFG_CAP 6248 #define NET_DVR_GET_RECORD_PASSBACK_BASIC_CFG 6249 #define NET_DVR_SET_RECORD_PASSBACK_BASIC_CFG 6250 #define NET_DVR_ONE_KEY_CONFIG_V50 6251 #define NET_DVR_GET_RACM_CAP 6252 #define NET_DVR_GET_THUMBNAILS 6253 #define NET_DVR_ADD_RECORD_PASSBACK_TASK_MANUAL_V50 6254 #define NET_DVR_GET_RECORD_PASSBACK_HISTORY_PLAN_CFG_CAP 6255 #define NET_DVR_GET_RECORD_PASSBACK_HISTORY_PLAN_CFG 6256 #define NET_DVR_SET_RECORD_PASSBACK_HISTORY_PLAN_CFG 6257 #define NET_DVR_ONE_KEY_CONFIG_V51 6258 #define NET_DVR_GET_RECORD_PACK 6301 #define NET_DVR_SET_RECORD_PACK 6302 #define NET_DVR_GET_CLOUD_STORAGE_CFG 6303 #define NET_DVR_SET_CLOUD_STORAGE_CFG 6304 #define NET_DVR_GET_GOP_INFO 6305 #define NET_DVR_GET_PHY_DISK_INFO 6306 #define NET_DVR_GET_RECORDING_AUTO_TRACK_CFG 6307 #define NET_DVR_SET_RECORDING_AUTO_TRACK_CFG 6308 #define NET_DVR_GET_RECORDING_PUBLISH_CFG 6309 #define NET_DVR_SET_RECORDING_PUBLISH_CFG 6310 #define NET_DVR_RECORDING_ONEKEY_CONTROL 6311 #define NET_DVR_GET_RECORDING_END_TIME 6312 #define NET_DVR_RECORDING_PUBLISH 6313 #define NET_DVR_GET_CURRICULUM_CFG 6314 #define NET_DVR_SET_CURRICULUM_CFG 6315 #define NET_DVR_GET_COURSE_INDEX_CFG 6316 #define NET_DVR_SET_COURSE_INDEX_CFG 6317 #define NET_DVR_GET_PPT_CHANNEL 6318 #define NET_DVR_GET_PPT_DETECT_CFG 6319 #define NET_DVR_SET_PPT_DETECT_CFG 6320 #define NET_DVR_GET_RECORDINGHOST_CFG 6321 #define NET_DVR_SET_RECORDINGHOST_CFG 6322 #define NET_DVR_GET_BACKUP_RECORD_CFG 6323 #define NET_DVR_SET_BACKUP_RECORD_CFG 6324 #define NET_DVR_GET_AUDIO_ACTIVATION_CFG 6326 #define NET_DVR_SET_AUDIO_ACTIVATION_CFG 6327 #define NET_DVR_GET_DECODERCFG_V40 6328 #define NET_DVR_SET_DECODERCFG_V40 6329 #define NET_DVR_INFRARED_OUTPUT_CONTROL 6330 #define NET_DVR_GET_INFRARED_CMD_NAME_CFG 6331 #define NET_DVR_SET_INFRARED_CMD_NAME_CFG 6332 #define NET_DVR_START_INFRARED_LEARN 6333 #define NET_DVR_GET_TRIAL_SYSTEM_CFG 6334 #define NET_DVR_SET_CASE_INFO 6335 #define NET_DVR_GET_TRIAL_MICROPHONE_STATUS 6336 #define NET_DVR_SET_TRIAL_MICROPHONE_STATUS 6337 #define NET_DVR_GET_TRIAL_HOST_STATUS 6338 #define NET_DVR_GET_LAMP_OUT 6339 #define NET_DVR_SET_LAMP_OUT 6340 #define NET_DVR_LAMP_REMOTE_CONTROL 6341 #define NET_DVR_REMOTE_CONTROL_PLAY 6342 #define NET_DVR_GET_LOCAL_INPUT_CFG 6343 #define NET_DVR_SET_LOCAL_INPUT_CFG 6344 #define NET_DVR_GET_CASE_INFO 6345 #define NET_DVR_INQUEST_GET_CDW_STATUS 6350 #define NET_DVR_GET_MIX_AUDIOIN_CFG 6351 #define NET_DVR_SET_MIX_AUDIOIN_CFG 6352 #define NET_DVR_GET_MIX_AUDIOOUT_CFG 6353 #define NET_DVR_SET_MIX_AUDIOOUT_CFG 6354 #define NET_DVR_GET_AUDIOIN_VOLUME_CFG 6355 #define NET_DVR_SET_AUDIOIN_VOLUME_CFG 6356 #define NET_DVR_GET_AREA_MASK_CFG 6357 #define NET_DVR_SET_AREA_MASK_CFG 6358 #define NET_DVR_GET_AUDIO_DIACRITICAL_CFG 6359 #define NET_DVR_SET_AUDIO_DIACRITICAL_CFG 6360 #define NET_DVR_GET_WIFI_DHCP_ADDR_CFG 6361 #define NET_DVR_SET_WIFI_DHCP_ADDR_CFG 6362 #define NET_DVR_GET_WIFI_CLIENT_LIST_INFO 6363 #define NET_DVR_REMOTECONTROL_POWER_ON 6364 #define NET_DVR_GET_MULTISTREAM_RELATION_CHAN_CFG 6365 #define NET_DVR_SET_MULTISTREAM_RELATION_CHAN_CFG 6366 #define NET_DVR_GET_VIDEOOUT_RESOLUTION_CFG 6367 #define NET_DVR_SET_VIDEOOUT_RESOLUTION_CFG 6368 #define NET_DVR_GET_AUDIOOUT_VOLUME_CFG 6369 #define NET_DVR_SET_AUDIOOUT_VOLUME_CFG 6370 #define NET_DVR_INQUEST_PAUSE_CDW 6371 #define NET_DVR_INQUEST_RESUME_CDW 6372 #define NET_DVR_GET_INPUT_CHAN_CFG 6373 #define NET_DVR_SET_INPUT_CHAN_CFG 6374 #define NET_DVR_GET_INQUEST_MIX_AUDIOIN_CFG 6375 #define NET_DVR_SET_INQUEST_MIX_AUDIOIN_CFG 6376 #define NET_DVR_CASE_INFO_CTRL 6377 #define NET_DVR_GET_INQUEST_USER_RIGHT 6378 #define NET_DVR_SET_INQUEST_USER_RIGHT 6379 #define NET_DVR_GET_INQUEST_CASE_INFO 6380 #define NET_DVR_SET_INQUEST_CASE_INFO 6381 #define NET_DVR_GET_FILM_MODE_CFG 6387 #define NET_DVR_SET_FILM_MODE_CFG 6388 #define NET_DVR_GET_FILM_MODE_CFG_CAP 6389 #define NET_DVR_GET_DIRECTED_STRATEGY_CFG 6390 #define NET_DVR_SET_DIRECTED_STRATEGY_CFG 6391 #define NET_DVR_GET_DIRECTED_STRATEGY_CFG_CAP 6392 #define NET_DVR_GET_FRAME_CFG 6393 #define NET_DVR_SET_FRAME_CFG 6394 #define NET_DVR_GET_FRAME_CFG_CAP 6395 #define NET_DVR_GET_AUDIO_EFFECTIVE_CFG 6396 #define NET_DVR_SET_AUDIO_EFFECTIVE_CFG 6397 #define NET_DVR_GET_AUDIO_EFFECTIVE_CFG_CAP 6398 #define NET_DVR_GET_RECORD_VIDEO_CFG 6399 #define NET_DVR_SET_RECORD_VIDEO_CFG 6400 #define NET_DVR_GET_OUTPUT_CFG 6401 #define NET_DVR_SET_OUTPUT_CFG 6402 #define NET_DVR_CODER_DISPLAY_START 6403 #define NET_DVR_CODER_DISPLAY_STOP 6404 #define NET_DVR_GET_WINDOW_STATUS 6405 #define NET_DVR_GET_VQD_LOOP_DIAGNOSE_CFG 6406 #define NET_DVR_SET_VQD_LOOP_DIAGNOSE_CFG 6407 #define NET_DVR_GET_VQD_DIAGNOSE_INFO 6408 #define NET_DVR_RECORDING_PUBLISH_FILE 6421 #define NET_DVR_GET_RECORDING_PUBLISH_FILE_CAP 6422 #define NET_DVR_GET_PUBLISH_PROGRESS 6423 #define NET_DVR_GET_RECORD_VIDEO_CFG_CAP 6424 #define NET_DVR_GET_RTMP_CFG 6425 #define NET_DVR_SET_RTMP_CFG 6426 #define NET_DVR_GET_RTMP_CFG_CAP 6427 #define NET_DVR_DEL_BACKGROUND_PIC 6428 #define NET_DVR_GET_BACKGROUND_PIC_CFG 6429 #define NET_DVR_GET_BACKGROUND_PIC_INFO 6430 #define NET_DVR_SET_BACKGROUND_PIC_INFO 6431 #define NET_DVR_GET_BACKGROUND_PIC_INFO_CAP 6432 #define NET_DVR_GET_RECORD_HOST_CAP 6433 #define NET_DVR_GET_COURSE_LIST 6434 #define NET_DVR_GET_RECORD_STATUS 6435 #define NET_DVR_MANUAL_CURRICULUM_CONTROL 6436 #define NET_DVR_GET_IMAGE_DIFF_DETECTION_CFG 6437 #define NET_DVR_SET_IMAGE_DIFF_DETECTION_CFG 6438 #define NET_DVR_GET_IMAGE_DIFF_DETECTION_CFG_CAP 6439 #define NET_DVR_GET_RECORDING_PUBLISH_FILE_INFO 6440 #define NET_DVR_SET_RECORDING_PUBLISH_FILE_INFO 6441 #define NET_DVR_GET_RECORDING_PUBLISH_FILE_INFO_CAP 6442 #define NET_DVR_MANUAL_CURRICULUM_CONTROL_CAP 6443 #define NET_DVR_GET_STATISTIC_DATA_LIST 6444 #define NET_DVR_GET_DEVICE_LAN_ENCODE 6501 #define NET_DVR_GET_GBT28181_SERVICE_CFG 6503 #define NET_DVR_SET_GBT28181_SERVICE_CFG 6504 #define NET_DVR_GET_GBT28181_SERVICE_CAPABILITIES 6505 #define NET_DVR_GET_CLOUD_URL 6506 #define NET_DVR_GET_CLOUD_URL_CAP 6507 #define NET_DVR_GET_CLOUD_CFG 6508 #define NET_DVR_SET_CLOUD_CFG 6509 #define NET_DVR_GET_CLOUD_CFG_CAP 6510 #define NET_DVR_GET_CLOUD_UPLOADSTRATEGY 6511 #define NET_DVR_SET_CLOUD_UPLOADSTRATEGY 6512 #define NET_DVR_GET_CLOUDSTORAGE_UPLOADSTRATEGY_CAP 6513 #define NET_DVR_GET_VIDEO_IMAGE_DB_CFG 6601 #define NET_DVR_SET_VIDEO_IMAGE_DB_CFG 6602 #define NET_DVR_GET_VIDEO_IMAGE_DB_CFG_CAP 6603 #define NET_DVR_GET_FILE_INFO_BY_ID 6604 #define NET_DVR_QUERY_FILE_INFO_CAP 6605 #define NET_DVR_DEL_FILE_FROM_DB 6606 #define NET_DVR_GET_VIDEO_IMAGE_DB_CAP 6607 #define NET_DVR_GET_FIGURE 6610 #define NET_DVR_SYNC_IPC_PASSWD 6621 #define NET_DVR_GET_VEHICLE_BLACKLST_SCHEDULE 6622 #define NET_DVR_SET_VEHICLE_BLACKLST_SCHEDULE 6623 #define NET_DVR_GET_VEHICLE_WHITELST_SCHEDULE 6624 #define NET_DVR_SET_VEHICLE_WHITELST_SCHEDULE 6625 #define NET_DVR_GET_VEHICLE_BLACKLIST_EVENT_TRIGGER 6626 #define NET_DVR_SET_VEHICLE_BLACKLIST_EVENT_TRIGGER 6627 #define NET_DVR_GET_VEHICLE_WHITELIST_EVENT_TRIGGER 6628 #define NET_DVR_SET_VEHICLE_WHITELIST_EVENT_TRIGGER 6629 #define NET_DVR_GET_TRAFFIC_CAP 6630 #define NET_DVR_GET_VEHICLE_ALLLIST_EVENT_TRIGGER 6631 #define NET_DVR_SET_VEHICLE_ALLLIST_EVENT_TRIGGER 6632 #define NET_DVR_GET_VEHICLE_OTHERLIST_EVENT_TRIGGER 6633 #define NET_DVR_SET_VEHICLE_OTHERLIST_EVENT_TRIGGER 6634 #define NET_DVR_GET_STORAGEDETECTION_EVENT_TRIGGER 6635 #define NET_DVR_SET_STORAGEDETECTION_EVENT_TRIGGER 6636 #define NET_DVR_GET_STORAGEDETECTION_SCHEDULE_CAPABILITIES 6637 #define NET_DVR_GET_STORAGEDETECTION_SCHEDULE 6638 #define NET_DVR_SET_STORAGEDETECTION_SCHEDULE 6639 #define NET_DVR_GET_STORAGEDETECTION_STATE 6640 #define NET_DVR_GET_STORAGEDETECTION_RWLOCK 6646 #define NET_DVR_GET_STORAGEDETECTION_RWLOCK_CAPABILITIES 6647 #define NET_DVR_SET_STORAGEDETECTION_RWLOCK 6648 #define NET_DVR_GET_PTZTRACKSTATUS 6649 #define NET_DVR_SET_STORAGEDETECTION_UNLOCK 6653 #define NET_DVR_GET_STORAGEDETECTION_UNLOCK_CAPABILITIES 6654 #define NET_DVR_SET_SHIPSDETECTION_CFG 6655 #define NET_DVR_GET_SHIPSDETECTION_CFG 6656 #define NET_DVR_GET_SHIPSDETECTION_CAPABILITIES 6657 #define NET_DVR_GET_SHIPSDETECTION_COUNT 6658 #define NET_DVR_SHIPSCOUNT_DELETE_CTRL 6659 #define NET_DVR_GET_BAREDATAOVERLAY_CAPABILITIES 6660 #define NET_DVR_SET_BAREDATAOVERLAY_CFG 6661 #define NET_DVR_GET_BAREDATAOVERLAY_CFG 6662 #define NET_DVR_GET_SHIPSDETECTION_SCHEDULE 6663 #define NET_DVR_SET_SHIPSDETECTION_SCHEDULE 6664 #define NET_DVR_GET_SHIPSDETECTION_EVENT_TRIGGER 6665 #define NET_DVR_SET_SHIPSDETECTION_EVENT_TRIGGER 6666 #define NET_DVR_GET_SHIPSDETECTION_SCHEDULE_CAPABILITIES 6667 #define NET_DVR_FIRE_FOCUSZOOM_CTRL 6670 #define NET_DVR_GET_FIREDETECTION_SCHEDULE_CAPABILITIES 6671 #define NET_DVR_GET_FIREDETECTION_SCHEDULE 6672 #define NET_DVR_SET_FIREDETECTION_SCHEDULE 6673 #define NET_DVR_GET_MANUALRANGING_CAPABILITIES 6675 #define NET_DVR_SET_MANUALRANGING 6677 #define NET_DVR_GET_MANUALDEICING_CAPABILITIES 6678 #define NET_DVR_SET_MANUALDEICING 6679 #define NET_DVR_GET_MANUALDEICING 6680 #define NET_DVR_GET_THERMALPOWER_CAPABILITIES 6689 #define NET_DVR_GET_THERMALPOWER 6690 #define NET_DVR_SET_THERMALPOWER 6691 #define NET_DVR_GET_PTZABSOLUTEEX_CAPABILITIES 6695 #define NET_DVR_GET_PTZABSOLUTEEX 6696 #define NET_DVR_SET_PTZABSOLUTEEX 6697 #define NET_DVR_GET_CRUISE_CAPABILITIES 6698 #define NET_DVR_GET_CRUISE_INFO 6699 #define NET_DVR_GET_TEMP_HUMI_CAPABILITIES 6700 #define NET_DVR_GET_TEMP_HUMI_INFO 6701 #define NET_DVR_GET_MANUALTHERM_INFO 6706 #define NET_DVR_GET_MANUALTHERM_CAPABILITIES 6707 #define NET_DVR_SET_MANUALTHERM 6708 #define NET_DVR_GET_ACCESSORY_CARD_INFO_CAPABILITIES 6709 #define NET_DVR_GET_ACCESSORY_CARD_INFO 6710 #define NET_DVR_GET_THERMINTELL_CAPABILITIES 6711 #define NET_DVR_GET_THERMINTELL 6712 #define NET_DVR_SET_THERMINTELL 6713 #define NET_GET_CRUISEPOINT_V50 6714 #define NET_DVR_GET_MANUALTHERM_BASIC_CAPABILITIES 6715 #define NET_DVR_SET_MANUALTHERM_BASICPARAM 6716 #define NET_DVR_GET_MANUALTHERM_BASICPARAM 6717 #define NET_DVR_GET_FIRESHIELDMASK_CAPABILITIES 6718 #define NET_DVR_GET_HIDDEN_INFORMATION_CAPABILITIES 6720 #define NET_DVR_GET_HIDDEN_INFORMATION 6721 #define NET_DVR_SET_HIDDEN_INFORMATION 6722 #define NET_DVR_SET_FIRESHIELDMASK_CFG 6723 #define NET_DVR_GET_FIRESHIELDMASK_CFG 6724 #define NET_DVR_GET_SMOKESHIELDMASK_CAPABILITIES 6725 #define NET_DVR_SET_SMOKESHIELDMASK_CFG 6726 #define NET_DVR_GET_SMOKESHIELDMASK_CFG 6727 #define NET_DVR_GET_AREASCAN_CAPABILITIES 6728 #define NET_DVR_GET_AREASCAN_CFG 6730 #define NET_DVR_DEL_AREASCAN_CFG 6731 #define NET_DVR_AREASCAN_INIT_CTRL 6732 #define NET_DVR_AREASCAN_CONFIRM_CTRL 6733 #define NET_DVR_AREASCAN_STOP_CTRL 6734 #define NET_DVR_SAVE_SCANZOOM_CTRL 6735 #define NET_DVR_GET_SCANZOOM_CTRL 6736 #define NET_DVR_DEL_FIRESHIELDMASK_CTRL 6737 #define NET_DVR_DEL_SMOKESHIELDMASK_CTRL 6738 #define NET_DVR_GET_DENSEFOG_EVENT_TRIGGER 6740 #define NET_DVR_SET_DENSEFOG_EVENT_TRIGGER 6741 #define NET_DVR_SET_DENSEFOGDETECTION_CFG 6742 #define NET_DVR_GET_DENSEFOGDETECTION_CFG 6743 #define NET_DVR_GET_DENSEFOGDETECTION_CAPABILITIES 6744 #define NET_DVR_GET_THERMOMETRY_SCHEDULE_CAPABILITIES 6750 #define NET_DVR_GET_THERMOMETRY_SCHEDULE 6751 #define NET_DVR_SET_THERMOMETRY_SCHEDULE 6752 #define NET_DVR_GET_TEMPERTURE_SCHEDULE_CAPABILITIES 6753 #define NET_DVR_GET_TEMPERTURE_SCHEDULE 6754 #define NET_DVR_SET_TEMPERTURE_SCHEDULE 6755 #define NET_DVR_GET_SEARCH_LOG_CAPABILITIES 6756 #define NET_DVR_GET_VEHICLEFLOW 6758 #define NET_DVR_GET_IPADDR_FILTERCFG_V50 6759 #define NET_DVR_SET_IPADDR_FILTERCFG_V50 6760 #define NET_DVR_GET_TEMPHUMSENSOR_CAPABILITIES 6761 #define NET_DVR_GET_TEMPHUMSENSOR 6762 #define NET_DVR_SET_TEMPHUMSENSOR 6763 #define NET_DVR_GET_THERMOMETRY_MODE_CAPABILITIES 6764 #define NET_DVR_GET_THERMOMETRY_MODE 6765 #define NET_DVR_SET_THERMOMETRY_MODE 6766 #define NET_DVR_GET_THERMAL_PIP_CAPABILITIES 6767 #define NET_DVR_GET_THERMAL_PIP 6768 #define NET_DVR_SET_THERMAL_PIP 6769 #define NET_DVR_GET_THERMAL_INTELRULEDISPLAY_CAPABILITIES 6770 #define NET_DVR_GET_THERMAL_INTELRULE_DISPLAY 6771 #define NET_DVR_SET_THERMAL_INTELRULE_DISPLAY 6772 #define NET_DVR_GET_THERMAL_ALGVERSION 6773 #define NET_DVR_GET_CURRENT_LOCK_CAPABILITIES 6774 #define NET_DVR_GET_CURRENT_LOCK 6775 #define NET_DVR_SET_CURRENT_LOCK 6776 #define NET_DVR_DEL_MANUALTHERM_RULE 6778 #define NET_DVR_GET_UPGRADE_INFO 6779 #define NET_DVR_SWITCH_TRANSFER 7000 #define NET_DVR_GET_MB_POWERCTRLPARA 8000 #define NET_DVR_SET_MB_POWERCTRLPARA 8001 #define NET_DVR_GET_AUTOBACKUPPARA 8002 #define NET_DVR_SET_AUTOBACKUPPARA 8003 #define NET_DVR_GET_MB_GPSPARA 8004 #define NET_DVR_SET_MB_GPSPARA 8005 #define NET_DVR_GET_MB_SENSORINPARA 8006 #define NET_DVR_SET_MB_SENSORINPARA 8007 #define NET_DVR_GET_GSENSORPARA 8008 #define NET_DVR_SET_GSENSORPARA 8009 #define NET_DVR_GET_MB_DOWNLOADSVRPARA 8010 #define NET_DVR_SET_MB_DOWNLOADSVRPARA 8011 #define NET_DVR_GET_PLATERECOG_PARA 8012 #define NET_DVR_SET_PLATERECOG_PARA 8013 #define NET_DVR_GET_ENFORCESYS_PARA 8014 #define NET_DVR_SET_ENFORCESYS_PARA 8015 #define NET_DVR_GET_GPS_DATA 8016 #define NET_DVR_GET_ANALOG_ALARMINCFG 8017 #define NET_DVR_SET_ANALOG_ALARMINCFG 8018 #define NET_DVR_GET_SYSTEM_CAPABILITIES 8100 #define NET_DVR_GET_EAGLEEYE_CAPABILITIES 8101 #define NET_DVR_GET_SLAVECAMERA_CALIB_V51 8102 #define NET_DVR_SET_SLAVECAMERA_CALIB_V51 8103 #define NET_DVR_SET_GOTOSCENE 8105 #define NET_DVR_GET_PTZ_NOTIFICATION 8201 #define NET_DVR_SET_PTZ_NOTIFICATION 8202 #define NET_DVR_MATRIX_WALL_SET 9001 #define NET_DVR_MATRIX_WALL_GET 9002 #define NET_DVR_WALLWIN_GET 9003 #define NET_DVR_WALLWIN_SET 9004 #define NET_DVR_WALLWINPARAM_SET 9005 #define NET_DVR_WALLWINPARAM_GET 9006 #define NET_DVR_WALLSCENEPARAM_GET 9007 #define NET_DVR_WALLSCENEPARAM_SET 9008 #define NET_DVR_MATRIX_GETWINSTATUS 9009 #define NET_DVR_GET_WINASSOCIATEDDEVINFO 9010 #define NET_DVR_WALLOUTPUT_GET 9011 #define NET_DVR_WALLOUTPUT_SET 9012 #define NET_DVR_GET_UNITEDMATRIXSYSTEM 9013 #define NET_DVR_GET_WALL_CFG 9014 #define NET_DVR_SET_WALL_CFG 9015 #define NET_DVR_CLOSE_ALL_WND 9016 #define NET_DVR_SWITCH_WIN_TOP 9017 #define NET_DVR_SWITCH_WIN_BOTTOM 9018 #define NET_DVR_CLOSE_ALL_WND_V41 9019 #define NET_DVR_GET_WALL_WINDOW_V41 9020 #define NET_DVR_SET_WALL_WINDOW_V41 9021 #define NET_DVR_GET_CURRENT_SCENE_V41 9022 #define NET_DVR_GET_WALL_SCENE_PARAM_V41 9023 #define NET_DVR_SET_WALL_SCENE_PARAM_V41 9024 #define NET_DVR_GET_MATRIX_LOGO_CFG 9025 #define NET_DVR_SET_MATRIX_LOGO_CFG 9026 #define NET_DVR_GET_WIN_LOGO_CFG 9027 #define NET_DVR_SET_WIN_LOGO_CFG 9028 #define NET_DVR_DELETE_LOGO 9029 #define NET_DVR_SET_DISPLAY_EFFECT_CFG 9030 #define NET_DVR_GET_DISPLAY_EFFECT_CFG 9031 #define NET_DVR_DEC_PLAY_REMOTE_FILE 9032 #define NET_DVR_DEC_PLAY_REMOTE_FILE_V50 9314 #define NET_DVR_GET_WIN_ZOOM_STATUS 9033 #define NET_DVR_GET_ALL_MATRIX_LOGOCFG 9034 #define NET_DVR_SIMULATE_REMOTE_CONTROL 9035 #define NET_DVR_SET_SCREEN_SIGNAL_CFG 9036 #define NET_DVR_GET_SCREEN_SIGNAL_CFG 9037 #define NET_DVR_SET_SCREEN_SPLICE_CFG 9038 #define NET_DVR_GET_SCREEN_SPLICE_CFG 9039 #define NET_DVR_GET_SCREEN_FAN_WORK_MODE 9040 #define NET_DVR_SET_SCREEN_FAN_WORK_MODE 9041 #define NET_DVR_SHOW_SCREEN_WORK_STATUS 9044 #define NET_DVR_GET_VGA_CFG 9045 #define NET_DVR_SET_VGA_CFG 9046 #define NET_DVR_GET_SCREEN_MENU_CFG 9048 #define NET_DVR_SET_SCREEN_MENU_CFG 9049 #define NET_DVR_SET_SCREEN_DISPLAY_CFG 9050 #define NET_DVR_GET_SCREEN_DISPLAY_CFG 9051 #define NET_DVR_SET_FUSION_CFG 9052 #define NET_DVR_GET_FUSION_CFG 9053 #define NET_DVR_SET_PIP_CFG 9060 #define NET_DVR_GET_PIP_CFG 9061 #define NET_DVR_SET_DEFOG_LCD 9073 #define NET_DVR_GET_DEFOG_LCD 9074 #define NET_DVR_SHOW_IP 9075 #define NET_DVR_SCREEN_MAINTENANCE_WALL 9076 #define NET_DVR_SET_SCREEN_POS 9077 #define NET_DVR_GET_SCREEN_POS 9078 #define NET_DVR_SCREEN_INDEX_SET 9079 #define NET_DVR_SCREEN_INDEX_GET 9080 #define NET_DVR_SCREEN_SPLICE_SET 9081 #define NET_DVR_SCREEN_SPLICE_GET 9082 #define NET_DVR_SET_SCREEN_PARAM 9083 #define NET_DVR_GET_SCREEN_PARAM 9084 #define NET_DVR_SET_SWITCH_CFG 9085 #define NET_DVR_GET_SWITCH_CFG 9086 #define NET_DVR_SET_POWERON_DELAY_CFG 9087 #define NET_DVR_GET_POWERON_DELAY_CFG 9088 #define NET_DVR_SET_SCREEN_POSITION 9089 #define NET_DVR_GET_SCREEN_POSITION 9090 #define NET_DVR_SCREEN_SCENE_CONTROL 9091 #define NET_DVR_GET_CURRENT_SCREEN_SCENE 9092 #define NET_DVR_GET_SCREEN_SCENE_PARAM 9093 #define NET_DVR_SET_SCREEN_SCENE_PARAM 9094 #define NET_DVR_GET_EXTERNAL_MATRIX_RELATION 9095 #define NET_DVR_GET_LCD_AUDIO_CFG 9096 #define NET_DVR_SET_LCD_AUDIO_CFG 9097 #define NET_DVR_GET_LCD_WORK_STATE 9098 #define NET_DVR_GET_BOOT_LOGO_CFG 9099 #define NET_DVR_SET_BOOT_LOGO_CFG 9100 #define NET_DVR_GET_STREAM_DST_COMPRESSIONINFO 9101 #define NET_DVR_SET_STREAM_DST_COMPRESSIONINFO 9102 #define NET_DVR_GET_STREAM_TRANS_STATUS 9103 #define NET_DVR_GET_DEVICE_TRANS_STATUS 9104 #define NET_DVR_GET_ALLSTREAM_SRC_INFO 9105 #define NET_DVR_GET_BIG_SCREEN_AUDIO 9106 #define NET_DVR_SET_BIG_SCREEN_AUDIO 9107 #define NET_DVR_GET_DEV_WORK_MODE 9108 #define NET_DVR_SET_DEV_WORK_MODE 9109 #define NET_DVR_APPLY_TRANS_CHAN 9110 #define NET_DVR_GET_DISPCHAN_CFG 9111 #define NET_DVR_SET_DISPCHAN_CFG 9112 #define NET_DVR_GET_DEC_CHAN_STATUS 9113 #define NET_DVR_GET_DISP_CHAN_STATUS 9114 #define NET_DVR_GET_ALARMIN_STATUS 9115 #define NET_DVR_GET_ALARMOUT_STATUS 9116 #define NET_DVR_GET_AUDIO_CHAN_STATUS 9117 #define NET_DVR_GET_VIDEO_AUDIOIN_CFG 9118 #define NET_DVR_SET_VIDEO_AUDIOIN_CFG 9119 #define NET_DVR_SET_BASEMAP_CFG 9120 #define NET_DVR_GET_BASEMAP_CFG 9121 #define NET_DVR_GET_VIRTUAL_SCREEN_CFG 9122 #define NET_DVR_SET_VIRTUAL_SCREEN_CFG 9123 #define NET_DVR_GET_BASEMAP_WIN_CFG 9124 #define NET_DVR_SET_BASEMAP_WIN_CFG 9125 #define NET_DVR_DELETE_PICTURE 9126 #define NET_DVR_GET_BASEMAP_PIC_INFO 9127 #define NET_DVR_SET_BASEMAP_WIN_CFG_V40 9128 #define NET_DVR_GET_BASEMAP_WIN_CFG_V40 9129 #define NET_DVR_GET_DEC_VCA_CFG 9130 #define NET_DVR_SET_DEC_VCA_CFG 9131 #define NET_DVR_SET_VS_INPUT_CHAN_INIT_ALL 9132 #define NET_DVR_GET_VS_INPUT_CHAN_INIT_ALL 9133 #define NET_DVR_GET_VS_INPUT_CHAN_INIT 9134 #define NET_DVR_GET_VS_INPUT_CHAN_CFG 9135 #define NET_DVR_GET_TERMINAL_CONFERENCE_STATUS 9136 #define NET_DVR_GET_TERMINAL_INPUT_CFG_CAP 9137 #define NET_DVR_GET_TERMINAL_INPUT_CFG 9138 #define NET_DVR_SET_TERMINAL_INPUT_CFG 9139 #define NET_DVR_GET_CONFERENCE_REGION_CAP 9140 #define NET_DVR_GET_CONFERENCE_REGION 9141 #define NET_DVR_SET_CONFERENCE_REGION 9142 #define NET_DVR_GET_TERMINAL_CALL_CFG_CAP 9143 #define NET_DVR_GET_TERMINAL_CALL_CFG 9144 #define NET_DVR_SET_TERMINAL_CALL_CFG 9145 #define NET_DVR_GET_TERMINAL_CTRL_CAP 9146 #define NET_DVR_TERMINAL_CTRL 9147 #define NET_DVR_GET_CALL_QUERY_CAP 9148 #define NET_DVR_GET_CALLINFO_BY_COND 9149 #define NET_DVR_SET_FUSION_SCALE 9150 #define NET_DVR_GET_FUSION_SCALE 9151 #define NET_DVR_GET_VCS_CAP 9152 #define NET_DVR_GET_TERMINAL_GK_CFG_CAP 9153 #define NET_DVR_GET_TERMINAL_GK_CFG 9154 #define NET_DVR_SET_TERMINAL_GK_CFG 9155 #define NET_DVR_GET_MCU_CONFERENCESEARCH_CAP 9156 #define NET_DVR_SET_VS_INPUT_CHAN_CFG 9157 #define NET_DVR_GET_VS_NETSRC_CFG 9158 #define NET_DVR_SET_VS_NETSRC_CFG 9159 #define NET_DVR_GET_LLDP_CFG 9160 #define NET_DVR_SET_LLDP_CFG 9161 #define NET_DVR_GET_LLDP_CAP 9162 #define NET_DVR_GET_FIBER_CONVERT_BASIC_INFO 9163 #define NET_DVR_GET_FIBER_CONVERT_WORK_STATE 9164 #define NET_DVR_GET_FIBER_CONVERT_TOPOLOGY 9165 #define NET_DVR_GET_FC_PORT_REMARKS 9166 #define NET_DVR_SET_FC_PORT_REMARKS 9167 #define NET_DVR_GET_PORT_REMARKS_CAP 9168 #define NET_DVR_GET_MCU_CONFERENCECONTROL_CAP 9169 #define NET_DVR_GET_MCU_TERMINALCONTROL_CAP 9170 #define NET_DVR_GET_MCU_TERIMINALGROUP_CAP 9171 #define NET_DVR_GET_MCU_TERMINAL_CAP 9174 #define NET_DVR_GET_MCU_CONFERENCE_CAP 9175 #define NET_DVR_GET_MCU_GK_CFG_CAP 9176 #define NET_DVR_GET_MCU_GK_SERVER_CAP 9177 #define NET_DVR_GET_EDID_CFG_FILE_INFO 9178 #define NET_DVR_GET_EDID_CFG_FILE_INFO_LIST 9179 #define NET_DVR_SET_EDID_CFG_FILE_INFO 9180 #define NET_DVR_DEL_EDID_CFG_FILE_INFO 9181 #define NET_DVR_GET_EDID_CFG_FILE_INFO_CAP 9182 #define NET_DVR_GET_SUBWND_DECODE_OSD 9183 #define NET_DVR_GET_SUBWND_DECODE_OSD_ALL 9184 #define NET_DVR_SET_SUBWND_DECODE_OSD 9185 #define NET_DVR_GET_SUBWND_DECODE_OSD_CAP 9186 #define NET_DVR_GET_DECODE_CHANNEL_OSD 9187 #define NET_DVR_SET_DECODE_CHANNEL_OSD 9188 #define NET_DVR_GET_OUTPUT_PIC_INFO 9200 #define NET_DVR_SET_OUTPUT_PIC_INFO 9201 #define NET_DVR_GET_OUTPUT_PIC_WIN_CFG 9202 #define NET_DVR_SET_OUTPUT_PIC_WIN_CFG 9203 #define NET_DVR_GET_OUTPUT_ALL_PIC_WIN_CFG 9204 #define NET_DVR_DELETE_OUPUT_PIC 9205 #define NET_DVR_GET_OUTPUT_OSD_CFG 9206 #define NET_DVR_SET_OUTPUT_OSD_CFG 9207 #define NET_DVR_GET_OUTPUT_ALL_OSD_CFG 9208 #define NET_DVR_GET_CHAN_RELATION 9209 #define NET_DVR_SET_CHAN_RELATION 9210 #define NET_DVR_GET_ALL_CHAN_RELATION 9211 #define NET_DVR_GET_NS_RING_CFG 9212 #define NET_DVR_SET_NS_RING_CFG 9213 #define NET_DVR_GET_NS_RING_STATUS 9214 #define NET_DVR_GET_OPTICAL_PORT_INFO 9220 #define NET_DVR_SET_OPTICAL_PORT_INFO 9221 #define NET_DVR_GET_OPTICAL_CHAN_RELATE_CFG 9222 #define NET_DVR_SET_OPTICAL_CHAN_RELATE_CFG 9223 #define NET_DVR_GET_WIN_ROAM_SWITCH_CFG 9224 #define NET_DVR_SET_WIN_ROAM_SWITCH_CFG 9225 #define NET_DVR_START_SCREEN_CRTL 9226 #define NET_DVR_GET_SCREEN_FLIE_LIST 9227 #define NET_DVR_GET_SCREEN_FILEINFO 9228 #define NET_DVR_SET_SCREEN_FILEINFO 9229 #define NET_DVR_GET_LED_OUTPUT_CFG 9230 #define NET_DVR_SET_LED_OUTPUT_CFG 9231 #define NET_DVR_GET_LED_OUTPUT_PORT_CFG 9232 #define NET_DVR_SET_LED_OUTPUT_PORT_CFG 9233 #define NET_DVR_GET_LED_DISPLAY_AREA_CFG 9234 #define NET_DVR_SET_LED_DISPLAY_AREA_CFG 9235 #define NET_DVR_GET_LED_PORT_CFG 9236 #define NET_DVR_SET_LED_PORT_CFG 9237 #define NET_DVR_GET_LED_DISPLAY_CFG 9238 #define NET_DVR_SET_LED_DISPLAY_CFG 9239 #define NET_DVR_GET_ALL_LED_PORT_CFG 9240 #define NET_DVR_SAVE_LED_CONFIGURATION 9241 #define NET_DVR_GET_LED_TEST_SIGNAL_CFG 9242 #define NET_DVR_SET_LED_TEST_SIGNAL_CFG 9243 #define NET_DVR_GET_LED_NOSIGNAL_CFG 9244 #define NET_DVR_SET_LED_NOSIGNAL_CFG 9245 #define NET_DVR_GET_LED_INPUT_CFG 9246 #define NET_DVR_SET_LED_INPUT_CFG 9247 #define NET_DVR_GET_LED_RECV_GAMMA_CFG 9248 #define NET_DVR_SET_LED_RECV_GAMMA_CFG 9249 #define NET_DVR_GET_LED_RECV_CFG 9250 #define NET_DVR_SET_LED_RECV_CFG 9251 #define NET_DVR_GET_LED_RECV_ADVANCED_CFG 9252 #define NET_DVR_SET_LED_RECV_ADVANCED_CFG 9253 #define NET_DVR_GET_LED_SCREEN_DISPLAY_CFG 9254 #define NET_DVR_SET_LED_SCREEN_DISPLAY_CFG 9255 #define NET_DVR_GET_INSERTPLAY_PROGRESS 9273 #define NET_DVR_GET_SCREEN_CONFIG 9260 #define NET_DVR_SET_SCREEN_CONFIG 9261 #define NET_DVR_GET_SCREEN_CONFIG_CAP 9262 #define NET_DVR_GET_SCHEDULE_PUBLISH_PROGRESS 9271 #define NET_DVR_GET_PUBLISH_UPGRADE_PROGRESS 9272 #define NET_DVR_GET_INPUT_BOARD_CFG 9281 #define NET_DVR_GET_INPUT_BOARD_CFG_LIST 9282 #define NET_DVR_SET_INPUT_BOARD_CFG 9283 #define NET_DVR_GET_INPUT_SOURCE_TEXT_CAP 9284 #define NET_DVR_GET_INPUT_SOURCE_TEXT_CFG 9285 #define NET_DVR_GET_INPUT_SOURCE_TEXT_CFG_LSIT 9286 #define NET_DVR_SET_INPUT_SOURCE_TEXT_CFG 9287 #define NET_DVR_SET_INPUT_SOURCE_TEXT_CFG_LIST 9288 #define NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CAP 9289 #define NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CFG 9290 #define NET_DVR_GET_INPUT_SOURCE_RESOLUTION_CFG_LIST 9291 #define NET_DVR_SET_INPUT_SOURCE_RESOLUTION_CFG 9292 #define NET_DVR_SET_INPUT_SOURCE_RESOLUTION_CFG_LIST 9293 #define NET_DVR_GET_LED_AREA_INFO_LIST 9295 #define NET_DVR_GET_DISPINPUT_CFG 9296 #define NET_DVR_GET_DISPINPUT_CFG_LIST 9297 #define NET_DVR_SET_DISPINPUT_CFG 9298 #define NET_DVR_GET_DISPINPUT_CFG_CAP 9299 #define NET_DVR_GET_CURRENT_VALID_PORT 9300 #define NET_DVR_SET_ONLINE_UPGRADE 9301 #define NET_DVR_GET_ONLINEUPGRADE_PROGRESS 9302 #define NET_DVR_GET_FIRMWARECODE 9303 #define NET_DVR_GET_ONLINEUPGRADE_SERVER 9304 #define NET_DVR_GET_ONLINEUPGRADE_VERSION 9305 #define NET_DVR_GET_RECOMMEN_VERSION 9306 #define NET_DVR_GET_ONLINEUPGRADE_ABILITY 9309 #define NET_DVR_GET_FIBER_CONVERT_BASIC_INFO_V50 9310 #define NET_DVR_GET_FIBER_CONVERT_WORK_STATE_V50 9311 #define NET_SDK_LED_SCREEN_CHECK 9312 #define NET_SDK_GENERATE_OUTPUT_CONTROL 9315 #define NET_SDK_GET_MATRIX_STATUS_V51 9313 #define NET_DVR_GET_ALARM_LINKAGE_CFG 9316 #define NET_DVR_SET_ALARM_LINKAGE_CFG 9317 #define NET_DVR_GET_RS485_WORK_MODE 10001 #define NET_DVR_SET_RS485_WORK_MODE 10002 #define NET_DVR_GET_SPLITTER_TRANS_CHAN_CFG 10003 #define NET_DVR_SET_SPLITTER_TRANS_CHAN_CFG 10004 #define NET_DVR_GET_RS485_PROTOCOL_VERSION 10301 #define NET_DVR_ALARMHOST_REGISTER_DETECTOR 10302 #define NET_DVR_GET_SIP_CFG 11001 #define NET_DVR_SET_SIP_CFG 11002 #define NET_DVR_GET_IP_VIEW_DEVCFG 11003 #define NET_DVR_SET_IP_VIEW_DEVCFG 11004 #define NET_DVR_GET_IP_VIEW_AUDIO_CFG 11005 #define NET_DVR_SET_IP_VIEW_AUDIO_CFG 11006 #define NET_DVR_GET_IP_VIEW_CALL_CFG 11007 #define NET_DVR_SET_IP_VIEW_CALL_CFG 11008 #define NET_DVR_GET_AUDIO_LIMIT_ALARM_CFG 11009 #define NET_DVR_SET_AUDIO_LIMIT_ALARM_CFG 11010 #define NET_DVR_GET_BUTTON_DOWN_ALARM_CFG 11011 #define NET_DVR_SET_BUTTON_DOWN_ALARM_CFG 11012 #define NET_DVR_GET_ISCSI_CFG 11070 #define NET_DVR_SET_ISCSI_CFG 11071 #define NET_DVR_GET_SECURITYMODE 12004 #define NET_DVR_GET_TEMP_HUMI 12005 #define NET_DVR_SET_ALARMSOUNDMODE 12006 #define NET_DVR_GET_ALARMSOUNDMODE 12007 #define NET_DVR_SET_IPDEVICE_ACTIVATED 13000 #define NET_DVR_GET_DIGITAL_CHAN_SECURITY_STATUS 13001 #define NET_DVR_GET_ACTIVATE_IPC_ABILITY 13003 #define NET_DVR_GET_VIDEO_INTERCOM_DEVICEID_CFG 16001 #define NET_DVR_SET_VIDEO_INTERCOM_DEVICEID_CFG 16002 #define NET_DVR_SET_PRIVILEGE_PASSWORD 16003 #define NET_DVR_GET_OPERATION_TIME_CFG 16004 #define NET_DVR_SET_OPERATION_TIME_CFG 16005 #define NET_DVR_GET_VIDEO_INTERCOM_RELATEDEV_CFG 16006 #define NET_DVR_SET_VIDEO_INTERCOM_RELATEDEV_CFG 16007 #define NET_DVR_REMOTECONTROL_NOTICE_DATA 16008 #define NET_DVR_REMOTECONTROL_GATEWAY 16009 #define NET_DVR_REMOTECONTROL_OPERATION_AUTH 16010 #define NET_DVR_GET_VIDEO_INTERCOM_IOIN_CFG 16016 #define NET_DVR_SET_VIDEO_INTERCOM_IOIN_CFG 16017 #define NET_DVR_GET_VIDEO_INTERCOM_IOOUT_CFG 16018 #define NET_DVR_SET_VIDEO_INTERCOM_IOOUT_CFG 16019 #define NET_DVR_GET_ELEVATORCONTROL_CFG 16020 #define NET_DVR_SET_ELEVATORCONTROL_CFG 16021 #define NET_DVR_GET_VIDEOINTERCOM_STREAM 16022 #define NET_DVR_SET_VIDEOINTERCOM_STREAM 16023 #define NET_DVR_GET_WDR_CFG 16024 #define NET_DVR_SET_WDR_CFG 16025 #define NET_DVR_GET_VIS_DEVINFO 16026 #define NET_DVR_GET_VIS_REGISTER_INFO 16027 #define NET_DVR_GET_ELEVATORCONTROL_CFG_V40 16028 #define NET_DVR_SET_ELEVATORCONTROL_CFG_V40 16029 #define NET_DVR_GET_CALL_ROOM_CFG 16030 #define NET_DVR_SET_CALL_ROOM_CFG 16031 #define NET_DVR_VIDEO_CALL_SIGNAL_PROCESS 16032 #define NET_DVR_GET_CALLER_INFO 16033 #define NET_DVR_GET_CALL_STATUS 16034 #define NET_DVR_GET_SERVER_DEVICE_INFO 16035 #define NET_DVR_SET_CALL_SIGNAL 16036 #define NET_DVR_GET_VIDEO_INTERCOM_ALARM_CFG 16037 #define NET_DVR_SET_VIDEO_INTERCOM_ALARM_CFG 16038 #define NET_DVR_GET_RING_LIST 16039 #define NET_DVR_GET_ROOM_CUSTOM_CFG 16040 #define NET_DVR_SET_ROOM_CUSTOM_CFG 16041 #define NET_DVR_GET_ELEVATORCONTROL_CFG_V50 16042 #define NET_DVR_SET_ELEVATORCONTROL_CFG_V50 16043 #define NET_DVR_GET_SIP_CFG_V50 16044 #define NET_DVR_SET_SIP_CFG_V50 16045 #define NET_DVR_GET_NOTICE_VIDEO_DATA 16050 #define NET_DVR_DEBUGINFO_START 18000 #define NET_DVR_AUTO_TEST_START 18001 #define NET_DVR_GET_SELFCHECK_RESULT 20000 #define NET_DVR_SET_TEST_COMMAND 20001 #define NET_DVR_SET_TEST_DEVMODULE 20002 #define NET_DVR_GET_TEST_DEVMODULE 20003 #define NET_DVR_SET_AUTOFOCUS_TEST 20004 #define NET_DVR_CHECK_USER_STATUS 20005 #define NET_DVR_GET_TEST_COMMAND 20010 #define NET_DVR_GET_DIAL_SWITCH_CFG 20200 #define NET_DVR_SET_AGING_TRICK_SCAN 20201 #define NET_DVR_GET_ECCENTRIC_CORRECT_STATE 20202 #define NET_DVR_GET_THERMOMETRYRULE_TEMPERATURE_INFO 23001 #define NET_DVR_T1_TEST_CMD 131073 #define NET_DVR_GET_MEMU_OUTPUT_MODE 155649 #define NET_DVR_SET_MEMU_OUTPUT_MODE 155650 #define NET_DVR_GET_DEV_LOGIN_RET_INFO 16777200 #define NET_DVR_GET_TEST_VERSION_HEAD 268435441 #define NET_DVR_SET_TEST_VERSION_HEAD 268435442 #define NET_DVR_GET_TEST_VERSION_HEAD_V1 268435443 #define NET_DVR_SET_TEST_VERSION_HEAD_V1 268435444 #define NET_DVR_GET_TEST_VERSION_HEAD_V2 268435445 #define NET_DVR_SET_TEST_VERSION_HEAD_V2 268435446 #define NET_DVR_GET_TEST_VERSION_HEAD_ONLY_0 268435447 #define NET_DVR_SET_TEST_VERSION_HEAD_ONLY_0 268435448 #define MAX_LOCAL_ADDR_LEN 96 #define MAX_COUNTRY_NAME_LEN 4 #define MAJOR_ALARM 0x1 #define MINOR_ALARM_IN 0x1 #define MINOR_ALARM_OUT 0x2 #define MINOR_MOTDET_START 0x3 #define MINOR_MOTDET_STOP 0x4 #define MINOR_HIDE_ALARM_START 0x5 #define MINOR_HIDE_ALARM_STOP 0x6 #define MINOR_VCA_ALARM_START 0x7 #define MINOR_VCA_ALARM_STOP 0x8 #define MINOR_ITS_ALARM_START 0x09 #define MINOR_ITS_ALARM_STOP 0x0A #define MINOR_NETALARM_START 0x0b #define MINOR_NETALARM_STOP 0x0c #define MINOR_NETALARM_RESUME 0x0d #define MINOR_WIRELESS_ALARM_START 0x0e #define MINOR_WIRELESS_ALARM_STOP 0x0f #define MINOR_PIR_ALARM_START 0x10 #define MINOR_PIR_ALARM_STOP 0x11 #define MINOR_CALLHELP_ALARM_START 0x12 #define MINOR_CALLHELP_ALARM_STOP 0x13 #define MINOR_IPCHANNEL_ALARMIN_START 0x14 #define MINOR_IPCHANNEL_ALARMIN_STOP 0x15 #define MINOR_DETECTFACE_ALARM_START 0x16 #define MINOR_DETECTFACE_ALARM_STOP 0x17 #define MINOR_VQD_ALARM_START 0x18 #define MINOR_VQD_ALARM_STOP 0x19 #define MINOR_VCA_SECNECHANGE_DETECTION 0x1a #define MINOR_SMART_REGION_EXITING_BEGIN 0x1b #define MINOR_SMART_REGION_EXITING_END 0x1c #define MINOR_SMART_LOITERING_BEGIN 0x1d #define MINOR_SMART_LOITERING_END 0x1e #define MINOR_VCA_ALARM_LINE_DETECTION_BEGIN 0x20 #define MINOR_VCA_ALARM_LINE_DETECTION_END 0x21 #define MINOR_VCA_ALARM_INTRUDE_BEGIN 0x22 #define MINOR_VCA_ALARM_INTRUDE_END 0x23 #define MINOR_VCA_ALARM_AUDIOINPUT 0x24 #define MINOR_VCA_ALARM_AUDIOABNORMAL 0x25 #define MINOR_VCA_DEFOCUS_DETECTION_BEGIN 0x26 #define MINOR_VCA_DEFOCUS_DETECTION_END 0x27 #define MINOR_EXT_ALARM 0x28 #define MINOR_VCA_FACE_ALARM_BEGIN 0x29 #define MINOR_SMART_REGION_ENTRANCE_BEGIN 0x2a #define MINOR_SMART_REGION_ENTRANCE_END 0x2b #define MINOR_SMART_PEOPLE_GATHERING_BEGIN 0x2c #define MINOR_SMART_PEOPLE_GATHERING_END 0x2d #define MINOR_SMART_FAST_MOVING_BEGIN 0x2e #define MINOR_SMART_FAST_MOVING_END 0x2f #define MINOR_VCA_FACE_ALARM_END 0x30 #define MINOR_VCA_SCENE_CHANGE_ALARM_BEGIN 0x31 #define MINOR_VCA_SCENE_CHANGE_ALARM_END 0x32 #define MINOR_VCA_ALARM_AUDIOINPUT_BEGIN 0x33 #define MINOR_VCA_ALARM_AUDIOINPUT_END 0x34 #define MINOR_VCA_ALARM_AUDIOABNORMAL_BEGIN 0x35 #define MINOR_VCA_ALARM_AUDIOABNORMAL_END 0x36 #define MINOR_VCA_LECTURE_DETECTION_BEGIN 0x37 #define MINOR_VCA_LECTURE_DETECTION_END 0x38 #define MINOR_VCA_ALARM_AUDIOSTEEPDROP 0x39 #define MINOR_VCA_ANSWER_DETECTION_BEGIN 0x3a #define MINOR_VCA_ANSWER_DETECTION_END 0x3b #define MINOR_SMART_PARKING_BEGIN 0x3c #define MINOR_SMART_PARKING_END 0x3d #define MINOR_SMART_UNATTENDED_BAGGAGE_BEGIN 0x3e #define MINOR_SMART_UNATTENDED_BAGGAGE_END 0x3f #define MINOR_SMART_OBJECT_REMOVAL_BEGIN 0x40 #define MINOR_SMART_OBJECT_REMOVAL_END 0x41 #define MINOR_SMART_VEHICLE_ALARM_START 0x46 #define MINOR_SMART_VEHICLE_ALARM_STOP 0x47 #define MINOR_THERMAL_FIREDETECTION 0x48 #define MINOR_THERMAL_FIREDETECTION_END 0x49 #define MINOR_SMART_VANDALPROOF_BEGIN 0x50 #define MINOR_SMART_VANDALPROOF_END 0x51 #define MINOR_FACESNAP_MATCH_ALARM_START 0x55 #define MINOR_FACESNAP_MATCH_ALARM_STOP 0x56 #define MINOR_WHITELIST_FACESNAP_MATCH_ALARM_START 0x57 #define MINOR_WHITELIST_FACESNAP_MATCH_ALARM_STOP 0x58 #define MINOR_THERMAL_SHIPSDETECTION 0x5a #define MINOR_THERMAL_THERMOMETRY_EARLYWARNING_BEGIN 0x5b #define MINOR_THERMAL_THERMOMETRY_EARLYWARNING_END 0x5c #define MINOR_THERMAL_THERMOMETRY_ALARM_BEGIN 0x5d #define MINOR_THERMAL_THERMOMETRY_ALARM_END 0x5e #define MINOR_THERMAL_THERMOMETRY_DIFF_ALARM_BEGIN 0x5f #define MINOR_THERMAL_THERMOMETRY_DIFF_ALARM_END 0x60 #define MINOR_FACE_THERMOMETRY_ALARM 0x63 #define MINOR_SMART_DENSEFOGDETECTION_BEGIN 0x6e #define MINOR_SMART_DENSEFOGDETECTION_END 0x6f #define MINOR_RUNNING_ALARM 0x70 #define MINOR_RETENTION_ALARM 0x71 #define MINOR_SAFETY_HELMET_ALARM_START 0x72 #define MINOR_SAFETY_HELMET_ALARM_STOP 0x73 #define MINOR_HFPD_ALARM_START 0x74 #define MINOR_HFPD_ALARM_STOP 0x75 #define MINOR_MIXED_TARGET_ALARM_START 0x76 #define MINOR_MIXED_TARGET_ALARM_STOP 0x77 #define MINOR_VCA_GET_UP_ALARM_BEGIN 0x80 #define MINOR_VCA_GET_UP_ALARM_END 0x81 #define MINOR_VCA_ADV_REACH_HEIGHT_ALARM_BEGIN 0x82 #define MINOR_VCA_ADV_REACH_HEIGHT_ALARM_END 0x83 #define MINOR_VCA_TOILET_TARRY_ALARM_BEGIN 0x84 #define MINOR_VCA_TOILET_TARRY_ALARM_END 0x85 #define MINOR_HUMAN_RECOGNITION_ALARM_BEGIN 0x86 #define MINOR_HUMAN_RECOGNITION_ALARM_END 0x87 #define MINOR_STUDENTS_STOODUP_ALARM_BEGIN 0x88 #define MINOR_STUDENTS_STOODUP_ALARM_END 0x89 #define MINOR_FRAMES_PEOPLE_COUNTING_ALARM 0x8a #define MINOR_FACE_SNAP_ALARM_BEGIN 0x8b #define MINOR_FACE_SNAP_ALARM_END 0x8c #define MINOR_TEACHER_BEHAVIOR_DETECT_ALARM_BEGIN 0x8d #define MINOR_TEACHER_BEHAVIOR_DETECT_ALARM_END 0x8e #define MINOR_PERIMETER_CAPTURE_ALARM_BEGIN 0x8f #define MINOR_PERIMETER_CAPTURE_ALARM_END 0x90 #define MINOR_UNREGISTERED_STREET_VENDOR_ALARM 0x91 #define MINOR_PERSON_QUEUE_TIME_ALARM_BEGIN 0x92 #define MINOR_PERSON_QUEUE_TIME_ALARM_END 0x93 #define MINOR_PERSON_QUEUE_COUNTING_ALARM_BEGIN 0x94 #define MINOR_PERSON_QUEUE_COUNTING_ALARM_END 0x95 #define MINOR_ACCESS_CONTROLLER_EVENT 0x100 #define MINOR_VIDEO_INTERCOM_EVENT 0x101 #define MINOR_GJD_EVENT 0x102 #define MINOR_LUMINITE_EVENT 0x103 #define MINOR_OPTEX_EVENT 0x104 #define MINOR_CAMERA_DETECTOR_EVENT 0x105 #define MINOR_VCA_SPACE_CHANGE_START 0x10c #define MINOR_VCA_SPACE_CHANGE_STOP 0x10d #define MINOR_ALARMIN_SHORT_CIRCUIT 0x400 #define MINOR_ALARMIN_BROKEN_CIRCUIT 0x401 #define MINOR_ALARMIN_EXCEPTION 0x402 #define MINOR_ALARMIN_RESUME 0x403 #define MINOR_HOST_DESMANTLE_ALARM 0x404 #define MINOR_HOST_DESMANTLE_RESUME 0x405 #define MINOR_CARD_READER_DESMANTLE_ALARM 0x406 #define MINOR_CARD_READER_DESMANTLE_RESUME 0x407 #define MINOR_CASE_SENSOR_ALARM 0x408 #define MINOR_CASE_SENSOR_RESUME 0x409 #define MINOR_STRESS_ALARM 0x40a #define MINOR_OFFLINE_ECENT_NEARLY_FULL 0x40b #define MINOR_CARD_MAX_AUTHENTICATE_FAIL 0x40c #define MINOR_SD_CARD_FULL 0x40d #define MINOR_LINKAGE_CAPTURE_PIC 0x40e #define MINOR_SECURITY_MODULE_DESMANTLE_ALARM 0x40f #define MINOR_SECURITY_MODULE_DESMANTLE_RESUME 0x410 #define MINOR_POS_START_ALARM 0x411 #define MINOR_POS_END_ALARM 0x412 #define MINOR_FACE_IMAGE_QUALITY_LOW 0x413 #define MINOR_FINGE_RPRINT_QUALITY_LOW 0x414 #define MINOR_FIRE_IMPORT_SHORT_CIRCUIT 0x415 #define MINOR_FIRE_IMPORT_BROKEN_CIRCUIT 0x416 #define MINOR_FIRE_IMPORT_RESUME 0x417 #define MINOR_FIRE_BUTTON_TRIGGER 0x418 #define MINOR_FIRE_BUTTON_RESUME 0x419 #define MINOR_MAINTENANCE_BUTTON_TRIGGER 0x41a #define MINOR_MAINTENANCE_BUTTON_RESUME 0x41b #define MINOR_EMERGENCY_BUTTON_TRIGGER 0x41c #define MINOR_EMERGENCY_BUTTON_RESUME 0x41d #define MINOR_DISTRACT_CONTROLLER_ALARM 0x41e #define MINOR_DISTRACT_CONTROLLER_RESUME 0x41f #define MINOR_PERSON_DENSITY_DETECTION_START 0x420 #define MINOR_PERSON_DENSITY_DETECTION_END 0x421 #define MINOR_CHANNEL_CONTROLLER_DESMANTLE_ALARM 0x422 #define MINOR_CHANNEL_CONTROLLER_DESMANTLE_RESUME 0x423 #define MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM 0x424 #define MINOR_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME 0x425 #define MINOR_HEART_RATE_ABNORMAL_BEGIN 0x426 #define MINOR_HEART_RATE_ABNORMAL_END 0x427 #define MINOR_BLOOD_OXYGEN_ABNORMAL_BEGIN 0x428 #define MINOR_BLOOD_OXYGEN_ABNORMAL_END 0x429 #define MINOR_SYSTOLIC_BLOOD_PRESSURE_ABNORMAL_BEGIN 0x42a #define MINOR_SYSTOLIC_BLOOD_PRESSURE_ABNORMAL_END 0x42b #define MINOR_DIASTOLIC_BLOOD_PRESSURE_ABNORMAL_BEGIN 0x42c #define MINOR_DIASTOLIC_BLOOD_PRESSURE_ABNORMAL_END 0x42d #define MINOR_VCA_LEAVE_POSITION_START 0x42e #define MINOR_VCA_LEAVE_POSITION_STOP 0x42f #define MINOR_VCA_STOOODUP_START 0x430 #define MINOR_VCA_STOOODUP_STOP 0x431 #define MINOR_VCA_PEOPLENUM_CHANGE_START 0x434 #define MINOR_VCA_PEOPLENUM_CHANGE_STOP 0x435 #define MINOR_VCA_RUNNING_START 0x438 #define MINOR_VCA_RUNNING_STOP 0x439 #define MINOR_VCA_VIOLENT_MOTION_START 0x43a #define MINOR_VCA_VIOLENT_MOTION_STOP 0x43b #define MINOR_VCA_FAIL_DOWN_START 0x43c #define MINOR_VCA_FAIL_DOWN_STOP 0x43d #define MINOR_VCA_RETENTION_START 0x43e #define MINOR_VCA_RETENTION_STOP 0x43f #define MINOR_PRINTER_OUT_OF_PAPER 0x440 #define MINOR_LEGAL_EVENT_NEARLY_FULL 0x442 #define MINOR_ALARM_CUSTOM1 0x900 #define MINOR_ALARM_CUSTOM2 0x901 #define MINOR_ALARM_CUSTOM3 0x902 #define MINOR_ALARM_CUSTOM4 0x903 #define MINOR_ALARM_CUSTOM5 0x904 #define MINOR_ALARM_CUSTOM6 0x905 #define MINOR_ALARM_CUSTOM7 0x906 #define MINOR_ALARM_CUSTOM8 0x907 #define MINOR_ALARM_CUSTOM9 0x908 #define MINOR_ALARM_CUSTOM10 0x909 #define MINOR_ALARM_CUSTOM11 0x90a #define MINOR_ALARM_CUSTOM12 0x90b #define MINOR_ALARM_CUSTOM13 0x90c #define MINOR_ALARM_CUSTOM14 0x90d #define MINOR_ALARM_CUSTOM15 0x90e #define MINOR_ALARM_CUSTOM16 0x90f #define MINOR_ALARM_CUSTOM17 0x910 #define MINOR_ALARM_CUSTOM18 0x911 #define MINOR_ALARM_CUSTOM19 0x912 #define MINOR_ALARM_CUSTOM20 0x913 #define MINOR_ALARM_CUSTOM21 0x914 #define MINOR_ALARM_CUSTOM22 0x915 #define MINOR_ALARM_CUSTOM23 0x916 #define MINOR_ALARM_CUSTOM24 0x917 #define MINOR_ALARM_CUSTOM25 0x918 #define MINOR_ALARM_CUSTOM26 0x919 #define MINOR_ALARM_CUSTOM27 0x91a #define MINOR_ALARM_CUSTOM28 0x91b #define MINOR_ALARM_CUSTOM29 0x91c #define MINOR_ALARM_CUSTOM30 0x91d #define MINOR_ALARM_CUSTOM31 0x91e #define MINOR_ALARM_CUSTOM32 0x91f #define MINOR_ALARM_CUSTOM33 0x920 #define MINOR_ALARM_CUSTOM34 0x921 #define MINOR_ALARM_CUSTOM35 0x922 #define MINOR_ALARM_CUSTOM36 0x923 #define MINOR_ALARM_CUSTOM37 0x924 #define MINOR_ALARM_CUSTOM38 0x925 #define MINOR_ALARM_CUSTOM39 0x926 #define MINOR_ALARM_CUSTOM40 0x927 #define MINOR_ALARM_CUSTOM41 0x928 #define MINOR_ALARM_CUSTOM42 0x929 #define MINOR_ALARM_CUSTOM43 0x92a #define MINOR_ALARM_CUSTOM44 0x92b #define MINOR_ALARM_CUSTOM45 0x92c #define MINOR_ALARM_CUSTOM46 0x92d #define MINOR_ALARM_CUSTOM47 0x92e #define MINOR_ALARM_CUSTOM48 0x92f #define MINOR_ALARM_CUSTOM49 0x930 #define MINOR_ALARM_CUSTOM50 0x931 #define MINOR_ALARM_CUSTOM51 0x932 #define MINOR_ALARM_CUSTOM52 0x933 #define MINOR_ALARM_CUSTOM53 0x934 #define MINOR_ALARM_CUSTOM54 0x935 #define MINOR_ALARM_CUSTOM55 0x936 #define MINOR_ALARM_CUSTOM56 0x937 #define MINOR_ALARM_CUSTOM57 0x938 #define MINOR_ALARM_CUSTOM58 0x939 #define MINOR_ALARM_CUSTOM59 0x93a #define MINOR_ALARM_CUSTOM60 0x93b #define MINOR_ALARM_CUSTOM61 0x93c #define MINOR_ALARM_CUSTOM62 0x93d #define MINOR_ALARM_CUSTOM63 0x93e #define MINOR_ALARM_CUSTOM64 0x93f #define MINOR_LOCK_HIJIACK_FINGER_ALARM 0x950 #define MINOR_LOCK_HIJIACK_PASSWORD_ALARM 0x951 #define MINOR_LOCK_PRY_DOOR_ALARM 0x952 #define MINOR_LOCK_LOCKED_ALARM 0x953 #define MINOR_LOCK_BATTERLOW_ALARM 0x954 #define MINOR_LOCK_BLACKLIST_DOOR_ALARM 0x955 #define MINOR_LOCK_OFFLINE_ALARM 0x956 #define MINOR_LOCK_UNCLOSED_ALARM 0x957 #define MINOR_LOCK_NO_HOME_ALARM 0x958 #define MINOR_LOCK_MAGNETOMETER_ALARM 0x959 #define MINOR_LOCK_IR_DETECTOR_ALARM 0x95a #define MINOR_LOCK_FP_LOCKED_ALARM 0x95b #define MINOR_LOCK_PASSWORD_LOCKED_ALARM 0x95c #define MINOR_LOCK_HIJIACK_ALARM 0x95d #define MINOR_ALARMHOST_SHORT_CIRCUIT 0x1001 #define MINOR_ALARMHOST_BROKEN_CIRCUIT 0x1002 #define MINOR_ALARMHOST_ALARM_RESET 0x1003 #define MINOR_ALARMHOST_ALARM_NORMAL 0x1004 #define MINOR_ALARMHOST_PASSWORD_ERROR 0x1005 #define MINOR_ALARMHOST_ID_CARD_ILLEGALLY 0x1006 #define MINOR_ALARMHOST_KEYPAD_REMOVE 0x1007 #define MINOR_ALARMHOST_KEYPAD_REMOVE_RESTORE 0x1008 #define MINOR_ALARMHOST_BELOW_ALARM_LIMIT1 0x1011 #define MINOR_ALARMHOST_BELOW_ALARM_LIMIT2 0x1012 #define MINOR_ALARMHOST_BELOW_ALARM_LIMIT3 0x1013 #define MINOR_ALARMHOST_BELOW_ALARM_LIMIT4 0x1014 #define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT1 0x1015 #define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT2 0x1016 #define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT3 0x1017 #define MINOR_ALARMHOST_ABOVE_ALARM_LIMIT4 0x1018 #define MINOR_ALARMHOST_VIRTUAL_DEFENCE_BANDIT 0x1021 #define MINOR_ALARMHOST_VIRTUAL_DEFENCE_FIRE 0x1022 #define MINOR_ALARMHOST_VIRTUAL_DEFENCE_URGENT 0x1023 #define MINOR_UPS_ALARM 0x1028 #define MINOR_ELECTRICITY_METER_ALARM 0x1029 #define MINOR_SWITCH_POWER_ALARM 0x1030 #define MINOR_GAS_DETECT_SYS_ALARM 0x1031 #define MINOR_TRANSFORMER_TEMPRATURE_ALARM 0x1032 #define MINOR_TEMP_HUMI_ALARM 0x1033 #define MINOR_UPS_ALARM_RESTORE 0x1034 #define MINOR_ELECTRICITY_METER_ALARM_RESTORE 0x1035 #define MINOR_SWITCH_POWER_ALARM_RESTORE 0x1036 #define MINOR_GAS_DETECT_SYS_ALARM_RESTORE 0x1037 #define MINOR_TRANSFORMER_TEMPRATURE_ALARM_RESTORE 0x1038 #define MINOR_TEMP_HUMI_ALARM_RESTORE 0x1039 #define MINOR_WATER_LEVEL_SENSOR_ALARM 0x1040 #define MINOR_WATER_LEVEL_SENSOR_ALARM_RESTORE 0x1041 #define MINOR_DUST_NOISE_ALARM 0x1042 #define MINOR_DUST_NOISE_ALARM_RESTORE 0x1043 #define MINOR_ENVIRONMENTAL_LOGGER_ALARM 0x1044 #define MINOR_ENVIRONMENTAL_LOGGER_ALARM_RESTORE 0x1045 #define MINOR_TRIGGER_TAMPER 0x1046 #define MINOR_TRIGGER_TAMPER_RESTORE 0x1047 #define MINOR_EMERGENCY_CALL_HELP_ALARM 0x1048 #define MINOR_EMERGENCY_CALL_HELP_ALARM_RESTORE 0x1049 #define MINOR_CONSULTING_ALARM 0x1050 #define MINOR_CONSULTING_ALARM_RESTORE 0x1051 #define MINOR_ALARMHOST_ZONE_MODULE_REMOVE 0x1052 #define MINOR_ALARMHOST_ZONE_MODULE_RESET 0x1053 #define MINOR_ALARMHOST_ALARM_WIND_SPEED_ALARM 0x1054 #define MINOR_ALARMHOST_ALARM_WIND_SPEED_ALARM_RESTORE 0x1055 #define MINOR_ALARMHOST_ALARM_GENERATE_OUTPUT_ALARM 0x1056 #define MINOR_ALARMHOST_ALARM_GENERATE_OUTPUT_RESTORE 0x1057 #define MINOR_ALARMHOST_ALARM_SOAK_ALARM 0x1058 #define MINOR_ALARMHOST_ALARM_SOAK_ALARM_RESTORE 0x1059 #define MINOR_ALARMHOST_ALARM_SOLAR_POWER_ALARM 0x1060 #define MINOR_ALARMHOST_ALARM_SOLAR_POWER_ALARM_RESTORE 0x1061 #define MINOR_ALARMHOST_ALARM_SF6_ALARM 0x1062 #define MINOR_ALARMHOST_ALARM_SF6_ALARM_RESTORE 0x1063 #define MINOR_ALARMHOST_ALARM_WEIGHT_ALARM 0x1064 #define MINOR_ALARMHOST_ALARM_WEIGHT_ALARM_RESTORE 0x1065 #define MINOR_ALARMHOST_ALARM_WEATHER_ALARM 0x1066 #define MINOR_ALARMHOST_ALARM_WEATHER_ALARM_RESTORE 0x1067 #define MINOR_ALARMHOST_ALARM_FUEL_GAS_ALARM 0x1068 #define MINOR_ALARMHOST_ALARM_FUEL_GAS_ALARM_RESTORE 0x1069 #define MINOR_ALARMHOST_ALARM_FIRE_ALARM 0x1070 #define MINOR_ALARMHOST_ALARM_FIRE_ALARM_RESTORE 0x1071 #define MINOR_ALARMHOST_WIRELESS_OUTPUT_MODULE_REMOVE 0x1072 #define MINOR_ALARMHOST_WIRELESS_OUTPUT_MODULE_RESET 0x1073 #define MINOR_ALARMHOST_WIRELESS_REPEATER_MODULE_REMOVE 0x1074 #define MINOR_ALARMHOST_WIRELESS_REPEATER_MODULE_RESET 0x1074 #define MINOR_ALARMHOST_WIRELESS_SIREN_MODULE_REMOVE 0x1075 #define MINOR_ALARMHOST_WIRELESS_SIREN_MODULE_RESET 0x1076 #define MINOR_RS485_DEV_ALARM 0x1077 #define MINOR_RS485_DEV_RESTORE 0x1078 #define MAJOR_EXCEPTION 0x2 #define MINOR_SUBSYSTEM_ERROR 0x0a #define MINOR_RAID_ERROR 0x20 #define MINOR_VI_LOST 0x21 #define MINOR_ILLEGAL_ACCESS 0x22 #define MINOR_HD_FULL 0x23 #define MINOR_HD_ERROR 0x24 #define MINOR_DCD_LOST 0x25 #define MINOR_IP_CONFLICT 0x26 #define MINOR_NET_BROKEN 0x27 #define MINOR_REC_ERROR 0x28 #define MINOR_IPC_NO_LINK 0x29 #define MINOR_VI_EXCEPTION 0x2a #define MINOR_IPC_IP_CONFLICT 0x2b #define MINOR_SENCE_EXCEPTION 0x2c #define MINOR_PIC_REC_ERROR 0x2d #define MINOR_VI_MISMATCH 0x2e #define MINOR_RESOLUTION_MISMATCH 0x2f #define MINOR_FANABNORMAL 0x31 #define MINOR_FANRESUME 0x32 #define MINOR_SUBSYSTEM_ABNORMALREBOOT 0x33 #define MINOR_MATRIX_STARTBUZZER 0x34 #define MINOR_NET_ABNORMAL 0x35 #define MINOR_MEM_ABNORMAL 0x36 #define MINOR_FILE_ABNORMAL 0x37 #define MINOR_PANEL_ABNORMAL 0x38 #define MINOR_PANEL_RESUME 0x39 #define MINOR_RS485_DEVICE_ABNORMAL 0x3a #define MINOR_RS485_DEVICE_REVERT 0x3b #define MINOR_SCREEN_SUBSYSTEM_ABNORMALREBOOT 0x3c #define MINOR_SCREEN_SUBSYSTEM_ABNORMALINSERT 0x3d #define MINOR_SCREEN_SUBSYSTEM_ABNORMALPULLOUT 0x3e #define MINOR_SCREEN_ABNARMALTEMPERATURE 0x3f #define MINOR_HIGH_TEMPERATURE_PROTECT 0x40 #define MINOR_RECORD_OVERFLOW 0x41 #define MINOR_DSP_ABNORMAL 0x42 #define MINOR_ANR_RECORD_FAIED 0x43 #define MINOR_SPARE_WORK_DEVICE_EXCEPT 0x44 #define MINOR_START_IPC_MAS_FAILED 0x45 #define MINOR_IPCM_CRASH 0x46 #define MINOR_POE_POWER_EXCEPTION 0x47 #define MINOR_UPLOAD_DATA_CS_EXCEPTION 0x48 #define MINOR_DIAL_EXCEPTION 0x49 #define MINOR_DEV_EXCEPTION_OFFLINE 0x50 #define MINOR_UPGRADEFAIL 0x51 #define MINOR_AI_LOST 0x52 #define MINOR_SYNC_IPC_PASSWD 0x53 #define MINOR_EZVIZ_OFFLINE 0x54 #define MINOR_VQD_ABNORMAL 0x55 #define MINOR_ACCESSORIES_PLATE 0x57 #define MINOR_KMS_EXPAMSION_DISK_LOST 0x58 #define MINOR_ABNORMAL_PORT 0x59 #define MINOR_CAMERA_ANGLE_ANOMALY 0x60 #define MINOR_DATA_DISK_ERROE 0x61 #define MINOR_INTELLIGENT_SYSTEM_RUNNING_ERROR 0x62 #define MINOR_FACESNAP_RESOLUTION_OVERFLOW 0x63 #define MINOR_SMD_RESOLUTION_OVERFLOW 0x64 #define MINOR_AUDIO_LOSS_EXCEPTION 0x65 #define MINOR_SAFETY_HELMET_EXCEPTION 0x66 #define MINOR_VCA_PIC_LENGTH_OVERFLOW 0x67 #define MINOR_FACE_MODEL_EXCEPTION 0x68 #define MINOR_CLUSTER_DEVICE_OFFLINE 0x70 #define MINOR_CLUSTER_CONFIG_FAILED 0x71 #define MINOR_CLUSTER_DISASTER_TOLERANCE_EXCEPT 0x72 #define MINOR_CLUSTER_STORFULL_EXCEPTION 0x73 #define MINOR_CLUSTER_VERSION_EXCEPTION 0x74 #define MINOR_CLUSTER_OFFLINENODE_EXCEPTION 0x75 #define MINOR_CLUSTER_RECORDCYCLE_EXCEPTION 0x76 #define MINOR_CLUSTER_IPCTRANSFER_EXCEPTION 0x77 #define MINOR_CLUSTER_IPCONFLICT_EXCEPTION 0x78 #define MINOR_GET_SUB_STREAM_FAILURE 0x79 #define MINOR_HDD_SHM_DETECT_EXCEPTION 0x7a #define MINOR_DEV_POWER_ON 0x400 #define MINOR_DEV_POWER_OFF 0x401 #define MINOR_WATCH_DOG_RESET 0x402 #define MINOR_LOW_BATTERY 0x403 #define MINOR_BATTERY_RESUME 0x404 #define MINOR_AC_OFF 0x405 #define MINOR_AC_RESUME 0x406 #define MINOR_NET_RESUME 0x407 #define MINOR_FLASH_ABNORMAL 0x408 #define MINOR_CARD_READER_OFFLINE 0x409 #define MINOR_CARD_READER_RESUME 0x40a #define MINOR_INDICATOR_LIGHT_OFF 0x40b #define MINOR_INDICATOR_LIGHT_RESUME 0x40c #define MINOR_CHANNEL_CONTROLLER_OFF 0x40d #define MINOR_CHANNEL_CONTROLLER_RESUME 0x40e #define MINOR_SECURITY_MODULE_OFF 0x40f #define MINOR_SECURITY_MODULE_RESUME 0x410 #define MINOR_BATTERY_ELECTRIC_LOW 0x411 #define MINOR_BATTERY_ELECTRIC_RESUME 0x412 #define MINOR_LOCAL_CONTROL_NET_BROKEN 0x413 #define MINOR_LOCAL_CONTROL_NET_RSUME 0x414 #define MINOR_MASTER_RS485_LOOPNODE_BROKEN 0x415 #define MINOR_MASTER_RS485_LOOPNODE_RESUME 0x416 #define MINOR_LOCAL_CONTROL_OFFLINE 0x417 #define MINOR_LOCAL_CONTROL_RESUME 0x418 #define MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN 0x419 #define MINOR_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME 0x41a #define MINOR_DISTRACT_CONTROLLER_ONLINE 0x41b #define MINOR_DISTRACT_CONTROLLER_OFFLINE 0x41c #define MINOR_ID_CARD_READER_NOT_CONNECT 0x41d #define MINOR_ID_CARD_READER_RESUME 0x41e #define MINOR_FINGER_PRINT_MODULE_NOT_CONNECT 0x41f #define MINOR_FINGER_PRINT_MODULE_RESUME 0x420 #define MINOR_CAMERA_NOT_CONNECT 0x421 #define MINOR_CAMERA_RESUME 0x422 #define MINOR_COM_NOT_CONNECT 0x423 #define MINOR_COM_RESUME 0x424 #define MINOR_DEVICE_NOT_AUTHORIZE 0x425 #define MINOR_PEOPLE_AND_ID_CARD_DEVICE_ONLINE 0x426 #define MINOR_PEOPLE_AND_ID_CARD_DEVICE_OFFLINE 0x427 #define MINOR_LOCAL_LOGIN_LOCK 0x428 #define MINOR_LOCAL_LOGIN_UNLOCK 0x429 #define MINOR_SUBMARINEBACK_COMM_BREAK 0x42a #define MINOR_SUBMARINEBACK_COMM_RESUME 0x42b #define MINOR_MOTOR_SENSOR_EXCEPTION 0x42c #define MINOR_CAN_BUS_EXCEPTION 0x42d #define MINOR_CAN_BUS_RESUME 0x42e #define MINOR_GATE_TEMPERATURE_OVERRUN 0x42f #define MINOR_IR_EMITTER_EXCEPTION 0x430 #define MINOR_IR_EMITTER_RESUME 0x431 #define MINOR_LAMP_BOARD_COMM_EXCEPTION 0x432 #define MINOR_LAMP_BOARD_COMM_RESUME 0x433 #define MINOR_IR_ADAPTOR_COMM_EXCEPTION 0x434 #define MINOR_IR_ADAPTOR_COMM_RESUME 0x435 #define MINOR_PRINTER_ONLINE 0x436 #define MINOR_PRINTER_OFFLINE 0x437 #define MINOR_4G_MOUDLE_ONLINE 0x438 #define MINOR_4G_MOUDLE_OFFLINE 0x439 #define MINOR_EXCEPTION_CUSTOM1 0x900 #define MINOR_EXCEPTION_CUSTOM2 0x901 #define MINOR_EXCEPTION_CUSTOM3 0x902 #define MINOR_EXCEPTION_CUSTOM4 0x903 #define MINOR_EXCEPTION_CUSTOM5 0x904 #define MINOR_EXCEPTION_CUSTOM6 0x905 #define MINOR_EXCEPTION_CUSTOM7 0x906 #define MINOR_EXCEPTION_CUSTOM8 0x907 #define MINOR_EXCEPTION_CUSTOM9 0x908 #define MINOR_EXCEPTION_CUSTOM10 0x909 #define MINOR_EXCEPTION_CUSTOM11 0x90a #define MINOR_EXCEPTION_CUSTOM12 0x90b #define MINOR_EXCEPTION_CUSTOM13 0x90c #define MINOR_EXCEPTION_CUSTOM14 0x90d #define MINOR_EXCEPTION_CUSTOM15 0x90e #define MINOR_EXCEPTION_CUSTOM16 0x90f #define MINOR_EXCEPTION_CUSTOM17 0x910 #define MINOR_EXCEPTION_CUSTOM18 0x911 #define MINOR_EXCEPTION_CUSTOM19 0x912 #define MINOR_EXCEPTION_CUSTOM20 0x913 #define MINOR_EXCEPTION_CUSTOM21 0x914 #define MINOR_EXCEPTION_CUSTOM22 0x915 #define MINOR_EXCEPTION_CUSTOM23 0x916 #define MINOR_EXCEPTION_CUSTOM24 0x917 #define MINOR_EXCEPTION_CUSTOM25 0x918 #define MINOR_EXCEPTION_CUSTOM26 0x919 #define MINOR_EXCEPTION_CUSTOM27 0x91a #define MINOR_EXCEPTION_CUSTOM28 0x91b #define MINOR_EXCEPTION_CUSTOM29 0x91c #define MINOR_EXCEPTION_CUSTOM30 0x91d #define MINOR_EXCEPTION_CUSTOM31 0x91e #define MINOR_EXCEPTION_CUSTOM32 0x91f #define MINOR_EXCEPTION_CUSTOM33 0x920 #define MINOR_EXCEPTION_CUSTOM34 0x921 #define MINOR_EXCEPTION_CUSTOM35 0x922 #define MINOR_EXCEPTION_CUSTOM36 0x923 #define MINOR_EXCEPTION_CUSTOM37 0x924 #define MINOR_EXCEPTION_CUSTOM38 0x925 #define MINOR_EXCEPTION_CUSTOM39 0x926 #define MINOR_EXCEPTION_CUSTOM40 0x927 #define MINOR_EXCEPTION_CUSTOM41 0x928 #define MINOR_EXCEPTION_CUSTOM42 0x929 #define MINOR_EXCEPTION_CUSTOM43 0x92a #define MINOR_EXCEPTION_CUSTOM44 0x92b #define MINOR_EXCEPTION_CUSTOM45 0x92c #define MINOR_EXCEPTION_CUSTOM46 0x92d #define MINOR_EXCEPTION_CUSTOM47 0x92e #define MINOR_EXCEPTION_CUSTOM48 0x92f #define MINOR_EXCEPTION_CUSTOM49 0x930 #define MINOR_EXCEPTION_CUSTOM50 0x931 #define MINOR_EXCEPTION_CUSTOM51 0x932 #define MINOR_EXCEPTION_CUSTOM52 0x933 #define MINOR_EXCEPTION_CUSTOM53 0x934 #define MINOR_EXCEPTION_CUSTOM54 0x935 #define MINOR_EXCEPTION_CUSTOM55 0x936 #define MINOR_EXCEPTION_CUSTOM56 0x937 #define MINOR_EXCEPTION_CUSTOM57 0x938 #define MINOR_EXCEPTION_CUSTOM58 0x939 #define MINOR_EXCEPTION_CUSTOM59 0x93a #define MINOR_EXCEPTION_CUSTOM60 0x93b #define MINOR_EXCEPTION_CUSTOM61 0x93c #define MINOR_EXCEPTION_CUSTOM62 0x93d #define MINOR_EXCEPTION_CUSTOM63 0x93e #define MINOR_EXCEPTION_CUSTOM64 0x93f #define MINOR_SWITCH_WIRED_NETWORK 0x950 #define MINOR_SWITCH_WIRELESS_NETWORK 0x951 #define MINOR_LOCK_ONLINE_RESUME 0x952 #define MINOR_SUBSYSTEM_IP_CONFLICT 0x4000 #define MINOR_SUBSYSTEM_NET_BROKEN 0x4001 #define MINOR_FAN_ABNORMAL 0x4002 #define MINOR_BACKPANEL_TEMPERATURE_ABNORMAL 0x4003 #define MINOR_SDCARD_ABNORMAL 0x4004 #define MINOR_SDCARD_DAMAGE 0x4005 #define MINOR_POC_ABNORMAL 0x4006 #define MINOR_ALARMHOST_WDT_RESET 0x1003 #define MINOR_ALARMHOST_RTC_EXCEPTION 0x1007 #define MINOR_ALARMHOST_TEL_LINE_CONNECT_FAILURE 0x100a #define MINOR_ALARMHOST_TEL_LINE_CONNECT_RESTORE 0x100b #define MINOR_ALARMHOST_EXPANDER_BUS_LOSS 0x100c #define MINOR_ALARMHOST_EXPANDER_BUS_RESTORE 0x100d #define MINOR_ALARMHOST_KEYPAD_BUS_LOSS 0x100e #define MINOR_ALARMHOST_KEYPAD_BUS_RESTORE 0x100f #define MINOR_ALARMHOST_SENSOR_FAILURE 0x1010 #define MINOR_ALARMHOST_SENSOR_RESTORE 0x1011 #define MINOR_ALARMHOST_RS485_CONNECT_FAILURE 0x1012 #define MINOR_ALARMHOST_RS485_CONNECT_RESTORE 0x1013 #define MINOR_ALARMHOST_WIRED_NETWORK_ABNORMAL 0x1015 #define MINOR_ALARMHOST_WIRED_NETWORK_RESTORE 0x1016 #define MINOR_ALARMHOST_GPRS_ABNORMAL 0x1017 #define MINOR_ALARMHOST_GPRS_RESTORE 0x1018 #define MINOR_ALARMHOST_3G_ABNORMAL 0x1019 #define MINOR_ALARMHOST_3G_RESTORE 0x101a #define MINOR_ALARMHOST_SIM_CARD_ABNORMAL 0x101b #define MINOR_ALARMHOST_SIM_CARD_RESTORE 0x101c #define MINOR_FORMAT_HDD_ERROR 0x1026 #define MINOR_USB_ERROR 0x1027 #define MINOR_USB_RESTORE 0x1028 #define MINOR_PRINT_ERROR 0x1029 #define MINOR_PRINT_RESTORE 0x1030 #define MINOR_ALARMHOST_SUBSYSTEM_COMMUNICATION_ERROR 0x1031 #define MINOR_MCU_RESTART 0x1035 #define MINOR_GPRS_MODULE_FAULT 0x1036 #define MINOR_TELEPHONE_MODULE_FAULT 0x1037 #define MINOR_WIFI_ABNORMAL 0x1038 #define MINOR_WIFI_RESTORE 0x1039 #define MINOR_RF_ABNORMAL 0x103a #define MINOR_RF_RESTORE 0x103b #define MINOR_DETECTOR_ONLINE 0x103c #define MINOR_DETECTOR_OFFLINE 0x103d #define MINOR_DETECTOR_BATTERY_NORMAL 0x103e #define MINOR_DETECTOR_BATTERY_LOW 0x103f #define MINOR_DATA_TRAFFIC_OVERFLOW 0x1040 #define MINOR_ALARMHOST_ZONE_MODULE_LOSS 0x1041 #define MINOR_ALARMHOST_ZONE_MODULE_RESTORE 0x1042 #define MINOR_WIRELESS_OUTPUT_LOSS 0x1043 #define MINOR_WIRELESS_OUTPUT_RESTORE 0x1044 #define MINOR_WIRELESS_REPEATER_LOSS 0x1045 #define MINOR_WIRELESS_REPEATER_RESTORE 0x1046 #define MINOR_ALARMHOST_TRIGGER_MODULE_LOSS 0x1047 #define MINOR_ALARMHOST_TRIGGER_MODULE_RESTORE 0x1048 #define MINOR_ALARMHOST_WIRELESS_SIREN_LOSS 0x1049 #define MINOR_ALARMHOST_WIRELESS_SIREN_RESTORE 0x104a #define MAJOR_OPERATION 0x3 #define MINOR_VCA_MOTIONEXCEPTION 0x29 #define MINOR_START_DVR 0x41 #define MINOR_STOP_DVR 0x42 #define MINOR_STOP_ABNORMAL 0x43 #define MINOR_REBOOT_DVR 0x44 #define MINOR_LOCAL_LOGIN 0x50 #define MINOR_LOCAL_LOGOUT 0x51 #define MINOR_LOCAL_CFG_PARM 0x52 #define MINOR_LOCAL_PLAYBYFILE 0x53 #define MINOR_LOCAL_PLAYBYTIME 0x54 #define MINOR_LOCAL_START_REC 0x55 #define MINOR_LOCAL_STOP_REC 0x56 #define MINOR_LOCAL_PTZCTRL 0x57 #define MINOR_LOCAL_PREVIEW 0x58 #define MINOR_LOCAL_MODIFY_TIME 0x59 #define MINOR_LOCAL_UPGRADE 0x5a #define MINOR_LOCAL_RECFILE_OUTPUT 0x5b #define MINOR_LOCAL_FORMAT_HDD 0x5c #define MINOR_LOCAL_CFGFILE_OUTPUT 0x5d #define MINOR_LOCAL_CFGFILE_INPUT 0x5e #define MINOR_LOCAL_COPYFILE 0x5f #define MINOR_LOCAL_LOCKFILE 0x60 #define MINOR_LOCAL_UNLOCKFILE 0x61 #define MINOR_LOCAL_DVR_ALARM 0x62 #define MINOR_IPC_ADD 0x63 #define MINOR_IPC_DEL 0x64 #define MINOR_IPC_SET 0x65 #define MINOR_LOCAL_START_BACKUP 0x66 #define MINOR_LOCAL_STOP_BACKUP 0x67 #define MINOR_LOCAL_COPYFILE_START_TIME 0x68 #define MINOR_LOCAL_COPYFILE_END_TIME 0x69 #define MINOR_LOCAL_ADD_NAS 0x6a #define MINOR_LOCAL_DEL_NAS 0x6b #define MINOR_LOCAL_SET_NAS 0x6c #define MINOR_LOCAL_RESET_PASSWD 0x6d #define MINOR_REMOTE_LOGIN 0x70 #define MINOR_REMOTE_LOGOUT 0x71 #define MINOR_REMOTE_START_REC 0x72 #define MINOR_REMOTE_STOP_REC 0x73 #define MINOR_START_TRANS_CHAN 0x74 #define MINOR_STOP_TRANS_CHAN 0x75 #define MINOR_REMOTE_GET_PARM 0x76 #define MINOR_REMOTE_CFG_PARM 0x77 #define MINOR_REMOTE_GET_STATUS 0x78 #define MINOR_REMOTE_ARM 0x79 #define MINOR_REMOTE_DISARM 0x7a #define MINOR_REMOTE_REBOOT 0x7b #define MINOR_START_VT 0x7c #define MINOR_STOP_VT 0x7d #define MINOR_REMOTE_UPGRADE 0x7e #define MINOR_REMOTE_PLAYBYFILE 0x7f #define MINOR_REMOTE_PLAYBYTIME 0x80 #define MINOR_REMOTE_PTZCTRL 0x81 #define MINOR_REMOTE_FORMAT_HDD 0x82 #define MINOR_REMOTE_STOP 0x83 #define MINOR_REMOTE_LOCKFILE 0x84 #define MINOR_REMOTE_UNLOCKFILE 0x85 #define MINOR_REMOTE_CFGFILE_OUTPUT 0x86 #define MINOR_REMOTE_CFGFILE_INTPUT 0x87 #define MINOR_REMOTE_RECFILE_OUTPUT 0x88 #define MINOR_REMOTE_DVR_ALARM 0x89 #define MINOR_REMOTE_IPC_ADD 0x8a #define MINOR_REMOTE_IPC_DEL 0x8b #define MINOR_REMOTE_IPC_SET 0x8c #define MINOR_REBOOT_VCA_LIB 0x8d #define MINOR_REMOTE_ADD_NAS 0x8e #define MINOR_REMOTE_DEL_NAS 0x8f #define MINOR_REMOTE_SET_NAS 0x90 #define MINOR_LOCAL_OPERATE_LOCK 0x9d #define MINOR_LOCAL_OPERATE_UNLOCK 0x9e #define MINOR_REMOTE_DELETE_HDISK 0x9a #define MINOR_REMOTE_LOAD_HDISK 0x9b #define MINOR_REMOTE_UNLOAD_HDISK 0x9c #define MINOR_LOCAL_START_REC_CDRW 0x91 #define MINOR_LOCAL_STOP_REC_CDRW 0x92 #define MINOR_REMOTE_START_REC_CDRW 0x93 #define MINOR_REMOTE_STOP_REC_CDRW 0x94 #define MINOR_LOCAL_PIC_OUTPUT 0x95 #define MINOR_REMOTE_PIC_OUTPUT 0x96 #define MINOR_LOCAL_INQUEST_RESUME 0x97 #define MINOR_REMOTE_INQUEST_RESUME 0x98 #define MINOR_LOCAL_ADD_FILE 0x99 #define MINOR_LOCAL_DEL_FILE 0x9f #define MINOR_REMOTE_INQUEST_ADD_FILE 0x100 #define MINOR_SUBSYSTEMREBOOT 0xa0 #define MINOR_MATRIX_STARTTRANSFERVIDEO 0xa1 #define MINOR_MATRIX_STOPTRANSFERVIDEO 0xa2 #define MINOR_REMOTE_SET_ALLSUBSYSTEM 0xa3 #define MINOR_REMOTE_GET_ALLSUBSYSTEM 0xa4 #define MINOR_REMOTE_SET_PLANARRAY 0xa5 #define MINOR_REMOTE_GET_PLANARRAY 0xa6 #define MINOR_MATRIX_STARTTRANSFERAUDIO 0xa7 #define MINOR_MATRIX_STOPRANSFERAUDIO 0xa8 #define MINOR_LOGON_CODESPITTER 0xa9 #define MINOR_LOGOFF_CODESPITTER 0xaa #define MINOR_START_DYNAMIC_DECODE 0xb0 #define MINOR_STOP_DYNAMIC_DECODE 0xb1 #define MINOR_GET_CYC_CFG 0xb2 #define MINOR_SET_CYC_CFG 0xb3 #define MINOR_START_CYC_DECODE 0xb4 #define MINOR_STOP_CYC_DECODE 0xb5 #define MINOR_GET_DECCHAN_STATUS 0xb6 #define MINOR_GET_DECCHAN_INFO 0xb7 #define MINOR_START_PASSIVE_DEC 0xb8 #define MINOR_STOP_PASSIVE_DEC 0xb9 #define MINOR_CTRL_PASSIVE_DEC 0xba #define MINOR_RECON_PASSIVE_DEC 0xbb #define MINOR_GET_DEC_CHAN_SW 0xbc #define MINOR_SET_DEC_CHAN_SW 0xbd #define MINOR_CTRL_DEC_CHAN_SCALE 0xbe #define MINOR_SET_REMOTE_REPLAY 0xbf #define MINOR_GET_REMOTE_REPLAY 0xc0 #define MINOR_CTRL_REMOTE_REPLAY 0xc1 #define MINOR_SET_DISP_CFG 0xc2 #define MINOR_GET_DISP_CFG 0xc3 #define MINOR_SET_PLANTABLE 0xc4 #define MINOR_GET_PLANTABLE 0xc5 #define MINOR_START_PPPPOE 0xc6 #define MINOR_STOP_PPPPOE 0xc7 #define MINOR_UPLOAD_LOGO 0xc8 #define MINOR_LOCAL_PIN 0xc9 #define MINOR_LOCAL_DIAL 0xca #define MINOR_SMS_CONTROL 0xcb #define MINOR_CALL_ONLINE 0xcc #define MINOR_REMOTE_PIN 0xcd #define MINOR_REMOTE_BYPASS 0xd0 #define MINOR_REMOTE_UNBYPASS 0xd1 #define MINOR_REMOTE_SET_ALARMIN_CFG 0xd2 #define MINOR_REMOTE_GET_ALARMIN_CFG 0xd3 #define MINOR_REMOTE_SET_ALARMOUT_CFG 0xd4 #define MINOR_REMOTE_GET_ALARMOUT_CFG 0xd5 #define MINOR_REMOTE_ALARMOUT_OPEN_MAN 0xd6 #define MINOR_REMOTE_ALARMOUT_CLOSE_MAN 0xd7 #define MINOR_REMOTE_ALARM_ENABLE_CFG 0xd8 #define MINOR_DBDATA_OUTPUT 0xd9 #define MINOR_DBDATA_INPUT 0xda #define MINOR_MU_SWITCH 0xdb #define MINOR_MU_PTZ 0xdc #define MINOR_DELETE_LOGO 0xdd #define MINOR_REMOTE_INQUEST_DEL_FILE 0xde #define MINOR_LOCAL_CONF_REB_RAID 0x101 #define MINOR_LOCAL_CONF_SPARE 0x102 #define MINOR_LOCAL_ADD_RAID 0x103 #define MINOR_LOCAL_DEL_RAID 0x104 #define MINOR_LOCAL_MIG_RAID 0x105 #define MINOR_LOCAL_REB_RAID 0x106 #define MINOR_LOCAL_QUICK_CONF_RAID 0x107 #define MINOR_LOCAL_ADD_VD 0x108 #define MINOR_LOCAL_DEL_VD 0x109 #define MINOR_LOCAL_RP_VD 0x10a #define MINOR_LOCAL_FORMAT_EXPANDVD 0X10b #define MINOR_LOCAL_RAID_UPGRADE 0X10c #define MINOR_LOCAL_STOP_RAID 0x10d #define MINOR_REMOTE_CONF_REB_RAID 0x111 #define MINOR_REMOTE_CONF_SPARE 0x112 #define MINOR_REMOTE_ADD_RAID 0x113 #define MINOR_REMOTE_DEL_RAID 0x114 #define MINOR_REMOTE_MIG_RAID 0x115 #define MINOR_REMOTE_REB_RAID 0x116 #define MINOR_REMOTE_QUICK_CONF_RAID 0x117 #define MINOR_REMOTE_ADD_VD 0x118 #define MINOR_REMOTE_DEL_VD 0x119 #define MINOR_REMOTE_RP_VD 0x11a #define MINOR_REMOTE_FORMAT_EXPANDVD 0X11b #define MINOR_REMOTE_RAID_UPGRADE 0X11c #define MINOR_REMOTE_STOP_RAID 0x11d #define MINOR_LOCAL_START_PIC_REC 0x121 #define MINOR_LOCAL_STOP_PIC_REC 0x122 #define MINOR_LOCAL_SET_SNMP 0x125 #define MINOR_LOCAL_TAG_OPT 0x126 #define MINOR_REMOTE_START_PIC_REC 0x131 #define MINOR_REMOTE_STOP_PIC_REC 0x132 #define MINOR_REMOTE_SET_SNMP 0x135 #define MINOR_REMOTE_TAG_OPT 0x136 #define MINOR_REMOTE_LOGIN_LOCK 0x137 #define MINOR_REMOTE_LOGIN_UNLOCK 0x138 #define MINOR_LOCAL_VOUT_SWITCH 0x140 #define MINOR_STREAM_CABAC 0x141 #define MINOR_LOCAL_SPARE_OPT 0x142 #define MINOR_REMOTE_SPARE_OPT 0x143 #define MINOR_LOCAL_IPCCFGFILE_OUTPUT 0x144 #define MINOR_LOCAL_IPCCFGFILE_INPUT 0x145 #define MINOR_LOCAL_IPC_UPGRADE 0x146 #define MINOR_REMOTE_IPCCFGFILE_OUTPUT 0x147 #define MINOR_REMOTE_IPCCFGFILE_INPUT 0x148 #define MINOR_REMOTE_IPC_UPGRADE 0x149 #define MINOR_LOCAL_UNLOAD_HDISK 0x150 #define MINOR_LOCAL_AUDIO_MIX 0x151 #define MINOR_REMOTE_AUDIO_MIX 0x152 #define MINOR_LOCAL_TRIAL_PAUSE 0x153 #define MINOR_LOCAL_TRIAL_RESUME 0x154 #define MINOR_REMOTE_TRIAL_PAUSE 0x155 #define MINOR_REMOTE_TRIAL_RESUME 0x156 #define MINOR_REMOTE_MODIFY_VERIFICATION_CODE 0x157 #define MINOR_LOCAL_MAKECALL 0x180 #define MINOR_LOCAL_REJECTCALL 0x181 #define MINOR_LOCAL_ANSWERCALL 0x182 #define MINOR_LOCAL_HANGUPCALL 0x183 #define MINOR_REMOTE_MAKECALL 0x188 #define MINOR_REMOTE_REJECTCALL 0x189 #define MINOR_REMOTE_ANSWERCALL 0x18a #define MINOR_REMOTE_HANGUPCALL 0x18b #define MINOR_SET_MULTI_MASTER 0x201 #define MINOR_SET_MULTI_SLAVE 0x202 #define MINOR_CANCEL_MULTI_MASTER 0x203 #define MINOR_CANCEL_MULTI_SLAVE 0x204 #define MINOR_DISPLAY_LOGO 0x205 #define MINOR_HIDE_LOGO 0x206 #define MINOR_SET_DEC_DELAY_LEVEL 0x207 #define MINOR_SET_BIGSCREEN_DIPLAY_AREA 0x208 #define MINOR_CUT_VIDEO_SOURCE 0x209 #define MINOR_SET_BASEMAP_AREA 0x210 #define MINOR_DOWNLOAD_BASEMAP 0x211 #define MINOR_CUT_BASEMAP 0x212 #define MINOR_CONTROL_ELEC_ENLARGE 0x213 #define MINOR_SET_OUTPUT_RESOLUTION 0x214 #define MINOR_SET_TRANCSPARENCY 0X215 #define MINOR_SET_OSD 0x216 #define MINOR_RESTORE_DEC_STATUS 0x217 #define MINOR_SCREEN_OPEN_SCREEN 0x218 #define MINOR_SCREEN_CLOSE_SCREEN 0x219 #define MINOR_SCREEN_SWITCH_SIGNAL 0x21a #define MINOR_SCREEN_MODIFY_NETWORK 0x21b #define MINOR_SCREEN_MODIFY_LEDRES 0x21c #define MINOR_SCREEN_SHOW_NORMAL 0x21d #define MINOR_SCREEN_SHOW_TILE 0x21e #define MINOR_SCREEN_DEC_NORMAL 0x21f #define MINOR_SCREEN_DEC_LOWLATENCY 0x220 #define MINOR_SCREEN_MODIFY_SELFRES 0x221 #define MINOR_SCREEN_OUTPUT_POSITION 0x222 #define MINOR_SCREEN_IMAGE_ENHANCE 0x223 #define MINOR_SCREEN_JOIN_SIGNAL 0x224 #define MINOR_SCREEN_SIGNAL_OSD 0x225 #define MINOR_SCREEN_ASSOCIATED_INTERACTION 0x226 #define MINOR_SCREEN_MODIFY_MATRIX 0x227 #define MINOR_SCREEN_WND_TOP_KEEP 0x228 #define MINOR_SCREEN_WND_OPEN_KEEP 0x229 #define MINOR_SCREEN_WALL_MIRROR 0x22a #define MINOR_SCREEN_UPLOAD_BASEMAP 0x22b #define MINOR_SCREEN_SHOW_BASEMAP 0x22c #define MINOR_SCREEN_HIDE_BASEMAP 0x22d #define MINOR_SCREEN_MODIFY_SERIAL 0x22e #define MINOR_SCREEN_SET_INPUT 0x251 #define MINOR_SCREEN_SET_OUTPUT 0x252 #define MINOR_SCREEN_SET_OSD 0x253 #define MINOR_SCREEN_SET_LOGO 0x254 #define MINOR_SCREEN_SET_LAYOUT 0x255 #define MINOR_SCREEN_PICTUREPREVIEW 0x256 #define MINOR_SCREEN_GET_OSD 0x257 #define MINOR_SCREEN_GET_LAYOUT 0x258 #define MINOR_SCREEN_LAYOUT_CTRL 0x259 #define MINOR_GET_ALL_VALID_WND 0x260 #define MINOR_GET_SIGNAL_WND 0x261 #define MINOR_WINDOW_CTRL 0x262 #define MINOR_GET_LAYOUT_LIST 0x263 #define MINOR_LAYOUT_CTRL 0x264 #define MINOR_SET_LAYOUT 0x265 #define MINOR_GET_SIGNAL_LIST 0x266 #define MINOR_GET_PLAN_LIST 0x267 #define MINOR_SET_PLAN 0x268 #define MINOR_CTRL_PLAN 0x269 #define MINOR_CTRL_SCREEN 0x270 #define MINOR_ADD_NETSIG 0x271 #define MINOR_SET_NETSIG 0x272 #define MINOR_SET_DECBDCFG 0x273 #define MINOR_GET_DECBDCFG 0x274 #define MINOR_GET_DEVICE_STATUS 0x275 #define MINOR_UPLOAD_PICTURE 0x276 #define MINOR_SET_USERPWD 0x277 #define MINOR_ADD_LAYOUT 0x278 #define MINOR_DEL_LAYOUT 0x279 #define MINOR_DEL_NETSIG 0x280 #define MINOR_ADD_PLAN 0x281 #define MINOR_DEL_PLAN 0x282 #define MINOR_GET_EXTERNAL_MATRIX_CFG 0x283 #define MINOR_SET_EXTERNAL_MATRIX_CFG 0x284 #define MINOR_GET_USER_CFG 0x285 #define MINOR_SET_USER_CFG 0x286 #define MINOR_GET_DISPLAY_PANEL_LINK_CFG 0x287 #define MINOR_SET_DISPLAY_PANEL_LINK_CFG 0x288 #define MINOR_GET_WALLSCENE_PARAM 0x289 #define MINOR_SET_WALLSCENE_PARAM 0x28a #define MINOR_GET_CURRENT_WALLSCENE 0x28b #define MINOR_SWITCH_WALLSCENE 0x28c #define MINOR_SIP_LOGIN 0x28d #define MINOR_VOIP_START 0x28e #define MINOR_VOIP_STOP 0x28f #define MINOR_WIN_TOP 0x290 #define MINOR_WIN_BOTTOM 0x291 #define MINOR_LOCAL_LOAD_HDISK 0x300 #define MINOR_LOCAL_DELETE_HDISK 0x301 #define MINOR_LOCAL_MAIN_AUXILIARY_PORT_SWITCH 0X302 #define MINOR_LOCAL_HARD_DISK_CHECK 0x303 #define MINOR_LOCAL_CFG_DEVICE_TYPE 0x310 #define MINOR_REMOTE_CFG_DEVICE_TYPE 0x311 #define MINOR_LOCAL_CFG_WORK_HOT_SERVER 0x312 #define MINOR_REMOTE_CFG_WORK_HOT_SERVER 0x313 #define MINOR_LOCAL_DELETE_WORK 0x314 #define MINOR_REMOTE_DELETE_WORK 0x315 #define MINOR_LOCAL_ADD_WORK 0x316 #define MINOR_REMOTE_ADD_WORK 0x317 #define MINOR_LOCAL_IPCHEATMAP_OUTPUT 0x318 #define MINOR_LOCAL_IPCHEATFLOW_OUTPUT 0x319 #define MINOR_REMOTE_SMS_SEND 0x350 #define MINOR_LOCAL_SMS_SEND 0x351 #define MINOR_ALARM_SMS_SEND 0x352 #define MINOR_SMS_RECV 0x353 #define MINOR_LOCAL_SMS_SEARCH 0x354 #define MINOR_REMOTE_SMS_SEARCH 0x355 #define MINOR_LOCAL_SMS_READ 0x356 #define MINOR_REMOTE_SMS_READ 0x357 #define MINOR_REMOTE_DIAL_CONNECT 0x358 #define MINOR_REMOTE_DIAL_DISCONN 0x359 #define MINOR_LOCAL_WHITELIST_SET 0x35A #define MINOR_REMOTE_WHITELIST_SET 0x35B #define MINOR_LOCAL_DIAL_PARA_SET 0x35C #define MINOR_REMOTE_DIAL_PARA_SET 0x35D #define MINOR_LOCAL_DIAL_SCHEDULE_SET 0x35E #define MINOR_REMOTE_DIAL_SCHEDULE_SET 0x35F #define MINOR_PLAT_OPER 0x360 #define MINOR_REMOTE_CFG_POE_WORK_MODE 0x361 #define MINOR_LOCAL_CFG_POE_WORK_MODE 0x362 #define MINOR_REMOTE_CFG_FACE_CONTRAST 0x363 #define MINOR_LOCAL_CFG_FACE_CONTRAST 0x364 #define MINOR_REMOTE_CFG_WHITELIST_FACE_CONTRAST 0x365 #define MINOR_LOCAL_CFG_WHITELIST_FACE_CONTRAST 0x366 #define MINOR_LOCAL_CHECK_TIME 0x367 #define MINOR_REMOTE_OPEN_DOOR 0x400 #define MINOR_REMOTE_CLOSE_DOOR 0x401 #define MINOR_REMOTE_ALWAYS_OPEN 0x402 #define MINOR_REMOTE_ALWAYS_CLOSE 0x403 #define MINOR_REMOTE_CHECK_TIME 0x404 #define MINOR_NTP_CHECK_TIME 0x405 #define MINOR_REMOTE_CLEAR_CARD 0x406 #define MINOR_REMOTE_RESTORE_CFG 0x407 #define MINOR_ALARMIN_ARM 0x408 #define MINOR_ALARMIN_DISARM 0x409 #define MINOR_LOCAL_RESTORE_CFG 0x40a #define MINOR_REMOTE_CAPTURE_PIC 0x40b #define MINOR_MOD_NET_REPORT_CFG 0x40c #define MINOR_MOD_GPRS_REPORT_PARAM 0x40d #define MINOR_MOD_REPORT_GROUP_PARAM 0x40e #define MINOR_UNLOCK_PASSWORD_OPEN_DOOR 0x40f #define MINOR_AUTO_RENUMBER 0x410 #define MINOR_AUTO_COMPLEMENT_NUMBER 0x411 #define MINOR_NORMAL_CFGFILE_INPUT 0x412 #define MINOR_NORMAL_CFGFILE_OUTTPUT 0x413 #define MINOR_CARD_RIGHT_INPUT 0x414 #define MINOR_CARD_RIGHT_OUTTPUT 0x415 #define MINOR_LOCAL_USB_UPGRADE 0x416 #define MINOR_REMOTE_VISITOR_CALL_LADDER 0x417 #define MINOR_REMOTE_HOUSEHOLD_CALL_LADDER 0x418 #define MINOR_REMOTE_ACTUAL_GUARD 0x419 #define MINOR_REMOTE_ACTUAL_UNGUARD 0x41a #define MINOR_REMOTE_CONTROL_NOT_CODE_OPER_FAILED 0x41b #define MINOR_REMOTE_CONTROL_CLOSE_DOOR 0x41c #define MINOR_REMOTE_CONTROL_OPEN_DOOR 0x41d #define MINOR_REMOTE_CONTROL_ALWAYS_OPEN_DOOR 0x41e #define MINOR_OPERATION_CUSTOM1 0x900 #define MINOR_OPERATION_CUSTOM2 0x901 #define MINOR_OPERATION_CUSTOM3 0x902 #define MINOR_OPERATION_CUSTOM4 0x903 #define MINOR_OPERATION_CUSTOM5 0x904 #define MINOR_OPERATION_CUSTOM6 0x905 #define MINOR_OPERATION_CUSTOM7 0x906 #define MINOR_OPERATION_CUSTOM8 0x907 #define MINOR_OPERATION_CUSTOM9 0x908 #define MINOR_OPERATION_CUSTOM10 0x909 #define MINOR_OPERATION_CUSTOM11 0x90a #define MINOR_OPERATION_CUSTOM12 0x90b #define MINOR_OPERATION_CUSTOM13 0x90c #define MINOR_OPERATION_CUSTOM14 0x90d #define MINOR_OPERATION_CUSTOM15 0x90e #define MINOR_OPERATION_CUSTOM16 0x90f #define MINOR_OPERATION_CUSTOM17 0x910 #define MINOR_OPERATION_CUSTOM18 0x911 #define MINOR_OPERATION_CUSTOM19 0x912 #define MINOR_OPERATION_CUSTOM20 0x913 #define MINOR_OPERATION_CUSTOM21 0x914 #define MINOR_OPERATION_CUSTOM22 0x915 #define MINOR_OPERATION_CUSTOM23 0x916 #define MINOR_OPERATION_CUSTOM24 0x917 #define MINOR_OPERATION_CUSTOM25 0x918 #define MINOR_OPERATION_CUSTOM26 0x919 #define MINOR_OPERATION_CUSTOM27 0x91a #define MINOR_OPERATION_CUSTOM28 0x91b #define MINOR_OPERATION_CUSTOM29 0x91c #define MINOR_OPERATION_CUSTOM30 0x91d #define MINOR_OPERATION_CUSTOM31 0x91e #define MINOR_OPERATION_CUSTOM32 0x91f #define MINOR_OPERATION_CUSTOM33 0x920 #define MINOR_OPERATION_CUSTOM34 0x921 #define MINOR_OPERATION_CUSTOM35 0x922 #define MINOR_OPERATION_CUSTOM36 0x923 #define MINOR_OPERATION_CUSTOM37 0x924 #define MINOR_OPERATION_CUSTOM38 0x925 #define MINOR_OPERATION_CUSTOM39 0x926 #define MINOR_OPERATION_CUSTOM40 0x927 #define MINOR_OPERATION_CUSTOM41 0x928 #define MINOR_OPERATION_CUSTOM42 0x929 #define MINOR_OPERATION_CUSTOM43 0x92a #define MINOR_OPERATION_CUSTOM44 0x92b #define MINOR_OPERATION_CUSTOM45 0x92c #define MINOR_OPERATION_CUSTOM46 0x92d #define MINOR_OPERATION_CUSTOM47 0x92e #define MINOR_OPERATION_CUSTOM48 0x92f #define MINOR_OPERATION_CUSTOM49 0x930 #define MINOR_OPERATION_CUSTOM50 0x931 #define MINOR_OPERATION_CUSTOM51 0x932 #define MINOR_OPERATION_CUSTOM52 0x933 #define MINOR_OPERATION_CUSTOM53 0x934 #define MINOR_OPERATION_CUSTOM54 0x935 #define MINOR_OPERATION_CUSTOM55 0x936 #define MINOR_OPERATION_CUSTOM56 0x937 #define MINOR_OPERATION_CUSTOM57 0x938 #define MINOR_OPERATION_CUSTOM58 0x939 #define MINOR_OPERATION_CUSTOM59 0x93a #define MINOR_OPERATION_CUSTOM60 0x93b #define MINOR_OPERATION_CUSTOM61 0x93c #define MINOR_OPERATION_CUSTOM62 0x93d #define MINOR_OPERATION_CUSTOM63 0x93e #define MINOR_OPERATION_CUSTOM64 0x93f #define MINOR_SET_WIFI_PARAMETER 0x950 #define MINOR_EZVIZ_LOGIN 0x951 #define MINOR_EZVIZ_LOGINOUT 0x952 #define MINOR_LOCK_ADD 0x953 #define MINOR_LOCK_DELETE 0x954 #define MINOR_LOCK_GET_STATUS 0x955 #define MINOR_LOCK_SET_TMP_PASSWORD 0x956 #define MINOR_LOCK_SET_SILENT_MODE 0x957 #define MINOR_LOCK_SET_LATE_WARNING 0x958 #define MINOR_LOCK_IPC_ADD 0x959 #define MINOR_LOCK_IPC_REMOVE 0x95a #define MINOR_LOCK_DETECTOR_ADD 0x95b #define MINOR_LOCK_DETECTOR_REMOVE 0x95c #define MINOR_LOCK_MESSAGE_REMINDING_OPEN 0x95d #define MINOR_LOCK_MESSAGE_REMINDING_CLOSE 0x95e #define MINOR_LOCK_SET_HEART_BEAT 0x95f #define MINOR_LOCK_REBOOT 0x960 #define MINOR_LOCK_CLEAR_USER 0x961 #define MINOR_LOCK_FORMAT 0x962 #define MINOR_LOCK_FINGER_CHANGE 0x963 #define MINOR_LOCK_PASSWORD_CHANGE 0x964 #define MINOR_LOCK_CARD_CHANGE 0x965 #define MINOR_LOCK_USER_CHANGE 0x966 #define MINOR_LOCK_SYSTEM_CHANGE 0x967 #define MINOR_LOCK_CHANGE_ADD_UESR 0x968 #define MINOR_LOCK_CHANGE_DEL_UESR 0x969 #define MINOR_LOCK_CHANGE_CUSTOM_USER_NAME 0x96a #define MINOR_LOCK_CHANGE_REMOTE_DEVICE 0x96b #define MINOR_LOCK_CHANGE_ADD_FP 0x96c #define MINOR_LOCK_CHANGE_DEL_FP 0x96d #define MINOR_LOCK_CHANGE_ADD_PASSWORD 0x96e #define MINOR_LOCK_CHANGE_DEL_PASSWORD 0x96f #define MINOR_LOCK_CHANGE_ADD_CARD 0x970 #define MINOR_LOCK_CHANGE_DEL_CARD 0x971 #define MINOR_LOCK_NETWORK_SWITCH 0x972 #define MINOR_LOCK_CLEAR_NETWORK_DATA 0x973 #define MINOR_LOCK_CLEAR_HOST_USER 0x974 #define MINOR_LOCK_CLEAR_GUEST_USER 0x975 #define MINOR_LOCK_CLEAN_ALL_REMOTE_DEVICE 0x976 #define MINOR_LOCK_CLEAN_NORMAL_USER_FINGRT 0x977 #define MINOR_LOCK_CLEAN_ALL_CARD 0x978 #define MINOR_LOCK_CLEAN_ALL_PASSWORD 0x979 #define MINOR_START_WIRELESSSERVER 0x97a #define MINOR_STOP_WIRELESSSERVER 0x97b #define MINOR_EMERGENCY_CARD_AUTH_NORMAL_CARD 0x97c #define MINOR_CHANGE_ALWAYS_OPEN_RIGHT 0x97d #define MINOR_LOCK_DOOR_BELL_EVENT 0x97e #define MINOR_ALARMHOST_GUARD 0x1010 #define MINOR_ALARMHOST_UNGUARD 0x1011 #define MINOR_ALARMHOST_BYPASS 0x1012 #define MINOR_ALARMHOST_DURESS_ACCESS 0x1013 #define MINOR_ALARMHOST_ALARM_OUTPUT 0x1019 #define MINOR_ALARMHOST_ACCESS_OPEN 0x101a #define MINOR_ALARMHOST_ACCESS_CLOSE 0x101b #define MINOR_ALARMHOST_SIREN_OPEN 0x101c #define MINOR_ALARMHOST_SIREN_CLOSE 0x101d #define MINOR_ALARMHOST_MOD_ZONE_CONFIG 0x101e #define MINOR_ALARMHOST_MOD_ALARMOUT_CONIFG 0x101f #define MINOR_ALARMHOST_MOD_ANALOG_CONFIG 0x1020 #define MINOR_ALARMHOST_RS485_CONFIG 0x1021 #define MINOR_ALARMHOST_PHONE_CONFIG 0x1022 #define MINOR_ALARMHOST_ADD_ADMIN 0x1023 #define MINOR_ALARMHOST_MOD_ADMIN_PARAM 0x1024 #define MINOR_ALARMHOST_DEL_ADMIN 0x1025 #define MINOR_ALARMHOST_ADD_NETUSER 0x1026 #define MINOR_ALARMHOST_MOD_NETUSER_PARAM 0x1027 #define MINOR_ALARMHOST_DEL_NETUSER 0x1028 #define MINOR_ALARMHOST_ADD_OPERATORUSER 0x1029 #define MINOR_ALARMHOST_MOD_OPERATORUSER_PW 0x102a #define MINOR_ALARMHOST_DEL_OPERATORUSER 0x102b #define MINOR_ALARMHOST_ADD_KEYPADUSER 0x102c #define MINOR_ALARMHOST_DEL_KEYPADUSER 0x102d #define MINOR_ALARMHOST_MOD_HOST_CONFIG 0x1032 #define MINOR_ALARMHOST_RESTORE_BYPASS 0x1033 #define MINOR_ALARMHOST_ALARMOUT_OPEN 0x1034 #define MINOR_ALARMHOST_ALARMOUT_CLOSE 0x1035 #define MINOR_ALARMHOST_MOD_SUBSYSTEM_PARAM 0x1036 #define MINOR_ALARMHOST_GROUP_BYPASS 0x1037 #define MINOR_ALARMHOST_RESTORE_GROUP_BYPASS 0x1038 #define MINOR_ALARMHOST_MOD_GRPS_PARAM 0x1039 #define MINOR_ALARMHOST_MOD_REPORT_MOD 0x103b #define MINOR_ALARMHOST_MOD_GATEWAY_PARAM 0x103c #define MINOR_STAY_ARM 0x104c #define MINOR_QUICK_ARM 0x104d #define MINOR_AUTOMATIC_ARM 0x104e #define MINOR_AUTOMATIC_DISARM 0x104f #define MINOR_KEYSWITCH_ARM 0x1050 #define MINOR_KEYSWITCH_DISARM 0x1051 #define MINOR_CLEAR_ALARM 0x1052 #define MINOR_MOD_FAULT_CFG 0x1053 #define MINOR_MOD_EVENT_TRIGGER_ALARMOUT_CFG 0x1054 #define MINOR_SEARCH_EXTERNAL_MODULE 0x1055 #define MINOR_REGISTER_EXTERNAL_MODULE 0x1056 #define MINOR_CLOSE_KEYBOARD_ALARM 0x1057 #define MINOR_MOD_3G_PARAM 0x1058 #define MINOR_MOD_PRINT_PARAM 0x1059 #define MINOR_ALARMHOST_SD_CARD_FORMAT 0x1060 #define MINOR_ALARMHOST_SUBSYSTEM_UPGRADE 0x1061 #define MINOR_PLAN_ARM_CFG 0x1062 #define MINOR_PHONE_ARM 0x1063 #define MINOR_PHONE_STAY_ARM 0x1064 #define MINOR_PHONE_QUICK_ARM 0x1065 #define MINOR_PHONE_DISARM 0x1066 #define MINOR_PHONE_CLEAR_ALARM 0x1067 #define MINOR_WHITELIST_CFG 0x1068 #define MINOR_TIME_TRIGGER_CFG 0x1069 #define MINOR_CAPTRUE_CFG 0x106a #define MINOR_TAMPER_CFG 0x106b #define MINOR_REMOTE_KEYPAD_UPGRADE 0x106c #define MINOR_ONETOUCH_AWAY_ARMING 0x106d #define MINOR_ONETOUCH_STAY_ARMING 0x106e #define MINOR_SINGLE_PARTITION_ARMING_OR_DISARMING 0x106f #define MINOR_CARD_CONFIGURATION 0x1070 #define MINOR_CARD_ARMING_OR_DISARMING 0x1071 #define MINOR_EXPENDING_NETCENTER_CONFIGURATION 0x1072 #define MINOR_NETCARD_CONFIGURATION 0x1073 #define MINOR_DDNS_CONFIGURATION 0x1074 #define MINOR_RS485BUS_CONFIGURATION 0x1075 #define MINOR_RS485BUS_RE_REGISTRATION 0x1076 #define MINOR_REMOTE_OPEN_ELECTRIC_LOCK 0x1077 #define MINOR_REMOTE_CLOSE_ELECTRIC_LOCK 0x1078 #define MINOR_LOCAL_OPEN_ELECTRIC_LOCK 0x1079 #define MINOR_LOCAL_CLOSE_ELECTRIC_LOCK 0x107a #define MINOR_OPEN_ALARM_LAMP 0x107b #define MINOR_CLOSE_ALARM_LAMP 0x107c #define MINOR_TEMPORARY_PASSWORD 0x107d #define MINOR_HIDDNS_CONFIG 0x1082 #define MINOR_REMOTE_KEYBOARD_UPDATA 0x1083 #define MINOR_ZONE_ADD_DETECTOR 0x1084 #define MINOR_ZONE_DELETE_DETECTOR 0x1085 #define MINOR_QUERY_DETECTOR_SIGNAL 0x1086 #define MINOR_QUERY_DETECTOR_BATTERY 0x1087 #define MINOR_SET_DETECTOR_GUARD 0x1088 #define MINOR_SET_DETECTOR_UNGUARD 0x1089 #define MINOR_OPEN_VOICE 0x108b #define MINOR_CLOSE_VOICE 0x108c #define MINOR_ENABLE_FUNCTION_KEY 0x108d #define MINOR_DISABLE_FUNCTION_KEY 0x108e #define MINOR_READ_CARD 0x108f #define MINOR_START_BROADCAST 0x1090 #define MINOR_STOP_BROADCAST 0x1091 #define MINOR_REMOTE_ZONE_MODULE_UPGRADE 0x1092 #define MINOR_NETWORK_MODULE_EXTEND 0x1093 #define MINOR_ADD_CONTROLLER 0x1094 #define MINOR_DELETE_CONTORLLER 0x1095 #define MINOR_REMOTE_NETWORKMODULE_UPGRADE 0x1096 #define MINOR_WIRELESS_OUTPUT_ADD 0x1097 #define MINOR_WIRELESS_OUTPUT_DEL 0x1098 #define MINOR_WIRELESS_REPEATER_ADD 0x1099 #define MINOR_WIRELESS_REPEATER_DEL 0x109a #define MINOR_PHONELIST_CFG 0x109b #define MINOR_RF_SIGNAL_CHECK 0x109c #define MINOR_USB_UPGRADE 0x109d #define MINOR_DOOR_TIME_REMINDER_CFG 0x109f #define MINOR_WIRELESS_SIREN_ADD 0x1100 #define MINOR_WIRELESS_SIREN_DEL 0x1101 #define MINOR_OUT_SCALE_OPEN 0x1102 #define MINOR_OUT_SCALE_CLOSE 0x1103 #define MINOR_ALARMHOST_4G_MODULS_START 0x1108 #define MINOR_ALARMHOST_4G_MODULS_STOP 0x1109 #define MINOR_EZVIZ_CLOUD_START 0x1110 #define MINOR_EZVIZ_CLOUD_STOP 0x1111 #define MINOR_SIPUA_GRID_START 0x1112 #define MINOR_SIPUA_GRID_STOP 0x1113 #define MINOR_SET_TRIGGERMODE_CFG 0x1001 #define MINOR_GET_TRIGGERMODE_CFG 0x1002 #define MINOR_SET_IOOUT_CFG 0x1003 #define MINOR_GET_IOOUT_CFG 0x1004 #define MINOR_GET_TRIGGERMODE_DEFAULT 0x1005 #define MINOR_GET_ITCSTATUS 0x1006 #define MINOR_SET_STATUS_DETECT_CFG 0x1007 #define MINOR_GET_STATUS_DETECT_CFG 0x1008 #define MINOR_SET_VIDEO_TRIGGERMODE_CFG 0x1009 #define MINOR_GET_VIDEO_TRIGGERMODE_CFG 0x100a #define MINOR_LOCAL_ADD_CAR_INFO 0x2001 #define MINOR_LOCAL_MOD_CAR_INFO 0x2002 #define MINOR_LOCAL_DEL_CAR_INFO 0x2003 #define MINOR_LOCAL_FIND_CAR_INFO 0x2004 #define MINOR_LOCAL_ADD_MONITOR_INFO 0x2005 #define MINOR_LOCAL_MOD_MONITOR_INFO 0x2006 #define MINOR_LOCAL_DEL_MONITOR_INFO 0x2007 #define MINOR_LOCAL_FIND_MONITOR_INFO 0x2008 #define MINOR_LOCAL_FIND_NORMAL_PASS_INFO 0x2009 #define MINOR_LOCAL_FIND_ABNORMAL_PASS_INFO 0x200a #define MINOR_LOCAL_FIND_PEDESTRIAN_PASS_INFO 0x200b #define MINOR_LOCAL_PIC_PREVIEW 0x200c #define MINOR_LOCAL_SET_GATE_PARM_CFG 0x200d #define MINOR_LOCAL_GET_GATE_PARM_CFG 0x200e #define MINOR_LOCAL_SET_DATAUPLOAD_PARM_CFG 0x200f #define MINOR_LOCAL_GET_DATAUPLOAD_PARM_CFG 0x2010 #define MINOR_LOCAL_DEVICE_CONTROL 0x2011 #define MINOR_LOCAL_ADD_EXTERNAL_DEVICE_INFO 0x2012 #define MINOR_LOCAL_MOD_EXTERNAL_DEVICE_INFO 0x2013 #define MINOR_LOCAL_DEL_EXTERNAL_DEVICE_INFO 0x2014 #define MINOR_LOCAL_FIND_EXTERNAL_DEVICE_INFO 0x2015 #define MINOR_LOCAL_ADD_CHARGE_RULE 0x2016 #define MINOR_LOCAL_MOD_CHARGE_RULE 0x2017 #define MINOR_LOCAL_DEL_CHARGE_RULE 0x2018 #define MINOR_LOCAL_FIND_CHARGE_RULE 0x2019 #define MINOR_LOCAL_COUNT_NORMAL_CURRENTINFO 0x2020 #define MINOR_LOCAL_EXPORT_NORMAL_CURRENTINFO_REPORT 0x2021 #define MINOR_LOCAL_COUNT_ABNORMAL_CURRENTINFO 0x2022 #define MINOR_LOCAL_EXPORT_ABNORMAL_CURRENTINFO_REPORT 0x2023 #define MINOR_LOCAL_COUNT_PEDESTRIAN_CURRENTINFO 0x2024 #define MINOR_LOCAL_EXPORT_PEDESTRIAN_CURRENTINFO_REPORT 0x2025 #define MINOR_LOCAL_FIND_CAR_CHARGEINFO 0x2026 #define MINOR_LOCAL_COUNT_CAR_CHARGEINFO 0x2027 #define MINOR_LOCAL_EXPORT_CAR_CHARGEINFO_REPORT 0x2028 #define MINOR_LOCAL_FIND_SHIFTINFO 0x2029 #define MINOR_LOCAL_FIND_CARDINFO 0x2030 #define MINOR_LOCAL_ADD_RELIEF_RULE 0x2031 #define MINOR_LOCAL_MOD_RELIEF_RULE 0x2032 #define MINOR_LOCAL_DEL_RELIEF_RULE 0x2033 #define MINOR_LOCAL_FIND_RELIEF_RULE 0x2034 #define MINOR_LOCAL_GET_ENDETCFG 0x2035 #define MINOR_LOCAL_SET_ENDETCFG 0x2036 #define MINOR_LOCAL_SET_ENDEV_ISSUEDDATA 0x2037 #define MINOR_LOCAL_DEL_ENDEV_ISSUEDDATA 0x2038 #define MINOR_REMOTE_DEVICE_CONTROL 0x2101 #define MINOR_REMOTE_SET_GATE_PARM_CFG 0x2102 #define MINOR_REMOTE_GET_GATE_PARM_CFG 0x2103 #define MINOR_REMOTE_SET_DATAUPLOAD_PARM_CFG 0x2104 #define MINOR_REMOTE_GET_DATAUPLOAD_PARM_CFG 0x2105 #define MINOR_REMOTE_GET_BASE_INFO 0x2106 #define MINOR_REMOTE_GET_OVERLAP_CFG 0x2107 #define MINOR_REMOTE_SET_OVERLAP_CFG 0x2108 #define MINOR_REMOTE_GET_ROAD_INFO 0x2109 #define MINOR_REMOTE_START_TRANSCHAN 0x210a #define MINOR_REMOTE_GET_ECTWORKSTATE 0x210b #define MINOR_REMOTE_GET_ECTCHANINFO 0x210c #define MINOR_REMOTE_ADD_EXTERNAL_DEVICE_INFO 0x210d #define MINOR_REMOTE_MOD_EXTERNAL_DEVICE_INFO 0x210e #define MINOR_REMOTE_GET_ENDETCFG 0x210f #define MINOR_REMOTE_SET_ENDETCFG 0x2110 #define MINOR_REMOTE_ENDEV_ISSUEDDATA 0x2111 #define MINOR_REMOTE_DEL_ENDEV_ISSUEDDATA 0x2112 #define MINOR_REMOTE_ON_CTRL_LAMP 0x2115 #define MINOR_REMOTE_OFF_CTRL_LAMP 0x2116 #define MINOR_SET_VOICE_LEVEL_PARAM 0x2117 #define MINOR_SET_VOICE_INTERCOM_PARAM 0x2118 #define MINOR_SET_INTELLIGENT_PARAM 0x2119 #define MINOR_LOCAL_SET_RAID_SPEED 0x211a #define MINOR_REMOTE_SET_RAID_SPEED 0x211b #define MINOR_REMOTE_CREATE_STORAGE_POOL 0x211c #define MINOR_REMOTE_DEL_STORAGE_POOL 0x211d #define MINOR_REMOTE_DEL_PIC 0x2120 #define MINOR_REMOTE_DEL_RECORD 0x2121 #define MINOR_REMOTE_CLOUD_ENABLE 0x2123 #define MINOR_REMOTE_CLOUD_DISABLE 0x2124 #define MINOR_REMOTE_CLOUD_MODIFY_PARAM 0x2125 #define MINOR_REMOTE_CLOUD_MODIFY_VOLUME 0x2126 #define MINOR_REMOTE_GET_GB28181_SERVICE_PARAM 0x2127 #define MINOR_REMOTE_SET_GB28181_SERVICE_PARAM 0x2128 #define MINOR_LOCAL_GET_GB28181_SERVICE_PARAM 0x2129 #define MINOR_LOCAL_SET_GB28181_SERVICE_PARAM 0x212a #define MINOR_REMOTE_SET_SIP_SERVER 0x212b #define MINOR_LOCAL_SET_SIP_SERVER 0x212c #define MINOR_LOCAL_BLACKWHITEFILE_OUTPUT 0x212d #define MINOR_LOCAL_BLACKWHITEFILE_INPUT 0x212e #define MINOR_REMOTE_BALCKWHITECFGFILE_OUTPUT 0x212f #define MINOR_REMOTE_BALCKWHITECFGFILE_INPUT 0x2130 #define MINOR_REMOTE_CREATE_MOD_VIEWLIB_SPACE 0x2200 #define MINOR_REMOTE_DELETE_VIEWLIB_FILE 0x2201 #define MINOR_REMOTE_DOWNLOAD_VIEWLIB_FILE 0x2202 #define MINOR_REMOTE_UPLOAD_VIEWLIB_FILE 0x2203 #define MINOR_LOCAL_CREATE_MOD_VIEWLIB_SPACE 0x2204 #define MINOR_LOCAL_SET_DEVICE_ACTIVE 0x3000 #define MINOR_REMOTE_SET_DEVICE_ACTIVE 0x3001 #define MINOR_LOCAL_PARA_FACTORY_DEFAULT 0x3002 #define MINOR_REMOTE_PARA_FACTORY_DEFAULT 0x3003 #define MINOR_UPLAOD_STATIC_MATERIAL 0x2401 #define MINOR_UPLOAD_DYNAMIC_MATERIAL 0x2402 #define MINOR_DELETE_MATERIAL 0x2403 #define MINOR_DOWNLOAD_STATIC_MATERIAL 0x2404 #define MINOR_COVER_STATIC_MATERIAL 0x2405 #define MINOR_APPROVE_MATERIAL 0x2406 #define MINOR_UPLAOD_PROGRAM 0x2407 #define MINOR_DOWNLOAD_PROGRAM 0x2408 #define MINOR_DELETE_PROGRAM 0x2409 #define MINOR_MODIFY_PROGRAM 0x240a #define MINOR_APPROVE_PRAGRAM 0x240b #define MINOR_UPLAOD_SCHEDULE 0x240c #define MINOR_DOWNLOAD_SCHEDULE 0x240d #define MINOR_DELETE_SCHEDULE 0x240e #define MINOR_MODIFY_SCHEDULE 0x240f #define MINOR_RELEASE_SCHEDULE 0x2410 #define MINOR_ADD_TERMINAL 0x2411 #define MINOR_DELETE_TERMINAL 0x2412 #define MINOR_MODIFY_TERMIANL_PARAM 0x2413 #define MINOR_MODIFY_TERMIANL_PLAY_PARAM 0x2414 #define MINOR_ADD_TERMIANL_GROUP 0x2415 #define MINOR_MODIFY_TERMINAL_GROUP_PARAM 0x2416 #define MINOR_DELETE_TERMIANL_GROUP 0x2417 #define MINOR_TERMINAL_PLAY_CONTROL 0x2418 #define MINOR_TERMINAL_ON_OFF_LINE 0x2419 #define MINOR_SET_SWITCH_PLAN 0x241a #define MINOR_SET_VOLUME_PLAN 0x241b #define MINOR_TERMINAL_SCREENSHOT 0x241c #define MINOR_SYSTEM_TIME_CFG 0x241d #define MINOR_ADD_USER_CFG 0x241e #define MINOR_DEL_USER_CFG 0x241f #define MINOR_REMOTE_MANAGE_HDD 0x2420 #define MINOR_TERMINAL_UPDATE_START 0x2421 #define MINOR_SVR_RESTORE_DEFAULT_PARAM 0x2422 #define MINOR_SVR_REMOTE_RESTORE_FACTORY 0x2423 #define MINOR_SVR_REMOTE_REBOOT 0x2424 #define MINOR_SVR_MODIFY_NETWORK_PARAM 0x2425 #define MINOR_BACKUP_DATA 0xc41 #define MINOR_TRANSFER_DATA 0xc42 #define MINOR_RESTORE_DATA 0xc43 #define MINOR_SET_INPUT_PLAN 0xc44 #define MINOR_TERMINAL_ADB 0xc45 #define MINOR_TERMINAL_VOLUME 0xc46 #define MINOR_TERMINAL_LOGO 0xc47 #define MINOR_TERMINAL_DEFAULT_SCHEDULE 0xc48 #define MINOR_TERMINAL_PASSWORD 0xc49 #define MINOR_TERMINAL_IP 0xc4a #define MINOR_TERMINAL_RELATE_IPC 0xc4b #define MINOR_TERMINAL_SERVER 0xc4c #define MINOR_TERMINAL_SADP 0xc4d #define MINOR_TERMINAL_TIMEZONE 0xc4e #define MINOR_TERMINAL_TEMP_PROTECT 0xc4f #define MINOR_ADD_ORGANIZATION 0xc50 #define MINOR_DELETE_ORGANIZATION 0xc51 #define MINOR_MODIFY_ORGANIZATION 0xc52 #define MINOR_WEATHER_FACTORY 0xc53 #define MINOR_SADP_ENABLE 0xc54 #define MINOR_SSH_ENABLE 0xc55 #define MINOR_MODIFY_MATERIAL 0xc56 #define MINOR_INSERT_CHARACTER 0xc57 #define MINOR_REMOTE_CONFERENCE_CONFIG 0x2501 #define MINOR_REMOTE_TERMINAL_CONFIG 0x2502 #define MINOR_REMOTE_GROUP_CONFIG 0x2503 #define MINOR_REMOTE_CONFERENCE_CTRL 0x2504 #define MINOR_REMOTE_TERMINAL_CTRL 0x2505 #define MINOR_LOCAL_RESET_LOGIN_PASSWORD 0x2600 #define MINOR_REMOTE_RESET_LOGIN_PASSWORD 0x2601 #define MINOR_LOCAL_FACE_BASE_CREATE 0x2602 #define MINOR_REMOTE_FACE_BASE_CREATE 0x2603 #define MINOR_LOCAL_FACE_BASE_MODIFY 0x2604 #define MINOR_REMOTE_FACE_BASE_MODIFY 0x2605 #define MINOR_LOCAL_FACE_BASE_DELETE 0x2606 #define MINOR_REMOTE_FACE_BASE_DELETE 0x2607 #define MINOR_LOCAL_FACE_DATA_APPEND 0x2608 #define MINOR_REMOTE_FACE_DATA_APPEND 0x2609 #define MINOR_LOCAL_FACE_DATA_SEARCH 0x2610 #define MINOR_REMOTE_FACE_DATA_SEARCH 0x2611 #define MINOR_LOCAL_FACE_DATA_ANALYSIS 0x2612 #define MINOR_REMOTE_FACE_DATA_ANALYSIS 0x2613 #define MINOR_LOCAL_FACE_DATA_EDIT 0x2614 #define MINOR_REMOTE_FACE_DATA_EDIT 0x2615 #define MINOR_LOCAL_FACE_DATA_DELETE 0x2616 #define MINOR_REMOTE_FACE_DATA_DELET 0x2617 #define MINOR_LOCAL_VCA_ANALYSIS_CFG 0x2618 #define MINOR_REMOTE_VCA_ANALYSIS_CFG 0x2619 #define MINOR_LOCAL_FACE_BASE_IMPORT 0x261a #define MINOR_LOCAL_FACE_BASE_EXPORT 0x261b #define MINOR_REMOTE_CLUSTER_MODE_CONFIG 0x261c #define MINOR_LOCAL_CLUSTER_MODE_CONFIG 0x261d #define MINOR_REMOTE_CLUSTER_NETWORK_CONFIG 0x261e #define MINOR_LOCAL_CLUSTER_NETWORK_CONFIG 0x261f #define MINOR_REMOTE_CLUSTER_ADD_DEVICE 0x2620 #define MINOR_LOCAL_CLUSTER_ADD_DEVICE 0x2621 #define MINOR_REMOTE_CLUSTER_DEL_DEVICE 0x2622 #define MINOR_LOCAL_CLUSTER_DEL_DEVICE 0x2623 #define MINOR_REMOTE_HFPD_CFG 0x2624 #define MINOR_REMOTE_FACE_CONTRAST_TASK 0x2625 #define MINOR_REMOTE_IOTCFGFILE_INPUT 0x2627 #define MINOR_REMOTE_IOTCFGFILE_OUTPUT 0x2628 #define MINOR_LOCAL_IOT_ADD 0x2629 #define MINOR_REMOTE_IOT_ADD 0x262a #define MINOR_LOCAL_IOT_DEL 0x262b #define MINOR_REMOTE_IOT_DEL 0x262c #define MINOR_LOCAL_IOT_SET 0x262d #define MINOR_REMOTE_IOT_SET 0x262e #define MINOR_LOCAL_IOTCFGFILE_INPUT 0x262f #define MINOR_LOCAL_IOTCFGFILE_OUTPUT 0x2630 #define MAJOR_INFORMATION 0x4 #define MINOR_HDD_INFO 0xa1 #define MINOR_SMART_INFO 0xa2 #define MINOR_REC_START 0xa3 #define MINOR_REC_STOP 0xa4 #define MINOR_REC_OVERDUE 0xa5 #define MINOR_LINK_START 0xa6 #define MINOR_LINK_STOP 0xa7 #define MINOR_NET_DISK_INFO 0xa8 #define MINOR_RAID_INFO 0xa9 #define MINOR_RUN_STATUS_INFO 0xaa #define MINOR_SPARE_START_BACKUP 0xab #define MINOR_SPARE_STOP_BACKUP 0xac #define MINOR_SPARE_CLIENT_INFO 0xad #define MINOR_ANR_RECORD_START 0xae #define MINOR_ANR_RECORD_END 0xaf #define MINOR_ANR_ADD_TIME_QUANTUM 0xb0 #define MINOR_ANR_DEL_TIME_QUANTUM 0xb1 #define MINOR_PIC_REC_START 0xb3 #define MINOR_PIC_REC_STOP 0xb4 #define MINOR_PIC_REC_OVERDUE 0xb5 #define MINOR_CLIENT_LOGIN 0xb6 #define MINOR_CLIENT_RELOGIN 0xb7 #define MINOR_CLIENT_LOGOUT 0xb8 #define MINOR_CLIENT_SYNC_START 0xb9 #define MINOR_CLIENT_SYNC_STOP 0xba #define MINOR_CLIENT_SYNC_SUCC 0xbb #define MINOR_CLIENT_SYNC_EXCP 0xbc #define MINOR_GLOBAL_RECORD_ERR_INFO 0xbd #define MINOR_BUFFER_STATE 0xbe #define MINOR_DISK_ERRORINFO_V2 0xbf #define MINOR_CS_DATA_EXPIRED 0xc0 #define MINOR_PLAT_INFO 0xc1 #define MINOR_DIAL_STAT 0xc2 #define MINOR_UNLOCK_RECORD 0xc3 #define MINOR_VIS_ALARM 0xc4 #define MINOR_TALK_RECORD 0xc5 #define MINOR_ACCESSORIES_MESSAGE 0xc6 #define MINOR_KMS_EXPAMSION_DISK_INSERT 0xc7 #define MINOR_IPC_CONNECT 0xc8 #define MINOR_INTELLIGENT_BOARD_STATUS 0xc9 #define MINOR_IPC_CONNECT_STATUS 0xca #define MINOR_AUTO_TIMING 0xcb #define MINOR_EZVIZ_OPERATION 0xcc #define MINOR_CLUSTER_DEVICE_ONLINE 0xcd #define MINOR_CLUSTER_MGR_SERVICE_STARTUP 0xce #define MINOR_CLUSTER_BUSINESS_TRANSFER 0xcf #define MINOR_CLUSTER_STATUS 0xd0 #define MINOR_CLUSTER_CS_STATUS 0xd1 #define MINOR_CLUSTER_CM_STATUS 0xd2 #define MAJOR_EVENT 0x5 #define MINOR_LEGAL_CARD_PASS 0x01 #define MINOR_CARD_AND_PSW_PASS 0x02 #define MINOR_CARD_AND_PSW_FAIL 0x03 #define MINOR_CARD_AND_PSW_TIMEOUT 0x04 #define MINOR_CARD_AND_PSW_OVER_TIME 0x05 #define MINOR_CARD_NO_RIGHT 0x06 #define MINOR_CARD_INVALID_PERIOD 0x07 #define MINOR_CARD_OUT_OF_DATE 0x08 #define MINOR_INVALID_CARD 0x09 #define MINOR_ANTI_SNEAK_FAIL 0x0a #define MINOR_INTERLOCK_DOOR_NOT_CLOSE 0x0b #define MINOR_NOT_BELONG_MULTI_GROUP 0x0c #define MINOR_INVALID_MULTI_VERIFY_PERIOD 0x0d #define MINOR_MULTI_VERIFY_SUPER_RIGHT_FAIL 0x0e #define MINOR_MULTI_VERIFY_REMOTE_RIGHT_FAIL 0x0f #define MINOR_MULTI_VERIFY_SUCCESS 0x10 #define MINOR_LEADER_CARD_OPEN_BEGIN 0x11 #define MINOR_LEADER_CARD_OPEN_END 0x12 #define MINOR_ALWAYS_OPEN_BEGIN 0x13 #define MINOR_ALWAYS_OPEN_END 0x14 #define MINOR_LOCK_OPEN 0x15 #define MINOR_LOCK_CLOSE 0x16 #define MINOR_DOOR_BUTTON_PRESS 0x17 #define MINOR_DOOR_BUTTON_RELEASE 0x18 #define MINOR_DOOR_OPEN_NORMAL 0x19 #define MINOR_DOOR_CLOSE_NORMAL 0x1a #define MINOR_DOOR_OPEN_ABNORMAL 0x1b #define MINOR_DOOR_OPEN_TIMEOUT 0x1c #define MINOR_ALARMOUT_ON 0x1d #define MINOR_ALARMOUT_OFF 0x1e #define MINOR_ALWAYS_CLOSE_BEGIN 0x1f #define MINOR_ALWAYS_CLOSE_END 0x20 #define MINOR_MULTI_VERIFY_NEED_REMOTE_OPEN 0x21 #define MINOR_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS 0x22 #define MINOR_MULTI_VERIFY_REPEAT_VERIFY 0x23 #define MINOR_MULTI_VERIFY_TIMEOUT 0x24 #define MINOR_DOORBELL_RINGING 0x25 #define MINOR_FINGERPRINT_COMPARE_PASS 0x26 #define MINOR_FINGERPRINT_COMPARE_FAIL 0x27 #define MINOR_CARD_FINGERPRINT_VERIFY_PASS 0x28 #define MINOR_CARD_FINGERPRINT_VERIFY_FAIL 0x29 #define MINOR_CARD_FINGERPRINT_VERIFY_TIMEOUT 0x2a #define MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_PASS 0x2b #define MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL 0x2c #define MINOR_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT 0x2d #define MINOR_FINGERPRINT_PASSWD_VERIFY_PASS 0x2e #define MINOR_FINGERPRINT_PASSWD_VERIFY_FAIL 0x2f #define MINOR_FINGERPRINT_PASSWD_VERIFY_TIMEOUT 0x30 #define MINOR_FINGERPRINT_INEXISTENCE 0x31 #define MINOR_CARD_PLATFORM_VERIFY 0x32 #define MINOR_CALL_CENTER 0x33 #define MINOR_FIRE_RELAY_TURN_ON_DOOR_ALWAYS_OPEN 0x34 #define MINOR_FIRE_RELAY_RECOVER_DOOR_RECOVER_NORMAL 0x35 #define MINOR_FACE_AND_FP_VERIFY_PASS 0x36 #define MINOR_FACE_AND_FP_VERIFY_FAIL 0x37 #define MINOR_FACE_AND_FP_VERIFY_TIMEOUT 0x38 #define MINOR_FACE_AND_PW_VERIFY_PASS 0x39 #define MINOR_FACE_AND_PW_VERIFY_FAIL 0x3a #define MINOR_FACE_AND_PW_VERIFY_TIMEOUT 0x3b #define MINOR_FACE_AND_CARD_VERIFY_PASS 0x3c #define MINOR_FACE_AND_CARD_VERIFY_FAIL 0x3d #define MINOR_FACE_AND_CARD_VERIFY_TIMEOUT 0x3e #define MINOR_FACE_AND_PW_AND_FP_VERIFY_PASS 0x3f #define MINOR_FACE_AND_PW_AND_FP_VERIFY_FAIL 0x40 #define MINOR_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT 0x41 #define MINOR_FACE_CARD_AND_FP_VERIFY_PASS 0x42 #define MINOR_FACE_CARD_AND_FP_VERIFY_FAIL 0x43 #define MINOR_FACE_CARD_AND_FP_VERIFY_TIMEOUT 0x44 #define MINOR_EMPLOYEENO_AND_FP_VERIFY_PASS 0x45 #define MINOR_EMPLOYEENO_AND_FP_VERIFY_FAIL 0x46 #define MINOR_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT 0x47 #define MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS 0x48 #define MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL 0x49 #define MINOR_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT 0x4a #define MINOR_FACE_VERIFY_PASS 0x4b #define MINOR_FACE_VERIFY_FAIL 0x4c #define MINOR_EMPLOYEENO_AND_FACE_VERIFY_PASS 0x4d #define MINOR_EMPLOYEENO_AND_FACE_VERIFY_FAIL 0x4e #define MINOR_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT 0x4f #define MINOR_FACE_RECOGNIZE_FAIL 0x50 #define MINOR_FIRSTCARD_AUTHORIZE_BEGIN 0x51 #define MINOR_FIRSTCARD_AUTHORIZE_END 0x52 #define MINOR_DOORLOCK_INPUT_SHORT_CIRCUIT 0x53 #define MINOR_DOORLOCK_INPUT_BROKEN_CIRCUIT 0x54 #define MINOR_DOORLOCK_INPUT_EXCEPTION 0x55 #define MINOR_DOORCONTACT_INPUT_SHORT_CIRCUIT 0x56 #define MINOR_DOORCONTACT_INPUT_BROKEN_CIRCUIT 0x57 #define MINOR_DOORCONTACT_INPUT_EXCEPTION 0x58 #define MINOR_OPENBUTTON_INPUT_SHORT_CIRCUIT 0x59 #define MINOR_OPENBUTTON_INPUT_BROKEN_CIRCUIT 0x5a #define MINOR_OPENBUTTON_INPUT_EXCEPTION 0x5b #define MINOR_DOORLOCK_OPEN_EXCEPTION 0x5c #define MINOR_DOORLOCK_OPEN_TIMEOUT 0x5d #define MINOR_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE 0x5e #define MINOR_CALL_LADDER_RELAY_BREAK 0x5f #define MINOR_CALL_LADDER_RELAY_CLOSE 0x60 #define MINOR_AUTO_KEY_RELAY_BREAK 0x61 #define MINOR_AUTO_KEY_RELAY_CLOSE 0x62 #define MINOR_KEY_CONTROL_RELAY_BREAK 0x63 #define MINOR_KEY_CONTROL_RELAY_CLOSE 0x64 #define MINOR_EMPLOYEENO_AND_PW_PASS 0x65 #define MINOR_EMPLOYEENO_AND_PW_FAIL 0x66 #define MINOR_EMPLOYEENO_AND_PW_TIMEOUT 0x67 #define MINOR_HUMAN_DETECT_FAIL 0x68 #define MINOR_PEOPLE_AND_ID_CARD_COMPARE_PASS 0x69 #define MINOR_PEOPLE_AND_ID_CARD_COMPARE_FAIL 0x70 #define MINOR_CERTIFICATE_BLACK_LIST 0x71 #define MINOR_LEGAL_MESSAGE 0x72 #define MINOR_ILLEGAL_MESSAGE 0x73 #define MINOR_MAC_DETECT 0x74 #define MINOR_DOOR_OPEN_OR_DORMANT_FAIL 0x75 #define MINOR_AUTH_PLAN_DORMANT_FAIL 0x76 #define MINOR_CARD_ENCRYPT_VERIFY_FAIL 0x77 #define MINOR_SUBMARINEBACK_REPLY_FAIL 0x78 #define MINOR_DOOR_OPEN_OR_DORMANT_OPEN_FAIL 0x82 #define MINOR_HEART_BEAT 0x83 #define MINOR_DOOR_OPEN_OR_DORMANT_LINKAGE_OPEN_FAIL 0x84 #define MINOR_TRAILING 0x85 #define MINOR_REVERSE_ACCESS 0x86 #define MINOR_FORCE_ACCESS 0x87 #define MINOR_CLIMBING_OVER_GATE 0x88 #define MINOR_PASSING_TIMEOUT 0x89 #define MINOR_INTRUSION_ALARM 0x8a #define MINOR_FREE_GATE_PASS_NOT_AUTH 0x8b #define MINOR_DROP_ARM_BLOCK 0x8c #define MINOR_DROP_ARM_BLOCK_RESUME 0x8d #define MINOR_LOCAL_FACE_MODELING_FAIL 0x8e #define MINOR_STAY_EVENT 0x8f #define MINOR_PASSWORD_MISMATCH 0x97 #define MINOR_EMPLOYEE_NO_NOT_EXIST 0x98 #define MINOR_COMBINED_VERIFY_PASS 0x99 #define MINOR_COMBINED_VERIFY_TIMEOUT 0x9a #define MINOR_VERIFY_MODE_MISMATCH 0x9b #define MINOR_EVENT_CUSTOM1 0x500 #define MINOR_EVENT_CUSTOM2 0x501 #define MINOR_EVENT_CUSTOM3 0x502 #define MINOR_EVENT_CUSTOM4 0x503 #define MINOR_EVENT_CUSTOM5 0x504 #define MINOR_EVENT_CUSTOM6 0x505 #define MINOR_EVENT_CUSTOM7 0x506 #define MINOR_EVENT_CUSTOM8 0x507 #define MINOR_EVENT_CUSTOM9 0x508 #define MINOR_EVENT_CUSTOM10 0x509 #define MINOR_EVENT_CUSTOM11 0x50a #define MINOR_EVENT_CUSTOM12 0x50b #define MINOR_EVENT_CUSTOM13 0x50c #define MINOR_EVENT_CUSTOM14 0x50d #define MINOR_EVENT_CUSTOM15 0x50e #define MINOR_EVENT_CUSTOM16 0x50f #define MINOR_EVENT_CUSTOM17 0x510 #define MINOR_EVENT_CUSTOM18 0x511 #define MINOR_EVENT_CUSTOM19 0x512 #define MINOR_EVENT_CUSTOM20 0x513 #define MINOR_EVENT_CUSTOM21 0x514 #define MINOR_EVENT_CUSTOM22 0x515 #define MINOR_EVENT_CUSTOM23 0x516 #define MINOR_EVENT_CUSTOM24 0x517 #define MINOR_EVENT_CUSTOM25 0x518 #define MINOR_EVENT_CUSTOM26 0x519 #define MINOR_EVENT_CUSTOM27 0x51a #define MINOR_EVENT_CUSTOM28 0x51b #define MINOR_EVENT_CUSTOM29 0x51c #define MINOR_EVENT_CUSTOM30 0x51d #define MINOR_EVENT_CUSTOM31 0x51e #define MINOR_EVENT_CUSTOM32 0x51f #define MINOR_EVENT_CUSTOM33 0x520 #define MINOR_EVENT_CUSTOM34 0x521 #define MINOR_EVENT_CUSTOM35 0x522 #define MINOR_EVENT_CUSTOM36 0x523 #define MINOR_EVENT_CUSTOM37 0x524 #define MINOR_EVENT_CUSTOM38 0x525 #define MINOR_EVENT_CUSTOM39 0x526 #define MINOR_EVENT_CUSTOM40 0x527 #define MINOR_EVENT_CUSTOM41 0x528 #define MINOR_EVENT_CUSTOM42 0x529 #define MINOR_EVENT_CUSTOM43 0x52a #define MINOR_EVENT_CUSTOM44 0x52b #define MINOR_EVENT_CUSTOM45 0x52c #define MINOR_EVENT_CUSTOM46 0x52d #define MINOR_EVENT_CUSTOM47 0x52e #define MINOR_EVENT_CUSTOM48 0x52f #define MINOR_EVENT_CUSTOM49 0x530 #define MINOR_EVENT_CUSTOM50 0x531 #define MINOR_EVENT_CUSTOM51 0x532 #define MINOR_EVENT_CUSTOM52 0x533 #define MINOR_EVENT_CUSTOM53 0x534 #define MINOR_EVENT_CUSTOM54 0x535 #define MINOR_EVENT_CUSTOM55 0x536 #define MINOR_EVENT_CUSTOM56 0x537 #define MINOR_EVENT_CUSTOM57 0x538 #define MINOR_EVENT_CUSTOM58 0x539 #define MINOR_EVENT_CUSTOM59 0x53a #define MINOR_EVENT_CUSTOM60 0x53b #define MINOR_EVENT_CUSTOM61 0x53c #define MINOR_EVENT_CUSTOM62 0x53d #define MINOR_EVENT_CUSTOM63 0x53e #define MINOR_EVENT_CUSTOM64 0x53f #define MINOR_LOCK_FINGER_OPEN_DOOR 0x600 #define MINOR_LOCK_PASSWORD_OPEN_DOOR 0x601 #define MINOR_LOCK_CARD_OPEN_DOOR 0x602 #define MINOR_LOCK_CENTER_OPEN_DOOR 0x603 #define MINOR_LOCK_APP_OPEN_DOOR 0x604 #define MINOR_LOCK_KEY_OPEN_DOOR 0x605 #define MINOR_LOCK_REMOTE_DEVICE_OPEN_DOOR 0x606 #define MINOR_LOCK_TMP_PASSWORD_OPEN_DOOR 0x607 #define MINOR_LOCK_BLUETOOTH_OPEN_DOOR 0x608 #define MINOR_LOCK_MULTI_OPEN_DOOR 0x609 #define MINOR_ALARMHOST_SCHOOLTIME_IRGI_B 0x1001 #define MINOR_ALARMHOST_SCHOOLTIME_SDK 0x1002 #define MINOR_ALARMHOST_SCHOOLTIME_SELFTEST 0x1003 #define MINOR_ALARMHOST_SUBSYSTEM_ABNORMALINSERT 0x1004 #define MINOR_ALARMHOST_SUBSYSTEM_ABNORMALPULLOUT 0x1005 #define MINOR_ALARMHOST_AUTO_ARM 0x1006 #define MINOR_ALARMHOST_AUTO_DISARM 0x1007 #define MINOR_ALARMHOST_TIME_TIGGER_ON 0x1008 #define MINOR_ALARMHOST_TIME_TIGGER_OFF 0x1009 #define MINOR_ALARMHOST_AUTO_ARM_FAILD 0x100a #define MINOR_ALARMHOST_AUTO_DISARM_FAILD 0x100b #define MINOR_ALARMHOST_TIME_TIGGER_ON_FAILD 0x100c #define MINOR_ALARMHOST_TIME_TIGGER_OFF_FAILD 0x100d #define MINOR_ALARMHOST_MANDATORY_ALARM 0x100e #define MINOR_ALARMHOST_KEYPAD_LOCKED 0x100f #define MINOR_ALARMHOST_USB_INSERT 0x1010 #define MINOR_ALARMHOST_USB_PULLOUT 0x1011 #define MINOR_ALARMHOST_4G_MODULS_ONLINE 0x1012 #define MINOR_ALARMHOST_4G_MODULS_OFFLINE 0x1013 #define MINOR_EZVIZ_CLOUD_ONLINE 0x1014 #define MINOR_EZVIZ_CLOUD_OFFLINE 0x1015 #define MINOR_SIPUA_GRID_ONLINE 0x1016 #define MINOR_SIPUA_GRID_OFFLINE 0x1017 typedef enum tagALARMHOST_MAJOR_TYPE { MAJOR_ALARMHOST_ALARM = 1, MAJOR_ALARMHOST_EXCEPTION, MAJOR_ALARMHOST_OPERATION, MAJ0R_ALARMHOST_EVENT }ALARMHOST_MAJOR_TYPE; typedef enum tagALARMHOST_MINOR_TYPE { MINOR_SHORT_CIRCUIT =0x01, MINOR_BROKEN_CIRCUIT, MINOR_ALARM_RESET, MINOR_ALARM_NORMAL, MINOR_PASSWORD_ERROR, MINOR_ID_CARD_ILLEGALLY, MINOR_KEYPAD_REMOVE, MINOR_KEYPAD_REMOVE_RESTORE, MINOR_DEV_REMOVE, MINOR_DEV_REMOVE_RESTORE, MINOR_BELOW_ALARM_LIMIT1, MINOR_BELOW_ALARM_LIMIT2, MINOR_BELOW_ALARM_LIMIT3, MINOR_BELOW_ALARM_LIMIT4, MINOR_ABOVE_ALARM_LIMIT1, MINOR_ABOVE_ALARM_LIMIT2, MINOR_ABOVE_ALARM_LIMIT3, MINOR_ABOVE_ALARM_LIMIT4, MINOR_URGENCYBTN_ON, MINOR_URGENCYBTN_OFF, MINOR_VIRTUAL_DEFENCE_BANDIT, MINOR_VIRTUAL_DEFENCE_FIRE, MINOR_VIRTUAL_DEFENCE_URGENT, MINOR_ALARMHOST_MOTDET_START, MINOR_ALARMHOST_MOTDET_STOP, MINOR_ALARMHOST_HIDE_ALARM_START, MINOR_ALARMHOST_HIDE_ALARM_STOP, MINOR_ALARMHOST_UPS_ALARM, MINOR_ALARMHOST_ELECTRICITY_METER_ALARM, MINOR_ALARMHOST_SWITCH_POWER_ALARM, MINOR_ALARMHOST_GAS_DETECT_SYS_ALARM, MINOR_ALARMHOST_TRANSFORMER_TEMPRATURE_ALARM, MINOR_ALARMHOST_TEMP_HUMI_ALARM, MINOR_ALARMHOST_UPS_ALARM_RESTORE, MINOR_ALARMHOST_ELECTRICITY_METER_ALARM_RESTORE, MINOR_ALARMHOST_SWITCH_POWER_ALARM_RESTORE, MINOR_ALARMHOST_GAS_DETECT_SYS_ALARM_RESTORE, MINOR_ALARMHOST_TRANSFORMER_TEMPRATURE_ALARM_RESTORE, MINOR_ALARMHOST_TEMP_HUMI_ALARM_RESTORE, MINOR_ALARMHOST_WATER_LEVEL_SENSOR_ALARM, MINOR_ALARMHOST_WATER_LEVEL_SENSOR_ALARM_RESTORE, MINOR_ALARMHOST_DUST_NOISE_ALARM, MINOR_ALARMHOST_DUST_NOISE_ALARM_RESTORE, MINOR_ALARMHOST_ENVIRONMENTAL_LOGGER_ALARM, MINOR_ALARMHOST_ENVIRONMENTAL_LOGGER_ALARM_RESTORE, MINOR_ALARMHOST_TRIGGER_TAMPER, MINOR_ALARMHOST_TRIGGER_TAMPER_RESTORE, MINOR_ALARMHOST_EMERGENCY_CALL_HELP_ALARM, MINOR_ALARMHOST_EMERGENCY_CALL_HELP_ALARM_RESTORE, MINOR_ALARMHOST_CONSULTING_ALARM, MINOR_ALARMHOST_CONSULTING_ALARM_RESTORE, MINOR_ZONE_MODULE_REMOVE, MINOR_ZONE_MODULE_RESET, MINOR_ALARM_WIND_SPEED_ALARM, MINOR_ALARM_WIND_SPEED_ALARM_RESTORE, MINOR_ALARM_GENERATE_OUTPUT_ALARM, MINOR_ALARM_GENERATE_OUTPUT_RESTORE, MINOR_ALARM_SOAK_ALARM, MINOR_ALARM_SOAK_ALARM_RESTORE, MINOR_ALARM_SOLAR_POWER_ALARM, MINOR_ALARM_SOLAR_POWER_ALARM_RESTORE, MINOR_ALARM_SF6_ALARM, MINOR_ALARM_SF6_ALARM_RESTORE, MINOR_ALARM_WEIGHT_ALARM, MINOR_ALARM_WEIGHT_ALARM_RESTORE, MINOR_ALARM_WEATHER_ALARM, MINOR_ALARM_WEATHER_ALARM_RESTORE, MINOR_ALARM_FUEL_GAS_ALARM, MINOR_ALARM_FUEL_GAS_ALARM_RESTORE, MINOR_ALARM_FIRE_ALARM, MINOR_ALARM_FIRE_ALARM_RESTORE, MINOR_WIRELESS_OUTPUT_MODULE_REMOVE, MINOR_WIRELESS_OUTPUT_MODULE_RESET, MINOR_WIRELESS_REPEATER_MODULE_REMOVE, MINOR_WIRELESS_REPEATER_MODULE_RESET, MINOR_WIRELESS_SIREN_MODULE_REMOVE, MINOR_WIRELESS_SIREN_MODULE_RESET, MINOR_POWER_ON = 0x01, MINOR_POWER_OFF, MINOR_WDT_RESET, MINOR_LOW_BATTERY_VOLTAGE, MINOR_AC_LOSS, MINOR_AC_RESTORE, MINOR_RTC_EXCEPTION, MINOR_NETWORK_CONNECT_FAILURE, MINOR_NETWORK_CONNECT_RESTORE, MINOR_TEL_LINE_CONNECT_FAILURE, MINOR_TEL_LINE_CONNECT_RESTORE, MINOR_EXPANDER_BUS_LOSS, MINOR_EXPANDER_BUS_RESTORE, MINOR_KEYPAD_BUS_LOSS, MINOR_KEYPAD_BUS_RESTORE, MINOR_SENSOR_FAILURE, MINOR_SENSOR_RESTORE, MINOR_RS485_CONNECT_FAILURE, MINOR_RS485_CONNECT_RESTORE, MINOR_BATTERT_VOLTAGE_RESTORE, MINOR_WIRED_NETWORK_ABNORMAL, MINOR_WIRED_NETWORK_RESTORE, MINOR_GPRS_ABNORMAL, MINOR_GPRS_RESTORE, MINOR_3G_ABNORMAL, MINOR_3G_RESTORE, MINOR_SIM_CARD_ABNORMAL, MINOR_SIM_CARD_RESTORE, MINOR_ALARMHOST_VI_LOST, MINOR_ALARMHOST_ILLEGAL_ACCESS, MINOR_ALARMHOST_HD_FULL, MINOR_ALARMHOST_HD_ERROR, MINOR_ALARMHOST_DCD_LOST, MINOR_ALARMHOST_IP_CONFLICT, MINOR_ALARMHOST_NET_BROKEN, MINOR_ALARMHOST_REC_ERROR, MINOR_ALARMHOST_VI_EXCEPTION, MINOR_ALARMHOST_FORMAT_HDD_ERROR, MINOR_ALARMHOST_USB_ERROR, MINOR_ALARMHOST_USB_RESTORE, MINOR_ALARMHOST_PRINT_ERROR, MINOR_ALARMHOST_PRINT_RESTORE, MINOR_SUBSYSTEM_COMMUNICATION_ERROR, MINOR_ALARMHOST_IPC_NO_LINK, MINOR_ALARMHOST_IPC_IP_CONFLICT, MINOR_ALARMHOST_VI_MISMATCH, MINOR_ALARMHOST_MCU_RESTART, MINOR_ALARMHOST_GPRS_MODULE_FAULT, MINOR_ALARMHOST_TELEPHONE_MODULE_FAULT, MINOR_ALARMHOST_WIFI_ABNORMAL, MINOR_ALARMHOST_WIFI_RESTORE, MINOR_ALARMHOST_RF_ABNORMAL, MINOR_ALARMHOST_RF_RESTORE, MINOR_ALARMHOST_DETECTOR_ONLINE, MINOR_ALARMHOST_DETECTOR_OFFLINE, MINOR_ALARMHOST_DETECTOR_BATTERY_NORMAL, MINOR_ALARMHOST_DETECTOR_BATTERY_LOW, MINOR_ALARMHOST_DATA_TRAFFIC_OVERFLOW, MINOR_ZONE_MODULE_LOSS, MINOR_ZONE_MODULE_RESTORE, MINOR_ALARMHOST_WIRELESS_OUTPUT_LOSS, MINOR_ALARMHOST_WIRELESS_OUTPUT_RESTORE, MINOR_ALARMHOST_WIRELESS_REPEATER_LOSS, MINOR_ALARMHOST_WIRELESS_REPEATER_RESTORE, MINOR_TRIGGER_MODULE_LOSS, MINOR_TRIGGER_MODULE_RESTORE, MINOR_WIRELESS_SIREN_LOSS, MINOR_WIRELESS_SIREN_RESTORE, MINOR_ALARMHOST_WIRELESS_RS485_LOSS, MINOR_ALARMHOST_WIRELESS_RS485_RESTORE, MINOR_GUARD = 0x01, MINOR_UNGUARD, MINOR_BYPASS, MINOR_DURESS_ACCESS, MINOR_ALARMHOST_LOCAL_REBOOT, MINOR_ALARMHOST_REMOTE_REBOOT, MINOR_ALARMHOST_LOCAL_UPGRADE, MINOR_ALARMHOST_REMOTE_UPGRADE, MINOR_RECOVERY_DEFAULT_PARAM, MINOR_ALARM_OUTPUT, MINOR_ACCESS_OPEN, MINOR_ACCESS_CLOSE, MINOR_SIREN_OPEN, MINOR_SIREN_CLOSE, MINOR_MOD_ZONE_CONFIG, MINOR_MOD_ALARMOUT_CONIFG, MINOR_MOD_ANALOG_CONFIG, MINOR_RS485_CONFIG, MINOR_PHONE_CONFIG, MINOR_ADD_ADMIN, MINOR_MOD_ADMIN_PARAM, MINOR_DEL_ADMIN, MINOR_ADD_NETUSER, MINOR_MOD_NETUSER_PARAM, MINOR_DEL_NETUSER, MINOR_ADD_OPERATORUSER, MINOR_MOD_OPERATORUSER_PW, MINOR_DEL_OPERATORUSER, MINOR_ADD_KEYPADUSER, MINOR_DEL_KEYPADUSER, MINOR_REMOTEUSER_LOGIN, MINOR_REMOTEUSER_LOGOUT, MINOR_REMOTE_GUARD, MINOR_REMOTE_UNGUARD, MINOR_MOD_HOST_CONFIG, MINOR_RESTORE_BYPASS, MINOR_ALARMOUT_OPEN, MINOR_ALARMOUT_CLOSE, MINOR_MOD_SUBSYSTEM_PARAM, MINOR_GROUP_BYPASS, MINOR_RESTORE_GROUP_BYPASS, MINOR_MOD_GRPS_PARAM, MINOR_MOD_NET_REPORT_PARAM, MINOR_MOD_REPORT_MOD, MINOR_MOD_GATEWAY_PARAM, MINOR_ALARMHOST_REMOTE_START_REC, MINOR_ALARMHOST_REMOTE_STOP_REC, MINOR_ALARMHOST_START_TRANS_CHAN, MINOR_ALARMHOST_STOP_TRANS_CHAN, MINOR_ALARMHOST_START_VT, MINOR_ALARMHOST_STOP_VTM, MINOR_ALARMHOST_REMOTE_PLAYBYFILE, MINOR_ALARMHOST_REMOTE_PLAYBYTIME, MINOR_ALARMHOST_REMOTE_PTZCTRL, MINOR_ALARMHOST_REMOTE_FORMAT_HDD, MINOR_ALARMHOST_REMOTE_LOCKFILE, MINOR_ALARMHOST_REMOTE_UNLOCKFILE, MINOR_ALARMHOST_REMOTE_CFGFILE_OUTPUT, MINOR_ALARMHOST_REMOTE_CFGFILE_INTPUT, MINOR_ALARMHOST_REMOTE_RECFILE_OUTPUT, MINOR_ALARMHOST_STAY_ARM, MINOR_ALARMHOST_QUICK_ARM, MINOR_ALARMHOST_AUTOMATIC_ARM, MINOR_ALARMHOST_AUTOMATIC_DISARM, MINOR_ALARMHOST_KEYSWITCH_ARM, MINOR_ALARMHOST_KEYSWITCH_DISARM, MINOR_ALARMHOST_CLEAR_ALARM, MINOR_ALARMHOST_MOD_FAULT_CFG, MINOR_ALARMHOST_MOD_EVENT_TRIGGER_ALARMOUT_CFG, MINOR_ALARMHOST_SEARCH_EXTERNAL_MODULE, MINOR_ALARMHOST_REGISTER_EXTERNAL_MODULE, MINOR_ALARMHOST_CLOSE_KEYBOARD_ALARM, MINOR_ALARMHOST_MOD_3G_PARAM, MINOR_ALARMHOST_MOD_PRINT_PARAM, MINOR_SD_CARD_FORMAT, MINOR_SUBSYSTEM_UPGRADE, MINOR_ALARMHOST_PLAN_ARM_CFG, MINOR_ALARMHOST_PHONE_ARM, MINOR_ALARMHOST_PHONE_STAY_ARM, MINOR_ALARMHOST_PHONE_QUICK_ARM, MINOR_ALARMHOST_PHONE_DISARM, MINOR_ALARMHOST_PHONE_CLEAR_ALARM, MINOR_ALARMHOST_WHITELIST_CFG, MINOR_ALARMHOST_TIME_TRIGGER_CFG, MINOR_ALARMHOST_CAPTRUE_CFG, MINOR_ALARMHOST_TAMPER_CFG, MINOR_ALARMHOST_REMOTE_KEYPAD_UPGRADE, MINOR_ALARMHOST_ONETOUCH_AWAY_ARMING, MINOR_ALARMHOST_ONETOUCH_STAY_ARMING, MINOR_ALARMHOST_SINGLE_PARTITION_ARMING_OR_DISARMING, MINOR_ALARMHOST_CARD_CONFIGURATION, MINOR_ALARMHOST_CARD_ARMING_OR_DISARMING, MINOR_ALARMHOST_EXPENDING_NETCENTER_CONFIGURATION, MINOR_ALARMHOST_NETCARD_CONFIGURATION, MINOR_ALARMHOST_DDNS_CONFIGURATION, MINOR_ALARMHOST_RS485BUS_CONFIGURATION, MINOR_ALARMHOST_RS485BUS_RE_REGISTRATION, MINOR_ALARMHOST_REMOTE_OPEN_ELECTRIC_LOCK, MINOR_ALARMHOST_REMOTE_CLOSE_ELECTRIC_LOCK, MINOR_ALARMHOST_LOCAL_OPEN_ELECTRIC_LOCK, MINOR_ALARMHOST_LOCAL_CLOSE_ELECTRIC_LOCK, MINOR_ALARMHOST_OPEN_ALARM_LAMP, MINOR_ALARMHOST_CLOSE_ALARM_LAMP, MINOR_ALARMHOST_TEMPORARY_PASSWORD, MINOR_ALARMHOST_ONEKEY_AWAY_ARM, MINOR_ALARMHOST_ONEKEY_STAY_ARM, MINOR_ALARMHOST_SINGLE_ZONE_ARM, MINOR_ALARMHOST_SINGLE_ZONE_DISARM, MINOR_ALARMHOST_HIDDNS_CONFIG, MINOR_ALARMHOST_REMOTE_KEYBOARD_UPDATA, MINOR_ALARMHOST_ZONE_ADD_DETECTOR, MINOR_ALARMHOST_ZONE_DELETE_DETECTOR, MINOR_ALARMHOST_QUERY_DETECTOR_SIGNAL, MINOR_ALARMHOST_QUERY_DETECTOR_BATTERY, MINOR_ALARMHOST_SET_DETECTOR_GUARD, MINOR_ALARMHOST_SET_DETECTOR_UNGUARD, MINOR_ALARMHOST_SET_WIFI_PARAMETER, MINOR_ALARMHOST_OPEN_VOICE, MINOR_ALARMHOST_CLOSE_VOICE, MINOR_ALARMHOST_ENABLE_FUNCTION_KEY, MINOR_ALARMHOST_DISABLE_FUNCTION_KEY, MINOR_ALARMHOST_READ_CARD, MINOR_ALARMHOST_START_BROADCAST, MINOR_ALARMHOST_STOP_BROADCAST, MINOR_ALARMHOST_REMOTE_ZONE_MODULE_UPGRADE, MINOR_ALARMHOST_NETWORK_MODULE_EXTEND, MINOR_ALARMHOST_ADD_CONTROLLER, MINOR_ALARMHOST_DELETE_CONTORLLER, MINOR_ALARMHOST_REMOTE_NETWORKMODULE_UPGRADE, MINOR_ALARMHOST_WIRELESS_OUTPUT_ADD, MINOR_ALARMHOST_WIRELESS_OUTPUT_DEL, MINOR_ALARMHOST_WIRELESS_REPEATER_ADD, MINOR_ALARMHOST_WIRELESS_REPEATER_DEL, MINOR_ALARMHOST_PHONELIST_CFG, MINOR_ALARMHOST_RF_SIGNAL_CHECK, MINOR_ALARMHOST_USB_UPGRADE, MINOR_ALARMHOST_DOOR_TIME_REMINDER_CFG, MINOR_ALARMHOST_WIRELESS_SIREN_ADD, MINOR_ALARMHOST_WIRELESS_SIREN_DEL, MINOR_ALARMHOST_OUT_SCALE_OPEN, MINOR_ALARMHOST_OUT_SCALE_CLOSE, MINOR_ALARMHOST_LOCAL_SET_DEVICE_ACTIVE = 0xf0, MINOR_ALARMHOST_REMOTE_SET_DEVICE_ACTIVE = 0xf1, MINOR_ALARMHOST_LOCAL_PARA_FACTORY_DEFAULT = 0xf2, MINOR_ALARMHOST_REMOTE_PARA_FACTORY_DEFAULT = 0xf3, MINOR_SCHOOLTIME_IRGI_B = 0x01, MINOR_SCHOOLTIME_SDK, MINOR_SCHOOLTIME_SELFTEST, MINOR_SUBSYSTEM_ABNORMALINSERT, MINOR_SUBSYSTEM_ABNORMALPULLOUT, MINOR_AUTO_ARM, MINOR_AUTO_DISARM, MINOR_TIME_TIGGER_ON, MINOR_TIME_TIGGER_OFF, MINOR_AUTO_ARM_FAILD, MINOR_AUTO_DISARM_FAILD, MINOR_TIME_TIGGER_ON_FAILD, MINOR_TIME_TIGGER_OFF_FAILD, MINOR_MANDATORY_ALARM, MINOR_KEYPAD_LOCKED, MINOR_USB_INSERT, MINOR_USB_PULLOUT, }ALARMHOST_MINOR_TYPE; #define PARA_VIDEOOUT 0x1 #define PARA_IMAGE 0x2 #define PARA_ENCODE 0x4 #define PARA_NETWORK 0x8 #define PARA_ALARM 0x10 #define PARA_EXCEPTION 0x20 #define PARA_DECODER 0x40 #define PARA_RS232 0x80 #define PARA_PREVIEW 0x100 #define PARA_SECURITY 0x200 #define PARA_DATETIME 0x400 #define PARA_FRAMETYPE 0x800 #define PARA_DETECTION 0x1000 #define PARA_VCA_RULE 0x1001 #define PARA_VCA_CTRL 0x1002 #define PARA_VCA_PLATE 0x1003 #define PARA_CODESPLITTER 0x2000 #define PARA_RS485 0x2001 #define PARA_DEVICE 0x2002 #define PARA_HARDDISK 0x2003 #define PARA_AUTOBOOT 0x2004 #define PARA_HOLIDAY 0x2005 #define PARA_IPC 0x2006 #define NET_DVR_FILE_SUCCESS 1000 #define NET_DVR_FILE_NOFIND 1001 #define NET_DVR_ISFINDING 1002 #define NET_DVR_NOMOREFILE 1003 #define NET_DVR_FILE_EXCEPTION 1004 #define COMM_ALARM 0x1100 #define COMM_ALARM_RULE 0x1102 #define COMM_ALARM_PDC 0x1103 #define COMM_ALARM_VIDEOPLATFORM 0x1104 #define COMM_ALARM_ALARMHOST 0x1105 #define COMM_ALARM_FACE 0x1106 #define COMM_RULE_INFO_UPLOAD 0x1107 #define COMM_ALARM_AID 0x1110 #define COMM_ALARM_TPS 0x1111 #define COMM_UPLOAD_FACESNAP_RESULT 0x1112 #define COMM_ALARM_TFS 0x1113 #define COMM_ALARM_TPS_V41 0x1114 #define COMM_ALARM_AID_V41 0x1115 #define COMM_ALARM_VQD_EX 0x1116 #define COMM_ALARM_NOTIFICATION_REPORT 0x1117 #define COMM_SENSOR_VALUE_UPLOAD 0x1120 #define COMM_SENSOR_ALARM 0x1121 #define COMM_SWITCH_ALARM 0x1122 #define COMM_ALARMHOST_EXCEPTION 0x1123 #define COMM_ALARMHOST_OPERATEEVENT_ALARM 0x1124 #define COMM_ALARMHOST_SAFETYCABINSTATE 0x1125 #define COMM_ALARMHOST_ALARMOUTSTATUS 0x1126 #define COMM_ALARMHOST_CID_ALARM 0x1127 #define COMM_ALARMHOST_EXTERNAL_DEVICE_ALARM 0x1128 #define COMM_ALARMHOST_DATA_UPLOAD 0x1129 #define COMM_FACECAPTURE_STATISTICS_RESULT 0x112a #define COMM_ALARM_WIRELESS_INFO 0x122b #define COMM_SCENECHANGE_DETECTION_UPLOAD 0x1130 #define COMM_CROSSLINE_ALARM 0x1131 #define COMM_UPLOAD_VIDEO_INTERCOM_EVENT 0x1132 #define COMM_ALARM_VIDEO_INTERCOM 0x1133 #define COMM_UPLOAD_NOTICE_DATA 0x1134 #define COMM_ALARM_AUDIOEXCEPTION 0x1150 #define COMM_ALARM_DEFOCUS 0x1151 #define COMM_ALARM_BUTTON_DOWN_EXCEPTION 0x1152 #define COMM_ALARM_ALARMGPS 0x1202 #define COMM_TRADEINFO 0x1500 #define COMM_UPLOAD_PLATE_RESULT 0x2800 #define COMM_ITC_STATUS_DETECT_RESULT 0x2810 #define COMM_IPC_AUXALARM_RESULT 0x2820 #define COMM_UPLOAD_PICTUREINFO 0x2900 #define COMM_SNAP_MATCH_ALARM 0x2902 #define COMM_ITS_PLATE_RESULT 0x3050 #define COMM_ITS_TRAFFIC_COLLECT 0x3051 #define COMM_ITS_GATE_VEHICLE 0x3052 #define COMM_ITS_GATE_FACE 0x3053 #define COMM_ITS_GATE_COSTITEM 0x3054 #define COMM_ITS_GATE_HANDOVER 0x3055 #define COMM_ITS_PARK_VEHICLE 0x3056 #define COMM_ITS_BLACKLIST_ALARM 0x3057 #define COMM_VEHICLE_CONTROL_LIST_DSALARM 0x3058 #define COMM_VEHICLE_CONTROL_ALARM 0x3059 #define COMM_FIRE_ALARM 0x3060 #define COMM_ITS_GATE_ALARMINFO 0x3061 #define COMM_VEHICLE_RECOG_RESULT 0x3062 #define COMM_PLATE_RESULT_V50 0x3063 #define COMM_GATE_CHARGEINFO_UPLOAD 0x3064 #define COMM_TME_VEHICLE_INDENTIFICATION 0x3065 #define COMM_GATE_CARDINFO_UPLOAD 0x3066 #define COMM_ALARM_SENSORINFO_UPLOAD 0x3077 #define COMM_ALARM_CAPTURE_UPLOAD 0x3078 #define COMM_ITS_RADARINFO 0x3079 #define COMM_SIGNAL_LAMP_ABNORMAL 0x3080 #define COMM_ALARM_TPS_REAL_TIME 0x3081 #define COMM_ALARM_TPS_STATISTICS 0x3082 #define COMM_ALARM_V30 0x4000 #define COMM_IPCCFG 0x4001 #define COMM_IPCCFG_V31 0x4002 #define COMM_IPCCFG_V40 0x4003 #define COMM_ALARM_DEVICE 0x4004 #define COMM_ALARM_CVR 0x4005 #define COMM_ALARM_HOT_SPARE 0x4006 #define COMM_ALARM_V40 0x4007 #define COMM_UPLOAD_HEATMAP_RESULT 0x4008 #define COMM_ALARM_DEVICE_V40 0x4009 #define COMM_ALARM_FACE_DETECTION 0x4010 #define COMM_ALARM_TARGET_LEFT_REGION 0x4011 #define COMM_GISINFO_UPLOAD 0x4012 #define COMM_VANDALPROOF_ALARM 0x4013 #define COMM_PEOPLE_DETECTION_UPLOAD 0x4014 #define COMM_ALARM_STORAGE_DETECTION 0x4015 #define COMM_MVM_REGISTER 0x4016 #define COMM_MVM_STATUS_INFO 0x4017 #define COMM_UPLOAD_HEATMAP_RESULT_PDC 0x4018 #define COMM_UPLOAD_HEATMAP_RESULT_DURATION 0x4019 #define COMM_UPLOAD_HEATMAP_RESULT_INTERSECTION 0x4020 #define COMM_ITS_ROAD_EXCEPTION 0x4500 #define COMM_ITS_EXTERNAL_CONTROL_ALARM 0x4520 #define COMM_ALARM_SHIPSDETECTION 0x4521 #define COMM_FIREDETECTION_ALARM 0x4991 #define COMM_ALARM_DENSEFOGDETECTION 0x4992 #define COMM_VCA_ALARM 0x4993 #define COMM_FACE_THERMOMETRY_ALARM 0x4994 #define COMM_TAPE_ARCHIVE_ALARM 0x4996 #define COMM_SCREEN_ALARM 0x5000 #define COMM_DVCS_STATE_ALARM 0x5001 #define COMM_ALARM_ACS 0x5002 #define COMM_ALARM_FIBER_CONVERT 0x5003 #define COMM_ALARM_SWITCH_CONVERT 0x5004 #define COMM_ALARM_DEC_VCA 0x5010 #define COMM_ALARM_LCD 0x5011 #define COMM_CONFERENCE_CALL_ALARM 0x5012 #define COMM_ALARM_WALL_CONFERNECE 0x5015 #define COMM_DIAGNOSIS_UPLOAD 0x5100 #define COMM_HIGH_DENSITY_UPLOAD 0x5101 #define COMM_ID_INFO_ALARM 0x5200 #define COMM_PASSNUM_INFO_ALARM 0x5201 #define COMM_THERMOMETRY_DIFF_ALARM 0x5211 #define COMM_THERMOMETRY_ALARM 0x5212 #define COMM_PANORAMIC_LINKAGE_ALARM 0x5213 #define COMM_TAG_INFO_ALARM 0x5215 #define COMM_ALARM_VQD 0x6000 #define COMM_PUSH_UPDATE_RECORD_INFO 0x6001 #define COMM_SWITCH_LAMP_ALARM 0x6002 #define COMM_INQUEST_ALARM 0x6005 #define COMM_VIDEO_PARKING_POLE_ALARM 0x6006 #define COMM_GPS_STATUS_ALARM 0x6010 #define COMM_BASE_STATION_INFO_ALARM 0x6011 #define COMM_FACESNAP_RAWDATA_ALARM 0x6015 #define COMM_CLUSTER_ALARM 0x6020 #define COMM_ISAPI_ALARM 0x6009 #define COMM_FRAMES_PEOPLE_COUNTING_ALARM 0x6069 #define COMM_SIGN_ABNORMAL_ALARM 0x6120 #define COMM_HFPD_ALARM 0x6121 #define COMM_HCU_ALARM 0x6150 #define COMM_DEV_STATUS_CHANGED 0x7000 #define EXCEPTION_EXCHANGE 0x8000 #define EXCEPTION_AUDIOEXCHANGE 0x8001 #define EXCEPTION_ALARM 0x8002 #define EXCEPTION_PREVIEW 0x8003 #define EXCEPTION_SERIAL 0x8004 #define EXCEPTION_RECONNECT 0x8005 #define EXCEPTION_ALARMRECONNECT 0x8006 #define EXCEPTION_SERIALRECONNECT 0x8007 #define SERIAL_RECONNECTSUCCESS 0x8008 #define EXCEPTION_PLAYBACK 0x8010 #define EXCEPTION_DISKFMT 0x8011 #define EXCEPTION_PASSIVEDECODE 0x8012 #define EXCEPTION_EMAILTEST 0x8013 #define EXCEPTION_BACKUP 0x8014 #define PREVIEW_RECONNECTSUCCESS 0x8015 #define ALARM_RECONNECTSUCCESS 0x8016 #define RESUME_EXCHANGE 0x8017 #define NETWORK_FLOWTEST_EXCEPTION 0x8018 #define EXCEPTION_PICPREVIEWRECONNECT 0x8019 #define PICPREVIEW_RECONNECTSUCCESS 0x8020 #define EXCEPTION_PICPREVIEW 0x8021 #define EXCEPTION_MAX_ALARM_INFO 0x8022 #define EXCEPTION_LOST_ALARM 0x8023 #define EXCEPTION_PASSIVETRANSRECONNECT 0x8024 #define PASSIVETRANS_RECONNECTSUCCESS 0x8025 #define EXCEPTION_PASSIVETRANS 0x8026 #define SUCCESS_PUSHDEVLOGON 0x8030 #define EXCEPTION_RELOGIN 0x8040 #define RELOGIN_SUCCESS 0x8041 #define EXCEPTION_PASSIVEDECODE_RECONNNECT 0x8042 #define EXCEPTION_CLUSTER_CS_ARMFAILED 0x8043 #define EXCEPTION_RELOGIN_FAILED 0x8044 #define EXCEPTION_PREVIEW_RECONNECT_CLOSED 0x8045 #define EXCEPTION_ALARM_RECONNECT_CLOSED 0x8046 #define EXCEPTION_SERIAL_RECONNECT_CLOSED 0x8047 #define EXCEPTION_PIC_RECONNECT_CLOSED 0x8048 #define EXCEPTION_PASSIVE_DECODE_RECONNECT_CLOSED 0x8049 #define EXCEPTION_PASSIVE_TRANS_RECONNECT_CLOSED 0x804a #define NET_DVR_SYSHEAD 1 #define NET_DVR_STREAMDATA 2 #define NET_DVR_AUDIOSTREAMDATA 3 #define NET_DVR_STD_VIDEODATA 4 #define NET_DVR_STD_AUDIODATA 5 #define NET_DVR_SDP 6 #define NET_DVR_CHANGE_FORWARD 10 #define NET_DVR_CHANGE_REVERSE 11 #define NET_DVR_PLAYBACK_ALLFILEEND 12 #define NET_DVR_VOD_DRAW_FRAME 13 #define NET_DVR_VOD_DRAW_DATA 14 #define NET_DVR_PRIVATE_DATA 112 #define DVR 1 #define ATMDVR 2 #define DVS 3 #define DEC 4 #define ENC_DEC 5 #define DVR_HC 6 #define DVR_HT 7 #define DVR_HF 8 #define DVR_HS 9 #define DVR_HTS 10 #define DVR_HB 11 #define DVR_HCS 12 #define DVS_A 13 #define DVR_HC_S 14 #define DVR_HT_S 15 #define DVR_HF_S 16 #define DVR_HS_S 17 #define ATMDVR_S 18 #define DVR_7000H 19 #define DEC_MAT 20 #define DVR_MOBILE 21 #define DVR_HD_S 22 #define DVR_HD_SL 23 #define DVR_HC_SL 24 #define DVR_HS_ST 25 #define DVS_HW 26 #define DS630X_D 27 #define DS640X_HD 28 #define DS610X_D 29 #define IPCAM 30 #define MEGA_IPCAM 31 #define IPCAM_X62MF 32 #define ITCCAM 35 #define IVS_IPCAM 36 #define ZOOMCAM 38 #define IPDOME 40 #define IPDOME_MEGA200 41 #define IPDOME_MEGA130 42 #define IPDOME_AI 43 #define TII_IPCAM 44 #define IPTC_DOME 45 #define DS_2DP_Z 46 #define DS_2DP 47 #define ITS_WMS 48 #define IPMOD 50 #define TRAFFIC_YTDOME 51 #define TRAFFIC_RDDOME 52 #define IDS6501_HF_P 60 #define IDS6101_HF_A 61 #define IDS6002_HF_B 62 #define IDS6101_HF_B 63 #define IDS52XX 64 #define IDS90XX 65 #define IDS8104_AHL_S_HX 66 #define IDS8104_AHL_S_H 67 #define IDS91XX 68 #define IIP_CAM_B 69 #define IIP_CAM_F 70 #define DS71XX_H 71 #define DS72XX_H_S 72 #define DS73XX_H_S 73 #define DS72XX_HF_S 74 #define DS73XX_HFI_S 75 #define DS76XX_H_S 76 #define DS76XX_N_S 77 #define DS_TP3200_EC 78 #define DS81XX_HS_S 81 #define DS81XX_HL_S 82 #define DS81XX_HC_S 83 #define DS81XX_HD_S 84 #define DS81XX_HE_S 85 #define DS81XX_HF_S 86 #define DS81XX_AH_S 87 #define DS81XX_AHF_S 88 #define DS90XX_HF_S 90 #define DS91XX_HF_S 91 #define DS91XX_HD_S 92 #define IDS90XX_A 93 #define IDS91XX_A 94 #define DS95XX_N_S 95 #define DS96XX_N_SH 96 #define DS90XX_HF_SH 97 #define DS91XX_HF_SH 98 #define DS_B10_XY 100 #define DS_6504HF_B10 101 #define DS_6504D_B10 102 #define DS_1832_B10 103 #define DS_6401HFH_B10 104 #define DS_65XXHC 105 #define DS_65XXHC_S 106 #define DS_65XXHF 107 #define DS_65XXHF_S 108 #define DS_6500HF_B 109 #define IVMS_6200_C 110 #define IVMS_6200_B 111 #define DS_72XXHV_ST15 112 #define DS_72XXHV_ST20 113 #define IVMS_6200_T 114 #define IVMS_6200_BP 115 #define DS_81XXHC_ST 116 #define DS_81XXHS_ST 117 #define DS_81XXAH_ST 118 #define DS_81XXAHF_ST 119 #define DS_66XXDVS 120 #define DS_1964_B10 121 #define DS_B10N04_IN 122 #define DS_B10N04_OUT 123 #define DS_B10N04_INTEL 124 #define DS_6408HFH_B10E_RM 125 #define DS_B10N64F1_RTM 126 #define DS_B10N64F1D_RTM 127 #define DS_B10_SDS 128 #define DS_B10_DS 129 #define DS_6401HFH_B10V 130 #define DS_6504D_B10B 131 #define DS_6504D_B10H 132 #define DS_6504D_B10V 133 #define DS_6408HFH_B10S 134 #define DS_18XX_N 135 #define DS_6504HF_B10F_CLASS 136 #define DS_18XX_PTZ 141 #define DS_19AXX 142 #define DS_19BXX 143 #define DS_19CXX 144 #define DS_19DXX 145 #define DS_19XX 146 #define DS_19SXX 147 #define DS_1HXX 148 #define DS_PEAXX 149 #define DS_PWXX 150 #define DS_PMXX 151 #define DS_19DXX_S 152 #define DS_PWAXX 153 #define DS_C10H 161 #define DS_C10N_BI 162 #define DS_C10N_DI 163 #define DS_C10N_SI 164 #define DS_C10N_DO 165 #define DS_C10N_SERVER 166 #define IDS_8104_AHFL_S_H 171 #define IDS_65XX_HF_A 172 #define IDS90XX_HF_RH 173 #define IDS91XX_HF_RH 174 #define IDS_65XX_HF_B 175 #define IDS_65XX_HF_P 176 #define IVMS_6200_F 177 #define IVMS_6200_A 178 #define IVMS_6200_F_S 179 #define DS90XX_HF_RH 181 #define DS91XX_HF_RH 182 #define DS78XX_S 183 #define DS81XXHW_S 185 #define DS81XXHW_ST 186 #define DS91XXHW_ST 187 #define DS91XX_ST 188 #define DS81XX_ST 189 #define DS81XXHX_ST 190 #define DS73XXHX_ST 191 #define DS81XX_SH 192 #define DS81XX_SN 193 #define DS96XXN_ST 194 #define DS86XXN_ST 195 #define DS80XXHF_ST 196 #define DS90XXHF_ST 197 #define DS76XXN_ST 198 #define DS_9664N_RX 199 #define ENCODER_SERVER 200 #define DECODER_SERVER 201 #define PCNVR_SERVER 202 #define CVR_SERVER 203 #define DS_91XXHFH_ST 204 #define DS_66XXHFH 205 #define TRAFFIC_TS_SERVER 210 #define TRAFFIC_VAR 211 #define IPCALL 212 #define SAN_SERVER 213 #define DS_B11_M_CLASS 301 #define DS_B12_M_CLASS 302 #define DS_6504HF_B11_CLASS 303 #define DS_6504HF_B12_CLASS 304 #define DS_6401HFH_B11V_CLASS 305 #define DS_6401HFH_B12V_CLASS 306 #define DS_6408HFH_B11S_CLASS 307 #define DS_6408HFH_B12S_CLASS 308 #define DS_6504D_B11H_CLASS 309 #define DS_6504D_B11B_CLASS 310 #define DS_6504D_B12B_CLASS 311 #define DS_6504D_B11V_CLASS 312 #define DS_6504D_B12V_CLASS 313 #define DS_6401HFH_B10R_CLASS 314 #define DS_6401HFH_B10D_CLASS 315 #define DS_6401HFH_B10H_CLASS 316 #define DS_6401HFH_B11R_CLASS 317 #define DS_6401HFH_B11D_CLASS 318 #define DS_6401HFH_B11H_CLASS 319 #define DS_6401HFH_B12R_CLASS 320 #define DS_6401HFH_B12D_CLASS 321 #define DS_6401HFH_B12H_CLASS 322 #define DS_65XXD_B10Ex_CLASS 323 #define DS_6516HW_B10_CLASS 324 #define DS_6401HFH_B10F_RX_CLASS 326 #define DS_6502HW_B10F_RX_CLASS 327 #define DS_6504D_B11Ex_CLASS 328 #define DS_6504D_B12Ex_CLASS 329 #define DS_6512_B11_CLASS 330 #define DS_6512_B12_CLASS 331 #define DS_6504D_B10H_CLASS 332 #define DS_65XXT_B10_CLASS 333 #define DS_65XXD_B10_CLASS 335 #define DS_IVMSE_B10X_CLASS 336 #define DS_6532D_B10ES_CLASS 337 #define DS_6508HFH_B10ES_CLASS 338 #define DS_82NCG_CLASS 340 #define DS_82VAG_CLASS 341 #define DS_1802XXF_B10_CLASS 342 #define iDS_6504_B10EVAC_CLASS 343 #define iDS_6504_B10EDEC_CLASS 344 #define DS_6402HFH_B10EV_CLASS 345 #define DS_6402HFH_B10ED_CLASS 346 #define DS_6402HFH_B10EH_CLASS 347 #define DS_6404HFH_B10T_RX_CLASS 348 #define DS_6504D_AIO_CLASS 349 #define DS_IVMST_B10_CLASS 350 #define DS_6402_AIO_CLASS 351 #define DS_iVMSE_AIO_CLASS 352 #define DS_AIO_M_CLASS 353 #define DS_6508HF_B10E_CLASS 355 #define DS_6404HFH_B10ES_CLASS 356 #define DS_6402HFH_B10ER_CLASS 358 #define DS_6404HFH_B10T_RM_CLASS 361 #define DS_6516D_B10EB_CLASS 362 #define DS_6516D_B10ES_CLASS 363 #define DS_6508D_B10FH_CLASS 364 #define DS_6508D_B10FD_CLASS 364 #define DS_6508D_B10FV_CLASS 364 #define DS_6508_B11E_CLASS 365 #define DS_6402_B11ES_CLASS 366 #define DS_6402_B11EV_CLASS 367 #define DS_6402_B11ER_CLASS 368 #define DS_6402_B11ED_CLASS 369 #define DS_6402_B11EH_CLASS 370 #define DS_6516D_B11EB_CLASS 371 #define DS_6516D_B11ES_CLASS 372 #define DS_6508_B12E_CLASS 373 #define DS_6402_B12ES_CLASS 375 #define DS_6402_B12EV_CLASS 376 #define DS_6402_B12ER_CLASS 377 #define DS_6402_B12ED_CLASS 378 #define DS_6402_B12EH_CLASS 379 #define DS_6516D_B12EB_CLASS 380 #define DS_iVMSE_AIO_8100x_CLASS 381 #define DS_iVMSE_AIO_87x_CLASS 382 #define DS_6532D_B11ES_CLASS 384 #define DS_6532D_B12ES_CLASS 385 #define DS_B20_MSU_NP 400 #define DS_6416HFH_B20S 401 #define DS_6416HFH_B20_RM 402 #define DS_6564D_B20D 403 #define DS_6564D_B20H 404 #define DS_6564D_B20V 405 #define DS_B20_6516D_DEV_CLASS 406 #define DS_6408HFH_B20V 407 #define DS_MMC_B20_CLASS 408 #define DS_CARD_CHIP_B20_CLASS 409 #define DS_6564D_B20B_DEV_CLASS 410 #define DS_6564D_B20S_DEV_CLASS 411 #define DS_6532HF_B20B_DEV_CLASS 412 #define DS_6408HFH_B20D_DEV_CLASS 413 #define DS_6408HFH_B20H_DEV_CLASS 414 #define DS_IVMSE_B20_CLASS 415 #define DS_6402HFH_B20Y_DEV_CLASS 416 #define DS_6508HW_B20_DEV_CLASS 417 #define DS_B20N128Fx_B20_DEV_CLASS 418 #define DS_AIO_MCU_NP_DEV_CLASS 419 #define DS_6402_AIO_EV_DEV_CLASS 420 #define DS_6508D_AIO_EV_DEV_CLASS 421 #define DS_6508D_AIO_ED_DEV_CLASS 422 #define DS_6508D_AIO_EH_DEV_CLASS 423 #define DS_6508HD_B20F_DEV_CLASS 424 #define DS_6402HFH_B20ES_DEV_CLASS 425 #define DS_6532D_B20_DEV_CLASS 426 #define DS_IVMST_B20_DEV_CLASS 427 #define DS_6416HFH_B20DD_DEV_CLASS 428 #define DS_6441VS_B20_DEV_CLASS 429 #define DS_6404HFH_B20T_CLASS 431 #define DS_FS22_B20_DEV_CLASS 432 #define DS_IVMSE_B20UH_DEV_CLASS 433 #define IDS_6524J_B20_DEV_CLASS 434 #define IDS_6532B_B20_DEV_CLASS 435 #define DS_6404HFH_B20Fx_DEV_CLASS 436 #define DS_N128x_B20Fy_CLASS 437 #define DS_181600F_B20_CLASS 438 #define DS_6904UD_B20H_CLASS 439 #define DS_B21_MCU_NP_CLASS 440 #define DS_B21_S10_x_CLASS 441 #define DS_6402HFH_B21D_CLASS 442 #define DS_6508HD_B21D_CLASS 443 #define DS_iVMSE_B21HW_CLASS 444 #define DS_C10S 501 #define DS_C10N_SDI 551 #define DS_C10N_BIW 552 #define DS_C10N_DON 553 #define DS_C10N_TVI 554 #define DS_C10N_DI2 555 #define DS_C10N_AUDIO_OUT 556 #define DS_C10N_AUDIO_IN 557 #define DS_C20N 570 #define DS_C20N_BNC 571 #define DS_C20N_DVI 572 #define DS_C20N_DP 573 #define DS_C20N_OUT 574 #define DS_C20N_VWMS 5351 #define DS_C20N_DI2 5352 #define DS_C20N_DO2 5353 #define DS_C20N_UHDI 5354 #define DS_C20N_YI2 5355 #define DS_C12N_VWMS 5356 #define DS_C12N_DO 5357 #define DS_C12N_HOE 5358 #define DS_C20N_HI2 5359 #define DS_C20N_VI2 5360 #define DS_C20N_SI2 5361 #define DS_C20N_HO2 5362 #define DS_C20N_S24G 5363 #define DS_C20N_S24X 5364 #define DS_D1HXX 5591 #define ELEVATO_BRIDGE 5751 #define DS_19M00_MN 601 #define DS_KH8302_A 602 #define DS_KD8101_2 603 #define DS_KM8301 604 #define DS_KVXXXX_XX 605 #define DS_LHPM1D_C 606 #define DS_KAM03 607 #define DS64XXHD_T 701 #define DS_65XXD 703 #define DS63XXD_T 704 #define SCE_SERVER 705 #define DS_64XXHD_S 706 #define DS_68XXT 707 #define DS_65XXD_T 708 #define DS_65XXHD_T 709 #define DS_69XXUD 710 #define DS_65XXUD 711 #define DS_65XXUD_L 712 #define DS_65XXUD_T 713 #define DS_69XXHD 5001 #define DS_D20XX 750 #define DS_C50S 751 #define DS_D50XX 752 #define DS_D40 760 #define DS_65VMXX 770 #define DS_65VTXX 771 #define DS_65VTA 772 #define DS_65VT_RX 773 #define DS_65VM_MCU_NP 774 #define DS_65VT0010 5571 #define DS_65VM_MCU 5572 #define DS_65VM_MPC 5573 #define DS_65VT2XXYR_SF 5574 #define DS_65VT0XXY 5575 #define DS_65VT0010Z 5576 #define DS_CS_SERVER 800 #define DS_68GAP_MCU 831 #define DS_K260X 850 #define DS_K1TXXX 851 #define DS_K280X 852 #define DS_K1T80X 854 #define RAC_6X00 856 #define DS_K2602_AX 857 #define DS_K1T803F 858 #define DS_K2700 859 #define DS_K270X 860 #define DS_K1T500S 861 #define DS_K1A801F 862 #define DS_K1T600X 863 #define DS_K22X 864 #define DS_K2M0016AX 865 #define DS_K2602S_AX 867 #define DS_K560XX 870 #define DS_K260X_E 873 #define DS_K5603X 874 #define DS_K3M200X 875 #define DS_K3M100X 879 #define DS_K1T8101XT 881 #define DS_K1T8101XX 882 #define DS_K5604 883 #define DS_K1T607XXXX 884 #define DS_K1T610XXXX 884 #define DS_K1A850X 885 #define DS_K1T800X 886 #define DS_6800M 900 #define DS_68NTH 901 #define DS_D60S 902 #define DS_D10 931 #define DS_3K0X_NM 951 #define DS_3E2328 952 #define DS_3E1528 953 #define SCREEN_LINK_SERVER 971 #define DS_D51OPSXX 972 #define IP_PTSYS_MEGA200 1001 #define IPCAM_FISHEYE 1002 #define IPCAM_FISHEYE_E 1003 #define IPCAM_BINOCULAR 1004 #define IPCAM_365 1010 #define IPCAM_R0 1011 #define IPCAM_R1 1012 #define IPCAM_R2 1013 #define IPCAM_R3 1014 #define IPCAM_R4 1015 #define IPDOME_365 1110 #define IPDOME_R0 1111 #define IPDOME_R1 1112 #define IPDOME_R2 1113 #define IPDOME_R3 1114 #define IPDOME_R4 1115 #define ITCCAM_R3 1211 #define UAV_S 1300 #define TRAFFIC_ECT 1400 #define TRAFFIC_PARKING_SERVER 1401 #define TRAFFIC_TME 1402 #define DS90XXHW_ST 2001 #define DS72XXHX_SH 2002 #define DS_92XX_HF_ST 2003 #define DS_91XX_HF_XT 2004 #define DS_90XX_HF_XT 2005 #define DS_73XXHX_SH 2006 #define DS_72XXHFH_ST 2007 #define DS_67XXHF_SATA 2008 #define DS_67XXHW 2009 #define DS_67XXHW_SATA 2010 #define DS_67XXHF 2011 #define DS_72XXHF_SV 2012 #define DS_72XXHW_SV 2013 #define DS_81XXHX_SH 2014 #define DS_71XXHX_SL 2015 #define DS_76XXH_ST 2016 #define DS_73XXHFH_ST 2017 #define DS_81XXHFH_ST 2018 #define DS_72XXHFH_SL 2019 #define DS_FDXXCGA_FLT 2020 #define IDS_91XX_HF_ST_A 2100 #define IDS_91XX_HF_ST_B 2101 #define IDS_90XX_HF_ST_A 2102 #define IDS_90XX_HF_ST_B 2103 #define IDS_81XX_HF_ST_A 2104 #define IDS_81XX_HF_ST_B 2105 #define IDS_80XX_HF_ST_A 2106 #define IDS_80XX_HF_ST_B 2107 #define IDS_8104_AHFL_ST 2108 #define IDS_2CD6812F_C 2109 #define DS_77XXN_ST 2201 #define DS_95XX_N_ST 2202 #define DS_85XX_N_ST 2203 #define DS_96XX_N_XT 2204 #define DS_76XX_N_SE 2205 #define DS_86XXSN_SX 2206 #define DS_71XXN_SL 2208 #define CS_N1_1XX 2209 #define DS_71XXN_SN 2210 #define CS_N1_2XX 2211 #define DS_76XX_N_SHT 2212 #define DS_96XXX_N_E 2213 #define DS_76XXN_EX 2214 #define DS_77XXN_E4 2215 #define DS_86XXN_E8 2216 #define DS_9616N_H8 2217 #define DS_72XXHX_EX_GXY 2218 #define DS_76XXN_EX_GXY 2219 #define DS_72XXHXH_SH_21 2220 #define DS_72XXHXH_SH_31 2221 #define DS_73XXHXH_SH_31 2222 #define DS_81XXHXH_SH_31 2223 #define DS_71XXHXH_SH_21 2224 #define DS_71XXHXH_SH_31 2225 #define DS_NBXX_N_E1_X 2226 #define DS_96XXN_FX 2230 #define DS_86XXN_FX 2231 #define DS_96XXXN_HX 2232 #define DS_86XXN_I 2233 #define DS_77XX_N_I 2234 #define DS_76XX_N_I 2235 #define DS_78XX_N_I 2236 #define DS_96XXXN_IX 2237 #define DS_90XXHXH_XT 2238 #define PCNVR_IVMS_4200 2301 #define IVMS_6200_TP 2401 #define IVMS_6200_TF 2402 #define IVMS_6200_D 2403 #define IDS_81XXAHW_ST 2405 #define IDS_81XXAHW_SP 2406 #define IDS_81XXAHWL_ST 2407 #define IDS_81XXAHWL_SP 2408 #define IDS_9616N_H8 2409 #define IVMS_6200_SMD 2500 #define DS_81XXAHW_ST 2501 #define DS_81XXAHW_SP 2502 #define DS_81XXAHWL_ST 2503 #define DS_81XXAHWL_SP 2504 #define DS_81XXAHGH_E4 2601 #define DS_6904UD_AIOE_H_CLASS 4002 #define DS_6402HFH_B21B_CLASS 4005 #define DS_6902UD_B21H_CLASS 4006 #define DS_6902UD_B21D_CLASS 4007 #define DS_6902UD_B21V_CLASS 4008 #define DS_6904UD_B20D_CLASS 4010 #define DS_6904UD_B20V_CLASS 4011 #define DS_AIOH_MCU_NP 4042 #define DS_6404HFH_AIOH_D 4043 #define DS_6908UD_AIOH_D 4044 #define DS_6908UD_AIOH_H 4045 #define DS_69XXUD_B 4046 #define DS_6404HFH_I 4047 #define DS_6904UD_O 4048 #define DS_Y10_MCU 5771 #define DS_Y10_SW1 5772 #define DS_6516UD_Y10D 5773 #define DS_6532UD_Y10D 5774 #define DS_6E2724_Y10 5775 #define DS_68SAA_AA_Y10 5776 #define DS_68SBA_AA_Y10 5777 #define DS_68SCA_AA_Y10 5778 #define DS_68GPU_A1_Y10 5779 #define DS_CPU_SERVER 5780 #define DS_GPU_SERVER 5781 #define DS_BIGDATA_SERVER 5782 #define DS_B80_MCU 5821 #define DS_B80_SW 5822 #define DS_B80_SR_01 5823 #define DS_B80_AI04 5824 #define DS_B80_ST 5825 #define DS_3LGCX 5841 #define DS_3LGRX 5842 #define DS_3LGT4 5843 #define IDS_90XX_HXH_XX_S 6001 #define IDS_90XX_HXH_XX_FA 6002 #define DS_81XX_SHXL_K4 6101 #define DS_8116THFHL_F4 6201 #define DS_81XXAHQ_E4 6301 #define IDS_81XXAHQ_E4 6302 #define IDS_86XX_NX_A 7501 #define IDS_96XX_NX_S 7502 #define IDS_96XX_NX_V 7503 #define IDS_96XX_NX_FA 7504 #define IDS_86XX_NX_IX_B 7505 #define IDS_67XX_NX_S_X 7506 #define IDS_ECDXX_HE 8001 #define IDS_ECDXX_HT 8002 #define IDS_ECDXX_E 8101 #define IDS_EPTXX_HF 8201 #define DS_2CD69XXX_I 8351 #define DS_TRIXX 8471 #define DS_IEXX_E_J 11501 #define IDS_67XX_NX_A 12501 #define IDS_67XX_NX_L 12502 #define IDS_ENIXX_XHE 12503 #define IDS_67XX_NX_V 12504 #define IDS_67XX_NX_B 12505 #define DS_IE63XX_E_FA 13001 #define DS_DS_GPKIA 13002 #define DS_DS_PURE 13003 #define DS_DS_FS 13004 #define DS_DS_FD 13005 #define DS_DS_BLADE 13006 #define DS_DS_HMCP 13007 #define DS_LNX_RF 13501 #define DS_PA_RADAR 13551 #define DEV_CLASS_DVR 1 #define DEV_CLASS_INTERROGATION 2 #define DEV_CLASS_SIMPLE_TRAIL 3 #define DEV_CLASS_TRAIL 4 #define DEV_CLASS_RECORD_PLAY 5 #define DEV_CLASS_ATM 6 #define DEV_CLASS_DVS 51 #define DEV_CLASS_NVR 101 #define DEV_CLASS_GUN 151 #define DEV_CLASS_BALL 152 #define DEV_CLASS_SNAP 153 #define DEV_CLASS_INTELLI_TILT 154 #define DEV_CLASS_FISH_EYE 155 #define DEV_CLASS_2DP_Z 156 #define DEV_CLASS_2DP 157 #define DEV_CLASS_PT 158 #define DEV_CLASS_TRI 159 #define DEV_CLASS_CVR 201 #define DEV_CLASS_B20 251 #define DEV_CLASS_B10 252 #define DEV_CLASS_DECODER 253 #define DEV_CLASS_MATRIXMANAGEDEVICE 254 #define DEV_CLASS_OTICAL 255 #define DEV_CLASS_CODESPITTER 256 #define DEV_CLASS_ALARMHOST 257 #define DEV_CLASS_MOVING_RING 258 #define DEV_CLASS_CVCS 259 #define DEV_CLASS_DVCS 260 #define DEV_CLASS_TRANSCODER 261 #define DEV_CLASS_LCD_SCREEN 262 #define DEV_CLASS_LED_SCREEN 263 #define DEV_CLASS_MATRIX 264 #define DEV_CLASS_CONFERENCE_SYSTEM 265 #define DEV_CLASS_INFORMATION_RELEASE_EQUIPMENT 266 #define DEV_CLASS_NET_GAP 267 #define DEV_CLASS_MERGE 268 #define DEV_CLASS_REAR_PROJECTION 269 #define DEV_CLASS_SWITCH 270 #define DEV_CLASS_FIBER_CONVERTER 271 #define DEV_CLASS_SCREEN_SERVER 272 #define DEV_CLASS_SCE_SERVER 273 #define DEV_CLASS_WIRELESS_TRANS 274 #define DEV_CLASS_Y10_SERIES 275 #define DEV_CLASS_SAFETY_MAVHINE 276 #define DEV_CLASS_IOTGATEWAY 277 #define DEV_CLASS_VIDEO_ALARM_HOST 301 #define DEV_CLASS_NET_ALARM_HOST 302 #define DEV_CLASS_ONE_KEY_ALARM 303 #define DEV_CLASS_WIRELESS_ALARM_HOST 304 #define DEV_CLASS_ALARM_MODULE 305 #define DEV_CLASS_HOME_ALARM_HOST 306 #define DEV_CLASS_ACCESS_CONTROL 351 #define DEV_CLASS_VIDEO_INTERCOM 401 #define DEV_CLASS_UMMANNED_AERIAL_VEHICLE 451 #define DEV_CLASS_MOBILE 501 #define DEV_CLASS_MOBILE_VEHICLE 551 #define DEV_CLASS_INTELLIGENT_ANALYZER 601 #define DEV_CLASS_INTELLIGENT_TRAFFIC_SERVER 651 #define DS_TP2200_EC 652 #define DEV_CLASS_NVS 701 #define DS_TRI21A_1_P 751 #define DS_CLASS_FA 801 #define DS_CLASS_PURE 802 #define DS_CLASS_FS 803 #define DS_CLASS_FD 804 #define DS_CLASS_HAWK 805 #define DS_CLASS_BLADE 806 #define DS_CLASS_HMCP 807 #define DEV_CLASS_SMART_LOCK 851 #define DEV_CLASS_RADAR 901 #define iDS_PT 8451 #define DEV_CLASS_DEFAULT 65534 #define DEVICE_SOFTHARDWARE_ABILITY 0x001 #define DEVICE_NETWORK_ABILITY 0x002 #define DEVICE_ENCODE_ALL_ABILITY 0x003 #define DEVICE_ENCODE_CURRENT 0x004 #define IPC_FRONT_PARAMETER 0x005 #define IPC_UPGRADE_DESCRIPTION 0x006 #define DEVICE_RAID_ABILITY 0x007 #define DEVICE_ENCODE_ALL_ABILITY_V20 0x008 #define IPC_FRONT_PARAMETER_V20 0x009 #define DEVICE_ALARM_ABILITY 0x00a #define DEVICE_DYNCHAN_ABILITY 0x00b #define DEVICE_USER_ABILITY 0x00c #define DEVICE_NETAPP_ABILITY 0x00d #define DEVICE_VIDEOPIC_ABILITY 0x00e #define DEVICE_JPEG_CAP_ABILITY 0x00f #define DEVICE_SERIAL_ABILITY 0x010 #define DEVICE_ABILITY_INFO 0x011 #define STREAM_ABILITY 0x012 #define SYSTEM_MANAGEMENT_ABILITY 0x013 #define IP_VIEW_DEV_ABILITY 0x014 #define VCA_DEV_ABILITY 0x100 #define VCA_CHAN_ABILITY 0x110 #define TRANSFER_ABILITY 0x120 #define MATRIXDECODER_ABILITY 0x200 #define VIDEOPLATFORM_ABILITY 0x210 #define VIDEOPLATFORM_SBUCODESYSTEM_ABILITY 0x211 #define WALL_ABILITY 0x212 #define MATRIX_ABILITY 0x213 #define DECODECARD_ABILITY 0x220 #define VIDEOPLATFORM_ABILITY_V40 0x230 #define MATRIXMANAGEDEVICE_ABILITY 0x240 #define MATRIXDECODER_ABILITY_V41 0x260 #define DECODER_ABILITY 0x261 #define DECODECARD_ABILITY_V41 0x270 #define CODECARD_ABILITY 0x271 #define SNAPCAMERA_ABILITY 0x300 #define ITC_TRIGGER_MODE_ABILITY 0x301 #define COMPRESSIONCFG_ABILITY 0x400 #define COMPRESSION_LIMIT 0x401 #define PIC_CAPTURE_ABILITY 0x402 #define ALARMHOST_ABILITY 0x500 #define IT_DEVICE_ABILITY 0x501 #define SCREENCONTROL_ABILITY 0x600 #define SCREENSERVER_ABILITY 0x610 #define FISHEYE_ABILITY 0x700 #define LCD_SCREEN_ABILITY 0x800 #define ACS_ABILITY 0x801 #define MERGEDEV_ABILITY 0x802 #define CAM_FUSION_ABILITY 0x803 #define OPTICAL_DEV_ACCESS_ABILITY 0x805 #define NET_RING_ABILITY 0x806 #define LED_ABILITY 0x807 #define PUBLISHDEV_ABILITY 0x80a #define SCREEN_EXCHANGE_ABILITY 0x80b #define REMOTE_NETMGR_FOT_ABILITY 0x80e #define EXCEPTION_MAJOR_MAINBOARD_BOOT 0x1 #define EXCEPTION_MINOR_PCIE_SCAN 0x1 #define EXCEPTION_MINOR_DOWNLOAD_SUBBOARD 0xa #define EXCEPTION_MAJOR_SUBBOARD_BOOT 0x2 #define EXCEPTION_MINOR_INEXISTENCE 0x1 #define EXCEPTION_MINOR_UBOOT_DOWNLOAD 0xa #define EXCEPTION_MINOR_UBOOT_INIT 0xe #define EXCEPTION_MINOR_ROOTFS_DOWNLOAD 0x14 #define EXCEPTION_MINOR_UIMAGE_DOWNLOAD 0x19 #define EXCEPTION_MINOR_UBOOT_SETBOOTFLAG 0x1e #define EXCEPTION_MINOR_ROOTFS_BOOT_SUBBOARD 0x23 #define EXCEPTION_MINOR_NEED_FILE_FINISH 0x28 #define EXCEPTION_MAJOR_SUBBOARD_HARDWARE 0x3 #define EXCEPTION_MINOR_AD 0x1 #define EXCEPTION_MINOR_DA 0xa #define EXCEPTION_MINOR_TIMER 0xb #define EXCEPTION_MAJOR_FPGA 0x4 #define EXCEPTION_MINOR_IDLE 0x1 #define EXCEPTION_MINOR_LANE 0xa #define EXCEPTION_MINOR_REGISTER_ALL_F 0xe #define EXCEPTION_MINOR_MEMORY_INIT_FAIL 0x14 #define EXCEPTION_MAJOR_DSP 0x5 #define EXCEPTION_MAJOR_ARM 0x6 #define EXCEPTION_MAJOR_BACKBOARD 0x7 #define EXCEPTION_MINOR_BLACKBOARD_TYPE 0x1 #define EXCEPTION_MINOR_SERDES 0xa #define EXCEPTION_MINOR_CLOCK 0xe #define EXCEPTION_MINOR_SYNCH 0x14 #define EXCEPTION_MAJOR_SUBBOARD_NET 0x8 #define EXCEPTION_MINOR_IP_CONFLICT 0x1 #define EXCEPTION_MINOR_DISCONNECT 0x14 #define MAX_FIRE_ALARM_ZONE 12 #define MAX_FIRE_ALARM_POINT_ZONE 32 typedef enum tagCharEncodeType { ENUM_MEM_CHAR_ENCODE_ERR = -1, ENUM_MEM_CHAR_ENCODE_NO = 0, ENUM_MEM_CHAR_ENCODE_CN = 1, ENUM_MEM_CHAR_ENCODE_GBK = 2, ENUM_MEM_CHAR_ENCODE_BIG5 = 3, ENUM_MEM_CHAR_ENCODE_JP = 4, ENUM_MEM_CHAR_ENCODE_KR = 5, ENUM_MEM_CHAR_ENCODE_UTF8 = 6, ENUM_MEM_CHAR_ENCODE_ISO8859_1 = 7, ENUM_MEM_CHAR_ENCODE_UNICODE = 8, }CHAR_ENCODE_TYPE; typedef struct tagNET_DVR_TIME { DWORD dwYear; DWORD dwMonth; DWORD dwDay; DWORD dwHour; DWORD dwMinute; DWORD dwSecond; }NET_DVR_TIME, *LPNET_DVR_TIME; typedef struct tagNET_DVR_TIME_V30 { WORD wYear; BYTE byMonth; BYTE byDay; BYTE byHour; BYTE byMinute; BYTE bySecond; BYTE byISO8601; WORD wMilliSec; char cTimeDifferenceH; char cTimeDifferenceM; }NET_DVR_TIME_V30, *LPNET_DVR_TIME_V30; typedef struct tagNET_DVR_TIME_SEARCH { WORD wYear; BYTE byMonth; BYTE byDay; BYTE byHour; BYTE byMinute; BYTE bySecond; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byLocalOrUTC; WORD wMillisecond; }NET_DVR_TIME_SEARCH, *LPNET_DVR_TIME_SEARCH; typedef struct tagNET_DVR_TIME_SEARCH_COND { WORD wYear; BYTE byMonth; BYTE byDay; BYTE byHour; BYTE byMinute; BYTE bySecond; BYTE byLocalOrUTC; WORD wMillisecond; char cTimeDifferenceH; char cTimeDifferenceM; }NET_DVR_TIME_SEARCH_COND, *LPNET_DVR_TIME_SEARCH_COND; typedef struct tagNET_DVR_TIME_V50 { WORD wYear; BYTE byMonth; BYTE byDay; BYTE byHour; BYTE byMinute; BYTE bySecond; BYTE byISO8601; WORD wMillisecond; char cTimeDifferenceH; char cTimeDifferenceM; }NET_DVR_TIME_V50, *LPNET_DVR_TIME_V50; typedef struct tagNET_DVR_CALIBRATE_TIME { DWORD dwSize; NET_DVR_TIME struTime; WORD wMilliSec; BYTE byRes[14]; }NET_DVR_CALIBRATE_TIME,*LPNET_DVR_CALIBRATE_TIME; #define MAX_TIMESIGN_LEN 32 typedef struct tagNET_DVR_TIMESIGN_CFG { DWORD dwSize; BYTE byCustomSetTimeSign[MAX_TIMESIGN_LEN]; BYTE byRes[96]; }NET_DVR_TIMESIGN_CFG,*LPNET_DVR_TIMESIGN_CFG; typedef struct tagNET_DVR_TIME_EX { WORD wYear; BYTE byMonth; BYTE byDay; BYTE byHour; BYTE byMinute; BYTE bySecond; BYTE byRes; }NET_DVR_TIME_EX,*LPNET_DVR_TIME_EX; typedef struct tagNET_DVR_SCHEDTIME { BYTE byStartHour; BYTE byStartMin; BYTE byStopHour; BYTE byStopMin; }NET_DVR_SCHEDTIME, *LPNET_DVR_SCHEDTIME; #define NOACTION 0x0 #define WARNONMONITOR 0x1 #define WARNONAUDIOOUT 0x2 #define UPTOCENTER 0x4 #define TRIGGERALARMOUT 0x8 #define TRIGGERCATPIC 0x10 #define SEND_PIC_FTP 0x200 typedef struct tagNET_DVR_STRUCTHEAD { WORD wLength; BYTE byVersion ; BYTE byRes; }NET_DVR_STRUCTHEAD, *LPNET_DVR_STRUCTHEAD; typedef struct tagNET_DVR_HANDLEEXCEPTION_V41 { DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; BYTE byRes[64]; }NET_DVR_HANDLEEXCEPTION_V41, *LPNET_DVR_HANDLEEXCEPTION_V41; typedef struct tagNET_DVR_HANDLEEXCEPTION_V40 { DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOutChanNum; DWORD dwRelAlarmOut[MAX_CHANNUM_V30]; BYTE byWhiteLightDurationTime; BYTE byBrightness; BYTE byAudioType; BYTE byTimes; BYTE byRes[60]; }NET_DVR_HANDLEEXCEPTION_V40, *LPNET_DVR_HANDLEEXCEPTION_V40; typedef struct tagNET_DVR_HANDLEEXCEPTION_V30 { DWORD dwHandleType; BYTE byRelAlarmOut[MAX_ALARMOUT_V30]; }NET_DVR_HANDLEEXCEPTION_V30, *LPNET_DVR_HANDLEEXCEPTION_V30; typedef struct tagNET_DVR_HANDLEEXCEPTION { DWORD dwHandleType; BYTE byRelAlarmOut[MAX_ALARMOUT]; }NET_DVR_HANDLEEXCEPTION, *LPNET_DVR_HANDLEEXCEPTION; typedef struct tagNET_DVR_DEVICECFG { DWORD dwSize; BYTE sDVRName[NAME_LEN]; DWORD dwDVRID; DWORD dwRecycleRecord; BYTE sSerialNumber[SERIALNO_LEN]; DWORD dwSoftwareVersion; DWORD dwSoftwareBuildDate; DWORD dwDSPSoftwareVersion; DWORD dwDSPSoftwareBuildDate; DWORD dwPanelVersion; DWORD dwHardwareVersion; BYTE byAlarmInPortNum; BYTE byAlarmOutPortNum; BYTE byRS232Num; BYTE byRS485Num; BYTE byNetworkPortNum; BYTE byDiskCtrlNum; BYTE byDiskNum; BYTE byDVRType; BYTE byChanNum; BYTE byStartChan; BYTE byDecordChans; BYTE byVGANum; BYTE byUSBNum; BYTE byAuxoutNum; BYTE byAudioNum; BYTE byIPChanNum; }NET_DVR_DEVICECFG, *LPNET_DVR_DEVICECFG; typedef struct tagNET_DVR_IPADDR { char sIpV4[16]; BYTE byIPv6[128]; }NET_DVR_IPADDR, *LPNET_DVR_IPADDR; typedef struct tagNET_DVR_ADDRESS { NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes[2]; }NET_DVR_ADDRESS, *LPNET_DVR_ADDRESS; typedef struct tagNET_DVR_ETHERNET_V30 { NET_DVR_IPADDR struDVRIP; NET_DVR_IPADDR struDVRIPMask; DWORD dwNetInterface; WORD wDVRPort; WORD wMTU; BYTE byMACAddr[MACADDR_LEN]; BYTE byEthernetPortNo; BYTE byRes[1]; }NET_DVR_ETHERNET_V30, *LPNET_DVR_ETHERNET_V30; typedef struct tagNET_DVR_ETHERNET { char sDVRIP[16]; char sDVRIPMask[16]; DWORD dwNetInterface; WORD wDVRPort; BYTE byMACAddr[MACADDR_LEN]; }NET_DVR_ETHERNET; typedef struct tagNET_DVR_PPPOECFG { DWORD dwPPPOE; BYTE sPPPoEUser[NAME_LEN]; char sPPPoEPassword[PASSWD_LEN]; NET_DVR_IPADDR struPPPoEIP; }NET_DVR_PPPOECFG, *LPNET_DVR_PPPOECFG; typedef struct tagNET_DVR_NETCFG_V30 { DWORD dwSize; NET_DVR_ETHERNET_V30 struEtherNet[MAX_ETHERNET]; NET_DVR_IPADDR struRes1[2]; NET_DVR_IPADDR struAlarmHostIpAddr; BYTE byRes2[4]; WORD wAlarmHostIpPort; BYTE byUseDhcp; BYTE byIPv6Mode; NET_DVR_IPADDR struDnsServer1IpAddr; NET_DVR_IPADDR struDnsServer2IpAddr; BYTE byIpResolver[MAX_DOMAIN_NAME]; WORD wIpResolverPort; WORD wHttpPortNo; NET_DVR_IPADDR struMulticastIpAddr; NET_DVR_IPADDR struGatewayIpAddr; NET_DVR_PPPOECFG struPPPoE; BYTE byEnablePrivateMulticastDiscovery; BYTE byEnableOnvifMulticastDiscovery; BYTE byEnableDNS; BYTE byRes[61]; } NET_DVR_NETCFG_V30, *LPNET_DVR_NETCFG_V30; typedef struct tagNET_DVR_ETHERNET_MULTI { NET_DVR_IPADDR struDVRIP; NET_DVR_IPADDR struDVRIPMask; DWORD dwNetInterface; BYTE byCardType; BYTE byEnableDNS; WORD wMTU; BYTE byMACAddr[MACADDR_LEN]; BYTE byEthernetPortNo; BYTE byRes2[1]; BYTE byUseDhcp; BYTE byRes3[3]; NET_DVR_IPADDR struGatewayIpAddr; NET_DVR_IPADDR struDnsServer1IpAddr; NET_DVR_IPADDR struDnsServer2IpAddr; }NET_DVR_ETHERNET_MULTI, *LPNET_DVR_ETHERNET_MULTI; typedef struct tagNET_DVR_NETCFG_MULTI { DWORD dwSize; BYTE byDefaultRoute; BYTE byNetworkCardNum; BYTE byWorkMode; BYTE byRes; NET_DVR_ETHERNET_MULTI struEtherNet[MAX_NETWORK_CARD]; NET_DVR_IPADDR struManageHost1IpAddr; NET_DVR_IPADDR struManageHost2IpAddr; NET_DVR_IPADDR struAlarmHostIpAddr; WORD wManageHost1Port; WORD wManageHost2Port; WORD wAlarmHostIpPort; BYTE byIpResolver[MAX_DOMAIN_NAME]; WORD wIpResolverPort; WORD wDvrPort; WORD wHttpPortNo; WORD wDvrPort2; BYTE byRes2[4]; NET_DVR_IPADDR struMulticastIpAddr; NET_DVR_PPPOECFG struPPPoE; BYTE byRes3[24]; }NET_DVR_NETCFG_MULTI, *LPNET_DVR_NETCFG_MULTI; typedef struct tagNET_DVR_NETCFG { DWORD dwSize; NET_DVR_ETHERNET struEtherNet[MAX_ETHERNET]; char sManageHostIP[16]; WORD wManageHostPort; char sIPServerIP[16]; char sMultiCastIP[16]; char sGatewayIP[16]; char sNFSIP[16]; BYTE sNFSDirectory[PATHNAME_LEN]; DWORD dwPPPOE; BYTE sPPPoEUser[NAME_LEN]; char sPPPoEPassword[PASSWD_LEN]; char sPPPoEIP[16]; WORD wHttpPort; }NET_DVR_NETCFG, *LPNET_DVR_NETCFG; typedef struct tagNET_DVR_NETCFG_V50 { DWORD dwSize; NET_DVR_ETHERNET_V30 struEtherNet[MAX_ETHERNET]; NET_DVR_IPADDR struRes1[2]; NET_DVR_IPADDR struAlarmHostIpAddr; BYTE byRes2[4]; WORD wAlarmHostIpPort; BYTE byUseDhcp; BYTE byIPv6Mode; NET_DVR_IPADDR struDnsServer1IpAddr; NET_DVR_IPADDR struDnsServer2IpAddr; BYTE byIpResolver[MAX_DOMAIN_NAME]; WORD wIpResolverPort; WORD wHttpPortNo; NET_DVR_IPADDR struMulticastIpAddr; NET_DVR_IPADDR struGatewayIpAddr; NET_DVR_PPPOECFG struPPPoE; BYTE byEnablePrivateMulticastDiscovery; BYTE byEnableOnvifMulticastDiscovery; WORD wAlarmHost2IpPort; NET_DVR_IPADDR struAlarmHost2IpAddr; BYTE byEnableDNS; BYTE byRes[599]; }NET_DVR_NETCFG_V50, *LPNET_DVR_NETCFG_V50; typedef struct tagNET_DVR_SIP_CFG { DWORD dwSize; BYTE byEnableAutoLogin; BYTE byLoginStatus; BYTE byRes1[2]; NET_DVR_IPADDR stuServerIP; WORD wServerPort; BYTE byRes2[2]; BYTE byUserName[NAME_LEN]; BYTE byPassWord[PASSWD_LEN]; BYTE byLocalNo[MAX_NUMBER_LEN]; BYTE byDispalyName[MAX_NAME_LEN]; WORD wLocalPort; BYTE byLoginCycle; BYTE byType; BYTE byDomainName[MAX_DOMAIN_NAME]; BYTE byRes[64]; }NET_DVR_SIP_CFG, *LPNET_DVR_SIP_CFG; typedef struct tagNET_DVR_SIP_CFG_V50 { DWORD dwSize; BYTE byEnableAutoLogin; BYTE byLoginStatus; BYTE byRes1[2]; NET_DVR_IPADDR stuServerIP; WORD wServerPort; BYTE byRes2[2]; BYTE byUserName[NAME_LEN]; BYTE byPassWord[PASSWD_LEN]; BYTE byLocalNo[MAX_NUMBER_LEN]; BYTE byDispalyName[MAX_NAME_LEN]; WORD wLocalPort; BYTE byLoginCycle; BYTE byRes3; BYTE bySIPServerDomain[MAX_DOMAIN_NAME]; NET_DVR_IPADDR stuSTUNServerIP; BYTE bySTUNServerDomain[MAX_DOMAIN_NAME]; WORD wSTUNServerPort; BYTE byRes4[2]; NET_DVR_IPADDR stuProxyServerIP; BYTE byProxyServerDomain[MAX_DOMAIN_NAME]; WORD wProxyServerPort; BYTE byRes[258]; }NET_DVR_SIP_CFG_V50, *LPNET_DVR_SIP_CFG_V50; typedef struct tagNET_DVR_IP_VIEW_DEVCFG { DWORD dwSize; BYTE byDefaultRing; BYTE byRingVolume; BYTE byInputVolume; BYTE byOutputVolume; WORD wRtpPort; BYTE byRes1[2]; DWORD dwPreviewDelayTime; BYTE byRes2[64]; }NET_DVR_IP_VIEW_DEVCFG,*LPNET_DVR_IP_VIEW_DEVCFG; typedef struct tagNET_DVR_IP_VIEW_AUDIO_CFG { DWORD dwSize; BYTE byAudioEncPri1; BYTE byAudioEncPri2; WORD wAudioPacketLen1; WORD wAudioPacketLen2; BYTE byRes[30]; }NET_DVR_IP_VIEW_AUDIO_CFG,*LPNET_DVR_IP_VIEW_AUDIO_CFG; typedef struct tagNET_DVR_IP_VIEW_CALL_CFG { DWORD dwSize ; BYTE byEnableAutoResponse; BYTE byAudoResponseTime; BYTE byRes1[2]; BYTE byEnableAlarmNumber1; BYTE byRes2[3]; BYTE byAlarmNumber1[MAX_NUMBER_LEN]; BYTE byEnableAlarmNumber2; BYTE byRes3[3]; BYTE byAlarmNumber2[MAX_NUMBER_LEN]; BYTE byRes4[72]; }NET_DVR_IP_VIEW_CALL_CFG,*LPNET_DVR_IP_VIEW_CALL_CFG; typedef struct tagNET_DVR_RECORDCHAN { DWORD dwMaxRecordChanNum; DWORD dwCurRecordChanNum; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes[64]; }NET_DVR_RECORDCHAN, *LPNET_DVR_RECORDCHAN; typedef struct tagNET_DVR_MOTION_V30 { BYTE byMotionScope[64][96]; BYTE byMotionSensitive; BYTE byEnableHandleMotion; BYTE byEnableDisplay; char reservedData; NET_DVR_HANDLEEXCEPTION_V30 struMotionHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRelRecordChan[MAX_CHANNUM_V30]; }NET_DVR_MOTION_V30, *LPNET_DVR_MOTION_V30; typedef struct tagNET_DVR_MOTION { BYTE byMotionScope[18][22]; BYTE byMotionSensitive; BYTE byEnableHandleMotion; BYTE byEnableDisplay; char reservedData; NET_DVR_HANDLEEXCEPTION strMotionHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; BYTE byRelRecordChan[MAX_CHANNUM]; }NET_DVR_MOTION, *LPNET_DVR_MOTION; typedef struct tagNET_DVR_HIDEALARM_V30 { DWORD dwEnableHideAlarm; WORD wHideAlarmAreaTopLeftX; WORD wHideAlarmAreaTopLeftY; WORD wHideAlarmAreaWidth; WORD wHideAlarmAreaHeight; NET_DVR_HANDLEEXCEPTION_V30 strHideAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; }NET_DVR_HIDEALARM_V30, *LPNET_DVR_HIDEALARM_V30; typedef struct tagNET_DVR_HIDEALARM { DWORD dwEnableHideAlarm; WORD wHideAlarmAreaTopLeftX; WORD wHideAlarmAreaTopLeftY; WORD wHideAlarmAreaWidth; WORD wHideAlarmAreaHeight; NET_DVR_HANDLEEXCEPTION strHideAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; }NET_DVR_HIDEALARM, *LPNET_DVR_HIDEALARM; typedef struct tagNET_DVR_VILOST_V30 { BYTE byEnableHandleVILost; NET_DVR_HANDLEEXCEPTION_V30 strVILostHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; }NET_DVR_VILOST_V30, *LPNET_DVR_VILOST_V30; typedef struct tagNET_DVR_VILOST { BYTE byEnableHandleVILost; NET_DVR_HANDLEEXCEPTION strVILostHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; }NET_DVR_VILOST, *LPNET_DVR_VILOST; typedef struct tagNET_DVR_SHELTER { WORD wHideAreaTopLeftX; WORD wHideAreaTopLeftY; WORD wHideAreaWidth; WORD wHideAreaHeight; }NET_DVR_SHELTER, *LPNET_DVR_SHELTER; typedef struct tagNET_DVR_COLOR { BYTE byBrightness; BYTE byContrast; BYTE bySaturation; BYTE byHue; }NET_DVR_COLOR, *LPNET_DVR_COLOR; typedef struct tagNET_DVR_RGB_COLOR { BYTE byRed; BYTE byGreen; BYTE byBlue; BYTE byRes; }NET_DVR_RGB_COLOR, *LPNET_DVR_RGB_COLOR; typedef struct tagNET_VCA_POINT { float fX; float fY; }NET_VCA_POINT, *LPNET_VCA_POINT; typedef struct tagNET_DVR_PICCFG_V30 { DWORD dwSize; BYTE sChanName[NAME_LEN]; DWORD dwVideoFormat; BYTE byReservedData[64]; DWORD dwShowChanName; WORD wShowNameTopLeftX; WORD wShowNameTopLeftY; NET_DVR_VILOST_V30 struVILost; NET_DVR_VILOST_V30 struRes; NET_DVR_MOTION_V30 struMotion; NET_DVR_HIDEALARM_V30 struHideAlarm; DWORD dwEnableHide; NET_DVR_SHELTER struShelter[MAX_SHELTERNUM]; DWORD dwShowOsd; WORD wOSDTopLeftX; WORD wOSDTopLeftY; BYTE byOSDType; BYTE byDispWeek; BYTE byOSDAttrib; BYTE byHourOSDType; BYTE byFontSize; BYTE byOSDColorType; BYTE byAlignment; BYTE byOSDMilliSecondEnable; NET_DVR_RGB_COLOR struOsdColor; DWORD dwBoundary; NET_DVR_RGB_COLOR struOsdBkColor; BYTE byOSDBkColorMode; BYTE byRes[47]; }NET_DVR_PICCFG_V30, *LPNET_DVR_PICCFG_V30; typedef struct tagNET_DVR_PICCFG_EX { DWORD dwSize; BYTE sChanName[NAME_LEN]; DWORD dwVideoFormat; BYTE byBrightness; BYTE byContrast; BYTE bySaturation; BYTE byHue; DWORD dwShowChanName; WORD wShowNameTopLeftX; WORD wShowNameTopLeftY; NET_DVR_VILOST struVILost; NET_DVR_MOTION struMotion; NET_DVR_HIDEALARM struHideAlarm; DWORD dwEnableHide; NET_DVR_SHELTER struShelter[MAX_SHELTERNUM]; DWORD dwShowOsd; WORD wOSDTopLeftX; WORD wOSDTopLeftY; BYTE byOSDType; BYTE byDispWeek; BYTE byOSDAttrib; BYTE byHourOsdType; }NET_DVR_PICCFG_EX, *LPNET_DVR_PICCFG_EX; typedef struct tagNET_DVR_PICTURECFG { DWORD dwSize; BYTE sChanName[NAME_LEN]; DWORD dwVideoFormat; BYTE byBrightness; BYTE byContrast; BYTE bySaturation; BYTE byHue; DWORD dwShowChanName; WORD wShowNameTopLeftX; WORD wShowNameTopLeftY; NET_DVR_VILOST struVILost; NET_DVR_MOTION struMotion; NET_DVR_HIDEALARM struHideAlarm; DWORD dwEnableHide; WORD wHideAreaTopLeftX; WORD wHideAreaTopLeftY; WORD wHideAreaWidth; WORD wHideAreaHeight; DWORD dwShowOsd; WORD wOSDTopLeftX; WORD wOSDTopLeftY; BYTE byOSDType; BYTE byDispWeek; BYTE byOSDAttrib; char reservedData2; }NET_DVR_PICCFG, *LPNET_DVR_PICCFG; typedef enum _BITRATE_ENCODE_INDEX_ { BITRATE_ENCODE_def = 0, BITRATE_ENCODE_8kps = 1, BITRATE_ENCODE_16kps = 2, BITRATE_ENCODE_32kps = 3, BITRATE_ENCODE_64kps = 4, BITRATE_ENCODE_128kps = 5, BITRATE_ENCODE_192kps = 6, BITRATE_ENCODE_40kps = 7, BITRATE_ENCODE_48kps = 8, BITRATE_ENCODE_56kps = 9, BITRATE_ENCODE_80kps = 10, BITRATE_ENCODE_96kps = 11, BITRATE_ENCODE_112kps = 12, BITRATE_ENCODE_144kps = 13, BITRATE_ENCODE_160kps = 14 }BITRATE_ENCODE_INDEX; typedef struct tagNET_DVR_COMPRESSION_INFO_V30 { BYTE byStreamType; BYTE byResolution; BYTE byBitrateType; BYTE byPicQuality; DWORD dwVideoBitrate; DWORD dwVideoFrameRate; WORD wIntervalFrameI; BYTE byIntervalBPFrame; BYTE byres1; BYTE byVideoEncType; BYTE byAudioEncType; BYTE byVideoEncComplexity; BYTE byEnableSvc; BYTE byFormatType; BYTE byAudioBitRate; BYTE byStreamSmooth; BYTE byAudioSamplingRate; BYTE bySmartCodec; BYTE byDepthMapEnable; WORD wAverageVideoBitrate; }NET_DVR_COMPRESSION_INFO_V30, *LPNET_DVR_COMPRESSION_INFO_V30; typedef struct tagNET_DVR_COMPRESSIONCFG_V30 { DWORD dwSize; NET_DVR_COMPRESSION_INFO_V30 struNormHighRecordPara; NET_DVR_COMPRESSION_INFO_V30 struRes; NET_DVR_COMPRESSION_INFO_V30 struEventRecordPara; NET_DVR_COMPRESSION_INFO_V30 struNetPara; }NET_DVR_COMPRESSIONCFG_V30, *LPNET_DVR_COMPRESSIONCFG_V30; typedef struct tagNET_DVR_COMPRESSION_INFO { BYTE byStreamType; BYTE byResolution; BYTE byBitrateType; BYTE byPicQuality; DWORD dwVideoBitrate; DWORD dwVideoFrameRate; }NET_DVR_COMPRESSION_INFO, *LPNET_DVR_COMPRESSION_INFO; typedef struct tagNET_DVR_COMPRESSIONCFG { DWORD dwSize; NET_DVR_COMPRESSION_INFO struRecordPara; NET_DVR_COMPRESSION_INFO struNetPara; }NET_DVR_COMPRESSIONCFG, *LPNET_DVR_COMPRESSIONCFG; typedef struct tagNET_DVR_COMPRESSION_INFO_EX { BYTE byStreamType; BYTE byResolution; BYTE byBitrateType; BYTE byPicQuality; DWORD dwVideoBitrate; DWORD dwVideoFrameRate; WORD wIntervalFrameI; BYTE byIntervalBPFrame; BYTE byRes; }NET_DVR_COMPRESSION_INFO_EX, *LPNET_DVR_COMPRESSION_INFO_EX; typedef struct tagNET_DVR_COMPRESSIONCFG_EX { DWORD dwSize; NET_DVR_COMPRESSION_INFO_EX struRecordPara; NET_DVR_COMPRESSION_INFO_EX struNetPara; }NET_DVR_COMPRESSIONCFG_EX, *LPNET_DVR_COMPRESSIONCFG_EX; typedef struct tagNET_DVR_RECORDSCHED { NET_DVR_SCHEDTIME struRecordTime; BYTE byRecordType; char reservedData[3]; }NET_DVR_RECORDSCHED, *LPNET_DVR_RECORDSCHED; typedef struct tagNET_DVR_RECORDDAY { WORD wAllDayRecord; BYTE byRecordType; char reservedData; }NET_DVR_RECORDDAY, *LPNET_DVR_RECORDDAY; typedef struct tagNET_DVR_RECORD_V30 { DWORD dwSize; DWORD dwRecord; NET_DVR_RECORDDAY struRecAllDay[MAX_DAYS]; NET_DVR_RECORDSCHED struRecordSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwRecordTime; DWORD dwPreRecordTime; DWORD dwRecorderDuration; BYTE byRedundancyRec; BYTE byAudioRec; BYTE byStreamType; BYTE byPassbackRecord; WORD wLockDuration; BYTE byRecordBackup; BYTE bySVCLevel; BYTE byRecordManage; BYTE byExtraSaveAudio; BYTE byIntelligentRecord; BYTE byReserve; }NET_DVR_RECORD_V30, *LPNET_DVR_RECORD_V30; typedef struct tagNET_DVR_RECORDSCHED_V40 { NET_DVR_SCHEDTIME struRecordTime; BYTE byRecordType; BYTE byRes[31]; }NET_DVR_RECORDSCHED_V40, *LPNET_DVR_RECORDSCHED_V40; typedef struct tagNET_DVR_RECORDDAY_V40 { BYTE byAllDayRecord; BYTE byRecordType; BYTE byRes[62]; }NET_DVR_RECORDDAY_V40, *LPNET_DVR_RECORDDAY_V40; typedef struct tagNET_DVR_RECORD_V40 { DWORD dwSize; DWORD dwRecord; NET_DVR_RECORDDAY_V40 struRecAllDay[MAX_DAYS]; NET_DVR_RECORDSCHED_V40 struRecordSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwRecordTime; DWORD dwPreRecordTime; DWORD dwRecorderDuration; BYTE byRedundancyRec; BYTE byAudioRec; BYTE byStreamType; BYTE byPassbackRecord; WORD wLockDuration; BYTE byRecordBackup; BYTE bySVCLevel; BYTE byRecordManage; BYTE byExtraSaveAudio; BYTE byIntelligentRecord; BYTE byRes[125]; }NET_DVR_RECORD_V40, *LPNET_DVR_RECORD_V40; typedef struct tagNET_DVR_RECORD { DWORD dwSize; DWORD dwRecord; NET_DVR_RECORDDAY struRecAllDay[MAX_DAYS]; NET_DVR_RECORDSCHED struRecordSched[MAX_DAYS][MAX_TIMESEGMENT]; DWORD dwRecordTime; DWORD dwPreRecordTime; }NET_DVR_RECORD, *LPNET_DVR_RECORD; typedef struct tagNET_DVR_PTZ_PROTOCOL { DWORD dwType; BYTE byDescribe[DESC_LEN]; }NET_DVR_PTZ_PROTOCOL; typedef struct tagNET_DVR_PTZCFG { DWORD dwSize; NET_DVR_PTZ_PROTOCOL struPtz[PTZ_PROTOCOL_NUM]; DWORD dwPtzNum; BYTE byRes[8]; }NET_DVR_PTZCFG, *LPNET_DVR_PTZCFG; typedef struct tagNET_DVR_SERIALSTART_V40 { DWORD dwSize; DWORD dwSerialType; BYTE bySerialNum; BYTE byRes[255]; }NET_DVR_SERIALSTART_V40,*LPNET_DVR_SERIALSTART_V40; typedef struct tagNET_DVR_DECODERCFG_V40 { DWORD dwSize; DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; WORD wDecoderType; WORD wDecoderAddress; BYTE bySetPreset [MAX_PRESET_V30]; BYTE bySetCruise[MAX_CRUISE_V30]; BYTE bySetTrack [MAX_TRACK_V30]; BYTE bySerialNO; BYTE byWorkMode; BYTE byRes[254]; }NET_DVR_DECODERCFG_V40,*LPNET_DVR_DECODERCFG_V40; typedef struct tagNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO { float fMaxTemperature; float fMinTemperature; float fAverageTemperature; NET_VCA_POINT struHighestPoint; NET_VCA_POINT struLowestPoint; BYTE byRes[16]; }NET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO, *LPNET_DVR_THERMOMETRYRULE_TEMPERATURE_INFO; typedef struct tagNET_DVR_DECODERCFG_V30 { DWORD dwSize; DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; WORD wDecoderType; WORD wDecoderAddress; BYTE bySetPreset[MAX_PRESET_V30]; BYTE bySetCruise[MAX_CRUISE_V30]; BYTE bySetTrack[MAX_TRACK_V30]; }NET_DVR_DECODERCFG_V30, *LPNET_DVR_DECODERCFG_V30; typedef struct tagNET_DVR_DECODERCFG { DWORD dwSize; DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; WORD wDecoderType; WORD wDecoderAddress; BYTE bySetPreset[MAX_PRESET]; BYTE bySetCruise[MAX_CRUISE]; BYTE bySetTrack[MAX_TRACK]; }NET_DVR_DECODERCFG, *LPNET_DVR_DECODERCFG; typedef struct tagNET_DVR_PPPCFG_V30 { NET_DVR_IPADDR struRemoteIP; NET_DVR_IPADDR struLocalIP; char sLocalIPMask[16]; BYTE sUsername[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byPPPMode; BYTE byRedial; BYTE byRedialMode; BYTE byDataEncrypt; DWORD dwMTU; char sTelephoneNumber[PHONENUMBER_LEN]; }NET_DVR_PPPCFG_V30, *LPNET_DVR_PPPCFG_V30; typedef struct tagNET_DVR_PPPCFG { char sRemoteIP[16]; char sLocalIP[16]; char sLocalIPMask[16]; BYTE sUsername[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byPPPMode; BYTE byRedial; BYTE byRedialMode; BYTE byDataEncrypt; DWORD dwMTU; char sTelephoneNumber[PHONENUMBER_LEN]; }NET_DVR_PPPCFG, *LPNET_DVR_PPPCFG; typedef struct tagNET_DVR_SINGLE_RS232 { DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; DWORD dwWorkMode; }NET_DVR_SINGLE_RS232; typedef struct tagNET_DVR_USB_RS232 { DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; BYTE byVirtualSerialPort; BYTE byRes[3]; }NET_DVR_USB_RS232,*LPNET_DVR_USB_RS232; typedef struct tagNET_DVR_RS232CFG_V30 { DWORD dwSize; NET_DVR_SINGLE_RS232 struRs232[MAX_SERIAL_PORT]; NET_DVR_PPPCFG_V30 struPPPConfig; }NET_DVR_RS232CFG_V30, *LPNET_DVR_RS232CFG_V30; typedef struct tagNET_DVR_RS232CFG { DWORD dwSize; DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; DWORD dwWorkMode; NET_DVR_PPPCFG struPPPConfig; }NET_DVR_RS232CFG, *LPNET_DVR_RS232CFG; typedef struct tagNET_DVR_PRESETCHAN_INFO { DWORD dwEnablePresetChan; DWORD dwPresetPointNo; }NET_DVR_PRESETCHAN_INFO, LPNET_DVR_PRESETCHAN_INFO; typedef struct tagNET_DVR_CRUISECHAN_INFO { DWORD dwEnableCruiseChan; DWORD dwCruiseNo; }NET_DVR_CRUISECHAN_INFO, LPNET_DVR_CRUISECHAN_INFO; typedef struct tagNET_DVR_PTZTRACKCHAN_INFO { DWORD dwEnablePtzTrackChan; DWORD dwPtzTrackNo; }NET_DVR_PTZTRACKCHAN_INFO, LPNET_DVR_PTZTRACKCHAN_INFO; typedef struct tagNET_DVR_PTZ_NOTIFICATION_COND { DWORD dwSize; WORD byEventType; BYTE byRes[2]; DWORD dwChannel; BYTE byRes1[128]; }NET_DVR_PTZ_NOTIFICATION_COND, *LPNET_DVR_PTZ_NOTIFICATION_COND; typedef struct tagNET_DVR_PTZ_NOTIFICATION_CFG { DWORD dwSize; DWORD dwEnablePresetChanNum; NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; DWORD dwEnableCruiseChanNum; NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; DWORD dwEnablePtzTrackChanNum; NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; BYTE byRes1[1024]; }NET_DVR_PTZ_NOTIFICATION_CFG, *LPNET_DVR_PTZ_NOTIFICATION_CFG; typedef struct tagNET_DVR_PTZ_NOTIFICATION { DWORD dwSize; WORD byEventType; BYTE byRes[62]; DWORD dwEnablePresetChanNum; NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; DWORD dwEnableCruiseChanNum; NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; DWORD dwEnablePtzTrackChanNum; NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; BYTE byRes1[1024]; }NET_DVR_PTZ_NOTIFICATION, *LPNET_DVR_PTZ_NOTIFICATION; typedef struct tagNET_DVR_ALARMINCFG_V40 { DWORD dwSize; BYTE sAlarmInName[NAME_LEN]; BYTE byAlarmType; BYTE byAlarmInHandle; BYTE byChannel; BYTE byInputType; DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOutChanNum; DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwMaxRecordChanNum; DWORD dwCurRecordChanNum; DWORD dwRelRecordChan[MAX_CHANNUM_V40]; DWORD dwMaxEnablePtzCtrlNun; DWORD dwEnablePresetChanNum; NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; BYTE byPresetDurationTime[MAX_CHANNUM_V40]; BYTE byRes2[4]; DWORD dwEnableCruiseChanNum; NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; DWORD dwEnablePtzTrackChanNum; NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; BYTE byRes[256]; }NET_DVR_ALARMINCFG_V40, *LPNET_DVR_ALARMINCFG_V40; typedef struct tagNET_DVR_ALARMINCFG_V30 { DWORD dwSize; BYTE sAlarmInName[NAME_LEN]; BYTE byAlarmType; BYTE byAlarmInHandle; BYTE byChannel; BYTE byInputType; NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byEnablePreset[MAX_CHANNUM_V30]; BYTE byPresetNo[MAX_CHANNUM_V30]; BYTE byRes2[192]; BYTE byEnableCruise[MAX_CHANNUM_V30]; BYTE byCruiseNo[MAX_CHANNUM_V30]; BYTE byEnablePtzTrack[MAX_CHANNUM_V30]; BYTE byPTZTrack[MAX_CHANNUM_V30]; BYTE byRes3[16]; }NET_DVR_ALARMINCFG_V30, *LPNET_DVR_ALARMINCFG_V30; typedef struct tagNET_DVR_ALARMINFO_FIXED_HEADER { DWORD dwAlarmType; NET_DVR_TIME_EX struAlarmTime; union { BYTE byUnionLen[120]; struct { DWORD dwAlarmInputNo; DWORD dwTrigerAlarmOutNum; DWORD dwTrigerRecordChanNum; }struIOAlarm; struct { DWORD dwAlarmChanNum; }struAlarmChannel; struct { DWORD dwAlarmHardDiskNum; }struAlarmHardDisk; struct { BYTE bySubAlarmType; BYTE byRes1[3]; NET_DVR_TIME_EX struRecordEndTime; }struRecordingHost; }uStruAlarm; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes2[5]; }NET_DVR_ALRAM_FIXED_HEADER, *LPNET_DVR_ALARM_FIXED_HEADER; typedef struct NET_DVR_ALARMINFO_V40 { NET_DVR_ALRAM_FIXED_HEADER struAlarmFixedHeader; DWORD* pAlarmData; }NET_DVR_ALARMINFO_V40, *LPNET_DVR_ALARMINFO_V40; typedef struct tagNET_DVR_ALARMINCFG { DWORD dwSize; BYTE sAlarmInName[NAME_LEN]; BYTE byAlarmType; BYTE byAlarmInHandle; BYTE byChannel; BYTE byRes; NET_DVR_HANDLEEXCEPTION struAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; BYTE byRelRecordChan[MAX_CHANNUM]; BYTE byEnablePreset[MAX_CHANNUM]; BYTE byPresetNo[MAX_CHANNUM]; BYTE byEnableCruise[MAX_CHANNUM]; BYTE byCruiseNo[MAX_CHANNUM]; BYTE byEnablePtzTrack[MAX_CHANNUM]; BYTE byPTZTrack[MAX_CHANNUM]; }NET_DVR_ALARMINCFG, *LPNET_DVR_ALARMINCFG; typedef struct tagNET_DVR_ANALOG_ALARMINCFG { DWORD dwSize; BYTE byEnableAlarmHandle; BYTE byRes1[3]; BYTE byAlarmInName[NAME_LEN]; WORD wAlarmInUpper; WORD wAlarmInLower; NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes2[100]; }NET_DVR_ANALOG_ALARMINCFG, *LPNET_DVR_ANALOG_ALARMINCFG; typedef struct { DWORD dwAlarmType; DWORD dwAlarmInputNumber; BYTE byAlarmOutputNumber[MAX_ALARMOUT_V30]; BYTE byAlarmRelateChannel[MAX_CHANNUM_V30]; BYTE byChannel[MAX_CHANNUM_V30]; BYTE byDiskNumber[MAX_DISKNUM_V30]; #ifdef SDK_CHEZAI NET_DVR_ADDIT_POSITION GPS_pos; #endif }NET_DVR_ALARMINFO_V30, *LPNET_DVR_ALARMINFO_V30; typedef struct tagNET_DVR_ALARM_HOT_SPARE { DWORD dwSize; DWORD dwExceptionCase; NET_DVR_IPADDR struDeviceIP; BYTE byRes[256]; }NET_DVR_ALARM_HOT_SPARE, *LPNET_DVR_ALARM_HOT_SPARE; typedef struct tagNET_DVR_ALARMINFO { DWORD dwAlarmType; DWORD dwAlarmInputNumber; DWORD dwAlarmOutputNumber[MAX_ALARMOUT]; DWORD dwAlarmRelateChannel[MAX_CHANNUM]; DWORD dwChannel[MAX_CHANNUM]; DWORD dwDiskNumber[MAX_DISKNUM]; }NET_DVR_ALARMINFO, *LPNET_DVR_ALARMINFO; typedef struct tagNET_DVR_IPDEVINFO { DWORD dwEnable; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byRes[34]; }NET_DVR_IPDEVINFO, *LPNET_DVR_IPDEVINFO; #define DEV_ID_LEN 32 typedef struct tagNET_DVR_IPDEVINFO_V31 { BYTE byEnable; BYTE byProType; BYTE byEnableQuickAdd; BYTE byCameraType; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byDomain[MAX_DOMAIN_NAME]; NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE szDeviceID[DEV_ID_LEN]; BYTE byEnableTiming; BYTE byCertificateValidation; }NET_DVR_IPDEVINFO_V31, *LPNET_DVR_IPDEVINFO_V31; typedef struct tagNET_DVR_IPCHANINFO { BYTE byEnable; BYTE byIPID; BYTE byChannel; BYTE byIPIDHigh; BYTE byTransProtocol; BYTE byres[31]; } NET_DVR_IPCHANINFO, *LPNET_DVR_IPCHANINFO; typedef struct tagNET_DVR_IPPARACFG { DWORD dwSize; NET_DVR_IPDEVINFO struIPDevInfo[MAX_IP_DEVICE]; BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; }NET_DVR_IPPARACFG, *LPNET_DVR_IPPARACFG; typedef struct tagNET_DVR_IPPARACFG_V31 { DWORD dwSize; NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE]; BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; }NET_DVR_IPPARACFG_V31, *LPNET_DVR_IPPARACFG_V31; typedef struct tagNET_DVR_IPSERVER_STREAM { BYTE byEnable; BYTE byRes[3]; NET_DVR_IPADDR struIPServer; WORD wPort; WORD wDvrNameLen; BYTE byDVRName[NAME_LEN]; WORD wDVRSerialLen; WORD byRes1[2]; BYTE byDVRSerialNumber[SERIALNO_LEN]; BYTE byUserName[NAME_LEN]; BYTE byPassWord[PASSWD_LEN]; BYTE byChannel; BYTE byRes2[11]; }NET_DVR_IPSERVER_STREAM, *LPNET_DVR_IPSERVER_STREAM; typedef struct tagNET_DVR_STREAM_MEDIA_SERVER_CFG { BYTE byValid; BYTE byRes1[3]; NET_DVR_IPADDR struDevIP; WORD wDevPort; BYTE byTransmitType; BYTE byRes2[69]; }NET_DVR_STREAM_MEDIA_SERVER_CFG,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG; typedef struct tagNET_DVR_DEV_CHAN_INFO { NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; BYTE byDeviceType; BYTE byDispChan; BYTE bySubDispChan; BYTE byResolution; BYTE byRes[2]; BYTE byDomain[MAX_DOMAIN_NAME]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; }NET_DVR_DEV_CHAN_INFO,*LPNET_DVR_DEV_CHAN_INFO; typedef struct tagNET_DVR_PU_STREAM_CFG { DWORD dwSize; NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg; NET_DVR_DEV_CHAN_INFO struDevChanInfo; }NET_DVR_PU_STREAM_CFG,*LPNET_DVR_PU_STREAM_CFG; typedef struct tagNET_DVR_DDNS_STREAM_CFG { BYTE byEnable; BYTE byRes1[3]; NET_DVR_IPADDR struStreamServer; WORD wStreamServerPort; BYTE byStreamServerTransmitType; BYTE byRes2; NET_DVR_IPADDR struIPServer; WORD wIPServerPort; BYTE byRes3[2]; BYTE sDVRName[NAME_LEN]; WORD wDVRNameLen; WORD wDVRSerialLen; BYTE sDVRSerialNumber[SERIALNO_LEN]; BYTE sUserName[NAME_LEN]; BYTE sPassWord[PASSWD_LEN]; WORD wDVRPort; BYTE byRes4[2]; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; }NET_DVR_DDNS_STREAM_CFG, *LPNET_DVR_DDNS_STREAM_CFG; #define URL_LEN 240 typedef struct tagNET_DVR_PU_STREAM_URL { BYTE byEnable; BYTE strURL[URL_LEN]; BYTE byTransPortocol ; WORD wIPID; BYTE byChannel; BYTE byRes[7]; }NET_DVR_PU_STREAM_URL, *LPNET_DVR_PU_STREAM_URL; typedef struct tagNET_DVR_HKDDNS_STREAM { BYTE byEnable; BYTE byRes[3]; BYTE byDDNSDomain[64]; WORD wPort; WORD wAliasLen; BYTE byAlias[NAME_LEN]; WORD wDVRSerialLen; BYTE byRes1[2]; BYTE byDVRSerialNumber[SERIALNO_LEN]; BYTE byUserName[NAME_LEN]; BYTE byPassWord[PASSWD_LEN]; BYTE byChannel; BYTE byRes2[11]; }NET_DVR_HKDDNS_STREAM, *LPNET_DVR_HKDDNS_STREAM; typedef struct tagNET_DVR_IPCHANINFO_V40 { BYTE byEnable; BYTE byRes1; WORD wIPID; DWORD dwChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; BYTE byRes; BYTE strURL[URL_LEN]; }NET_DVR_IPCHANINFO_V40,*LPNET_DVR_IPCHANINFO_V40; #define MAX_ID_COUNT 256 #define MAX_STREAM_ID_COUNT 1024 #define STREAM_ID_LEN 32 #define PLAN_ID_LEN 32 #define DEVICE_NO_LEN 24 #define MAX_VOLUMENAME_LEN 32 #define MAX_VAG_CHANNO_LEN 32 #define MAX_STREAM_ID_NUM 30 typedef struct tagNET_DVR_STREAM_INFO { DWORD dwSize; BYTE byID[STREAM_ID_LEN]; DWORD dwChannel; BYTE byRes[32]; }NET_DVR_STREAM_INFO, *LPNET_DVR_STREAM_INFO; typedef struct tagNET_DVR_RTSP_PROTOCAL_CFG { BYTE byEnable; BYTE byLocalBackUp; BYTE byRes[2]; BYTE strURL[URL_LEN_V40]; DWORD dwProtocalType; BYTE sUserName[NAME_LEN]; BYTE sPassWord[PASSWD_LEN]; BYTE byAddress[MAX_DOMAIN_NAME]; WORD wPort; BYTE byRes1[122]; }NET_DVR_RTSP_PROTOCAL_CFG, *LPNET_DVR_RTSP_PROTOCAL_CFG; typedef union tagNET_DVR_GET_STREAM_UNION { NET_DVR_IPCHANINFO struChanInfo; NET_DVR_IPSERVER_STREAM struIPServerStream; NET_DVR_PU_STREAM_CFG struPUStream; NET_DVR_DDNS_STREAM_CFG struDDNSStream; NET_DVR_PU_STREAM_URL struStreamUrl; NET_DVR_HKDDNS_STREAM struHkDDNSStream; NET_DVR_IPCHANINFO_V40 struIPChan; }NET_DVR_GET_STREAM_UNION, *LPNET_DVR_GET_STREAM_UNION; typedef enum { NET_SDK_IP_DEVICE = 0, NET_SDK_STREAM_MEDIA, NET_SDK_IPSERVER, NET_SDK_DDNS_STREAM_CFG, NET_SDK_STREAM_MEDIA_URL, NET_SDK_HKDDNS, NET_SDK_IP_DEVICE_ADV, NET_SDK_IP_DEVICE_V40, NET_SDK_RTSP }GET_STREAM_TYPE; typedef struct tagNET_DVR_STREAM_MODE { BYTE byGetStreamType; BYTE byRes[3]; NET_DVR_GET_STREAM_UNION uGetStream; }NET_DVR_STREAM_MODE, *LPNET_DVR_STREAM_MODE; typedef struct tagNET_DVR_IPPARACFG_V40 { DWORD dwSize; DWORD dwGroupNum; DWORD dwAChanNum; DWORD dwDChanNum; DWORD dwStartDChan; BYTE byAnalogChanEnable[MAX_CHANNUM_V30]; NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE_V40]; NET_DVR_STREAM_MODE struStreamMode[MAX_CHANNUM_V30]; BYTE byRes2[20]; }NET_DVR_IPPARACFG_V40, *LPNET_DVR_IPPARACFG_V40; typedef struct tagNET_DVR_ALARMINFO_DEV { DWORD dwAlarmType; NET_DVR_TIME struTime; BYTE byRes[32]; DWORD dwNumber; WORD *pNO; }NET_DVR_ALARMINFO_DEV, *LPNET_DVR_ALARMINFO_DEV; typedef struct tagNET_DVR_IPALARMOUTINFO { BYTE byIPID; BYTE byAlarmOut; BYTE byRes[18]; }NET_DVR_IPALARMOUTINFO, *LPNET_DVR_IPALARMOUTINFO; typedef struct tagNET_DVR_IPALARMOUTCFG { DWORD dwSize; NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; }NET_DVR_IPALARMOUTCFG, *LPNET_DVR_IPALARMOUTCFG; typedef struct tagNET_DVR_IPALARMOUTINFO_V40 { DWORD dwIPID; DWORD dwAlarmOut; BYTE byRes[32]; }NET_DVR_IPALARMOUTINFO_V40, *LPNET_DVR_IPALARMOUTINFO_V40; typedef struct tagNET_DVR_IPALARMOUTCFG_V40 { DWORD dwSize; DWORD dwCurIPAlarmOutNum; NET_DVR_IPALARMOUTINFO_V40 struIPAlarmOutInfo[MAX_IP_ALARMOUT_V40]; BYTE byRes[256]; }NET_DVR_IPALARMOUTCFG_V40, *LPNET_DVR_IPALARMOUTCFG_V40; typedef struct tagNET_DVR_IPALARMININFO { BYTE byIPID; BYTE byAlarmIn; BYTE byRes[18]; }NET_DVR_IPALARMININFO, *LPNET_DVR_IPALARMININFO; typedef struct tagNET_DVR_IPALARMINCFG { DWORD dwSize; NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; }NET_DVR_IPALARMINCFG, *LPNET_DVR_IPALARMINCFG; typedef struct tagNET_DVR_IPALARMININFO_V40 { DWORD dwIPID; DWORD dwAlarmIn; BYTE byRes[32]; }NET_DVR_IPALARMININFO_V40, *LPNET_DVR_IPALARMININFO_V40; typedef struct tagNET_DVR_IPALARMINCFG_V40 { DWORD dwSize; DWORD dwCurIPAlarmInNum; NET_DVR_IPALARMININFO_V40 struIPAlarmInInfo[MAX_IP_ALARMIN_V40]; BYTE byRes[256]; }NET_DVR_IPALARMINCFG_V40, *LPNET_DVR_IPALARMINCFG_V40; typedef struct tagNET_DVR_IPALARMINFO { NET_DVR_IPDEVINFO struIPDevInfo[MAX_IP_DEVICE]; BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; }NET_DVR_IPALARMINFO, *LPNET_DVR_IPALARMINFO; typedef struct tagNET_DVR_IPALARMINFO_V31 { NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE]; BYTE byAnalogChanEnable[MAX_ANALOG_CHANNUM]; NET_DVR_IPCHANINFO struIPChanInfo[MAX_IP_CHANNEL]; NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; }NET_DVR_IPALARMINFO_V31, *LPNET_DVR_IPALARMINFO_V31; typedef struct tagNET_DVR_IPALARMINFO_V40 { NET_DVR_IPDEVINFO_V31 struIPDevInfo[MAX_IP_DEVICE_V40]; BYTE byAnalogChanEnable[MAX_CHANNUM_V30]; NET_DVR_IPCHANINFO struIPChanInfo[MAX_CHANNUM_V30]; NET_DVR_IPALARMININFO struIPAlarmInInfo[MAX_IP_ALARMIN]; NET_DVR_IPALARMOUTINFO struIPAlarmOutInfo[MAX_IP_ALARMOUT]; BYTE byRes[20]; }NET_DVR_IPALARMINFO_V40, *LPNET_DVR_IPALARMINFO_V40; typedef enum _HD_STAT_ { HD_STAT_OK = 0, HD_STAT_UNFORMATTED = 1, HD_STAT_ERROR = 2, HD_STAT_SMART_FAILED = 3, HD_STAT_MISMATCH = 4, HD_STAT_IDLE = 5, NET_HD_STAT_OFFLINE = 6, HD_RIADVD_EXPAND = 7, HD_STAT_REPARING = 10, HD_STAT_FORMATING = 11, }HD_STAT; typedef struct tagNET_DVR_SINGLE_HD { DWORD dwHDNo; DWORD dwCapacity; DWORD dwFreeSpace; DWORD dwHdStatus; BYTE byHDAttr; BYTE byHDType; BYTE byDiskDriver; BYTE byRes1; DWORD dwHdGroup; BYTE byRecycling; BYTE byRes2[3]; DWORD dwStorageType; DWORD dwPictureCapacity; DWORD dwFreePictureSpace; BYTE byRes3[104]; }NET_DVR_SINGLE_HD, *LPNET_DVR_SINGLE_HD; typedef struct tagNET_DVR_HDCFG { DWORD dwSize; DWORD dwHDCount; NET_DVR_SINGLE_HD struHDInfo[MAX_DISKNUM_V30]; }NET_DVR_HDCFG, *LPNET_DVR_HDCFG; typedef struct tagNET_DVR_SINGLE_HD_V50 { DWORD dwHDNo; DWORD dwCapacity; DWORD dwFreeSpace; DWORD dwHdStatus; BYTE byHDAttr; BYTE byHDType; BYTE byDiskDriver; BYTE byGenusGruop; DWORD dwHdGroup; BYTE byRecycling; BYTE byRes2[3]; DWORD dwStorageType; DWORD dwPictureCapacity; DWORD dwFreePictureSpace; BYTE byDiskLocation[NET_SDK_DISK_LOCATION_LEN]; BYTE bySupplierName[NET_SDK_SUPPLIER_NAME_LEN]; BYTE byDiskModel[NET_SDK_DISK_MODEL_LEN ]; char szHDLocateIP[SDK_MAX_IP_LEN]; BYTE byRes3[80]; }NET_DVR_SINGLE_HD_V50, *LPNET_DVR_SINGLE_HD_V50; typedef struct tagNET_DVR_HDCFG_V50 { DWORD dwSize; DWORD dwHDCount; NET_DVR_SINGLE_HD_V50 struHDInfoV50[MAX_DISKNUM_V30]; BYTE byRes[128]; }NET_DVR_HDCFG_V50, *LPNET_DVR_HDCFG_V50; typedef struct tagNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO { DWORD dwSize; BYTE byHDVolumeNo; BYTE byType; BYTE byRes1[2]; DWORD dwCapacity; DWORD dwFreeSpace; BYTE byHDVolumeName[NET_SDK_DISK_VOLUME_LEN]; BYTE byLoopCover; BYTE byRes[63]; }NET_DVR_HARD_DISK_SINGLE_VOLUME_INFO, *LPNET_DVR_HARD_DISK_SINGLE_VOLUME_INFO; typedef struct tagNET_DVR_HARD_DISK_VOLUME_INFO { DWORD dwSize; DWORD dwHDVolumeCount; NET_DVR_HARD_DISK_SINGLE_VOLUME_INFO struSingleVolumeInfo[NET_SDK_MAX_DISK_VOLUME]; BYTE byRes[128]; }NET_DVR_HARD_DISK_VOLUME_INFO, *LPNET_DVR_HARD_DISK_VOLUME_INFO; typedef struct tagNET_DVR_SINGLE_HDGROUP_V40 { DWORD dwHDGroupNo; DWORD dwRelRecordChan[MAX_CHANNUM_V40]; BYTE byRes[64]; }NET_DVR_SINGLE_HDGROUP_V40, *LPNET_DVR_SINGLE_HDGROUP_V40; typedef struct tagNET_DVR_HDGROUP_CFG_V40 { DWORD dwSize; DWORD dwMaxHDGroupNum; DWORD dwCurHDGroupNum; NET_DVR_SINGLE_HDGROUP_V40 struHDGroupAttr[MAX_HD_GROUP]; BYTE byRes[128]; }NET_DVR_HDGROUP_CFG_V40, *LPNET_DVR_HDGROUP_CFG_V40; typedef struct tagNET_DVR_SINGLE_HDGROUP { DWORD dwHDGroupNo; BYTE byHDGroupChans[MAX_CHANNUM_V30]; BYTE byRes[8]; }NET_DVR_SINGLE_HDGROUP, *LPNET_DVR_SINGLE_HDGROUP; typedef struct tagNET_DVR_HDGROUP_CFG { DWORD dwSize; DWORD dwHDGroupCount; NET_DVR_SINGLE_HDGROUP struHDGroupAttr[MAX_HD_GROUP]; }NET_DVR_HDGROUP_CFG, *LPNET_DVR_HDGROUP_CFG; typedef struct tagNET_DVR_SCALECFG { DWORD dwSize; DWORD dwMajorScale; DWORD dwMinorScale; DWORD dwRes[2]; }NET_DVR_SCALECFG, *LPNET_DVR_SCALECFG; typedef struct tagNET_DVR_ALARMOUTCFG_V30 { DWORD dwSize; BYTE sAlarmOutName[NAME_LEN]; DWORD dwAlarmOutDelay; NET_DVR_SCHEDTIME struAlarmOutTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byAlarmOutHandle; BYTE byRes[15]; }NET_DVR_ALARMOUTCFG_V30, *LPNET_DVR_ALARMOUTCFG_V30; typedef struct tagNET_DVR_ALARMOUTCFG { DWORD dwSize; BYTE sAlarmOutName[NAME_LEN]; DWORD dwAlarmOutDelay; NET_DVR_SCHEDTIME struAlarmOutTime[MAX_DAYS][MAX_TIMESEGMENT]; }NET_DVR_ALARMOUTCFG, *LPNET_DVR_ALARMOUTCFG; typedef struct tagNET_DVR_PREVIEWCFG_V30 { DWORD dwSize; BYTE byPreviewNumber; BYTE byEnableAudio; WORD wSwitchTime; BYTE bySwitchSeq[MAX_PREVIEW_MODE][MAX_WINDOW_V30]; BYTE byRes[24]; }NET_DVR_PREVIEWCFG_V30, *LPNET_DVR_PREVIEWCFG_V30; typedef struct tagNET_DVR_PREVIEWCFG { DWORD dwSize; BYTE byPreviewNumber; BYTE byEnableAudio; WORD wSwitchTime; BYTE bySwitchSeq[MAX_WINDOW]; }NET_DVR_PREVIEWCFG, *LPNET_DVR_PREVIEWCFG; typedef struct tagNET_DVR_VGAPARA { WORD wResolution; WORD wFreq; DWORD dwBrightness; }NET_DVR_VGAPARA; typedef struct tagNET_DVR_MATRIXPARA_V30 { WORD wOrder[MAX_ANALOG_CHANNUM]; WORD wSwitchTime; BYTE res[14]; }NET_DVR_MATRIXPARA_V30, *LPNET_DVR_MATRIXPARA_V30; typedef struct tagNET_DVR_MATRIXPARA { WORD wDisplayLogo; WORD wDisplayOsd; }NET_DVR_MATRIXPARA; typedef struct tagNET_DVR_VOOUT { BYTE byVideoFormat; BYTE byMenuAlphaValue; WORD wScreenSaveTime; WORD wVOffset; WORD wBrightness; BYTE byStartMode; BYTE byEnableScaler; }NET_DVR_VOOUT; typedef struct tagNET_DVR_VIDEOOUT_V30 { DWORD dwSize; NET_DVR_VOOUT struVOOut[MAX_VIDEOOUT_V30]; NET_DVR_VGAPARA struVGAPara[MAX_VGA_V30]; NET_DVR_MATRIXPARA_V30 struMatrixPara[MAX_MATRIXOUT]; BYTE byRes[16]; }NET_DVR_VIDEOOUT_V30, *LPNET_DVR_VIDEOOUT_V30; typedef struct tagNET_DVR_VIDEOOUT { DWORD dwSize; NET_DVR_VOOUT struVOOut[MAX_VIDEOOUT]; NET_DVR_VGAPARA struVGAPara[MAX_VGA]; NET_DVR_MATRIXPARA struMatrixPara; }NET_DVR_VIDEOOUT, *LPNET_DVR_VIDEOOUT; typedef struct tagNET_DVR_USER_INFO_V40 { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byLocalRight[MAX_RIGHT]; BYTE byRemoteRight[MAX_RIGHT]; DWORD dwNetPreviewRight[MAX_CHANNUM_V40]; DWORD dwLocalRecordRight[MAX_CHANNUM_V40]; DWORD dwNetRecordRight[MAX_CHANNUM_V40]; DWORD dwLocalPlaybackRight[MAX_CHANNUM_V40]; DWORD dwNetPlaybackRight[MAX_CHANNUM_V40]; DWORD dwLocalPTZRight[MAX_CHANNUM_V40]; DWORD dwNetPTZRight[MAX_CHANNUM_V40]; DWORD dwLocalBackupRight[MAX_CHANNUM_V40]; NET_DVR_IPADDR struUserIP; BYTE byMACAddr[MACADDR_LEN]; BYTE byPriority; BYTE byAlarmOnRight; BYTE byAlarmOffRight; BYTE byBypassRight; BYTE byRes1[2]; BYTE byPublishRight[MAX_RIGHT]; BYTE byRes[84]; }NET_DVR_USER_INFO_V40, *LPNET_DVR_USER_INFO_V40; typedef struct tagNET_DVR_USER_INFO_V51 { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byLocalRight[MAX_RIGHT]; BYTE byRemoteRight[MAX_RIGHT]; DWORD dwNetPreviewRight[MAX_CHANNUM_V40]; DWORD dwLocalRecordRight[MAX_CHANNUM_V40]; DWORD dwNetRecordRight[MAX_CHANNUM_V40]; DWORD dwLocalPlaybackRight[MAX_CHANNUM_V40]; DWORD dwNetPlaybackRight[MAX_CHANNUM_V40]; DWORD dwLocalPTZRight[MAX_CHANNUM_V40]; DWORD dwNetPTZRight[MAX_CHANNUM_V40]; DWORD dwLocalBackupRight[MAX_CHANNUM_V40]; DWORD dwLocalPreviewRight[MAX_CHANNUM_V40]; NET_DVR_IPADDR struUserIP; BYTE byMACAddr[MACADDR_LEN]; BYTE byPriority; BYTE byAlarmOnRight; BYTE byAlarmOffRight; BYTE byBypassRight; BYTE byRes1[2]; BYTE byPublishRight[MAX_RIGHT]; DWORD dwPasswordValidity; BYTE byRes[1024]; }NET_DVR_USER_INFO_V51, *LPNET_DVR_USER_INFO_V51; typedef struct tagNET_DVR_USER_V51 { DWORD dwSize; DWORD dwMaxUserNum; NET_DVR_USER_INFO_V51 struUser[MAX_USERNUM_V30]; char sloginPassword[PASSWD_LEN]; BYTE byRes[240]; }NET_DVR_USER_V51, *LPNET_DVR_USER_V51; typedef struct tagNET_DVR_USER_INFO_V30 { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byLocalRight[MAX_RIGHT]; BYTE byRemoteRight[MAX_RIGHT]; BYTE byNetPreviewRight[MAX_CHANNUM_V30]; BYTE byLocalPlaybackRight[MAX_CHANNUM_V30]; BYTE byNetPlaybackRight[MAX_CHANNUM_V30]; BYTE byLocalRecordRight[MAX_CHANNUM_V30]; BYTE byNetRecordRight[MAX_CHANNUM_V30]; BYTE byLocalPTZRight[MAX_CHANNUM_V30]; BYTE byNetPTZRight[MAX_CHANNUM_V30]; BYTE byLocalBackupRight[MAX_CHANNUM_V30]; NET_DVR_IPADDR struUserIP; BYTE byMACAddr[MACADDR_LEN]; BYTE byPriority; BYTE byAlarmOnRight; BYTE byAlarmOffRight; BYTE byBypassRight; BYTE byRes[14]; }NET_DVR_USER_INFO_V30, *LPNET_DVR_USER_INFO_V30; typedef struct tagNET_DVR_USER_INFO_EX { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwLocalRight[MAX_RIGHT]; DWORD dwLocalPlaybackRight; DWORD dwRemoteRight[MAX_RIGHT]; DWORD dwNetPreviewRight; DWORD dwNetPlaybackRight; char sUserIP[16]; BYTE byMACAddr[MACADDR_LEN]; }NET_DVR_USER_INFO_EX, *LPNET_DVR_USER_INFO_EX; typedef struct tagNET_DVR_USER_INFO { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwLocalRight[MAX_RIGHT]; DWORD dwRemoteRight[MAX_RIGHT]; char sUserIP[16]; BYTE byMACAddr[MACADDR_LEN]; }NET_DVR_USER_INFO, *LPNET_DVR_USER_INFO; typedef struct tagNET_DVR_USER_V40 { DWORD dwSize; DWORD dwMaxUserNum; NET_DVR_USER_INFO_V40 struUser[MAX_USERNUM_V30]; }NET_DVR_USER_V40,*LPNET_DVR_USER_V40; typedef struct tagNET_DVR_USER_V50 { DWORD dwSize; DWORD dwMaxUserNum; NET_DVR_USER_INFO_V40 struUser[MAX_USERNUM_V30]; char sloginPassword[PASSWD_LEN]; BYTE byRes[240]; }NET_DVR_USER_V50, *LPNET_DVR_USER_V50; typedef struct tagNET_DVR_USER_V30 { DWORD dwSize; NET_DVR_USER_INFO_V30 struUser[MAX_USERNUM_V30]; }NET_DVR_USER_V30, *LPNET_DVR_USER_V30; typedef struct tagNET_DVR_USER_EX { DWORD dwSize; NET_DVR_USER_INFO_EX struUser[MAX_USERNUM]; }NET_DVR_USER_EX, *LPNET_DVR_USER_EX; typedef struct tagNET_DVR_USER { DWORD dwSize; NET_DVR_USER_INFO struUser[MAX_USERNUM]; }NET_DVR_USER, *LPNET_DVR_USER; typedef struct tagNET_DVR_EXCEPTION_V40 { DWORD dwSize ; DWORD dwMaxGroupNum ; NET_DVR_HANDLEEXCEPTION_V41 struExceptionHandle[MAX_EXCEPTIONNUM_V30]; BYTE byRes[128]; }NET_DVR_EXCEPTION_V40,*LPNET_DVR_EXCEPTION_V40; typedef struct tagNET_DVR_EXCEPTION_V30 { DWORD dwSize; NET_DVR_HANDLEEXCEPTION_V30 struExceptionHandleType[MAX_EXCEPTIONNUM_V30]; }NET_DVR_EXCEPTION_V30, *LPNET_DVR_EXCEPTION_V30; typedef struct tagNET_DVR_EXCEPTION { DWORD dwSize; NET_DVR_HANDLEEXCEPTION struExceptionHandleType[MAX_EXCEPTIONNUM]; }NET_DVR_EXCEPTION, *LPNET_DVR_EXCEPTION; typedef struct tagNET_DVR_CHANNELSTATE_V30 { BYTE byRecordStatic; BYTE bySignalStatic; BYTE byHardwareStatic; BYTE byRes1; DWORD dwBitRate; DWORD dwLinkNum; NET_DVR_IPADDR struClientIP[MAX_LINK]; DWORD dwIPLinkNum; BYTE byExceedMaxLink; BYTE byRes[3]; DWORD dwAllBitRate; DWORD dwChannelNo; }NET_DVR_CHANNELSTATE_V30, *LPNET_DVR_CHANNELSTATE_V30; typedef struct tagNET_DVR_CHANNELSTATE { BYTE byRecordStatic; BYTE bySignalStatic; BYTE byHardwareStatic; char reservedData; DWORD dwBitRate; DWORD dwLinkNum; DWORD dwClientIP[MAX_LINK]; }NET_DVR_CHANNELSTATE, *LPNET_DVR_CHANNELSTATE; typedef struct tagNET_DVR_DISKSTATE { DWORD dwVolume; DWORD dwFreeSpace; DWORD dwHardDiskStatic; }NET_DVR_DISKSTATE, *LPNET_DVR_DISKSTATE; typedef struct tagNET_DVR_WORKSTATE_V40 { DWORD dwSize ; DWORD dwDeviceStatic; NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; NET_DVR_CHANNELSTATE_V30 struChanStatic[MAX_CHANNUM_V40]; DWORD dwHasAlarmInStatic[MAX_ALARMIN_V40]; DWORD dwHasAlarmOutStatic[MAX_ALARMOUT_V40]; DWORD dwLocalDisplay; BYTE byAudioInChanStatus[MAX_AUDIO_V30]; BYTE byRes1[2]; float fHumidity; float fTemperature; BYTE byRes[116]; }NET_DVR_WORKSTATE_V40, *LPNET_DVR_WORKSTATE_V40; typedef struct tagNET_DVR_GETWORKSTATE_COND { DWORD dwSize ; BYTE byFindHardByCond; BYTE byFindChanByCond ; BYTE byRes1[2] ; DWORD dwFindHardStatus[MAX_DISKNUM_V30] ; DWORD dwFindChanNo[MAX_CHANNUM_V40] ; BYTE byRes[64] ; }NET_DVR_GETWORKSTATE_COND, *LPNET_DVR_GETWORKSTATE_COND; typedef struct tagNET_DVR_WORKSTATE_V30 { DWORD dwDeviceStatic; NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; NET_DVR_CHANNELSTATE_V30 struChanStatic[MAX_CHANNUM_V30]; BYTE byAlarmInStatic[MAX_ALARMIN_V30]; BYTE byAlarmOutStatic[MAX_ALARMOUT_V30]; DWORD dwLocalDisplay; BYTE byAudioChanStatus[MAX_AUDIO_V30]; BYTE byRes[10]; }NET_DVR_WORKSTATE_V30, *LPNET_DVR_WORKSTATE_V30; typedef struct tagNET_DVR_WORKSTATE { DWORD dwDeviceStatic; NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM]; NET_DVR_CHANNELSTATE struChanStatic[MAX_CHANNUM]; BYTE byAlarmInStatic[MAX_ALARMIN]; BYTE byAlarmOutStatic[MAX_ALARMOUT]; DWORD dwLocalDisplay; }NET_DVR_WORKSTATE, *LPNET_DVR_WORKSTATE; typedef struct tagNET_DVR_LOG_V30 { NET_DVR_TIME strLogTime; DWORD dwMajorType; DWORD dwMinorType; BYTE sPanelUser[MAX_NAMELEN]; BYTE sNetUser[MAX_NAMELEN]; NET_DVR_IPADDR struRemoteHostAddr; DWORD dwParaType; DWORD dwChannel; DWORD dwDiskNumber; DWORD dwAlarmInPort; DWORD dwAlarmOutPort; DWORD dwInfoLen; char sInfo[LOG_INFO_LEN]; }NET_DVR_LOG_V30, *LPNET_DVR_LOG_V30; typedef struct tagNET_DVR_LOG { NET_DVR_TIME strLogTime; DWORD dwMajorType; DWORD dwMinorType; BYTE sPanelUser[MAX_NAMELEN]; BYTE sNetUser[MAX_NAMELEN]; char sRemoteHostAddr[16]; DWORD dwParaType; DWORD dwChannel; DWORD dwDiskNumber; DWORD dwAlarmInPort; DWORD dwAlarmOutPort; }NET_DVR_LOG, *LPNET_DVR_LOG; typedef struct tagNET_DVR_FIND_LOG_COND { DWORD dwSelectMode; DWORD dwMainType; DWORD dwSubType; NET_DVR_TIME_V50 struStartTime; NET_DVR_TIME_V50 struEndTime; BOOL bOnlySmart; BYTE byRes[128]; }NET_DVR_FIND_LOG_COND, *LPNET_DVR_FIND_LOG_COND; typedef struct tagNET_DVR_LOG_V50 { NET_DVR_TIME_V50 struLogTime; DWORD dwMajorType; DWORD dwMinorType; BYTE sPanelUser[MAX_NAMELEN]; BYTE sNetUser[MAX_NAMELEN]; NET_DVR_IPADDR struRemoteHostAddr; DWORD dwParaType; DWORD dwChannel; DWORD dwDiskNumber; DWORD dwAlarmInPort; DWORD dwAlarmOutPort; DWORD dwInfoLen; char sInfo[LOG_INFO_LEN]; BYTE byRes[128]; }NET_DVR_LOG_V50, *LPNET_DVR_LOG_V50; typedef struct tagNET_DVR_ALARMHOST_SEARCH_LOG_PARAM { WORD wMajorType; WORD wMinorType; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byRes[8]; }NET_DVR_ALARMHOST_SEARCH_LOG_PARAM, LPNET_DVR_ALARMHOST_SEARCH_LOG_PARAM; typedef struct tagNET_DVR_ALARMHOST_LOG_RET { NET_DVR_TIME struLogTime; BYTE sUserName[NAME_LEN]; NET_DVR_IPADDR struIPAddr; WORD wMajorType; WORD wMinorType; WORD wParam; BYTE byRes[10]; DWORD dwInfoLen; char sInfo[LOG_INFO_LEN]; }NET_DVR_ALARMHOST_LOG_RET, *LPNET_DVR_ALARMHOST_LOG_RET; typedef struct tagNET_DVR_ALARMOUTSTATUS_V30 { BYTE Output[MAX_ALARMOUT_V30]; }NET_DVR_ALARMOUTSTATUS_V30, *LPNET_DVR_ALARMOUTSTATUS_V30; typedef struct tagNET_DVR_ALARMOUTSTATUS { BYTE Output[MAX_ALARMOUT]; }NET_DVR_ALARMOUTSTATUS, *LPNET_DVR_ALARMOUTSTATUS; typedef struct tagNET_DVR_TRADEINFO { USHORT m_Year; USHORT m_Month; USHORT m_Day; USHORT m_Hour; USHORT m_Minute; USHORT m_Second; BYTE DeviceName[24]; DWORD dwChannelNumer; BYTE CardNumber[32]; char cTradeType[12]; DWORD dwCash; }NET_DVR_TRADEINFO, *LPNET_DVR_TRADEINFO; #define NCR 0 #define DIEBOLD 1 #define WINCOR_NIXDORF 2 #define SIEMENS 3 #define OLIVETTI 4 #define FUJITSU 5 #define HITACHI 6 #define SMI 7 #define IBM 8 #define BULL 9 #define YiHua 10 #define LiDe 11 #define GDYT 12 #define Mini_Banl 13 #define GuangLi 14 #define DongXin 15 #define ChenTong 16 #define NanTian 17 #define XiaoXing 18 #define GZYY 19 #define QHTLT 20 #define DRS918 21 #define KALATEL 22 #define NCR_2 23 #define NXS 24 typedef struct tagNET_DVR_FRAMETYPECODE { BYTE code[12]; }NET_DVR_FRAMETYPECODE; typedef struct tagNET_DVR_FRAMEFORMAT { DWORD dwSize; char sATMIP[16]; DWORD dwATMType; DWORD dwInputMode; DWORD dwFrameSignBeginPos; DWORD dwFrameSignLength; BYTE byFrameSignContent[12]; DWORD dwCardLengthInfoBeginPos; DWORD dwCardLengthInfoLength; DWORD dwCardNumberInfoBeginPos; DWORD dwCardNumberInfoLength; DWORD dwBusinessTypeBeginPos; DWORD dwBusinessTypeLength; NET_DVR_FRAMETYPECODE frameTypeCode[10]; }NET_DVR_FRAMEFORMAT, *LPNET_DVR_FRAMEFORMAT; typedef struct tagNET_DVR_FILTER { BYTE byEnable; BYTE byMode; BYTE byFrameBeginPos; BYTE byRes; BYTE byFilterText[16]; BYTE byRes2[12]; }NET_DVR_FILTER, *LPNET_DVR_FILTER; typedef struct tagNET_DVR_IDENTIFICAT { BYTE byStartMode; BYTE byEndMode; BYTE byRes[2]; NET_DVR_FRAMETYPECODE struStartCode; NET_DVR_FRAMETYPECODE struEndCode; BYTE byRes1[12]; }NET_DVR_IDENTIFICAT, *LPNET_DVR_IDENTIFICAT; typedef struct tagNET_DVR_PACKAGE_LOCATION { BYTE byOffsetMode; BYTE byRes1[3]; DWORD dwOffsetPos; NET_DVR_FRAMETYPECODE struTokenCode; BYTE byMultiplierValue; BYTE byEternOffset; BYTE byCodeMode; BYTE byRes2[9]; }NET_DVR_PACKAGE_LOCATION, *LPNET_DVR_PACKAGE_LOCATION; typedef struct tagNET_DVR_PACKAGE_LENGTH { BYTE byLengthMode; BYTE byRes1[3]; DWORD dwFixLength; DWORD dwMaxLength; DWORD dwMinLength; BYTE byEndMode; BYTE byRes2[3]; NET_DVR_FRAMETYPECODE struEndCode; DWORD dwLengthPos; DWORD dwLengthLen; BYTE byRes3[8]; }NET_DVR_PACKAGE_LENGTH,* LPNET_DVR_PACKAGE_LENGTH; typedef struct tagNET_DVR_OSD_POSITION { BYTE byPositionMode; BYTE byRes1[3]; DWORD dwPosX; DWORD dwPosY; BYTE byRes2[8]; }NET_DVR_OSD_POSITION, *LPNET_DVR_OSD_POSITION; typedef struct tagNET_DVR_DATE_FORMAT { BYTE byMonth; BYTE byDay; BYTE byYear; BYTE byDateForm; BYTE byRes[20]; char chSeprator[4]; char chDisplaySeprator[4]; BYTE byDisplayForm; BYTE res[27]; }NET_DVR_DATE_FORMAT, *LPNET_DVR_DATE_FORMAT; typedef struct tagNET_DVRT_TIME_FORMAT { BYTE byTimeForm; BYTE byRes1[23]; BYTE byHourMode; BYTE byRes2[3]; char chSeprator[4]; char chDisplaySeprator[4]; BYTE byDisplayForm; BYTE byRes3[3]; BYTE byDisplayHourMode; BYTE byRes4[19]; }NET_DVR_TIME_FORMAT, *LPNET_DVR_TIME_FORMAT; typedef struct tagNET_DVR_OVERLAY_CHANNEL { BYTE byChannel[64]; DWORD dwDelayTime; BYTE byEnableDelayTime; BYTE byRes[11]; }NET_DVR_OVERLAY_CHANNEL, *LPNET_DVR_OVERLAY_CHANNEL; typedef struct tagNET_DVR_ATM_PACKAGE_ACTION { NET_DVR_PACKAGE_LOCATION struPackageLocation; NET_DVR_OSD_POSITION struOsdPosition; NET_DVR_FRAMETYPECODE struActionCode; NET_DVR_FRAMETYPECODE struPreCode; BYTE byActionCodeMode; BYTE byRes[7]; }NET_DVR_ATM_PACKAGE_ACTION, *LPNET_DVR_ATM_PACKAGE_ACTION; typedef struct tagNET_DVR_ATM_PACKAGE_DATE { NET_DVR_PACKAGE_LOCATION struPackageLocation; NET_DVR_DATE_FORMAT struDateForm; NET_DVR_OSD_POSITION struOsdPosition; BYTE res[8]; }NET_DVR_ATM_PACKAGE_DATE, *LPNET_DVR_ATM_PACKAGE_DATE; typedef struct tagNET_DVR_ATM_PACKAGE_TIME { NET_DVR_PACKAGE_LOCATION location; NET_DVR_TIME_FORMAT struTimeForm; NET_DVR_OSD_POSITION struOsdPosition; BYTE byRes[8]; }NET_DVR_ATM_PACKAGE_TIME, *LPNET_DVR_ATM_PACKAGE_TIME; typedef struct tagNET_DVR_ATM_PACKAGE_OTHERS { NET_DVR_PACKAGE_LOCATION struPackageLocation; NET_DVR_PACKAGE_LENGTH struPackageLength; NET_DVR_OSD_POSITION struOsdPosition; NET_DVR_FRAMETYPECODE struPreCode; BYTE res[8]; }NET_DVR_ATM_PACKAGE_OTHERS, *LPNET_DVR_ATM_PACKAGE_OTHERS; typedef struct tagNET_DVR_ATM_USER_DEFINE_PROTOCOL { NET_DVR_IDENTIFICAT struIdentification; NET_DVR_FILTER struFilter; NET_DVR_ATM_PACKAGE_OTHERS struCardNoPara; NET_DVR_ATM_PACKAGE_ACTION struTradeActionPara[MAX_ACTION_TYPE]; NET_DVR_ATM_PACKAGE_OTHERS struAmountPara; NET_DVR_ATM_PACKAGE_OTHERS struSerialNoPara; NET_DVR_OVERLAY_CHANNEL struOverlayChan; NET_DVR_ATM_PACKAGE_DATE struRes1; NET_DVR_ATM_PACKAGE_TIME struRes2; BYTE byRes3[124]; }NET_DVR_ATM_USER_DEFINE_PROTOCOL, *LPNET_DVR_ATM_USER_DEFINE_PROTOCOL; typedef struct tagNET_DVR_ATM_FRAMEFORMAT_V30 { DWORD dwSize; BYTE byEnable; BYTE byInputMode; BYTE byRes1[34]; NET_DVR_IPADDR struAtmIp; WORD wAtmPort; BYTE byRes2[2]; DWORD dwAtmType; NET_DVR_ATM_USER_DEFINE_PROTOCOL struAtmUserDefineProtocol; BYTE byRes3[8]; }NET_DVR_ATM_FRAMEFORMAT_V30, *LPNET_DVR_ATM_FRAMEFORMAT_V30; typedef enum _ATM_PROTO_TYPE_ { ATM_PROTO_NCR = 0, ATM_PROTO_DIEBOLD = 1, ATM_PROTO_WINCOR_NIXDORF = 2, ATM_PROTO_SIEMENS = 4, ATM_PROTO_OLIVETTI = 5, ATM_PROTO_FUJITSU = 6, ATM_PROTO_HITACHI = 7, ATM_PROTO_SMI = 8, ATM_PROTO_BULL = 9, ATM_PROTO_YIHUA = 10, ATM_PROTO_LIDE = 11, ATM_PROTO_GDYT = 12, ATM_PROTO_MINI_BANL = 13, ATM_PROTO_GUANGLI = 14, ATM_PROTO_DONGXIN = 15, ATM_PROTO_CHENTONG = 16, ATM_PROTO_NANTIAN = 17, ATM_PROTO_XIAOXING = 18, ATM_PROTO_GZYY = 19, ATM_PROTO_QHTLT = 20, ATM_PROTO_DRS918 = 21, ATM_PROTO_KALATEL = 22, ATM_PROTO_NCR_2 = 23, ATM_PROTO_NXS = 24, ATM_PROTO_ICBC = 25, ATM_PROTO_PSBC = 26, ATM_PROTO_CUSTOM = 1025 }ATM_PROTO_TYPE; typedef struct tagNET_DVR_ATM_PROTO_TYPE { DWORD dwAtmType; char chDesc[ATM_DESC_LEN]; }NET_DVR_ATM_PROTO_TYPE, *LPNET_DVR_ATM_PROTO_TYPE; typedef struct tagNET_DVR_ATM_PROTO_LIST { DWORD dwAtmProtoNum; NET_DVR_ATM_PROTO_TYPE struAtmProtoType[MAX_ATM_PROTOCOL_NUM]; }NET_DVR_ATM_PROTO_LIST, *LPNET_DVR_ATM_PROTO_LIST; typedef struct tagNET_DVR_ATM_PROTOCOL { DWORD dwSize; NET_DVR_ATM_PROTO_LIST struNetListenList; NET_DVR_ATM_PROTO_LIST struSerialListenList; NET_DVR_ATM_PROTO_LIST struNetProtoList; NET_DVR_ATM_PROTO_LIST struSerialProtoList; NET_DVR_ATM_PROTO_TYPE struCustomProto; }NET_DVR_ATM_PROTOCOL, *LPNET_DVR_ATM_PROTOCOL; typedef struct tagNET_DVR_DECODERINFO { BYTE byEncoderIP[16]; BYTE byEncoderUser[16]; BYTE byEncoderPasswd[16]; BYTE bySendMode; BYTE byEncoderChannel; WORD wEncoderPort; BYTE reservedData[4]; }NET_DVR_DECODERINFO, *LPNET_DVR_DECODERINFO; typedef struct tagNET_DVR_DECODERSTATE { BYTE byEncoderIP[16]; BYTE byEncoderUser[16]; BYTE byEncoderPasswd[16]; BYTE byEncoderChannel; BYTE bySendMode; WORD wEncoderPort; DWORD dwConnectState; BYTE reservedData[4]; }NET_DVR_DECODERSTATE, *LPNET_DVR_DECODERSTATE; #define NET_DEC_STARTDEC 1 #define NET_DEC_STOPDEC 2 #define NET_DEC_STOPCYCLE 3 #define NET_DEC_CONTINUECYCLE 4 typedef struct tagNET_DVR_DECCHANINFO { char sDVRIP[16]; WORD wDVRPort; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byChannel; BYTE byLinkMode; BYTE byLinkType; }NET_DVR_DECCHANINFO, *LPNET_DVR_DECCHANINFO; typedef struct tagNET_DVR_DECINFO { BYTE byPoolChans; NET_DVR_DECCHANINFO struchanConInfo[MAX_DECPOOLNUM]; BYTE byEnablePoll; BYTE byPoolTime; }NET_DVR_DECINFO, *LPNET_DVR_DECINFO; typedef struct tagNET_DVR_DECCFG { DWORD dwSize; DWORD dwDecChanNum; NET_DVR_DECINFO struDecInfo[MAX_DECNUM]; }NET_DVR_DECCFG, *LPNET_DVR_DECCFG; typedef struct tagNET_DVR_PORTINFO { DWORD dwEnableTransPort; char sDecoderIP[16]; WORD wDecoderPort; WORD wDVRTransPort; char cReserve[4]; }NET_DVR_PORTINFO, *LPNET_DVR_PORTINFO; typedef struct tagNET_DVR_PORTCFG { DWORD dwSize; NET_DVR_PORTINFO struTransPortInfo[MAX_TRANSPARENTNUM]; }NET_DVR_PORTCFG, *LPNET_DVR_PORTCFG; typedef struct tagNET_DVR_PLAYREMOTEFILE { DWORD dwSize; char sDecoderIP[16]; WORD wDecoderPort; WORD wLoadMode; union { BYTE byFile[100]; struct { DWORD dwChannel; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; }bytime; }mode_size; }NET_DVR_PLAYREMOTEFILE, *LPNET_DVR_PLAYREMOTEFILE; typedef struct tagNET_DVR_DECCHANSTATUS { DWORD dwWorkType; char sDVRIP[16]; WORD wDVRPort; BYTE byChannel; BYTE byLinkMode; DWORD dwLinkType; union { struct { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; char cReserve[52]; }userInfo; struct { BYTE fileName[100]; }fileInfo; struct { DWORD dwChannel; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; }timeInfo; }objectInfo; }NET_DVR_DECCHANSTATUS, *LPNET_DVR_DECCHANSTATUS; typedef struct tagNET_DVR_DECSTATUS { DWORD dwSize; NET_DVR_DECCHANSTATUS struDecState[MAX_DECNUM]; }NET_DVR_DECSTATUS, *LPNET_DVR_DECSTATUS; typedef struct tagNET_DVR_SHOWSTRINGINFO { WORD wShowString; WORD wStringSize; WORD wShowStringTopLeftX; WORD wShowStringTopLeftY; char sString[44]; }NET_DVR_SHOWSTRINGINFO, *LPNET_DVR_SHOWSTRINGINFO; typedef struct tagNET_DVR_SHOWSTRING_V30 { DWORD dwSize; NET_DVR_SHOWSTRINGINFO struStringInfo[MAX_STRINGNUM_V30]; }NET_DVR_SHOWSTRING_V30, *LPNET_DVR_SHOWSTRING_V30; typedef struct tagNET_DVR_SHOWSTRING_EX { DWORD dwSize; NET_DVR_SHOWSTRINGINFO struStringInfo[MAX_STRINGNUM_EX]; }NET_DVR_SHOWSTRING_EX, *LPNET_DVR_SHOWSTRING_EX; typedef struct tagNET_DVR_SHOWSTRING { DWORD dwSize; NET_DVR_SHOWSTRINGINFO struStringInfo[MAX_STRINGNUM]; }NET_DVR_SHOWSTRING, *LPNET_DVR_SHOWSTRING; typedef struct tagNET_DVR_EMAILCFG_V30 { DWORD dwSize; BYTE sAccount[NAME_LEN]; BYTE sPassword[MAX_EMAIL_PWD_LEN]; struct { BYTE sName[NAME_LEN]; BYTE sAddress[MAX_EMAIL_ADDR_LEN]; }struSender; BYTE sSmtpServer[MAX_EMAIL_ADDR_LEN]; BYTE sPop3Server[MAX_EMAIL_ADDR_LEN]; struct { BYTE sName[NAME_LEN]; BYTE sAddress[MAX_EMAIL_ADDR_LEN]; }struReceiver[3]; BYTE byAttachment; BYTE bySmtpServerVerify; BYTE byMailInterval; BYTE byEnableSSL; WORD wSmtpPort; BYTE byEnableTLS; BYTE byStartTLS; BYTE byRes[72]; } NET_DVR_EMAILCFG_V30, *LPNET_DVR_EMAILCFG_V30; typedef struct tagNET_DVR_CRUISE_PARA { DWORD dwSize; BYTE byPresetNo[CRUISE_MAX_PRESET_NUMS]; BYTE byCruiseSpeed[CRUISE_MAX_PRESET_NUMS]; WORD wDwellTime[CRUISE_MAX_PRESET_NUMS]; BYTE byEnableThisCruise; BYTE res[15]; }NET_DVR_CRUISE_PARA, *LPNET_DVR_CRUISE_PARA; typedef struct tagNET_DVR_TIMEPOINT { DWORD dwMonth; DWORD dwWeekNo; DWORD dwWeekDate; DWORD dwHour; DWORD dwMin; }NET_DVR_TIMEPOINT; typedef struct tagNET_DVR_ZONEANDDST { DWORD dwSize; DWORD dwZoneIndex; BYTE byRes1[12]; DWORD dwEnableDST; BYTE byDSTBias; BYTE byRes2[3]; NET_DVR_TIMEPOINT struBeginPoint; NET_DVR_TIMEPOINT struEndPoint; }NET_DVR_ZONEANDDST, *LPNET_DVR_ZONEANDDST; typedef struct tagNET_DVR_JPEGPARA { WORD wPicSize; WORD wPicQuality; }NET_DVR_JPEGPARA, *LPNET_DVR_JPEGPARA; typedef struct tagNET_DVR_JPEGPICTURE_WITH_APPENDDATA { DWORD dwSize; DWORD dwChannel; DWORD dwJpegPicLen; char *pJpegPicBuff; DWORD dwJpegPicWidth; DWORD dwJpegPicHeight; DWORD dwP2PDataLen; char *pP2PDataBuff; BYTE byIsFreezedata; BYTE byRes[255]; }NET_DVR_JPEGPICTURE_WITH_APPENDDATA, *LPNET_DVR_JPEGPICTURE_WITH_APPENDDATA; typedef struct tagNET_DVR_PICPARAM_V50 { NET_DVR_JPEGPARA struParam; BYTE byPicFormat; BYTE byCapturePicType; BYTE byRes[254]; }NET_DVR_PICPARAM_V50, *LPNET_DVR_PICPARAM_V50; typedef struct tagNET_DVR_AUXOUTCFG { DWORD dwSize; DWORD dwAlarmOutChan; DWORD dwAlarmChanSwitchTime; DWORD dwAuxSwitchTime[MAX_AUXOUT]; BYTE byAuxOrder[MAX_AUXOUT][MAX_WINDOW]; }NET_DVR_AUXOUTCFG, *LPNET_DVR_AUXOUTCFG; typedef struct tagNET_DVR_NTPPARA { BYTE sNTPServer[64]; WORD wInterval; BYTE byEnableNTP; signed char cTimeDifferenceH; signed char cTimeDifferenceM; BYTE res1; WORD wNtpPort; BYTE res2[8]; }NET_DVR_NTPPARA, *LPNET_DVR_NTPPARA; typedef struct tagNET_DVR_DDNSPARA { BYTE sUsername[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE sDomainName[64]; BYTE byEnableDDNS; BYTE res[15]; }NET_DVR_DDNSPARA, *LPNET_DVR_DDNSPARA; typedef struct tagNET_DVR_DDNSPARA_EX { BYTE byHostIndex; BYTE byEnableDDNS; WORD wDDNSPort; BYTE sUsername[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE sDomainName[MAX_DOMAIN_NAME]; BYTE sServerName[MAX_DOMAIN_NAME]; BYTE byRes[16]; }NET_DVR_DDNSPARA_EX, *LPNET_DVR_DDNSPARA_EX; typedef struct tagNET_DVR_DDNSPARA_V30 { BYTE byEnableDDNS; BYTE byHostIndex; BYTE byRes1[2]; struct { BYTE sUsername[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE sDomainName[MAX_DOMAIN_NAME]; BYTE sServerName[MAX_DOMAIN_NAME]; WORD wDDNSPort; WORD wCountryID; BYTE byStatus; BYTE byRes[7]; } struDDNS[MAX_DDNS_NUMS]; BYTE byRes2[16]; }NET_DVR_DDNSPARA_V30, *LPNET_DVR_DDNSPARA_V30; typedef struct tagNET_DVR_EMAILPARA { BYTE sUsername[64]; BYTE sPassword[64]; BYTE sSmtpServer[64]; BYTE sPop3Server[64]; BYTE sMailAddr[64]; BYTE sEventMailAddr1[64]; BYTE sEventMailAddr2[64]; BYTE res[16]; }NET_DVR_EMAILPARA, *LPNET_DVR_EMAILPARA; typedef struct tagNET_DVR_NETAPPCFG { DWORD dwSize; char sDNSIp[16]; NET_DVR_NTPPARA struNtpClientParam; NET_DVR_DDNSPARA struDDNSClientParam; BYTE res[464]; }NET_DVR_NETAPPCFG, *LPNET_DVR_NETAPPCFG; typedef struct tagNET_DVR_SINGLE_NFS { char sNfsHostIPAddr[16]; BYTE sNfsDirectory[PATHNAME_LEN]; }NET_DVR_SINGLE_NFS, *LPNET_DVR_SINGLE_NFS; typedef struct tagNET_DVR_NFSCFG { DWORD dwSize; NET_DVR_SINGLE_NFS struNfsDiskParam[MAX_NFS_DISK]; }NET_DVR_NFSCFG, *LPNET_DVR_NFSCFG; typedef struct tagNET_DVR_ISCSI_CFG { DWORD dwSize; WORD wVrmPort; BYTE byEnable; BYTE byRes[69]; NET_DVR_IPADDR struVrmAddr; char chNvtIndexCode[64]; }NET_DVR_ISCSI_CFG, *LPNET_DVR_ISCSI_CFG; typedef struct tagNET_DVR_CRUISE_POINT { BYTE PresetNum; BYTE Dwell; BYTE Speed; BYTE Reserve; }NET_DVR_CRUISE_POINT, *LPNET_DVR_CRUISE_POINT; typedef struct tagNET_DVR_CRUISE_RET { NET_DVR_CRUISE_POINT struCruisePoint[32]; }NET_DVR_CRUISE_RET, *LPNET_DVR_CRUISE_RET; typedef struct tagNET_DVR_NETCFG_OTHER { DWORD dwSize; char sFirstDNSIP[16]; char sSecondDNSIP[16]; char sRes[32]; }NET_DVR_NETCFG_OTHER, *LPNET_DVR_NETCFG_OTHER; typedef struct tagNET_DVR_MATRIX_DECINFO { char sDVRIP[16]; WORD wDVRPort; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byRes[3]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; }NET_DVR_MATRIX_DECINFO, *LPNET_DVR_MATRIX_DECINFO; typedef struct tagNET_DVR_MATRIX_DYNAMIC_DEC { DWORD dwSize; NET_DVR_MATRIX_DECINFO struDecChanInfo; }NET_DVR_MATRIX_DYNAMIC_DEC, *LPNET_DVR_MATRIX_DYNAMIC_DEC; typedef struct tagNET_DVR_MATRIX_DEC_CHAN_STATUS { DWORD dwSize; DWORD dwIsLinked; DWORD dwStreamCpRate; char cRes[64]; }NET_DVR_MATRIX_DEC_CHAN_STATUS, *LPNET_DVR_MATRIX_DEC_CHAN_STATUS; typedef struct tagNET_DVR_MATRIX_DEC_CHAN_INFO { DWORD dwSize; NET_DVR_MATRIX_DECINFO struDecChanInfo; DWORD dwDecState; NET_DVR_TIME StartTime; NET_DVR_TIME StopTime; char sFileName[128]; }NET_DVR_MATRIX_DEC_CHAN_INFO, *LPNET_DVR_MATRIX_DEC_CHAN_INFO; typedef struct tagNET_DVR_MATRIX_DECCHANINFO { DWORD dwEnable; NET_DVR_MATRIX_DECINFO struDecChanInfo; }NET_DVR_MATRIX_DECCHANINFO, *LPNET_DVR_MATRIX_DECCHANINFO; typedef struct tagNET_DVR_MATRIX_LOOP_DECINFO { DWORD dwSize; DWORD dwPoolTime; NET_DVR_MATRIX_DECCHANINFO struchanConInfo[MAX_CYCLE_CHAN]; }NET_DVR_MATRIX_LOOP_DECINFO, *LPNET_DVR_MATRIX_LOOP_DECINFO; typedef struct tagTTY_CONFIG { BYTE baudrate; BYTE databits; BYTE stopbits; BYTE parity; BYTE flowcontrol; BYTE res[3]; }TTY_CONFIG, *LPTTY_CONFIG; typedef struct tagNET_DVR_MATRIX_TRAN_CHAN_INFO { BYTE byTranChanEnable; BYTE byLocalSerialDevice; BYTE byRemoteSerialDevice; BYTE res1; char sRemoteDevIP[16]; WORD wRemoteDevPort; BYTE res2[2]; TTY_CONFIG RemoteSerialDevCfg; }NET_DVR_MATRIX_TRAN_CHAN_INFO, *LPNET_DVR_MATRIX_TRAN_CHAN_INFO; typedef struct tagNET_DVR_MATRIX_TRAN_CHAN_CONFIG { DWORD dwSize; BYTE by232IsDualChan; BYTE by485IsDualChan; BYTE res[2]; NET_DVR_MATRIX_TRAN_CHAN_INFO struTranInfo[MAX_SERIAL_NUM]; }NET_DVR_MATRIX_TRAN_CHAN_CONFIG, *LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG; typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY { DWORD dwSize; char sDVRIP[16]; WORD wDVRPort; BYTE byChannel; BYTE byReserve; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwPlayMode; NET_DVR_TIME StartTime; NET_DVR_TIME StopTime; char sFileName[128]; }NET_DVR_MATRIX_DEC_REMOTE_PLAY, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY; #define NET_DVR_PLAYSTART 1 #define NET_DVR_PLAYSTOP 2 #define NET_DVR_PLAYPAUSE 3 #define NET_DVR_PLAYRESTART 4 #define NET_DVR_PLAYFAST 5 #define NET_DVR_PLAYSLOW 6 #define NET_DVR_PLAYNORMAL 7 #define NET_DVR_PLAYSTARTAUDIO 9 #define NET_DVR_PLAYSTOPAUDIO 10 #define NET_DVR_PLAYSETPOS 12 #define NET_DVR_RESETBUFFER 37 typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL { DWORD dwSize; DWORD dwPlayCmd; DWORD dwCmdParam; }NET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_CONTROL; typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS { DWORD dwSize; DWORD dwCurMediaFileLen; DWORD dwCurMediaFilePosition; DWORD dwCurMediaFileDuration; DWORD dwCurPlayTime; DWORD dwCurMediaFIleFrames; DWORD dwCurDataType; BYTE res[72]; }NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS; typedef struct tagNET_MATRIX_PASSIVEMODE { WORD wTransProtol; WORD wPassivePort; NET_DVR_IPADDR struMcastIP; BYTE byStreamType; BYTE byRes[7]; }NET_DVR_MATRIX_PASSIVEMODE, *LPNET_DVR_MATRIX_PASSIVEMODE; typedef struct tagNET_DVR_MATRIX_TRAN_CHAN_INFO_V30 { BYTE byTranChanEnable; BYTE byLocalSerialDevice; BYTE byRemoteSerialDevice; BYTE byRes1; NET_DVR_IPADDR struRemoteDevIP; WORD wRemoteDevPort; BYTE byIsEstablished; BYTE byRes2; TTY_CONFIG RemoteSerialDevCfg; BYTE byUsername[NAME_LEN]; BYTE byPassword[PASSWD_LEN]; DWORD dwLocalSerialNo; DWORD dwRemoteSerialNo; BYTE byRes3[8]; } NET_DVR_MATRIX_TRAN_CHAN_INFO_V30,*LPNET_DVR_MATRIX_TRAN_CHAN_INFO_V30; typedef struct tagMATRIX_TRAN_CHAN_CONFIG { DWORD dwSize; BYTE by232IsDualChan; BYTE by485IsDualChan; BYTE byRes[2]; NET_DVR_MATRIX_TRAN_CHAN_INFO_V30 struTranInfo[MAX_SERIAL_NUM]; }NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30,*LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30; typedef struct tagNET_DVR_MATRIX_CHAN_INFO_V30 { DWORD dwEnable; NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg; NET_DVR_DEV_CHAN_INFO struDevChanInfo; }NET_DVR_MATRIX_CHAN_INFO_V30,*LPNET_DVR_CYC_SUR_CHAN_ELE_V30; typedef struct tagMATRIX_LOOP_DECINFO_V30 { DWORD dwSize; DWORD dwPoolTime; NET_DVR_MATRIX_CHAN_INFO_V30 struchanConInfo[MAX_CYCLE_CHAN_V30]; BYTE byRes[16]; } NET_DVR_MATRIX_LOOP_DECINFO_V30,*LPNET_DVR_MATRIX_LOOP_DECINFO_V30; typedef struct tagDEC_MATRIX_CHAN_INFO_V30 { DWORD dwSize; NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg; NET_DVR_DEV_CHAN_INFO struDevChanInfo; DWORD dwDecState; NET_DVR_TIME StartTime; NET_DVR_TIME StopTime; char sFileName[128]; DWORD dwGetStreamMode; NET_DVR_MATRIX_PASSIVEMODE struPassiveMode; BYTE byRes[32]; }NET_DVR_MATRIX_DEC_CHAN_INFO_V30,*LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30; #define MAX_RESOLUTIONNUM 64 typedef struct tagNET_DVR_MATRIX_ABILITY { DWORD dwSize; BYTE byDecNums; BYTE byStartChan; BYTE byVGANums; BYTE byBNCNums; BYTE byVGAWindowMode[8][12]; BYTE byBNCWindowMode[4]; BYTE byDspNums; BYTE byHDMINums; BYTE byDVINums; BYTE byRes1[13]; BYTE bySupportResolution[MAX_RESOLUTIONNUM]; BYTE byHDMIWindowMode[4][8]; BYTE byDVIWindowMode[4][8]; BYTE byRes2[24]; }NET_DVR_MATRIX_ABILITY, *LPNET_DVR_MATRIX_ABILITY; typedef struct tagNET_DVR_DISP_LOGOCFG { DWORD dwCorordinateX; DWORD dwCorordinateY; WORD wPicWidth; WORD wPicHeight; BYTE byRes1[4]; BYTE byFlash; BYTE byTranslucent; BYTE byRes2[6]; DWORD dwLogoSize; }NET_DVR_DISP_LOGOCFG,*LPNET_DVR_DISP_LOGOCFG; #define NET_DVR_ENCODER_UNKOWN 0 #define NET_DVR_ENCODER_H264 1 #define NET_DVR_ENCODER_S264 2 #define NET_DVR_ENCODER_MPEG4 3 #define NET_DVR_ORIGINALSTREAM 4 #define NET_DVR_PICTURE 5 #define NET_DVR_ENCODER_MJPEG 6 #define NET_DVR_ENCODER_MPEG2 7 #define NET_DVR_ENCODER_H265 8 #define NET_DVR_ENCODER_SVAC 9 #define NET_DVR_ENCODER_SMART264 10 #define NET_DVR_ENCODER_SMART265 11 #define NET_DVR_STREAM_TYPE_UNKOWN 0 #define NET_DVR_STREAM_TYPE_PRIVT 1 #define NET_DVR_STREAM_TYPE_TS 7 #define NET_DVR_STREAM_TYPE_PS 8 #define NET_DVR_STREAM_TYPE_RTP 9 #define NET_DVR_STREAM_TYPE_ORIGIN 10 typedef struct tagNET_DVR_MATRIX_CHAN_STATUS { BYTE byDecodeStatus; BYTE byStreamType; BYTE byPacketType; BYTE byRecvBufUsage; BYTE byDecBufUsage; BYTE byFpsDecV; BYTE byFpsDecA; BYTE byCpuLoad; BYTE byRes1[4]; DWORD dwDecodedV; DWORD dwDecodedA; WORD wImgW; WORD wImgH; BYTE byVideoFormat; BYTE byRes2[3]; DWORD dwDecChan; BYTE byRes3[20]; }NET_DVR_MATRIX_CHAN_STATUS, *LPNET_DVR_MATRIX_CHAN_STATUS; #define NET_DVR_MAX_DISPREGION 16 typedef enum { VGA_NOT_AVALIABLE, VGA_THS8200_MODE_SVGA_60HZ, VGA_THS8200_MODE_SVGA_75HZ, VGA_THS8200_MODE_XGA_60HZ, VGA_THS8200_MODE_XGA_75HZ, VGA_THS8200_MODE_SXGA_60HZ, VGA_THS8200_MODE_720P_60HZ, VGA_THS8200_MODE_1080I_60HZ, VGA_THS8200_MODE_1080P_30HZ, VGA_THS8200_MODE_UXGA_30HZ, HDMI_SII9134_MODE_XGA_60HZ, HDMI_SII9134_MODE_SXGA_60HZ, HDMI_SII9134_MODE_SXGA2_60HZ, HDMI_SII9134_MODE_720P_60HZ, HDMI_SII9134_MODE_720P_50HZ, HDMI_SII9134_MODE_1080I_60HZ, HDMI_SII9134_MODE_1080I_50HZ, HDMI_SII9134_MODE_1080P_25HZ, HDMI_SII9134_MODE_1080P_30HZ, HDMI_SII9134_MODE_1080P_50HZ, HDMI_SII9134_MODE_1080P_60HZ, HDMI_SII9134_MODE_UXGA_60HZ, DVI_SII9134_MODE_XGA_60HZ, DVI_SII9134_MODE_SXGA_60HZ, DVI_SII9134_MODE_SXGA2_60HZ, DVI_SII9134_MODE_720P_60HZ, DVI_SII9134_MODE_720P_50HZ, DVI_SII9134_MODE_1080I_60HZ, DVI_SII9134_MODE_1080I_50HZ, DVI_SII9134_MODE_1080P_25HZ, DVI_SII9134_MODE_1080P_30HZ, DVI_SII9134_MODE_1080P_50HZ, DVI_SII9134_MODE_1080P_60HZ, DVI_SII9134_MODE_UXGA_60HZ, VGA_DECSVR_MODE_SXGA2_60HZ, HDMI_DECSVR_MODE_1080P_24HZ, DVI_DECSVR_MODE_1080P_24HZ, YPbPr_DECSVR_MODE_720P_60HZ, YPbPr_DECSVR_MODE_1080I_60HZ }VGA_MODE; #define LOW_DEC_FPS_1_2 51 #define LOW_DEC_FPS_1_4 52 #define LOW_DEC_FPS_1_8 53 #define LOW_DEC_FPS_1_16 54 typedef enum { VS_NON = 0, VS_NTSC = 1, VS_PAL = 2 }VIDEO_STANDARD; typedef struct tagNET_DVR_VGA_DISP_CHAN_CFG { DWORD dwSize; BYTE byAudio; BYTE byAudioWindowIdx; BYTE byVgaResolution; BYTE byVedioFormat; DWORD dwWindowMode; BYTE byJoinDecChan[MAX_WINDOWS]; BYTE byEnlargeStatus; BYTE byEnlargeSubWindowIndex; union { BYTE byRes[16]; struct { BYTE byJoinDecoderId[MAX_WINDOWS]; }struVideoPlatform; struct { BYTE byRes[16]; }struNotVideoPlatform; }struDiff; BYTE byUnionType; BYTE byScale; }NET_DVR_VGA_DISP_CHAN_CFG,*LPNET_DVR_VGA_DISP_CHAN_CFG; #define NET_DVR_MAX_DISPREGION 16 typedef struct tagNET_DVR_DISP_CHAN_STATUS { BYTE byDispStatus; BYTE byBVGA; BYTE byVideoFormat; BYTE byWindowMode; BYTE byJoinDecChan[MAX_WINDOWS]; BYTE byFpsDisp[NET_DVR_MAX_DISPREGION]; BYTE byScreenMode; BYTE byRes2[31]; }NET_DVR_DISP_CHAN_STATUS, *LPNET_DVR_DISP_CHAN_STATUS; #define MAX_DECODECHANNUM 32 #define MAX_DISPCHANNUM 24 typedef struct tagNET_DVR_DECODER_WORK_STATUS { DWORD dwSize; NET_DVR_MATRIX_CHAN_STATUS struDecChanStatus[MAX_DECODECHANNUM]; NET_DVR_DISP_CHAN_STATUS struDispChanStatus[MAX_DISPCHANNUM]; BYTE byAlarmInStatus[MAX_ANALOG_ALARMIN]; BYTE byAlarmOutStatus[MAX_ANALOG_ALARMOUT]; BYTE byAudioInChanStatus; BYTE byRes[127]; }NET_DVR_DECODER_WORK_STATUS,*LPNET_DVR_DECODER_WORK_STATUS; typedef struct tagNET_DVR_PASSIVEDECODE_CONTROL { DWORD dwSize; DWORD dwPlayCmd; DWORD dwCmdParam; BYTE byRes[16]; }NET_DVR_PASSIVEDECODE_CONTROL,*LPNET_DVR_PASSIVEDECODE_CONTROL; #define PASSIVE_DEC_PAUSE 1 #define PASSIVE_DEC_RESUME 2 #define PASSIVE_DEC_FAST 3 #define PASSIVE_DEC_SLOW 4 #define PASSIVE_DEC_NORMAL 5 #define PASSIVE_DEC_ONEBYONE 6 #define PASSIVE_DEC_AUDIO_ON 7 #define PASSIVE_DEC_AUDIO_OFF 8 #define PASSIVE_DEC_RESETBUFFER 9 typedef struct tagNET_DVR_MATRIX_DECCHAN_CONTROL { DWORD dwSize; BYTE byDecChanScaleStatus; BYTE byDecodeDelay; BYTE byEnableSpartan; BYTE byLowLight; BYTE byNoiseReduction; BYTE byDefog; BYTE byEnableVcaDec; BYTE byEnableAudio; DWORD dwAllCtrlType; BYTE byRes[56]; }NET_DVR_MATRIX_DECCHAN_CONTROL,*LPNET_DVR_MATRIX_DECCHAN_CONTROL; #define MAX_SUBSYSTEM_NUM 80 #define MAX_SERIALLEN 36 #define MAX_LOOPPLANNUM 16 #define DECODE_TIMESEGMENT 4 typedef struct tagNET_DVR_SUBSYSTEMINFO { BYTE bySubSystemType; BYTE byChan; BYTE byLoginType; BYTE byRes1[5]; NET_DVR_IPADDR struSubSystemIP; WORD wSubSystemPort; BYTE byRes2[6]; NET_DVR_IPADDR struSubSystemIPMask; NET_DVR_IPADDR struGatewayIpAddr; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; char sDomainName[MAX_DOMAIN_NAME]; char sDnsAddress[MAX_DOMAIN_NAME]; BYTE sSerialNumber[SERIALNO_LEN]; }NET_DVR_SUBSYSTEMINFO, *LPNET_DVR_SUBSYSTEMINFO; typedef struct tagNET_DVR_ALLSUBSYSTEMINFO { DWORD dwSize; NET_DVR_SUBSYSTEMINFO struSubSystemInfo[MAX_SUBSYSTEM_NUM]; BYTE byRes[8]; }NET_DVR_ALLSUBSYSTEMINFO, *LPNET_DVR_ALLSUBSYSTEMINFO; typedef struct tagNET_DVR_LOOPPLAN_SUBCFG { DWORD dwSize; DWORD dwPoolTime; NET_DVR_MATRIX_CHAN_INFO_V30 struChanConInfo[MAX_CYCLE_CHAN_V30]; BYTE byRes[16]; }NET_DVR_LOOPPLAN_SUBCFG,*LPNET_DVR_LOOPPLAN_SUBCFG; typedef struct tagNET_DVR_ALARMMODECFG { DWORD dwSize; BYTE byAlarmMode; WORD wLoopTime; BYTE byRes[9]; }NET_DVR_ALARMMODECFG,*LPNET_DVR_ALARMMODECFG; typedef struct tagNET_DVR_CODESPLITTERINFO { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes1[6]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byChan; BYTE by485Port; BYTE byRes2[14]; } NET_DVR_CODESPLITTERINFO, *LPNET_DVR_CODESPLITTERINFO; typedef struct tagNET_DVR_ASSOCIATECFG { BYTE byAssociateType; WORD wAlarmDelay; BYTE byAlarmNum; BYTE byRes[8]; } NET_DVR_ASSOCIATECFG,*LPNET_DVR_ASSOCIATECFG; typedef struct tagNET_DVR_DYNAMICDECODE { DWORD dwSize; NET_DVR_ASSOCIATECFG struAssociateCfg; NET_DVR_PU_STREAM_CFG struPuStreamCfg; BYTE byRes[8]; }NET_DVR_DYNAMICDECODE,*LPNET_DVR_DYNAMICDECODE; typedef struct tagNET_DVR_DECODESCHED { NET_DVR_SCHEDTIME struSchedTime; BYTE byDecodeType; BYTE byLoopGroup; BYTE byRes[6]; NET_DVR_PU_STREAM_CFG struDynamicDec; } NET_DVR_DECODESCHED, *LPNET_DVR_DECODESCHED; typedef struct tagNET_DVR_PLANDECODE { DWORD dwSize; NET_DVR_DECODESCHED struDecodeSched[MAX_DAYS][DECODE_TIMESEGMENT]; BYTE byRes[8]; } NET_DVR_PLANDECODE,*LPNET_DVR_PLANDECODE; typedef struct tagNET_DVR_EMAILCFG { DWORD dwSize; char sUserName[32]; char sPassWord[32]; char sFromName[32]; char sToName1[32]; char sToName2[32]; char sToAddr1[48]; char sToAddr2[48]; char sEmailServer[32]; BYTE byServerType; BYTE byUseAuthen; BYTE byAttachment; BYTE byMailinterval; } NET_DVR_EMAILCFG, *LPNET_DVR_EMAILCFG; typedef struct tagNET_DVR_COMPRESSIONCFG_NEW { DWORD dwSize; NET_DVR_COMPRESSION_INFO_EX struLowCompression; NET_DVR_COMPRESSION_INFO_EX struEventCompression; }NET_DVR_COMPRESSIONCFG_NEW, *LPNET_DVR_COMPRESSIONCFG_NEW; typedef struct tagNET_DVR_PTZPOS { WORD wAction; WORD wPanPos; WORD wTiltPos; WORD wZoomPos; }NET_DVR_PTZPOS, *LPNET_DVR_PTZPOS; typedef struct tagNET_DVR_PTZSCOPE { WORD wPanPosMin; WORD wPanPosMax; WORD wTiltPosMin; WORD wTiltPosMax; WORD wZoomPosMin; WORD wZoomPosMax; }NET_DVR_PTZSCOPE, *LPNET_DVR_PTZSCOPE; typedef struct tagNET_DVR_RTSPCFG { DWORD dwSize; WORD wPort; BYTE byReserve[54]; }NET_DVR_RTSPCFG, *LPNET_DVR_RTSPCFG; typedef struct tagNET_DVR_DEVICEINFO { BYTE sSerialNumber[SERIALNO_LEN]; BYTE byAlarmInPortNum; BYTE byAlarmOutPortNum; BYTE byDiskNum; BYTE byDVRType; BYTE byChanNum; BYTE byStartChan; }NET_DVR_DEVICEINFO, *LPNET_DVR_DEVICEINFO; typedef struct tagNET_DVR_DEVICEINFO_V30 { BYTE sSerialNumber[SERIALNO_LEN]; BYTE byAlarmInPortNum; BYTE byAlarmOutPortNum; BYTE byDiskNum; BYTE byDVRType; BYTE byChanNum; BYTE byStartChan; BYTE byAudioChanNum; BYTE byIPChanNum; BYTE byZeroChanNum; BYTE byMainProto; BYTE bySubProto; BYTE bySupport; BYTE bySupport1; BYTE bySupport2; WORD wDevType; BYTE bySupport3; BYTE byMultiStreamProto; BYTE byStartDChan; BYTE byStartDTalkChan; BYTE byHighDChanNum; BYTE bySupport4; BYTE byLanguageType; BYTE byVoiceInChanNum; BYTE byStartVoiceInChanNo; BYTE bySupport5; BYTE bySupport6; BYTE byMirrorChanNum; WORD wStartMirrorChanNo; BYTE bySupport7; BYTE byRes2; }NET_DVR_DEVICEINFO_V30, *LPNET_DVR_DEVICEINFO_V30; typedef struct tagNET_DVR_DEVICEINFO_V40 { NET_DVR_DEVICEINFO_V30 struDeviceV30; BYTE bySupportLock; BYTE byRetryLoginTime; BYTE byPasswordLevel; BYTE byProxyType; DWORD dwSurplusLockTime; BYTE byCharEncodeType; BYTE bySupportDev5; BYTE bySupport; BYTE byLoginMode; DWORD dwOEMCode; DWORD dwResidualValidity; BYTE byRes2[244]; }NET_DVR_DEVICEINFO_V40, *LPNET_DVR_DEVICEINFO_V40; typedef void(*fLoginResultCallBack) (LONG lUserID, DWORD dwResult, LPNET_DVR_DEVICEINFO_V30 lpDeviceInfo , void* pUser); #define NET_DVR_DEV_ADDRESS_MAX_LEN 129 #define NET_DVR_LOGIN_USERNAME_MAX_LEN 64 #define NET_DVR_LOGIN_PASSWD_MAX_LEN 64 typedef struct tagNET_DVR_USER_LOGIN_INFO { char sDeviceAddress[NET_DVR_DEV_ADDRESS_MAX_LEN]; BYTE byUseTransport; WORD wPort; char sUserName[NET_DVR_LOGIN_USERNAME_MAX_LEN]; char sPassword[NET_DVR_LOGIN_PASSWD_MAX_LEN]; fLoginResultCallBack cbLoginResult; void *pUser; BOOL bUseAsynLogin; BYTE byProxyType; BYTE byUseUTCTime; BYTE byLoginMode; BYTE byHttps; LONG iProxyID; BYTE byVerifyMode; BYTE byRes3[119]; }NET_DVR_USER_LOGIN_INFO,*LPNET_DVR_USER_LOGIN_INFO; typedef enum _SDK_NET_ENV { LOCAL_AREA_NETWORK = 0, WIDE_AREA_NETWORK }SDK_NETWORK_ENVIRONMENT; typedef enum { NORMALMODE = 0, OVERLAYMODE }DISPLAY_MODE; typedef enum { PTOPTCPMODE = 0, PTOPUDPMODE, MULTIMODE, RTPMODE, RESERVEDMODE }SEND_MODE; typedef enum { BMP_MODE = 0, JPEG_MODE = 1 }CAPTURE_MODE; typedef enum { MONOPOLIZE_MODE = 1, SHARE_MODE = 2 }REALSOUND_MODE; typedef struct tagNET_DVR_CLIENTINFO { LONG lChannel; LONG lLinkMode; HWND hPlayWnd; char* sMultiCastIP; BYTE byProtoType; BYTE byRes[3]; }NET_DVR_CLIENTINFO, *LPNET_DVR_CLIENTINFO; typedef struct tagNET_DVR_SDKSTATE { DWORD dwTotalLoginNum; DWORD dwTotalRealPlayNum; DWORD dwTotalPlayBackNum; DWORD dwTotalAlarmChanNum; DWORD dwTotalFormatNum; DWORD dwTotalFileSearchNum; DWORD dwTotalLogSearchNum; DWORD dwTotalSerialNum; DWORD dwTotalUpgradeNum; DWORD dwTotalVoiceComNum; DWORD dwTotalBroadCastNum; DWORD dwTotalListenNum; DWORD dwEmailTestNum; DWORD dwBackupNum; DWORD dwTotalInquestUploadNum; DWORD dwRes[6]; }NET_DVR_SDKSTATE, *LPNET_DVR_SDKSTATE; typedef struct tagNET_DVR_SDKABL { DWORD dwMaxLoginNum; DWORD dwMaxRealPlayNum; DWORD dwMaxPlayBackNum; DWORD dwMaxAlarmChanNum; DWORD dwMaxFormatNum; DWORD dwMaxFileSearchNum; DWORD dwMaxLogSearchNum; DWORD dwMaxSerialNum; DWORD dwMaxUpgradeNum; DWORD dwMaxVoiceComNum; DWORD dwMaxBroadCastNum; DWORD dwRes[10]; }NET_DVR_SDKABL, *LPNET_DVR_SDKABL; typedef struct tagNET_DVR_ALARMER { BYTE byUserIDValid; BYTE bySerialValid; BYTE byVersionValid; BYTE byDeviceNameValid; BYTE byMacAddrValid; BYTE byLinkPortValid; BYTE byDeviceIPValid; BYTE bySocketIPValid; LONG lUserID; BYTE sSerialNumber[SERIALNO_LEN]; DWORD dwDeviceVersion; char sDeviceName[NAME_LEN]; BYTE byMacAddr[MACADDR_LEN]; WORD wLinkPort; char sDeviceIP[128]; char sSocketIP[128]; BYTE byIpProtocol; BYTE byRes1[2]; BYTE bJSONBroken; WORD wSocketPort; BYTE byRes2[6]; }NET_DVR_ALARMER, *LPNET_DVR_ALARMER; typedef struct tagNET_DVR_DISPLAY_PARA { long bToScreen; long bToVideoOut; long nLeft; long nTop; long nWidth; long nHeight; long nReserved; }NET_DVR_DISPLAY_PARA, *LPNET_DVR_DISPLAY_PARA; typedef struct tagNET_DVR_CARDINFO { LONG lChannel; LONG lLinkMode; char* sMultiCastIP; NET_DVR_DISPLAY_PARA struDisplayPara; }NET_DVR_CARDINFO, *LPNET_DVR_CARDINFO; typedef struct tagNET_DVR_FIND_DATA { char sFileName[100]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; DWORD dwFileSize; }NET_DVR_FIND_DATA, *LPNET_DVR_FIND_DATA; typedef struct tagNET_DVR_FINDDATA_V30 { char sFileName[100]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; DWORD dwFileSize; char sCardNum[32]; BYTE byLocked; BYTE byFileType; BYTE byRes[2]; }NET_DVR_FINDDATA_V30, *LPNET_DVR_FINDDATA_V30; typedef struct tagNET_DVR_FINDDATA_V40 { char sFileName[100]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; DWORD dwFileSize; char sCardNum[32]; BYTE byLocked; BYTE byFileType; BYTE byQuickSearch; BYTE byRes; DWORD dwFileIndex; BYTE byStreamType; BYTE byRes1[127]; }NET_DVR_FINDDATA_V40, *LPNET_DVR_FINDDATA_V40; typedef struct tagNET_DVR_FINDDATA_V50 { char sFileName[100]; NET_DVR_TIME_SEARCH struStartTime; NET_DVR_TIME_SEARCH struStopTime; NET_DVR_ADDRESS struAddr; DWORD dwFileSize; BYTE byLocked; BYTE byFileType; BYTE byQuickSearch; BYTE byStreamType; DWORD dwFileIndex; char sCardNum[32]; BYTE byRes[256]; }NET_DVR_FINDDATA_V50, *LPNET_DVR_FINDDATA_V50; typedef struct tagNET_DVR_FINDDATA_CARD { char sFileName[100]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; DWORD dwFileSize; char sCardNum[32]; }NET_DVR_FINDDATA_CARD, *LPNET_DVR_FINDDATA_CARD; typedef struct tagNET_DVR_FILECOND { LONG lChannel; DWORD dwFileType; DWORD dwIsLocked; DWORD dwUseCardNo; BYTE sCardNumber[32]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; }NET_DVR_FILECOND, *LPNET_DVR_FILECOND; typedef struct tagNET_DVR_POINT_FRAME { int xTop; int yTop; int xBottom; int yBottom; int bCounter; }NET_DVR_POINT_FRAME, *LPNET_DVR_POINT_FRAME; typedef struct tagNET_DVR_COMPRESSION_AUDIO { BYTE byAudioEncType; BYTE byAudioSamplingRate; BYTE byAudioBitRate; BYTE byres[4]; BYTE bySupport; }NET_DVR_COMPRESSION_AUDIO, *LPNET_DVR_COMPRESSION_AUDIO; #define IW_ESSID_MAX_SIZE 32 #define WIFI_WEP_MAX_KEY_COUNT 4 #define WIFI_WEP_MAX_KEY_LENGTH 33 #define WIFI_WPA_PSK_MAX_KEY_LENGTH 63 #define WIFI_WPA_PSK_MIN_KEY_LENGTH 8 #define WIFI_MAX_AP_COUNT 20 #define WIFI_WPA_PSK_MAX_HEXKEY_LENGTH 68 typedef struct tagNET_DVR_AP_INFO { char sSsid[IW_ESSID_MAX_SIZE]; DWORD dwMode; DWORD dwSecurity; DWORD dwChannel; DWORD dwSignalStrength; DWORD dwSpeed; }NET_DVR_AP_INFO,*LPNET_DVR_AP_INFO; typedef struct tagNET_DVR_AP_INFO_LIST { DWORD dwSize; DWORD dwCount; NET_DVR_AP_INFO struApInfo[WIFI_MAX_AP_COUNT]; }NET_DVR_AP_INFO_LIST,*LPNET_DVR_AP_INFO_LIST; typedef struct tagNET_DVR_WIFIETHERNET { char sIpAddress[16]; char sIpMask[16]; BYTE byMACAddr[MACADDR_LEN]; BYTE byCloseWifi; BYTE bRes; DWORD dwEnableDhcp; DWORD dwAutoDns; char sFirstDns[16]; char sSecondDns[16]; char sGatewayIpAddr[16]; BYTE bRes2[8]; }NET_DVR_WIFIETHERNET,*LPNET_DVR_WIFIETHERNET; typedef struct tagNET_DVR_WIFI_CFG_EX { NET_DVR_WIFIETHERNET struEtherNet; char sEssid[IW_ESSID_MAX_SIZE]; DWORD dwMode; DWORD dwSecurity; union { struct { DWORD dwAuthentication; DWORD dwKeyLength; DWORD dwKeyType; DWORD dwActive; char sKeyInfo[WIFI_WEP_MAX_KEY_COUNT][WIFI_WEP_MAX_KEY_LENGTH]; }wep; struct { DWORD dwKeyLength; char sKeyInfo[WIFI_WPA_PSK_MAX_KEY_LENGTH]; BYTE byEncryptType; char sNewKeyInfo[WIFI_WPA_PSK_MAX_HEXKEY_LENGTH]; BYTE byKeyType; BYTE byRes[7]; }wpa_psk; struct { BYTE byEncryptType; BYTE byAuthType; BYTE byRes[2]; union { struct { BYTE byEapolVersion; BYTE byAuthType; BYTE byRes1[2]; BYTE byAnonyIdentity [NAME_LEN]; BYTE byUserName[NAME_LEN]; BYTE byPassword[NAME_LEN]; BYTE byRes[44]; }EAP_TTLS; struct { BYTE byEapolVersion; BYTE byAuthType; BYTE byPeapVersion; BYTE byPeapLabel; BYTE byAnonyIdentity[NAME_LEN]; BYTE byUserName[NAME_LEN]; BYTE byPassword[NAME_LEN]; BYTE byRes[44]; }EAP_PEAP; struct { BYTE byEapolVersion; BYTE byRes1[3]; BYTE byIdentity[NAME_LEN]; BYTE byPrivateKeyPswd[NAME_LEN]; BYTE byRes[76]; }EAP_TLS; }auth_param; }wpa_wpa2; }key; }NET_DVR_WIFI_CFG_EX,*LPNET_DVR_WIFI_CFG_EX; typedef struct tagNET_DVR_WIFI_CFG { DWORD dwSize; NET_DVR_WIFI_CFG_EX struWifiCfg; }NET_DVR_WIFI_CFG,*LPNET_DVR_WIFI_CFG; typedef struct tagNET_DVR_WIFI_CONNECT_STATUS { DWORD dwSize; BYTE byCurStatus; BYTE byRes1[3]; DWORD dwErrorCode; BYTE byRes[244]; }NET_DVR_WIFI_CONNECT_STATUS,*LPNET_DVR_WIFI_CONNECT_STATUS; typedef struct tagNET_DVR_WIFI_WORKMODE { DWORD dwSize; DWORD dwNetworkInterfaceMode; }NET_DVR_WIFI_WORKMODE,*LPNET_DVR_WIFI_WORKMODE; #define VCA_MAX_POLYGON_POINT_NUM 10 #define MAX_RULE_NUM 8 #define MAX_RULE_NUM_V42 16 #define MAX_TARGET_NUM 30 #define MAX_CALIB_PT 6 #define MIN_CALIB_PT 4 #define MAX_TIMESEGMENT_2 2 #define DATA_INDEX_LEN 64 #define MAX_DEV_DATAINDEX_LEN 64 #define MAX_TRAFFIC_PICTURE_NUM 8 #define MAX_LICENSE_LEN 16 #define MAX_LICENSE_LEN_EX 32 #define MAX_CARDNO_LEN 48 #define MAX_OPERATE_INDEX_LEN 32 #define MAX_PLATE_NUM 3 #define MAX_MASK_REGION_NUM 4 #define MAX_SEGMENT_NUM 6 #define MIN_SEGMENT_NUM 3 #define MAX_REL_SNAPCHAN_NUM 3 #define MAX_PIC_SWITCH_STORAGE_SERVER 64 #define MAX_INFO_SWITCH_STORAGE_SERVER 64 #define RTMP_URL_LEN 128 #define MAX_ID_LEN_128 128 #define MAX_DEBUGCMD_LEN 1024 #define MAX_DEBUGINFO_LEN 1400 #define MAX_VEHICLE_ID_LEN 32 #define LEN_PROPERTY 128 typedef struct tagNET_DVR_VEHICLE_INFO_COND { DWORD dwSize; NET_DVR_TIME_EX strStartTime; NET_DVR_TIME_EX strStopTime; char sLicense[MAX_LICENSE_LEN_EX]; DWORD dwChannel; BYTE byRegion; BYTE byRes[127]; }NET_DVR_VEHICLE_INFO_COND, *LPNET_DVR_VEHICLE_INFO_COND; typedef struct tagNET_DVR_VEHICLE_INFO_CFG { DWORD dwSize; DWORD dwIndex; BYTE byDeviceID[DEVICE_ID_LEN]; BYTE byBelieve; BYTE byDir; BYTE byLineID; BYTE byRes1; NET_DVR_TIME_EX struSnapTime; char sLicense[MAX_LICENSE_LEN_EX]; BYTE byMonitoringSiteID[MONITORSITE_ID_LEN ]; BYTE byCountry; BYTE byMatchingResult; BYTE byArea; BYTE byPlateType; char sDeviceName[NAME_LEN]; BYTE byPlateColor; BYTE byPlateSize; BYTE byRes2[2]; char sPlateCategory[MAX_CATEGORY_LEN]; char sPlateImageURL[URL_LEN_V40]; char sEffectiveTime[ISO_8601_LEN]; BYTE byRes[176]; }NET_DVR_VEHICLE_INFO_CFG, *LPNET_DVR_VEHICLE_INFO_CFG; #define MAX_VCA_CHAN 16 typedef struct tagNET_VCA_CTRLINFO { BYTE byVCAEnable; BYTE byVCAType; BYTE byStreamWithVCA; BYTE byMode; BYTE byControlType; BYTE byPicWithVCA ; BYTE byRes[2]; }NET_VCA_CTRLINFO, * LPNET_VCA_CTRLINFO; typedef struct tagNET_VCA_CTRLCFG { DWORD dwSize; NET_VCA_CTRLINFO struCtrlInfo[MAX_VCA_CHAN]; BYTE byRes[16]; }NET_VCA_CTRLCFG, * LPNET_VCA_CTRLCFG; typedef struct tagNET_VCA_DEV_ABILITY { DWORD dwSize; BYTE byVCAChanNum; BYTE byPlateChanNum; BYTE byBBaseChanNum; BYTE byBAdvanceChanNum; BYTE byBFullChanNum; BYTE byATMChanNum; BYTE byPDCChanNum; BYTE byITSChanNum; BYTE byBPrisonChanNum; BYTE byFSnapChanNum; BYTE byFSnapRecogChanNum; BYTE byFRetrievalChanNum; BYTE bySupport; BYTE byFRecogChanNum; BYTE byBPPerimeterChanNum; BYTE byTPSChanNum; BYTE byTFSChanNum; BYTE byFSnapBFullChanNum; BYTE byHeatMapChanNum; BYTE bySmartVehicleNum; BYTE bySmartHVTNum; BYTE bySmartNum; BYTE byVehicleNum; BYTE bySmartRoadDetectionNum ; BYTE bySmartFaceDetectionNum ; BYTE bySmartHeatMapNum ; BYTE byHumanRecognitionNum; BYTE byEdcationStudentNum; BYTE byRoadDetectionNum; BYTE byPersonDensityDetection; BYTE bySafetyHelmetDetection; BYTE byPerimeterCapture; BYTE byHeelPDC; BYTE by12MPLiveView; BYTE byTeacherBehaviorDetectNum; BYTE byMixedTargetDetection; BYTE byFaceContrast; BYTE byCityManagement; BYTE byMixedTargetDetectionSmart; BYTE byRes; }NET_VCA_DEV_ABILITY, *LPNET_VCA_DEV_ABILITY; typedef enum _VCA_ABILITY_TYPE_ { TRAVERSE_PLANE_ABILITY = 0x01, ENTER_AREA_ABILITY = 0x02, EXIT_AREA_ABILITY = 0x04, INTRUSION_ABILITY = 0x08, LOITER_ABILITY = 0x10, LEFT_TAKE_ABILITY = 0x20, PARKING_ABILITY = 0x40, RUN_ABILITY = 0x80, HIGH_DENSITY_ABILITY = 0x100, LF_TRACK_ABILITY = 0x200, VIOLENT_MOTION_ABILITY = 0x400, REACH_HIGHT_ABILITY = 0x800, GET_UP_ABILITY = 0x1000, LEFT_ABILITY = 0x2000, TAKE_ABILITY = 0x4000, LEAVE_POSITION = 0x8000, TRAIL_ABILITY = 0x10000, KEY_PERSON_GET_UP_ABILITY = 0x20000, STANDUP_ABILITY = 0x40000, FALL_DOWN_ABILITY = 0x80000, AUDIO_ABNORMAL_ABILITY = 0x100000, ADV_REACH_HEIGHT_ABILITY = 0x200000, TOILET_TARRY_ABILITY = 0x400000, YARD_TARRY_ABILITY = 0x800000, ADV_TRAVERSE_PLANE_ABILITY = 0x1000000, LECTURE_ABILITY = 0x2000000, ANSWER_ABILITY = 0x4000000, HUMAN_ENTER_ABILITY = 0x10000000, OVER_TIME_ABILITY = 0x20000000, STICK_UP_ABILITY = 0x40000000, INSTALL_SCANNER_ABILITY = 0x80000000 }VCA_ABILITY_TYPE; typedef enum _VCA_ABILITY_TYPE_EX_ { PEOPLENUM_CHANGE_ABILITY = 0x00000002, SPACING_CHANGE_ABILITY = 0x00000004, EVENT_COMBINED_ABILITY = 0x00000008, EVENT_SIT_QUIETLY = 0x00000010, EVENT_HIGH_DENSITY_STATUS_ABILITY = 0x00000020, EVENT_RUNNING = 0x00000040, EVENT_RETENTION = 0x00000080, EVENT_TEACHER_WRITING = 0x00000100 }VCA_ABILITY_TYPE_EX; typedef enum _VCA_CHAN_ABILITY_TYPE_ { VCA_BEHAVIOR_BASE = 1, VCA_BEHAVIOR_ADVANCE = 2, VCA_BEHAVIOR_FULL = 3, VCA_PLATE = 4, VCA_ATM = 5, VCA_PDC = 6, VCA_ITS = 7, VCA_BEHAVIOR_PRISON = 8, VCA_FACE_SNAP = 9, VCA_FACE_SNAPRECOG = 10, VCA_FACE_RETRIEVAL = 11, VCA_FACE_RECOG = 12, VCA_BEHAVIOR_PRISON_PERIMETER = 13, VCA_TPS = 14, VCA_TFS = 15, VCA_BEHAVIOR_FACESNAP = 16, VCA_HEATMAP = 17, VCA_SMART_VEHICLE_DETECTION = 18, VCA_SMART_HVT_DETECTION = 19, VCA_SMART_EVENT = 20, VCA_VEHICLE_DETECTION = 21, VCA_SMART_ROAD_DETECTION = 22, VCA_SMART_FACE_DETECTION = 23, VCA_SMART_HEATMAP = 24, VCA_HUMAN_RECOGNITION = 25 , VCA_EDUCATION_STUDENT_DETECTION = 26, VCA_ROAD_DETECTION = 27, VCA_PERSON_DENSITY_DETECTION = 28, VCA_PERIMETER_CAPTURE = 29, VCA_SAFETY_HELMET_DETECTION = 30, VCA_HEEL_PDC = 31, VCA_12MPLIVE_VIEW = 32, VCA_TEACHER_BEHAVIOR_DETECTION = 33, VCA_MIXED_TARGET_DETECTION = 34, VCA_FACE_CONTRAST = 35, VCA_CITY_MANAGEMENT = 36, VCA_MIXED_TARGET_DETECTION_SMART = 37 }VCA_CHAN_ABILITY_TYPE; typedef enum _VCA_CHAN_MODE_TYPE_ { VCA_ATM_PANEL = 0, VCA_ATM_SURROUND = 1, VCA_ATM_FACE = 2, VCA_ATM_SAFETYCABIN = 3 }VCA_CHAN_MODE_TYPE; typedef enum _TFS_CHAN_MODE_TYPE_ { TFS_CITYROAD = 0, TFS_FREEWAY = 1 }TFS_CHAN_MODE_TYPE; typedef enum _BEHAVIOR_SCENE_MODE_TYPE_ { BEHAVIOR_SCENE_DEFAULT = 0, BEHAVIOR_SCENE_WALL = 1, BEHAVIOR_SCENE_INDOOR = 2 }BEHAVIOR_SCENE_MODE_TYPE; typedef enum _BEHAVIOR_PRISON_MODE_TYPE_ { BEHAVIOR_PRISON = 0, BEHAVIOR_HEARING = 1, BEHAVIOR_RECFIELD = 2 }BEHAVIOR_PRISON_MODE_TYPE,LPBEHAVIOR_PRISON_MODE_TYPE; typedef struct tagNET_VCA_CHAN_IN_PARAM { BYTE byVCAType; BYTE byMode; BYTE byRes[2]; }NET_VCA_CHAN_IN_PARAM, *LPNET_VCA_CHAN_IN_PARAM; typedef struct tagNET_VCA_BEHAVIOR_ABILITY { DWORD dwSize; DWORD dwAbilityType; BYTE byMaxRuleNum; BYTE byMaxTargetNum; BYTE bySupport; BYTE byRes[5]; DWORD dwAbilityTypeEx; }NET_VCA_BEHAVIOR_ABILITY, *LPNET_VCA_BEHAVIOR_ABILITY; typedef struct tagNET_DVR_SCENE_CHANGE_UPDATE_PARAM { DWORD dwSize; BYTE byIDCount; BYTE byRes1[3]; BYTE byStreamID[MAX_STREAM_ID_NUM][STREAM_ID_LEN]; BYTE byRes[256]; }NET_DVR_SCENE_CHANGE_UPDATE_PARAM, *LPNET_DVR_SCENE_CHANGE_UPDATE_PARAM; typedef struct tagNET_DVR_ITS_ABILITY { DWORD dwSize; DWORD dwAbilityType; BYTE byMaxRuleNum; BYTE byMaxTargetNum; BYTE byRes[10]; }NET_DVR_ITS_ABILITY, *LPNET_DVR_ITS_ABILITY; typedef struct tagNET_VCA_RECT { float fX; float fY; float fWidth; float fHeight; }NET_VCA_RECT, *LPNET_VCA_RECT; typedef enum _VCA_EVENT_TYPE_ { VCA_TRAVERSE_PLANE = 0x1, VCA_ENTER_AREA = 0x2, VCA_EXIT_AREA = 0x4, VCA_INTRUSION = 0x8, VCA_LOITER = 0x10, VCA_LEFT_TAKE = 0x20, VCA_PARKING = 0x40, VCA_RUN = 0x80, VCA_HIGH_DENSITY = 0x100, VCA_VIOLENT_MOTION = 0x200, VCA_REACH_HIGHT = 0x400, VCA_GET_UP = 0x800, VCA_LEFT = 0x1000, VCA_TAKE = 0x2000, VCA_LEAVE_POSITION = 0x4000, VCA_TRAIL = 0x8000, VCA_KEY_PERSON_GET_UP = 0x10000, VCA_STANDUP = 0x20000, VCA_FALL_DOWN = 0x80000, VCA_AUDIO_ABNORMAL = 0x100000, VCA_ADV_REACH_HEIGHT = 0x200000, VCA_TOILET_TARRY = 0x400000, VCA_YARD_TARRY = 0x800000, VCA_ADV_TRAVERSE_PLANE = 0x1000000, VCA_LECTURE = 0x2000000, VCA_ANSWER = 0x4000000, VCA_HUMAN_ENTER = 0x10000000, VCA_OVER_TIME = 0x20000000, VCA_STICK_UP = 0x40000000, VCA_INSTALL_SCANNER = 0x80000000 }VCA_EVENT_TYPE; typedef enum _VCA_RULE_EVENT_TYPE_EX_ { ENUM_VCA_EVENT_TRAVERSE_PLANE = 1, ENUM_VCA_EVENT_ENTER_AREA = 2, ENUM_VCA_EVENT_EXIT_AREA = 3, ENUM_VCA_EVENT_INTRUSION = 4, ENUM_VCA_EVENT_LOITER = 5, ENUM_VCA_EVENT_LEFT_TAKE = 6, ENUM_VCA_EVENT_PARKING = 7, ENUM_VCA_EVENT_RUN = 8, ENUM_VCA_EVENT_HIGH_DENSITY = 9, ENUM_VCA_EVENT_VIOLENT_MOTION = 10, ENUM_VCA_EVENT_REACH_HIGHT = 11, ENUM_VCA_EVENT_GET_UP = 12, ENUM_VCA_EVENT_LEFT = 13, ENUM_VCA_EVENT_TAKE = 14, ENUM_VCA_EVENT_LEAVE_POSITION = 15, ENUM_VCA_EVENT_TRAIL = 16, ENUM_VCA_EVENT_KEY_PERSON_GET_UP = 17, ENUM_VCA_EVENT_STANDUP = 18, ENUM_VCA_EVENT_FALL_DOWN = 20, ENUM_VCA_EVENT_AUDIO_ABNORMAL = 21, ENUM_VCA_EVENT_ADV_REACH_HEIGHT = 22, ENUM_VCA_EVENT_TOILET_TARRY = 23, ENUM_VCA_EVENT_YARD_TARRY = 24, ENUM_VCA_EVENT_ADV_TRAVERSE_PLANE = 25, ENUM_VCA_EVENT_LECTURE = 26, ENUM_VCA_EVENT_ANSWER = 27, ENUM_VCA_EVENT_HUMAN_ENTER = 29, ENUM_VCA_EVENT_OVER_TIME = 30, ENUM_VCA_EVENT_STICK_UP = 31, ENUM_VCA_EVENT_INSTALL_SCANNER = 32, ENUM_VCA_EVENT_PEOPLENUM_CHANGE = 35, ENUM_VCA_EVENT_SPACING_CHANGE = 36, ENUM_VCA_EVENT_COMBINED_RULE = 37, ENUM_VCA_EVENT_SIT_QUIETLY = 38, ENUM_VCA_EVENT_HIGH_DENSITY_STATUS= 39, ENUM_VCA_EVENT_RUNNING = 40, ENUM_VCA_EVENT_RETENTION = 41, ENUM_VCA_EVENT_BLACKBOARD_WRITE = 42 } VCA_RULE_EVENT_TYPE_EX; typedef enum _VCA_CROSS_DIRECTION_ { VCA_BOTH_DIRECTION, VCA_LEFT_GO_RIGHT, VCA_RIGHT_GO_LEFT }VCA_CROSS_DIRECTION; typedef struct tagNET_VCA_LINE { NET_VCA_POINT struStart; NET_VCA_POINT struEnd; }NET_VCA_LINE, *LPNET_VCA_LINE; typedef struct tagNET_VCA_POLYGON { DWORD dwPointNum; NET_VCA_POINT struPos[VCA_MAX_POLYGON_POINT_NUM]; }NET_VCA_POLYGON, *LPNET_VCA_POLYGON; typedef struct tagNET_VCA_TRAVERSE_PLANE { NET_VCA_LINE struPlaneBottom; VCA_CROSS_DIRECTION dwCrossDirection; BYTE bySensitivity; BYTE byPlaneHeight; BYTE byDetectionTarget; BYTE byPriority; BYTE byRes2[36]; }NET_VCA_TRAVERSE_PLANE, *LPNET_VCA_TRAVERSE_PLANE; typedef struct tagNET_VCA_SIT_QUIETLY { NET_VCA_POLYGON struRegion; DWORD dwDuration; BYTE byRes[4]; } NET_VCA_SIT_QUIETLY, *LPNET_VCA_SIT_QUIETLY; typedef struct tagNET_VCA_AREA { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byDetectionTarget; BYTE byPriority; BYTE byRes[5]; }NET_VCA_AREA, *LPNET_VCA_AREA; typedef struct tagNET_VCA_INTRUSION { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRate; BYTE byDetectionTarget; BYTE byPriority; BYTE byRes[2]; }NET_VCA_INTRUSION, *LPNET_VCA_INTRUSION; typedef struct tagNET_VCA_LOITER { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[1]; DWORD dwLoiterDistance; }NET_VCA_LOITER, *LPNET_VCA_LOITER; typedef struct tagNET_VCA_TAKE_LEFT { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_TAKE_LEFT, *LPNET_VCA_TAKE_LEFT; typedef struct tagNET_VCA_PARKING { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_PARKING, *LPNET_VCA_PARKING; typedef struct tagNET_VCA_RUN { NET_VCA_POLYGON struRegion; float fRunDistance; BYTE bySensitivity; BYTE byMode; BYTE byDetectionTarget; BYTE byRes; }NET_VCA_RUN, *LPNET_VCA_RUN; typedef struct tagNET_VCA_HIGH_DENSITY { NET_VCA_POLYGON struRegion; float fDensity; BYTE bySensitivity; BYTE byRes; WORD wDuration; }NET_VCA_HIGH_DENSITY, *LPNET_VCA_HIGH_DENSITY; typedef struct tagNET_VCA_VIOLENT_MOTION { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byMode; BYTE byRes[4]; }NET_VCA_VIOLENT_MOTION, *LPNET_VCA_VIOLENT_MOTION; typedef struct tagNET_VCA_REACH_HIGHT { NET_VCA_LINE struVcaLine; WORD wDuration; BYTE byRes[6]; }NET_VCA_REACH_HIGHT, *LPNET_VCA_REACH_HIGHT; typedef struct tagNET_VCA_GET_UP { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE byMode; BYTE bySensitivity; BYTE byRes[4]; }NET_VCA_GET_UP, * LPNET_VCA_GET_UP; typedef struct tagNET_VCA_LEFT { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_LEFT, *LPNET_VCA_LEFT; typedef struct tagNET_VCA_TAKE { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_TAKE, *LPNET_VCA_TAKE; typedef struct tagNET_VCA_OVER_TIME { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE byRes[6]; }NET_VCA_OVER_TIME, *LPNET_VCA_OVER_TIME; typedef struct tagNET_VCA_HUMAN_ENTER { DWORD dwRes[23]; }NET_VCA_HUMAN_ENTER, *LPNET_VCA_HUMAN_ENTER; typedef struct tagNET_VCA_STICK_UP { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_STICK_UP, *LPNET_VCA_STICK_UP; typedef struct tagNET_VCA_SCANNER { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_SCANNER, *LPNET_VCA_SCANNER; typedef struct tagNET_VCA_LEAVE_POSITION { NET_VCA_POLYGON struRegion; WORD wLeaveDelay; WORD wStaticDelay; BYTE byMode; BYTE byPersonType; BYTE byOnPosition; BYTE bySensitivity; }NET_VCA_LEAVE_POSITION, *LPNET_VCA_LEAVE_POSITION; typedef struct tagNET_VCA_TRAIL { NET_VCA_POLYGON struRegion; WORD wRes; BYTE bySensitivity; BYTE byRes[5]; }NET_VCA_TRAIL, *LPNET_VCA_TRAIL; typedef struct tagNET_VCA_FALL_DOWN { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byHeightThreshold; BYTE byRes[4]; }NET_VCA_FALL_DOWN, *LPNET_VCA_FALL_DOWN; typedef struct tagNET_VCA_STANDUP { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byHeightThreshold; WORD wDuration; BYTE byRes[4]; }NET_VCA_STANDUP, *LPNET_VCA_STANDUP; typedef struct tagNET_VCA_PEOPLENUM_CHANGE { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byPeopleNumThreshold; BYTE byDetectMode; BYTE byNoneStateEffective; WORD wDuration; BYTE byPeopleNum; BYTE byRes; }NET_VCA_PEOPLENUM_CHANGE, *LPNET_VCA_PEOPLENUM_CHANGE; typedef struct tagNET_VCA_SPACING_CHANGE { NET_VCA_POLYGON struRegion; float fSpacingThreshold; BYTE bySensitivity; BYTE byDetectMode; WORD wDuration; }NET_VCA_SPACING_CHANGE, *LPNET_VCA_SPACING_CHANGE; typedef struct tagNET_VCA_AUDIO_ABNORMAL { WORD wDecibel; BYTE bySensitivity; BYTE byAudioMode; BYTE byEnable; BYTE byThreshold; BYTE byRes[54]; }NET_VCA_AUDIO_ABNORMAL, *LPNET_VCA_AUDIO_ABNORMAL; typedef struct tagNET_DVR_AUDIO_STEEP_DROP { BYTE bySensitivity; BYTE byEnable; BYTE byRes[6]; }NET_DVR_AUDIO_STEEP_DROP, *LPNET_DVR_AUDIO_STEEP_DROP; typedef struct tagNET_DVR_AUDIO_EXCEPTION { DWORD dwSize; BYTE byEnableAudioInException; BYTE byRes1[3]; NET_VCA_AUDIO_ABNORMAL struAudioAbnormal; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD byRelRecordChan[MAX_CHANNUM_V30]; NET_DVR_AUDIO_STEEP_DROP struAudioSteepDrop; BYTE byRes2[24]; }NET_DVR_AUDIO_EXCEPTION, *LPNET_DVR_AUDIO_EXCEPTION; typedef struct tagNET_VCA_TOILET_TARRY { NET_VCA_POLYGON struRegion; WORD wDelay; BYTE byRes[6]; }NET_VCA_TOILET_TARRY, *LPNET_VCA_TOILET_TARRY; typedef struct tagNET_VCA_YARD_TARRY { NET_VCA_POLYGON struRegion; WORD wDelay; BYTE byRes[6]; }NET_VCA_YARD_TARRY, *LPNET_VCA_YARD_TARRY; typedef struct tagNET_VCA_ADV_REACH_HEIGHT { NET_VCA_POLYGON struRegion; DWORD dwCrossDirection; BYTE byRes[4]; }NET_VCA_ADV_REACH_HEIGHT, * LPNET_VCA_ADV_REACH_HEIGHT; typedef struct tagNET_VCA_ADV_TRAVERSE_PLANE { NET_VCA_POLYGON struRegion; DWORD dwCrossDirection; BYTE bySensitivity; BYTE byRes[3]; } NET_VCA_ADV_TRAVERSE_PLANE,*LPNET_VCA_ADV_TRAVERSE_PLANE; typedef struct tagNET_VCA_LECTURE { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE bySensitivity; BYTE byAlarmState; BYTE byTrackingMode ; BYTE byZoomMode; BYTE byZoomOver; BYTE byTrackStatus; }NET_VCA_LECTURE, *LPNET_VCA_LECTURE; typedef struct tagNET_VCA_ANSWER { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byAlarmState; BYTE byZoomOver; BYTE byAnswerStudent; BYTE byRes[4]; }NET_VCA_ANSWER, *LPNET_VCA_ANSWER; typedef struct tagNET_VCA_RELATE_RULE_PARAM { BYTE byRuleID; BYTE byRes; WORD wEventType; }NET_VCA_RELATE_RULE_PARAM,*LPNET_VCA_RELATE_RULE_PARAM; typedef struct tagNET_VCA_COMBINED_RULE_ { BYTE byRuleSequence; BYTE byRes[7]; DWORD dwMinInterval; DWORD dwMaxInterval; NET_VCA_RELATE_RULE_PARAM struRule1Raram; NET_VCA_RELATE_RULE_PARAM struRule2Raram; BYTE byRes1[36]; } NET_VCA_COMBINED_RULE, *LPNET_VCA_COMBINED_RULE; typedef struct tagNET_VCA_BLACKBOARD_WRITE { NET_VCA_POLYGON struRegion; BYTE byTeacherState; BYTE byWritingState; BYTE byWritingArea; BYTE byRes[5]; }NET_VCA_BLACKBOARD_WRITE, *LPNET_VCA_BLACKBOARD_WRITE; typedef struct tagNET_VCA_HIGH_DENSITY_STATUS { NET_VCA_POLYGON struRegion; float fDensity; BYTE bySensitivity; BYTE byRes[3]; }NET_VCA_HIGH_DENSITY_STATUS, *LPNET_VCA_HIGH_DENSITY_STATUS; typedef struct _NET_VCA_RUNNING_ { NET_VCA_POLYGON struRegion; DWORD dwSpeed; BYTE byRes[4]; }NET_VCA_RUNNING, *LPNET_VCA_RUNNING; typedef struct tagNET_VCA_RETENTION { NET_VCA_POLYGON struRegion; WORD wDuration; BYTE byRes[6]; }NET_VCA_RETENTION, *LPNET_VCA_RETENTION; typedef union tagNET_VCA_EVENT_UNION { DWORD uLen[23]; NET_VCA_TRAVERSE_PLANE struTraversePlane; NET_VCA_AREA struArea; NET_VCA_INTRUSION struIntrusion; NET_VCA_LOITER struLoiter; NET_VCA_TAKE_LEFT struTakeTeft; NET_VCA_PARKING struParking; NET_VCA_RUN struRun; NET_VCA_HIGH_DENSITY struHighDensity; NET_VCA_VIOLENT_MOTION struViolentMotion; NET_VCA_REACH_HIGHT struReachHight; NET_VCA_GET_UP struGetUp; NET_VCA_LEFT struLeft; NET_VCA_TAKE struTake; NET_VCA_HUMAN_ENTER struHumanEnter; NET_VCA_OVER_TIME struOvertime; NET_VCA_STICK_UP struStickUp; NET_VCA_SCANNER struScanner; NET_VCA_LEAVE_POSITION struLeavePos; NET_VCA_TRAIL struTrail; NET_VCA_FALL_DOWN struFallDown; NET_VCA_AUDIO_ABNORMAL struAudioAbnormal; NET_VCA_ADV_REACH_HEIGHT struReachHeight; NET_VCA_TOILET_TARRY struToiletTarry; NET_VCA_YARD_TARRY struYardTarry; NET_VCA_ADV_TRAVERSE_PLANE struAdvTraversePlane; NET_VCA_LECTURE struLecture; NET_VCA_ANSWER struAnswer; NET_VCA_STANDUP struStandUp; NET_VCA_PEOPLENUM_CHANGE struPeopleNumChange; NET_VCA_SPACING_CHANGE struSpacingChange; NET_VCA_COMBINED_RULE struCombinedRule; NET_VCA_SIT_QUIETLY struSitQuietly; NET_VCA_HIGH_DENSITY_STATUS struHighDensityStatus; NET_VCA_RUNNING struRunning; NET_VCA_RETENTION struRetention; NET_VCA_BLACKBOARD_WRITE struBlackboardWrite; }NET_VCA_EVENT_UNION, *LPNET_VCA_EVENT_UNION; typedef enum _VCA_SIZE_FILTER_MODE_ { IMAGE_PIX_MODE, REAL_WORLD_MODE, DEFAULT_MODE }SIZE_FILTER_MODE; typedef struct tagNET_VCA_SIZE_FILTER { BYTE byActive; BYTE byMode; BYTE byRes[2]; NET_VCA_RECT struMiniRect; NET_VCA_RECT struMaxRect; }NET_VCA_SIZE_FILTER, *LPNET_VCA_SIZE_FILTER; typedef struct tagNET_VCA_ONE_RULE { BYTE byActive; BYTE byRes[7]; BYTE byRuleName[NAME_LEN]; VCA_EVENT_TYPE dwEventType; NET_VCA_EVENT_UNION uEventParam; NET_VCA_SIZE_FILTER struSizeFilter; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; }NET_VCA_ONE_RULE, *LPNET_VCA_ONE_RULE; typedef struct tagNET_VCA_RULECFG { DWORD dwSize; BYTE byPicProType; BYTE byUpLastAlarm; BYTE byPicRecordEnable; BYTE byRes; NET_DVR_JPEGPARA struPictureParam; NET_VCA_ONE_RULE struRule[MAX_RULE_NUM]; }NET_VCA_RULECFG, *LPNET_VCA_RULECFG; typedef struct tagNET_VCA_DEV_INFO { NET_DVR_IPADDR struDevIP; WORD wPort; BYTE byChannel; BYTE byIvmsChannel; }NET_VCA_DEV_INFO, *LPNET_VCA_DEV_INFO; typedef struct tagNET_DVR_TARGET_LEFT_REGION_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; BYTE byTargetType; BYTE byLeftDirection; BYTE byTargetStatus; BYTE byRes[125]; }NET_DVR_TARGET_LEFT_REGION_ALARM,*LPNET_DVR_TARGET_LEFT_REGION_ALARM; typedef struct tagNET_VCA_FILTER_STRATEGY { BYTE byStrategy; BYTE byRes[11]; }NET_VCA_FILTER_STRATEGY,*LPNET_VCA_FILTER_STRATEGY; typedef struct tagNET_VCA_RULE_TRIGGER_PARAM { BYTE byTriggerMode; BYTE byTriggerPoint; BYTE byRes1[2]; float fTriggerArea; BYTE byRes2[4]; }NET_VCA_RULE_TRIGGER_PARAM,*LPNET_VCA_RULE_TRIGGER_PARAM; typedef struct tagNET_VCA_ONE_RULE_V41 { BYTE byActive; BYTE byRes1[4]; BYTE byEventTypeFlag; WORD wEventTypeEx; BYTE byRuleName[NAME_LEN]; VCA_EVENT_TYPE dwEventType; NET_VCA_EVENT_UNION uEventParam; NET_VCA_SIZE_FILTER struSizeFilter; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; WORD wAlarmDelay; BYTE byRes2[2]; NET_VCA_FILTER_STRATEGY struFilterStrategy; NET_VCA_RULE_TRIGGER_PARAM struTriggerParam; BYTE byRes[32]; }NET_VCA_ONE_RULE_V41, *LPNET_VCA_ONE_RULE_V41; typedef struct tagNET_VCA_RULECFG_V41 { DWORD dwSize; BYTE byPicProType; BYTE byUpLastAlarm; BYTE byPicRecordEnable; BYTE byRes1; NET_DVR_JPEGPARA struPictureParam; NET_VCA_ONE_RULE_V41 struRule[MAX_RULE_NUM]; WORD wRelSnapChan[MAX_REL_SNAPCHAN_NUM]; BYTE byRes[26]; }NET_VCA_RULECFG_V41, *LPNET_VCA_RULECFG_V41; typedef struct NET_VCA_ONE_RULE_V42_ { BYTE byActive; BYTE byEventPriority; BYTE byRes1[4]; WORD wEventType; BYTE byRuleName[NAME_LEN]; NET_VCA_EVENT_UNION uEventParam; NET_VCA_SIZE_FILTER struSizeFilter; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; WORD wAlarmDelay; BYTE byRes2[2]; NET_VCA_FILTER_STRATEGY struFilterStrategy; NET_VCA_RULE_TRIGGER_PARAM struTriggerParam; BYTE byRes[32]; }NET_VCA_ONE_RULE_V42, *LPNET_VCA_ONE_RULE_V42; typedef struct tagNET_DVR_PTZ_POSITION { BYTE byEnable; BYTE byRes1[3]; BYTE byPtzPositionName[NAME_LEN]; NET_DVR_PTZPOS struPtzPos; BYTE byRes2[40]; }NET_DVR_PTZ_POSITION, *LPNET_DVR_PTZ_POSITION; typedef struct tagNET_VCA_RULECFG_V42 { DWORD dwSize; BYTE byPicProType; BYTE byUpLastAlarm; BYTE byPicRecordEnable; BYTE byRes1; NET_DVR_JPEGPARA struPicParam; NET_VCA_ONE_RULE_V42 struRule[MAX_RULE_NUM_V42 ]; WORD wRelSnapChan[MAX_REL_SNAPCHAN_NUM]; BYTE byTrackEnable; BYTE byRes2; NET_DVR_PTZ_POSITION struPTZPosition; WORD wTrackDuration; WORD wIntervalTime; WORD wHeightLimit; BYTE byRes[58]; }NET_VCA_RULECFG_V42, *LPNET_VCA_RULECFG_V42; typedef struct tagNET_VCA_TARGET_INFO { DWORD dwID; NET_VCA_RECT struRect; BYTE byRes[4]; }NET_VCA_TARGET_INFO, *LPNET_VCA_TARGET_INFO; typedef struct tagNET_VCA_RULE_INFO { BYTE byRuleID; BYTE byRes; WORD wEventTypeEx; BYTE byRuleName[NAME_LEN]; VCA_EVENT_TYPE dwEventType; NET_VCA_EVENT_UNION uEventParam; }NET_VCA_RULE_INFO, *LPNET_VCA_RULE_INFO; typedef struct tagNET_VCA_RULE_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_RULE_INFO struRuleInfo; NET_VCA_TARGET_INFO struTargetInfo; NET_VCA_DEV_INFO struDevInfo; DWORD dwPicDataLen; BYTE byPicType; BYTE byRelAlarmPicNum; BYTE bySmart; BYTE byPicTransType; DWORD dwAlarmID; WORD wDevInfoIvmsChannelEx; BYTE byRelativeTimeFlag; BYTE byAppendInfoUploadEnabled; BYTE *pAppendInfo; BYTE *pImage; }NET_VCA_RULE_ALARM, *LPNET_VCA_RULE_ALARM; typedef struct tagNET_VCA_APPEND_INFO { DWORD dwSize; DWORD dwAppendPicLen; BYTE* pAppendPicBuff; BYTE byAppendPicType; BYTE byUID[64]; BYTE byRes[63]; }NET_VCA_APPEND_INFO, *LPNET_VCA_APPEND_INFO; typedef struct tagNET_VCA_DRAW_MODE { DWORD dwSize; BYTE byDspAddTarget; BYTE byDspAddRule; BYTE byDspPicAddTarget; BYTE byDspPicAddRule; BYTE byRes[4]; }NET_VCA_DRAW_MODE, *LPNET_VCA_DRAW_MODE; typedef enum tagOBJECT_TYPE_ENUM { ENUM_OBJECT_TYPE_COAT = 1 }OBJECT_TYPE_ENUM; typedef struct tagNET_DVR_OBJECT_COLOR_COND { DWORD dwChannel; DWORD dwObjType; BYTE byRes[64]; }NET_DVR_OBJECT_COLOR_COND,*LPNET_DVR_OBJECT_COLOR_COND; typedef struct tagNET_DVR_PIC { BYTE byPicType; BYTE byRes1[3]; DWORD dwPicWidth; DWORD dwPicHeight; DWORD dwPicDataLen; DWORD dwPicDataBuffLen; BYTE* byPicDataBuff; BYTE byRes2[40]; }NET_DVR_PIC,*LPNET_DVR_PIC; typedef union tagNET_DVR_OBJECT_COLOR_UNION { NET_DVR_COLOR struColor; NET_DVR_PIC struPicture; BYTE byRes[64]; }NET_DVR_OBJECT_COLOR_UNION,*LPNET_DVR_OBJECT_COLOR_UNION; typedef struct tagNET_DVR_OBJECT_COLOR { DWORD dwSize; BYTE byEnable; BYTE byColorMode; BYTE byRes1[2]; NET_DVR_OBJECT_COLOR_UNION uObjColor; BYTE byRes2[64]; }NET_DVR_OBJECT_COLOR, *LPNET_DVR_OBJECT_COLOR; typedef enum tagAREA_TYPE_ENUM { ENUM_OVERLAP_REGION = 1, ENUM_BED_LOCATION = 2 }AREA_TYPE_ENUM; typedef struct tagNET_DVR_AUXAREA { DWORD dwAreaType; BYTE byEnable; BYTE byRes1[3]; NET_VCA_POLYGON struPolygon; BYTE byRes2[16]; }NET_DVR_AUXAREA,*LPNET_DVR_AUXAREA; typedef struct tagNET_DVR_AUXAREA_LIST { DWORD dwSize; NET_DVR_AUXAREA struArea[MAX_AUXAREA_NUM]; BYTE byRes2[64]; }NET_DVR_AUXAREA_LIST,*LPNET_DVR_AUXAREA_LIST; typedef enum tagCHAN_WORKMODE_ENUM { ENUM_CHAN_WORKMODE_INDEPENDENT = 1, ENUM_CHAN_WORKMODE_MASTER = 2, ENUM_CHAN_WORKMODE_SLAVE = 3 }CHAN_WORKMODE_ENUM; typedef struct tagNET_DVR_CHANNEL_WORKMODE { DWORD dwSize; BYTE byWorkMode; BYTE byRes[63]; }NET_DVR_CHANNEL_WORKMODE,*LPNET_DVR_CHANNEL_WORKMODE; typedef struct tagNET_DVR_CHANNEL { BYTE byAddress[MAX_DOMAIN_NAME]; WORD wDVRPort; BYTE byRes1[2]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwChannel; BYTE byRes2[32]; }NET_DVR_CHANNEL,*LPNET_DVR_CHANNEL; typedef union tagNET_DVR_SLAVE_CHANNEL_UNION { BYTE byRes[152]; DWORD dwLocalChannel; NET_DVR_CHANNEL struRemoteChannel; }NET_DVR_SLAVE_CHANNEL_UNION,*LPNET_DVR_SLAVE_CHANNEL_UNION; typedef struct tagNET_DVR_SLAVE_CHANNEL_PARAM { BYTE byChanType; BYTE byRes1[3]; NET_DVR_SLAVE_CHANNEL_UNION uSlaveChannel; BYTE byRes2[64]; }NET_DVR_SLAVE_CHANNEL_PARAM,*LPNET_DVR_SLAVE_CHANNEL_PARAM; typedef struct tagNET_DVR_SLAVE_CHANNEL_CFG { DWORD dwSize; NET_DVR_SLAVE_CHANNEL_PARAM struChanParam[MAX_SLAVE_CHANNEL_NUM]; BYTE byRes[64]; }NET_DVR_SLAVE_CHANNEL_CFG,*LPNET_DVR_SLAVE_CHANNEL_CFG; typedef enum tagVQD_EVENT_ENUM { ENUM_VQD_EVENT_BLUR = 1, ENUM_VQD_EVENT_LUMA = 2, ENUM_VQD_EVENT_CHROMA = 3, ENUM_VQD_EVENT_SNOW = 4, ENUM_VQD_EVENT_STREAK = 5, ENUM_VQD_EVENT_FREEZE = 6, ENUM_VQD_EVENT_SIGNAL_LOSS = 7, ENUM_VQD_EVENT_PTZ = 8, ENUM_VQD_EVENT_SCNENE_CHANGE = 9, ENUM_VQD_EVENT_VIDEO_ABNORMAL = 10, ENUM_VQD_EVENT_VIDEO_BLOCK = 11, }VQD_EVENT_ENUM; typedef struct tagNET_DVR_VQD_EVENT_COND { DWORD dwChannel; DWORD dwEventType; BYTE byRes[64]; }NET_DVR_VQD_EVENT_COND,*LPNET_DVR_VQD_EVENT_COND; typedef struct tagNET_DVR_VQD_EVENT_PARAM { BYTE byThreshold; BYTE byTriggerMode; BYTE byUploadPic; BYTE byRes1; DWORD dwTimeInterval; BYTE byRes2[64]; }NET_DVR_VQD_EVENT_PARAM,*LPNET_DVR_VQD_EVENT_PARAM; typedef struct tagNET_DVR_VQD_EVENT_RULE { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_VQD_EVENT_PARAM struEventParam; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_IVMS_IP_CHANNEL]; BYTE byRes2[128]; }NET_DVR_VQD_EVENT_RULE,*LPNET_DVR_VQD_EVENT_RULE; typedef struct tagNET_DVR_BASELINE_SCENE { DWORD dwSize; BYTE byEnable; BYTE byRes[63]; }NET_DVR_BASELINE_SCENE,*LPNET_DVR_BASELINE_SCENE; typedef struct tagNET_DVR_CONTROL_BASELINE_SCENE_PARAM { DWORD dwSize; DWORD dwChannel; BYTE byCommand; BYTE byRes[127]; }NET_DVR_CONTROL_BASELINE_SCENE_PARAM,*LPNET_DVR_CONTROL_BASELINE_SCENE_PARAM; typedef struct tagNET_DVR_VQD_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; DWORD dwEventType; float fThreshold; DWORD dwPicDataLen; BYTE *pImage; BYTE byRes[128]; }NET_DVR_VQD_ALARM,*LPNET_DVR_VQD_ALARM; typedef struct tagNET_DVR_CB_POINT { NET_VCA_POINT struPoint; NET_DVR_PTZPOS struPtzPos; BYTE byRes[8]; }NET_DVR_CB_POINT, LPNET_DVR_CB_POINT; typedef struct tagNET_DVR_TRACK_CALIBRATION_PARAM { BYTE byPointNum; BYTE byRes[3]; NET_DVR_CB_POINT struCBPoint[MAX_CALIB_PT]; }NET_DVR_TRACK_CALIBRATION_PARAM, *LPNET_DVR_TRACK_CALIBRATION_PARAM; typedef struct tagNET_DVR_TRACK_CFG { DWORD dwSize; BYTE byEnable; BYTE byFollowChan; BYTE byDomeCalibrate; BYTE byRes; NET_DVR_TRACK_CALIBRATION_PARAM struCalParam; }NET_DVR_TRACK_CFG, *LPNET_DVR_TRACK_CFG ; typedef enum _TRACK_MODE_ { MANUAL_CTRL = 0, ALARM_TRACK }TRACK_MODE; typedef struct tagNET_DVR_MANUAL_CTRL_INFO { NET_VCA_POINT struCtrlPoint; BYTE byRes[8]; }NET_DVR_MANUAL_CTRL_INFO, *LPNET_DVR_MANUAL_CTRL_INFO ; typedef struct tagNET_DVR_TRACK_MODE { DWORD dwSize; BYTE byTrackMode; BYTE byRuleConfMode; BYTE byRes[2]; union { DWORD dwULen[4]; NET_DVR_MANUAL_CTRL_INFO struManualCtrl; }uModeParam; }NET_DVR_TRACK_MODE,*LPNET_DVR_TRACK_MODE; typedef struct tagNET_DVR_ALARM_JPEG { BYTE byPicProType; BYTE byRes[3]; NET_DVR_JPEGPARA struPicParam; }NET_DVR_ALARM_JPEG, *LPNET_DVR_ALARM_JPEG; typedef struct tagNET_DVR_PHY_RATIO { DWORD dwSize; DWORD dwPhysicsRatio; BYTE byRes[60]; }NET_DVR_PHY_RATIO, *LPNET_DVR_PHY_RATIO; typedef struct tagNET_DVR_SLAVECAMERA_COND { DWORD dwSize; DWORD dwChannel; BYTE byID; BYTE byRes1[3]; DWORD dwSceneID; BYTE byRes[56]; }NET_DVR_SLAVECAMERA_COND, *LPNET_DVR_SLAVECAMERA_COND; typedef struct tagNET_DVR_SLAVECAMERA_CFG { DWORD dwSize; BYTE byAddressType; WORD wPort; BYTE byLoginStatus; union { struct { BYTE szDomain[MAX_DOMAIN_NAME]; BYTE byRes1[80]; }struDomain; struct { NET_DVR_IPADDR struIp; } struAddrIP; }unionServer; BYTE szUserName[NAME_LEN]; BYTE szPassWord[PASSWD_LEN]; BYTE byRes1[128]; }NET_DVR_SLAVECAMERA_CFG, *LPNET_DVR_SLAVECAMERA_CFG; typedef struct tagNET_DVR_SLAVECAMERA_PARAM { BYTE byLinkStatus ; BYTE byRes[15]; }NET_DVR_SLAVECAMERA_PARAM, *LPNET_DVR_SLAVECAMERA_PARAM; typedef struct tagNET_DVR_SLAVECAMERA_STATUS { DWORD dwSize; NET_DVR_SLAVECAMERA_PARAM struSlaveCamera[MAX_SLAVECAMERA_NUM]; BYTE byRes[64]; }NET_DVR_SLAVECAMERA_STATUS, *LPNET_DVR_SLAVECAMERA_STATUS; typedef struct tagNET_PTZ_INFO { float fPan; float fTilt; float fZoom; DWORD dwFocus; BYTE byRes[4]; }NET_PTZ_INFO, *LPNET_PTZ_INFO; typedef struct tagNET_DVR_BV_CALIB_POSITION { DWORD dwSize; NET_PTZ_INFO struInitialPos; NET_PTZ_INFO struAdjustPos; BYTE byRes[300]; }NET_DVR_BV_CALIB_POSITION, *LPNET_DVR_BV_CALIB_POSITION; typedef struct tagNET_DVR_HUMAN_CALIB_CFG { DWORD dwSize; NET_VCA_POINT struLeftPos; NET_VCA_POINT struRightPos; BYTE byRes[300]; }NET_DVR_HUMAN_CALIB_CFG, *LPNET_DVR_HUMAN_CALIB_CFG; typedef struct tagNET_DVR_CALIB_PARAM { NET_PTZ_INFO struPtzInfo; NET_VCA_POINT struCalibCoordinates; int iHorValue; int iVerValue; BYTE byRes[8]; }NET_DVR_CALIB_PARAM, *LPNET_DVR_CALIB_PARAM; typedef struct tagNET_DVR_SLAVECAMERA_CALIB_CFG { DWORD dwSize; BYTE byCalibMode; BYTE byRes[3]; NET_DVR_CALIB_PARAM struCalibParam[MAX_CALIB_NUM]; BYTE byRes1[64]; }NET_DVR_SLAVECAMERA_CALIB_CFG, *LPNET_DVR_SLAVECAMERA_CALIB_CFG; typedef struct tagNET_DVR_TRACKING { DWORD dwSize; BYTE byEnable; BYTE byMode; WORD wTrackingTime; NET_VCA_POLYGON struRegion; BYTE byRes[64]; }NET_DVR_TRACKING,*LPNET_DVR_TRACKING; typedef struct tagNET_DVR_SLAVECAMERA_CALIB_V50 { DWORD dwSize; BYTE byCalibMode; BYTE byRes[3]; NET_DVR_CALIB_PARAM struCalibParam[MAX_CALIB_NUM_EX]; BYTE byRes1[64]; }NET_DVR_SLAVECAMERA_CALIB_V50, *LPNET_DVR_SLAVECAMERA_CALIB_V50; typedef struct tagNET_DVR_SLAVECAMERA_CALIB_V51 { DWORD dwSize; BYTE byCalibMode; BYTE byRes[3]; NET_DVR_CALIB_PARAM struCalibParam[MAX_CALIB_NUM_EX]; BYTE byRes1[512]; }NET_DVR_SLAVECAMERA_CALIB_V51, *LPNET_DVR_SLAVECAMERA_CALIB_V51; typedef struct tagNET_DVR_CAPTURE_PICTURE_RESULT { DWORD dwSize; DWORD dwReturnPicSize; BYTE byRes[256]; }NET_DVR_CAPTURE_PICTURE_RESULT, *LPNET_DVR_CAPTURE_PICTURE_RESULT; typedef struct tagNET_DVR_GOTOSCENE_COND { DWORD dwSize; DWORD dwChannel; DWORD dwSceneID; BYTE byRes[512]; }NET_DVR_GOTOSCENE_COND, *LPNET_DVR_GOTOSCENE_COND; typedef struct tagNET_DVR_TRACK_INITPOSTION { DWORD dwSize; DWORD dwChannel; BYTE byID; BYTE byRes[127]; }NET_DVR_TRACK_INITPOSTION, *LPNET_DVR_TRACK_INITPOSTION; typedef struct tagNET_DVR_MANUAL_TRACKRATIO { DWORD dwSize; BYTE byCoefficient; BYTE byRes[127]; }NET_DVR_MANUAL_TRACKRATIO, *LPNET_DVR_MANUAL_TRACKRATIO; typedef struct tagNET_IVMS_ONE_RULE_ { BYTE byActive; BYTE byRes1[7]; BYTE byRuleName[NAME_LEN]; VCA_EVENT_TYPE dwEventType; NET_VCA_EVENT_UNION uEventParam; NET_VCA_SIZE_FILTER struSizeFilter; BYTE byRes2[68]; }NET_IVMS_ONE_RULE, *LPNET_IVMS_ONE_RULE; typedef struct tagNET_IVMS_RULECFG { NET_IVMS_ONE_RULE struRule[MAX_RULE_NUM]; }NET_IVMS_RULECFG, *LPNET_IVMS_RULECFG; typedef struct tagNET_IVMS_BEHAVIORCFG { DWORD dwSize; BYTE byPicProType; BYTE byRes[3]; NET_DVR_JPEGPARA struPicParam; NET_IVMS_RULECFG struRuleCfg[MAX_DAYS][MAX_TIMESEGMENT]; } NET_IVMS_BEHAVIORCFG, *LPNET_IVMS_BEHAVIORCFG; typedef struct tagNET_IVMS_DEVSCHED { NET_DVR_SCHEDTIME struTime; NET_DVR_PU_STREAM_CFG struPUStream; }NET_IVMS_DEVSCHED, *LPNET_IVMS_DEVSCHED; typedef struct tagNET_IVMS_STREAMCFG { DWORD dwSize; NET_IVMS_DEVSCHED struDevSched[MAX_DAYS][MAX_TIMESEGMENT]; } NET_IVMS_STREAMCFG, *LPNET_IVMS_STREAMCFG; typedef struct tagNET_VCA_MASK_REGION { BYTE byEnable; BYTE byRes[3]; NET_VCA_POLYGON struPolygon; }NET_VCA_MASK_REGION, * LPNET_VCA_MASK_REGION; typedef struct tagNET_VCA_MASK_REGION_LIST { DWORD dwSize; BYTE byRes[4]; NET_VCA_MASK_REGION struMask[MAX_MASK_REGION_NUM]; }NET_VCA_MASK_REGION_LIST, *LPNET_VCA_MASK_REGION_LIST; typedef struct tagNET_VCA_ENTER_REGION { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_VCA_POLYGON struPolygon; BYTE byRes2[16]; }NET_VCA_ENTER_REGION, * LPNET_VCA_ENTER_REGION; typedef struct tagNET_IVMS_MASK_REGION_LIST { DWORD dwSize; NET_VCA_MASK_REGION_LIST struList[MAX_DAYS][ MAX_TIMESEGMENT]; }NET_IVMS_MASK_REGION_LIST, *LPNET_IVMS_MASK_REGION_LIST; typedef struct tagNET_IVMS_ENTER_REGION { DWORD dwSize; NET_VCA_ENTER_REGION struEnter[MAX_DAYS][ MAX_TIMESEGMENT]; }NET_IVMS_ENTER_REGION, *LPNET_IVMS_ENTER_REGION; typedef struct tagNET_IVMS_ALARM_JPEG { BYTE byPicProType; BYTE byRes[3]; NET_DVR_JPEGPARA struPicParam; }NET_IVMS_ALARM_JPEG, *LPNET_IVMS_ALARM_JPEG; typedef struct tagNET_IVMS_SEARCHCFG { DWORD dwSize; NET_DVR_MATRIX_DEC_REMOTE_PLAY struRemotePlay; NET_IVMS_ALARM_JPEG struAlarmJpeg; NET_IVMS_RULECFG struRuleCfg; }NET_IVMS_SEARCHCFG, *LPNET_IVMS_SEARCHCFG; typedef struct tagNET_DVR_TRACK_CALIBRATION_PARAM_V41 { BYTE byPointNum; BYTE byRes[3]; NET_DVR_CB_POINT struCBPoint[MAX_CALIB_PT]; NET_DVR_PTZPOS struHorizonPtzPos; BYTE byRes2[256]; }NET_DVR_TRACK_CALIBRATION_PARAM_V41, *LPNET_DVR_TRACK_CALIBRATION_PARAM_V41; typedef struct tagNET_DVR_TRACK_DEV_PARAM_ { DWORD dwSize; BYTE byEnable; BYTE byTransMode; BYTE byRes1[2]; NET_DVR_CHANNEL struTrackDevChan; NET_DVR_TRACK_CALIBRATION_PARAM_V41 struCalParam; BYTE byRes2[256]; }NET_DVR_TRACK_DEV_PARAM, *LPNET_DVR_TRACK_DEV_PARAM; typedef struct tagNET_DVR_IDENTIFICATION_PARAM { BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byRes1[4]; }NET_DVR_IDENTIFICATION_PARAM, *LPNET_DVR_IDENTIFICATION_PARAM; typedef union tagNET_DVR_MOUNT_PARAM_UNION { BYTE uLen[52]; NET_DVR_IDENTIFICATION_PARAM struIdentificationParam; } NET_DVR_MOUNT_PARAM_UNION, *LPNET_DVR_MOUNT_PARAM_UNION; typedef struct tagNET_DVR_NAS_MOUNT_PARAM { BYTE byMountType; BYTE byRes[3]; NET_DVR_MOUNT_PARAM_UNION uMountParam; }NET_DVR_NAS_MOUNT_PARAM, *LPNET_DVR_NAS_MOUNT_PARAM; typedef union tagNET_DVR_MOUNTMETHOD_PARAM_UNION { BYTE uLen[56]; NET_DVR_NAS_MOUNT_PARAM struNasMountParam; }NET_DVR_MOUNTMETHOD_PARAM_UNION, *LPNET_DVR_MOUNTMETHOD_PARAM_UNION; typedef struct tagNET_DVR_SINGLE_NET_DISK_INFO { BYTE byNetDiskType; BYTE byRes1[3]; NET_DVR_IPADDR struNetDiskAddr; BYTE sDirectory[PATHNAME_LEN]; WORD wPort; BYTE byRes2[2]; NET_DVR_MOUNTMETHOD_PARAM_UNION uMountMethodParam; BYTE byRes3[8]; }NET_DVR_SINGLE_NET_DISK_INFO, *LPNET_DVR_SINGLE_NET_DISK_INFO; #define MAX_NET_DISK 16 typedef struct tagNET_DVR_NET_DISKCFG { DWORD dwSize; NET_DVR_SINGLE_NET_DISK_INFO struNetDiskParam[MAX_NET_DISK]; }NET_DVR_NET_DISKCFG, *LPNET_DVR_NET_DISKCFG; typedef struct tagNET_DVR_SINGLE_NET_DISK_INFO_V40 { BYTE byNetDiskType; BYTE byRes1[3]; BYTE sDirectory[PATHNAME_LEN]; BYTE byDevAddr[MAX_DOMAIN_NAME]; WORD wPort; BYTE byRes2[2]; NET_DVR_MOUNTMETHOD_PARAM_UNION uMountMethodParam; BYTE byRes4[80]; }NET_DVR_SINGLE_NET_DISK_INFO_V40, *LPNET_DVR_SINGLE_NET_DISK_INFO_V40; typedef struct tagNET_DVR_NET_DISKCFG_V40 { DWORD dwSize; NET_DVR_SINGLE_NET_DISK_INFO_V40 struNetDiskParam[MAX_NET_DISK]; }NET_DVR_NET_DISKCFG_V40, *LPNET_DVR_NET_DISKCFG_V40; typedef enum _MAIN_EVENT_TYPE_ { EVENT_MOT_DET = 0, EVENT_ALARM_IN = 1, EVENT_VCA_BEHAVIOR = 2, EVENT_INQUEST = 3, EVENT_VCA_DETECTION = 4, EVENT_POS = 5, EVENT_TRIAL_CASE = 6, EVENT_ACS_CASE = 7, EVENT_IOT_CASE = 8, EVENT_STREAM_INFO = 100 }MAIN_EVENT_TYPE; #define INQUEST_START_INFO 0x1001 #define INQUEST_STOP_INFO 0x1002 #define INQUEST_TAG_INFO 0x1003 #define INQUEST_SEGMENT_INFO 0x1004 #define INQUEST_CASE_INFO 0x1005 typedef enum _VCA_DETECTION_MINOR_TYPE_ { EVENT_VCA_TRAVERSE_PLANE = 1, EVENT_FIELD_DETECTION, EVENT_AUDIO_INPUT_ALARM, EVENT_SOUND_INTENSITY_ALARM, EVENT_FACE_DETECTION, EVENT_VIRTUAL_FOCUS_ALARM, EVENT_SCENE_CHANGE_ALARM, EVENT_PIR_ALARM, EVENT_ENTER_REGION, EVENT_EXIT_REGION, EVENT_LOITERING, EVENT_GROUPDETECTION, EVENT_RAPIDMOVE, EVENT_PARK, EVENT_UNATTENDED_BAGGAGE, EVENT_ATTENDEDBAGGAGE, EVENT_VEHICLE_DETECTION, EVENT_ALL = 0xffffffff }VCA_DETECTION_MINOR_TYPE; typedef enum _BEHAVIOR_MINOR_TYPE_ { EVENT_TRAVERSE_PLANE = 0, EVENT_ENTER_AREA, EVENT_EXIT_AREA, EVENT_INTRUSION, EVENT_LOITER, EVENT_LEFT_TAKE, EVENT_PARKING, EVENT_RUN, EVENT_HIGH_DENSITY, EVENT_STICK_UP, EVENT_INSTALL_SCANNER, EVENT_OPERATE_OVER_TIME, EVENT_FACE_DETECT, EVENT_LEFT, EVENT_TAKE, EVENT_LEAVE_POSITION, EVENT_TRAIL_INFO = 16, EVENT_HUMAN_ENTER = 18, EVENT_FALL_DOWN_INFO = 19, EVENT_OBJECT_PASTE =20, EVENT_FACE_CAPTURE_INFO = 21, EVENT_MULTI_FACES_INFO = 22, EVENT_AUDIO_ABNORMAL_INFO = 23, EVENT_SUNGLASSES_FACE_INFO = 25, EVENT_CALLING_FACE_INFO = 26, EVENT_VIOLENT_MOTION = 27, EVENT_SAFETY_HELMET = 28, EVENT_PEOPLE_NUM_CHANGE = 29, EVENT_GET_UP = 30, EVENT_ADV_REACH_HEIGHT = 31, EVENT_STOOD_UP = 32, EVENT_PERSON_DENSITY = 33 }BEHAVIOR_MINOR_TYPE; typedef enum _TRIAL_CASE_MINOR_TYPE_ { TRIAL_START_INFO = 0x1001, TRIAL_STOP_INFO = 0x1002, TRIAL_TAG_INFO = 0x1003, TRIAL_SEGMENT_INFO = 0x1004, TRIAL_JUDGE_CASE_INFO=0x1005 }TRIAL_CASE_MINOR_TYPE; typedef enum _STREAM_INFO_MINOR_TYPE_ { EVENT_STREAM_ID = 0, EVENT_TIMING = 1, EVENT_MOTION_DETECT = 2, EVENT_ALARM = 3, EVENT_ALARM_OR_MOTION_DETECT = 4, EVENT_ALARM_AND_MOTION_DETECT = 5, EVENT_COMMAND_TRIGGER = 6, EVENT_MANNUAL = 7, EVENT_BACKUP_VOLUME = 8, STREAM_EVENT_SEMAPHORE, STREAM_EVENT_HIDE, STREAM_EVENT_INVERSE, STREAM_EVENT_VIDEO_LOST, STREAM_EVENT_WIRELESS_ALARM, STREAM_EVENT_PIR_ALARM, STREAM_EVENT_CALLHELP_ALARM, STREAM_EVENT_FACESNAP, STREAM_EVENT_FACE_DETECTION, STREAM_EVENT_ITS_PLATE, STREAM_EVENT_PDC, STREAM_EVENT_SCENECHANGE_DETECTION, STREAM_EVENT_DEFOCUS_DETECTION, STREAM_EVENT_AUDIOEXCEPTION, VCA_EVENT_TRAVERSE_PLANE, VCA_EVENT_INTRUSION, VCA_EVENT_ENTER_AREA, VCA_EVENT_EXIT_AREA, VCA_EVENT_LOITER, VCA_EVENT_HIGH_DENSITY, VCA_EVENT_RUN, VCA_EVENT_PARKING, VCA_EVENT_LEFT, VCA_EVENT_TAKE }STREAM_INFO_MINOR_TYPE; #define SEARCH_EVENT_INFO_LEN 300 #define CASE_NO_LEN 64 #define CASE_NAME_LEN 128 #define LITIGANT_LEN 32 #define CHIEF_JUDGE_LEN 32 #define SEARCH_CASE_NO_LEN 56 #define SEARCH_CASE_NAME_LEN 100 #define SEARCH_LITIGANT_LEN 32 #define SEARCH_CHIEF_JUDGE_LEN 32 #define CASE_NO_RET_LEN 52 #define CASE_NAME_RET_LEN 64 #define LITIGANT_RET_LEN 24 #define CHIEF_JUDGE_RET_LEN 24 #define NET_SDK_CASETYPE_LEN 32 typedef struct tagNET_DVR_SEARCH_EVENT_PARAM { WORD wMajorType; WORD wMinorType; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byLockType; BYTE byValue; BYTE byRes[130]; union { BYTE byLen[SEARCH_EVENT_INFO_LEN]; struct { BYTE byAlarmInNo[MAX_ALARMIN_V30]; BYTE byRes[SEARCH_EVENT_INFO_LEN - MAX_ALARMIN_V30]; }struAlarmParam; struct { WORD wAlarmInNo[128]; BYTE byRes[44]; }struAlarmParamByValue; struct { BYTE byMotDetChanNo[MAX_CHANNUM_V30]; BYTE byRes[SEARCH_EVENT_INFO_LEN - MAX_CHANNUM_V30]; }struMotionParam; struct { WORD wMotDetChanNo[64]; BYTE byRes[172]; }struMotionParamByValue; struct { BYTE byChanNo[MAX_CHANNUM_V30]; BYTE byRuleID; BYTE byRes1[43]; }struVcaParam; struct { WORD wChanNo[64]; BYTE byRuleID; BYTE byRes[171]; }struVcaParamByValue; struct { BYTE byRoomIndex; BYTE byRes1[3]; BYTE sInquestInfo[INQUEST_CASE_LEN]; BYTE byRes2[232]; } struInquestParam; struct { BYTE byChan [256]; }struVCADetectByBit; struct { DWORD dwChanNo[MAX_CHANNUM_V30-1]; BYTE byAll; BYTE byres[3]; }struVCADetectByValue; struct { NET_DVR_STREAM_INFO struIDInfo; DWORD dwCmdType; BYTE byBackupVolumeNum; BYTE byRes[223]; }struStreamIDParam; struct { BYTE byCaseNo[SEARCH_CASE_NO_LEN]; BYTE byCaseName[SEARCH_CASE_NAME_LEN]; BYTE byLitigant1[SEARCH_LITIGANT_LEN]; BYTE byLitigant2[SEARCH_LITIGANT_LEN]; BYTE byChiefJudge[SEARCH_CHIEF_JUDGE_LEN]; BYTE byCaseType; BYTE byRes[47]; }struTrialParam; }uSeniorParam; }NET_DVR_SEARCH_EVENT_PARAM, *LPNET_DVR_SEARCH_EVENT_PARAM; #define MAX_POS_KEYWORDS_NUM 3 #define MAX_POS_KEYWORD_LEN 128 #define SEARCH_EVENT_INFO_LEN_V40 800 typedef struct tagNET_DVR_SEARCH_EVENT_PARAM_V40 { WORD wMajorType; WORD wMinorType; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byLockType; BYTE byQuickSearch; BYTE byRes[130]; union { BYTE byLen[SEARCH_EVENT_INFO_LEN_V40]; struct { WORD wAlarmInNo[128]; BYTE byRes[544]; }struAlarmParam; struct { WORD wMotDetChanNo[MAX_CHANNUM_V30]; BYTE byRes[672]; }struMotionParam; struct { WORD wChanNo[MAX_CHANNUM_V30]; BYTE byRuleID; BYTE byRes[671]; }struVcaParam; struct { BYTE byRoomIndex; BYTE byRes[799]; } struInquestParam; struct { BYTE byAll; BYTE byRes1[3]; WORD wChanNo[MAX_CHANNUM_V30]; BYTE byRes[668]; }struVCADetect; struct { NET_DVR_STREAM_INFO struIDInfo; DWORD dwCmdType; BYTE byBackupVolumeNum; BYTE byRes1[3]; BYTE byArchiveLabel[64]; BYTE byRes[656]; }struStreamIDParam; struct { WORD wChannel[MAX_CHANNUM_V30]; BYTE byAllChan; BYTE byCaseSensitive; BYTE byCombinateMode; BYTE byRes1; char sKeyWord[MAX_POS_KEYWORDS_NUM][MAX_POS_KEYWORD_LEN]; BYTE byRes[284]; }struPosAlarm; struct { BYTE byCaseNo[SEARCH_CASE_NO_LEN]; BYTE byCaseName[SEARCH_CASE_NAME_LEN]; BYTE byLitigant1[SEARCH_LITIGANT_LEN]; BYTE byLitigant2[SEARCH_LITIGANT_LEN]; BYTE byChiefJudge[SEARCH_CHIEF_JUDGE_LEN]; BYTE byCaseType; BYTE byRes[47]; }struTrialParam; struct { DWORD dwMajor; DWORD dwMinor; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byName[NAME_LEN]; BYTE byMACAddr[MACADDR_LEN]; BYTE byRes[722]; }struACSAlarm; }uSeniorParam; }NET_DVR_SEARCH_EVENT_PARAM_V40, *LPNET_DVR_SEARCH_EVENT_PARAM_V40; typedef struct tagNET_DVR_SEARCH_EVENT_PARAM_V50 { WORD wMajorType; WORD wMinorType; NET_DVR_TIME_SEARCH_COND struStartTime; NET_DVR_TIME_SEARCH_COND struEndTime; BYTE byLockType; BYTE byQuickSearch; BYTE byRes[254]; union { BYTE byLen[SEARCH_EVENT_INFO_LEN_V40]; struct { WORD wAlarmInNo[128]; BYTE byRes[544]; }struAlarmParam; struct { WORD wMotDetChanNo[MAX_CHANNUM_V30]; BYTE byRes[672]; }struMotionParam; struct { WORD wChanNo[MAX_CHANNUM_V30]; BYTE byRuleID; BYTE byRes[671]; }struVcaParam; struct { BYTE byRoomIndex; BYTE byRes[799]; } struInquestParam; struct { BYTE byAll; BYTE byRes1[3]; WORD wChanNo[MAX_CHANNUM_V30]; BYTE byRes[668]; }struVCADetect; struct { NET_DVR_STREAM_INFO struIDInfo; DWORD dwCmdType; BYTE byBackupVolumeNum; BYTE byRes1[3]; BYTE byArchiveLabel[64]; BYTE byRes[656]; }struStreamIDParam; struct { WORD wChannel[MAX_CHANNUM_V30]; BYTE byAllChan; BYTE byCaseSensitive; BYTE byCombinateMode; BYTE byRes1; char sKeyWord[MAX_POS_KEYWORDS_NUM][MAX_POS_KEYWORD_LEN]; BYTE byRes[284]; }struPosAlarm; struct { BYTE byCaseNo[SEARCH_CASE_NO_LEN]; BYTE byCaseName[SEARCH_CASE_NAME_LEN]; BYTE byLitigant1[SEARCH_LITIGANT_LEN]; BYTE byLitigant2[SEARCH_LITIGANT_LEN]; BYTE byChiefJudge[SEARCH_CHIEF_JUDGE_LEN]; BYTE byCaseType; BYTE byRes[547]; }struTrialParam; struct { DWORD dwMajor; DWORD dwMinor; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byName[NAME_LEN]; BYTE byMACAddr[MACADDR_LEN]; BYTE byRes[722]; }struACSAlarm; struct { WORD wDeviceType; WORD wEventType; WORD wChannel[MAX_CHANNUM_V30]; BYTE byAllChan; BYTE byCaseSensitive; BYTE byCombinateMode; BYTE bySearchType; char sKeyWord[MAX_POS_KEYWORDS_NUM][MAX_POS_KEYWORD_LEN]; BYTE byRes[280]; }struIOTAlarm; }uSeniorParam; }NET_DVR_SEARCH_EVENT_PARAM_V50, *LPNET_DVR_SEARCH_EVENT_PARAM_V50; typedef struct tagNET_DVR_SEARCH_EVENT_RET { WORD wMajorType; WORD wMinorType; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byChan[MAX_CHANNUM_V30]; BYTE byChanEx[32]; BYTE byRes[4]; union { struct { DWORD dwAlarmInNo; BYTE byRes[SEARCH_EVENT_INFO_LEN]; }struAlarmRet; struct { DWORD dwMotDetNo; BYTE byRes[SEARCH_EVENT_INFO_LEN]; }struMotionRet; struct { DWORD dwChanNo; BYTE byRuleID; BYTE byRes1[3]; BYTE byRuleName[NAME_LEN]; NET_VCA_EVENT_UNION uEvent; }struVcaRet; struct { BYTE byRoomIndex; BYTE byDriveIndex; BYTE byRes1[6]; DWORD dwSegmentNo; WORD wSegmetSize; WORD wSegmentState; BYTE byRes2[288]; }struInquestRet; struct { DWORD dwRecordType; DWORD dwRecordLength; BYTE byLockFlag; BYTE byDrawFrameType; BYTE byRes1[2]; BYTE byFileName[NAME_LEN]; DWORD dwFileIndex; BYTE byRes[256]; }struStreamIDRet; struct { BYTE byRoomIndex; BYTE byDriveIndex; WORD wSegmetSize; DWORD dwSegmentNo; BYTE bySegmentState; BYTE byCaseType; BYTE byRes[2]; BYTE byCaseNo[CASE_NO_RET_LEN]; BYTE byCaseName[CASE_NAME_RET_LEN]; BYTE byLitigant1[LITIGANT_RET_LEN]; BYTE byLitigant2[LITIGANT_RET_LEN]; BYTE byChiefJudge[CHIEF_JUDGE_RET_LEN]; BYTE byRes1[104]; }struTrialRet; }uSeniorRet; }NET_DVR_SEARCH_EVENT_RET, *LPNET_DVR_SEARCH_EVENT_RET; #define NET_SDK_MAX_TAPE_INDEX_LEN 32 #define NET_SDK_MAX_FILE_LEN 256 typedef struct tagNET_DVR_SEARCH_EVENT_RET_V40 { WORD wMajorType; WORD wMinorType; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; WORD wChan[MAX_CHANNUM_V40]; BYTE byRes[36]; union { BYTE byLen[800]; struct { DWORD dwAlarmInNo; BYTE byRes[796]; }struAlarmRet; struct { DWORD dwMotDetNo; BYTE byRes[796]; }struMotionRet; struct { DWORD dwChanNo; BYTE byRuleID; BYTE byRes1[3]; BYTE byRuleName[NAME_LEN]; NET_VCA_EVENT_UNION uEvent; BYTE byRes[668]; }struVcaRet; struct { BYTE byRoomIndex; BYTE byDriveIndex; BYTE byRes1[6]; DWORD dwSegmentNo; WORD wSegmetSize; WORD wSegmentState; BYTE byRes2[784]; }struInquestRet; struct { DWORD dwRecordType; DWORD dwRecordLength; BYTE byLockFlag; BYTE byDrawFrameType; BYTE byPosition; BYTE byRes1; BYTE byFileName[NAME_LEN]; DWORD dwFileIndex; BYTE byTapeIndex[NET_SDK_MAX_TAPE_INDEX_LEN]; BYTE byFileNameEx[NET_SDK_MAX_FILE_LEN]; BYTE byRes[464]; }struStreamIDRet; struct { DWORD dwChanNo; BYTE byRes[796]; }struPosRet; struct { BYTE byRoomIndex; BYTE byDriveIndex; WORD wSegmetSize; DWORD dwSegmentNo; BYTE bySegmentState; BYTE byCaseType; BYTE byRes[2]; BYTE byCaseNo[CASE_NO_RET_LEN]; BYTE byCaseName[CASE_NAME_RET_LEN]; BYTE byLitigant1[LITIGANT_RET_LEN]; BYTE byLitigant2[LITIGANT_RET_LEN]; BYTE byChiefJudge[CHIEF_JUDGE_RET_LEN]; BYTE byRes1[600]; }struTrialRet; }uSeniorRet; }NET_DVR_SEARCH_EVENT_RET_V40, *LPNET_DVR_SEARCH_EVENT_RET_V40; typedef struct tagNET_DVR_SEARCH_EVENT_RET_V50 { WORD wMajorType; WORD wMinorType; NET_DVR_TIME_SEARCH struStartTime; NET_DVR_TIME_SEARCH struEndTime; NET_DVR_ADDRESS struAddr; WORD wChan[MAX_CHANNUM_V40]; BYTE byRes[256]; union { BYTE byLen[800]; struct { DWORD dwAlarmInNo; BYTE byRes[796]; }struAlarmRet; struct { DWORD dwMotDetNo; BYTE byRes[796]; }struMotionRet; struct { DWORD dwChanNo; BYTE byRuleID; BYTE byRes1[3]; BYTE byRuleName[NAME_LEN]; NET_VCA_EVENT_UNION uEvent; BYTE byRes[668]; }struVcaRet; struct { BYTE byRoomIndex; BYTE byDriveIndex; BYTE byRes1[6]; DWORD dwSegmentNo; WORD wSegmetSize; WORD wSegmentState; BYTE byRes2[784]; }struInquestRet; struct { DWORD dwRecordType; DWORD dwRecordLength; BYTE byLockFlag; BYTE byDrawFrameType; BYTE byPosition; BYTE byRes1; BYTE byFileName[NAME_LEN]; DWORD dwFileIndex; BYTE byTapeIndex[NET_SDK_MAX_TAPE_INDEX_LEN]; BYTE byFileNameEx[NET_SDK_MAX_FILE_LEN]; BYTE byRes[464]; }struStreamIDRet; struct { DWORD dwChanNo; BYTE byRes[796]; }struPosRet; struct { BYTE byRoomIndex; BYTE byDriveIndex; WORD wSegmetSize; DWORD dwSegmentNo; BYTE bySegmentState; BYTE byCaseType; BYTE byRes[2]; BYTE byCaseNo[CASE_NO_RET_LEN]; BYTE byCaseName[CASE_NAME_RET_LEN]; BYTE byLitigant1[LITIGANT_RET_LEN]; BYTE byLitigant2[LITIGANT_RET_LEN]; BYTE byChiefJudge[CHIEF_JUDGE_RET_LEN]; BYTE byRes1[600]; }struTrialRet; struct { DWORD dwChanNo; BYTE byRes[796]; }struIOTRet; }uSeniorRet; }NET_DVR_SEARCH_EVENT_RET_V50, *LPNET_DVR_SEARCH_EVENT_RET_V50; typedef enum tagCALIBRATE_TYPE { PDC_CALIBRATE = 0x01, BEHAVIOR_OUT_CALIBRATE = 0x02, BEHAVIOR_IN_CALIBRATE = 0x03, ITS_CALBIRETE = 0x04, BV_DIRECT_CALIBRATE = 0x05, PDC_LINE_CALIBRATE = 0x06 }CALIBRATE_TYPE; #define MAX_RECT_NUM 6 typedef struct tagNET_DVR_RECT_LIST { BYTE byRectNum; BYTE byRes1[11]; NET_VCA_RECT struVcaRect[MAX_RECT_NUM]; }NET_DVR_RECT_LIST, *LPNET_DVR_RECT_LIST; typedef struct tagNET_DVR_PDC_CALIBRATION { NET_DVR_RECT_LIST struRectList; BYTE byRes[120]; }NET_DVR_PDC_CALIBRATION, *LPNET_DVR_PDC_CALIBRATION; typedef enum tagLINE_MODE { HEIGHT_LINE, LENGTH_LINE }LINE_MODE; typedef struct tagNET_DVR_CAMERA_PARAM { BYTE byEnableHeight; BYTE byEnableAngle; BYTE byEnableHorizon; BYTE byRes[5]; float fCameraHeight; float fCameraAngle; float fHorizon; }NET_DVR_CAMERA_PARAM, *LPNET_DVR_CAMERA_PARAM; typedef struct tagNET_DVR_LINE_SEGMENT { BYTE byLineMode; BYTE byRes[3]; NET_VCA_POINT struStartPoint; NET_VCA_POINT struEndPoint; float fValue; }NET_DVR_LINE_SEGMENT, *LPNET_DVR_LINE_SEGMENT; #define MAX_LINE_SEG_NUM 8 typedef struct tagNET_DVR_BEHAVIOR_OUT_CALIBRATION { DWORD dwLineSegNum; NET_DVR_LINE_SEGMENT struLineSegment[MAX_LINE_SEG_NUM]; NET_DVR_CAMERA_PARAM struCameraParam; BYTE byRes[20]; }NET_DVR_BEHAVIOR_OUT_CALIBRATION, *LPNET_DVR_BEHAVIOR_OUT_CALIBRATION; typedef struct tagNET_DVR_IN_CAL_SAMPLE { NET_VCA_RECT struVcaRect; NET_DVR_LINE_SEGMENT struLineSegment; }NET_DVR_IN_CAL_SAMPLE, *LPNET_DVR_IN_CAL_SAMPLE; #define MAX_SAMPLE_NUM 5 #define MAX_SAMPLE_NUM_EX 7 typedef struct tagNET_DVR_BEHAVIOR_IN_CALIBRATION { DWORD dwCalSampleNum; NET_DVR_IN_CAL_SAMPLE struCalSample[MAX_SAMPLE_NUM]; NET_DVR_CAMERA_PARAM struCameraParam; BYTE byRes[16]; }NET_DVR_BEHAVIOR_IN_CALIBRATION, *LPNET_DVR_BEHAVIOR_IN_CALIBRATION; #define CALIB_PT_NUM 4 typedef struct tagNET_DVR_ITS_CALIBRATION { DWORD dwPointNum; NET_VCA_POINT struPoint[CALIB_PT_NUM]; float fWidth; float fHeight; BYTE byRes1[100]; }NET_DVR_ITS_CALIBRATION, *LPNET_DVR_ITS_CALIBRATION; typedef struct tagNET_DVR_BV_DIRECT_CALIBRATION { DWORD dwCameraHeight; float fPitchAngle; float fInclineAngle; BYTE byRes1[228]; }NET_DVR_BV_DIRECT_CALIBRATION,*LPNET_DVR_BV_DIRECT_CALIBRATION; typedef struct tagNET_DVR_PDC_LINE_CALIBRATION { NET_VCA_LINE struCalibrationLine; BYTE byRes[224]; } NET_DVR_PDC_LINE_CALIBRATION, *LPNET_DVR_PDC_LINE_CALIBRATION; typedef union tagNET_DVR_CALIBRATION_PRARM_UNION { BYTE byRes[240]; NET_DVR_PDC_CALIBRATION struPDCCalibration; NET_DVR_BEHAVIOR_OUT_CALIBRATION struBehaviorOutCalibration; NET_DVR_BEHAVIOR_IN_CALIBRATION struBehaviorInCalibration; NET_DVR_ITS_CALIBRATION struITSCalibration; NET_DVR_BV_DIRECT_CALIBRATION struBvDirectCalibration; NET_DVR_PDC_LINE_CALIBRATION struPDCLineCalibration; }NET_DVR_CALIBRATION_PRARM_UNION, *LPNET_DVR_CALIBRATION_PRARM_UNION; typedef struct tagNET_DVR_CALIBRATION_CFG { DWORD dwSize; BYTE byEnable; BYTE byCalibrationType; BYTE byRes1[2]; NET_DVR_CALIBRATION_PRARM_UNION uCalibrateParam; BYTE byRes2[12]; }NET_DVR_CALIBRATION_CFG, *LPNET_DVR_CALIBRATION_CFG; typedef struct tagNET_DVR_PDC_ENTER_DIRECTION { NET_VCA_POINT struStartPoint; NET_VCA_POINT struEndPoint; }NET_DVR_PDC_ENTER_DIRECTION, *LPNET_DVR_PDC_ENTER_DIRECTION; typedef struct tagNET_DVR_PDC_RULE_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[23]; NET_VCA_POLYGON struPolygon; NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; } NET_DVR_PDC_RULE_CFG, *LPNET_DVR_PDC_RULE_CFG; typedef struct tagNET_DVR_PDC_RULE_CFG_V41 { DWORD dwSize; BYTE byEnable; BYTE byRes1[23]; NET_VCA_POLYGON struPolygon; NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_TIME_EX struDayStartTime; NET_DVR_TIME_EX struNightStartTime; BYTE byRes[100]; }NET_DVR_PDC_RULE_CFG_V41, *LPNET_DVR_PDC_RULE_CFG_V41; typedef struct tagNET_DVR_PDC_RULE_COND { DWORD dwSize; DWORD dwChannel; DWORD dwID; BYTE byRes[60]; }NET_DVR_PDC_RULE_COND, *LPNET_DVR_PDC_RULE_COND; typedef struct tagNET_VCA_POLYLINE { NET_VCA_POINT struPoint[4]; }NET_VCA_POLYLINE, *LPNET_VCA_POLYLINE; typedef struct tagNET_DVR_PDC_RULE_CFG_V42 { DWORD dwSize; BYTE byEnable; BYTE byOSDEnable; BYTE byCurDetectType; BYTE byInterferenceSuppression; NET_VCA_POINT struOSDPoint; BYTE byDataUploadCycle; BYTE bySECUploadEnable; BYTE byEmailDayReport; BYTE byEmailWeekReport; BYTE byEmailMonthReport; BYTE byEmailYearReport; BYTE byRes2[6]; NET_VCA_POLYGON struPolygon; NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_TIME_EX struDayStartTime; NET_DVR_TIME_EX struNightStartTime; NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; BYTE byDetecteSensitivity; BYTE byGenerateSpeedSpace; BYTE byGenerateSpeedTime; BYTE byCountSpeed; BYTE byDetecteType; BYTE byTargetSizeCorrect; BYTE byStreamOverlayRuleInfos; BYTE byRes3; NET_VCA_LINE struLine; BYTE byHeightFilterEnable; BYTE byDetectThreshold; BYTE byAidedTrackEnabled; BYTE byRes4; float fHeightFilter; BYTE byCalibrateType; BYTE byCountingType; BYTE bySignalType; BYTE byRS485TransmissionEnabled; float fTiltAngle; float fHeelAngle; float fHeight; NET_VCA_POLYGON struCountPolygon; NET_VCA_POLYGON struAutoCalibPolygon; NET_DVR_TIME_EX struDailyResetTime; NET_VCA_POLYLINE struPolyLine; BYTE byRes[4]; }NET_DVR_PDC_RULE_CFG_V42, *LPNET_DVR_PDC_RULE_CFG_V42; typedef struct tagNET_DVR_TRIAL_VERSION_CFG { DWORD dwSize; WORD wReserveTime; BYTE byRes[62]; }NET_DVR_TRIAL_VERSION_CFG, *LPNET_DVR_TRIAL_VERSION_CFG; typedef struct tagNET_DVR_SYN_CHANNEL_NAME_PARAM { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_SYN_CHANNEL_NAME_PARAM, *LPNET_DVR_SYN_CHANNEL_NAME_PARAM; typedef struct tagNET_DVR_RESET_COUNTER_CFG { DWORD dwSize; BYTE byEnable; BYTE byMode; BYTE byRes1[2]; NET_DVR_TIME_EX struTime[MAX_DAYS]; BYTE byRes[64]; }NET_DVR_RESET_COUNTER_CFG, *LPNET_DVR_RESET_COUNTER_CFG; typedef struct tagNET_DVR_VCA_CTRLINFO_COND { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE byRes[64]; }NET_DVR_VCA_CTRLINFO_COND, *LPNET_DVR_VCA_CTRLINFO_COND; #define NET_SDK_MAX_RELATED_CHAN_NUM 4 typedef struct tagNET_DVR_VCA_CTRLINFO_CFG { DWORD dwSize; BYTE byVCAEnable; BYTE byVCAType; BYTE byStreamWithVCA; BYTE byMode; BYTE byControlType; BYTE byRes1[3]; WORD wRelatedChannel[NET_SDK_MAX_RELATED_CHAN_NUM]; BYTE byRes[72]; }NET_DVR_VCA_CTRLINFO_CFG, *LPNET_DVR_VCA_CTRLINFO_CFG; typedef enum tagPDC_PARAM_KEY { HUMAN_GENERATE_RATE = 50, DETECT_SENSITIVE = 51, }PDC_PARAM_KEY; typedef struct tagNET_DVR_PDC_TARGET_INFO { DWORD dwTargetID; NET_VCA_RECT struTargetRect; BYTE byRes1[8]; }NET_DVR_PDC_TARGET_INFO, *LPNET_DVR_PDC_TARGET_INFO; typedef struct tagNET_DVR_PDC_TARGET_IN_FRAME { BYTE byTargetNum; BYTE byRes1[3]; NET_DVR_PDC_TARGET_INFO struTargetInfo[MAX_TARGET_NUM]; BYTE byRes2[8]; }NET_DVR_PDC_TARGET_IN_FRAME, *LPNET_DVR_PDC_TARGET_IN_FRAME; typedef struct tagNET_DVR_PDC_ALRAM_INFO { DWORD dwSize; BYTE byMode; BYTE byChannel; BYTE bySmart; BYTE byRes1; NET_VCA_DEV_INFO struDevInfo; union { struct { DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[89]; }struStatFrame; struct { NET_DVR_TIME tmStart; NET_DVR_TIME tmEnd; BYTE byTimeDifferenceFlag; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes[87]; }struStatTime; }uStatModeParam; DWORD dwLeaveNum; DWORD dwEnterNum; BYTE byBrokenNetHttp; BYTE byRes3; WORD wDevInfoIvmsChannelEx; DWORD dwPassingNum; BYTE byRes2[32]; }NET_DVR_PDC_ALRAM_INFO, *LPNET_DVR_PDC_ALRAM_INFO; typedef struct tagNET_DVR_PDC_QUERY { NET_DVR_TIME tmStart; NET_DVR_TIME tmEnd; DWORD dwLeaveNum; DWORD dwEnterNum; BYTE byRes1[256]; }NET_DVR_PDC_QUERY, *LPNET_DVR_PDC_QUERY; typedef struct tagNET_DVR_POSITION_RULE_CFG { DWORD dwSize; NET_DVR_PTZ_POSITION struPtzPosition; NET_VCA_RULECFG struVcaRuleCfg; BYTE byRes2[80]; }NET_DVR_POSITION_RULE_CFG, *LPNET_DVR_POSITION_RULE_CFG; typedef struct tagNET_DVR_POSITION_RULE_CFG_V41 { DWORD dwSize; NET_DVR_PTZ_POSITION struPtzPosition; NET_VCA_RULECFG_V41 struVcaRuleCfg; BYTE byTrackEnable; BYTE byRes1; WORD wTrackDuration; BYTE byRes2[76]; }NET_DVR_POSITION_RULE_CFG_V41, *LPNET_DVR_POSITION_RULE_CFG_V41; typedef struct tagNET_DVR_LIMIT_ANGLE { BYTE byEnable; BYTE byRes1[3]; NET_DVR_PTZPOS struUp; NET_DVR_PTZPOS struDown; NET_DVR_PTZPOS struLeft; NET_DVR_PTZPOS struRight; BYTE byRes2[20]; }NET_DVR_LIMIT_ANGLE, *LPNET_DVR_LIMIT_ANGLE; typedef struct tagNET_DVR_POSITION_INDEX { BYTE byIndex; BYTE byRes1; WORD wDwell; BYTE byRes2[4]; }NET_DVR_POSITION_INDEX, *LPNET_DVR_POSITION_INDEX; #define MAX_POSITION_NUM 10 typedef struct tagNET_DVR_POSITION_TRACK_CFG { DWORD dwSize; BYTE byNum; BYTE byRes1[3]; NET_DVR_POSITION_INDEX struPositionIndex[MAX_POSITION_NUM]; BYTE byRes2[8]; }NET_DVR_POSITION_TRACK_CFG, *LPNET_DVR_POSITION_TRACK_CFG; typedef struct tagNET_DVR_PATROL_SCENE_INFO { WORD wDwell; BYTE byPositionID; BYTE byRes[5]; }NET_DVR_PATROL_SCENE_INFO, *LPNET_DVR_PATROL_SCENE_INFO; typedef struct tagNET_DVR_PATROL_TRACKCFG { DWORD dwSize; NET_DVR_PATROL_SCENE_INFO struPatrolSceneInfo[10]; BYTE byRes[16]; }NET_DVR_PATROL_TRACKCFG, *LPNET_DVR_PATROL_TRACKCFG; typedef struct tagNET_DVR_TRACK_PARAMCFG { DWORD dwSize; WORD wAlarmDelayTime; WORD wTrackHoldTime; BYTE byTrackMode; BYTE byPreDirection; BYTE byTrackSmooth; BYTE byZoomAdjust; BYTE byMaxTrackZoom; BYTE byStopTrackWhenFindFace; BYTE byStopTrackThreshold; BYTE byRes[9]; }NET_DVR_TRACK_PARAMCFG, *LPNET_DVR_TRACK_PARAMCFG; typedef struct tagNET_DVR_DOME_MOVEMENT_PARAM { WORD wMaxZoom; BYTE byRes[42]; }NET_DVR_DOME_MOVEMENT_PARAM, *LPNET_DVR_DOME_MOVEMENT_PARAM; #define MAX_REGION_NUM 8 #define MAX_TPS_RULE 8 #define MAX_AID_RULE 8 #define MAX_LANE_NUM 8 typedef enum tagTRAFFIC_AID_TYPE { CONGESTION = 0x01, PARKING = 0x02, INVERSE = 0x04, PEDESTRIAN = 0x08, DEBRIS = 0x10, SMOKE = 0x20, OVERLINE = 0x40, VEHICLE_CONTROL_LIST = 0x80, SPEED = 0x100, LANECHANGE = 0x200, TURNAROUND = 0x400, VEHICLE_OCCUPANCY_NONVEHICLE = 0x800, GASSER = 0x1000, ROADBLOCK = 0x2000, CONSTRUCTION = 0x4000, TRAFFIC_ACCIDENT = 0x8000, PARALLEL_PARKING = 0x10000, FOG_DETECTION = 0x20000, OCCUPY_EMERGENCY_LANE = 0X40000 }TRAFFIC_AID_TYPE; typedef enum tagTRAFFIC_SCENE_MODE { FREEWAY = 0, TUNNEL, BRIDGE }TRAFFIC_SCENE_MODE; typedef enum tagITS_ABILITY_TYPE { ITS_CONGESTION_ABILITY = 0x01, ITS_PARKING_ABILITY = 0x02, ITS_INVERSE_ABILITY = 0x04, ITS_PEDESTRIAN_ABILITY = 0x08, ITS_DEBRIS_ABILITY = 0x10, ITS_SMOKE_ABILITY = 0x20, ITS_OVERLINE_ABILITY = 0x40, ITS_VEHICLE_CONTROL_LIST_ABILITY = 0x80, ITS_SPEED_ABILITY = 0x100, ITS_LANECHANGE_ABILITY = 0x200, ITS_TURNAROUND_ABILITY = 0x400, ITS_LANE_VOLUME_ABILITY = 0x010000, ITS_LANE_VELOCITY_ABILITY = 0x020000, ITS_TIME_HEADWAY_ABILITY = 0x040000, ITS_SPACE_HEADWAY_ABILITY = 0x080000, ITS_TIME_OCCUPANCY_RATIO_ABILITY = 0x100000, ITS_SPACE_OCCUPANCY_RATIO_ABILITY = 0x200000, ITS_LANE_QUEUE_ABILITY = 0x400000, ITS_VEHICLE_TYPE_ABILITY = 0x800000, ITS_TRAFFIC_STATE_ABILITY = 0x1000000 }ITS_ABILITY_TYPE; typedef enum tagITS_TPS_TYPE { LANE_VOLUME = 0x01, LANE_VELOCITY = 0x02, TIME_HEADWAY = 0x04, SPACE_HEADWAY = 0x08, TIME_OCCUPANCY_RATIO = 0x10, SPACE_OCCUPANCY_RATIO = 0x20, QUEUE = 0x40, VEHICLE_TYPE = 0x80, TRAFFIC_STATE = 0x100 }ITS_TPS_TYPE; typedef struct tagNET_DVR_REGION_LIST { DWORD dwSize; BYTE byNum; BYTE byRes1[3]; NET_VCA_POLYGON struPolygon[MAX_REGION_NUM]; BYTE byRes2[20]; }NET_DVR_REGION_LIST,*LPNET_DVR_REGION_LIST; typedef struct tagNET_DVR_DIRECTION { NET_VCA_POINT struStartPoint; NET_VCA_POINT struEndPoint; }NET_DVR_DIRECTION, *LPNET_DVR_DIRECTION; typedef struct tagNET_DVR_ONE_LANE { BYTE byEnable; BYTE byRes1[11]; BYTE byLaneName[NAME_LEN]; NET_DVR_DIRECTION struFlowDirection; NET_VCA_POLYGON struPolygon; }NET_DVR_ONE_LANE, *LPNET_DVR_ONE_LANE; typedef struct tagNET_DVR_LANE_CFG { DWORD dwSize; NET_DVR_ONE_LANE struLane[MAX_LANE_NUM]; BYTE byRes1[40]; }NET_DVR_LANE_CFG, *LPNET_DVR_LANE_CFG; typedef struct tagNET_DVR_AID_PARAM { WORD wParkingDuration; WORD wPedestrianDuration; WORD wDebrisDuration; WORD wCongestionLength; WORD wCongestionDuration; WORD wInverseDuration; WORD wInverseDistance; WORD wInverseAngleTolerance; WORD wIllegalParkingTime; WORD wIllegalParkingPicNum; BYTE byMergePic; BYTE byRes1[23]; }NET_DVR_AID_PARAM, *LPNET_DVR_AID_PARAM; typedef struct tagNET_DVR_ONE_AID_RULE { BYTE byEnable; BYTE byRes1[3]; BYTE byRuleName[NAME_LEN]; DWORD dwEventType; NET_VCA_SIZE_FILTER struSizeFilter; NET_VCA_POLYGON struPolygon; NET_DVR_AID_PARAM struAIDParam; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes2[20]; }NET_DVR_ONE_AID_RULE, *LPNET_DVR_ONE_AID_RULE; typedef struct tagNET_DVR_AID_RULECFG { DWORD dwSize; BYTE byPicProType; BYTE byRes1[3]; NET_DVR_JPEGPARA struPictureParam; NET_DVR_ONE_AID_RULE struOneAIDRule[MAX_AID_RULE]; BYTE byRes2[32]; }NET_DVR_AID_RULECFG, *LPNET_DVR_AID_RULECFG; typedef struct tagNET_DVR_ONE_AID_RULE_V41 { BYTE byEnable; BYTE byLaneNo; BYTE byRes1[2]; BYTE byRuleName[NAME_LEN]; DWORD dwEventType; NET_VCA_SIZE_FILTER struSizeFilter; NET_VCA_POLYGON struPolygon; NET_DVR_AID_PARAM struAIDParam; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_IVMS_IP_CHANNEL]; BYTE byRes2[60]; }NET_DVR_ONE_AID_RULE_V41, *LPNET_DVR_ONE_AID_RULE_V41; typedef struct tagNET_DVR_AID_RULECFG_V41 { DWORD dwSize; BYTE byPicProType; BYTE byRes1[3]; NET_DVR_JPEGPARA struPictureParam; NET_DVR_ONE_AID_RULE_V41 struAIDRule[MAX_AID_RULE]; BYTE byRes2[128]; } NET_DVR_AID_RULECFG_V41, *LPNET_DVR_AID_RULECFG_V41; typedef struct tagNET_DVR_ONE_TPS_RULE { BYTE byEnable; BYTE byLaneID; BYTE byRes1[2]; DWORD dwCalcType; NET_VCA_SIZE_FILTER struSizeFilter; NET_VCA_POLYGON struVitrualLoop; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRes2[20]; }NET_DVR_ONE_TPS_RULE, *LPNET_DVR_ONE_TPS_RULE; typedef struct tagNET_DVR_TPS_RULECFG { DWORD dwSize; NET_DVR_ONE_TPS_RULE struOneTpsRule[MAX_TPS_RULE]; BYTE byRes2[40]; }NET_DVR_TPS_RULECFG, *LPNET_DVR_TPS_RULECFG; typedef struct tagNET_DVR_ONE_TPS_RULE_V41 { BYTE byEnable; BYTE byLaneID; BYTE byRes1[2]; DWORD dwCalcType; NET_VCA_SIZE_FILTER struSizeFilter; NET_VCA_POLYGON struVitrualLoop; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRes2[60]; }NET_DVR_ONE_TPS_RULE_V41, *LPNET_DVR_ONE_TPS_RULE_V41; typedef struct tagNET_DVR_TPS_RULECFG_V41 { DWORD dwSize; NET_DVR_ONE_TPS_RULE_V41 struOneTpsRule[MAX_TPS_RULE]; BYTE byRes[128]; }NET_DVR_TPS_RULECFG_V41, *LPNET_DVR_TPS_RULECFG_V41; typedef struct tagNET_DVR_AID_INFO { BYTE byRuleID; BYTE byRes1[3]; BYTE byRuleName[NAME_LEN]; DWORD dwAIDType; NET_DVR_DIRECTION struDirect; BYTE bySpeedLimit; BYTE byCurrentSpeed; BYTE byVehicleEnterState; BYTE byState; BYTE byParkingID[8]; BYTE byRes2[28]; }NET_DVR_AID_INFO, *LPNET_DVR_AID_INFO; typedef struct tagNET_DVR_AID_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_AID_INFO struAIDInfo; DWORD dwPicDataLen; BYTE *pImage; BYTE byRes[40]; }NET_DVR_AID_ALARM, *LPNET_DVR_AID_ALARM; typedef struct tagNET_DVR_LANE_QUEUE { NET_VCA_POINT struHead; NET_VCA_POINT struTail; DWORD dwLength; }NET_DVR_LANE_QUEUE, *LPNET_DVR_LANE_QUEUE; typedef enum tagTRAFFIC_DATA_VARY_TYPE { NO_VARY, VEHICLE_ENTER, VEHICLE_LEAVE, UEUE_VARY }TRAFFIC_DATA_VARY_TYPE; typedef struct tagNET_DVR_LANE_PARAM { BYTE byRuleName[NAME_LEN]; BYTE byRuleID; BYTE byVaryType; BYTE byLaneType; BYTE byRes1; DWORD dwLaneVolume; DWORD dwLaneVelocity; DWORD dwTimeHeadway; DWORD dwSpaceHeadway; float fSpaceOccupyRation; NET_DVR_LANE_QUEUE struLaneQueue; NET_VCA_POINT struRuleLocation; BYTE byRes2[32]; }NET_DVR_LANE_PARAM, *LPNET_DVR_LANE_PARAM; typedef struct tagNET_DVR_TPS_INFO { DWORD dwLanNum; NET_DVR_LANE_PARAM struLaneParam[MAX_TPS_RULE]; }NET_DVR_TPS_INFO, *LPNET_DVR_TPS_INFO; typedef struct tagNET_DVR_TPS_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_TPS_INFO struTPSInfo; BYTE byRes1[32]; }NET_DVR_TPS_ALARM, *LPNET_DVR_TPS_ALARM; typedef enum tagTRAFFIC_DATA_VARY_TYPE_EX_ENUM { ENUM_TRAFFIC_VARY_NO = 0x00, ENUM_TRAFFIC_VARY_VEHICLE_ENTER = 0x01, ENUM_TRAFFIC_VARY_VEHICLE_LEAVE = 0x02, ENUM_TRAFFIC_VARY_QUEUE = 0x04, ENUM_TRAFFIC_VARY_STATISTIC = 0x08, }TRAFFIC_DATA_VARY_TYPE_EX_ENUM; typedef struct tagNET_DVR_LANE_PARAM_V41 { BYTE byRuleName[NAME_LEN]; BYTE byRuleID; BYTE byLaneType; BYTE byTrafficState; BYTE byLaneNo; DWORD dwVaryType; DWORD dwTpsType; DWORD dwLaneVolume; DWORD dwLaneVelocity; DWORD dwTimeHeadway ; DWORD dwSpaceHeadway; float fSpaceOccupyRation; float fTimeOccupyRation; DWORD dwLightVehicle; DWORD dwMidVehicle; DWORD dwHeavyVehicle; NET_DVR_LANE_QUEUE struLaneQueue; NET_VCA_POINT struRuleLocation; DWORD dwOversizeVehicle; BYTE byRes2[60]; }NET_DVR_LANE_PARAM_V41, *LPNET_DVR_LANE_PARAM_V41; typedef struct tagNET_DVR_TPS_INFO_V41 { DWORD dwLanNum; NET_DVR_LANE_PARAM_V41 struLaneParam[MAX_TPS_RULE]; DWORD dwSceneID; BYTE byRes[28]; }NET_DVR_TPS_INFO_V41, *LPNET_DVR_TPS_INFO_V41; typedef struct tagNET_DVR_FACEDETECT_RULECFG { DWORD dwSize; BYTE byEnable; BYTE byEventType; BYTE byUpLastAlarm; BYTE byUpFacePic; BYTE byRuleName[NAME_LEN]; NET_VCA_POLYGON struVcaPolygon; BYTE byPicProType; BYTE bySensitivity; WORD wDuration; NET_DVR_JPEGPARA struPictureParam; NET_VCA_SIZE_FILTER struSizeFilter; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byPicRecordEnable; BYTE byRes1[3]; DWORD dwEventTypeEx; BYTE byRes2[32]; }NET_DVR_FACEDETECT_RULECFG, *LPNET_DVR_FACEDETECT_RULECFG; typedef struct tagNET_DVR_FACE_PIPCFG { BYTE byEnable; BYTE byBackChannel; BYTE byPosition; BYTE byPIPDiv; BYTE byRes[4]; }NET_DVR_FACE_PIPCFG, *LPNET_DVR_FACE_PIPCFG; typedef struct tagNET_DVR_FACEDETECT_RULECFG_V41 { DWORD dwSize; BYTE byEnable; BYTE byEventType; BYTE byUpLastAlarm; BYTE byUpFacePic; BYTE byRuleName[NAME_LEN]; NET_VCA_POLYGON struVcaPolygon; BYTE byPicProType; BYTE bySensitivity; WORD wDuration; NET_DVR_JPEGPARA struPictureParam; NET_VCA_SIZE_FILTER struSizeFilter; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byPicRecordEnable; BYTE byRes1; WORD wAlarmDelay; NET_DVR_FACE_PIPCFG struFacePIP; WORD wRelSnapChan[MAX_REL_SNAPCHAN_NUM]; BYTE byRes2[2]; DWORD dwEventTypeEx; BYTE byRes[16]; }NET_DVR_FACEDETECT_RULECFG_V41, *LPNET_DVR_FACEDETECT_RULECFG_V41; typedef struct tagNET_DVR_FACEDETECT_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byRuleName[NAME_LEN]; NET_VCA_TARGET_INFO struTargetInfo; NET_VCA_DEV_INFO struDevInfo; DWORD dwPicDataLen; BYTE byAlarmPicType; BYTE byPanelChan; BYTE byRelAlarmPicNum; BYTE byRes1; DWORD dwFacePicDataLen; DWORD dwAlarmID; WORD wDevInfoIvmsChannelEx; BYTE byRes2[42]; BYTE *pFaceImage; BYTE *pImage; }NET_DVR_FACEDETECT_ALARM, *LPNET_DVR_FACEDETECT_ALARM; typedef struct tagNET_DVR_EVENT_PARAM_UNION { DWORD uLen[3]; DWORD dwHumanIn; float fCrowdDensity; }NET_DVR_EVENT_PARAM_UNION, *LPNET_DVR_EVENT_PARAM_UNION; typedef struct tagNET_DVR_EVENT_INFO { BYTE byRuleID; BYTE byRes[3]; BYTE byRuleName[NAME_LEN]; DWORD dwEventType; NET_DVR_EVENT_PARAM_UNION uEventParam; }NET_DVR_EVENT_INFO, *LPNET_DVR_EVENT_INFO; typedef struct tagNET_DVR_EVENT_INFO_LIST { BYTE byNum; BYTE byRes1[3]; NET_DVR_EVENT_INFO struEventInfo[MAX_RULE_NUM]; }NET_DVR_EVENT_INFO_LIST,*LPNET_DVR_EVENT_INFO_LIST; typedef struct tagNET_DVR_RULE_INFO_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_EVENT_INFO_LIST struEventInfoList; BYTE byRes2[40]; }NET_DVR_RULE_INFO_ALARM, *LPNET_DVR_RULE_INFO_ALARM; typedef struct tagNET_DVR_ONE_SCENE_TIME { BYTE byActive; BYTE byRes1[3]; DWORD dwSceneID; NET_DVR_SCHEDTIME struEffectiveTime; BYTE byRes2[16]; }NET_DVR_ONE_SCENE_TIME, *LPNET_DVR_ONE_SCENE_TIME ; typedef struct tagNET_DVR_SCENE_TIME_CFG { DWORD dwSize; NET_DVR_ONE_SCENE_TIME struSceneTime[MAX_SCENE_TIMESEG_NUM]; BYTE byRes[64]; }NET_DVR_SCENE_TIME_CFG, *LPNET_DVR_SCENE_TIME_CFG; typedef struct tagNET_DVR_ONE_SCENE_CFG_ { BYTE byEnable; BYTE byDirection; BYTE byRes1[2]; DWORD dwSceneID; BYTE bySceneName[NAME_LEN]; NET_DVR_PTZPOS struPtzPos; DWORD dwTrackTime; BYTE byRes2[24]; }NET_DVR_ONE_SCENE_CFG, *LPNET_DVR_ONE_SCENE_CFG; typedef struct tagNET_DVR_SCENE_CFG { DWORD dwSize; NET_DVR_ONE_SCENE_CFG struSceneCfg[MAX_ITS_SCENE_NUM]; BYTE byRes[40]; }NET_DVR_SCENE_CFG,*LPNET_DVR_SCENE_CFG; typedef struct tagNET_DVR_SCENE_COND { DWORD dwSize; LONG lChannel; DWORD dwSceneID; BYTE byRes[48]; }NET_DVR_SCENE_COND, *LPNET_DVR_SCENE_COND; typedef struct tagNET_DVR_FORENSICS_MODE { DWORD dwSize; BYTE byMode; BYTE byRes[23]; }NET_DVR_FORENSICS_MODE,*LPNET_DVR_FORENSICS_MODE; typedef struct tagNET_DVR_SCENE_INFO_ { DWORD dwSceneID; BYTE bySceneName[NAME_LEN]; BYTE byDirection; BYTE byRes1[3]; NET_DVR_PTZPOS struPtzPos; BYTE byRes2[64] ; }NET_DVR_SCENE_INFO,*LPNET_DVR_SCENE_INFO; typedef struct tagNET_DVR_AID_ALARM_V41 { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_AID_INFO struAIDInfo; NET_DVR_SCENE_INFO struSceneInfo; DWORD dwPicDataLen; BYTE *pImage; BYTE byDataType; BYTE byLaneNo; WORD wMilliSecond; BYTE byMonitoringSiteID[MONITORSITE_ID_LEN]; BYTE byDeviceID[DEVICE_ID_LEN]; DWORD dwXmlLen; char* pXmlBuf; BYTE byRes[20]; }NET_DVR_AID_ALARM_V41, *LPNET_DVR_AID_ALARM_V41; typedef struct tagNET_DVR_TPS_ALARM_V41 { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_TPS_INFO_V41 struTPSInfo; BYTE byMonitoringSiteID[MONITORSITE_ID_LEN]; BYTE byDeviceID[DEVICE_ID_LEN]; DWORD dwStartTime; DWORD dwStopTime; BYTE byRes[24]; } NET_DVR_TPS_ALARM_V41,*LPNET_DVR_TPS_ALARM_V41; #define XXX_MAJOR_VERSION 2 #define XXX_SUB_VERSION 3 #define XXX_REVISION_VERSION 4 typedef struct tagNET_DVR_VCA_VERSION { WORD wMajorVersion; WORD wMinorVersion; WORD wRevisionNumber; WORD wBuildNumber; WORD wVersionYear; BYTE byVersionMonth; BYTE byVersionDay; BYTE byType; BYTE byRes[7]; }NET_DVR_VCA_VERSION, *LPNET_DVR_VCA_VERSION; typedef struct tagNET_DVR_PLATE_PARAM { BYTE byPlateRecoMode; BYTE byBelive; BYTE byRes[22]; }NET_DVR_PALTE_PARAM, *LPNET_DVR_PALTE_PARAM; typedef struct tagNET_DVR_PLATECFG { DWORD dwSize; DWORD dwEnable; BYTE byPicProType; BYTE byRes1[3]; NET_DVR_JPEGPARA struPictureParam; NET_DVR_PALTE_PARAM struPlateParam; NET_DVR_HANDLEEXCEPTION struHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; BYTE byRelRecordChan[MAX_CHANNUM]; BYTE byRes[20]; }NET_DVR_PLATECFG, *LPNET_DVR_PLATECFG; typedef struct tagNET_DVR_PLATE_INFO { BYTE byPlateType; BYTE byColor; BYTE byBright; BYTE byLicenseLen; BYTE byEntireBelieve; BYTE byRegion; BYTE byCountry; BYTE byArea; BYTE byPlateSize; BYTE byRes[15]; char sPlateCategory[MAX_CATEGORY_LEN]; DWORD dwXmlLen; char* pXmlBuf; NET_VCA_RECT struPlateRect; char sLicense[MAX_LICENSE_LEN]; BYTE byBelieve[MAX_LICENSE_LEN]; }NET_DVR_PLATE_INFO, *LPNET_DVR_PLATE_INFO; typedef struct tagNET_DVR_PLATERECO_RESULE { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_PLATE_INFO struPlateInfo; DWORD dwPicDataLen; DWORD dwRes[4]; BYTE *pImage; }NET_DVR_PLATERECO_RESULE, *LPNET_DVR_PLATERECO_RESULE; typedef struct tagNET_DVR_LOG_MATRIX { NET_DVR_TIME strLogTime; DWORD dwMajorType; DWORD dwMinorType; BYTE sPanelUser[MAX_NAMELEN]; BYTE sNetUser[MAX_NAMELEN]; NET_DVR_IPADDR struRemoteHostAddr; DWORD dwParaType; DWORD dwChannel; DWORD dwDiskNumber; DWORD dwAlarmInPort; DWORD dwAlarmOutPort; DWORD dwInfoLen; BYTE byDevSequence; BYTE byMacAddr[MACADDR_LEN]; BYTE sSerialNumber[SERIALNO_LEN]; char sInfo[LOG_INFO_LEN - SERIALNO_LEN - MACADDR_LEN - 1 ]; }NET_DVR_LOG_MATRIX, *LPNET_DVR_LOG_MATRIX; typedef struct tagVEDIOPLATLOG { BYTE bySearchCondition; BYTE byDevSequence; BYTE sSerialNumber[SERIALNO_LEN]; BYTE byMacAddr[MACADDR_LEN]; } NET_DVR_VEDIOPLATLOG, *LPNET_DVR_VEDIOPLATLOG; typedef struct tagNET_DVR_CODESYSTEMABILITY { DWORD dwSize; DWORD dwAbilityVersion; DWORD dwSupportMaxVideoFrameRate; DWORD dwSupportRecordType; BYTE bySupportLinkMode; BYTE bySupportStringRow; BYTE bySupportHideNum; BYTE byRes1; BYTE byMainStreamSupportResolution[8]; BYTE bySubStreamSupportResolution[8]; BYTE byEventStreamSupportResolution[8]; BYTE byNotSupportPreview; BYTE byNotSupportStorage; BYTE byRes2[98]; }NET_DVR_CODESYSTEMABILITY, *LPNET_DVR_CODESYSTEMABILITY; typedef struct tagNET_DVR_IO_INCFG { DWORD dwSize; BYTE byIoInStatus; BYTE byRes[3]; }NET_DVR_IO_INCFG, *LPNET_DVR_IO_INCFG; typedef struct tagNET_DVR_IO_OUTCFG { DWORD dwSize; BYTE byDefaultStatus; BYTE byIoOutStatus; WORD wAheadTime; DWORD dwTimePluse; DWORD dwTimeDelay; BYTE byFreqMulti; BYTE byDutyRate; BYTE byRes[2]; }NET_DVR_IO_OUTCFG, *LPNET_DVR_IO_OUTCFG; typedef struct tagNET_DVR_FLASH_OUTCFG { DWORD dwSize; BYTE byMode; BYTE byRelatedIoIn; BYTE byRecognizedLane; BYTE byDetectBrightness; BYTE byBrightnessThreld; BYTE byStartHour; BYTE byStartMinute; BYTE byEndHour; BYTE byEndMinute; BYTE byFlashLightEnable; BYTE byRes[2]; }NET_DVR_FLASH_OUTCFG, *LPNET_DVR_FLASH_OUTCFG; typedef struct tagNET_DVR_LIGHTSNAPCFG { DWORD dwSize; BYTE byLightIoIn; BYTE byTrigIoIn; BYTE byRelatedDriveWay; BYTE byTrafficLight; BYTE bySnapTimes1; BYTE bySnapTimes2; BYTE byRes1[2]; WORD wIntervalTime1[MAX_INTERVAL_NUM]; WORD wIntervalTime2[MAX_INTERVAL_NUM]; BYTE byRecord; BYTE bySessionTimeout; BYTE byPreRecordTime; BYTE byVideoDelay; BYTE byRes2[32]; }NET_DVR_LIGHTSNAPCFG, *LPNET_DVR_LIGHTSNAPCFG; typedef struct tagNET_DVR_MEASURESPEEDCFG { DWORD dwSize; BYTE byTrigIo1; BYTE byTrigIo2; BYTE byRelatedDriveWay; BYTE byTestSpeedTimeOut; DWORD dwDistance; BYTE byCapSpeed; BYTE bySpeedLimit; BYTE bySnapTimes1; BYTE bySnapTimes2; WORD wIntervalTime1[MAX_INTERVAL_NUM]; WORD wIntervalTime2[MAX_INTERVAL_NUM]; BYTE byRes[32]; }NET_DVR_MEASURESPEEDCFG, *LPNET_DVR_MEASURESPEEDCFG; typedef struct tagNET_DVR_CLOUDSTORAGE_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes1[64]; }NET_DVR_CLOUDSTORAGE_COND,*LPNET_DVR_CLOUDSTORAGE_COND; typedef struct tagNET_DVR_POOLPARAM { DWORD dwPoolID; BYTE byRes[4]; }NET_DVR_POOLPARAM,*LPNET_DVR_POOLPARAM; typedef struct tagNET_DVR_CLOUDSTORAGE_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[3]; NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes1[2]; char szUser[CLOUD_NAME_LEN]; char szPassword[CLOUD_PASSWD_LEN]; NET_DVR_POOLPARAM struPoolInfo[16]; BYTE byRes2[128]; }NET_DVR_CLOUDSTORAGE_CFG,*LPNET_DVR_CLOUDSTORAGE_CFG; typedef struct tagNET_DVR_PARKLAMP_COND { DWORD dwSize; DWORD dwChannel; BYTE byParkingIndex; BYTE byRes[15]; }NET_DVR_PARKLAMP_COND, *LPNET_DVR_PARKLAMP_COND; typedef struct tagNET_DVR_PARKLAMP_INFOCFG { DWORD dwSize; char sLicense[MAX_LICENSE_LEN]; char sParkingNo[MAX_LICENSE_LEN]; BYTE byLampFlicker; BYTE byLampColor; BYTE byStatus; BYTE byColorDepth; BYTE byColor; BYTE byVehicleLogoRecog; BYTE byRes[250]; }NET_DVR_PARKLAMP_INFOCFG, *LPNET_DVR_PARKLAMP_INFOCFG; typedef struct tagNET_DVR_VIDEOEFFECT { BYTE byBrightnessLevel; BYTE byContrastLevel; BYTE bySharpnessLevel; BYTE bySaturationLevel; BYTE byHueLevel; BYTE byEnableFunc; BYTE byLightInhibitLevel; BYTE byGrayLevel; }NET_DVR_VIDEOEFFECT, *LPNET_DVR_VIDEOEFFECT; typedef struct tagNET_DVR_GAIN { BYTE byGainLevel; BYTE byGainUserSet; BYTE byRes[2]; DWORD dwMaxGainValue; }NET_DVR_GAIN, *LPNET_DVR_GAIN; typedef struct tagNET_DVR_WHITEBALANCE { BYTE byWhiteBalanceMode; BYTE byWhiteBalanceModeRGain; BYTE byWhiteBalanceModeBGain; BYTE byRes[5]; }NET_DVR_WHITEBALANCE, *LPNET_DVR_WHITEBALANCE; typedef struct tagNET_DVR_EXPOSURE { BYTE byExposureMode; BYTE byAutoApertureLevel; BYTE byRes[2]; DWORD dwVideoExposureSet; DWORD dwRes; } NET_DVR_EXPOSURE, *LPNET_DVR_EXPOSURE; typedef struct tagNET_DVR_WDR { BYTE byWDREnabled; BYTE byWDRLevel1; BYTE byWDRLevel2; BYTE byWDRContrastLevel; BYTE byRes[16]; } NET_DVR_WDR, *LPNET_DVR_WDR; typedef struct tagNET_DVR_WDR_CFG { DWORD dwSize; NET_DVR_WDR struWDR; }NET_DVR_WDR_CFG, *LPNET_DVR_WDR_CFG; typedef struct tagNET_DVR_DAYNIGHT { BYTE byDayNightFilterType; BYTE bySwitchScheduleEnabled; BYTE byBeginTime; BYTE byEndTime; BYTE byDayToNightFilterLevel; BYTE byNightToDayFilterLevel; BYTE byDayNightFilterTime; BYTE byBeginTimeMin; BYTE byBeginTimeSec; BYTE byEndTimeMin; BYTE byEndTimeSec; BYTE byAlarmTrigState; } NET_DVR_DAYNIGHT, *LPNET_DVR_DAYNIGHT; typedef struct tagNET_DVR_GAMMACORRECT { BYTE byGammaCorrectionEnabled; BYTE byGammaCorrectionLevel; BYTE byRes[6]; } NET_DVR_GAMMACORRECT, *LPNET_DVR_GAMMACORRECT; typedef struct tagNET_DVR_BACKLIGHT { BYTE byBacklightMode; BYTE byBacklightLevel; BYTE byRes1[2]; DWORD dwPositionX1; DWORD dwPositionY1; DWORD dwPositionX2; DWORD dwPositionY2; BYTE byRes2[4]; } NET_DVR_BACKLIGHT, *LPNET_DVR_BACKLIGHT; typedef struct tagNET_DVR_NOISEREMOVE { BYTE byDigitalNoiseRemoveEnable; BYTE byDigitalNoiseRemoveLevel; BYTE bySpectralLevel; BYTE byTemporalLevel; BYTE byDigitalNoiseRemove2DEnable; BYTE byDigitalNoiseRemove2DLevel; BYTE byRes[2]; } NET_DVR_NOISEREMOVE, *LPNET_DVR_NOISEREMOVE; typedef struct tagNET_DVR_CMOSMODCFG { BYTE byCaptureMod; BYTE byBrightnessGate; BYTE byCaptureGain1; BYTE byCaptureGain2; DWORD dwCaptureShutterSpeed1; DWORD dwCaptureShutterSpeed2; BYTE byRes[4]; }NET_DVR_CMOSMODECFG, *LPNET_DVR_CMOSMODECFG; typedef struct tagNET_DVR_CAMERAPARAMCFG { DWORD dwSize; NET_DVR_VIDEOEFFECT struVideoEffect; NET_DVR_GAIN struGain; NET_DVR_WHITEBALANCE struWhiteBalance; NET_DVR_EXPOSURE struExposure; NET_DVR_GAMMACORRECT struGammaCorrect; NET_DVR_WDR struWdr; NET_DVR_DAYNIGHT struDayNight; NET_DVR_BACKLIGHT struBackLight; NET_DVR_NOISEREMOVE struNoiseRemove; BYTE byPowerLineFrequencyMode; BYTE byIrisMode; BYTE byMirror ; BYTE byDigitalZoom; BYTE byDeadPixelDetect; BYTE byBlackPwl; BYTE byEptzGate; BYTE byLocalOutputGate; BYTE byCoderOutputMode; BYTE byLineCoding; BYTE byDimmerMode; BYTE byPaletteMode; BYTE byEnhancedMode; BYTE byDynamicContrastEN; BYTE byDynamicContrast; BYTE byJPEGQuality; NET_DVR_CMOSMODECFG struCmosModeCfg; BYTE byFilterSwitch; BYTE byFocusSpeed; BYTE byAutoCompensationInterval; BYTE bySceneMode; }NET_DVR_CAMERAPARAMCFG, *LPNET_DVR_CAMERAPARAMCFG; typedef struct tagNET_DVR_DEFOGCFG { BYTE byMode; BYTE byLevel; BYTE byRes[6]; }NET_DVR_DEFOGCFG, *LPNET_DVR_DEFOGCFG; typedef struct tagNET_DVR_ELECTRONICSTABILIZATION { BYTE byEnable; BYTE byLevel; BYTE byRes[6]; }NET_DVR_ELECTRONICSTABILIZATION, *LPNET_DVR_ELECTRONICSTABILIZATION; typedef struct tagNET_DVR_CORRIDOR_MODE_CCD { BYTE byEnableCorridorMode; BYTE byRes[11]; }NET_DVR_CORRIDOR_MODE_CCD, *LPNET_DVR_CORRIDOR_MODE_CCD; typedef struct tagNET_DVR_SMARTIR_PARAM { BYTE byMode; BYTE byIRDistance; BYTE byShortIRDistance; BYTE byLongIRDistance; }NET_DVR_SMARTIR_PARAM,*LPNET_DVR_SMARTIR_PARAM; typedef struct tagNET_DVR_PIRIS_PARAM { BYTE byMode; BYTE byPIrisAperture; BYTE byRes[6]; }NET_DVR_PIRIS_PARAM,*LPNET_DVR_PIRIS_PARAM; typedef struct tagNET_DVR_LASER_PARAM_CFG { BYTE byControlMode; BYTE bySensitivity; BYTE byTriggerMode; BYTE byBrightness; BYTE byAngle; BYTE byLimitBrightness; BYTE byEnabled ; BYTE byIllumination; BYTE byLightAngle; BYTE byRes[7]; } NET_DVR_LASER_PARAM_CFG, *LPNET_DVR_LASER_PARAM_CFG; typedef struct tagNET_DVR_FFC_PARAM { BYTE byMode; BYTE byRes1; WORD wCompensateTime; BYTE byRes2[4]; }NET_DVR_FFC_PARAM,*LPNET_DVR_FFC_PARAM; typedef struct tagNET_DVR_DDE_PARAM { BYTE byMode; BYTE byNormalLevel; BYTE byExpertLevel; BYTE byRes[5]; }NET_DVR_DDE_PARAM,*LPNET_DVR_DDE_PARAM; typedef struct tagNET_DVR_AGC_PARAM { BYTE bySceneType; BYTE byLightLevel; BYTE byGainLevel; BYTE byRes[5]; }NET_DVR_AGC_PARAM,*LPNET_DVR_AGC_PARAM; typedef struct tagNET_DVR_SNAP_CAMERAPARAMCFG { BYTE byWDRMode; BYTE byWDRType; BYTE byWDRLevel; BYTE byRes1; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE byDayNightBrightness; BYTE byMCEEnabled; BYTE byMCELevel; BYTE byAutoContrastEnabled; BYTE byAutoContrastLevel; BYTE byLSEDetailEnabled; BYTE byLSEDetailLevel; BYTE byLPDEEnabled; BYTE byLPDELevel; BYTE byLseEnabled; BYTE byLseLevel; BYTE byLSEHaloLevel; BYTE byLseType; BYTE byRes2[3]; NET_DVR_TIME_EX struLSEStartTime; NET_DVR_TIME_EX struLSEEndTime; BYTE byLightLevel; BYTE byPlateContrastLevel; BYTE byPlateSaturationLevel; BYTE byRes[9]; } NET_DVR_SNAP_CAMERAPARAMCFG,*LPNET_DVR_SNAP_CAMERAPARAMCFG; typedef struct tagNET_DVR_OPTICAL_DEHAZE { BYTE byEnable; BYTE byRes[7]; } NET_DVR_OPTICAL_DEHAZE, *LPNET_DVR_OPTICAL_DEHAZE; typedef struct tagNET_DVR_THERMOMETRY_AGC { BYTE byMode; BYTE byRes1[3]; int iHighTemperature; int iLowTemperature; BYTE byRes[8]; }NET_DVR_THERMOMETRY_AGC, *LPNET_DVR_THERMOMETRY_AGC; typedef struct tagNET_DVR_CAMERAPARAMCFG_EX { DWORD dwSize; NET_DVR_VIDEOEFFECT struVideoEffect; NET_DVR_GAIN struGain; NET_DVR_WHITEBALANCE struWhiteBalance; NET_DVR_EXPOSURE struExposure; NET_DVR_GAMMACORRECT struGammaCorrect; NET_DVR_WDR struWdr; NET_DVR_DAYNIGHT struDayNight; NET_DVR_BACKLIGHT struBackLight; NET_DVR_NOISEREMOVE struNoiseRemove; BYTE byPowerLineFrequencyMode; BYTE byIrisMode; BYTE byMirror ; BYTE byDigitalZoom; BYTE byDeadPixelDetect; BYTE byBlackPwl; BYTE byEptzGate; BYTE byLocalOutputGate; BYTE byCoderOutputMode; BYTE byLineCoding; BYTE byDimmerMode; BYTE byPaletteMode; BYTE byEnhancedMode; BYTE byDynamicContrastEN; BYTE byDynamicContrast; BYTE byJPEGQuality; NET_DVR_CMOSMODECFG struCmosModeCfg; BYTE byFilterSwitch; BYTE byFocusSpeed; BYTE byAutoCompensationInterval; BYTE bySceneMode; NET_DVR_DEFOGCFG struDefogCfg; NET_DVR_ELECTRONICSTABILIZATION struElectronicStabilization; NET_DVR_CORRIDOR_MODE_CCD struCorridorMode; BYTE byExposureSegmentEnable; BYTE byBrightCompensate; BYTE byCaptureModeN; BYTE byCaptureModeP; NET_DVR_SMARTIR_PARAM struSmartIRParam; NET_DVR_PIRIS_PARAM struPIrisParam; NET_DVR_LASER_PARAM_CFG struLaserParam; NET_DVR_FFC_PARAM struFFCParam; NET_DVR_DDE_PARAM struDDEParam; NET_DVR_AGC_PARAM struAGCParam; BYTE byLensDistortionCorrection; BYTE byDistortionCorrectionLevel; BYTE byCalibrationAccurateLevel; BYTE byZoomedInDistantViewLevel; NET_DVR_SNAP_CAMERAPARAMCFG struSnapCCD ; NET_DVR_OPTICAL_DEHAZE struOpticalDehaze; NET_DVR_THERMOMETRY_AGC struThermAGC; BYTE byFusionMode; BYTE byHorizontalFOV; BYTE byVerticalFOV; BYTE byBrightnessSuddenChangeSuppression; BYTE byRes2[156]; }NET_DVR_CAMERAPARAMCFG_EX, *LPNET_DVR_CAMERAPARAMCFG_EX; typedef struct tagNET_DVR_FOCUSING_POSITION_STATE { DWORD dwSize; BYTE byState; BYTE byRes[31]; }NET_DVR_FOCUSING_POSITION_STATE, *LPNET_DVR_FOCUSING_POSITION_STATE; typedef enum _VCA_PLATE_COLOR_ { VCA_BLUE_PLATE = 0, VCA_YELLOW_PLATE, VCA_WHITE_PLATE, VCA_BLACK_PLATE, VCA_GREEN_PLATE, VCA_BKAIR_PLATE, VCA_RED_PLATE, VCA_ORANGE_PLATE, VCA_OTHER = 0xff }VCA_PLATE_COLOR; typedef enum _VCA_PLATE_TYPE_ { VCA_STANDARD92_PLATE = 0, VCA_STANDARD02_PLATE, VCA_WJPOLICE_PLATE, VCA_JINGCHE_PLATE, STANDARD92_BACK_PLATE, VCA_SHIGUAN_PLATE, VCA_NONGYONG_PLATE, VCA_MOTO_PLATE, NEW_ENERGY_PLATE, TRANSPORT_PLATE = 0x20, COMMERCIAL_PLATE, PRIVATE_PLATE, LEARNING_PLATE, CD_PLATE, CC_PLATE, ARMY_PLATE, PROTOCOL_PLATE, GOVERNMENT_PLATE, EXPORT_PLATE, TAXI_PLATE, TESTING_PLATE, TRANSFER_PLATE, TRUCK_PLATE, BUS_PLATE, PUBLIC_PLATE, PUB_TRANS_PLATE, PRI_TRANS_PLATE, UNKNOWN_PLATE = 0xff, }VCA_PLATE_TYPE; typedef enum _VTR_RESULT { VTR_RESULT_OTHER = 0, VTR_RESULT_BUS = 1, VTR_RESULT_TRUCK = 2, VTR_RESULT_CAR = 3, VTR_RESULT_MINIBUS = 4, VTR_RESULT_SMALLTRUCK = 5, VTR_RESULT_HUMAN = 6, VTR_RESULT_TUMBREL = 7, VTR_RESULT_TRIKE = 8, VTR_RESULT_SUV_MPV = 9, VTR_RESULT_MEDIUM_BUS = 10, VTR_RESULT_MOTOR_VEHICLE = 11, VTR_RESULT_NON_MOTOR_VEHICLE = 12, VTR_RESULT_SMALLCAR = 13, VTR_RESULT_MICROCAR = 14, VTR_RESULT_PICKUP = 15, VTR_RESULT_CONTAINER_TRUCK = 16, VTR_RESULT_MINI_TRUCK = 17, VTR_RESULT_SLAG_CAR = 18, VTR_RESULT_CRANE = 19, VTR_RESULT_OIL_TANK_TRUCK = 20, VTR_RESULT_CONCRETE_MIXER = 21, VTR_RESULT_PLATFORM_TRAILER = 22, VTR_RESULT_HATCHBACK = 23, VTR_RESULT_SALOON = 24, VTR_RESULT_SPORT_SEDAN = 25, VTR_RESULT_SMALL_BUS = 26 }VTR_RESULT; typedef enum _VCR_CLR_CLASS { VCR_CLR_UNSUPPORT = 0, VCR_CLR_WHITE = 1, VCR_CLR_SILVER = 2, VCR_CLR_GRAY = 3, VCR_CLR_BLACK = 4, VCR_CLR_RED = 5, VCR_CLR_DARKBLUE = 6, VCR_CLR_BLUE = 7, VCR_CLR_YELLOW = 8, VCR_CLR_GREEN = 9, VCR_CLR_BROWN = 10, VCR_CLR_PINK = 11, VCR_CLR_PURPLE = 12, VCR_CLR_DARKGRAY = 13, VCR_CLR_CYAN = 14 }VCR_CLR_CLASS; typedef enum _VCA_OPERATE_TYPE_ { VCA_LICENSE_TYPE = 0x1, VCA_PLATECOLOR_TYPE = 0x2, VCA_CARDNO_TYPE = 0x4, VCA_PLATETYPE_TYPE = 0x8, VCA_LISTTYPE_TYPE = 0x10, VCA_INDEX_TYPE = 0x20, VCA_OPERATE_INDEX_TYPE = 0x40 }VCA_OPERATE_TYPE; typedef enum _VCA_ILLEGAL_TYPE_ { VCA_POSTPIC_TYPE = 0x1, VCA_LOWSPEED_TYPE = 0x2, VCA_HIGHSPEED_TYPE = 0x4, VCA_RETROGRADE_TYPE = 0x8, VCA_RUSH_REDLIGHT_TYPE = 0x10, VCA_PRESS_LANE_TYPE = 0x20, VCA_VIOLATE_GUIDE_TYPE = 0x40, VCA_ROAD_STRAND_TYPE = 0x80, VCA_VEHICLE_ILLEGAL_LANE_TYPE = 0x100, VCA_ILLEGAL_LANE_CHANGE_TYPE = 0x200, VCA_ILLEGAL_LANE_DRIVE_TYPE = 0x400, VCA_VIOLATE_BAN_TYPE = 0x800, VCA_CROSS_PARKING_TYPE = 0x1000, VCA_GREEN_PARKING_TYPE = 0x2000 }VCA_ILLEGAL_TYPE; typedef enum _VCA_VEHICLE_TYPE_ { VCA_OTHER_TYPE = 0x1, VCA_SMALLCAR_TYPE = 0x2, VCA_BIGCAR_TYPE = 0x4, VCA_BUS_TYPE = 0x8, VCA_TRUCK_TYPE = 0x10, VCA_CAR_TYPE = 0x20, VCA_MINIBUS_TYPE = 0x40, VCA_SMALL_TRUCK_TYPE = 0x80 }VCA_VEHICLE_TYPE; typedef enum _VLR_VEHICLE_CLASS { VLR_OTHER = 0, VLR_VOLKSWAGEN = 1, VLR_BUICK = 2, VLR_BMW = 3, VLR_HONDA = 4, VLR_PEUGEOT = 5, VLR_TOYOTA = 6, VLR_FORD = 7, VLR_NISSAN = 8, VLR_AUDI = 9, VLR_MAZDA = 10, VLR_CHEVROLET = 11, VLR_CITROEN = 12, VLR_HYUNDAI = 13, VLR_CHERY = 14, VLR_KIA = 15, VLR_ROEWE = 16, VLR_MITSUBISHI = 17, VLR_SKODA = 18, VLR_GEELY = 19, VLR_ZHONGHUA = 20, VLR_VOLVO = 21, VLR_LEXUS = 22, VLR_FIAT = 23, VLR_EMGRAND = 24, VLR_DONGFENG = 25, VLR_BYD = 26, VLR_SUZUKI = 27, VLR_JINBEI = 28, VLR_HAIMA = 29, VLR_SGMW = 30, VLR_JAC = 31, VLR_SUBARU = 32, VLR_ENGLON = 33, VLR_GREATWALL = 34, VLR_HAFEI = 35, VLR_ISUZU = 36, VLR_SOUEAST = 37, VLR_CHANA = 38, VLR_FOTON = 39, VLR_XIALI = 40, VLR_BENZ = 41, VLR_FAW = 42, VLR_NAVECO = 43, VLR_LIFAN = 44, VLR_BESTURN = 45, VLR_CROWN = 46, VLR_RENAULT = 47, VLR_JMC = 48, VLR_MG = 49, VLR_KAMA = 50, VLR_ZOTYE = 51, VLR_CHANGHE = 52, VLR_XMKINGLONG = 53, VLR_HUIZHONG = 54, VLR_SZKINGLONG = 55, VLR_HIGER = 56, VLR_YUTONG = 57, VLR_CNHTC = 58, VLR_BEIBEN = 59, VLR_XINGMA = 60, VLR_YUEJIN = 61, VLR_HUANGHAI = 62, VLR_OLDWALL = 63, VLR_CHANACOMMERCIAL = 64, VLR_PORSCHE = 65, VLR_CADILLAC = 66, VLR_INFINITI = 67, VLR_GLEAGLE = 68, VLR_JEEP = 69, VLR_LANDROVER = 70, VLR_CHANGFENG = 71, VLR_BENNI = 72, VLR_ERA = 73, VLR_TAURUS = 74, VLR_EADO = 75, VLR_SHANQI = 76, VLR_HONGYAN = 77, VLR_DRAGON = 78, VLR_JACTEXT = 79, VLR_JACBUS = 80, VLR_ANKAI = 81, VLR_SHENLONG = 82, VLR_DAEWOO = 83, VLR_WUZHENG = 84, VLR_MAN = 85, VLR_ZHONGTONG = 86, VLR_BAOJUN = 87, VLR_BQWEIWANG = 88, VLR_TRUMPCHE = 89, VLR_LUFENG = 90, VLR_HMZHENGZHOU = 91, VLR_BEIJING = 92, VLR_ZHONGSHUN = 93, VLR_WEILIN = 94, VLR_OPEL = 95, VLR_KARRY = 96, VLR_SMA = 97, VLR_SMATEXT = 98, VLR_YUWIN = 99, VLR_MINI = 100, VLR_MARK = 101, VLR_HAVAL = 102, VLR_OGA = 103, VLR_VENUCIA = 104, VLR_BYD2 = 105, VLR_SMART = 106, VLR_BAW = 107, VLR_LUXGEN = 108, VLR_YEMA = 109, VLR_ZTE = 110, VLR_EVERUS = 111, VLR_CHRYSLER = 112, VLR_GONOW = 113, VLR_SHJIANG = 114, VLR_RUILIN = 115, VLR_FORTA = 116, VLR_GAGUAR = 117, VLR_HEIBAO = 118, VLR_TKING = 119, VLR_TKINGTEXT = 120, VLR_FODAY = 121, VLR_LOTUS = 122, VLR_NANJUN = 123, VLR_SHUANGHUAN = 124, VLR_SAIBAO = 125, VLR_HAWTAI = 126, VLR_LIFO = 127, VLR_JONWAY = 128, VLR_FULONGMA = 129, VLR_WEILI = 130, VLR_ANCHI = 131, VLR_PAIXI = 132, VLR_HIGERTEXT = 133, VLR_RIYECAR = 134, VLR_RIYETRUCK = 135, VLR_JIANGNAN = 136, VLR_OLDZOTYE = 137, VLR_OLDXIALI = 138, VLR_NEWAOCHI = 139, VLR_CDW = 140, VLR_CDWTEXT = 141, VLR_CIIMO = 142, VLR_CHANADS = 143, VLR_DS = 144, VLR_ROHENS = 145, VLR_YANTAI = 146, VLR_SHUANGLONG = 147, VLR_FENGLING = 148, VLR_XINKAI = 149, VLR_GMC = 150, VLR_DATONG = 151, VLR_BQYINXIANG = 152, VLR_NEWCHERY = 153, VLR_MUDAN = 154, VLR_DAYUN = 155, VLR_DONGWO = 156, VLR_UNION = 157, VLR_CHUNZHOU = 158, VLR_SANY = 159, VLR_YAXING = 160, VLR_HENGTONG = 161, VLR_SHAOLIN = 162, VLR_YOUNG = 163, VLR_STOM = 164, VLR_SANHUAN = 165, VLR_XUGONG = 166, VLR_BEIFANG = 167, VLR_JIANGHUAN = 168, VLR_BJFARM = 169, VLR_NEWDADI = 170, VLR_SUNWIN = 171, VLR_YINGTIAN = 172, VLR_QINGQI = 173, VLR_CHUFENG = 174, VLR_SCANIA = 175, VLR_JIULONG = 176, VLR_YOUYI = 177, VLR_SHANGRAO = 178, VLR_JIJIANG = 179, VLR_YANGZI = 180, VLR_XIWO = 181, VLR_CHANGJIANG = 182, VLR_WUYI = 183, VLR_CHENGDU = 184, VLR_TIANMA = 185, VLR_BAOLONG = 186, VLR_NEWYATU = 187, VLR_BARUI = 188, VLR_GUANZHI = 189, VLR_XIYATE = 190, VLR_BINLI = 191, VLR_DADI = 192, VLR_FUQI = 193, VLR_HANGTIAN = 194, VLR_HENGTIAN = 195, VLR_JMCCAR = 196, VLR_KAERSEN = 197, VLR_KAWEI = 198, VLR_LANBOJINI = 199, VLR_MASHALADI = 200, VLR_SHUCHI = 201, VLR_SHILI = 202, VLR_HUABEI = 203, VLR_YIZHENG = 204, VLR_CHUNLAN = 205, VLR_DAFA = 206, VLR_SHENYE = 207, VLR_FALALI = 208, VLR_FUXING = 209, VLR_ANYUAN = 210, VLR_JINGHUA = 211, VLR_TAIHU = 212, VLR_WUZHOULONG = 213, VLR_CHANGLONG = 214, VLR_YUEXI = 215, VLR_SHENMA = 216, VLR_LUSHAN = 217, VLR_WANFENG = 218, VLR_GZYUNBAO = 219, VLR_ZHONGDA = 220, VLR_THREEWHEEL = 221, VLR_TWOWHEEL = 222, VLR_JBC = 223, VLR_YZJIANG = 224, VLR_CNJ = 225, VLR_FORLAND = 226, VLR_FARMCAR = 227, VLR_DONGFANGHONG = 228, VLR_STEYR = 229, VLR_HONGQI = 230, VLR_USER1 = 231, VLR_USER2 = 232, VLR_USER3 = 233, VLR_USER4 = 234, VLR_USER5 = 235, VLR_USER6 = 236, VLR_USER7 = 237, VLR_USER8 = 238 }VLR_VEHICLE_CLASS; typedef enum _VSB_VOLKSWAGEN_CLASS { VSB_VOLKSWAGEN_OTHER = 0, VSB_VOLKSWAGEN_LAVIDA = 1, VSB_VOLKSWAGEN_CROSSLAVIDA = 2, VSB_VOLKSWAGEN_TIGUAN = 3, VSB_VOLKSWAGEN_TOURAN = 4, VSB_VOLKSWAGEN_SANTANA = 5, VSB_VOLKSWAGEN_SANTANA2000 = 6, VSB_VOLKSWAGEN_SANTANA3000 = 7, VSB_VOLKSWAGEN_VISTA = 8, VSB_VOLKSWAGEN_PASSAT = 9, VSB_VOLKSWAGEN_PASSATLINGYU = 10, VSB_VOLKSWAGEN_POLO = 11, VSB_VOLKSWAGEN_POLOCROSS = 12, VSB_VOLKSWAGEN_POLOGTI = 13, VSB_VOLKSWAGEN_SAGITAR = 14, VSB_VOLKSWAGEN_MAGOTAN = 15, VSB_VOLKSWAGEN_JETTA = 16, VSB_VOLKSWAGEN_BORA = 17, VSB_VOLKSWAGEN_NEWGOLF = 18, VSB_VOLKSWAGEN_GOLFGTI = 19, VSB_VOLKSWAGEN_GOL = 20, VSB_VOLKSWAGEN_CADDY = 21, VSB_VOLKSWAGEN_PHAETON = 22, VSB_VOLKSWAGEN_TOUREG = 23, VSB_VOLKSWAGEN_SCIROCCO = 24, VSB_VOLKSWAGEN_BEETLE = 25, VSB_VOLKSWAGEN_SHARAN = 26, VSB_VOLKSWAGEN_MULTIVAN = 27, VSB_VOLKSWAGEN_CARBONCOPY = 28, VSB_VOLKSWAGEN_VISTACHANGDA = 29, VSB_VOLKSWAGEN_BORASPORTLINE = 30, VSR_VOLKSWAGEN_CC_1 =31, VSR_VOLKSWAGEN_Cross_POLO_1 = 32, VSR_VOLKSWAGEN_Cross_POLO_2 = 33, VSR_VOLKSWAGEN_MULTIVAN_1 = 34, VSR_VOLKSWAGEN_POLO_1 = 35, VSR_VOLKSWAGEN_POLO_2 = 36, VSR_VOLKSWAGEN_POLO_JINQU_1 = 37, VSR_VOLKSWAGEN_POLO_JINQU_2 = 38, VSR_VOLKSWAGEN_Tiguan_1 = 39, VSR_VOLKSWAGEN_Tiguan_2 = 40, VSR_VOLKSWAGEN_XIALANG_1 = 41, VSR_VOLKSWAGEN_BAOLAI_1 = 42, VSR_VOLKSWAGEN_BAOLAI_2 = 43, VSR_VOLKSWAGEN_BAOLAI_3 = 44, VSR_VOLKSWAGEN_BAOLAI_4 = 45, VSR_VOLKSWAGEN_SHANGKU_1 = 46, VSR_VOLKSWAGEN_PASATE_1 = 47, VSR_VOLKSWAGEN_PASATE_2 = 48, VSR_VOLKSWAGEN_PASATE_3 = 49, VSR_VOLKSWAGEN_PASATE_4 = 50, VSR_VOLKSWAGEN_PASATE_5 = 51, VSR_VOLKSWAGEN_JIEDA_1 = 52, VSR_VOLKSWAGEN_JIEDA_2 = 53, VSR_VOLKSWAGEN_JIEDA_3 = 54, VSR_VOLKSWAGEN_JIEDA_4 = 55, VSR_VOLKSWAGEN_LANGYI_1 = 56, VSR_VOLKSWAGEN_LANGYI_2 = 57, VSR_VOLKSWAGEN_SANGTANA_1 = 58, VSR_VOLKSWAGEN_SANGTANA_2 = 59, VSR_VOLKSWAGEN_SANGTANA_3 = 60, VSR_VOLKSWAGEN_SANGTANA_4 = 61, VSR_VOLKSWAGEN_SANGTANAZHIJUN_1 = 62, VSR_VOLKSWAGEN_SANGTANAZHIJUN_2 = 63, VSR_VOLKSWAGEN_JIAKECHONG_1 = 64, VSR_VOLKSWAGEN_JIAKECHONG_2 = 65, VSR_VOLKSWAGEN_HUITENG_2 = 66, VSR_VOLKSWAGEN_MAITENG_1 = 67, VSR_VOLKSWAGEN_MAITENG_2 = 68, VSR_VOLKSWAGEN_TUAN_3 = 69, VSR_VOLKSWAGEN_TUAN_1 = 70, VSR_VOLKSWAGEN_TUAN_2 = 71, VSR_VOLKSWAGEN_TUGUAN_1 = 72, VSR_VOLKSWAGEN_TURUI_1 = 73, VSR_VOLKSWAGEN_TURUI_2 = 74, VSR_VOLKSWAGEN_SUTENG_1 = 75, VSR_VOLKSWAGEN_SUTENG_2 = 76, VSR_VOLKSWAGEN_SUTENG_3 = 77, VSR_VOLKSWAGEN_GAOERFU_1 = 78, VSR_VOLKSWAGEN_GAOERFU_2 = 79, VSR_VOLKSWAGEN_GAOERFU_3 = 80, VSR_VOLKSWAGEN_LANGYI_3 = 81, VSR_VOLKSWAGEN_HUITENG_1 = 82 } VSB_VOLKSWAGEN_CLASS; typedef enum _VBR_BUICK_CLASS { VBR_BUICK_OTHER = 0, VBR_BUICK_ENCORE = 1, VBR_BUICK_GL8 = 2, VBR_BUICK_LEGAL = 3, VBR_BUICK_LACROSS = 4, VBR_BUICK_EXCELLE = 5, VBR_BUICK_EXCELLEGT = 6, VBR_BUICK_WXCELLEXT = 7, VBR_BUICK_ENCLAVE = 8, VBR_BUICK_ROYAUM = 9, VBR_BUICK_SAIL = 10, VBR_BUICK_EXCELLEHRV = 11, VBR_BUICK_PARKAVENUE = 12, VBR_BUICK_CENTURY = 13, VBR_BUICK_GL8_1 = 14, VBR_BUICK_GL8_2 = 15, VBR_BUICK_GL8_3 = 16, VBR_BUICK_GL8_4 = 17, VBR_BUICK_GL8_5 = 18, VBR_BUICK_ENCORE_1 = 19, VBR_BUICK_ENCLAVE_1 = 20, VBR_BUICK_LEGAL_1 = 21, VBR_BUICK_LEGAL_2 = 22, VBR_BUICK_LEGAL_3 = 23, VBR_BUICK_LEGAL_4 = 24, VBR_BUICK_LEGAL_5 = 25, VBR_BUICK_LEGAL_6 = 26, VBR_BUICK_LACROSS_1 = 27, VBR_BUICK_LACROSS_2 = 28, VBR_BUICK_LACROSS_3 = 29, VBR_BUICK_EXCELLE_1 = 30, VBR_BUICK_EXCELLE_2 = 31, VBR_BUICK_EXCELLE_3 = 32, VBR_BUICK_EXCELLE_4 = 33, VBR_BUICK_PARKAVENUE_1 = 34, VBR_BUICK_SAIL_1 = 35, VBR_BUICK_EXCELLEGT_1 = 36, VBR_BUICK_WXCELLEXT_1 = 37, VBR_BUICK_CENTURY_1 = 38, VBR_BUICK_RONGYU_1 = 39 }VBR_BUICK_CLASS; typedef enum _VSB_BMW_CLASS { VSB_BMW_OTHER = 0, VSB_BMW_3SERIES = 1, VSB_BMW_5SERIES = 2, VSB_BMW_X1 = 3, VSB_BMW_1SERIES = 4, VSB_BMW_7SERIES = 5, VSB_BMW_X3 = 6, VSB_BMW_X5 = 7, VSB_BMW_X6 = 8, VSB_BMW_Z4 = 9, VSB_BMW_MINI = 10, VSB_BMW_6SERIES = 11, VSB_BMW_YIXI_1 = 12, VSB_BMW_YIXI_2 = 13, VSB_BMW_SANXI_1 = 14, VSB_BMW_SANXI_2 = 15, VSB_BMW_SANXI_3 = 16, VSB_BMW_SANXI_4 = 17, VSB_BMW_WUXI_1 = 18, VSB_BMW_WUXI_2 = 19, VSB_BMW_LIUXI_1 = 20, VSB_BMW_QIXI_1 = 21, VSB_BMW_QIXI_2 = 22, VSB_BMW_X1_1 = 23, VSB_BMW_X1_2 = 24, VSB_BMW_X3_1 = 25, VSB_BMW_X3_2 = 26, VSB_BMW_X5_1 = 27, VSB_BMW_X5_2 = 28, VSB_BMW_X5_3 = 29, VSB_BMW_X6_1 = 30, VSB_BMW_Z4_1 = 31 }VSB_BMW_CLASS; typedef enum _VSB_HONDA_CLASS { VSB_HONDA_OTHER = 0, VSB_HONDA_CRV = 1, VSB_HONDA_JADE = 2, VSB_HONDA_CIVIC = 3, VSB_HONDA_SPIRIOR = 4, VSB_HONDA_CIIMO = 5, VSB_HONDA_ELYSION = 6, VSB_HONDA_OBYSSEY = 7, VSB_HONDA_FIT = 8, VSB_HONDA_NEWCITY = 9, VSB_HONDA_CROSSTOUR = 10, VSB_HONDA_CRIDER = 11, VSB_HONDA_ACCORD = 12, VSB_HONDA_CITY = 13, VSB_HONDA_ANTILOCK = 14, VSB_HONDA_CRZ = 15, VSB_HONDA_CRV_1 = 16, VSB_HONDA_CRV_2 = 17, VSB_HONDA_CRV_3 = 18, VSB_HONDA_CRV_4 = 19, VSB_HONDA_CRV_5 = 20, VSB_HONDA_CRIDER_1 = 21, VSB_HONDA_OBYSSEY_1 = 22, VSB_HONDA_OBYSSEY_2 = 23, VSB_HONDA_OBYSSEY_3 = 24, VSB_HONDA_OBYSSEY_4 = 25, VSB_HONDA_CIVIC_1 = 26, VSB_HONDA_CIVIC_5 = 27, VSB_HONDA_CIVIC_2 = 28, VSB_HONDA_CIVIC_3 = 29, VSB_HONDA_CIVIC_4 = 30, VSB_HONDA_CITY_1 = 31, VSB_HONDA_SPIRIOR_1 = 32, VSB_HONDA_SIMING_1 = 33, VSB_HONDA_JIEDE_1 = 34, VSB_HONDA_CROSSTOUR_1 = 35, VSB_HONDA_AILISHEN_1 = 36, VSB_HONDA_NEWCITY_1 = 37, VSB_HONDA_NEWCITY_2 = 38, VSB_HONDA_NEWCITY_3 = 39, VSB_HONDA_ACCORD_1 = 40, VSB_HONDA_ACCORD_2 = 41, VSB_HONDA_ACCORD_3 = 42, VSB_HONDA_ACCORD_4 = 43, VSB_HONDA_ACCORD_5 = 44, VSB_HONDA_ACCORD_6 = 45, VSB_HONDA_ACCORD_7 = 46, VSB_HONDA_ACCORD_8 = 47, VSB_HONDA_ACCORD_9 = 48, VSB_HONDA_ACCORD_10 = 49, VSB_HONDA_FIT_1 = 50, VSB_HONDA_FIT_2 = 51, VSB_HONDA_FIT_3 = 52, VSB_HONDA_FIT_4 = 53, VSB_HONDA_FIT_5 = 54, VSB_HONDA_FIT_6 = 55 }VSB_HONDA_CLASS; typedef enum _VSB_PEUGEOT_CLASS { VSB_PEUGEOT_OTHER = 0, VSB_PEUGEOT_2008 = 1, VSB_PEUGEOT_207 = 2, VSB_PEUGEOT_SENNA = 3, VSB_PEUGEOT_3008 = 4, VSB_PEUGEOT_301 = 5, VSB_PEUGEOT_307 = 6, VSB_PEUGEOT_308 = 7, VSB_PEUGEOT_408 = 8, VSB_PEUGEOT_508 = 9, VSB_PEUGEOT_206 = 10, VSB_PEUGEOT_407 = 11, VSB_PEUGEOT_206_1 = 12, VSB_PEUGEOT_207_1 = 13, VSB_PEUGEOT_207_2 = 14, VSB_PEUGEOT_3008_1 = 15, VSB_PEUGEOT_301_1 = 16, VSB_PEUGEOT_307_1 = 17, VSB_PEUGEOT_307_2 = 18, VSB_PEUGEOT_307_3 = 19, VSB_PEUGEOT_308_1 = 20, VSB_PEUGEOT_407_1 = 21, VSB_PEUGEOT_408_1 = 22, VSB_PEUGEOT_408_2 = 23, VSB_PEUGEOT_508_1 = 24, VSB_PEUGEOT_207_3 = 25, VSB_PEUGEOT_307_4 = 26 }VSB_PEUGEOT_CLASS; typedef enum _VSB_TOYOTA_CLASS { VSB_TOYOTA_OTHER = 0, VSB_TOYOTA_HIGHLANDER = 1, VSB_TOYOTA_CAMRY = 2, VSB_TOYOTA_YARIS = 3, VSB_TOYOTA_YARISL = 4, VSB_TOYOTA_VERSO = 5, VSB_TOYOTA_HUAGUAN = 6, VSB_TOYOTA_CROWN = 7, VSB_TOYOTA_COROLLA = 8, VSB_TOYOTA_COSTER = 9, VSB_TOYOTA_PRADO = 10, VSB_TOYOTA_PRIUS = 11, VSB_TOYOTA_RAV4 = 12, VSB_TOYOTA_REZI = 13, VSB_TOYOTA_VIOS = 14, VSB_TOYOTA_PREVIA = 15, VSB_TOYOTA_HIACE = 16, VSB_TOYOTA_86 = 17, VSB_TOYOTA_SPEQUOIA = 18, VSB_TOYOTA_LANDCRUISER = 19, VSB_TOYOTA_SIENNA = 20, VSB_TOYOTA_CAMRYHYBRID = 21, VSB_TOYOTA_GRACE = 22, VSB_TOYOTA_ALPHARD = 23, VSB_TOYOTA_RAV4_1 = 24, VSB_TOYOTA_RAV4_2 = 25, VSB_TOYOTA_86_1 = 26, VSB_TOYOTA_JIAMEI_2 = 27, VSB_TOYOTA_JIAMEI_3 = 28, VSB_TOYOTA_LANDEKLZ_1 = 29, VSB_TOYOTA_KAIMEIRUI_1 = 30, VSB_TOYOTA_KAIMEIRUI_2 = 31, VSB_TOYOTA_KAIMEIRUI_3 = 32, VSB_TOYOTA_KAIMEIRUI_4 = 33, VSB_TOYOTA_KAIMEIRUI_5 = 34, VSB_TOYOTA_KAIMEIRUI_6 = 35, VSB_TOYOTA_KALUOLA_1 = 36, VSB_TOYOTA_KALUOLA_2 = 37, VSB_TOYOTA_AIERFA_1 = 38, VSB_TOYOTA_AIERFA_2 = 39, VSB_TOYOTA_WEICHI_1 = 40, VSB_TOYOTA_WEICHI_2 = 41, VSB_TOYOTA_WEICHI_3 = 42, VSB_TOYOTA_WEICHI_4 = 43, VSB_TOYOTA_WEICHI_5 = 44, VSB_TOYOTA_PULADUO_1 = 45, VSB_TOYOTA_PULADUO_2 = 46, VSB_TOYOTA_PULADUO_3 = 47, VSB_TOYOTA_PURUIWEIYA_1 = 48, VSB_TOYOTA_PURUIWEIYA_4 = 49, VSB_TOYOTA_PURUIWEIYA_2 = 50, VSB_TOYOTA_PURUIWEIYA_3 = 51, VSB_TOYOTA_KESIDA_1 = 52, VSB_TOYOTA_KESIDA_2 = 53, VSB_TOYOTA_HANLANDA_1 = 54, VSB_TOYOTA_HANLANDA_2 = 55, VSB_TOYOTA_HANLANDA_3 = 56, VSB_TOYOTA_HAISHI_1 = 57, VSB_TOYOTA_HUANGGUAN_1 = 58, VSB_TOYOTA_HUANGGUAN_2 = 59, VSB_TOYOTA_HUANGGUAN_3 = 60, VSB_TOYOTA_HUANGGUAN_4 = 61, VSB_TOYOTA_HONGSHAN_1 = 62, VSB_TOYOTA_HUAGUAN_1 = 63, VSB_TOYOTA_HUAGUAN_2 = 64, VSB_TOYOTA_HUAGUAN_3 = 65, VSB_TOYOTA_YIZHI_1 = 66, VSB_TOYOTA_RUIZHI_1 = 67, VSB_TOYOTA_RUIZHI_2 = 68, VSB_TOYOTA_RUIZHI_3 = 69, VSB_TOYOTA_RUIZHI_4 = 70, VSB_TOYOTA_LUDIXUNYANG_1 = 71, VSB_TOYOTA_YALISHI_1 = 72, VSB_TOYOTA_YALISHI_2 = 73, VSB_TOYOTA_RAV4_3 = 74, VSB_TOYOTA_YARiSL_1 = 75, VSB_TOYOTA_JIAMEI_1 = 76, VSB_TOYOTA_PLATZ_1 = 77, VSB_TOYOTA_LANDEKLZ_2 = 78 }VSB_TOYOTA_CLASS; typedef enum _VSB_FORD_CLASS { VSB_FORD_OTHER = 0, VSB_FORD_FOCUS = 1, VSB_FORD_FIESTA = 2, VSB_FORD_SMAX = 3, VSB_FORD_MONDEO = 4, VSB_FORD_ECOSPORT = 5, VSB_FORD_ESCAPE = 6, VSB_FORD_ZHISHENG = 7, VSB_FORD_ESCORT = 8, VSB_FORD_EXPLORER = 9, VSB_FORD_EDGE = 10, VSB_FORD_TRANSIT = 11, VSB_FORD_QUANSHUN_1 = 12, VSB_FORD_JIANIANHUA_1 = 13, VSB_FORD_JIANIANHUA_2 = 14, VSB_FORD_JIANIANHUA_3 = 15, VSB_FORD_JIANIANHUA_4 = 16, VSB_FORD_TANXIANZHE_1 = 17, VSB_FORD_FOCUS_1 = 18, VSB_FORD_FOCUS_2 = 19, VSB_FORD_FOCUS_3 = 20, VSB_FORD_FOCUS_4 = 21, VSB_FORD_FOCUS_5 = 22, VSB_FORD_FOCUS_6 = 23, VSB_FORD_YIBO_1 = 24, VSB_FORD_YIHU_1 = 25, VSB_FORD_MENGDIOU_1 = 26, VSB_FORD_MENGDIOU_2 = 27, VSB_FORD_MENGDIOU_3 = 28, VSB_FORD_MENGDIOU_4 = 29, VSB_FORD_MENGDIOU_5 = 30, VSB_FORD_MENGDIOU_6 = 31, VSB_FORD_RUIJIE_1 = 32, VSB_FORD_MAIKESI_1 = 33 }VSB_FORD_CLASS; typedef enum _VSB_NISSAN_CLASS { VSB_NISSAN_OTHER = 0, VSB_NISSAN_XTRAIL = 1, VSB_NISSAN_MURANO = 2, VSB_NISSAN_LIVINA = 3, VSB_NISSAN_MARCH = 4, VSB_NISSAN_TIIDA = 5, VSB_NISSAN_TEANA = 6, VSB_NISSAN_QASHQAI = 7, VSB_NISSAN_SYLPHY = 8, VSB_NISSAN_SUNNY = 9, VSB_NISSAN_D22PICKUP = 10, VSB_NISSAN_D22VAN = 11, VSB_NISSAN_CABSTAR = 12, VSB_NISSAN_HV200 = 13, VSB_NISSAN_PALADIN = 14, VSB_NISSAN_YIDA = 15, VSB_NISSAN_DUCK = 16, VSB_NISSAN_CEFIRO = 17, VSB_NISSAN_FENGSHENBLUEBIRD = 18, VSB_NISSAN_FENGSHENSUNNY = 19, VSB_NISSAN_SUCCE = 20, VSB_NISSAN_FUGA = 21, VSB_NISSAN_BLUEBIRD4 = 22, VSB_NISSAN_VENUCIA = 23, VSB_NISSAN_QUEST = 24, VSB_NISSAN_GENISS = 25, VSB_NISSAN_NV200_1 = 26, VSB_NISSAN_TIANLAI_1 = 27, VSB_NISSAN_TIANLAI_2 = 28, VSB_NISSAN_TIANLAI_3 = 29, VSB_NISSAN_TIANLAI_4 = 30, VSB_NISSAN_TIANLAI_5 = 31, VSB_NISSAN_TIANLAI_6 = 32, VSB_NISSAN_QIJUN_1 = 33, VSB_NISSAN_QIJUN_2 = 34, VSB_NISSAN_PALADING_1 = 35, VSB_NISSAN_LOULAN_1 = 36, VSB_NISSAN_LOULAN_2 = 37, VSB_NISSAN_LANNIAO_1 = 38, VSB_NISSAN_LANNIAO_2 = 39, VSB_NISSAN_LANNIAO_3 = 40, VSB_NISSAN_GUISHI_1 = 41, VSB_NISSAN_XUANYI_1 = 42, VSB_NISSAN_XUANYI_2 = 43, VSB_NISSAN_XUANYI_3 = 44, VSB_NISSAN_XIAOKE_1 = 45, VSB_NISSAN_XIAOKE_2 = 46, VSB_NISSAN_SUNNY_3 = 47, VSB_NISSAN_SUNNY_1 = 48, VSB_NISSAN_SUNNY_2 = 49, VSB_NISSAN_YIDA_1 = 50, VSB_NISSAN_YIDA_2 = 51, VSB_NISSAN_FENGDU_1 = 52, VSB_NISSAN_FENGYA_1 = 53, VSB_NISSAN_LIWEI_1 = 54, VSB_NISSAN_LIWEI_2 = 55, VSB_NISSAN_LIWEI_3 = 56, VSB_NISSAN_LIWEI_4 = 57, VSB_NISSAN_JUNYI_1 = 58, VSB_NISSAN_QIDA_1 = 59, VSB_NISSAN_QIDA_2 = 60, VSB_NISSAN_QIDA_3 = 61, VSB_NISSAN_RUIQI_1 = 62 }VSB_NISSAN_CLASS; typedef enum _VSB_AUDI_CLASS { VSB_AUDI_OTHER = 0, VSB_AUDI_A3 = 1, VSB_AUDI_A4L = 2, VSB_AUDI_A6L = 3, VSB_AUDI_Q3 = 4, VSB_AUDI_Q5 = 5, VSB_AUDI_A1 = 6, VSB_AUDI_A4 = 7, VSB_AUDI_A5 = 8, VSB_AUDI_A6 = 9, VSB_AUDI_A7 = 10, VSB_AUDI_A8L = 11, VSB_AUDI_Q7 = 12, VSB_AUDI_S5 = 13, VSB_AUDI_TT = 14, VSB_AUDI_100 = 15, VSB_AUDI_200 = 16, VSB_AUDI_S7 = 17, VSB_AUDI_S8 = 18, VSB_AUDI_100_1 = 19, VSB_AUDI_200_1 = 20, VSB_AUDI_A1_1 = 21, VSB_AUDI_A3_1 = 22, VSB_AUDI_A3_2 = 23, VSB_AUDI_A4_1 = 24, VSB_AUDI_A4_2 = 25, VSB_AUDI_A4L_1 = 26, VSB_AUDI_A5_1 = 27, VSB_AUDI_A6_1 = 28, VSB_AUDI_A6L_1 = 29, VSB_AUDI_A6L_2 = 30, VSB_AUDI_A6L_3 = 31, VSB_AUDI_A7_1 = 32, VSB_AUDI_A8L_1 = 33, VSB_AUDI_A8L_2 = 34, VSB_AUDI_A8L_3 = 35, VSB_AUDI_A8L_4 = 36, VSB_AUDI_Q3_1 = 37, VSB_AUDI_Q5_1 = 38, VSB_AUDI_Q5_2 = 39, VSB_AUDI_Q5_3 = 40, VSB_AUDI_Q5_4 = 41, VSB_AUDI_Q7_1 = 42, VSB_AUDI_Q7_2 = 43, VSB_AUDI_S7_1 = 44, VSB_AUDI_S8_1 = 45, VSB_AUDI_TT_2 = 46, VSB_AUDI_TT_3 = 47, VSB_AUDI_TT_4 = 48, VSB_AUDI_TT_1 = 49 }VSB_AUDI_CLASS; typedef enum _VSB_MAZDA_CLASS { VSB_MAZDA_OTHER = 0, VSB_MAZDA_CX5 = 1, VSB_MAZDA_2 = 2, VSB_MAZDA_3 = 3, VSB_MAZDA_6 = 4, VSB_MAZDA_8 = 5, VSB_MAZDA_COREWING = 6, VSB_MAZDA_CX7 = 7, VSB_MAZDA_X5 = 8, VSB_MAZDA_5 = 9, VSB_MAZDA_PREMACY = 10, VSB_MAZDA_MPV = 11, VSB_MAZDA_CX5_1 = 12, VSB_MAZDA_CX7_1 = 13, VSB_MAZDA_2_1 = 14, VSB_MAZDA_3_1 = 15, VSB_MAZDA_3_2 = 16, VSB_MAZDA_3_3 = 17, VSB_MAZDA_3_4 = 18, VSB_MAZDA_5_1 = 19, VSB_MAZDA_5_2 = 20, VSB_MAZDA_6_2 = 21, VSB_MAZDA_6_3 = 22, VSB_MAZDA_8_1 = 23, VSB_MAZDA_PREMACY_1 = 24, VSB_MAZDA_PREMACY_2 = 25, VSB_MAZDA_COREWING_1 = 26, VSB_MAZDA_COREWING_2 = 27, VSB_MAZDA_COREWING_3 = 28, VSB_MAZDA_2_2 = 29, VSB_MAZDA_6_1 = 30, VSB_MAZDA_6_4 = 31 }VSB_MAZDA_CLASS; typedef enum _VSB_CHEVROLET_CLASS { VSB_CHEVROLET_OTHER = 0, VSB_CHEVROLET_NEWAVEO = 1, VSB_CHEVROLET_EPICA = 2, VSB_CHEVROLET_CRUZE = 3, VSB_CHEVROLET_CAPTIVA = 4, VSB_CHEVROLET_MALIBU = 5, VSB_CHEVROLET_SAIL = 6, VSB_CHEVROLET_CAMARO = 7, VSB_CHEVROLET_LECHENG = 8, VSB_CHEVROLET_LOVA = 9, VSB_CHEVROLET_OLDAVEO = 10, VSB_CHEVROLET_SPARK = 11, VSB_CHEVROLET_SAILSRV = 12, VSB_CHEVROLET_LOVA_1 = 13, VSB_CHEVROLET_LOVA_2 = 14, VSB_CHEVROLET_SPARK_1 = 15, VSB_CHEVROLET_SPARK_2 = 16, VSB_CHEVROLET_OLDAVEO_1 = 17, VSB_CHEVROLET_OLDAVEO_2 = 18, VSB_CHEVROLET_EPICA_1 = 19, VSB_CHEVROLET_EPICA_3 = 20, VSB_CHEVROLET_EPICA_4 = 21, VSB_CHEVROLET_EPICA_5 = 22, VSB_CHEVROLET_NEWAVEO_1 = 23, VSB_CHEVROLET_CAPTIVA_1 = 24, VSB_CHEVROLET_CAPTIVA_2 = 25, VSB_CHEVROLET_KEMAILUO_1 = 26, VSB_CHEVROLET_CRUZE_1 = 27, VSB_CHEVROLET_SAIL_1 = 28, VSB_CHEVROLET_SAIL_2 = 29, VSB_CHEVROLET_MALIBU_1 = 30, VSB_CHEVROLET_EPICA_2 = 31 }VSB_CHEVROLET_CLASS; typedef enum _VSB_CITROEN_CLASS { VSB_CITROEN_OTHER = 0, VSB_CITROEN_C2 = 1, VSB_CITROEN_C4L = 2, VSB_CITROEN_C5 = 3, VSB_CITROEN_ELYSEE = 4, VSB_CITROEN_CQUATRELIANGXIANG = 5, VSB_CITROEN_CQUATRESANXIANG = 6, VSB_CITROEN_SAEAPICASSO = 7, VSB_CITROEN_PICASSO = 8, VSB_CITROEN_CTRIOMPHE = 9, VSB_CITROEN_XSARA = 10, VSB_CITROEN_SHENLONGFUKANG = 11, VSB_CITROEN_CHANGANDS = 12, VSB_CITROEN_C2_1 = 13, VSB_CITROEN_C4L_1 = 14, VSB_CITROEN_C4PICASSO_1 = 15, VSB_CITROEN_C5_1 = 16, VSB_CITROEN_CQUATRESANXIANG_1 = 17, VSB_CITROEN_CQUATRELIANGXIANG_1 = 18, VSB_CITROEN_CTRIOMPHE_1 = 19, VSB_CITROEN_FUKANG_1 = 20, VSB_CITROEN_ELYSEE_1 = 21, VSB_CITROEN_ELYSEE_2 = 22, VSB_CITROEN_SAEAPICASSO_1 = 23 }VSB_CITROEN_CLASS; typedef enum _VSB_HYUNDAI_CLASS { VSB_HYUNDAI_OTHER = 0, VSB_HYUNDAI_IX35 = 1, VSB_HYUNDAI_LANGDONG = 2, VSB_HYUNDAI_MOINCA = 3, VSB_HYUNDAI_SHENGDA = 4, VSB_HYUNDAI_VERNA = 5, VSB_HYUNDAI_RUIYI = 6, VSB_HYUNDAI_SONATAEIGHT = 7, VSB_HYUNDAI_TUCSON = 8, VSB_HYUNDAI_YUEDONG = 9, VSB_HYUNDAI_ELANTRA = 10, VSB_HYUNDAI_GRANDSANTAFE = 11, VSB_HYUNDAI_COUPE = 12, VSB_HYUNDAI_MATRIX = 13, VSB_HYUNDAI_ACCENT = 14, VSB_HYUNDAI_IX30 = 15, VSB_HYUNDAI_SONATA = 16, VSB_HYUNDAI_REFINE = 17, VSB_HYUNDAI_MISTRA = 18, VSB_HYUNDAI_SONATAYUFENG = 19, VSB_HYUNDAI_SANTAFE = 20, VSB_HYUNDAI_HUIYI = 21, VSB_HYUNDAI_I30_1 = 22, VSB_HYUNDAI_IX35_1 = 23, VSB_HYUNDAI_YILANTE_1 = 24, VSB_HYUNDAI_YILANTE_2 = 25, VSB_HYUNDAI_YILANTE_3 = 26, VSB_HYUNDAI_SHENGDA_1 = 27, VSB_HYUNDAI_MINGTU_1 = 28, VSB_HYUNDAI_MINGYU_1 = 29, VSB_HYUNDAI_SHENGDAFEI_1 = 30, VSB_HYUNDAI_YUXIANG_1 = 31, VSB_HYUNDAI_YUXIANG_2 = 32, VSB_HYUNDAI_YUEDONG_1 = 33, VSB_HYUNDAI_YUEDONG_2 = 34, VSB_HYUNDAI_SHENGDA_2 = 35, VSB_HYUNDAI_SHENGDA_3 = 36, VSB_HYUNDAI_LANGDONG_1 = 37, VSB_HYUNDAI_GERUI_1 = 38, VSB_HYUNDAI_RUIYI_1 = 39, VSB_HYUNDAI_RUINA_1 = 40, VSB_HYUNDAI_RUINA_2 = 41, VSB_HYUNDAI_RUIFENG_1 = 42, VSB_HYUNDAI_SUONATA_1 = 43, VSB_HYUNDAI_SUONATA_2 = 44, VSB_HYUNDAI_SOUNATA_3 = 45, VSB_HYUNDAI_WEILAKESI_1 = 46, VSB_HYUNDAI_MEIJIA_1 = 47, VSB_HYUNDAI_JINKOUHUIYI_1 = 48, VSB_HYUNDAI_TUSHENG_1 = 49, VSB_HYUNDAI_TUSHENG_2 = 50, VSB_HYUNDAI_TUSHENG_3 = 51, VSB_HYUNDAI_KUPAI_1 = 52, VSB_HYUNDAI_YASHENTE_1 = 53, VSB_HYUNDAI_YASHENTE_2 = 54, VSB_HYUNDAI_LINGXIANG_1 = 55, VSB_HYUNDAI_FEISI_1 = 56 }VSB_HYUNDAI_CLASS; typedef enum _VSB_CHERY_CLASS { VSB_CHERY_OTHER = 0, VSB_CHERY_A1 = 1, VSB_CHERY_A3 = 2, VSB_CHERY_EASTAR = 3, VSB_CHERY_FULWIN = 4, VSB_CHERY_QQ = 5, VSB_CHERY_E5 = 6, VSB_CHERY_COWIN = 7, VSB_CHERY_TIGGO = 8, VSB_CHERY_A5 = 9, VSB_CHERY_S16 = 10, VSB_CHERY_YOUYA = 11, VSB_CHERY_V5 = 12, VSB_CHERY_E3 = 13, VSB_CHERY_A1_1 = 14, VSB_CHERY_A3LIANGXIANG_1 = 15, VSB_CHERY_A5_1 = 16, VSB_CHERY_QQ_1 = 17, VSB_CHERY_QQ_2 = 18, VSB_CHERY_QQ_3 = 19, VSB_CHERY_QQ_4 = 20, VSB_CHERY_QQ_5 = 21, VSB_CHERY_DONGFANGZHIZI_1 = 22, VSB_CHERY_DONGFANGZHIZI_2 = 23, VSB_CHERY_DONGFANGZHIZI_3 = 24, VSB_CHERY_YOUYA_1 = 25, VSB_CHERY_E3_1 = 26, VSB_CHERY_E5_1 = 27, VSB_CHERY_QIYUN1_1 = 28, VSB_CHERY_QIYUN1_2 = 29, VSB_CHERY_QIYUN_1 = 30, VSB_CHERY_QIYUN_2 = 31, VSB_CHERY_QIYUN2_1 = 32, VSB_CHERY_QIYUN2_2 = 33, VSB_CHERY_QIYUN3_1 = 34, VSB_CHERY_RUIHU_1 = 35, VSB_CHERY_RUIHU_2 = 36, VSB_CHERY_RUIHU_3 = 37, VSB_CHERY_RUIHU_4 = 38, VSB_CHERY_RUIHU_5 = 39, VSB_CHERY_FENGYUN2SANXIANG_1 = 40, VSB_CHERY_AIRUIZE7_1 = 41 }VSB_CHERY_CLASS; typedef enum _VSB_KIA_CLASS { VSB_KIA_OTHER = 0, VSB_KIA_K2 = 1, VSB_KIA_K3 = 2, VSB_KIA_K5 = 3, VSB_KIA_RIO = 4, VSB_KIA_CERATO = 5, VSB_KIA_SPORTAGER = 6, VSB_KIA_SOUL = 7, VSB_KIA_ZHIPAO = 8, VSB_KIA_CARENS = 9, VSB_KIA_CARNIVAL = 10, VSB_KIA_OPTIMA = 11, VSB_KIA_OPIRUS = 12, VSB_KIA_MAXIMA = 13, VSB_KIA_FORTE = 14, VSB_KIA_SORENTO = 15, VSB_KIA_K2_1 = 16, VSB_KIA_K3_1 = 17, VSB_KIA_K5_1 = 18, VSB_KIA_RUIOU_1 = 19, VSB_KIA_QIANLIMA_1 = 20, VSB_KIA_QIANLIMA_2 = 21, VSB_KIA_JIAHUA_1 = 22, VSB_KIA_XINJIALE_1 = 23, VSB_KIA_ZHIPAO_1 = 24, VSB_KIA_SHIPAO_1 = 25, VSB_KIA_SHIPAO_2 = 26, VSB_KIA_SHIPAO_3 = 27, VSB_KIA_SHIPAO_4 = 28, VSB_KIA_FURUIDI_1 = 29, VSB_KIA_FURUIDI_2 = 30, VSB_KIA_XIUER_1 = 31, VSB_KIA_SUOLANTUO_1 = 32, VSB_KIA_SUOLANTUO_2 = 33, VSB_KIA_SAILATU_1 = 34, VSB_KIA_SAILATU_2 = 35, VSB_KIA_SAILATU_3 = 36, VSB_KIA_YUANJIAN_1 = 37 }VSB_KIA_CLASS; typedef enum _VSB_BENZ_CLASS { VSB_BENZ_OTHER = 0, VSB_BENZ_C = 1, VSB_BENZ_E = 2, VSB_BENZ_GLK = 3, VSB_BENZ_WEITING = 4, VSB_BENZ_SPRINTER = 5, VSB_BENZ_VIANO = 6, VSB_BENZ_M = 7, VSB_BENZ_CLK = 8, VSB_BENZ_G = 9, VSB_BENZ_GL = 10, VSB_BENZ_R = 11, VSB_BENZ_S = 12, VSB_BENZ_A = 13, VSB_BENZ_SMART = 14, VSB_BENZ_B = 15, VSB_BENZ_SLK = 16, VSB_BENZ_MB100 = 17, VSB_BENZ_VITO = 18, VSB_BENZ_CLS = 19, VSB_BENZ_SL = 20, VSB_BENZ_AJI_1 = 21, VSB_BENZ_AJI_2 = 22, VSB_BENZ_BJI_1 = 23, VSB_BENZ_CJI_1 = 24, VSB_BENZ_CJI_2 = 25, VSB_BENZ_CJI_3 = 26, VSB_BENZ_EJI_1 = 27, VSB_BENZ_EJI_2 = 28, VSB_BENZ_EJI_3 = 29, VSB_BENZ_EJI_4 = 30, VSB_BENZ_GLKJI_1 = 31, VSB_BENZ_GLKJI_2 = 32, VSB_BENZ_GLKJI_3 = 33, VSB_BENZ_GLJI_1 = 34, VSB_BENZ_GLJI_2 = 35, VSB_BENZ_GLJI_3 = 36, VSB_BENZ_GJI_1 = 37, VSB_BENZ_MB100_1 = 38, VSB_BENZ_MLJI_1 = 39, VSB_BENZ_MLJI_2 = 40, VSB_BENZ_MLJI_3 = 41, VSB_BENZ_RJI_1 = 42, VSB_BENZ_RJI_2 = 43, VSB_BENZ_RJI_3 = 44, VSB_BENZ_SLKJI_2 = 45, VSB_BENZ_SLKJI_3 = 46, VSB_BENZ_SLKJI_1 = 47, VSB_BENZ_SJI_1 = 48, VSB_BENZ_SJI_2 = 49, VSB_BENZ_SJI_3 = 50, VSB_BENZ_SJI_4 = 51, VSB_BENZ_LINGTE_1 = 52, VSB_BENZ_WEIYANUO_1 = 53, VSB_BENZ_WEIYANUO_2 = 54, VSB_BENZ_WEITING_1 = 55, VSB_BENZ_KECHE_1 = 56 }VSB_BENZ_CLASS; typedef enum _VSB_SKODA_CLASS { VSB_SKODA_OTHER = 0, VSB_SKODA_HAORUI = 1, VSB_SKODA_FABIA = 2, VSB_SKODA_OCTAVIA = 3, VSB_SKODA_SUPERB = 4, VSB_SKODA_SPACEBACK = 5, VSB_SKODA_RAPID = 6, VSB_SKODA_YETI = 7, VSB_SKODA_HAORUI_1 = 8, VSB_SKODA_MINGRUI_1 = 9, VSB_SKODA_MINGRUI_2 = 10, VSB_SKODA_MINGRUI_3 = 11, VSB_SKODA_XINRUI_1 = 12, VSB_SKODA_JINGRUI_1 = 13, VSB_SKODA_JINGRUI_2 = 14, VSB_SKODA_JINGRUI_3 = 15, VSB_SKODA_SUPAI_1 = 16, VSB_SKODA_YEDI_1 = 17 }VSB_SKODA_CLASS; typedef enum _VSB_DONGFENG_CLASS { VSB_DONGFENG_OTHER = 0, VSB_DONGFENG_JOYEARX5 = 1, VSB_DONGFENG_LINGZHI = 2, VSB_DONGFENG_JOYEARX3 = 3, VSB_DONGFENG_JOYEAR = 4, VSB_DONGFENG_FENGXINGCM7 = 5, VSB_DONGFENG_YUFENG = 6, VSB_DONGFENG_FENGSHENA60 = 7, VSB_DONGFENG_FENGSHENS30 = 8, VSB_DONGFENG_FENGSHENH30CROSS = 9, VSB_DONGFENG_PICKUP = 10, VSB_DONGFENG_ZHONGXINGMIANBAOCHE = 11, VSB_DONGFENG_XIAOXINGMIANBAOCHE = 12, VSB_DONGFENG_ZHONGXINGVAN = 13, VSB_DONGFENG_QINGXINGXIANGSHIVAN = 14, VSB_DONGFENG_QINGZHONGXINGVAN = 15, VSB_DONGFENG_FENGSHENMERCURY = 16, VSB_DONGFENG_SUCCE = 17, VSB_DONGFENG_ODIN = 18, VSB_DONGFENG_YUMSUN = 19, VSB_DONGFENG_RUIQI = 20, VSB_DONGFENG_FENGGUANG = 21, VBR_DONGFENG_C35_1 = 22, VBR_DONGFENG_K07_1 = 23, VBR_DONGFENG_K07_2 = 24, VBR_DONGFENG_V21_1 = 25, VBR_DONGFENG_JIALONG_1 = 26, VBR_DONGFENG_XKFG_1 = 27, VBR_DONGFENG_CV03_1 = 28, VBR_DONGFENG_KAIPUTE_1 = 29, VBR_DONGFENG_DUOLIKA_1 = 30, VBR_DONGFENG_DUOLIKA_2 = 31, VBR_DONGFENG_DUOLIKA_3 = 32, VBR_DONGFENG_TIANJIN_1 = 33, VBR_DONGFENG_TIANJIN_2 = 34, VBR_DONGFENG_XBW_1 = 35, VBR_DONGFENG_XBW_2 = 36, VBR_DONGFENG_MENGKA_1 = 37, VBR_DONGFENG_FURUIKA_1 = 38, VBR_DONGFENG_RUIQI_1 = 39, VBR_DONGFENG_A60_1 = 40, VBR_DONGFENG_H30_1 = 41, VBR_DONGFENG_H30_2 = 42, VBR_DONGFENG_H30_3 = 43, VBR_DONGFENG_JINGYI_1 = 44, VBR_DONGFENG_JINGYI_2 = 45, VBR_DONGFENG_JINGYI_3 = 46, VBR_DONGFENG_LINGZHI_1 = 47, VBR_DONGFENG_LINGZHI_2 = 48, VBR_DONGFENG_LINGZHI_3 = 49, VBR_DONGFENG_LINGZHI_4 = 50, VBR_DONGFENG_LINGZHI_5 = 51 }VSB_DONGFENG_CLASS; typedef enum _VSB_BYD_CLASS { VSB_BYD_OTHER = 0, VSB_BYD_F0 = 1, VSB_BYD_F3 = 2, VSB_BYD_F3R = 3, VSB_BYD_F6 = 4, VSB_BYD_G3 = 5, VSB_BYD_G3R = 6, VSB_BYD_G6 = 7, VSB_BYD_L3 = 8, VSB_BYD_M6 = 9, VSB_BYD_S6 = 10, VSB_BYD_SURUI = 11, VSB_BYD_FOLEL = 12, VSB_BYD_SIRUI = 13, VSB_BYD_MT5 = 14, VSB_BYD_F0_1 = 15, VSB_BYD_F3R_1 = 16, VSB_BYD_F6_1 = 17, VSB_BYD_G3R_1 = 18, VSB_BYD_G6_1 = 19, VSB_BYD_L3_1 = 20, VSB_BYD_M6_1 = 21, VSB_BYD_S6_1 = 22, VSB_BYD_FULAIER_1 = 23, VSB_BYD_SURUI_1 = 24 }VSB_BYD_CLASS; typedef enum _VSB_SUZUKI_CLASS { VSB_SUZUKI_OTHER = 0, VSB_SUZUKI_ALTO = 1, VSB_SUZUKI_SCROSS = 2, VSB_SUZUKI_SWIFT = 3, VSB_SUZUKI_SX4 = 4, VSB_SUZUKI_LINGYANG = 5, VSB_SUZUKI_BEIDOUXING = 6, VSB_SUZUKI_LIANAA6 = 7, VSB_SUZUKI_LANDY = 8, VSB_SUZUKI_SPLASH = 9, VSB_SUZUKI_GRANDVITARA = 10, VSB_SUZUKI_JIMNY = 11, VSB_SUZUKI_KAZASHI = 12, VSB_SUZUKI_LIANA = 13, VSB_SUZUKI_LIANA_1 = 14, VSB_SUZUKI_LIANA_2 = 15, VSB_SUZUKI_BEIDOUXING_1 = 16, VSB_SUZUKI_BEIDOUXING_2 = 17, VSB_SUZUKI_BEIDOUXING_3 = 18, VSB_SUZUKI_BEIDOUXING_4 = 19, VSB_SUZUKI_JIMUNI_1 = 20, VSB_SUZUKI_JIMUNI_2 = 21, VSB_SUZUKI_SX4_1 = 22, VSB_SUZUKI_SX4_2 = 23, VSB_SUZUKI_SX4_3 = 24, VSB_SUZUKI_SX4_4 = 25, VSB_SUZUKI_SX4_5 = 26, VSB_SUZUKI_ALTO_1 = 27, VSB_SUZUKI_ALTO_2 = 28, VSB_SUZUKI_ALTO_3 = 29, VSB_SUZUKI_ALTO_4 = 30, VSB_SUZUKI_SPLASH_1 = 31, VSB_SUZUKI_LANDY_1 = 32, VSB_SUZUKI_LINGYANG_2 = 33, VSB_SUZUKI_LINGYANG_3 = 34, VSB_SUZUKI_LINGYANG_4 = 35, VSB_SUZUKI_LINGYANG_5 = 36, VSB_SUZUKI_GRANDVITARA_1 = 37, VSB_SUZUKI_FENGYU_1 = 38, VSB_SUZUKI_SWIFT_1 = 39, VSB_SUZUKI_SWIFT_2 = 40, VSB_SUZUKI_KINGCHANG_1 = 41, VSB_SUZUKI_LINGYANG_1 = 42 }VSB_SUZUKI_CLASS; typedef enum _VSB_SGMW_CLASS { VSB_SGMW_OTHER = 0, VSB_SGMW_HONGGUANG = 1, VSB_SGMW_HONGGUANGS = 2, VSB_SGMW_ZHIGUANG = 3, VSB_SGMW_RONGGUANGS = 4, VSB_SGMW_RONGGUANG = 5, VSB_SGMW_HONGTU = 6, VSB_SGMW_XINGWANG = 7, VSB_SGMW_YANGGUANG = 8, VSB_SGMW_XIAOXUANFENG = 9, VSB_SGMW_WULINGZHIGUANG_1 = 10, VSB_SGMW_WULINGZHIGUANG_2 = 11, VSB_SGMW_WULINGZHIGUANG_3 = 12, VSB_SGMW_XINGWANG_1 = 13, VSB_SGMW_XINGWANG_2 = 14, VSB_SGMW_XINGWANG_3 = 15, VSB_SGMW_HONNGUANG_1 = 16, VSB_SGMW_HONNGUANG_2 = 17, VSB_SGMW_XIAOXUANFENG_1 = 18, VSB_SGMW_YANGGUANG_1 = 19, VSB_SGMW_YANGGUANG_2 = 20, VSB_SGMW_YANGGUANG_3 = 21, VSB_SGMW_RONGGUANG_1 = 22, VSB_SGMW_RONGGUANG_2 = 23, VSB_SGMW_HONGTU_1 = 24 }VSB_SGMW_CLASS; typedef enum _VSB_CHANA_CLASS { VSB_CHANA_OTHER = 0, VSB_CHANA_HONOR = 1, VSB_CHANA_XINGKA = 2, VSB_CHANA_ZHIXING = 3, VSB_CHANA_PICKUP = 4, VSB_CHANA_ZHIXING2 = 5, VSB_CHANA_TAURUS = 6, VSB_CHANA_XINGGUANG = 7, VSB_CHANA_BENNI = 8, VSB_CHANA_ALSVIN = 9, VSB_CHANA_CX20 = 10, VSB_CHANA_CX30 = 11, VSB_CHANA_EADO = 12, VSB_CHANA_ZHIXINGS460 = 13, VSB_CHANA_CM8 = 14, VSB_CHANA_XINBAO = 15, VSB_CHANA_XUNLONG = 16, VSB_CHANA_YUNTONG = 17, VSB_CHANA_LEIMENG = 18, VSB_CHANA_XINGYUN = 19, VSB_CHANA_OULIWEI = 20, VSB_CHANA_EADOXT = 21, VSB_CHANA_XINGYUN_1 = 22, VSB_CHANA_OULIWEI_1 = 23, VSB_CHANA_YUNTONG_1 = 24, VSB_CHANA_TAURUS_1 = 25, VSB_CHANA_LEIMENG_1 = 26, VSB_CHANA_ZHIXING_1 = 27, VSB_CHANA_ZHIXING_2 = 28, VSB_CHANA_ZHIXING_3 = 29, VSB_CHANA_ZHIXING_4 = 30, VSB_CHANA_ZHIXING_5 = 31, VSB_CHANA_ZHIXING_6 = 32, VSB_CHANA_PICKUP_1 = 33, VSB_CHANA_XINGGUANG_1 = 34, VSB_CHANA_XINGGUANG_2 = 35, VSB_CHANA_HONOR_1 = 36 }VSB_CHANA_CLASS; typedef enum _VSB_EADO_CLASS { VSB_EADO_OTHER = 0, VSB_EADO_CS_1 = 1, VSB_EADO_CX_1 = 2, VSB_EADO_CX_2 = 3, VSB_EADO_BENBEN_1 = 4, VSB_EADO_BENBEN_2 = 5, VSB_EADO_BENBEN_3 = 6, VSB_EADO_BENBEN_4 = 7, VSB_EADO_BENBEN_5 = 8, VSB_EADO_YUEXIANG_1 = 9, VSB_EADO_YUEXIANG_2 = 10, VSB_EADO_YUEXIANG_3 = 11, VSB_EADO_YUEXIANG_4 = 12, VSB_EADO_YIDONG_1 = 13 }VSB_EADO_CLASS; typedef enum _VSB_JINBEI_CLASS { VSB_JINBEI_OTHER = 0, VSB_JINBEI_GRACE = 1, VSB_JINBEI_HIACE = 2, VSB_JINBEI_HAIXING = 3, VSB_JINBEI_BADAO = 4, VSB_JINBEI_LINGQI = 5, VSB_JINBEI_JINQI = 6, VSB_JINBEI_LINGCHI = 7, VSB_JINBEI_QIYUN = 8, VSB_JINBEI_ZHISHANG_1 = 9, VSB_JINBEI_HAIXING_1 = 10, VSB_JINBEI_HAIXING_2 = 11, VSB_JINBEI_HIACE_1 = 12, VSB_JINBEI_HIACE_2 = 13, VSB_JINBEI_HIACE_3 = 14, VSB_JINBEI_JINDIAN_1 = 15, VSB_JINBEI_GRACE_1 = 16, VSB_JINBEI_GRACE_2 = 17, VSB_JINBEI_BADAO_1 = 18 }VSB_JINBEI_CLASS; typedef enum _VSB_GEELY_CLASS { VSB_GEELY_OTHER = 0, VSB_GEELY_EC7 = 1, VSB_GEELY_EC8 = 2, VSB_GEELY_SC3 = 3, VSB_GEELY_SC5RV = 4, VSB_GEELY_SC6 = 5, VSB_GEELY_JINGYING = 6, VSB_GEELY_JINGGANG = 7, VSB_GEELY_SX7 = 8, VSB_GEELY_HAOQING = 9, VSB_GEELY_MEIRI = 10, VSB_GEELY_YINGLUNSC7 = 11, VSB_GEELY_PANDA = 12, VSB_GEELY_YUANJING = 13, VSB_GEELY_ZIYOUJIAN = 14 }VSB_GEELY_CLASS; typedef enum _VSB_MITSUBISHI_CLASS { VSB_MITSUBISHI_OTHER = 0, VSB_MITSUBISHI_GALANT = 1, VSB_MITSUBISHI_ZINGER = 2, VSB_MITSUBISHI_LANCER = 3, VSB_MITSUBISHI_LANCEREX = 4, VSB_MITSUBISHI_PAJERO = 5, VSB_MITSUBISHI_PAJEROSPORT = 6, VSB_MITSUBISHI_JINGXUANASX = 7, VSB_MITSUBISHI_GRANDIS = 8, VSB_MITSUBISHI_OUTLANDER = 9, VSB_MITSUBISHI_QINXINGYUEYE = 10, VSB_MITSUBISHI_GTO = 11, VSB_MITSUBISHI_SOVERAN = 12, VSB_MITSUBISHI_LIONVEL = 13, VSB_MITSUBISHI_HAFEISIMBO = 14, VSB_MITSUBISHI_LANCEREX_1 = 15, VSB_MITSUBISHI_JINGXUAN_1 = 16, VSB_MITSUBISHI_ZINGER_1 = 17, VSB_MITSUBISHI_PAJERO_1 = 18, VSB_MITSUBISHI_PAJERO_2 = 19, VSB_MITSUBISHI_PAJERO_3 = 20, VSB_MITSUBISHI_PAJEROSPORT_1 = 21, VSB_MITSUBISHI_GALANT_1 = 22, VSB_MITSUBISHI_GALANDI_1 = 23, VSB_MITSUBISHI_GALANDI_2 = 24, VSB_MITSUBISHI_OUTLANDER_1 = 25, VSB_MITSUBISHI_OUTLANDER_2 = 26, VSB_MITSUBISHI_LINGYUE_1 = 27, VSB_MITSUBISHI_LANCER_1 = 28 }VSB_MITSUBISHI_CLASS; typedef enum _VSB_LEXUS_CLASS { VSB_LEXUS_OTHER = 0, VSB_LEXUS_ES = 1, VSB_LEXUS_CT = 2, VSB_LEXUS_RX = 3, VSB_LEXUS_IS = 4, VSB_LEXUS_LX = 5, VSB_LEXUS_GS = 6, VSB_LEXUS_GX = 7, VSB_LEXUS_LS = 8, VSB_LEXUS_CT_1 = 9, VSB_LEXUS_ES_1 = 10, VSB_LEXUS_ES_2 = 11, VSB_LEXUS_ES_3 = 12, VSB_LEXUS_GS_1 = 13, VSB_LEXUS_GX_1 = 14, VSB_LEXUS_IS_1 = 15, VSB_LEXUS_LS_1 = 16, VSB_LEXUS_LS_2 = 17, VSB_LEXUS_LS_3 = 18, VSB_LEXUS_LX_1 = 19, VSB_LEXUS_RX_1 = 20, VSB_LEXUS_RX_2 = 21, VSB_LEXUS_RX_3 = 22 }VSB_LEXUS_CLASS; typedef enum _VSB_ROEWE_CLASS { VSB_ROEWE_OTHER = 0, VSB_ROEWE_350 = 1, VSB_ROEWE_550 = 2, VSB_ROEWE_W5 = 3, VSB_ROEWE_950 = 4, VSB_ROEWE_750 = 5, VSB_ROEWE_350_1 = 6, VSB_ROEWE_350_2 = 7, VSB_ROEWE_550_1 = 8, VSB_ROEWE_750_1 = 9, VSB_ROEWE_750_2 = 10, VSB_ROEWE_950_1 = 11 }VSB_ROEWE_CLASS; typedef enum _VSB_HAIMA_CLASS { VSB_HAIMA_OTHER = 0, VSB_HAIMA_PREMARIN = 1, VSB_HAIMA_S7 = 2, VSB_HAIMA_PRINCE = 3, VSB_HAIMA_CUPID = 4, VSB_HAIMA_HATCHBACK = 5, VSB_HAIMA_KNIGHT = 6, VSB_HAIMA_HAPPIN = 7, VSB_HAIMA_FAMILY = 8, VSB_HAIMA_M3 = 9, VSB_HAIMA_CUPID_1 = 10, VSB_HAIMA_PREMARIN_1 = 11, VSB_HAIMA_PREMARIN_2 = 12, VSB_HAIMA_HATCHBACK_1 = 13, VSB_HAIMA_HAPPIN_1 = 14, VSB_HAIMA_HAPPIN_2 = 15, VSB_HAIMA_M3_1 = 16, VSB_HAIMA_FAMILY_1 = 17, VSB_HAIMA_FAMILY_2 = 18, VSB_HAIMA_FAMILY_3 = 19, VSB_HAIMA_FAMILY_4 = 20, VSB_HAIMA_KNIGHT_1 = 21, VSB_HAIMA_KNIGHT_2 = 22, VSB_HAIMA_NEWHONGDA_1 = 23, VSB_HAIMA_NEWHONDGA_2 = 24, VSB_HAIMA_PRINCE_1 = 25, VSB_HAIMA_RONGDA_1 = 26 }VSB_HAIMA_CLASS; typedef enum _VSB_GREATWALL_CLASS { VSB_GREATWALL_OTHER = 0, VSB_GREATWALL_SING = 1, VSB_GREATWALL_SAIJUN = 2, VSB_GREATWALL_HAVAL = 3, VSB_GREATWALL_SAFE = 4, VSB_GREATWALL_SAIKU = 5, VSB_GREATWALL_SAILING = 6, VSB_GREATWALL_KINGDEER = 7, VSB_GREATWALL_DEER = 8, VSB_GREATWALL_WINGLE = 9, VSB_GREATWALL_COOLBEAR = 10, VSB_GREATWALL_LINGAO = 11, VSB_GREATWALL_CROSS = 12, VSB_GREATWALL_GWPERI = 13, VSB_GREATWALL_COWRY = 14, VSB_GREATWALL_M4 = 15, VSB_GREATWALL_LINGAO_1 = 16, VSB_GREATWALL_HAVAL_1 = 17, VSB_GREATWALL_HAVAL_2 = 18, VSB_GREATWALL_HAVAL_3 = 19, VSB_GREATWALL_HAVAL_4 = 20, VSB_GREATWALL_HAVAL_5 = 21, VSB_GREATWALL_HAVAL_6 = 22, VSB_GREATWALL_HAVAL_8 = 23, VSB_GREATWALL_HAVAL_9 = 24, VSB_GREATWALL_HAVAL_10 = 25, VSB_GREATWALL_HAVAL_11 = 26, VSB_GREATWALL_HAVAL_12 = 27, VSB_GREATWALL_CROSS_1 = 28, VSB_GREATWALL_CROSS_2 = 29, VSB_GREATWALL_JINGLING_1 = 30, VSB_GREATWALL_SING_1 = 31, VSB_GREATWALL_SAIKU_1 = 32, VSB_GREATWALL_SAILING_1 = 33, VSB_GREATWALL_DIER_1 = 34, VSB_GREATWALL_COOLBEAR_1 = 35, VSB_GREATWALL_KINGDEER_1 = 36, VSB_GREATWALL_GREATWALL_1 = 37, VSB_GREATWALL_GREATWALL_2 = 38, VSB_GREATWALL_GREATWALL_3 = 39, VSB_GREATWALL_GREATWALL_4 = 40, VSB_GREATWALL_GREATWALL_5 = 41, VSB_GREATWALL_GREATWALL_6 = 42, VSB_GREATWALL_WINGLE_1 = 43, VSB_GREATWALL_WINGLE_2 = 44, VSB_GREATWALL_HAVAL_7 = 45 }VSB_GREATWALL_CLASS; typedef enum _VSB_DS_CLASS { VSB_DS_OTHER = 0, VSB_DS_KUBO_1 = 1, VSB_DS_KUWEI_1 = 2, VSB_DS_KUWEI_2 = 3 }VSB_DS_CLASS; typedef enum _VSB_LANDROVER_CLASS { VSB_LANDROVER_OTHER = 0, VSB_LANDROVER_FAXIAN_1 = 1, VSB_LANDROVER_FAXIAN_2 = 2, VSB_LANDROVER_LANSHENG_1 = 3, VSB_LANDROVER_LANSHENG_2 = 4, VSB_LANDROVER_LANSHENG_3 = 5, VSB_LANDROVER_LANSHENG_4 = 6, VSB_LANDROVER_SXZ_1 = 7 }VSB_LANDROVER_CLASS; typedef enum _VSB_MG_CLASS { VSB_MG_OTHER = 0, VSB_MG_3SW_1 = 1, VSB_MG_MG3_1 = 2, VSB_MG_MG5_1 = 3, VSB_MG_MG6_1 = 4, VSB_MG_MG7_1 = 5, }VSB_MG_CLASS; typedef enum _VSB_FAW_CLASS { VSB_FAW_OTHER = 0, VSB_FAW_501_1 = 1, VSB_FAW_N3_1 = 2, VSB_FAW_N3_2 = 3, VSB_FAW_JIABAO_1 = 4, VSB_FAW_JIABAO_2 = 5, VSB_FAW_JIABAO_3 = 6, VSB_FAW_JIABAO_4 = 7, VSB_FAW_JIABAO_5 = 8, VSB_FAW_JIABAO_6 = 9, VSB_FAW_JIABAO_7 = 10, VSB_FAW_XIALI_1 = 11, VSB_FAW_XIALI_2 = 12, VSB_FAW_XIALI_3 = 13, VSB_FAW_XIALI_4 = 14, VSB_FAW_XIALI_5 = 15, VSB_FAW_XIALI_6 = 16, VSB_FAW_AOWEI_1 = 17, VSB_FAW_AOWEI_2 = 18, VSB_FAW_AOWEI_3 = 19, VSB_FAW_AOWEI_4 = 20, VSB_FAW_AOXING_1 = 21, VSB_FAW_WEILE_1 = 22, VSB_FAW_WEILE_2 = 23, VSB_FAW_WEIZI_1 = 24, VSB_FAW_WEIZHI_1 = 25, VSB_FAW_WEIZHI_2 = 26, VSB_FAW_WEIZHI_3 = 27, VSB_FAW_WEIZHI_4 = 28, VSB_FAW_WEIZHI_5 = 29, VSB_FAW_XIAOJIEFANG_1 = 30, VSB_FAW_HANWEI_1 = 31, VSB_FAW_HANWEI_2 = 32, VSB_FAW_HANWEI_3 = 33, VSB_FAW_XINDAWEI_1 = 34, VSB_FAW_XINHANWEI_1 = 35, VSB_FAW_SENYA_1 = 36, VSB_FAW_TENGWEI_1 = 37, VSB_FAW_JIEFANG_1 = 38, VSB_FAW_JIEFANG_2 = 39, VSB_FAW_JIEFANG_3 = 40, VSB_FAW_JIEFANG_4 = 41, VSB_FAW_JIEFANG_5 = 42, VSB_FAW_JIEFANG_6 = 43, VSB_FAW_SAILONG_1 = 44, VSB_FAW_JUNWEI_1 = 45, VSB_FAW_B50_1 = 46, VSB_FAW_B50_2 = 47 }VSB_FAW_CLASS; typedef enum _VSB_SAICMOTOR_CLASS { VSB_SAICMOTOR_OTHER = 0, VSB_HONGYAN_JIESHI_1 = 1, VSB_DATONG_V80_1 = 2 }VSB_SAICMOTOR_CLASS; typedef enum _VSB_SOUEAST_CLASS { VSB_SOUEAST_OTHER = 0, VSB_SOUEAST_V3_1 = 1, VSB_SOUEAST_V3_2 = 2, VSB_SOUEAST_V3_3 = 3, VSB_SOUEAST_V3_4 = 4, VSB_SOUEAST_V5_1 = 5, VSB_SOUEAST_XIWANG_1 = 6, VSB_SOUEAST_DELIKA_1 = 7, VSB_SOUEAST_DELIKA_2 = 8, VSB_SOUEAST_DELIKA_3 = 9, VSB_SOUEAST_DELIKA_4 = 10, VSB_SOUEAST_LINGSHUAI_1 = 11, VSB_SOUEAST_FULIKA_1 = 12, VSB_SOUEAST_FULIKA_2 = 13 }VSB_SOUEAST_CLASS; typedef enum _VSB_ZTE_CLASS { VSB_ZTE_OTHER = 0, VSB_ZTE_WEIHU_1 = 1, VSB_ZTE_WEIHU_2 = 2, VSB_ZTE_WUXIAN_1 = 3, VSB_ZTE_WUXIAN_2 = 4 }VSB_ZTE_CLASS; typedef enum _VSB_ZHONGHUA_CLASS { VSB_ZHONGHUA_OTHER = 0, VSB_ZHONGHUA_H230_1 = 1, VSB_ZHONGHUA_H320_1 = 2, VSB_ZHONGHUA_H330_1 = 3, VSB_ZHONGHUA_H530_1 = 4, VSB_ZHONGHUA_V5_1 = 5, VSB_ZHONGHUA_ZUNCHI_1 = 6, VSB_ZHONGHUA_ZUNCHI_2 = 7, VSB_ZHONGHUA_KUBAO_1 = 8, VSB_ZHONGHUA_JUNJIE_1 = 9, VSB_ZHONGHUA_JUNJIE_2 = 10, VSB_ZHONGHUA_JUNJIECROSS_1 = 11, VSB_ZHONGHUA_JUNJIEFRV_1 = 12, VSB_ZHONGHUA_JUNJIEFRV_2 = 13, VSB_ZHONGHUA_JUNJIEFSV_1 = 14, VSB_ZHONGHUA_JUNJIEFSV_2 = 15, VSB_ZHONGHUA_JUNJIEFSV_3 = 16 }VSB_ZHONGHUA_CLASS; typedef enum _VSB_CNHTC_CLASS { VSB_CNHTC_OTHER = 0, VSB_CNHTC_HOKA_2 = 1, VSB_CNHTC_HOWO_1 = 2, VSB_CNHTC_HOWO_2 = 3, VSB_CNHTC_HOWO_3 = 4, VSB_CNHTC_HOWO_4 = 5, VSB_CNHTC_HOWO_5 = 6, VSB_CNHTC_HOWO_6 = 7, VSB_CNHTC_HOWO_7 = 8, VSB_CNHTC_HOWO_8 = 9, VSB_CNHTC_SITAIERWANG_1 = 10, VSB_CNHTC_HAOHAN_1 = 11, VSB_CNHTC_HAOYUN_1 = 12, VSB_CNHTC_JINWANGZI_1 = 13, VSB_CNHTC_HOKA_1 = 14 }VSB_CNHTC_CLASS; typedef enum _VSB_ZHONGTONG_CLASS { VSB_ZHONGTONG_OTHER = 0, VSB_ZHONGTONG_KAICHI_1 = 1, VSB_ZHONGTONG_LINGYU_1 = 2, VSB_ZHONGTONG_LINGXIU_1 = 3, VSB_ZHONGTONG_LINGHANG_1 = 4, VSB_ZHONGTONG_SHIJI_1 = 5, VSB_ZHONGTONG_KAIXUAN_1 = 6, VSB_ZHONGTONG_LINGYUN_1 = 7, VSB_ZHONGTONG_YANGGUANG_1 = 8 }VSB_ZHONGTONG_CLASS; typedef enum _VSB_JIULONG_CLASS { VSB_JIULONG_OTHER = 0, VSB_JIULONG_JIULONGA5_1 = 1, }VSB_JIULONG_CLASS; typedef enum _VSB_ZOTYE_CLASS { VSB_ZOTYE_OTHER = 0, VSB_ZOTYE_2008_2 = 1, VSB_ZOTYE_5008_1 = 2, VSB_ZOTYE_Z300_1 = 3, VSB_ZOTYE_2008_1 = 4 }VSB_ZOTYE_CLASS; typedef enum _VSB_NAVECO_CLASS { VSB_NAVECO_OTHER = 0, VSB_NAVECO_Daily_1 = 1, VSB_NAVECO_Power_1 = 2, VSB_NAVECO_Turbo_1 = 3, VSB_NAVECO_Venice_1 = 4, VSB_NAVECO_BAODI_1 = 5, VSB_NAVECO_DEYIHUOCHE_1 = 6, VSB_NAVECO_DULING_1 = 7 }VSB_NAVECO_CLASS; typedef enum _VSB_PORSCHE_CLASS { VSB_PORSCHE_OTHER = 0, VBR_PORSCHE_PANAMERA_1 = 1, VBR_PORSCHE_CAYENNE_1 = 2, }VSB_PORSCHE_CLASS; typedef enum _VSB_CHRYSLER_CLASS { VSB_CHRYSLER_OTHER = 0, VSB_CHRYSLER_300C_1 = 1, VSB_CHRYSLER_PTMANBUZHE_1 = 2, }VSB_CHRYSLER_CLASS; typedef enum _VSB_CADILLAC_CLASS { VSB_CADILLAC_OTHER = 0, VSB_CADILLAC_ATS_1 = 1, VSB_CADILLAC_CTS_1 = 2, VSB_CADILLAC_CTS_3 = 3, VSB_CADILLAC_SLS_1 = 4, VSB_CADILLAC_SLS_2 = 5, VSB_CADILLAC_SRX_1 = 6, VSB_CADILLAC_CTS_2 = 7, VSB_CADILLAC_KAILEIDE_1 = 8 }VSB_CADILLAC_CLASS; typedef enum _VSB_KAMA_CLASS { VSB_KAMA_OTHER = 0, VSB_KAMA_QINGKA_2 = 1, VSB_KAMA_FULAIKA_1 = 2, VSB_KAMA_JINYUNKA_1 = 3, VSB_KAMA_JUNWEIKA_1 = 4, VSB_KAMA_QINGKA_1 = 5 }VSB_KAMA_CLASS; typedef enum _VSB_LIFAN_CLASS { VSB_LIFAN_OTHER = 0, VSB_LIFAN_320_1 = 1, VSB_LIFAN_520_1 = 2, VSB_LIFAN_520_2 = 3, VSB_LIFAN_620_1 = 4, VSB_LIFAN_X60_1 = 5, VSB_LIFAN_FENGSHUN_1 = 6 }VSB_LIFAN_CLASS; typedef enum _VSB_BEIJING_CLASS { VSB_BEIJING_OTHER = 0, VSB_BEIJING_E_1 = 1, }VSB_BEIJING_CLASS; typedef enum _VSB_BEIBEN_CLASS { VSB_BEIBEN_OTHER = 0, VSB_BEIBEN_NG80_1 = 1, VSB_BEIBEN_NG80_2 = 2, VSB_BEIBEN_NG80_3 = 3, VSB_BEIBEN_V3_1 = 4, VSB_BEIBEN_V3_2 = 5 }VSB_BEIBEN_CLASS; typedef enum _VSB_BEIFANG_CLASS { VSB_BEIFANG_OTHER = 0, VSB_BEIFANG_A_1 = 1 }VSB_BEIFANG_CLASS; typedef enum _VSB_BAW_CLASS { VSB_BAW_OTHER = 0, VSB_BAW_YUSHENG007_1 = 1, VSB_BAW_QILING_1 = 2, VSB_BAW_LUBA_1 = 3, VSB_BAW_QISHI_1 = 4 }VSB_BAW_CLASS; typedef enum _VSB_BQWEIWANG_CLASS { VSB_BQWEIWANG_OTHER = 0, VSB_BQWEIWANG_205_1 = 1, VSB_BQWEIWANG_306_1 = 2 }VSB_BQWEIWANG_CLASS; typedef enum _VSB_SMA_CLASS { VSB_SMA_OTHER = 0, VSB_SMA_HAIYU_1 = 1, VSB_SMA_HAIYU_2 = 2, VSB_SMA_HAISHANG_1 = 3, VSB_SMA_HAIJING_1 = 5, VSB_SMA_HAIXUN_1 = 4, VSB_SMA_HAIXUN_2 = 6, }VSB_SMA_CLASS; typedef enum _VSB_XINGMA_CLASS { VSB_XINGMA_OTHER = 0, VSB_XINGMA_XINGKAIMA_1 = 1 }VSB_XINGMA_CLASS; typedef enum _VSB_SHUANGHUAN_CLASS { VSB_SHUANGHUAN_OTHER = 0, VSB_SHUANGHUAN_SCEO_1 = 1, }VSB_SHUANGHUAN_CLASS; typedef enum _VSB_JEEP_CLASS { VSB_JEEP_OTHER = 0, VSB_JEEP_DAQIENUOJI_1 = 1, VSB_JEEP_DAQIENUOJI_2 = 2, VSB_JEEP_ZHINANZHE_1 = 3, VSB_JEEP_ZHINANZHE_2 = 4, VSB_JEEP_MUMAREN_1 = 5, VSB_JEEP_MUMAREN_2 = 6, VSB_JEEP_ZIYOUKE = 7, }VSB_JEEP_CLASS; typedef enum _VSB_VENUCIA_CLASS { VSB_VENUCIA_OTHER = 0, VSB_VENUCIA_D50_1 = 1 }VSB_VENUCIA_CLASS; typedef enum _VSB_HAFEI_CLASS { VSB_HAFEI_OTHER = 0, VSB_HAFEI_XINMINYI_1 = 1, VSB_HAFEI_XINMINYI_2 = 2, VSB_HAFEI_MINYI_1 = 3, VSB_HAFEI_MINYI_2 = 4, VSB_HAFEI_SAIBAO_1 = 5, VSB_HAFEI_SAIMA_1 = 6, VSB_HAFEI_SAIMA_2 = 7, VSB_HAFEI_SAIMA_3 = 8, VSB_HAFEI_LUBAO_1 = 9, VSB_HAFEI_LUBAO_2 = 10, VSB_HAFEI_LUBAO_3 = 11, VSB_HAFEI_LUZUNXIAOBAWANG_1 = 12, VSB_HAFEI_RUIYI_1 = 13, VSB_HAFEI_JUNYI_1 = 14 }VSB_HAFEI_CLASS; typedef enum _VSB_TKING_CLASS { VSB_TKING_OTHER = 0, VSB_TKING_OUGUAN_1 = 1, VSB_TKING_OUGUAN_2 = 2, VSB_TKING_OUTENG_1 = 3, VSB_TKING_FUXING_1 = 4, VSB_TKING_QINGKAWANG_1 = 5, VSB_TKING_AFANDA_1 = 6, VSB_TKING_JUNQI_1 = 7 }VSB_TKING_CLASS; typedef enum _VSB_DAEWOO_CLASS { VSB_DAEWOO_OTHER = 0, VBR_DAEWOO_6960H3_1 = 1 }VSB_DAEWOO_CLASS; typedef enum _VSB_DAYUN_CLASS { VSB_DAYUN_OTHER = 0, VBR_DAYUN_ZHONGKA_1 = 1 }VSB_DAYUN_CLASS; typedef enum _VSB_BESTURN_CLASS { VSB_BESTURN_OTHER = 0, VSB_BESTURN_B70_1 = 1, VSB_BESTURN_B70_2 = 2, VSB_BESTURN_B70_3 = 3, VSB_BESTURN_B70_4 = 4, VSB_BESTURN_B90_1 = 5, VSB_BESTURN_AOXING_1 = 6 }VSB_BESTURN_CLASS; typedef enum _VSB_WEILIN_CLASS { VSB_WEILIN_OTHER = 0, VSB_WEILIN_H3_1 = 1, VSB_WEILIN_V5_1 = 2, VSB_WEILIN_X5_1 = 3 }VSB_WEILIN_CLASS; typedef enum _VSB_YUTONG_CLASS { VSB_YUTONG_OTHER = 0, VSB_YUTONG_8XI_1 = 1, VSB_YUTONG_KECHE_1 = 2, VSB_YUTONG_KECHE_3 = 3, VSB_YUTONG_KECHE_4 = 4, VSB_YUTONG_KECHE_5 = 5, VSB_YUTONG_KECHE_2 = 6 }VSB_YUTONG_CLASS; typedef enum _VSB_ANKAI_CLASS { VSB_ANKAI_OTHER = 0, VSB_ANKAI_KECHE_1 = 1, VSB_ANKAI_KECHE_2 = 2 }VSB_ANKAI_CLASS; typedef enum _VSB_BAOJUN_CLASS { VSB_BAOJUN_OTHER = 0, VSB_BAOJUN_630_1 = 1 }VSB_BAOJUN_CLASS; typedef enum _VSB_BINLI_CLASS { VSB_BINLI_OTHER = 0, VSB_BINLI_OULU_1 = 1 }VSB_BINLI_CLASS; typedef enum _VSB_TRUMPCHE_CLASS { VSB_TRUMPCHE_OTHER = 0, VSB_TRUMPCHE_GA5_1 = 1, VSB_TRUMPCHE_GA5_2 = 3, VSB_TRUMPCHE_GS5_1 = 2 }VSB_TRUMPCHE_CLASS; typedef enum _VSB_GONOW_CLASS { VSB_GONOW_OTHER = 0, VSB_GONOW_G3_1 = 1, VSB_GONOW_G5_1 = 2, VSB_GONOW_SHUAIJIAN_1 = 4, VSB_GONOW_XINGWANGM1_1 = 3, VSB_GONOW_CAIYUN500_1 = 5 }VSB_GONOW_CLASS; typedef enum _VSB_ISUZU_CLASS { VSB_ISUZU_OTHER = 0, VSB_ISUZU_ZHONGXINGSHANGYONG_1 = 1, VSB_ISUZU_WUSHILINGPIKA_1 = 2, VSB_ISUZU_WUSHILINGPIKA_2 = 3, VSB_ISUZU_JINGJIZHE_1 = 4 }VSB_ISUZU_CLASS; typedef enum _VSB_KARRY_CLASS { VSB_KARRY_OTHER = 0, VSB_KARRY_YOU_2 = 1, VSB_KARRY_YOUJIN_1 = 2, VSB_KARRY_YOUSHENG_1 = 3, VSB_KARRY_YOUSHENG_2 = 4, VSB_KARRY_YOUYA = 5, VSB_KARRY_YOU_1 = 6 }VSB_KARRY_CLASS; typedef enum _VSB_GAGUAR_CLASS { VSB_GAGUAR_OTHER = 0, VSB_GAGUAR_XF_1 = 1, VSB_GAGUAR_XJ_1 = 2 }VSB_GAGUAR_CLASS; typedef enum _VSB_SUBARU_CLASS { VSB_SUBARU_OTHER = 0, VSB_SUBARU_AOHU_1 = 1, VSB_SUBARU_LISHI_1 = 2, VSB_SUBARU_LISHI_2 = 3, VSB_SUBARU_XV_1 = 4, VSB_SUBARU_SENLINREN_1 = 5, VSB_SUBARU_SENLINREN_2 = 6 }VSB_SUBARU_CLASS; typedef enum _VSB_ERA_CLASS { VSB_ERA_OTHER = 0, VSB_ERA_XIAOKA_1 = 1, VSB_ERA_XIAOKA_3 = 2, VSB_ERA_XIAOKA_4 = 3, VSB_ERA_KANGRUI_1 = 4, VSB_ERA_KANGRUI_2 = 5, VSB_ERA_KANGRUI_3 = 6, VSB_ERA_RUIWO_1 = 7, VSB_ERA_RUIWO_2 = 8, VSB_ERA_RUIWO_3 = 9, VSB_ERA_JINGANG = 10, VSB_ERA_LINGHANG_1 = 11, VSB_ERA_LINGHANG_2 = 12, VSB_ERA_YULING_1 = 13, VSB_ERA_YULING_2 = 14, VSB_ERA_YULING_3 = 15, VSB_ERA_YULING_4 = 17, VSB_ERA_XIAOKA_2 = 17, }VSB_ERA_CLASS; typedef enum _VSB_CHANGHE_CLASS { VSB_CHANGHE_OTHER = 0, VSB_CHANGHE_CH6321_1 = 1, VSB_CHANGHE_DANSHUANGPAI_1 = 2, VSB_CHANGHE_AIDIER_1 = 3, VSB_CHANGHE_AIDIER_2 = 4, VSB_CHANGHE_FURUIDA_1 = 5 }VSB_CHANGHE_CLASS; typedef enum _VSB_OPEL_CLASS { VSB_OPEL_OTHER = 0, VSB_OPEL_YATE_1 = 1 }VSB_OPEL_CLASS; typedef enum _VSB_JONWAY_CLASS { VSB_JONWAY_OTHER = 0, VSB_JONWAY_A380_1 = 1 }VSB_JONWAY_CLASS; typedef enum _VSB_JIANGNAN_CLASS { VSB_JIANGNAN_OTHER = 0, VSB_JIANGNAN_TT_1 = 1 }VSB_JIANGNAN_CLASS; typedef enum _VSB_GLEAGLE_CLASS { VSB_GLEAGLE_OTHER = 0, VSB_GLEAGLE_EAGLE_GC7_1 = 1, VSB_GLEAGLE_EAGLE_GX2_1 = 2, VSB_GLEAGLE_EAGLE_GX7_1 = 3, VSB_GLEAGLE_EAGLE_PANDA_1 = 4, VSB_GLEAGLE_EAGLE_ZIYOUJIAN_1 = 5, VSB_GLEAGLE_EAGLE_ZIYOUJIAN_2 = 6, VSB_GLEAGLE_EAGLE_ZIYOUJIAN_3 = 7, VSB_GLEAGLE_EAGLE_YUANJING_1 = 8, VSB_GLEAGLE_EAGLE_YUANJING_2 = 9, }VSB_GLEAGLE_CLASS; typedef enum _VSB_EMGRAND_CLASS { VSB_EMGRAND_OTHER = 0, VSB_EMGRAND_EC7_2 = 1, VSB_EMGRAND_EC7_3 = 2, VSB_EMGRAND_EC8_1 = 3, VSB_EMGRAND_EC7_1 = 4 }VSB_EMGRAND_CLASS; typedef enum _VSB_ENGLON_CLASS { VSB_ENGLON_OTHER = 0, VSB_ENGLON_SC3_1 = 1, VSB_ENGLON_SC5_1 = 2, VSB_ENGLON_SC6_1 = 3, VSB_ENGLON_SC7_1 = 4, VSB_ENGLON_SX7_1 = 5, VSB_ENGLON_JINGANG_1 = 6, VSB_ENGLON_JINYING_1 = 7 }VSB_ENGLON_CLASS; typedef enum _VSB_JAC_CLASS { VSB_JAC_OTHER = 0, VSB_JAC_TONGYUE_1 = 1, VSB_JAC_HEYUE_1 = 2, VSB_JAC_HEYUEA30_2 = 3, VSB_JAC_HEYUERS_3 = 4, VSB_JAC_HAOYUN_1 = 5, VSB_JAC_WEILING_2 = 6, VSB_JAC_WEILING_3 = 7, VSB_JAC_WEILING_4 = 8, VSB_JAC_KECHE_1 = 9, VSB_JAC_BINYUE_1 = 10, VSB_JAC_SHUAILING_2 = 11, VSB_JAC_KANGLING_1 = 12, VSB_JAC_KANGLING_2 = 13, VSB_JAC_YUEYUE_1 = 14, VSB_JAC_XINGRUI_1 = 15, VSB_JAC_GEERFA_H_1 = 16, VSB_JAC_GEERFA_K_2 = 17, VSB_JAC_GEERFA_K_3 = 18, VSB_JAC_GEERFA_M_4 = 19, VSB_JAC_RUIFENG_1 = 20, VSB_JAC_RUIFENG_2 = 21, VSB_JAC_RUIFENG_3 = 22, VSB_JAC_RUIFENG_4 = 23, VSB_JAC_RUIYING_1 = 24, VSB_JAC_RUIYING_2 = 25, VSB_JAC_JUNLING_2 = 26, VSB_JAC_WEILING_1 = 27, VSB_JAC_SHUAILING_1 = 28, VSB_JAC_RUILING_1 = 29, VSB_JAC_JUNLING_1 = 30 }VSB_JAC_CLASS; typedef enum _VSB_JMC_CLASS { VSB_JMC_OTHER = 0, VSB_JMC_KAIYUN_1 = 1, VSB_JMC_KAIYUN_2 = 2, VSB_JMC_YUHU_1 = 3, VSB_JMC_BAODIAN_1 = 4, VSB_JMC_BAODIAN_2 = 5, VSB_JMC_BAODIAN_3 = 6, VSB_JMC_BAOWEI_1 = 7, VSB_JMC_BAOWEI_2 = 8, VSB_JMC_QUANSHUN_1 = 9, VSB_JMC_QUANSHUN_2 = 10, VSB_JMC_QUANSHUN_3 = 11, VSB_JMC_SHUNDA_1 = 12, VSB_JMC_SHUNDA_2 = 13, VSB_JMC_YUSHENG_1 = 14, VSB_JMC_YUSHENG_2 = 15 }VSB_JMC_CLASS; typedef enum _VSB_VOLVO_CLASS { VSB_VOLVO_OTHER = 0, VSB_VOLVO_C30_1 = 1, VSB_VOLVO_S40_1 = 2, VSB_VOLVO_S60_1 = 3, VSB_VOLVO_S60_2 = 4, VSB_VOLVO_S80L_1 = 5, VSB_VOLVO_XC60_1 = 6, VSB_VOLVO_XC90_1 = 7 }VSB_VOLVO_CLASS; typedef enum _VSB_HIGER_CLASS { VSB_HIGER_OTHER = 0, VSB_HIGER_H8_1 = 1, VSB_HIGER_H92_1 = 2, VSB_HIGER_V7_1 = 3, VSB_HIGER_KECHE_1 = 4, VSB_HIGER_LONGWEI_1 = 5, VSB_HIGER_H7V_1 = 6 }VSB_HIGER_CLASS; typedef enum _VSB_RUILIN_CLASS { VSB_RUILIN_OTHER = 0, VSB_RUILIN_G3_1 = 1, VSB_RUILIN_G5_1 = 2, VSB_RUILIN_M1_1 = 3, VSB_RUILIN_X1_1 = 4, VSB_RUILIN_X1_2 = 5 }VSB_RUILIN_CLASS; typedef enum _VSB_SHENLONG_CLASS { VSB_SHENLON_OTHER = 0, VSB_SHENLONG_KECHE_1 = 1 }VSB_SHENLONG_CLASS; typedef enum _VSB_FOTON_CLASS { VSB_FOTON_OTHER = 0, VSB_FOTON_AOLING_1 = 1, VSB_FOTON_AOLING_2 = 2, VSB_FOTON_AOLING_3 = 3, VSB_FOTON_OUMAN_1 = 4, VSB_FOTON_OUMAN_2 = 5, VSB_FOTON_OUMAN_3 = 6, VSB_FOTON_OUMAN_4 = 7, VSB_FOTON_OUHUI_1 = 8, VSB_FOTON_OUMAKE_1 = 9, VSB_FOTON_OUMAKE_2 = 10, VSB_FOTON_SAPU_1 = 11, VSB_FOTON_SAPU_3 = 12, VSB_FOTON_MENGPAIKE_1 = 13, VSB_FOTON_MIDI_1 = 14, VSB_FOTON_FENGJING_1 = 15, VSB_FOTON_SAPU_2 = 16 }VSB_FOTON_CLASS; typedef enum _VSB_FODAY_CLASS { VSB_FODAY_OTHER = 0, VSB_FODAY_CHAOREN_1 = 1, VSB_FODAY_CHAOREN_2 = 2, VSB_FODAY_TANSUOZHE_1 = 3, VSB_FODAY_TANSUOZHE_2 = 4, VSB_FODAY_TANSUOZHE_3 = 5, VSB_FODAY_XIONGSHI_1 = 6 }VSB_FODAY_CLASS; typedef enum _VSB_HONGQI_CLASS { VSB_HONGQI_OTHER = 0, VSB_HONGQI_MINGSHI_1 = 1 }VSB_HONGQI_CLASS; typedef enum _VSB_LUXGEN_CLASS { VSB_LUXGEN_OTHER = 0, VSB_LUXGEN_DASEVEN_1 = 1 }VSB_LUXGEN_CLASS; typedef enum _VSB_XIALI_CLASS { VSB_XIALI_OTHER = 0, VSB_XIALI_QIBING_1 = 1, }VSB_XIALI_CLASS; typedef enum _VSB_SHUCHI_CLASS { VSB_SHUCHI_OTHER = 0, VSB_SHUCHI_A_1 = 1 }VSB_SHUCHI_CLASS; typedef enum _VSB_INFINITI_CLASS { VSB_INFINITI_OTHER = 0, VSB_INFINITI_EX_1 = 1, VSB_INFINITI_FX_1 = 2, VSB_INFINITI_FX_2 = 3, VSB_INFINITI_FX_3 = 4, VSB_INFINITI_G_1 = 5, VSB_INFINITI_JX_1 = 6 }VSB_INFINITI_CLASS; typedef enum _VSB_LOTUS_CLASS { VSB_LOTUS_OTHER = 0, VSB_LOTUS_L3_1 = 1, VSB_LOTUS_L3_2 = 2 }VSB_LOTUS_CLASS; typedef enum _VSB_FIAT_CLASS { VSB_FIAT_OTHER = 0, VSB_FIAT_FEIYUE_1 = 1 }VSB_FIAT_CLASS; typedef enum _VSB_OGA_CLASS { VSB_OGA_OTHER = 0, VSB_OGA_MDX_1 = 1, VSB_OGA_MDX_2 = 2 }VSB_OGA_CLASS; typedef enum _VSB_YUEJIN_CLASS { VSB_YUEJIN_OTHER = 0, VSB_YUEJIN_SHUAIHU_1 = 1, VSB_YUEJIN_CAISHEN_1 = 2, VSB_YUEJIN_CAISHEN_2 = 3, VSB_YUEJIN_CAISHEN_3 = 4 }VSB_YUEJIN_CLASS; typedef enum _VSB_YEMA_CLASS { VSB_YEMA_OTHER = 0, VSB_YEMA_F99_1 = 1 }VSB_YEMA_CLASS; typedef enum _VSB_SZKINGLONG_CLASS { VSB_SZKINGLONG_OTHER = 0, VSB_SZKINGLONG_BUS11_1 = 1, VSB_SZKINGLONG_BUS12_1 = 2, VSB_SZKINGLONG_BUS13_1 = 3, VSB_SZKINGLONG_BUS14_1 = 4, VSB_SZKINGLONG_BUS16_1 = 5, VSB_SZKINGLONG_BUS18_1 = 6, VSB_SZKINGLONG_BUS1_1 = 7, VSB_SZKINGLONG_BUS20_1 = 8, VSB_SZKINGLONG_BUS2_1 = 9, VSB_SZKINGLONG_BUS5_1 = 10, VSB_SZKINGLONG_BUS6_1 = 11, VSB_SZKINGLONG_BUS9_1 = 12, VSB_SZKINGLONG_BUS10_1 = 13, VSB_SZKINGLONG_BUS15_1 = 14 }VSB_SZKINGLONG_CLASS; typedef enum _VSB_CHANGFENG_CLASS { VSB_CHANGFENG_OTHER = 0, VSB_CHANGFENG_CS7_1 = 1, VSB_CHANGFENG_QIBING_1 = 2, VSB_CHANGFENG_LIEBAO_1 = 3, VSB_CHANGFENG_FULING_1 = 4, VSB_CHANGFENG_FEIYANG_1 = 5, VSB_CHANGFENG_FEITENG_1 = 6, VSB_CHANGFENG_BLACKJINGANG_1 = 7, }VSB_CHANGFENG_CLASS; typedef enum _VSB_LUFENG_CLASS { VSB_LUFENG_OTHER = 0, VSB_LUFENG_X6_1 = 1, VSB_LUFENG_X6_2 = 2, VSB_LUFENG_X6_3 = 3, VSB_LUFENG_LUFENGX5_1 = 4, VSB_LUFENG_LUFENGX8_1 = 5, VSB_LUFENG_LUFENGX8_2 = 6, VSB_LUFENG_FENGHUA_1 = 7, VSB_LUFENG_X6_4 = 8, VSB_LUFENG_FENGSHANG_1 = 9 }VSB_LUFENG_CLASS; typedef enum _VSB_SHANQI_CLASS { VSB_SHANQI_OTHER = 0, VSB_SHANQI_AOLONG_1 = 1, VSB_SHANQI_AOLONG_2 = 2, VSB_SHANQI_DELONG_1 = 3, VSB_SHANQI_DELONG_2 = 4, VSB_SHANQI_DELONG_3 = 5, }VSB_SHANQI_CLASS; typedef enum _VSB_RENAULT_CLASS { VSB_RENAULT_OTHER = 0, VSB_RENAULT_MEIGANNA_1 = 1, VSB_RENAULT_KELEIAO_1 = 2, VSB_RENAULT_KELEIAO_2 = 3, VSB_RENAULT_SCENE_1 = 4, VSB_RENAULT_FENGLANG_1 = 5, VSB_RENAULT_TAFEIKE_1 = 6 }VSB_RENAULT_CLASS; typedef enum _VSB_HUANGHAI_CLASS { VSB_HUANGHAI_OTHER = 0, VSB_HUANGHAI_DACAISHEN_1 = 1, VSB_HUANGHAI_DACAISHEN_2 = 2, VSB_HUANGHAI_BUS4_1 = 3, VSB_HUANGHAI_CHALLENGER_1 = 4, VSB_HUANGHAI_AOLONGCUV_1 = 5, VSB_HUANGHAI_AOJUN_1 = 6, VSB_HUANGHAI_AOJUN_2 = 7, VSB_HUANGHAI_QISHENGV3_1 = 8, VSB_HUANGHAI_LINGHANGZHE_1 = 9, VSB_HUANGHAI_FENGCHI_1 = 10 }VSB_HUANGHAI_CLASS; typedef struct tagNET_DVR_VEHICLE_INFO_ { DWORD dwIndex; BYTE byVehicleType; BYTE byColorDepth; BYTE byColor; BYTE byRadarState; WORD wSpeed; WORD wLength; BYTE byIllegalType; BYTE byVehicleLogoRecog; BYTE byVehicleSubLogoRecog; BYTE byVehicleModel; BYTE byCustomInfo[16]; WORD wVehicleLogoRecog; BYTE byIsParking; BYTE byRes; DWORD dwParkingTime; BYTE byRes3[8]; }NET_DVR_VEHICLE_INFO, *LPNET_DVR_VEHICLE_INFO; typedef struct tagNET_DVR_PLATE_RESULT { DWORD dwSize; BYTE byResultType; BYTE byChanIndex; WORD wAlarmRecordID; DWORD dwRelativeTime; BYTE byAbsTime[32]; DWORD dwPicLen; DWORD dwPicPlateLen; DWORD dwVideoLen; BYTE byTrafficLight; BYTE byPicNum; BYTE byDriveChan; BYTE byVehicleType; DWORD dwBinPicLen; DWORD dwCarPicLen; DWORD dwFarCarPicLen; BYTE *pBuffer3; BYTE *pBuffer4; BYTE *pBuffer5; BYTE byRelaLaneDirectionType; BYTE byCarDirectionType; BYTE byRes3[6]; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; BYTE *pBuffer1; BYTE *pBuffer2; }NET_DVR_PLATE_RESULT, *LPNET_DVR_PLATE_RESULT; typedef struct tagNET_DVR_IMAGEOVERLAYCFG { DWORD dwSize; BYTE byOverlayInfo; BYTE byOverlayMonitorInfo; BYTE byOverlayTime; BYTE byOverlaySpeed; BYTE byOverlaySpeeding; BYTE byOverlayLimitFlag; BYTE byOverlayPlate; BYTE byOverlayColor; BYTE byOverlayLength; BYTE byOverlayType; BYTE byOverlayColorDepth; BYTE byOverlayDriveChan; BYTE byOverlayMilliSec; BYTE byOverlayIllegalInfo; BYTE byOverlayRedOnTime; BYTE byFarAddPlateJpeg; BYTE byNearAddPlateJpeg; BYTE byRes1[3]; BYTE byMonitorInfo1[32]; BYTE byMonitorInfo2[44]; BYTE byRes2[52]; }NET_DVR_IMAGEOVERLAYCFG, *LPNET_DVR_IMAGEOVERLAYCFG; typedef struct tagNET_DVR_SNAPCFG { DWORD dwSize; BYTE byRelatedDriveWay; BYTE bySnapTimes; WORD wSnapWaitTime; WORD wIntervalTime[MAX_INTERVAL_NUM]; DWORD dwSnapVehicleNum; NET_DVR_JPEGPARA struJpegPara; BYTE byRes2[16]; }NET_DVR_SNAPCFG, *LPNET_DVR_SNAPCFG; typedef enum _ITC_MAINMODE_ABILITY_ { ITC_MODE_UNKNOW = 0x0, ITC_POST_MODE = 0x1, ITC_EPOLICE_MODE = 0x2, ITC_POSTEPOLICE_MODE = 0x4 }ITC_MAINMODE_ABILITY; typedef enum _ITC_RECOG_REGION_TYPE_ { ITC_REGION_RECT = 0x0, ITC_REGION_POLYGON = 0x1, }ITC_RECOG_REGION_TYPE; typedef struct tagNET_DVR_SNAP_ABILITY { DWORD dwSize; BYTE byIoInNum; BYTE byIoOutNum; BYTE bySingleSnapNum; BYTE byLightModeArrayNum; BYTE byMeasureModeArrayNum; BYTE byPlateEnable; BYTE byLensMode; BYTE byPreTriggerSupport; DWORD dwAbilityType; BYTE byIoSpeedGroup; BYTE byIoLightGroup; BYTE byRecogRegionType; BYTE bySupport; WORD wSupportMultiRadar; BYTE byICRPresetNum; BYTE byICRTimeSlot; BYTE bySupportRS485Num; BYTE byExpandRs485SupportSensor; BYTE byExpandRs485SupportSignalLampDet; BYTE byRelayNum; BYTE bySupport1; BYTE bySupport2; BYTE bySupportWhiteBalance; BYTE byRes[9]; } NET_DVR_SNAP_ABILITY, *LPNET_DVR_SNAP_ABILITY; typedef struct tagNET_DVR_TRANSFER_CAP { BYTE byAbility; BYTE byRes[63]; }NET_DVR_TRANSFER_CAP, *LPNET_DVR_TRANSFER_CAP; typedef struct tagNET_ITC_ICRTIMECFG { NET_DVR_SCHEDTIME struTime; BYTE byAssociateRresetNo; BYTE bySubSwitchMode; BYTE byRes[10]; }NET_ITC_ICRTIMECFG, *LPNET_ITC_ICRTIMECFG; typedef struct tagNET_ITC_ICR_TIMESWITCH_PARAM { NET_ITC_ICRTIMECFG struAutoCtrlTime[MAX_TIMESEGMENT_V30]; BYTE byICRPreset[MAX_ICR_NUM]; BYTE byRes[20]; }NET_ITC_ICR_TIMESWITCH_PARAM, *LPNET_ITC_ICR_TIMESWITCH_PARAM; typedef struct tagNET_ITC_ICR_MANUALSWITCH_PARAM { BYTE byICRPreset[MAX_ICR_NUM]; BYTE bySubSwitchMode; BYTE byRes[147]; }NET_ITC_ICR_MANUALSWITCH_PARAM, *LPNET_ITC_ICR_MANUALSWITCH_PARAM; typedef struct tagNET_ITC_ICR_AOTOSWITCH_PARAM { BYTE byICRPreset[MAX_ICR_NUM]; BYTE byICRAutoSwitch; BYTE byRes[147]; }NET_ITC_ICR_AOTOSWITCH_PARAM, *LPNET_ITC_ICR_AOTOSWITCH_PARAM; typedef struct tagNET_ITC_ICR_ALGAOTOSWITCH_PARAM { BYTE byDetectThreshold; BYTE byAbBrightnessThreshold; BYTE byRes[154]; }NET_ITC_ICR_ALGAOTOSWITCH_PARAM, *LPNET_ITC_ICR_ALGAOTOSWITCH_PARAM; typedef union tagNET_ITC_ICR_PARAM_UNION { BYTE uLen[156]; NET_ITC_ICR_AOTOSWITCH_PARAM struICRAutoSwitch; NET_ITC_ICR_MANUALSWITCH_PARAM struICRManualSwitch; NET_ITC_ICR_TIMESWITCH_PARAM struICRTimeSwitch; NET_ITC_ICR_ALGAOTOSWITCH_PARAM strICRAlgorithmAutoSwitch; }NET_ITC_ICR_PARAM_UNION,*LPNET_ITC_ICR_PARAM_UNION; typedef struct tagNET_ITC_ICRCFG { DWORD dwSize; BYTE bySwitchType; BYTE byRes[3]; NET_ITC_ICR_PARAM_UNION uICRParam; }NET_ITC_ICRCFG, *LPNET_ITC_ICRCFG; typedef struct tagNET_ITC_HANDLEEXCEPTION { DWORD dwHandleType; BYTE byEnable; BYTE byRes; WORD wDuration; BYTE byAlarmOutTriggered[MAX_ITC_EXCEPTIONOUT]; BYTE byRes1[8]; } NET_ITC_HANDLEEXCEPTION, *LPNET_ITC_HANDLEEXCEPTION; typedef struct tagNET_ITC_EXCEPTION { DWORD dwSize; NET_ITC_HANDLEEXCEPTION struSnapExceptionType[MAX_EXCEPTIONNUM_V30]; }NET_ITC_EXCEPTION,*LPNET_ITC_EXCEPTION; typedef struct tagNET_DVR_TRIGCOORDINATE { WORD wTopLeftX; WORD wTopLeftY; WORD wWdith; WORD wHeight; } NET_DVR_TRIGCOORDINATE, *LPNET_DVR_TRIGCOORDINATE; typedef enum _PROVINCE_CITY_IDX_ { ANHUI_PROVINCE = 0, AOMEN_PROVINCE = 1, BEIJING_PROVINCE = 2, CHONGQING_PROVINCE = 3, FUJIAN_PROVINCE = 4, GANSU_PROVINCE = 5, GUANGDONG_PROVINCE = 6, GUANGXI_PROVINCE = 7, GUIZHOU_PROVINCE = 8, HAINAN_PROVINCE = 9, HEBEI_PROVINCE = 10, HENAN_PROVINCE = 11, HEILONGJIANG_PROVINCE = 12, HUBEI_PROVINCE = 13, HUNAN_PROVINCE = 14, JILIN_PROVINCE = 15, JIANGSU_PROVINCE = 16, JIANGXI_PROVINCE = 17, LIAONING_PROVINCE = 18, NEIMENGGU_PROVINCE = 19, NINGXIA_PROVINCE = 20, QINGHAI_PROVINCE = 21, SHANDONG_PROVINCE = 22, SHANXI_JIN_PROVINCE = 23, SHANXI_SHAN_PROVINCE = 24, SHANGHAI_PROVINCE = 25, SICHUAN_PROVINCE = 26, TAIWAN_PROVINCE = 27, TIANJIN_PROVINCE = 28, XIZANG_PROVINCE = 29, XIANGGANG_PROVINCE = 30, XINJIANG_PROVINCE = 31, YUNNAN_PROVINCE = 32, ZHEJIANG_PROVINCE = 33 }PROVINCE_CITY_IDX; typedef struct tagNET_DVR_GEOGLOCATION { int iRes[2]; DWORD dwCity; }NET_DVR_GEOGLOCATION, *LPNET_DVR_GEOGLOCATION; typedef enum _SCENE_MODE_ { UNKOWN_SCENE_MODE = 0, HIGHWAY_SCENE_MODE = 1, SUBURBAN_SCENE_MODE = 2, URBAN_SCENE_MODE = 3, TUNNEL_SCENE_MODE = 4 }SCENE_MODE; typedef enum _PRIDATA_RENDER { RENDER_ANA_INTEL_DATA = 0x00000001, RENDER_MD = 0x00000002, RENDER_ADD_POS = 0x00000004, RENDER_ADD_PIC = 0x00000008, RENDER_FIRE_DETCET = 0x00000010, RENDER_TEM = 0x00000020 }PRIDATA_RENDER; typedef enum _FIRE_ALARM{ FIRE_FRAME_DIS = 0x00000001, FIRE_MAX_TEMP = 0x00000002, FIRE_MAX_TEMP_POSITION = 0x00000004, FIRE_DISTANCE = 0x00000008, }FIRE_ALARM; typedef enum _TEM_FLAG{ TEM_REGION_BOX = 0x00000001, TEM_REGION_LINE = 0x00000002, TEM_REGION_POINT = 0x00000004, }TEM_FLAG; typedef struct tagNET_DVR_VTPARAM { DWORD dwSize; BYTE byEnable; BYTE byIsDisplay; BYTE byLoopPos; BYTE bySnapGain; DWORD dwSnapShutter; NET_DVR_TRIGCOORDINATE struTrigCoordinate; NET_DVR_TRIGCOORDINATE struRes[MAX_VL_NUM]; BYTE byTotalLaneNum; BYTE byPolarLenType; BYTE byDayAuxLightMode; BYTE byLoopToCalRoadBright; BYTE byRoadGrayLowTh; BYTE byRoadGrayHighTh; WORD wLoopPosBias; DWORD dwHfrShtterInitValue; DWORD dwSnapShtterInitValue; DWORD dwHfrShtterMaxValue; DWORD dwSnapShtterMaxValue; DWORD dwHfrShtterNightValue; DWORD dwSnapShtterNightMinValue; DWORD dwSnapShtterNightMaxValue; DWORD dwInitAfe; DWORD dwMaxAfe; WORD wResolutionX; WORD wResolutionY; DWORD dwGainNightValue; DWORD dwSceneMode; DWORD dwRecordMode; NET_DVR_GEOGLOCATION struGeogLocation; BYTE byTrigFlag[MAX_VL_NUM]; BYTE byTrigSensitive[MAX_VL_NUM]; BYTE byRes2[62]; }NET_DVR_VTPARAM, *LPNET_DVR_VTPARAM; typedef struct tagNET_DVR_SNAPENABLECFG { DWORD dwSize; BYTE byPlateEnable; BYTE byRes1[2]; BYTE byFrameFlip; WORD wFlipAngle; WORD wLightPhase; BYTE byLightSyncPower; BYTE byFrequency; BYTE byUploadSDEnable; BYTE byPlateMode; BYTE byUploadInfoFTP; BYTE byAutoFormatSD; WORD wJpegPicSize; BYTE bySnapPicResolution; BYTE byRes[55]; }NET_DVR_SNAPENABLECFG, *LPNET_DVR_SNAPENABLECFG; typedef struct tagNET_DVR_FTPCFG { DWORD dwSize; DWORD dwEnableFTP; char sFTPIP[16]; DWORD dwFTPPort; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwDirLevel; WORD wTopDirMode; WORD wSubDirMode; BYTE byEnableAnony; BYTE byPicArchivingInterval; BYTE byRes[22]; }NET_DVR_FTPCFG, *LPNET_DVR_FTPCFG; #define PICNAME_ITEM_DEV_NAME 1 #define PICNAME_ITEM_DEV_NO 2 #define PICNAME_ITEM_DEV_IP 3 #define PICNAME_ITEM_CHAN_NAME 4 #define PICNAME_ITEM_CHAN_NO 5 #define PICNAME_ITEM_TIME 6 #define PICNAME_ITEM_CARDNO 7 #define PICNAME_ITEM_PLATE_NO 8 #define PICNAME_ITEM_PLATE_COLOR 9 #define PICNAME_ITEM_CAR_CHAN 10 #define PICNAME_ITEM_CAR_SPEED 11 #define PICNAME_ITEM_CARCHAN 12 #define PICNAME_ITEM_PIC_NUMBER 13 #define PICNAME_ITEM_CAR_NUMBER 14 #define PICNAME_MAXITEM 15 #define PICNAME_ITEM_SPEED_LIMIT_VALUES 15 #define PICNAME_ITEM_ILLEGAL_CODE 16 #define PICNAME_ITEM_CROSS_NUMBER 17 #define PICNAME_ITEM_DIRECTION_NUMBER 18 #define PICNAME_ITEM_CAR_COLOR 19 #define PICNAME_ITEM_PLATE_COORDINATE 20 #define PICNAME_ITEM_CAR_TYPE 21 #define PICNAME_ITEM_VIOLATION_TYPE 22 #define PICNAME_ITEM_CUSTOM 255 typedef struct tagNET_DVR_PICTURE_NAME { BYTE byItemOrder[PICNAME_MAXITEM]; BYTE byDelimiter; }NET_DVR_PICTURE_NAME, *LPNET_DVR_PICTURE_NAME; #define PICNAME_ITEM_PARK_DEV_IP 1 #define PICNAME_ITEM_PARK_PLATE_NO 2 #define PICNAME_ITEM_PARK_TIME 3 #define PICNAME_ITEM_PARK_INDEX 4 #define PICNAME_ITEM_PARK_STATUS 5 #define PICNAME_ITEM_BUILDING_NUMBER 6 #define PICNAME_ITEM_OUTDOOR_UNIT_ID 7 #define PICNAME_ITEM_UNLOCK_TYPE 8 #define PICNAME_ITEM_DEVICE_NAME 9 #define PICNAME_ITEM_PERIOD_NO 10 #define PICNAME_ITEM_DEV_INDEX 11 #define PICNAME_PREFIX 32 typedef struct tagNET_DVR_PICTURE_NAME_EX { BYTE byItemOrder[PICNAME_MAXITEM]; BYTE byDelimiter; BYTE byPicNamePrefix[PICNAME_PREFIX]; }NET_DVR_PICTURE_NAME_EX, *LPNET_DVR_PICTURE_NAME_EX; typedef struct tagNET_DVR_SERIAL_CATCHPIC_PARA { BYTE byStrFlag; BYTE byEndFlag; WORD wCardIdx; DWORD dwCardLen; DWORD dwTriggerPicChans; }NET_DVR_SERIAL_CATCHPIC_PARA, *LPNET_DVR_SERIAL_CATCHPIC_PARA; typedef struct tagNET_DVR_JPEGCFG_V30 { DWORD dwSize; NET_DVR_JPEGPARA struJpegPara[MAX_CHANNUM_V30]; WORD wBurstMode; WORD wUploadInterval; NET_DVR_PICTURE_NAME struPicNameRule; BYTE bySaveToHD; BYTE byRes1; WORD wCatchInterval; BYTE byRes2[12]; NET_DVR_SERIAL_CATCHPIC_PARA struRs232Cfg; NET_DVR_SERIAL_CATCHPIC_PARA struRs485Cfg; DWORD dwTriggerPicTimes[MAX_CHANNUM_V30]; DWORD dwAlarmInPicChanTriggered[MAX_ALARMIN_V30]; }NET_DVR_JPEGCFG_V30, *LPNET_DVR_JPEGCFG_V30; typedef struct tagNET_DVR_MANUALSNAP { BYTE byOSDEnable; BYTE byLaneNo; BYTE byChannel; BYTE byRes[21]; }NET_DVR_MANUALSNAP, *LPNET_DVR_MANUALSNAP; typedef struct tagNET_DVR_SPRCFG { DWORD dwSize; BYTE byDefaultCHN[MAX_CHJC_NUM]; BYTE byPlateOSD; BYTE bySendJPEG1; BYTE bySendJPEG2; WORD wDesignedPlateWidth; BYTE byTotalLaneNum; BYTE byRes1; WORD wRecognizedLane; NET_VCA_RECT struLaneRect[MAX_LANERECT_NUM]; DWORD dwRecogMode; BYTE bySendPRRaw; BYTE bySendBinImage; BYTE byDelayCapture; BYTE byUseLED; BYTE byRes2[68]; }NET_DVR_SPRCFG, *LPNET_DVR_SPRCFG; typedef struct tagNET_DVR_PLCCFG { DWORD dwSize; BYTE byPlcEnable; BYTE byPlateExpectedBright; BYTE byRes1[2]; BYTE byTradeoffFlash; BYTE byCorrectFactor; WORD wLoopStatsEn; BYTE byPlcBrightOffset; BYTE byRes[19]; }NET_DVR_PLCCFG, *LPNET_DVR_PLCCFG; typedef struct tagNET_DVR_DEVICESTATECFG { DWORD dwSize; WORD wPreviewNum; WORD wFortifyLinkNum; NET_DVR_IPADDR struPreviewIP[MAX_LINK]; NET_DVR_IPADDR struFortifyIP[MAX_FORTIFY_NUM]; DWORD dwVideoFrameRate; BYTE byResolution; BYTE bySnapResolution; BYTE byStreamType; BYTE byTriggerType; DWORD dwSDVolume; DWORD dwSDFreeSpace; BYTE byDetectorState[MAX_DRIVECHAN_NUM][MAX_COIL_NUM]; BYTE byDetectorLinkState; BYTE bySDStatus; BYTE byFortifyLevel[MAX_FORTIFY_NUM]; BYTE byRes2[116]; }NET_DVR_DEVICESTATECFG, *LPNET_DVR_DEVICESTATECFG; typedef struct tagNET_DVR_POSTEPOLICECFG { DWORD dwSize; DWORD dwDistance; DWORD dwLightChan[MAX_SIGNALLIGHT_NUM]; BYTE byCapSpeed; BYTE bySpeedLimit; BYTE byTrafficDirection; BYTE byRes1; WORD wLoopPreDist; WORD wTrigDelay; BYTE byRes[124]; }NET_DVR_POSTEPOLICECFG, *LPNET_DVR_POSTEPOLICECFG; typedef struct tagNET_DVR_SIGNALLAMP_DETCFG { DWORD dwSize; BYTE byAbsTime[32]; NET_DVR_IPADDR struAlarmCamIP; DWORD dwPic1Len; DWORD dwPic2Len; char *pPic1Buffer; char *pPic2Buffer; BYTE byRes[128]; }NET_DVR_SIGNALLAMP_DETCFG, *LPNET_DVR_SIGNALLAMP_DETCFG; typedef struct tagNET_DVR_EXDEVDET_COND { DWORD dwSize; DWORD dwChannel; BYTE byExternalDevType; BYTE byRes[63]; }NET_DVR_EXDEVDET_COND,*LPNET_DVR_EXDEVDET_COND; typedef struct tagNET_DVR_EXDEVDET_CFG { DWORD dwSize; BYTE byExternalDevStatus; BYTE byRes[63]; } NET_DVR_EXDEVDET_CFG,*LPNET_DVR_EXDEVDET_CFG; #define IPC_PROTOCOL_NUM 50 typedef struct tagNET_DVR_PROTO_TYPE { DWORD dwType; BYTE byDescribe[DESC_LEN]; }NET_DVR_PROTO_TYPE, *LPNET_DVR_PROTO_TYPE; typedef struct tagNET_DVR_IPC_PROTO_LIST { DWORD dwSize; DWORD dwProtoNum; NET_DVR_PROTO_TYPE struProto[IPC_PROTOCOL_NUM]; BYTE byRes[8]; }NET_DVR_IPC_PROTO_LIST, *LPNET_DVR_IPC_PROTO_LIST; typedef struct tagNET_DVR_IPC_PROTO_LIST_V41 { DWORD dwSize; DWORD dwProtoNum; BYTE *pBuffer; DWORD dwBufferLen; BYTE byRes[32]; }NET_DVR_IPC_PROTO_LIST_V41, *LPNET_DVR_IPC_PROTO_LIST_V41; typedef struct tagNET_DVR_PTZPOS_INFO { DWORD dwPanPos; DWORD dwTiltPos; DWORD dwZoomPos; }NET_DVR_PTZPOS_INFO, *LPNET_DVR_PTZPOS_INFO; typedef struct tagNET_VCA_HUMAN_FEATURE { BYTE byAgeGroup; BYTE bySex; BYTE byEyeGlass; BYTE byAge; BYTE byAgeDeviation; BYTE byEthnic; BYTE byMask; BYTE bySmile; BYTE byRes[8]; }NET_VCA_HUMAN_FEATURE ,*LPNET_VCA_HUMAN_FEATURE; typedef struct tagNET_DVR_OBJECT_FEATURE { BYTE byColorRatel; BYTE byRed; BYTE byGreen; BYTE byBlue; BYTE byRes[32]; }NET_DVR_OBJECT_FEATURE ,*LPNET_DVR_OBJECT_FEATURE; typedef union tagNET_DVR_ADVANCE_COND_UNION { BYTE byLen[36]; NET_VCA_HUMAN_FEATURE struHumanFeature; NET_DVR_OBJECT_FEATURE struObjectFeature; }NET_DVR_ADVANCE_COND_UNION,*LPNET_DVR_ADVANCE_COND_UNION; #define MAX_ALERTLINE_NUM 8 typedef struct tagNET_DVR_TRAVERSE_PLANE_SEARCHCOND { NET_VCA_TRAVERSE_PLANE struVcaTraversePlane[MAX_ALERTLINE_NUM]; DWORD dwPreTime; DWORD dwDelayTime; NET_DVR_PTZPOS_INFO struPTZPosInfo; BYTE byAdvanceType; BYTE byRes1[3]; NET_DVR_ADVANCE_COND_UNION uAdvanceCond; BYTE byRes[5604]; }NET_DVR_TRAVERSE_PLANE_SEARCHCOND, *LPNET_DVR_TRAVERSE_PLANE_SEARCHCOND; #define MAX_INTRUSIONREGION_NUM 8 typedef struct tagNET_DVR_INTRUSION_SEARCHCOND { NET_VCA_INTRUSION struVcaIntrusion[MAX_INTRUSIONREGION_NUM]; DWORD dwPreTime; DWORD dwDelayTime; NET_DVR_PTZPOS_INFO struPTZPosInfo; BYTE byAdvanceType; BYTE byRes1[3]; NET_DVR_ADVANCE_COND_UNION uAdvanceCond; BYTE byRes[5348]; } NET_DVR_INTRUSION_SEARCHCOND, *LPNET_DVR_INTRUSION_SEARCHCOND; typedef struct tagNET_DVR_FACEDETECTION_SEARCHCOND { NET_VCA_POLYGON struFacePolygon; DWORD dwPreTime; DWORD dwDelayTime; BYTE byRes[5972]; }NET_DVR_FACEDETECTION_SEARCHCOND, *LPNET_DVR_FACEDETECTION_SEARCHCOND; typedef union tagNET_DVR_AREA_SMARTSEARCH_COND_UNION { BYTE byLen[6144]; BYTE byMotionScope[64][96]; NET_DVR_TRAVERSE_PLANE_SEARCHCOND struTraversPlaneCond; NET_DVR_INTRUSION_SEARCHCOND struIntrusionCond; NET_DVR_FACEDETECTION_SEARCHCOND struFaceSnapCond; }NET_DVR_AREA_SMARTSEARCH_COND_UNION, *LPNET_DVR_AREA_SMARTSEARCH_COND_UNION; typedef struct tagNET_DVR_SMART_SEARCH_PARAM { BYTE byChan; BYTE bySearchCondType; WORD wChan; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; NET_DVR_AREA_SMARTSEARCH_COND_UNION uSmartSearchCond; BYTE bySensitivity; BYTE byRes2[11]; }NET_DVR_SMART_SEARCH_PARAM, *LPNET_DVR_SMART_SEARCH_PARAM; typedef struct tagNET_DVR_SMART_SEARCH_PARAM_V40 { DWORD dwSize; NET_DVR_STREAM_INFO struIDInfo; BYTE bySearchCondType; BYTE bySensitivity; BYTE byRes1[2]; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; NET_DVR_AREA_SMARTSEARCH_COND_UNION uSmartSearchCond; BYTE byISO8601; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes2[251]; }NET_DVR_SMART_SEARCH_PARAM_V40,*LPNET_DVR_SMART_SEARCH_PARAM_V40; typedef struct tagNET_DVR_SMART_SEARCH_RET { NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byISO8601; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes[59]; }NET_DVR_SMART_SEARCH_RET, *LPNET_DVR_SMART_SEARCH_RET; typedef struct tagNET_DVR_IPSAN_SERACH_PARAM { NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes[10]; }NET_DVR_IPSAN_SERACH_PARAM, *LPNET_DVR_IPSAN_SERACH_PARAM; typedef struct tagNET_DVR_IPSAN_SERACH_RET { BYTE byDirectory[128]; BYTE byRes[20]; }NET_DVR_IPSAN_SERACH_RET, *LPNET_DVR_IPSAN_SERACH_RET; typedef struct tagNET_DVR_DEVICECFG_V40 { DWORD dwSize; BYTE sDVRName[NAME_LEN]; DWORD dwDVRID; DWORD dwRecycleRecord; BYTE sSerialNumber[SERIALNO_LEN]; DWORD dwSoftwareVersion; DWORD dwSoftwareBuildDate; DWORD dwDSPSoftwareVersion; DWORD dwDSPSoftwareBuildDate; DWORD dwPanelVersion; DWORD dwHardwareVersion; BYTE byAlarmInPortNum; BYTE byAlarmOutPortNum; BYTE byRS232Num; BYTE byRS485Num; BYTE byNetworkPortNum; BYTE byDiskCtrlNum; BYTE byDiskNum; BYTE byDVRType; BYTE byChanNum; BYTE byStartChan; BYTE byDecordChans; BYTE byVGANum; BYTE byUSBNum; BYTE byAuxoutNum; BYTE byAudioNum; BYTE byIPChanNum; BYTE byZeroChanNum; BYTE bySupport; BYTE byEsataUseage; BYTE byIPCPlug; BYTE byStorageMode; BYTE bySupport1; WORD wDevType; BYTE byDevTypeName[DEV_TYPE_NAME_LEN]; BYTE bySupport2; BYTE byAnalogAlarmInPortNum; BYTE byStartAlarmInNo; BYTE byStartAlarmOutNo; BYTE byStartIPAlarmInNo; BYTE byStartIPAlarmOutNo; BYTE byHighIPChanNum; BYTE byEnableRemotePowerOn; WORD wDevClass; BYTE byRes2[6]; }NET_DVR_DEVICECFG_V40, *LPNET_DVR_DEVICECFG_V40; typedef struct tagNET_DVR_DEVICECFG_V50 { DWORD dwSize; BYTE sDVRName[NET_DEV_NAME_LEN]; DWORD dwDVRID; DWORD dwRecycleRecord; BYTE sSerialNumber[SERIALNO_LEN]; DWORD dwSoftwareVersion; DWORD dwSoftwareBuildDate; DWORD dwDSPSoftwareVersion; DWORD dwDSPSoftwareBuildDate; DWORD dwPanelVersion; DWORD dwHardwareVersion; BYTE byAlarmInPortNum; BYTE byAlarmOutPortNum; BYTE byRS232Num; BYTE byRS485Num; BYTE byNetworkPortNum; BYTE byDiskCtrlNum; BYTE byDiskNum; BYTE byDVRType; BYTE byChanNum; BYTE byStartChan; BYTE byDecordChans; BYTE byVGANum; BYTE byUSBNum; BYTE byAuxoutNum; BYTE byAudioNum; BYTE byIPChanNum; BYTE byZeroChanNum; BYTE bySupport; BYTE byEsataUseage; BYTE byIPCPlug; BYTE byStorageMode; BYTE bySupport1; WORD wDevType; BYTE byDevTypeName[NET_DEV_TYPE_NAME_LEN]; BYTE bySupport2; BYTE byAnalogAlarmInPortNum; BYTE byStartAlarmInNo; BYTE byStartAlarmOutNo; BYTE byStartIPAlarmInNo; BYTE byStartIPAlarmOutNo; BYTE byHighIPChanNum; BYTE byEnableRemotePowerOn; BYTE byRes[256]; }NET_DVR_DEVICECFG_V50, *LPNET_DVR_DEVICECFG_V50; #define MAX_ZEROCHAN_NUM 16 typedef struct tagNET_DVR_ZEROCHANCFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwVideoBitrate; DWORD dwVideoFrameRate; BYTE byRes2[32]; }NET_DVR_ZEROCHANCFG, *LPNET_DVR_ZEROCHANCFG; typedef struct tagNET_DVR_ZERO_ZOOMCFG { DWORD dwSize; NET_VCA_POINT struPoint; BYTE byState; BYTE byPreviewNumber; BYTE byPreviewSeq[MAX_WINDOW_V30]; BYTE byRes[30]; }NET_DVR_ZERO_ZOOMCFG, *LPNET_DVR_ZERO_ZOOMCFG; #define DESC_LEN_64 64 typedef struct tagNET_DVR_SNMPCFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; WORD wVersion; WORD wServerPort; BYTE byReadCommunity[NAME_LEN]; BYTE byWriteCommunity[NAME_LEN]; BYTE byTrapHostIP [DESC_LEN_64]; WORD wTrapHostPort; BYTE byTrapName[NAME_LEN]; BYTE byRes2[70]; }NET_DVR_SNMPCFG, *LPNET_DVR_SNMPCFG; typedef struct tagNET_DVR_SNMPv3_USER { BYTE byUserName[NAME_LEN]; BYTE bySecLevel; BYTE byAuthtype; BYTE byPrivtype; BYTE byRes[5]; BYTE byAuthpass[PASSWD_LEN]; BYTE byPrivpass[PASSWD_LEN]; }NET_DVR_SNMPv3_USER, *LPNET_DVR_SNMPv3_USER; typedef struct tagNET_DVR_SNMPCFG_V30 { DWORD dwSize; BYTE byEnableV1; BYTE byEnableV2; BYTE byEnableV3; BYTE byRes1[3]; WORD wServerPort; BYTE byReadCommunity[NAME_LEN]; BYTE byWriteCommunity[NAME_LEN]; BYTE byTrapHostIP [DESC_LEN_64]; WORD wTrapHostPort; BYTE byRes2[2]; NET_DVR_SNMPv3_USER struRWUser; NET_DVR_SNMPv3_USER struROUser; BYTE byTrapName[NAME_LEN]; }NET_DVR_SNMPCFG_V30, *LPNET_DVR_SNMPCFG_V30; #define PROCESSING 0 #define PROCESS_SUCCESS 100 #define PROCESS_EXCEPTION 400 #define PROCESS_FAILED 500 #define PROCESS_QUICK_SETUP_PD_COUNT 501 #define SOFTWARE_VERSION_LEN 48 #define NET_SDK_DEVICE_MODEL_LEN 24 typedef struct tagNET_DVR_SADPINFO { NET_DVR_IPADDR struIP; WORD wPort; WORD wFactoryType; char chSoftwareVersion[SOFTWARE_VERSION_LEN]; char chSerialNo[16]; WORD wEncCnt; BYTE byMACAddr[MACADDR_LEN]; NET_DVR_IPADDR struSubDVRIPMask; NET_DVR_IPADDR struGatewayIpAddr; NET_DVR_IPADDR struDnsServer1IpAddr; NET_DVR_IPADDR struDnsServer2IpAddr; BYTE byDns; BYTE byDhcp; BYTE szGB28181DevID[DEV_ID_LEN]; BYTE byActivated; BYTE byDeviceModel[NET_SDK_DEVICE_MODEL_LEN]; BYTE byRes[101]; }NET_DVR_SADPINFO, *LPNET_DVR_SADPINFO; #define MAX_SADP_NUM 256 typedef struct tagNET_DVR_SADPINFO_LIST { DWORD dwSize; WORD wSadpNum; BYTE byRes[6]; NET_DVR_SADPINFO struSadpInfo[MAX_SADP_NUM]; }NET_DVR_SADPINFO_LIST, *LPNET_DVR_SADPINFO_LIST; typedef struct tagNET_DVR_SADP_VERIFY { char chPassword[PASSWD_LEN]; NET_DVR_IPADDR struOldIP; WORD wOldPort; BYTE byRes[62]; }NET_DVR_SADP_VERIFY, *LPNET_DVR_SADP_VERIFY; #define DESC_LEN_32 32 #define MAX_NODE_NUM 256 typedef struct tagNET_DVR_DESC_NODE { int iValue; BYTE byDescribe[DESC_LEN_32]; DWORD dwFreeSpace; BYTE byRes[12]; }NET_DVR_DESC_NODE, *LPNET_DVR_DESC_NODE; typedef struct tagNET_DVR_DISKABILITY_LIST { DWORD dwSize; DWORD dwNodeNum; NET_DVR_DESC_NODE struDescNode[MAX_NODE_NUM]; }NET_DVR_DISKABILITY_LIST, *LPNET_DVR_DISKABILITY_LIST; #define BACKUP_SUCCESS 100 #define BACKUP_CHANGE_DEVICE 101 #define BACKUP_SEARCH_DEVICE 300 #define BACKUP_SEARCH_FILE 301 #define BACKUP_SEARCH_LOG_FILE 302 #define BACKUP_CHANGE_DISK 303 #define BACKUP_EXCEPTION 400 #define BACKUP_FAIL 500 #define BACKUP_TIME_SEG_NO_FILE 501 #define BACKUP_NO_RESOURCE 502 #define BACKUP_DEVICE_LOW_SPACE 503 #define BACKUP_DISK_FINALIZED 504 #define BACKUP_DISK_EXCEPTION 505 #define BACKUP_DEVICE_NOT_EXIST 506 #define BACKUP_OTHER_BACKUP_WORK 507 #define BACKUP_USER_NO_RIGHT 508 #define BACKUP_OPERATE_FAIL 509 #define BACKUP_NO_LOG_FILE 510 typedef struct tagNET_DVR_BACKUP_NAME_PARAM { DWORD dwFileNum; NET_DVR_FINDDATA_V30 struFileList[MAX_RECORD_FILE_NUM]; BYTE byDiskDes[DESC_LEN_32]; BYTE byWithPlayer; BYTE byContinue; BYTE byRes[34]; }NET_DVR_BACKUP_NAME_PARAM, *LPNET_DVR_BACKUP_NAME_PARAM; typedef struct tagNET_DVR_BACKUP_TIME_PARAM { LONG lChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byDiskDes[DESC_LEN_32]; BYTE byWithPlayer; BYTE byContinue; BYTE byDrawFrame; BYTE byUseBackCfgParam; DWORD dwStreamType; BYTE byRes[28]; }NET_DVR_BACKUP_TIME_PARAM, *LPNET_DVR_BACKUP_TIME_PARAM; typedef enum _COMPRESSION_ABILITY_TYPE_ { COMPRESSION_STREAM_ABILITY = 0, MAIN_RESOLUTION_ABILITY = 1, SUB_RESOLUTION_ABILITY = 2, EVENT_RESOLUTION_ABILITY = 3, FRAME_ABILITY = 4, BITRATE_TYPE_ABILITY = 5, BITRATE_ABILITY = 6, THIRD_RESOLUTION_ABILITY = 7, STREAM_TYPE_ABILITY = 8, PIC_QUALITY_ABILITY = 9, INTERVAL_BPFRAME_ABILITY = 10, VIDEO_ENC_ABILITY = 11, AUDIO_ENC_ABILITY = 12, VIDEO_ENC_COMPLEXITY_ABILITY = 13, FORMAT_ABILITY = 14, }COMPRESSION_ABILITY_TYPE; typedef struct tagNET_DVR_ABILITY_LIST { DWORD dwAbilityType; BYTE byRes[32]; DWORD dwNodeNum; NET_DVR_DESC_NODE struDescNode[MAX_NODE_NUM]; }NET_DVR_ABILITY_LIST, *LPNET_DVR_ABILITY_LIST; #define MAX_ABILITYTYPE_NUM 12 typedef struct tagNET_DVR_COMPRESSIONCFG_ABILITY { DWORD dwSize; DWORD dwAbilityNum; NET_DVR_ABILITY_LIST struAbilityNode[MAX_ABILITYTYPE_NUM]; }NET_DVR_COMPRESSIONCFG_ABILITY, *LPNET_DVR_COMPRESSIONCFG_ABILITY; #define SUPPORT_PD_NUM 16 #define SUPPORT_ARRAY_NUM 8 #define SUPPORT_VD_NUM 128 #define SUPPORT_PD_NUM_ 16 #define SUPPORT_PD_NUM_PARTTWO 8 typedef enum tagRAID_MODE { RAID0 = 1, RAID1, RAID10, RAID1E, RAID5, RAID6, RAID50, JBOD, RAID60 }RAID_MODE; typedef enum tagHD_SUPPORT_TYPE { HD_TYPE_SATA = 0x01, HD_TYPE_PATA = 0x02, HD_TYPE_SAS = 0x04, HD_TYPE_ATAPI = 0x08, HD_TYPE_TAPE = 0x10, HD_TYPE_SES = 0x20 }HD_SUPPORT_TYPE; typedef enum tagSUPPORT_RAID_TYPE { RAID0_ABILITY = 0x0001, RAID1_ABILITY = 0x0002, RAID10_ABILITY = 0x0004, RAID1E_ABILITY = 0x0008, RAID5_ABILITY = 0x0010, RAID6_ABILITY = 0x0020, RAID50_ABILITY = 0x0040, JBOD_ABILITY = 0x0080, RAID60_ABILITY = 0x0100 }SUPPORT_RAID_TYPE; typedef struct tagNET_DVR_PHY_DISK_INFO { WORD wPhySlot; BYTE byType; BYTE byStatus; BYTE byMode[40]; DWORD dwHCapacity; DWORD dwLCapacity; BYTE byArrrayName[MAX_NAMELEN]; WORD wArrayID; BYTE byArrayInformation; BYTE byRes[101]; }NET_DVR_PHY_DISK_INFO, *LPNET_DVR_PHY_DISK_INFO; typedef struct tagNET_DVR_PHY_DISK_LIST { DWORD dwSize; DWORD dwCount; NET_DVR_PHY_DISK_INFO struPhyDiskInfo[SUPPORT_PD_NUM]; }NET_DVR_PHY_DISK_LIST, *LPNET_DVR_PHY_DISK_LIST; typedef enum tagBGA_TYPE { BGA_REBUILD = 0x01, BGA_CONSISTENCY_FIX = 0x02, BGA_CONSISTENCY_CHECK = 0x04, BGA_INIT_QUICK = 0x08, BGA_INIT_BACK = 0x10, BGA_MIGRATION = 0x20, BGA_INIT_FORE = 0x40, BGA_COPYBACK = 0x80 }BGA_TYPE; typedef enum tagBGA_STATE { BGA_STATE_NONE = 0, BGA_STATE_RUNNING, BGA_STATE_ABORTED, BGA_STATE_PAUSED }BGA_STATE; typedef struct tagNET_DVR_BGA_INFO { BYTE byBga; BYTE byBgaState; WORD wBgaPercentage; BYTE byRes[4]; }NET_DVR_BGA_INFO, *LPNET_DVR_BGA_INFO; typedef struct tagNET_DVR_ARRAY_INFO { WORD wArrayID; BYTE byRaidMode; BYTE byStatus; DWORD dwHCapacity; DWORD dwLCapacity; DWORD dwHFreeSpace; DWORD dwLFreeSpace; BYTE byArrayName[MAX_NAMELEN]; BYTE byPDCount; BYTE bySpareCount; BYTE byRes1[2]; WORD wPDSlots[SUPPORT_PD_NUM]; WORD wSparePDSlots[SUPPORT_PD_NUM]; NET_DVR_BGA_INFO struBgaInfo; WORD wPDSlotsPartTwo[SUPPORT_PD_NUM_PARTTWO]; WORD wSparePDSlotsPartTwo[SUPPORT_PD_NUM_PARTTWO]; BYTE byRes2[48]; }NET_DVR_ARRAY_INFO, *LPNET_DVR_ARRAY_INFO; typedef struct tagNET_DVR_ARRAY_LIST { DWORD dwSize; DWORD dwCount; NET_DVR_ARRAY_INFO struArrayInfo[SUPPORT_ARRAY_NUM]; }NET_DVR_ARRAY_LIST, *LPNET_DVR_ARRAY_LIST; typedef struct tagNET_DVR_VD_INFO { WORD wSlot; BYTE byStatus; BYTE byRaidMode; WORD wArrayID; BYTE byRepair; BYTE byUsage; BYTE byArrayName[MAX_NAMELEN]; BYTE byName[MAX_NAMELEN]; DWORD dwHCapacity; DWORD dwLCapacity; DWORD dwHFreeSpace; DWORD dwLFreeSpace; NET_DVR_BGA_INFO struBgaInfo; DWORD dwBlockSize; NET_DVR_IPADDR struWarrantIP; char szArrayGroup[NAME_LEN]; BYTE byRes[20]; }NET_DVR_VD_INFO, *LPNET_DVR_VD_INFO; typedef struct tagNET_DVR_VD_LIST { DWORD dwSize; DWORD dwCount; NET_DVR_VD_INFO struVDInfo[SUPPORT_VD_NUM]; }NET_DVR_VD_LIST, *LPNET_DVR_VD_LIST; typedef struct tagNET_DVR_ADAPTER_VERSION { WORD wMajorVersion; WORD wMinorVersion; WORD wRevisionNumber; WORD wBuildNumber; }NET_DVR_ADAPTER_VERSION, *LPNET_DVR_ADAPTER_VERSION; typedef struct tagNET_DVR_VD_SLOT { WORD wVDSlot; BYTE byAlloc; BYTE byRes[5]; DWORD dwHVDSlotSize; DWORD dwLVDSlotSize; }NET_DVR_VD_SLOT, *LPNET_DVR_VD_SLOT; typedef struct tagNET_DVR_ARRAY_SPACE_ALLOC_INFO { BYTE byVDSlotCount; BYTE byRes1[3]; NET_DVR_VD_SLOT struVDSlots[SUPPORT_VD_NUM]; }NET_DVR_ARRAY_SPACE_ALLOC_INFO, *LPNET_DVR_ARRAY_SPACE_ALLOC_INFO; typedef struct tagNET_DVR_RAID_ADAPTER_INFO { DWORD dwSize; NET_DVR_ADAPTER_VERSION struVersion; BYTE bySlotCount; BYTE bySupportMigrate; BYTE bySupportExpand; BYTE bySupportRebuild; WORD wSlotSupportType; WORD wSupportRaidType; BYTE byAutoRebuild; BYTE byRes[27]; }NET_DVR_RAID_ADAPTER_INFO, *LPNET_DVR_RAID_ADAPTER_INFO; typedef struct tagNET_DVR_OPERATE_ARRAY_PARAM { BYTE byRaidMode; BYTE byPDCount; WORD wArrayID; WORD wPDSlots[SUPPORT_PD_NUM]; BYTE byName[MAX_NAMELEN]; BYTE byInitMode; BYTE byRes1; WORD wPDSlotsPartTwo[SUPPORT_PD_NUM_PARTTWO]; BYTE byRes2[2]; }NET_DVR_OPERATE_ARRAY_PARAM, *LPNET_DVR_OPERATE_ARRAY_PARAM; #define INIT_QUICK 0 #define INIT_FULLFOREGROUND 1 #define INIT_FULLBACKGROUND 2 typedef struct tagNET_DVR_OPERATE_VD_PARAM { WORD wArrayID; BYTE bySlot; BYTE byInitType; DWORD dwHCapacity; DWORD dwLCapacity; BYTE byName[MAX_NAMELEN]; BYTE byRes2[16]; }NET_DVR_OPERATE_VD_PARAM, *LPNET_DVR_OPERATE_VD_PARAM; typedef struct tagNET_DVR_SPARE_DISK_PARAM { WORD wPDSlot; WORD wArrayID; BYTE bySpareType; BYTE byRes[7]; }NET_DVR_SPARE_DISK_PARAM, *LPNET_DVR_SPARE_DISK_PARAM; #define MATRIX_MAXDECSUBSYSTEMCHAN 4 typedef struct tagNET_DVR_DECSUBSYSTEMJIONSTATUS { BYTE byJoinStatus; BYTE byJoinSubSystem; BYTE byJoinDispNum; BYTE byJoinSubWindowNum; BYTE byRes[4]; }NET_DVR_DECSUBSYSTEMJIONSTATUS,LPNET_DVR_DECSUBSYSTEMJIONSTATUS; typedef struct tagNET_DVR_SINGLESUBSYSTEMJOININFO { BYTE bySubSystemType; BYTE byConnectStatus; BYTE byMatrixNum; BYTE bySubSystemNum; NET_DVR_DECSUBSYSTEMJIONSTATUS struDecSub [MATRIX_MAXDECSUBSYSTEMCHAN]; BYTE byBindStatus; BYTE byRes[7]; }NET_DVR_SINGLESUBSYSTEMJOININFO,LPNET_DVR_SINGLESUBSYSTEMJOININFO; typedef struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO { DWORD dwSize; NET_DVR_SINGLESUBSYSTEMJOININFO struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM]; BYTE byRes[8]; }NET_DVR_ALLDECSUBSYSTEMJOININFO, *LPNET_DVR_ALLDECSUBSYSTEMJOININFO; typedef struct tagNET_DVR_NATASSOCIATECFG { DWORD dwSize; NET_DVR_NETCFG_V30 struNatIpAddress[2]; BYTE byNATEnable; BYTE byNATCfgMode; BYTE byRes[62]; }NET_DVR_NATASSOCIATECFG, *LPNET_DVR_NATASSOCIATECFG; typedef struct tagNET_DVR_TEMPERATUREALARMCFG { BYTE byEnableTemperatureAlarm; BYTE byRes1[3]; int iTemperatureUpLimited; int iTemperatureDownLimited; NET_DVR_HANDLEEXCEPTION_V30 struTempHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes2[32]; }NET_DVR_TEMPERATUREALARMCFG, *LPNET_DVR_TEMPERATUREALARMCFG; typedef struct tagNET_DVR_BOARDALARMCFG { BYTE byEnablePullAlarm; BYTE byRes1[3]; NET_DVR_HANDLEEXCEPTION_V30 struBoardHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes2[32]; }NET_DVR_BOARDALARMCFG, *LPNET_DVR_BOARDALARMCFG; typedef struct tagNET_DVR_VIDEOPLATFORMALARMCFG { DWORD dwSize; NET_DVR_TEMPERATUREALARMCFG struTempAlarmCfg; NET_DVR_BOARDALARMCFG struBoardAlarmCfg; NET_DVR_HANDLEEXCEPTION_V30 struHandleException[MAX_EXCEPTIONNUM]; BYTE byRes[32]; }NET_DVR_VIDEOPLATFORMALARMCFG,*LPNET_DVR_VIDEOPLATFORMALARMCFG; typedef struct tagNET_DVR_CODESPLITTERASSOCIATE { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes1[6]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byChan; BYTE byRes2[15]; } NET_DVR_CODESPLITTERASSOCIATE, *LPNET_DVR_CODESPLITTERASSOCIATE; typedef struct tagNET_DVR_MATRIXSUBSYSTEMINFO { BYTE byMatrixNum; BYTE bySubSystemNum; BYTE byRes [14]; } NET_DVR_MATRIXSUBSYSTEMINFO, *LPNET_DVR_MATRIXSUBSYSTEMINFO; typedef struct tagNET_DVR_VIDEOPLATFORM_ALRAMINFO { DWORD dwSize; BYTE byAlarmType; BYTE byBoardNum; BYTE byRes1[2]; BYTE bySubSystemChan[8]; int iTemperature; BYTE byMainboardSeq; BYTE byRes2[3]; BYTE byFanSequence[32]; NET_DVR_MATRIXSUBSYSTEMINFO struInputNote; NET_DVR_MATRIXSUBSYSTEMINFO struOutputNote; BYTE byRes3[68]; }NET_DVR_VIDEOPLATFORM_ALRAMINFO,*LPNET_DVR_VIDEOPLATFORM_ALRAMINFO; #define MAX_INQUEST_PIP_NUM 3 #define MAX_INQUEST_CDRW_NUM 4 #define MAX_INQUEST_PIP_NUM_EX 16 typedef struct tagNET_DVR_INQUEST_CDRW_CFG { DWORD dwSize; DWORD dwNum; DWORD dwRwSelectPara[MAX_CHANNUM_V30]; DWORD dwModeSelect; BYTE byRes[24]; DWORD dwStartCDRW; DWORD dwHdExcp; DWORD dwInterval; char sLable[64]; }NET_DVR_INQUEST_CDRW_CFG, *LPNET_DVR_INQUEST_CDRW_CFG; typedef struct tagNET_DVR_INQUEST_FILEINFO { char sFileName[36]; DWORD dwFileLen; }NET_DVR_INQUEST_FILEINFO, *LPNET_DVR_INQUEST_FILEINFO; typedef struct tagNET_DVR_INQUEST_FILES { DWORD dwFileNum; NET_DVR_INQUEST_FILEINFO struFileInfo[MAX_RECORD_FILE_NUM]; DWORD dwCDIndex; DWORD bFinalizeDisc; }NET_DVR_INQUEST_FILES, *LPNET_DVR_INQUEST_FILES; typedef struct tagNET_DVR_INQUEST_CDRW { DWORD dwEnable; DWORD dwStatus; DWORD dwVolumn; DWORD dwFreeSpace; DWORD dwTimeLeft; BYTE byCDType; BYTE byRes[3]; }NET_DVR_INQUEST_CDRW, *LPNET_DVR_INQUEST_CDRW; typedef struct tagNET_DVR_INQUEST_CDRW_STATUS { DWORD dwType; NET_DVR_INQUEST_CDRW strCDRWNum[MAX_INQUEST_CDRW_NUM]; NET_DVR_TIME_EX struInquestStartTime; BYTE byRes[16]; }NET_DVR_INQUEST_CDRW_STATUS, *LPNET_DVR_INQUEST_CDRW_STATUS; typedef struct tagNET_DVR_INQUEST_PIP_PARAM { BYTE byPipChan; BYTE byRes[3]; WORD wTopLeftX; WORD wTopLeftY; }NET_DVR_INQUEST_PIP_PARAM, *LPNET_DVR_INQUEST_PIP_PARAM; typedef struct tagNET_DVR_INQUEST_PIP_STATUS { BYTE byBaseChan; BYTE byBackChan; BYTE byPIPMode; BYTE byRes; NET_DVR_INQUEST_PIP_PARAM strPipPara[MAX_INQUEST_PIP_NUM]; }NET_DVR_INQUEST_PIP_STATUS, *LPNET_DVR_INQUEST_PIP_STATUS; typedef struct tagNET_DVR_INQUEST_PIP_PARAM_V40 { BYTE byPipChan; BYTE byRes1[3]; WORD wTopLeftX; WORD wTopLeftY; WORD wHeight; WORD wWidth; BYTE byRes2[32]; }NET_DVR_INQUEST_PIP_PARAM_V40, *LPNET_DVR_INQUEST_PIP_PARAM_V40; typedef struct tagNET_DVR_INQUEST_PIP_STATUS_V40 { NET_DVR_STRUCTHEAD struStructHead; BYTE byBaseChan; BYTE byBackChan; BYTE byPIPMode; BYTE byPipCount; BYTE byPicShowMode; BYTE byRes[31]; NET_DVR_INQUEST_PIP_PARAM_V40 strPipPara[MAX_INQUEST_PIP_NUM_EX]; }NET_DVR_INQUEST_PIP_STATUS_V40, *LPNET_DVR_INQUEST_PIP_STATUS_V40; typedef struct tagNET_DVR_INQUEST_SECRET_INFO { BYTE sSecretKey[16]; BYTE byRes[64]; }NET_DVR_INQUEST_SECRET_INFO, *LPNET_DVR_INQUEST_SECRET_INFO; #define MAX_BIGSCREENNUM 100 typedef struct tagNET_DVR_SINGLESCREENCFG { BYTE byScreenSeq; BYTE bySubSystemNum; BYTE byDispNum; BYTE byRes[9]; }NET_DVR_SINGLESCREENCFG, *LPNET_DVR_SINGLESCREENCFG; typedef struct tagNET_DVR_BIGSCREENCFG { DWORD dwSize; BYTE byEnable; BYTE byModeX; BYTE byModeY; BYTE byMainDecodeSystem; BYTE byMainDecoderDispChan; BYTE byVideoStandard; BYTE byRes1[2]; DWORD dwResolution; NET_DVR_SINGLESCREENCFG struFollowSingleScreen[MAX_BIGSCREENNUM]; WORD wBigScreenX; WORD wBigScreenY; BYTE byRes2[12]; }NET_DVR_BIGSCREENCFG, *LPNET_DVR_BIGSCREENCFG; #define DECODEPIC_LEFTADJUST 1 #define DECODEPIC_RIGHTADJUST 2 #define DECODEPIC_UPADJUST 3 #define DECODEPIC_DOWNADJUST 4 #define DECODEPIC_REDUCEADJUST 5 #define DECODEPIC_FULL_SCREEN_ADJUST 6 #define DECODEPIC_CANCEL_FULL_SCREEN_ADJUST 7 #define DECODEPIC_AUTOADJUST 8 #define DECODEPIC_HEIGHTADJUST 9 #define DECODEPIC_WIDTHADJUST 10 #define MAX_UNITEDMATRIX_NUM 8 #define MAX_SUBDOMAIN_NUM 4 typedef struct tagNET_DVR_SUBSERVERINFO { BYTE bySequence; BYTE byBelongSubDomain; BYTE byRes1[6]; DWORD dwMaxIpcNums; NET_DVR_IPADDR struSubMatrixIP; WORD wSubMatrixPort; BYTE byRes2[6]; }NET_DVR_SUBSERVERINFO, *LPNET_DVR_SUBSERVERINFO; typedef struct tagNET_DVR_UNITEDMATRIXINFO { DWORD dwSize; NET_DVR_SUBSERVERINFO struDomainInfo; NET_DVR_SUBSERVERINFO struSubDomainInfo[MAX_SUBDOMAIN_NUM]; NET_DVR_SUBSERVERINFO struMatrixInfo[MAX_UNITEDMATRIX_NUM]; BYTE byRes[32]; }NET_DVR_UNITEDMATRIXINFO, *LPNET_DVR_UNITEDMATRIXINFO; typedef struct tagNET_DVR_REGCALLBACKPARAM { char sDeviceID[NAME_LEN]; char sPassword[PASSWD_LEN]; BYTE sSerialNumber[SERIALNO_LEN]; DWORD dwDeviceType; BYTE nStatus; BYTE byNetType; BYTE byRes[14]; }NET_DVR_REGCALLBACKPARAM, *LPNET_DVR_REGCALLBACKPARAM; typedef struct tagNET_DVR_LOGONREPONSEPARAM { WORD wHeartbeatTime; BYTE byOvertimes; BYTE byRes[13]; }NET_DVR_LOGONREPONSEPARAM, *LPNET_DVR_LOGONREPONSEPARAM; typedef struct tagNET_DVR_PREVIEWPARAM { BYTE byTransProtol; BYTE byTransMode; NET_DVR_IPADDR struCuIp; WORD wPort; WORD wUdpPort; BYTE bySupportQos; BYTE byNatRequest; BYTE byPreviewType; BYTE byRes[7]; }NET_DVR_PREVIEWPARAM, *LPNET_DVR_PREVIEWPARAM; typedef struct tagNET_DVR_DEVICENATINFO { NET_DVR_IPADDR struPuIp; WORD wOuterPort; WORD wInterPort; DWORD nSessionID; BYTE byRes[4]; }NET_DVR_DEVICENATINFO, *LPNET_DVR_DEVICENATINFO; typedef struct tagNET_DVR_PREVIEWCALLBACKPARAM { LONG lChannel; BYTE nLinkProtocol; BYTE nTransMode; BYTE byPreviewType; BYTE byRes[5]; DWORD nSessionID; }NET_DVR_PREVIEWCALLBACKPARAM, *LPNET_DVR_PREVIEWCALLBACKPARAM; typedef struct tagNET_DVR_PLAYBACKREQUESTPARAM { BYTE byPlayBackMode; BYTE byRes1[3]; union { char sFileName [100]; struct { LONG lChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byRes[48]; }struPlayBackbyTime; }playbackmode; NET_DVR_IPADDR struCuIp; WORD wPort; BYTE byRes2[2]; DWORD dwSessionID; BYTE byRes3[16]; }NET_DVR_PLAYBACKREQUESTPARAM, *LPNET_DVR_PLAYBACKREQUESTPARAM; typedef struct tagNET_DVR_PLAYBACKCALLBACKPARAM { BYTE byPlayBackMode; BYTE byRes1[3]; union { char sFileName [100]; struct { LONG lChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byRes[48]; }struPlayBackbyTime; }playbackmode; DWORD nSessionID; BYTE byRes2[44]; }NET_DVR_PLAYBACKCALLBACKPARAM, *LPNET_DVR_PLAYBACKCALLBACKPARAM; typedef struct tagNET_DVR_VOICEREQUESETPARAM { BYTE nVoiceChannel; BYTE byRes1[3]; NET_DVR_IPADDR struCuIp; WORD wPort; BYTE byRes2[10]; }NET_DVR_VOICEREQUESTPARAM, *LPNET_DVR_VOICEREQUESTPARAM; typedef struct tagNET_DVR_ALARMSETUPREQUESETPARAM { NET_DVR_IPADDR struCuIp; WORD wPort; BYTE byRes[2]; }NET_DVR_ALARMSETUPREQUESTPARAM, *LPNET_DVR_ALARMSETUPREQUESTPARAM; typedef struct tagNET_DVR_GPSALARMINFO { BYTE byDeviceID[NAME_LEN]; NET_DVR_TIME_EX struGpsTime; DWORD dwLongitude; DWORD dwLatitude; int iTimeZone; DWORD dwDirection; WORD wSatellites; WORD wPrecision; DWORD dwHeight; DWORD dwGPSSeq; WORD wSpeed; char sDirection[2]; BYTE byLocateMode; BYTE byRes[3]; }NET_DVR_GPSALARMINFO, *LPNET_DVR_GPSALARMINFO; typedef struct tagNET_DVR_PICINFO { DWORD dwSize; BYTE byChanIndex; BYTE byRes1[3]; BYTE byDeviceID[NAME_LEN]; BYTE byAbsTime[32]; DWORD dwPicLen; BYTE byRes2[32]; BYTE *pPicBuffer; }NET_DVR_PICTUREINFO, *LPNET_DVR_PICTUREINFO; typedef struct tagNET_DVR_CMSPARAM { DWORD dwSize; NET_DVR_IPADDR struCmsAddr; WORD wCmsPort; BYTE byRes1[2]; BYTE sDeviceID[NAME_LEN]; BYTE byPassword[PASSWD_LEN]; NET_DVR_IPADDR struPicServerAddr; WORD wPicServerPort; WORD wCmsUdpPort; BYTE byRes2[12]; }NET_DVR_CMSPARAM, *LPNET_DVR_CMSPARAM; #define DIALPASSWD_LEN 32 typedef struct tagNET_DVR_QOSPARAM { WORD wMaxBitUL; WORD wMaxBitDL; BYTE byTrafficClass; BYTE byRes[7]; }NET_DVR_QOSPARAM, *LPNET_DVR_QOSPARAM; typedef struct tagNET_DVR_PPPDPARAM { BYTE byDialNum[NAME_LEN]; BYTE byUserName[NAME_LEN]; BYTE byPassword[DIALPASSWD_LEN]; BYTE byApn[NAME_LEN]; NET_DVR_IPADDR struLocalIp; NET_DVR_IPADDR struRemoteIp; WORD wMtuSize; BYTE byVerifyProtocal; BYTE byRes[25]; }NET_DVR_PPPDPARAM, *LPNET_DVR_PPPDPARAM; #define MAX_PHONE_NUM 32 typedef struct tagNET_DVR_DIALPARAM { DWORD dwSize; BYTE bEnable3G; BYTE byDialMethod; BYTE bySwitchMethod; BYTE byEnaAlarmInDial; BYTE byRes1[10]; WORD wOffLineTime; NET_DVR_PPPDPARAM struPppdParam; NET_DVR_QOSPARAM struQosParam; BYTE byUimNumber[MAX_PHONE_NUM]; BYTE byRes2[24]; }NET_DVR_DIALPARAM, *LPNET_DVR_DIALPARAM; typedef struct tagNET_DVR_DIALREQUEST { BYTE byConnNum; BYTE byNetType; BYTE byRes[6]; } NET_DVR_DIALREQUEST, *LPNET_DVR_DIALREQUEST; typedef enum { UIM_UNKNOWN = 0, UIM_VALID = 1, UIM_NOVALID = 4, UIM_ROAM = 11, UIM_NOEXIST = 255 }UIM_INFO; typedef enum { RMODE_CDMA1X = 12, RMODE_EVDO = 14, RMODE_CDMAHYBRID = 18, RMODE_GSM = 21, RMODE_GPRS = 22, RMODE_EDGE = 23, RMODE_WCDMA = 24, RMODE_HSDPA = 25, RMODE_HSUPA = 26, RMODE_HSPA = 27, RMODE_TGSM = 31, RMODE_TGPRS = 32, RMODE_TEDGE = 33, RMODE_TDSCDMA = 34, RMODE_TDHSDPA = 35, RMODE_TDHSUPA = 36, RMODE_TDHSPA = 37 }REAL_MODE; typedef struct tagNET_DVR_DIALSTATUS { BYTE byRealMode; BYTE byUimCard; BYTE byRes1[6]; DWORD dwSignal; DWORD dwDialStatus; NET_DVR_IPADDR struLocalIp; NET_DVR_IPADDR struRemoteIp; NET_DVR_IPADDR struNetMask; NET_DVR_IPADDR struDns; BYTE byRes2[16]; }NET_DVR_DIALSTATUS, *LPNET_DVR_DIALSTATUS; #define MAX_WHITELIST_NUM 8 #define NET_SDK_MAX_WHITELIST_NUM_32 32 #define HARDDISKFULL_EXCEPTION 0x0 #define HARDDISKERROR_EXCEPTION 0x1 #define ETHERNETBROKEN_EXCEPTION 0x2 #define IPADDRCONFLICT_EXCEPTION 0x3 #define ILLEGALACCESS_EXCEPTION 0x4 #define VI_EXCEPTION 0x5 #define VS_MISMATCH_EXCEPTION 0x6 #define VIDEOCABLELOSE_EXCEPTION 0x7 #define AUDIOCABLELOSE_EXCEPTION 0x8 #define ALARMIN_EXCEPTION 0x9 #define MASKALARM_EXCEPTION 0xa #define MOTDET_EXCEPTION 0xb #define RECORDING_EXCEPTION 0xc #define WIRELESS_EXCEPTION 0xd #define PIR_EXCEPTION 0xe #define CALLHELP_EXCEPTION 0xf #define AUDIO_DETECTION_EXCEPTION 0x10 #define SCENECHANGE_DETECTION_EXCEPTION 0x11 #define DEFOCUS_DETECTION_EXCEPTION 0x12 #define FACE_DETECTION_ENTRANCE_EXCEPTION 0x13 #define LINE_DETECTION_ENTRANCE_EXCEPTION 0x14 #define FIELD_DETECTION_ENTRANCE_EXCEPTION 0x15 #define REGION_EXITING_EXCEPTION 0x16 #define REGION_ENTRANCE_EXCEPTION 0x17 #define LOITERING_EXCEPTION 0x18 #define GROUP_EXCEPTION 0x19 #define RAPIDMOVE_EXCEPTION 0x1a #define PARKING_EXCEPTION 0x1b #define UNATTENDEDBAGGAGE_EXCEPTION 0x1c #define ATTENDEDBAGGAGE_EXCEPTION 0x1d #define DATATRAFFIC_EXCESS 0x1e #define PHONECFG_RECEIVE_SMS 0x0 #define PHONECFG_SMS_CONTROL 0x1 #define PHONECFG_CALL_CONTROL 0x2 #define PHONECFG_SMS_REBOOT 0x3 #define PHONECFG_DOOR_CONTROL 0x4 typedef struct tagNET_DVR_PHONECFG { BYTE byWhiteList[MAX_PHONE_NUM]; BYTE byPhonePerssion[32]; BYTE byAlarmHandler[32]; BYTE byRes[128]; } NET_DVR_PHONECFG, *LPNET_DVR_PHONECFG; typedef struct tagNET_DVR_SMSRELATIVEPARAM { DWORD dwSize; BYTE bEnableSmsAlarm; BYTE byRes1[7]; NET_DVR_PHONECFG struWhiteList[MAX_WHITELIST_NUM]; BYTE byRes2[32]; }NET_DVR_SMSRELATIVEPARAM, *LPNET_DVR_SMSRELATIVEPARAM; typedef struct tagNET_DVR_PHONECFG_V50 { BYTE byWhiteList[MAX_PHONE_NUM]; BYTE byPhonePerssion[32]; BYTE byAlarmHandler[32]; BYTE byAcsPassword[16]; BYTE byRes[112]; } NET_DVR_PHONECFG_V50, *LPNET_DVR_PHONECFG_V50; typedef struct tagNET_DVR_SMSRELATIVEPARAM_V50 { DWORD dwSize; BYTE bEnableSmsAlarm; BYTE byRes1[7]; NET_DVR_PHONECFG_V50 struWhiteList[NET_SDK_MAX_WHITELIST_NUM_32]; BYTE byRes2[32]; }NET_DVR_SMSRELATIVEPARAM_V50, *LPNET_DVR_SMSRELATIVEPARAM_V50; #define NET_SDK_MONITOR_ID_LEN 64 typedef struct tagNET_DVR_ACS_EVENT_COND { DWORD dwSize; DWORD dwMajor; DWORD dwMinor; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byName[NAME_LEN]; BYTE byPicEnable; BYTE byTimeType; BYTE byRes2[2]; DWORD dwBeginSerialNo; DWORD dwEndSerialNo; DWORD dwIOTChannelNo; WORD wInductiveEventType; BYTE bySearchType; BYTE byRes1; char szMonitorID[NET_SDK_MONITOR_ID_LEN]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes[140]; }NET_DVR_ACS_EVENT_COND, *LPNET_DVR_ACS_EVENT_COND; typedef struct tagNET_DVR_ACS_EVENT_DETAIL { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardType; BYTE byWhiteListNo; BYTE byReportChannel; BYTE byCardReaderKind; DWORD dwCardReaderNo; DWORD dwDoorNo; DWORD dwVerifyNo; DWORD dwAlarmInNo; DWORD dwAlarmOutNo; DWORD dwCaseSensorNo; DWORD dwRs485No; DWORD dwMultiCardGroupNo; WORD wAccessChannel; BYTE byDeviceNo; BYTE byDistractControlNo; DWORD dwEmployeeNo; WORD wLocalControllerID; BYTE byInternetAccess; BYTE byType; BYTE byMACAddr[MACADDR_LEN]; BYTE bySwipeCardType; BYTE byRes2; DWORD dwSerialNo; BYTE byChannelControllerID; BYTE byChannelControllerLampID; BYTE byChannelControllerIRAdaptorID; BYTE byChannelControllerIREmitterID; DWORD dwRecordChannelNum; char *pRecordChannelData; BYTE byUserType; BYTE byCurrentVerifyMode; BYTE byRe2[2]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes[64]; }NET_DVR_ACS_EVENT_DETAIL, *LPNET_DVR_ACS_EVENT_DETAIL; typedef struct tagNET_DVR_ACS_EVENT_CFG { DWORD dwSize; DWORD dwMajor; DWORD dwMinor; NET_DVR_TIME struTime; BYTE sNetUser[MAX_NAMELEN]; NET_DVR_IPADDR struRemoteHostAddr; NET_DVR_ACS_EVENT_DETAIL struAcsEventInfo; DWORD dwPicDataLen; char *pPicData; WORD wInductiveEventType; BYTE byTimeType; BYTE byRes[61]; }NET_DVR_ACS_EVENT_CFG, *LPNET_DVR_ACS_EVENT_CFG; typedef struct tagNET_DVR_SMSLISTINFO { DWORD dwSize; DWORD dwTotalSmsNum; BYTE byRes[8]; BYTE *pSmsParam; DWORD dwBufLen; }NET_DVR_SMSLISTINFO, *LPNET_DVR_SMSLISTINFO; typedef struct tagNET_DVR_SMSPARAM { DWORD dwIndex; BYTE byStatus; BYTE byRes[7]; NET_DVR_TIME_EX struRecvTime; }NET_DVR_SMSPARAM, *LPNET_DVR_SMSPARAM; #define MAX_SMSCONTENT_LEN 140 typedef struct tagNET_DVR_SMSCONTENT { BYTE byPhoneNum[MAX_PHONE_NUM]; BYTE byMsg[MAX_SMSCONTENT_LEN]; }NET_DVR_SMSCONTENT, *LPNET_DVR_SMSCONTENT; typedef enum { CPIN_READY = 1, CPIN_PIN = 2, CPIN_PUK = 3, CPIN_PIN2 = 4, CPIN_PUK2 = 5 }PIN_READY; typedef struct tagNET_DVR_PINSTATUS { DWORD dwSize; BYTE byStatus; BYTE byPinTimes; BYTE byPukTimes; BYTE bEnableLock; BYTE byRes[4]; }NET_DVR_PINSTATUS, *LPNET_DVR_PINSTATUS; typedef enum { PIN_ENABLE = 1, PIN_DISABLE = 2, PIN_VERIFY = 3, PUK_VERIFY = 4, PIN_CHANGE = 5 }PIN_CMD; #define MAX_PIN_LEN 12 typedef struct tagNET_DVR_PINCODEPARAM { DWORD dwSize; BYTE byPinCmd; BYTE byRes1[3]; BYTE byPinCode[MAX_PIN_LEN]; BYTE byNewPinCode[MAX_PIN_LEN]; BYTE byRes2[16]; }NET_DVR_PINCODEPARAM, *LPNET_DVR_PINCODEPARAM; typedef struct tagNET_DVR_PUSHJPEGPARA { WORD wPicSize; WORD wPicQuality; BYTE byPicTackleMode; BYTE byRes[11]; }NET_DVR_PUSHJPEGPARA, *LPNET_DVR_PUSHJPEGPARA; #define COM_PUSHALARM 0x1200 #define COM_PUSHALARM_V30 0x1201 typedef struct tagNET_DVR_PUSHALARMINFO { DWORD dwAlarmType; DWORD dwAlarmInputNumber; DWORD dwAlarmOutputNumber[MAX_ALARMOUT]; DWORD dwAlarmRelateChannel[MAX_CHANNUM]; DWORD dwChannel[MAX_CHANNUM]; DWORD dwDiskNumber[MAX_DISKNUM]; BYTE byDeviceID[NAME_LEN]; BYTE byRes[4]; }NET_DVR_PUSHALARMINFO, *LPNET_DVR_PUSHALARMINFO; typedef struct tagNET_DVR_PUSHALARMINFO_V30 { DWORD dwAlarmType; DWORD dwAlarmInputNumber; BYTE byAlarmOutputNumber[MAX_ALARMOUT_V30]; BYTE byAlarmRelateChannel[MAX_CHANNUM_V30]; BYTE byChannel[MAX_CHANNUM_V30]; BYTE byDiskNumber[MAX_DISKNUM_V30]; BYTE byDeviceID[NAME_LEN]; BYTE byRes[7]; }NET_DVR_PUSHALARMINFO_V30, *LPNET_DVR_PUSHALARMINFO_V30; typedef struct tagNET_DVR_MB_AUTOWORKPARA { BYTE byCurPowerCtrlType; BYTE byRes[3]; NET_DVR_SCHEDTIME struWorkTime[MAX_DAYS][2]; }NET_DVR_MB_AUTOWORKPARA, *LPNET_DVR_MB_AUTOWORKPARA; typedef struct tagNET_DVR_MB_POWERCTRLPARA { DWORD dwSize; DWORD dwHaltDelay; NET_DVR_MB_AUTOWORKPARA struAutoWorkPara; BYTE byEnableUnderVoltProtect; BYTE byUnderVoltPercent; BYTE byRes[34]; }NET_DVR_MB_POWERCTRLPARA, *LPNET_DVR_MB_POWERCTRLPARA; typedef struct tagNET_DVR_MB_AUTOBACKUPPARA { DWORD dwSize; BYTE byEnableAutoBackup; BYTE byRes1[3]; BYTE byBackupChannel[MAX_CHANNUM_V30]; BYTE byBackupDays[MAX_CHANNUM_V30]; BYTE byBackupFileType[MAX_CHANNUM_V30]; NET_DVR_SCHEDTIME struBackupTime[MAX_CHANNUM_V30][2]; BYTE byRes2[36]; }NET_DVR_MB_AUTOBACKUPPARA, *LPNET_DVR_MB_AUTOBACKUPPARA; typedef struct tagNET_DVR_MB_GPSPARA { DWORD dwSize; BYTE byEnableGPS; BYTE byGpsInterface; BYTE bySpeedUnit; BYTE byEnableRetrieve; int iAdjustTime; BYTE byEnableAdjustTime; BYTE byRes1[5]; WORD wGpsUploadInterval; BYTE byGpsOsdChannel[MAX_CHANNUM_V30]; DWORD dwSpeedLimit; NET_DVR_HANDLEEXCEPTION_V30 struGpsAlarm; BYTE byRes2[36]; }NET_DVR_MB_GPSPARA, *LPNET_DVR_MB_GPSPARA; #define SENSOR_IN_NUMBER 8 typedef struct tagNET_DVR_MB_SENSORINPARA { DWORD dwSize; BYTE byTriggerType[SENSOR_IN_NUMBER]; BYTE byTriggerChannel [SENSOR_IN_NUMBER]; BYTE byOsdDisplay [MAX_CHANNUM_V30]; BYTE byRes[32]; }NET_DVR_MB_SENSORINPARA, *LPNET_DVR_MB_SENSORINPARA; typedef struct tagNET_DVR_ACCELERATIONCFG { DWORD dwMaxXAcc; DWORD dwMaxYAcc; DWORD dwMaxZAcc; BYTE byRes[4]; }NET_DVR_ACCELERATIONCFG,*LPNET_DVR_ACCERATIONCFG; typedef struct tagNET_DVR_GSENSORPARA { DWORD dwSize; NET_DVR_ACCELERATIONCFG struAccelerationCfg; BYTE byModuleSelect; BYTE byRes1[3]; NET_DVR_HANDLEEXCEPTION_V30 struHandleException; BYTE byRes2[24]; }NET_DVR_GSENSORPARA, *LPNET_DVR_GSENSORPARA; typedef struct tagNET_DVR_MB_DOWNLOADSVRPARA { DWORD dwSize; NET_DVR_IPADDR struDownloadSvrIp; BYTE byRes[64]; }NET_DVR_MB_DOWNLOADSVRPARA,*LPNET_DVR_MB_DOWNLOADSVRPARA; typedef struct tagNET_DVR_PLATERECOG_PARA { DWORD dwSize; BYTE byPrMode; BYTE byPrScene; BYTE byPrDetRect; BYTE byPrPicQuality; BYTE byPrPicMode; BYTE byPlateOsdDisplay; BYTE byPrProvCharIndex; BYTE byPrProvCharIndex1; BYTE byPrProvCharIndex2; BYTE byRes[7]; }NET_DVR_PLATERECOG_PARA, *LPNET_DVR_PLATERECOG_PARA; typedef struct tagNET_DVR_SPEEDLMT_PARA { BYTE bStartMaxSpeedLimit; BYTE bStartMinSpeedLimit; BYTE byRes[6]; DWORD dwMaxSpeedLimit; DWORD dwMinSpeedLimit; }NET_DVR_SPEEDLMT_PARA, *LPNET_DVR_SPEEDLMT_PARA; typedef struct tagNET_DVR_PLATECHECK_PARA { BYTE bAlarmWhenChecked; BYTE bInformWhenChecked; BYTE byRes[6]; NET_DVR_IPADDR struBlackFtpServer; }NET_DVR_PLATECHECK_PARA, *LPNET_DVR_PLATECHECK_PARA; typedef struct tagNET_DVR_ENFORCESYS_PARA { DWORD dwSize; NET_DVR_SPEEDLMT_PARA struSpeedLmtPara; NET_DVR_PLATECHECK_PARA struPlateCheckPara; BYTE bySelPeccType; BYTE byEnfOptHabit; BYTE byAdjPrevFpsMode; BYTE byRes1; NET_DVR_IPADDR struUploadServerIp; WORD wUploadServerPort; BYTE byRes2[18]; }NET_DVR_ENFORCESYS_PARA, *LPNET_DVR_ENFORCESYS_PARA; typedef struct tagNET_DVR_PUSHMODEPARAM { BYTE byUdpPreviewMode; BYTE byVoiceWorkMode; BYTE byRes[18]; }NET_DVR_PUSHMODEPARAM, *LPNET_DVR_PUSHMODEPARAM; #define MAX_ALARMHOST_ALARMIN_NUM 512 #define MAX_ALARMHOST_ALARMOUT_NUM 512 #define ALARMHOST_MAX_AUDIOOUT_NUM 32 #define ALARMHOST_MAX_ELECTROLOCK_NUM 32 #define ALARMHOST_MAX_MOBILEGATE_NUM 32 #define ALARMHOST_MAX_SIREN_NUM 8 #define MAX_ALARMHOST_SUBSYSTEM 32 #define ALARMHOST_DETECTOR_SERIAL_LEN 9 #define ALARMHOST_DETECTOR_SERIAL_LEN_V50 16 #define MAX_DETECTOR_NUM 128 #define MAX_DETECTOR_NUM_V51 256 typedef enum tagSENSOR_TYPE { SENSOR_TYPE_NONE = 0, SENSOR_TYPE_TEMPERATURE = 1, SENSOR_TYPE_HUMIDITY , SENSOR_TYPE_WINDSPEED, SENSOR_TYPE_GAS, SENSOR_AC_VOLTAGE, SENSOR_AC_CURRENT, SENSOR_DC_VOLTAGE, SENSOR_DC_CURRENT, SENSOR_WATER_PRESSURE, SENSOR_PRESSURE_TRANSMITTER, SENSOR_FLOW_TRANSMITTER, SENSOR_WATER_LEAKAGE, SENSOR_INTERGRATED_TEMPERATURE_DETECTOR, SENSOR_ISOLATION_TEMPERATURE_DETECTOR, SENSOR_RESIDUAL_CHLORINE, SENSOR_TYPE_AC_TERMINAL = 16, SENSOR_TYPE_AC_SOCKET = 17, SENSOR_TYPE_UNKNOW = 255 }SENSOR_TYPE; typedef struct tagNET_DVR_SENSOR_INFO { DWORD dwSize; BYTE byName[NAME_LEN]; BYTE byEnable; BYTE byValid; BYTE byType; BYTE byAlarmMode; float fMeasureHigh; float fMeasureLow; float fAlarm1; float fAlarm2; float fAlarm3; float fAlarm4; DWORD dwOsdCfg; float fSensitive; BYTE bySensorStandard; BYTE byChan; BYTE byRes3[114]; }NET_DVR_SENSOR_INFO, *LPNET_DVR_SENSOR_INFO; typedef struct tagNET_DVR_SIREN_PARAM { DWORD dwSize; BYTE byName[NAME_LEN]; WORD wDelay; BYTE byRes1[2]; DWORD dwOverallEventJointSirenOn; DWORD dwSubsystemEventJointSirenOn[MAX_ALARMHOST_SUBSYSTEM]; BYTE byRes2[448]; }NET_DVR_SIREN_PARAM, *LPNET_DVR_SIREN_PARAM; typedef struct tagNET_DVR_AIR_CONDITION_PARAM { DWORD dwSize; BYTE byEnable; BYTE byMode; BYTE byTemperature; BYTE byRes[9]; }NET_DVR_AIR_CONDITION_PARAM, *LPNET_DVR_AIR_CONDITION_PARAM; typedef enum tagDETECTOR_TYPE { PANIC_BUTTON = 0, MAGNETIC_CONTACT, SMOKE_DETECTOR, ACTIVE_INFRARED_DETECTOR, PASSIVE_INFRARED_DETECTOR, GLASS_BREAK_DETECTOR, VIBRATION_DETECTOR, DUAL_TECHNOLOGY_PIR_DETECTOR, TRIPLE_TECHNOLOGY_PIR_DETECTOR, HUMIDITY_DETECTOR, TEMPERATURE_DETECTOR, COMBUSTIBLE_GAS_DETECTOR, DYNAMIC_SWITCH, CONTROL_SWITCH, SMART_LOCK, WATER_DETECTOR, DISPLACEMENT_DETECTOR, SINGLE_INFRARED_DETECTOR, SINGLE_ZONE_MODULE, CURTAIN_INFRARED_DETECTOR, DOORBELL_SWITCH=21, MEDICAL_HELP_BUTTON, OUTDOOR_DUAL_TECH, OTHER_DETECTOR = 0xffff }DETECTOR_TYPE; typedef struct tagNET_DVR_ALARMIN_PARAM { DWORD dwSize; BYTE byName[NAME_LEN]; WORD wDetectorType; BYTE byType; BYTE byUploadAlarmRecoveryReport; DWORD dwParam; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAssociateSirenOut[8]; BYTE bySensitivityParam; BYTE byArrayBypass; BYTE byJointSubSystem; BYTE byModuleStatus; WORD wModuleAddress; BYTE byModuleChan; BYTE byModuleType; WORD wZoneIndex; WORD wInDelay; WORD wOutDelay; BYTE byAlarmType; BYTE byZoneResistor; float fZoneResistorManual; BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN]; BYTE byZoneSignalType; BYTE byDisableDetectorTypeCfg; BYTE byTimeOutRange; BYTE byAssociateLampOut[8]; WORD wTimeOut; BYTE byDetectorSignalIntensity; BYTE byTimeOutMethod; BYTE byRes3[8]; }NET_DVR_ALARMIN_PARAM, *LPNET_DVR_ALARMIN_PARAM; typedef struct tagNET_DVR_ALARMIN_PARAM_V50 { DWORD dwSize; BYTE byName[NAME_LEN]; WORD wDetectorType; BYTE byType; BYTE byUploadAlarmRecoveryReport; DWORD dwParam; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT]; BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAssociateSirenOut[8]; BYTE bySensitivityParam; BYTE byArrayBypass; BYTE byJointSubSystem; BYTE byModuleStatus; WORD wModuleAddress; BYTE byModuleChan; BYTE byModuleType; WORD wZoneIndex; WORD wInDelay; WORD wOutDelay; BYTE byAlarmType; BYTE byZoneResistor; float fZoneResistorManual; BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN_V50]; BYTE byZoneSignalType; BYTE byDisableDetectorTypeCfg; WORD wTimeOut; BYTE byAssociateLampOut[8]; BYTE byVoiceFileName[32]; BYTE byTimeOutRange; BYTE byDetectorSignalIntensity; BYTE byTimeOutMethod; BYTE byRes3[509]; }NET_DVR_ALARMIN_PARAM_V50, *LPNET_DVR_ALARMIN_PARAM_V50; #define MAX_MAX_ALARMIN_NUM 64 typedef struct tagNET_DVR_MULTI_ALARMIN_COND { DWORD dwSize; int iZoneNo[MAX_MAX_ALARMIN_NUM]; BYTE byRes[256]; }NET_DVR_MULTI_ALARMIN_COND, *LPNET_DVR_MULTI_ALARMIN_COND; typedef struct tagNET_DVR_SINGLE_ALARMIN_PARAM { DWORD dwSize; WORD wZoneNo; BYTE byJointSubSystem; BYTE byType; BYTE byName[NAME_LEN]; WORD wDetectorType; WORD wInDelay; WORD wOutDelay; BYTE byAlarmType; BYTE byZoneSignalType; BYTE byDetectorSerialNo[ALARMHOST_DETECTOR_SERIAL_LEN]; BYTE byDisableDetectorTypeCfg; BYTE byTimeOutRange; BYTE byDetectorSignalIntensity; WORD wTimeOut; BYTE byTimeOutMethod; BYTE byRes2[113]; }NET_DVR_SINGLE_ALARMIN_PARAM, *LPNET_DVR_SINGLE_ALARMIN_PARAM; typedef struct tagNET_DVR_ALARMIN_PARAM_LIST { DWORD dwSize; NET_DVR_SINGLE_ALARMIN_PARAM struSingleAlarmInParam[MAX_MAX_ALARMIN_NUM]; BYTE byRes[128]; }NET_DVR_ALARMIN_PARAM_LIST, *LPNET_DVR_ALARMIN_PARAM_LIST; typedef struct tagNET_DVR_ALARMOUT_PARAM { DWORD dwSize; BYTE byName[NAME_LEN]; WORD wDelay; WORD wTriggerIndex; BYTE byAssociateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byModuleType; BYTE byModuleStatus; WORD wModuleAddress; BYTE byModuleChan; BYTE byWorkMode; BYTE byAlarmOutMode; BYTE byTimeOn; BYTE byTimeOff; BYTE byRes2[51]; }NET_DVR_ALARMOUT_PARAM, *LPNET_DVR_ALARMOUT_PARAM; typedef struct tagNET_DVR_ALARMIN_SETUP { BYTE byAssiciateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[100]; }NET_DVR_ALARMIN_SETUP, *LPNET_DVR_ALARMIN_SETUP; typedef struct tagNET_DVR_ALARMHOST_MAIN_STATUS { DWORD dwSize; BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM]; BYTE byAlarmInFaultStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[56]; }NET_DVR_ALARMHOST_MAIN_STATUS, *LPNET_DVR_ALARMHOST_MAIN_STATUS; typedef struct tagNET_DVR_ALARMHOST_MAIN_STATUS_V40 { DWORD dwSize; BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM]; BYTE byAlarmInFaultStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInMemoryStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInTamperStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byEnableSubSystem[MAX_ALARMHOST_SUBSYSTEM]; BYTE bySubSystemGuardType[MAX_ALARMHOST_SUBSYSTEM]; BYTE byRes[448]; }NET_DVR_ALARMHOST_MAIN_STATUS_V40, *LPNET_DVR_ALARMHOST_MAIN_STATUS_V40; typedef struct tagNET_DVR_ALARMHOST_MAIN_STATUS_V51 { DWORD dwSize; BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM]; BYTE byAlarmInFaultStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInMemoryStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInTamperStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byEnableSubSystem[MAX_ALARMHOST_SUBSYSTEM]; BYTE bySubSystemGuardType[MAX_ALARMHOST_SUBSYSTEM]; BYTE bySubSystemAlarm[MAX_ALARMHOST_SUBSYSTEM]; BYTE byAlarmOutCharge[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAlarmOutTamperStatus[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAlarmInShieldedStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmOutLinkage[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byRes[512]; }NET_DVR_ALARMHOST_MAIN_STATUS_V51, *LPNET_DVR_ALARMHOST_MAIN_STATUS_V51; typedef struct tagNET_DVR_ALARMHOST_OTHER_STATUS { DWORD dwSize; BYTE bySirenStatus[ALARMHOST_MAX_SIREN_NUM]; BYTE byRes[92]; }NET_DVR_ALARMHOST_OTHER_STATUS, *LPNET_DVR_ALARMHOST_OTHER_STATUS; typedef struct tagNET_DVR_ALARMHOST_OTHER_STATUS_V50 { DWORD dwSize; BYTE bySirenStatus[ALARMHOST_MAX_SIREN_NUM]; BYTE byDetetorPower[MAX_DETECTOR_NUM]; BYTE byDetetorConnection[MAX_DETECTOR_NUM]; BYTE bySirenPower[ALARMHOST_MAX_SIREN_NUM]; BYTE bySirenTamperStatus[ALARMHOST_MAX_SIREN_NUM]; BYTE byPowerStausEnabled[MAX_DETECTOR_NUM / 8]; BYTE byDetetorPowerStatus[MAX_DETECTOR_NUM / 8]; BYTE byDetetorPowerType; BYTE byRes[975]; }NET_DVR_ALARMHOST_OTHER_STATUS_V50, *LPNET_DVR_ALARMHOST_OTHER_STATUS_V50; typedef struct tagNET_DVR_ALARMHOST_OTHER_STATUS_V51 { DWORD dwSize; BYTE bySirenStatus[ALARMHOST_MAX_SIREN_NUM]; BYTE byDetetorPower[MAX_DETECTOR_NUM_V51]; BYTE byDetetorConnection[MAX_DETECTOR_NUM_V51]; BYTE bySirenPower[ALARMHOST_MAX_SIREN_NUM]; BYTE bySirenTamperStatus[ALARMHOST_MAX_SIREN_NUM]; BYTE byPowerStausEnabled[MAX_DETECTOR_NUM_V51 / 8]; BYTE byDetetorPowerStatus[MAX_DETECTOR_NUM_V51 / 8]; BYTE byDetetorPowerType; BYTE byRes[431]; }NET_DVR_ALARMHOST_OTHER_STATUS_V51, *LPNET_DVR_ALARMHOST_OTHER_STATUS_V51; typedef struct tagNET_DVR_ALARMHOST_ENABLECFG { DWORD dwSize; BYTE byAudioOutEnable[ALARMHOST_MAX_AUDIOOUT_NUM]; BYTE byElectroLockEnable[ALARMHOST_MAX_ELECTROLOCK_NUM]; BYTE byMobileGateEnable[ALARMHOST_MAX_MOBILEGATE_NUM]; BYTE bySirenEnable[ALARMHOST_MAX_SIREN_NUM]; BYTE bySerialPurpose; BYTE byRes[63]; }NET_DVR_ALARMHOST_ENABLECFG, *LPNET_DVR_ALARMHOST_ENABLECFG; typedef struct tagNET_DVR_ALARMHOST_ABILITY { DWORD dwSize; WORD wTotalAlarmInNum; WORD wLocalAlarmInNum; WORD wExpandAlarmInNum; WORD wTotalAlarmOutNum; WORD wLocalAlarmOutNum; WORD wExpandAlarmOutNum; WORD wTotalRs485Num; WORD wLocalRs485Num; WORD wExpandRs485Num; WORD wFullDuplexRs485Num; WORD wTotalSensorNum; WORD wLocalSensorNum; WORD wExpandSensorNum; WORD wAudioOutNum; WORD wGatewayNum; WORD wElectroLockNum; WORD wSirenNum; WORD wSubSystemNum; WORD wNetUserNum; WORD wKeyboardNum; WORD wOperatorUserNum; BYTE bySupportDetector; BYTE bySupportSensitivity; BYTE bySupportArrayBypass; BYTE bySupportAlarmInDelay; BYTE bySupportAlarmInType[16]; BYTE byTelNum; BYTE byCenterGroupNum; BYTE byGPRSNum; BYTE byNetNum; BYTE byAudioNum; BYTE by3GNum; BYTE byAnalogVideoChanNum; BYTE byDigitalVideoChanNum; BYTE bySubSystemArmType; BYTE byPublicSubSystemNum; DWORD dwSupport1; DWORD dwSubSystemEvent; DWORD dwOverallEvent; DWORD dwFaultType; BYTE byPublicSubsystemAssociateSubsystemNum; BYTE byOverallKeyboard; WORD wSafetyCabinSupport; BYTE by485SlotNum; BYTE bySubSystemAttributeAbility; WORD wKeyboardAddrNum; BYTE byAlarmLampNum; BYTE byRes[117]; }NET_DVR_ALARMHOST_ABILITY, *LPNET_DVR_ALARMHOST_ABILITY; #define MAX_485CHAN 256 #define MAX_485SLOT 256 typedef struct tagNET_DVR_485_SLOT_LIST_INFO { DWORD dwSize; BYTE byAll; BYTE byres[3]; BYTE byIndex[MAX_485SLOT]; BYTE byRes[64]; }NET_DVR_485_SLOT_LIST_INFO,* LPNET_DVR_485_SLOT_LIST_INFO; typedef struct tagNET_DVR_485LIST_INFO { DWORD dwSize; BYTE byAll; BYTE byres[3]; BYTE byIndex[MAX_485CHAN]; BYTE byRes[64]; }NET_DVR_485LIST_INFO,*LPNET_DVR_485LIST_INFO; typedef struct tagNET_DVR_ALARM_RS485CFG { DWORD dwSize; BYTE sDeviceName[NAME_LEN]; WORD wDeviceType; WORD wDeviceProtocol; DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; BYTE byDuplex; BYTE byWorkMode; BYTE byChannel; BYTE bySerialType; BYTE byMode; BYTE byRes[35]; }NET_DVR_ALARM_RS485CFG, *LPNET_DVR_ALARM_RS485CFG; #define MAX_DEVICE_PROTO_NUM 256 #define MAX_DEVICE_TYPE_NUM 256 typedef struct tagNET_DVR_DEVICE_PROTO_LIST { DWORD dwSize; DWORD dwProtoNum; NET_DVR_PROTO_TYPE struProtoType[MAX_DEVICE_PROTO_NUM]; BYTE byRes[12]; }NET_DVR_DEVICE_PROTO_LIST, *LPNET_DVR_DEVICE_PROTO_LIST; typedef struct tagNET_DVR_DEVICE_TYPE { DWORD dwType; BYTE byDescribe[DESC_LEN]; }NET_DVR_DEVICE_TYPE, *LPNET_DVR_DEVICE_TYPE; typedef struct tagNET_DVR_DEVICE_TYPE_LIST { DWORD dwSize; DWORD dwTypeNum; NET_DVR_DEVICE_TYPE struDeviceType[MAX_DEVICE_TYPE_NUM]; BYTE byRes[12]; }NET_DVR_DEVICE_TYPE_LIST, *LPNET_DVR_DEVICE_TYPE_LIST; #define MAX_ALARMHOST_VIDEO_CHAN 64 typedef struct tagNET_DVR_ALARM_DEVICE_USER { DWORD dwSize; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; NET_DVR_IPADDR struUserIP; BYTE byMACAddr[MACADDR_LEN]; BYTE byUserType; BYTE byAlarmOnRight; BYTE byAlarmOffRight; BYTE byBypassRight; BYTE byOtherRight[MAX_RIGHT]; BYTE byNetPreviewRight[MAX_ALARMHOST_VIDEO_CHAN/8]; BYTE byNetRecordRight[MAX_ALARMHOST_VIDEO_CHAN/8]; BYTE byNetPlaybackRight[MAX_ALARMHOST_VIDEO_CHAN/8]; BYTE byNetPTZRight[MAX_ALARMHOST_VIDEO_CHAN/8]; BYTE sOriginalPassword[PASSWD_LEN]; BYTE byRes2[152]; }NET_DVR_ALARM_DEVICE_USER, *LPNET_DVR_ALARM_DEVICE_USER; typedef struct tagNET_DVR_KEYBOARD_USER { DWORD dwSize; DWORD dwID; BYTE byDefanceArea[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[560]; }NET_DVR_KEYBOARD_USER, *LPNET_DVR_KEYBOARD_USER; typedef struct tagNET_DVR_OPERATE_USER { DWORD dwSize; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE bySubSystemPermission; BYTE byRes[63]; }NET_DVR_OPERATE_USER, *LPNET_DVR_OPERATE_USER; typedef struct tagNET_DVR_GATEWAY_CFG { DWORD dwSize; BYTE byName[NAME_LEN]; BYTE byEnable; BYTE byLocalEnable; WORD wDelayTime; BYTE byLockWorkMode; BYTE byRes[31]; }NET_DVR_GATEWAY_CFG, *LPNET_DVR_GATEWAY_CFG; typedef struct tagNET_DVR_SENSOR_ALARM { DWORD dwSize; DWORD dwAbsTime; BYTE byName[NAME_LEN]; BYTE bySensorChannel; BYTE byType; BYTE byAlarmType; BYTE byAlarmMode; float fValue; float fOriginalValue; BYTE byRes2[28]; }NET_DVR_SENSOR_ALARM, *LPNET_DVR_SENSOR_ALARM; #define PROTOCOL_VERTION_LEN 32 typedef struct tagNET_DVR_RS485_PROTOCOL_VERSION { DWORD dwSize; BYTE byProtocleVersion[PROTOCOL_VERTION_LEN]; BYTE byRes[128]; }NET_DVR_RS485_PROTOCOL_VERSION, *LPNET_DVR_RS485_PROTOCOL_VESRION; typedef struct tagNET_DVR_ALARMHOST_ALARMINFO { DWORD dwAlarmType; BYTE byAlarmInputNumber[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[160]; }NET_DVR_ALARMHOST_ALARMINFO,*LPNET_DVR_ALARMHOST_ALARMINFO; typedef struct tagNET_DVR_SWITCH_ALARM { DWORD dwSize; BYTE byName[NAME_LEN]; WORD wSwitchChannel; BYTE byAlarmType; BYTE byRes[41]; }NET_DVR_SWITCH_ALARM, *LPNET_DVR_SWITCH_ALARM; typedef union tagNET_DVR_ALARMHOST_EXCEPTION_PARAM { DWORD dwUnionSize[20]; }NET_DVR_ALARMHOST_EXCEPTION_PARAM, *LPNET_DVR_ALARMHOST_EXCEPTION_PARAM; typedef struct tagNET_DVR_ALARMHOST_EXCEPTION_ALARM { DWORD dwSize; DWORD dwExceptionType; BYTE byRes[36]; }NET_DVR_ALARMHOST_EXCEPTION_ALARM, *LPNET_DVR_ALARMHOST_EXCEPTION_ALARM; #define MAX_CENTERNUM 4 typedef struct tagNET_DVR_PHONECENTERDIALCFG { BYTE sCenterName[NAME_LEN]; BYTE byPhoneNum[MAX_PHONE_NUM]; BYTE byRepeatCall; BYTE byPstnProtocol; BYTE byDialDelay; BYTE byPstnTransMode; BYTE byEnable; BYTE byRes1[5]; BYTE byReceiverId[6]; BYTE byRes2[32]; }NET_DVR_PHONECENTERDIALCFG, *LPNET_DVR_PHONECENTERDIALCFG; typedef struct tagNET_DVR_ALARMHOSTDIALCFG { DWORD dwSize; NET_DVR_PHONECENTERDIALCFG struPhoneCenterParam[MAX_CENTERNUM]; WORD wReportPeriod; WORD wFirstReportTime; BYTE byReportValid; BYTE byRes[19]; }NET_DVR_ALARMHOSTDIALCFG, *LPNET_DVR_ALARMHOSTDIALCFG; typedef struct tagNET_DVR_ALARMHOSTDIALSETUPMODE { DWORD dwSize; BYTE byEnableMode; BYTE byCallType; BYTE byRes1[14]; }NET_DVR_ALARMHOSTDIALSETUPMODE, *LPNET_DVR_ALARMHOSTDIALSETUPMODE; #define MAX_PU_CHAN_NUM 512 typedef struct tagNET_DVR_PU_CHAN_INFO { NET_DVR_IPADDR struIpAddr; WORD wPort; WORD wChannel; BYTE byRes[24]; }NET_DVR_PU_CHAN_INFO, *LPNET_DVR_PU_CHAN_INFO; typedef struct tagNET_DVR_PU_CHAN_LIST { DWORD dwSize; DWORD dwNum; NET_DVR_PU_CHAN_INFO struPuChanInfo[MAX_PU_CHAN_NUM]; }NET_DVR_PU_CHAN_LIST, *LPNET_DVR_PU_CHAN_LIST; #define MAX_ALARM_CAM_NUM 32 typedef struct tagNET_DVR_PTZ_CTRL { BYTE byEnable; BYTE byType; BYTE byPtzNo; BYTE byRes[5]; }NET_DVR_PTZ_CTRL, *LPNET_DVR_PTZ_CTRL; typedef struct tagNET_DVR_ALARM_CAM_INFO { DWORD dwCamID; DWORD dwRecordTime; DWORD dwMonID; DWORD dwResidentTime; NET_DVR_PTZ_CTRL struPtzCtrl; BYTE byAlarmOffMode; BYTE byDevType; BYTE byDecChan; BYTE byRes[17]; }NET_DVR_ALARM_CAM_INFO, *LPNET_DVR_ALARM_CAM_INFO; typedef struct tagNET_DVR_ALARM_CAM_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[7]; DWORD dwNum; NET_DVR_ALARM_CAM_INFO struAlarmCam[MAX_ALARM_CAM_NUM]; }NET_DVR_ALARM_CAM_CFG, *LPNET_DVR_ALARM_CAM_CFG; #define MAX_GATEWAY_NUM 8 typedef struct tagNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM { DWORD dwSize; BYTE byEnterDoor[8]; BYTE byExitDoor[8]; BYTE byAlarmIn[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[128]; }NET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM, *LPNET_DVR_ALARMHOST_AUDIO_ASSOCIATE_ALARM; typedef struct tagNET_DVR_UPLOAD_PARAM { DWORD dwSize; BYTE byUploadType; BYTE byDataType; BYTE byDataNum; BYTE byAudioType; char sFileName[260]; char *lpBuffer; DWORD dwBufferSize; BYTE byRes2[128]; }NET_DVR_UPLOAD_PARAM, *LPNET_DVR_UPLOAD_PARAM; typedef void(*DATADOWNLOAD)(LONG nDownloadHandle, DWORD dwDataType, void* pBuffer, DWORD dwBufSize, void *pUser); typedef struct tagNET_DVR_ALARMHOST_PARAM { DWORD dwSize; BYTE byDownType; BYTE byDataType; BYTE byDataNum; BYTE byRes1; char sFileName[260]; DATADOWNLOAD lpDataCallBack; void* pUserData; BYTE byRes2[128]; }NET_DVR_DOWNLOAD_PARAM, *LPNET_DVR_DOWNLOAD_PARAM; typedef struct tagNET_DVR_ALARMHOST_DOWNLOAD_PARAM { DWORD dwSize; BYTE byDownType; BYTE byDataType; BYTE byDataNum; BYTE byRes1; char sFileName[260]; DATADOWNLOAD lpDataCallBack; void* pUserData; BYTE byRes2[128]; }NET_DVR_ALARMHOST_DOWNLOAD_PARAM, *LPNET_DVR_ALARMHOST_DOWNLOAD_PARAM; typedef struct tagNET_DVR_LED_SCREEN_CFG { DWORD dwSize; BYTE sLEDName[NAME_LEN]; BYTE byTransMode; BYTE byProtocolType; BYTE byLEDColor; BYTE byDataPolarity; BYTE byOEPolarity; BYTE byScanMode; BYTE byRes1[2]; WORD wLEDWidth; WORD wLEDHeight; BYTE byRes2[64]; }NET_DVR_LED_SCREEN_CFG, *LPNET_DVR_LED_SCREEN_CFG; #define MAX_CONTENT_LEN 512 typedef struct tagNET_DVR_LED_CONTENT_CFG { DWORD dwSize; BYTE sLEDContent[MAX_CONTENT_LEN]; BYTE byContentAct; BYTE byContentSpeed; BYTE byContentStayTime; BYTE byRes[33]; }NET_DVR_LED_CONTENT_CFG, *LPNET_DVR_LED_CONTENT_CFG; #define LED_TIMER_NUM 3 #define TIME_SEGMENT_A_DAY 48 typedef struct tagNET_DVR_SWITCH_TIME { BYTE byValid; BYTE byRes[3]; NET_DVR_TIME_EX struTimeOn; NET_DVR_TIME_EX struTimeOff; }NET_DVR_SWITCH_TIME, *LPNET_DVR_SWITCH_TIME; typedef struct tagNET_DVR_LED_SWITCH_TIME { DWORD dwSize; NET_DVR_SWITCH_TIME struTimer[LED_TIMER_NUM ]; BYTE byRes[64]; }NET_DVR_LED_SWITCH_TIME, *LPNET_DVR_LED_SWITCH_TIME; typedef struct tagNET_DVR_LED_BRIGHTNESS_STEP { DWORD dwSize; BYTE byValid; BYTE byRes1[3]; BYTE byBrightnessStep[TIME_SEGMENT_A_DAY ]; BYTE byRes2[48]; }NET_DVR_LED_BRIGHTNESS_STEP, *LPNET_DVR_LED_BRIGHTNESS_STEP; typedef struct tagNET_DVR_LED_STATUS { DWORD dwSize; BYTE bySwitchState; BYTE byBrightness; BYTE byRes[62]; }NET_DVR_LED_STATUS, *LPNET_DVR_LED_STATUS; #define MAX_DECODE_CARD_NUM 6 typedef enum _HD_DISPLAY_FORMAT { HD_DISPLAY_FORMAT_INVALID = 0x00000000, HD_DISPLAY_FORMAT_CVBS = 0x00000001, HD_DISPLAY_FORMAT_DVI = 0x00000002, HD_DISPLAY_FORMAT_VGA = 0x00000004, HD_DISPLAY_FORMAT_HDMI = 0x00000008, HD_DISPLAY_FORMAT_YPbPr = 0x00000010 }HD_DISPLAY_FORMAT,*LPHD_DISPLAY_FORMAT; typedef struct tagNET_DVR_DECCARD_ABILITY { BYTE byCardType; BYTE byDecNums; BYTE byDispNums; BYTE byDecStartIdx; BYTE byDispStartIdx; BYTE byDispResolution[80]; BYTE byDispFormat[8]; BYTE byWindowMode[4][8]; BYTE byRes[35]; } NET_DVR_DECCARD_ABILITY,*LPNET_DVR_DECCARD_ABILITY; typedef struct tagNET_DVR_DECODESVR_ABILITY { DWORD dwSize; BYTE byCardNums; BYTE byStartChan; BYTE byRes1[2]; NET_DVR_DECCARD_ABILITY struDecCardAbility[MAX_DECODE_CARD_NUM]; BYTE byRes2[64]; }NET_DVR_DECODESVR_ABILITY, *LPNET_DVR_DECODESVR_ABILITY; typedef struct tagNET_MATRIX_DEV_CHAN_INFO { NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; BYTE byUsedSlotNum; BYTE bySlotNum; BYTE byRes[68]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; }NET_MATRIX_DEV_CHAN_INFO,*LPNET_MATRIX_DEV_CHAN_INFO; typedef struct tagNET_MATRIX_PU_STREAM_CFG { DWORD dwSize; NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg; NET_MATRIX_DEV_CHAN_INFO struDevChanInfo; } NET_MATRIX_PU_STREAM_CFG,LPNET_MATRIX_PU_STREAM_CFG; typedef struct tagNET_DVR_MATRIX_CAMERACFG { DWORD dwGlobalIndex; DWORD dwInterIndex; BYTE sCamName[NAME_LEN]; NET_MATRIX_PU_STREAM_CFG struPuStreamCfg; } NET_DVR_MATRIX_CAMERACFG,*LPNET_DVR_MATRIX_CAMERACFG; typedef struct tagNET_DVR_MATRIX_CAMERALIST { DWORD dwSize; BYTE byRes[12]; DWORD dwCamNum; BYTE *pBuffer; DWORD dwBufLen; } NET_DVR_MATRIX_CAMERALIST,*LPNET_DVR_MATRIX_CAMERALIST; typedef struct tagNET_DVR_DISP_CHAN_INFO { NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byDispChannel; BYTE byUsedSlotNum; BYTE bySlotNum; BYTE byRes[7]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; }NET_DVR_DISP_CHAN_INFO,*LPNET_DVR_DISP_CHAN_INFO; typedef struct tagNET_DVR_MATRIX_MONITORCFG { DWORD dwGlobalIndex; DWORD dwInterIndex; BYTE sMonName[NAME_LEN]; NET_DVR_DISP_CHAN_INFO struDispChanCfg; } NET_DVR_MATRIX_MONITORCFG,*LPNET_DVR_MATRIX_MONITORCFG; typedef struct tagNET_DVR_MATRIX_MONITORLIST { DWORD dwSize; BYTE byRes[12]; DWORD dwMonNum; BYTE *pBuffer; DWORD dwBufLen; } NET_DVR_MATRIX_MONITORLIST,*LPNET_DVR_MATRIX_MONITORLIST; #define MAX_SUBMATRIX_NUM 8 typedef struct tagNET_DVR_SUBMATRIXINFO { BYTE byMainMatrix; BYTE bySubMatrixSequence; BYTE byLoginType; BYTE byRes1[9]; NET_DVR_IPADDR struSubMatrixIP; WORD wSubMatrixPort; BYTE byRes2[6]; NET_DVR_IPADDR struSubMatrixIPMask; NET_DVR_IPADDR struGatewayIpAddr; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; char sDomainName[MAX_DOMAIN_NAME]; char sDnsAddress[MAX_DOMAIN_NAME]; BYTE sSerialNumber[SERIALNO_LEN]; BYTE byRes3[16]; }NET_DVR_SUBMATRIXINFO, *LPNET_DVR_SUBMATRIXINFO; typedef struct tagNET_DVR_ALLUNITEDMATRIXINFO { DWORD dwSize; NET_DVR_SUBMATRIXINFO struSubMatrixInfo[MAX_SUBMATRIX_NUM]; BYTE byRes2[32]; }NET_DVR_ALLUNITEDMATRIXINFO, *LPNET_DVR_ALLUNITEDMATRIXINFO; #define MAX_GATEWAYTRUNKNUM 1024 typedef struct tagNET_DVR_MATRIXGATEWAYNOTE { WORD wTrunkInToOutAbility; WORD wTrunkOutToInAbility; BYTE byRes[4]; NET_DVR_MATRIXSUBSYSTEMINFO struInputNote; NET_DVR_MATRIXSUBSYSTEMINFO struOutputNote; }NET_DVR_MATRIXGATEWAYNOTE, *LPNET_DVR_MATRIXGATEWAYNOTE; typedef struct tagNET_DVR_MATRIXGATEWAYINFO { DWORD dwSize; NET_DVR_MATRIXGATEWAYNOTE struGatewayNote[MAX_GATEWAYTRUNKNUM]; BYTE byRes [32]; }NET_DVR_MATRIXGATEWAYINFO, *LPNET_DVR_MATRIXGATEWAYINFO; typedef struct tagNET_DVR_MATRIXCODESYSTEMINFO { BYTE byMatrixNum; BYTE bySubSystemNum; BYTE byChan; BYTE byRes [13]; }NET_DVR_MATRIXCODESYSTEMINFO,*LPNET_DVR_MATRIXCODESYSTEMINFO; typedef struct tagNET_DVR_MATRIXDECODESYSTEMINFO { BYTE byMatrixNum; BYTE bySubSystemNum; BYTE byDispChan; BYTE bySubDispChan; BYTE byRes [12]; }NET_DVR_MATRIXDECODESYSTEMINFO,*LPNET_DVR_MATRIXDECODESYSTEMINFO; typedef struct tagNET_DVR_MATRIXSWITCH { NET_DVR_MATRIXCODESYSTEMINFO struInputNote; NET_DVR_MATRIXDECODESYSTEMINFO struOutputNote; BYTE byRes[32]; }NET_DVR_MATRIXSWITCH, *LPNET_DVR_MATRIXSWITCH; typedef enum { ENC_CARD = 0, DEC_CARD, SD_DEC_CARD, FPGA_CARD, CS_CARD, ALERTOR_CARD, NAT_0, NAT_1, VCA_CARD, VGA_DEC_CARD, VGA_ENC_CARD, ERR_CARD, } DEV_TYPE; typedef struct tagNET_DVR_MATRIXSWITCHCTRL { DWORD dwCamId; DWORD dwMonId; BYTE bySubWindowNum; BYTE bySwitchType; WORD wAlarmType; DWORD dwResidentTime; BYTE byVcaDevType; BYTE byWallNo; BYTE byRes[18]; }NET_DVR_MATRIXSWITCHCTRL, *LPNET_DVR_MATRIXSWITCHCTRL; typedef struct tagNET_DVR_MATRIXDATABASE { DWORD dwDevType; DWORD dwParam; BYTE byFileType; BYTE byRes [3]; } NET_DVR_MATRIXDATABASE, *LPNET_DVR_MATRIXDATABASE; typedef struct tagNET_DVR_SUBSYSTEMINFO_V40 { BYTE bySubSystemType; BYTE byChan; BYTE byLoginType; BYTE bySlotNum ; BYTE byRes1[4]; NET_DVR_IPADDR struSubSystemIP; NET_DVR_IPADDR struSubSystemIPMask; NET_DVR_IPADDR struGatewayIpAddr; WORD wSubSystemPort; BYTE byRes2[6]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; char sDomainName[MAX_DOMAIN_NAME]; char sDnsAddress[MAX_DOMAIN_NAME]; BYTE sSerialNumber[SERIALNO_LEN]; BYTE byBelongBoard; BYTE byInterfaceType; BYTE byInterfaceNums; BYTE byInterfaceStartNum; BYTE byDeviceName[20]; BYTE byAudioChanNums; BYTE byAudioChanStartNum; BYTE byAudioChanType; BYTE byRes3[33]; }NET_DVR_SUBSYSTEMINFO_V40, *LPNET_DVR_SUBSYSTEMINFO_V40; #define MAX_SUBSYSTEM_NUM_V40 120 typedef struct tagNET_DVR_ALLSUBSYSTEMINFO_V40 { DWORD dwSize; NET_DVR_SUBSYSTEMINFO_V40 struSubSystemInfo[MAX_SUBSYSTEM_NUM_V40]; BYTE byRes[8]; }NET_DVR_ALLSUBSYSTEMINFO_V40, *LPNET_DVR_ALLSUBSYSTEMINFO_V40; typedef struct tagNET_DVR_SUBSYSTEM_BASIC_INFO { DWORD dwSize; BYTE bySubSystemType; BYTE bySubSystemNo; BYTE byInterfaceType; BYTE byRes1; DWORD dwChan; NET_DVR_IPADDR struSubSystemIP; NET_DVR_IPADDR struSubSystemIPMask; NET_DVR_IPADDR struGatewayIpAddr; WORD wSubSystemPort; BYTE byRes2[6]; BYTE sSerialNumber[SERIALNO_LEN]; BYTE byBelongBoard; BYTE byBelongBoardH; BYTE byRes3[2]; BYTE byDeviceName[20]; DWORD dwStartChanNo; BYTE byDevNo; BYTE byRes4[63]; }NET_DVR_SUBSYSTEM_BASIC_INFO, *LPNET_DVR_SUBSYSTEM_BASIC_INFO; typedef struct NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE { DWORD dwSize; DWORD dwErrorCode; BYTE byDevNo; BYTE bySubSystemNo; BYTE byRes[30]; } NET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE,*LPNET_DVR_SUBSYSTEM_BASIC_INFO_RESPONSE; typedef struct NET_DVR_CAMERA_INFO_RESPONSE { DWORD dwErrorCode; DWORD dwCamId; BYTE byRes[4]; } NET_DVR_CAMERA_INFO_RESPONSE,*LPNET_DVR_CAMERA_INFO_RESPONSE; typedef struct NET_DVR_MONITOR_INFO_RESPONSE { DWORD dwErrorCode; DWORD dwMonId; BYTE byRes[4]; } NET_DVR_MONITOR_INFO_RESPONSE, *LPNET_DVR_MONITOR_INFO_RESPONSE; typedef struct tagNET_DVR_AUDIO_INFO { DWORD dwSize; BYTE byAudioChanType; BYTE byRes1[3]; DWORD dwAudioNo; BYTE byRes2[16]; }NET_DVR_AUDIO_INFO, *LPNET_DVR_AUDIO_INFO; typedef struct tagNET_DVR_SINGLESUBSYSTEMJOININFO_V40 { BYTE bySubSystemType; BYTE byConnectStatus; BYTE byMatrixNum; BYTE bySubSystemNum; NET_DVR_DECSUBSYSTEMJIONSTATUS struDecSub [MATRIX_MAXDECSUBSYSTEMCHAN]; BYTE byBindStatus; BYTE bySlotNum ; BYTE byDecodeAbility; BYTE byUsedTrunk; BYTE byRes[64]; }NET_DVR_SINGLESUBSYSTEMJOININFO_V40,LPNET_DVR_SINGLESUBSYSTEMJOININFO_V40; typedef struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V40 { DWORD dwSize; NET_DVR_SINGLESUBSYSTEMJOININFO_V40 struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM_V40]; BYTE byRes[48]; }NET_DVR_ALLDECSUBSYSTEMJOININFO_V40, *LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V40; #define MAX_OPTICALFIBER_NUM 16 typedef struct tagNET_DVR_SUBSYSTEM_ABILITY { BYTE bySubSystemType; BYTE byChanNum; BYTE byStartChan; BYTE bySlotNum ; BYTE byRes1[4]; union { BYTE byRes[200]; struct { BYTE byDecode; BYTE byNeedPreAllocDec; BYTE byVACType; BYTE byRes[197]; }struVACSystemAbility; struct { BYTE byVGANums; BYTE byBNCNums; BYTE byHDMINums; BYTE byDVINums; BYTE byLayerNums ; BYTE bySpartan; BYTE byDecType; BYTE byOutputSwitch; BYTE bySDINums; BYTE byRes1[38]; BYTE byDecoderType ; BYTE byRes2[152]; }struDecoderSystemAbility; struct { BYTE byCoderType; BYTE byOptical; BYTE byOpticalSubChan; BYTE bySupportAVSeparate; BYTE byRes[196]; }struCoderSystemAbility; struct { WORD wTrunkAbility; BYTE byOpticalFiberNum; BYTE byRes[197]; }struInputSystemAbility; struct { WORD wTrunkAbility; BYTE byOpticalFiberNum; BYTE byRes[197]; }struOutputSystemAbility; struct { BYTE by485Num; BYTE bySlotNum; BYTE byRes[198]; }struCodeSpitterSystemAbility; struct { WORD wAlarmInNums; WORD wAlarmOutNums; BYTE byAlarmBoxEnable[4][8]; BYTE bySupportContact; BYTE byRes[163]; }struAlarmHostSystemAbility; struct { BYTE byOpticalFiberNum; BYTE byRes1[3]; WORD wTrunkAbility[MAX_OPTICALFIBER_NUM]; BYTE byRes2[164]; }struInOutputSystemAbility; struct { BYTE bySupportRingProtocol; BYTE bySupportRingNums; BYTE bySupportPortNums; BYTE byRes[1]; DWORD dwPortSupportRingProto; BYTE byRes2[192]; } struFiberSwitchSystemAbility; }struAbility; }NET_DVR_SUBSYSTEM_ABILITY, *LPNET_DVR_SUBSYSTEM_ABILITY; typedef struct tagNET_DVR_VIDEOPLATFORM_ABILITY_V40 { DWORD dwSize; BYTE byCodeSubSystemNums; BYTE byDecodeSubSystemNums; BYTE bySupportNat; BYTE byInputSubSystemNums; BYTE byOutputSubSystemNums; BYTE byCodeSpitterSubSystemNums; BYTE byAlarmHostSubSystemNums; BYTE bySupportBigScreenNum; BYTE byVCASubSystemNums; BYTE byV6SubSystemNums; BYTE byV6DecoderSubSystemNums; BYTE bySupportBigScreenX; BYTE bySupportBigScreenY; BYTE bySupportSceneNums; BYTE byVcaSupportChanMode; BYTE bySupportScreenNums; BYTE bySupportLayerNums; BYTE byNotSupportPreview; BYTE byNotSupportStorage; BYTE byUploadLogoMode; NET_DVR_SUBSYSTEM_ABILITY struSubSystemAbility[MAX_SUBSYSTEM_NUM_V40]; BYTE by485Nums; BYTE by232Nums; BYTE bySerieStartChan; BYTE byScreenMode; BYTE byDevVersion; BYTE bySupportBaseMapNums; WORD wBaseLengthX; WORD wBaseLengthY; BYTE bySupportPictureTrans; BYTE bySupportPreAllocDec; BYTE bySupportDecAutoManage; BYTE byTranDevSubSystemNums; BYTE byFiberSwitchNums; BYTE byRes2[625]; }NET_DVR_VIDEOPLATFORM_ABILITY_V40, *LPNET_DVR_VIDEOPLATFORM_ABILITY_V40; typedef struct tagNET_DVR_VIDEOPLATFORM_ABILITY { DWORD dwSize; BYTE byCodeSubSystemNums; BYTE byDecodeSubSystemNums; BYTE bySupportNat; BYTE byInputSubSystemNums; BYTE byOutputSubSystemNums; BYTE byCodeSpitterSubSystemNums; BYTE byAlarmHostSubSystemNums; BYTE bySupportBigScreenNum; BYTE byVCASubSystemNums; BYTE byRes1[11]; NET_DVR_SUBSYSTEM_ABILITY struSubSystemAbility[MAX_SUBSYSTEM_NUM]; BYTE by485Nums; BYTE by232Nums; BYTE bySerieStartChan; BYTE byRes2[637]; }NET_DVR_VIDEOPLATFORM_ABILITY, *LPNET_DVR_VIDEOPLATFORM_ABILITY; typedef struct tagNET_DVR_HOLIDATE_MODEA { BYTE byStartMonth; BYTE byStartDay; BYTE byEndMonth; BYTE byEndDay; BYTE byRes[4]; }NET_DVR_HOLIDATE_MODEA, *LPNET_DVR_HOLIDATE_MODEA; typedef struct tagNET_DVR_HOLIDATE_MODEB { BYTE byStartMonth; BYTE byStartWeekNum; BYTE byStartWeekday; BYTE byEndMonth; BYTE byEndWeekNum; BYTE byEndWeekday; BYTE byRes[2]; }NET_DVR_HOLIDATE_MODEB, *LPNET_DVR_HOLIDATE_MODEB; typedef struct tagNET_DVR_HOLIDATE_MODEC { WORD wStartYear; BYTE byStartMon; BYTE byStartDay; WORD wEndYear; BYTE byEndMon; BYTE byEndDay; }NET_DVR_HOLIDATE_MODEC, *LPNET_DVR_HOLIDATE_MODEC; typedef union tagNET_DVR_HOLIDATE_UNION { DWORD dwSize[3]; NET_DVR_HOLIDATE_MODEA struModeA; NET_DVR_HOLIDATE_MODEB struModeB; NET_DVR_HOLIDATE_MODEC struModeC; }NET_DVR_HOLIDATE_UNION, *LPNET_DVR_HOLIDATE_UNION; typedef enum tagHOLI_DATE_MODE { HOLIDATE_MODEA = 0, HOLIDATE_MODEB, HOLIDATE_MODEC }HOLI_DATE_MODE; typedef struct tagNET_DVR_HOLIDAY_PARAM { BYTE byEnable; BYTE byDateMode; BYTE byRes1[2]; NET_DVR_HOLIDATE_UNION uHolidate; BYTE byName[NAME_LEN]; BYTE byRes2[20]; }NET_DVR_HOLIDAY_PARAM, *LPNET_DVR_HOLIDAY_PARAM; #define MAX_HOLIDAY_NUM 32 typedef struct tagNET_DVR_HOLIDAY_PARAM_CFG { DWORD dwSize; NET_DVR_HOLIDAY_PARAM struHolidayParam[MAX_HOLIDAY_NUM]; DWORD byRes[40]; }NET_DVR_HOLIDAY_PARAM_CFG, *LPNET_DVR_HOLIDAY_PARAM_CFG; typedef struct tagNET_DVR_HOLIDAY_HANDLE { DWORD dwSize; NET_DVR_SCHEDTIME struAlarmTime[MAX_TIMESEGMENT_V30]; BYTE byRes2[240]; }NET_DVR_HOLIDAY_HANDLE, *LPNET_DVR_HOLIDAY_HANDLE; typedef struct tagNET_DVR_HOLIDAY_HANDLE_COND { DWORD dwSize; DWORD dwChannel; DWORD dwSMDHandleType; BYTE byRes2[32]; }NET_DVR_HOLIDAY_HANDLE_COND, *LPNET_DVR_HOLIDAY_HANDLE_COND; typedef struct tagNET_DVR_HOLIDAY_RECORD { DWORD dwSize; NET_DVR_RECORDDAY struRecDay; NET_DVR_RECORDSCHED struRecordSched[MAX_TIMESEGMENT_V30]; BYTE byRes[20]; }NET_DVR_HOLIDAY_RECORD, *LPNET_DVR_HOLIDAY_RECORD; #define MAX_LINK_V30 128 typedef struct tagNET_DVR_ONE_LINK { NET_DVR_IPADDR struIP; LONG lChannel; BYTE byRes[32]; }NET_DVR_ONE_LINK, *LPNET_DVR_ONE_LINK; typedef struct tagNET_DVR_LINK_STATUS { DWORD dwSize; WORD wLinkNum; BYTE byRes1[2]; NET_DVR_ONE_LINK struOneLink[MAX_LINK_V30]; BYTE byRes[32]; }NET_DVR_LINK_STATUS, *LPNET_DVR_LINK_STATUS; #define MAX_BOND_NUM 2 typedef struct tagNET_DVR_ONE_BONDING { BYTE byMode; BYTE byUseDhcp; BYTE byMasterCard; BYTE byStatus; BYTE byBond[MAX_NETWORK_CARD]; NET_DVR_ETHERNET_V30 struEtherNet; NET_DVR_IPADDR struGatewayIpAddr; BYTE byEnableDNS; BYTE byBondMode; BYTE byRes1[2]; BYTE byBond2[MAX_NETWORK_CARD_EX]; BYTE byRes[4]; }NET_DVR_ONE_BONDING, *LPNET_DVR_ONE_BONDING; typedef struct tagNET_DVR_NETWORK_BONDING { DWORD dwSize; BYTE byEnable; BYTE byNum; BYTE byRes1[2]; NET_DVR_ONE_BONDING struOneBond[MAX_BOND_NUM]; BYTE byRes2[40]; }NET_DVR_NETWORK_BONDING, *LPNET_DVR_NETWORK_BONDING; typedef struct tagNET_DVR_DISK_QUOTA { BYTE byQuotaType; BYTE byRes1[5]; WORD wStoragePeriod; DWORD dwHCapacity; DWORD dwLCapacity; DWORD dwHUsedSpace; DWORD dwLUsedSpace; BYTE byQuotaRatio; BYTE byRes2[21]; }NET_DVR_DISK_QUOTA, *LPNET_DVR_DISK_QUOTA; typedef struct tagNET_DVR_DISK_QUOTA_CFG { DWORD dwSize; NET_DVR_DISK_QUOTA struPicQuota; NET_DVR_DISK_QUOTA struRecordQuota; NET_DVR_DISK_QUOTA struAddInfoQuota; BYTE byRes[12]; }NET_DVR_DISK_QUOTA_CFG, *LPNET_DVR_DISK_QUOTA_CFG; typedef struct tagNET_DVR_TIMING_CAPTURE { NET_DVR_JPEGPARA struJpegPara; DWORD dwPicInterval; BYTE byRes[12]; }NET_DVR_TIMING_CAPTURE, *LPNET_DVR_TIMING_CAPTURE; typedef struct tagNET_DVR_REL_CAPTURE_CHAN { BYTE byChan[16]; BYTE byRes[20]; }NET_DVR_REL_CAPTURE_CHAN, *LPNET_DVR_REL_CAPTURE_CHAN; #define MAX_PIC_EVENT_NUM 32 #define MAX_ALARMIN_CAPTURE 16 typedef struct tagNET_DVR_REL_CAPTURE_CHAN_V40 { DWORD dwMaxRelCaptureChanNum; DWORD dwChanNo[MAX_CHANNUM_V40]; BYTE byRes[32]; }NET_DVR_REL_CAPTURE_CHAN_V40, *LPNET_DVR_REL_CAPTURE_CHAN_V40; typedef struct tagNET_DVR_EVENT_CAPTURE_V40 { NET_DVR_JPEGPARA struJpegPara; DWORD dwPicInterval; NET_DVR_REL_CAPTURE_CHAN_V40 struRelCaptureChan[MAX_PIC_EVENT_NUM]; NET_DVR_REL_CAPTURE_CHAN_V40 struAlarmInCapture[MAX_ALARMIN_CAPTURE]; DWORD dwMaxGroupNum; BYTE byCapTimes; BYTE byRes[59]; }NET_DVR_EVENT_CAPTURE_V40, *LPNET_DVR_EVENT_CAPTURE_V40; typedef struct tagNET_DVR_EVENT_CAPTURE { NET_DVR_JPEGPARA struJpegPara; DWORD dwPicInterval; NET_DVR_REL_CAPTURE_CHAN struRelCaptureChan[MAX_PIC_EVENT_NUM]; NET_DVR_REL_CAPTURE_CHAN struAlarmInCapture[MAX_ALARMIN_CAPTURE]; BYTE byCapTimes; BYTE byRes[59]; }NET_DVR_EVENT_CAPTURE, *LPNET_DVR_EVENT_CAPTURE; typedef struct tagNET_DVR_JPEG_CAPTURE_CFG_V40 { DWORD dwSize; NET_DVR_TIMING_CAPTURE struTimingCapture; NET_DVR_EVENT_CAPTURE_V40 struEventCapture; BYTE byStreamType; BYTE byRes3[19]; }NET_DVR_JPEG_CAPTURE_CFG_V40, *LPNET_DVR_JPEG_CAPTURE_CFG_V40; typedef struct tagNET_DVR_JPEG_CAPTURE_CFG { DWORD dwSize; NET_DVR_TIMING_CAPTURE struTimingCapture; NET_DVR_EVENT_CAPTURE struEventCapture; BYTE byStreamType; BYTE byRes3[19]; }NET_DVR_JPEG_CAPTURE_CFG, *LPNET_DVR_JPEG_CAPTURE_CFG; typedef struct tagNET_DVR_CAPTURE_DAY { BYTE byAllDayCapture; BYTE byCaptureType; BYTE byRes[2]; }NET_DVR_CAPTURE_DAY, *LPNET_DVR_CAPTURE_DAY; typedef struct tagNET_DVR_CAPTURE_SCHED { NET_DVR_SCHEDTIME struCaptureTime; BYTE byCaptureType; BYTE byRes[3]; }NET_DVR_CAPTURE_SCHED, *LPNET_DVR_CAPTURE_SCHED; typedef struct tagNET_DVR_SCHED_CAPTURECFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_CAPTURE_DAY struCaptureDay[MAX_DAYS]; NET_DVR_CAPTURE_SCHED struCaptureSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_CAPTURE_DAY struCaptureHoliday; NET_DVR_CAPTURE_SCHED struHolidaySched[MAX_TIMESEGMENT_V30]; DWORD dwRecorderDuration; DWORD dwDelayTime; BYTE byRes[36]; }NET_DVR_SCHED_CAPTURECFG, *LPNET_DVR_SCHED_CAPTURECFG; typedef struct tagNET_DVR_FLOW_TEST_PARAM { DWORD dwSize; LONG lCardIndex; DWORD dwInterval; BYTE byRes[8]; }NET_DVR_FLOW_TEST_PARAM, *LPNET_DVR_FLOW_TEST_PARAM; typedef struct tagNET_DVR_FLOW_INFO { DWORD dwSize; DWORD dwSendFlowSize; DWORD dwRecvFlowSize; BYTE byRes[20]; }NET_DVR_FLOW_INFO, *LPNET_DVR_FLOW_INFO; #define LABEL_NAME_LEN 40 typedef struct tagNET_DVR_RECORD_LABEL { DWORD dwSize; NET_DVR_TIME struTimeLabel; BYTE byQuickAdd; BYTE byRes1[3]; BYTE sLabelName[LABEL_NAME_LEN]; BYTE byRes2[40]; }NET_DVR_RECORD_LABEL, *LPNET_DVR_RECORD_LABEL; #define LABEL_IDENTIFY_LEN 64 typedef struct tagNET_DVR_LABEL_IDENTIFY { BYTE sLabelIdentify[LABEL_IDENTIFY_LEN]; BYTE byRes[8]; }NET_DVR_LABEL_IDENTIFY, *LPNET_DVR_LABEL_IDENTIFY; #define MAX_DEL_LABEL_IDENTIFY 20 typedef struct tagNET_DVR_DEL_LABEL_PARAM { DWORD dwSize; BYTE byMode; BYTE byRes1; WORD wLabelNum; NET_DVR_LABEL_IDENTIFY struIndentify[MAX_DEL_LABEL_IDENTIFY]; BYTE byRes2[160]; }NET_DVR_DEL_LABEL_PARAM, *LPNET_DVR_DEL_LABEL_PARAM; typedef struct tagNET_DVR_MOD_LABEL_PARAM { NET_DVR_LABEL_IDENTIFY struIndentify; BYTE byRes1[24]; BYTE sLabelName[LABEL_NAME_LEN]; BYTE byRes2[40]; }NET_DVR_MOD_LABEL_PARAM, *LPNET_DVR_MOD_LABEL_PARAM; typedef struct tagNET_DVR_FIND_LABEL { DWORD dwSize; LONG lChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE sLabelName[LABEL_NAME_LEN]; BYTE byDrawFrame; BYTE byISO8601; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes[34]; }NET_DVR_FIND_LABEL, *LPNET_DVR_FIND_LABEL; typedef struct tagNET_DVR_FINDLABEL_DATA { BYTE sLabelName[LABEL_NAME_LEN]; NET_DVR_TIME struTimeLabel; NET_DVR_LABEL_IDENTIFY struLabelIdentify; BYTE byISO8601; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[29]; }NET_DVR_FINDLABEL_DATA, *LPNET_DVR_FINDLABEL_DATA; #define CARDNUM_LEN_V30 40 typedef enum _COUNTRY_INDEX_ { COUNTRY_NONSUPPORT = 0, COUNTRY_CZE = 1, COUNTRY_FRA = 2, COUNTRY_DEU = 3, COUNTRY_ESP = 4, COUNTRY_ITA = 5, COUNTRY_NLD = 6, COUNTRY_POL = 7, COUNTRY_SVK = 8, COUNTRY_BLR = 9, COUNTRY_MDA = 10, COUNTRY_RUS = 11, COUNTRY_UKR = 12, COUNTRY_BEL = 13, COUNTRY_BGR = 14, COUNTRY_DNK = 15, COUNTRY_FIN = 16, COUNTRY_GBR = 17, COUNTRY_GRC = 18, COUNTRY_HRV = 19, COUNTRY_HUN = 20, COUNTRY_ISR = 21, COUNTRY_LUX = 22, COUNTRY_MKD = 23, COUNTRY_NOR = 24, COUNTRY_PRT = 25, COUNTRY_ROU = 26, COUNTRY_SRB = 27, COUNTRY_AZE = 28, COUNTRY_GEO = 29, COUNTRY_KAZ = 30, COUNTRY_LTU = 31, COUNTRY_TKM = 32, COUNTRY_UZB = 33, COUNTRY_LVA = 34, COUNTRY_EST = 35, COUNTRY_ALB = 36, COUNTRY_AUT = 37, COUNTRY_BIH = 38, COUNTRY_IRL = 39, COUNTRY_ISL = 40, COUNTRY_VAT = 41, COUNTRY_MLT = 42, COUNTRY_SWE = 43, COUNTRY_CHE = 44, COUNTRY_CYP = 45, COUNTRY_TUR = 46, COUNTRY_SVN = 47, COUNTRY_MTG = 48, COUNTRY_KOV = 49, COUNTRY_ADR = 50, COUNTRY_ARM = 51, COUNTRY_MON = 52, COUNTRY_LIE = 53, COUNTRY_SMO = 54, COUNTRY_ORN = 55, COUNTRY_RES2 = 56, COUNTRY_RES3 = 57, COUNTRY_RES4 = 58, COUNTRY_CHI = 59, COUNTRY_IBN = 60, COUNTRY_SKR = 61, COUNTRY_LEB = 62, COUNTRY_NEP = 63, COUNTRY_THA = 64, COUNTRY_PAK = 65, COUNTRY_EMI = 66, COUNTRY_BHU = 67, COUNTRY_OMA = 68, COUNTRY_KOR = 69, COUNTRY_PHI = 70, COUNTRY_CAM = 71, COUNTRY_QAT = 72, COUNTRY_KYR = 73, COUNTRY_MAL = 74, COUNTRY_MLY = 75, COUNTRY_MOG = 76, COUNTRY_ARA = 77, COUNTRY_BRU = 78, COUNTRY_LAO = 79, COUNTRY_JAP = 80, COUNTRY_RES19 = 81, COUNTRY_PAS = 82, COUNTRY_TAJ = 83, COUNTRY_KUW = 84, COUNTRY_SYR = 85, COUNTRY_IND = 86, COUNTRY_ISA = 87, COUNTRY_AFG = 88, COUNTRY_LAN = 89, COUNTRY_IRQ = 90, COUNTRY_VIE = 91, COUNTRY_IRA = 92, COUNTRY_YEM = 93, COUNTRY_JOR = 94, COUNTRY_BUR = 95, COUNTRY_SIK = 96, COUNTRY_BAN = 97, COUNTRY_SGA = 98, COUNTRY_EAT = 99, COUNTRY_RES5 = 100, COUNTRY_RES6 = 101, COUNTRY_RES7 = 102, COUNTRY_RES8 = 103, COUNTRY_EGT = 104, COUNTRY_LIY = 105, COUNTRY_SUA = 106, COUNTRY_TUN = 107, COUNTRY_ALG = 108, COUNTRY_MCC = 109, COUNTRY_ETH = 110, COUNTRY_ERI = 111, COUNTRY_SDE = 112, COUNTRY_DJI = 113, COUNTRY_KEN = 114, COUNTRY_TAI = 115, COUNTRY_UGA = 116, COUNTRY_RWA = 117, COUNTRY_BUD = 118, COUNTRY_SEY = 119, COUNTRY_CHA = 120, COUNTRY_CEA = 121, COUNTRY_CON = 122, COUNTRY_EQG = 123, COUNTRY_GAB = 124, COUNTRY_TCO = 125, COUNTRY_DRC = 126, COUNTRY_STP = 127, COUNTRY_MAN = 128, COUNTRY_WSA = 129, COUNTRY_SEL = 130, COUNTRY_TGA = 131, COUNTRY_MAI = 132, COUNTRY_BUF = 133, COUNTRY_GUI = 134, COUNTRY_GUB = 135, COUNTRY_CAV = 136, COUNTRY_SLE = 137, COUNTRY_LIR = 138, COUNTRY_IVC = 139, COUNTRY_GHA = 140, COUNTRY_TGO = 141, COUNTRY_BEN = 142, COUNTRY_NIG = 143, COUNTRY_ZAB = 144, COUNTRY_ANG = 145, COUNTRY_ZBE = 146, COUNTRY_MAW = 147, COUNTRY_MOQ = 148, COUNTRY_BOT = 149, COUNTRY_NAM = 150, COUNTRY_SAF = 151, COUNTRY_SWD = 152, COUNTRY_LES = 153, COUNTRY_MAG = 154, COUNTRY_UOC = 155, COUNTRY_MAT = 156, COUNTRY_NGE = 157, COUNTRY_SSD = 158, COUNTRY_SAH = 159, COUNTRY_MYT = 160, COUNTRY_REN = 161, COUNTRY_CAI = 162, COUNTRY_AZO = 163, COUNTRY_MAD = 164, COUNTRY_RES9 = 165, COUNTRY_RES10 = 166, COUNTRY_RES11 = 167, COUNTRY_RES12 = 168, COUNTRY_CAD = 169, COUNTRY_GRE = 170, COUNTRY_PIE = 171, COUNTRY_USA = 172, COUNTRY_BER = 173, COUNTRY_MEX = 174, COUNTRY_GUA = 175, COUNTRY_BLI = 176, COUNTRY_SAR = 177, COUNTRY_HOR = 178, COUNTRY_NIC = 179, COUNTRY_COR = 180, COUNTRY_PAN = 181, COUNTRY_TBM = 182, COUNTRY_TCI = 183, COUNTRY_CUB = 184, COUNTRY_JAM = 185, COUNTRY_CAY = 186, COUNTRY_HAT = 187, COUNTRY_TDO = 188, COUNTRY_PUR = 189, COUNTRY_VIL = 190, COUNTRY_BVI = 191, COUNTRY_ATV = 192, COUNTRY_ANB = 193, COUNTRY_CSM = 194, COUNTRY_ACY = 195, COUNTRY_SBY = 196, COUNTRY_SKN = 197, COUNTRY_MOT = 198, COUNTRY_GLP = 199, COUNTRY_DOM = 200, COUNTRY_MTE = 201, COUNTRY_LUC = 202, COUNTRY_SVG = 203, COUNTRY_GRD = 204, COUNTRY_BAR = 205, COUNTRY_TRT = 206, COUNTRY_CUR = 207, COUNTRY_ARB = 208, COUNTRY_NEA = 209, COUNTRY_COL = 210, COUNTRY_VEN = 211, COUNTRY_GUY = 212, COUNTRY_SUR = 213, COUNTRY_FRN = 214, COUNTRY_ECU = 215, COUNTRY_PER = 216, COUNTRY_BOL = 217, COUNTRY_PAR = 218, COUNTRY_CLE = 219, COUNTRY_BRA = 220, COUNTRY_UGY = 221, COUNTRY_ARG = 222, COUNTRY_RES13 = 223, COUNTRY_RES14 = 224, COUNTRY_RES15 = 225, COUNTRY_RES16 = 226, COUNTRY_ATN = 227, COUNTRY_NED = 228, COUNTRY_PNG = 229, COUNTRY_SAN = 230, COUNTRY_VAU = 231, COUNTRY_NCN = 232, COUNTRY_PAU = 233, COUNTRY_FSM = 234, COUNTRY_MRI = 235, COUNTRY_CNM = 236, COUNTRY_TEG = 237, COUNTRY_NUR = 238, COUNTRY_KIB = 239, COUNTRY_FID = 240, COUNTRY_TNG = 241, COUNTRY_TUV = 242, COUNTRY_WEF = 243, COUNTRY_TIS = 244, COUNTRY_EAS = 245, COUNTRY_TOE = 246, COUNTRY_NUE = 247, COUNTRY_TCD = 248, COUNTRY_PFP = 249, COUNTRY_PID = 250, COUNTRY_HAW = 251, COUNTRY_RES17 = 252, COUNTRY_RES18 = 253, COUNTRY_UNRECOGNIZED = 0xfe, COUNTRY_ALL = 0xff, }COUNTRY_INDEX; typedef enum _EMI_AREA_ { EMI_AREA_UNKNOWN = 0, EMI_AREA_AD, EMI_AREA_FJR, EMI_AREA_DB, EMI_AREA_RAK, EMI_AREA_AM, EMI_AREA_SJ, EMI_AREA_UMW, EMI_AREA_OTHER = 0xff, } EMI_AREA; typedef struct tagNET_DVR_FIND_PICTURE_PARAM { DWORD dwSize; LONG lChannel; BYTE byFileType; BYTE byNeedCard; BYTE byProvince; BYTE byRes; BYTE sCardNum[CARDNUM_LEN_V30]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; DWORD dwTrafficType; DWORD dwVehicleType; DWORD dwIllegalType; BYTE byLaneNo; BYTE bySubHvtType ; BYTE byRes2[2]; char sLicense[MAX_LICENSE_LEN]; BYTE byRegion; BYTE byCountry; BYTE byArea; BYTE byISO8601; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; }NET_DVR_FIND_PICTURE_PARAM, *LPNET_DVR_FIND_PICTURE_PARAM; #define PICTURE_NAME_LEN 64 #define PICTURE_INFO_MAX_SIZE 640*960*1.5 typedef struct tagNET_DVR_FIND_PICTURE { char sFileName[PICTURE_NAME_LEN]; NET_DVR_TIME struTime; DWORD dwFileSize; char sCardNum[CARDNUM_LEN_V30]; BYTE byPlateColor ; BYTE byVehicleLogo; BYTE byEventSearchStatus; BYTE byRecogResult ; char sLicense[MAX_LICENSE_LEN]; BYTE byRes[12]; }NET_DVR_FIND_PICTURE,*LPNET_DVR_FIND_PICTURE; #define MAX_RECORD_PICTURE_NUM 50 typedef struct tagNET_DVR_BACKUP_PICTURE_PARAM { DWORD dwSize; DWORD dwPicNum; NET_DVR_FIND_PICTURE struPicture[MAX_RECORD_PICTURE_NUM]; BYTE byDiskDes[DESC_LEN_32]; BYTE byWithPlayer; BYTE byContinue; BYTE byRes[34]; }NET_DVR_BACKUP_PICTURE_PARAM, *LPNET_DVR_BACKUP_PICTURE_PARAM; typedef struct tagNET_DVR_COMPRESSION_LIMIT { DWORD dwSize; DWORD dwChannel; BYTE byCompressType; BYTE byRes[15]; NET_DVR_COMPRESSIONCFG_V30 struCurrentCfg; }NET_DVR_COMPRESSION_LIMIT, *LPNET_DVR_COMPRESSION_LIMIT; #define STEP_READY 0 #define STEP_RECV_DATA 1 #define STEP_UPGRADE 2 #define STEP_BACKUP 3 #define STEP_SEARCH 255 typedef struct tagNET_DVR_VIDEO_EFFECT { DWORD dwBrightValue; DWORD dwContrastValue; DWORD dwSaturationValue; DWORD dwHueValue; DWORD dwSharpness; DWORD dwDenoising; BYTE byRes[12]; }NET_DVR_VIDEO_EFFECT, *LPNET_DVR_VIDEO_EFFECT; typedef struct tagNET_DVR_VIDEO_INPUT_EFFECT { DWORD dwSize; WORD wEffectMode; BYTE byRes1[146]; NET_DVR_VIDEO_EFFECT struVideoEffect; BYTE byRes2[60]; }NET_DVR_VIDEO_INPUT_EFFECT, *LPNET_DVR_VIDEO_INPUT_EFFECT; typedef struct tagNET_DVR_VIDEOPARA_V40 { DWORD dwChannel; DWORD dwVideoParamType; DWORD dwVideoParamValue; BYTE byRes[12]; }NET_DVR_VIDEOPARA_V40, *LPNET_DVR_VIDEOPARA_V40; typedef struct tagNET_DVR_DEFAULT_VIDEO_COND { DWORD dwSize; DWORD dwChannel; DWORD dwVideoMode; BYTE byRes[32]; }NET_DVR_DEFAULT_VIDEO_COND, *LPNET_DVR_DEFAULT_VIDEO_COND; typedef struct tagNET_DVR_ENCODE_JOINT_PARAM { DWORD dwSize; BYTE byJointed; BYTE byDevType; BYTE byRes1[2]; NET_DVR_IPADDR struIP; WORD wPort; WORD wChannel; BYTE byRes2[20]; }NET_DVR_ENCODE_JOINT_PARAM, *LPNET_DVR_ENCODE_JOINT_PARAM; typedef struct tagNET_DVR_VCA_CHAN_WORKSTATUS { BYTE byJointed; BYTE byRes1[3]; NET_DVR_IPADDR struIP; WORD wPort; WORD wChannel; BYTE byVcaChanStatus; BYTE byRes2[19]; }NET_DVR_VCA_CHAN_WORKSTATUS, *LPNET_DVR_VCA_CHAN_WORKSTATUS; typedef struct tagNET_DVR_VCA_DEV_WORKSTATUS { DWORD dwSize; BYTE byDeviceStatus; BYTE byCpuLoad; NET_DVR_VCA_CHAN_WORKSTATUS struVcaChanStatus[MAX_VCA_CHAN]; DWORD dwRes[40]; }NET_DVR_VCA_DEV_WORKSTATUS, *LPNET_DVR_VCA_DEV_WORKSTATUS; typedef struct tagNET_DVR_VGA_DISP_CHAN_CFG_V40 { DWORD dwSize; BYTE byAudio; BYTE byAudioWindowIdx; BYTE byVgaResolution; BYTE byVedioFormat; DWORD dwWindowMode; BYTE byJoinDecChan[MAX_WINDOWS]; BYTE byEnlargeStatus; BYTE byEnlargeSubWindowIndex; BYTE byScale; BYTE byUnionType; union { BYTE byRes[160]; struct { BYTE byJoinDecoderId[MAX_WINDOWS]; BYTE byDecResolution; BYTE byRes[143]; }struVideoPlatform; struct { BYTE byRes[160]; }struNotVideoPlatform; }struDiff; BYTE byRes[120]; }NET_DVR_VGA_DISP_CHAN_CFG_V40,*LPNET_DVR_VGA_DISP_CHAN_CFG_V40; typedef struct tagNET_DVR_V6SUBSYSTEMPARAM { BYTE bySerialTrans; BYTE byRes[35]; }NET_DVR_V6SUBSYSTEMPARAM, *LPNET_DVR_V6SUBSYSTEMPARAM; typedef struct tagNET_DVR_CORRECT_DEADPIXEL_PARAM { DWORD dwSize; DWORD dwCommand; DWORD dwDeadPixelX; DWORD dwDeadPixelY; BYTE byRes[12]; }NET_DVR_CORRECT_DEADPIXEL_PARAM, *LPNET_DVR_CORRECT_DEADPIXEL_PARAM; #define MAX_REDAREA_NUM 6 typedef struct tagNET_DVR_CORRECT_PARAMS { BYTE byYellowIntervalTime; BYTE byDigTrafficLight; BYTE byRes[2]; }NET_DVR_CORRECT_PARAMS,*LPNET_DVR_CORRECT_PARAMS; typedef struct tagNET_DVR_REDAREACFG { DWORD dwSize; DWORD dwCorrectEnable; DWORD dwCorrectLevel; DWORD dwAreaNum; NET_VCA_RECT struLaneRect[MAX_REDAREA_NUM]; NET_DVR_CORRECT_PARAMS struCorrectParam[MAX_REDAREA_NUM]; BYTE byRes2[8]; }NET_DVR_REDAREACFG, *LPNET_DVR_REDAREACFG; typedef struct tagNET_DVR_HISTORICDATACFG { DWORD dwSize; DWORD dwTotalNum; BYTE byRes[16]; }NET_DVR_HISTORICDATACFG, *LPNET_DVR_HISTORICDATACFG; #define INQUEST_MESSAGE_LEN 44 #define INQUEST_MAX_ROOM_NUM 2 #define MAX_RESUME_SEGMENT 2 typedef struct tagNET_DVR_INQUEST_ROOM { BYTE byRoomIndex; BYTE byFileType; BYTE byRes[22]; }NET_DVR_INQUEST_ROOM, *LPNET_DVR_INQUEST_ROOM; typedef struct tagNET_DVR_INQUEST_MESSAGE { char sMessage[INQUEST_MESSAGE_LEN]; BYTE byRes[46]; }NET_DVR_INQUEST_MESSAGE, *LPNET_DVR_INQUEST_MESSAGE; typedef struct tagNET_DVR_INQUEST_SENSOR_DEVICE { WORD wDeviceType; WORD wDeviceAddr; BYTE byRes[28]; }NET_DVR_INQUEST_SENSOR_DEVICE, *LPNET_DVR_INQUEST_SENSOR_DEVICE; typedef struct tagNET_DVR_INQUEST_SENSOR_INFO { NET_DVR_INQUEST_SENSOR_DEVICE struSensorDevice[INQUEST_MAX_ROOM_NUM]; DWORD dwSupportPro; BYTE byRes[120]; }NET_DVR_INQUEST_SENSOR_INFO, *LPNET_DVR_INQUEST_SENSOR_INFO; typedef struct tagNET_DVR_INQUEST_ROOM_INFO { char szCDName[NAME_LEN]; union { BYTE byBitRate; BYTE byInquestTime; }uCalcMode; BYTE byCalcType; BYTE byAutoDelRecord; BYTE byAlarmThreshold; BYTE byInquestChannelResolution; BYTE byAutoOpenTray; BYTE byRes[10]; }NET_DVR_INQUEST_ROOM_INFO, *LPNET_DVR_INQUEST_ROOM_INFO; typedef struct tagNET_DVR_INQUEST_SYSTEM_INFO { DWORD dwRecordMode; DWORD dwWorkMode; DWORD dwResolutionMode; NET_DVR_INQUEST_SENSOR_INFO struSensorInfo; NET_DVR_INQUEST_ROOM_INFO struInquestRoomInfo[INQUEST_MAX_ROOM_NUM]; BYTE byEnableHashCheck; BYTE byEnableInitCD; BYTE byRes[22]; }NET_DVR_INQUEST_SYSTEM_INFO, *LPNET_DVR_INQUEST_SYSTEM_INFO; typedef struct _NET_DVR_INQUEST_ALARM_ { DWORD dwSize; DWORD dwAlarmType; BYTE byTrayNo; BYTE byRes[255]; }NET_DVR_INQUEST_ALARM, *LPNET_DVR_INQUEST_ALARM; typedef struct _NET_DVR_VIDEO_PARKING_POLE_ALARM_ { DWORD dwSize; NET_DVR_TIME_V30 struTime; BYTE byParkingNum[32]; BYTE byAlarmType; BYTE byVehicleEnterState; BYTE byRes[78]; }NET_DVR_VIDEO_PARKING_POLE_ALARM, *LPNET_DVR_VIDEO_PARKING_POLE_ALARM; typedef struct tagNET_DVR_INQUEST_RESUME_SEGMENT { NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byRoomIndex; BYTE byDriveIndex; WORD wSegmetSize; DWORD dwSegmentNo; BYTE byRes[24]; }NET_DVR_INQUEST_RESUME_SEGMENT, *LPNET_DVR_INQUEST_RESUME_SEGMENT; typedef struct tagNET_DVR_INQUEST_RESUME_EVENT { DWORD dwResumeNum; NET_DVR_INQUEST_RESUME_SEGMENT struResumeSegment[MAX_RESUME_SEGMENT]; BYTE byResumeMode; BYTE byRes[199]; }NET_DVR_INQUEST_RESUME_EVENT, *LPNET_DVR_INQUEST_RESUME_EVENT; typedef struct tagNET_DVR_INQUEST_DEVICE_VERSION { BYTE byMainVersion; BYTE bySubVersion; BYTE byUpgradeVersion; BYTE byCustomizeVersion; BYTE byRes[60]; }NET_DVR_INQUEST_DEVICE_VERSION, *LPNET_DVR_INQUEST_DEVICE_VERSION; typedef struct tagNET_DVR_DISK_RAID_INFO { DWORD dwSize; BYTE byEnable; BYTE bySleepStatus; BYTE byRes[34]; }NET_DVR_DISK_RAID_INFO, *LPNET_DVR_DISK_RAID_INFO; typedef struct tagNET_DVR_SYNCHRONOUS_IPC { DWORD dwSize; BYTE byEnable; BYTE byRes[7]; }NET_DVR_SYNCHRONOUS_IPC, *LPNET_DVR_SYNCHRONOUS_IPC; typedef struct tagNET_DVR_IPC_PASSWD { DWORD dwSize; char sOldPasswd[PASSWD_LEN]; char sNewPasswd[PASSWD_LEN]; BYTE byRes[32]; }NET_DVR_IPC_PASSWD, *LPNET_DVR_IPC_PASSWD; typedef struct tagNET_DEVICE_NET_USING_INFO { DWORD dwSize; DWORD dwPreview; DWORD dwPlayback; DWORD dwIPCModule; DWORD dwNetDiskRW; BYTE res[32]; }NET_DVR_DEVICE_NET_USING_INFO, *LPNET_DVR_DEVICE_NET_USING_INFO; typedef struct tagNET_DVR_IPC_NETCFG { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wPort; char res[126]; }NET_DVR_IPC_NETCFG, *LPNET_DVR_IPC_NETCFG; typedef struct tagNET_DVR_TIME_LOCK { DWORD dwSize; NET_DVR_TIME strBeginTime; NET_DVR_TIME strEndTime; DWORD dwChannel; DWORD dwRecordType; DWORD dwLockDuration; NET_DVR_TIME_EX strUnlockTimePoint; BYTE byRes[4]; }NET_DVR_TIME_LOCK, *LPNET_DVR_TIME_LOCK; typedef struct tagNET_DVR_LOCK_RETURN { DWORD dwSize; NET_DVR_TIME strBeginTime; NET_DVR_TIME strEndTime; BYTE byRes[20]; }NET_DVR_LOCK_RETURN, *LPNET_DVR_LOCK_RETURN; typedef enum { UPGRADE_CERT_FILE = 0, UPLOAD_CERT_FILE = 1, TRIAL_CERT_FILE = 2, CONFIGURATION_FILE = 3, UPLOAD_RECORD_FILE = 4 , SCENE_CONFIGURATION_FILE = 5, UPLOAD_PICTURE_FILE = 6, UPLOAD_VIOLATION_FILE = 7, UPLOAD_TG_FILE = 8, UPLOAD_DATA_TO_DB = 9, UPLOAD_BACKGROUND_PIC = 10, UPLOAD_CALIBRATION_FILE = 11, UPLOAD_TME_FILE = 12, UPLOAD_VEHICLE_BLACKWHITELST_FILE = 13, UPLOAD_PICTURE_TO_CLOUD = 15, UPLOAD_VIDEO_FILE = 16, UPLOAD_SCREEN_FILE = 17, UPLOAD_PUBLISH_MATERIAL = 18, UPLOAD_PUBLISH_UPGRADE_FILE = 19, UPLOAD_RING_FILE = 20, UPLOAD_ENCRYPT_CERT = 21, UPLOAD_THERMOMETRIC_FILE = 22, UPLOAD_SUBBRAND_FILE = 23, UPLOAD_LED_CHECK_FILE = 24, BATCH_UPLOAD_PICTURE_FILE = 25, UPLOAD_EDID_CFG_FILE = 26, UPLOAD_PANORAMIC_STITCH = 27, UPLOAD_BINOCULAR_COUNTING = 28, UPLOAD_AUDIO_FILE = 29, UPLOAD_PUBLISH_THIRD_PARTY_FILE = 30, UPLOAD_DEEPEYES_BINOCULAR = 31, UPLOAD_CERTIFICATE_BLACK_LIST = 32, UPLOAD_HD_CAMERA_CORRECT_TABLE = 33, UPLOAD_FD_DATA = 35, UPLOAD_FACE_DATA = 36, UPLOAD_FACE_ANALYSIS_DATA = 37, UPLOAD_FILEVOLUME_DATA = 38, IMPORT_DATA_TO_FACELIB = 39, UPLOAD_LEFTEYE_4K_CALIBFILE = 40, UPLOAD_SECURITY_CFG_FILE = 41, UPLOAD_RIGHT_CONTROLLER_AUDIO = 42, UPLOAD_MODBUS_CFG_FILE = 43, UPLOAD_NOTICE_VIDEO_DATA = 44, UPLOAD_RS485_PROTOCOL_DLL_FILE = 45, UPLOAD_PIC_BY_BUF = 46, UPLOAD_CLIENT_CALIBFILE = 47, UPLOAD_HD_CAMERA_CORRECT_TABLE_3200W = 48 }NET_SDK_UPLOAD_TYPE; typedef enum { NET_SDK_DOWNLOAD_CERT = 0, NET_SDK_DOWNLOAD_IPC_CFG_FILE = 1, NET_SDK_DOWNLOAD_BASELINE_SCENE_PIC = 2, NET_SDK_DOWNLOAD_VQD_ALARM_PIC = 3, NET_SDK_DOWNLOAD_CONFIGURATION_FILE = 4, NET_SDK_DOWNLOAD_SCENE_CONFIGURATION_FILE = 5, NET_SDK_DOWNLOAD_FILE_FORM_DB = 6, NET_SDK_DOWNLOAD_TME_FILE = 7, NET_SDK_DOWNLOAD_VEHICLE_BLACKWHITELST_FILE = 8, NET_SDK_DOWNLOAD_GUID_FILE = 9, NET_SDK_DOWNLOAD_FILE_FORM_CLOUD = 10, NET_SDK_DOWNLOAD_PICTURE = 11, NET_SDK_DOWNLOAD_VIDEO = 12, NET_DVR_DOWNLOAD_SCREEN_FILE = 13, NET_SDK_DOWNLOAD_PUBLISH_MATERIAL = 14, NET_SDK_DOWNLOAD_THERMOMETRIC_FILE = 15, NET_SDK_DOWNLOAD_LED_CHECK_FILE = 16, NET_SDK_DOWNLOAD_VEHICLE_INFORMATION = 17, NET_SDK_DOWNLOAD_CERTIFICATE_BLACK_LIST_TEMPLET = 18, NET_SDK_DOWNLOAD_LOG_FILE = 19, NET_SDK_DOWNLOAD_FILEVOLUME_DATA = 20, NET_SDK_DOWNLOAD_FD_DATA = 21, NET_SDK_DOWNLOAD_SECURITY_CFG_FILE = 22, NET_SDK_DOWNLOAD_PUBLISH_SCHEDULE = 23, NET_SDK_DOWNLOAD_RIGHT_CONTROLLER_AUDIO = 24, NET_SDK_DOWNLOAD_MODBUS_CFG_FILE = 25, NET_SDK_DOWNLOAD_RS485_PROTOCOL_DLL_FILE = 26, NET_SDK_DOWNLOAD_CLUSTER_MAINTENANCE_LOG = 27, NET_SDK_DOWNLOAD_SQL_ARCHIVE_FILE = 28, NET_SDK_DOWNLOAD_SUBWIND_STREAM = 29, NET_SDK_DOWNLOAD_DEVTYPE_CALIBFILE = 30, NET_SDK_DOWNLOAD_HD_CAMERA_CORRECT_TABLE = 31, NET_SDK_DOWNLOAD_CLIENT_CALIBFILE = 32, NET_SDK_DOWNLOAD_FOUE_CAMERAS_PICTURES = 33 }NET_SDK_DOWNLOAD_TYPE; typedef enum { NET_SDK_DOWNLOAD_STATUS_SUCCESS = 1, NET_SDK_DOWNLOAD_STATUS_PROCESSING, NET_SDK_DOWNLOAD_STATUS_FAILED, NET_SDK_DOWNLOAD_STATUS_UNKOWN_ERROR, NET_SDK_DOWNLOAD_STATUS_RESOURCE, NET_SDK_DOWNLOAD_STATUS_GUIDFILE_EXPORT_FAIL }NET_SDK_DOWNLOAD_STATUS; typedef enum tagNET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM { ENUM_DOWNLOAD_CONTROL_ERR = -1, ENUM_DOWNLOAD_CONTROL_QOS = 1 }NET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM; typedef struct tagNET_DVR_PANORAMIC_STITCH_UPLOAD { DWORD dwSize; DWORD dwChannel; BYTE byRes[128]; }NET_DVR_PANORAMIC_STITCH_UPLOAD, *LPNET_DVR_PANORAMIC_STITCH_UPLOAD; typedef struct NET_DVR_FD_DATA_COND { DWORD dwSize; char szFDID[NET_SDK_MAX_FDID_LEN]; char szCheckCode[NET_SDK_CHECK_CODE_LEN]; BYTE byCover; BYTE byRes[127]; }NET_DVR_FD_DATA_COND, *LPNET_DVR_FD_DATA_COND; typedef struct NET_DVR_UPLOAD_FACE_DATA { DWORD dwSize; char szFDID[NET_SDK_MAX_FDID_LEN]; BYTE byFDLibType; BYTE byRes1[3]; char szCustomInfo[NET_SDK_FDPIC_CUSTOM_INFO_LEN]; BYTE byRes[512]; }NET_DVR_UPLOAD_FACE_DATA, *LPNET_DVR_UPLOAD_FACE_DATA; typedef struct NET_DVR_UPLOAD_FACE_DATA_OUT { char szPicID[NET_SDK_MAX_PICID_LEN]; BYTE byRes[128]; }NET_DVR_UPLOAD_FACE_DATA_OUT, *LPNET_DVR_UPLOAD_FACE_DATA_OUT; typedef struct NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT { DWORD dwSize; DWORD dwPID; DWORD dwFaceAnalysisNum; NET_VCA_RECT struVcaRect[NET_DVR_MAX_FACE_ANALYSIS_NUM]; BYTE byRes[128]; }NET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT, *LPNET_DVR_UPLOAD_FACE_ANALYSIS_DATA_OUT; typedef struct NET_DVR_SECURITY_CFG_FILE_COND { DWORD dwSize; char szSecretKey[NET_SDK_SECRETKEY_LEN]; BYTE byRes[128]; }NET_DVR_SECURITY_CFG_FILE_COND, *LPNET_DVR_SECURITY_CFG_FILE_COND; typedef struct tagNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM_ { DWORD dwSize; BYTE byType; BYTE byRes[255]; }NET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM, *LPNET_DVR_DOWNLOAD_CLUSTER_MAINTENANCE_LOG_PARAM; typedef struct tagNET_DVR_BONJOUR_CFG { DWORD dwSize; BYTE byEnableBonjour; BYTE byRes1[3]; BYTE byFriendlyName[MAX_DOMAIN_NAME]; BYTE byRes2[128]; }NET_DVR_BONJOUR_CFG, *LPNET_DVR_BONJOUR_CFG; typedef struct tagNET_DVR_SOCKS_CFG { DWORD dwSize; BYTE byEnableSocks; BYTE byVersion; WORD wProxyPort; BYTE byProxyaddr[MAX_DOMAIN_NAME]; BYTE byUserName[MAX_DOMAIN_NAME]; BYTE byPassword[NAME_LEN]; BYTE byLocalAddr[MAX_LOCAL_ADDR_LEN]; BYTE byRes[128]; }NET_DVR_SOCKS_CFG, *LPNET_DVR_SOCKS_CFG; typedef struct tagNET_DVR_QOS_CFG { DWORD dwSize; BYTE byManageDscp; BYTE byAlarmDscp; BYTE byVideoDscp; BYTE byAudioDscp; BYTE byFlag; BYTE byEnable; BYTE byRes[126]; }NET_DVR_QOS_CFG, *LPNET_DVR_QOS_CFG; typedef struct tagNET_DVR_HTTPS_CFG { DWORD dwSize; WORD wHttpsPort; BYTE byEnable; BYTE byRes[125]; }NET_DVR_HTTPS_CFG, *LPNET_DVR_HTTPS_CFG; typedef struct tagNET_DVR_CERT_NAME { BYTE byCountry[MAX_COUNTRY_NAME_LEN]; BYTE byState[MAX_DOMAIN_NAME]; BYTE byLocality[MAX_DOMAIN_NAME]; BYTE byOrganization[MAX_DOMAIN_NAME]; BYTE byUnit[MAX_DOMAIN_NAME]; BYTE byCommonName[MAX_DOMAIN_NAME]; BYTE byEmail[MAX_DOMAIN_NAME]; BYTE byRes[128]; }NET_DVR_CERT_NAME, *LPNET_DVR_CERT_NAME ; typedef struct tagNET_DVR_CERT_PARAM { DWORD dwSize; WORD wCertFunc; WORD wCertType; BYTE byFileType; BYTE byRes[35]; }NET_DVR_CERT_PARAM, *LPNET_DVR_CERT_PARAM; #define UPLOAD_CERTIFICATE 1 typedef struct tagNET_DVR_CERT_INFO { DWORD dwSize; NET_DVR_CERT_PARAM struCertParam; DWORD dwValidDays; BYTE byPasswd[NAME_LEN]; NET_DVR_CERT_NAME struCertName; NET_DVR_CERT_NAME struIssuerName; NET_DVR_TIME_EX struBeginTime; NET_DVR_TIME_EX struEndTime; BYTE serialNumber[NAME_LEN]; BYTE byVersion; BYTE byKeyAlgorithm; BYTE byKeyLen; BYTE bySignatureAlgorithm; BYTE byRes[128]; }NET_DVR_CERT_INFO, *LPNET_DVR_CERT_INFO; typedef struct tagNET_DVR_CHANS_RECORD_STATUS { BYTE byValid; BYTE byRecord; WORD wChannelNO; DWORD dwRelatedHD; BYTE byOffLineRecord; BYTE byRes[7]; }NET_DVR_CHANS_RECORD_STATUS, *LPNET_DVR_CHANS_RECORD_STATUS; typedef struct tagNET_DVR_IP_ALARM_GROUP_NUM { DWORD dwSize; DWORD dwIPAlarmInGroup; DWORD dwIPAlarmInNum; DWORD dwIPAlarmOutGroup; DWORD dwIPAlarmOutNum; BYTE byRes[64]; }NET_DVR_IP_ALARM_GROUP_NUM, *LPNET_DVR_IP_ALARM_GROUP_NUM; typedef struct tagNET_DVR_CHAN_GROUP_RECORD_STATUS { DWORD dwSize; NET_DVR_CHANS_RECORD_STATUS struChanStatus[MAX_CHANNUM_V30]; }NET_DVR_CHAN_GROUP_RECORD_STATUS, *LPNET_DVR_CHAN_GROUP_RECORD_STATUS; typedef struct tagNET_DVR_RECTCFG { WORD wXCoordinate; WORD wYCoordinate; WORD wWidth; WORD wHeight; }NET_DVR_RECTCFG, *LPNET_DVR_RECTCFG; typedef struct tagNET_DVR_WINCFG { DWORD dwSize; BYTE byVaild; BYTE byInputIdx; BYTE byLayerIdx; BYTE byTransparency; NET_DVR_RECTCFG struWin; WORD wScreenHeight; WORD wScreenWidth; BYTE byRes[20]; }NET_DVR_WINCFG, *LPNET_DVR_WINCFG; #define MAX_LAYERNUMS 32 typedef struct tagNET_DVR_ALLWINCFG { DWORD dwSize; NET_DVR_WINCFG struWinCfg[MAX_LAYERNUMS]; BYTE byRes2[24]; }NET_DVR_ALLWINCFG, *LPNET_DVR_ALLWINCFG; typedef struct tagNET_DVR_SCREENZOOM { DWORD dwSize; DWORD dwScreenNum; NET_DVR_POINT_FRAME struPointFrame; BYTE byLayer; BYTE byRes[11]; }NET_DVR_SCREENZOOM, *LPNET_DVR_SCREENZOOM; typedef struct tagNET_MATRIX_CAMERAINFO { DWORD dwGlobalCamId; BYTE sCamName[NAME_LEN]; DWORD dwMatrixId; DWORD dwLocCamId; BYTE byValid; BYTE byPtzCtrl; BYTE byUseType; BYTE byUsedByTrunk; BYTE byTrunkReq; BYTE byRes1[3]; NET_DVR_TIME struInstallTime; BYTE sPurpose[NAME_LEN]; BYTE byRes2[20]; }NET_MATRIX_CAMERAINFO, *LPNET_MATRIX_CAMERAINFO; typedef struct tagNET_MATRIX_MONITORINFO { DWORD dwGloalMonId; BYTE sMonName[NAME_LEN]; DWORD dwMatrixId; DWORD dwLocalMonId; BYTE byValid; BYTE byTrunkType; BYTE byUsedByTrunk; BYTE byTrunkReq; NET_DVR_TIME struInstallTime; BYTE sPurpose[NAME_LEN]; BYTE byRes[20]; }NET_MATRIX_MONITORINFO, *LPNET_MATRIX_MONITORINFO; typedef struct tagNET_MATRIX_DIGITALMATRIX { NET_DVR_IPADDR struAddress; WORD wPort; BYTE byNicNum; BYTE byRes[69]; }NET_MATRIX_DIGITALMATRIX, *LPNET_MATRIX_DIGITALMATRIX; typedef struct tagNET_MATRIX_ANALOGMATRIX { BYTE bySerPortNum; BYTE byMatrixSerPortType; BYTE byRes1[2]; NET_DVR_SINGLE_RS232 struRS232; BYTE byRes2[200]; }NET_MATRIX_ANALOGMATRIX, *LPNET_MATRIX_ANALOGMATRIX; typedef union tagNET_MATRIX_UNION { NET_MATRIX_DIGITALMATRIX struDigitalMatrix; NET_MATRIX_ANALOGMATRIX struAnalogMatrix; }NET_MATRIX_UNION, *LPNET_MATRIX_UNION; typedef struct tagNET_MATRIX_MATRIXINFO { DWORD dwSize; DWORD dwMatrixId; BYTE sDevName[NAME_LEN]; BYTE byCtrlType; BYTE byProtocolType; BYTE byRes1[6]; NET_MATRIX_UNION struMatrixUnion; DWORD dwMaxPortsIn; DWORD dwMaxPortsOut; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; NET_DVR_TIME struInstallTime; BYTE sPurpose[NAME_LEN]; BYTE byRes2[20]; }NET_MATRIX_MATRIXINFO, *LPNET_MATRIX_MATRIXINFO; typedef struct tagNET_DVR_MATRIXLIST { DWORD dwSize; BYTE byRes[12]; DWORD dwMatrixNum; BYTE *pBuffer; DWORD dwBufLen; }NET_DVR_MATRIXLIST,*LPNET_DVR_MATRIXLIST; typedef struct tagNET_MATRIX_UARTPARAM { DWORD dwSize; BYTE byPortName[NAME_LEN]; WORD wUserId; BYTE byPortType; BYTE byFuncType; BYTE byProtocolType; BYTE byBaudRate; BYTE byDataBits; BYTE byStopBits; BYTE byParity; BYTE byFlowCtrl; BYTE byRes[22]; }NET_MATRIX_UARTPARAM, *LPNET_MATRIX_UARTPARAM; typedef struct tagNET_MATRIX_USERPARAM { DWORD dwSize; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byRole; BYTE byLevel; BYTE byRes[18]; }NET_MATRIX_USERPARAM, *LPNET_MATRIX_USERPARAM; typedef struct tagNET_MATRIX_RESOURSEGROUPPARAM { DWORD dwSize; BYTE byGroupName[NAME_LEN]; BYTE byGroupType; BYTE byRes1; WORD wMemNum; DWORD dwGlobalId[512]; BYTE byRes2[20]; }NET_MATRIX_RESOURCEGROUPPARAM,*LPNET_MATRIX_RESOURSEGROUPPARAM; typedef struct tagNET_MATRIX_USERGROUPPARAM { DWORD dwSize; BYTE sGroupName[NAME_LEN]; WORD wUserMember[255]; WORD wResorceGroupMember[255]; BYTE byPermission[32]; BYTE byRes[20]; } NET_MATRIX_USERGROUPPARAM, *LPNET_MATRIX_USERGROUPPARAM; typedef struct tagNET_MATRIX_TRUNKPARAM { DWORD dwSize; DWORD dwTrunkId; BYTE sTrunkName[NAME_LEN]; DWORD dwSrcMonId; DWORD dwDstCamId; BYTE byTrunkType; BYTE byAbility; BYTE bySubChan; BYTE byLevel; WORD wReserveUserID; BYTE byRes[18]; } NET_MATRIX_TRUNKPARAM, *LPNET_MATRIX_TRUNKPARAM; typedef struct tagNET_DVR_MATRIX_TRUNKLIST { DWORD dwSize; BYTE byRes[12]; DWORD dwTrunkNum; BYTE *pBuffer; DWORD dwBufLen; }NET_DVR_MATRIX_TRUNKLIST,*LPNET_DVR_MATRIX_TRUNKLIST; #define MATRIX_PROTOCOL_NUM 20 #define KEYBOARD_PROTOCOL_NUM 20 typedef struct tagNET_DVR_PROTO_TYPE_EX { WORD wType; WORD wCommunitionType; BYTE byDescribe[DESC_LEN]; }NET_DVR_PROTO_TYPE_EX, LPNET_DVR_PROTO_TYPE_EX; typedef struct tagNET_DVR_MATRIXMANAGE_ABIILITY { DWORD dwSize; DWORD dwMaxCameraNum; DWORD dwMaxMonitorNum; WORD wMaxMatrixNum; WORD wMaxSerialNum; WORD wMaxUser; WORD wMaxResourceArrayNum; WORD wMaxUserArrayNum; WORD wMaxTrunkNum; BYTE nStartUserNum; BYTE nStartUserGroupNum; BYTE nStartResourceGroupNum; BYTE nStartSerialNum; DWORD dwMatrixProtoNum; NET_DVR_PROTO_TYPE_EX struMatrixProto[MATRIX_PROTOCOL_NUM]; DWORD dwKeyBoardProtoNum; NET_DVR_PROTO_TYPE_EX struKeyBoardProto[KEYBOARD_PROTOCOL_NUM]; BYTE byDelMonitorLongCfg; BYTE byDelCamonitorLongCfg; BYTE byAudioSwitchContorl; BYTE byRes[29]; } NET_DVR_MATRIXMANAGE_ABILITY, *LPNET_DVR_MATRIXMANAGE_ABILITY; typedef struct tagNET_VCA_SINGLE_FACESNAPCFG { BYTE byActive; BYTE byAutoROIEnable; BYTE byRes[2]; NET_VCA_SIZE_FILTER struSizeFilter; NET_VCA_POLYGON struVcaPolygon; }NET_VCA_SINGLE_FACESNAPCFG, *LPNET_VCA_SINGLE_FACESNAPCFG; typedef struct tagNET_VCA_FACESNAPCFG { DWORD dwSize; BYTE bySnapTime; BYTE bySnapInterval; BYTE bySnapThreshold; BYTE byGenerateRate; BYTE bySensitive; BYTE byReferenceBright; BYTE byMatchType; BYTE byMatchThreshold; NET_DVR_JPEGPARA struPictureParam; NET_VCA_SINGLE_FACESNAPCFG struRule[MAX_RULE_NUM]; WORD wFaceExposureMinDuration; BYTE byFaceExposureMode; BYTE byBackgroundPic; DWORD dwValidFaceTime; DWORD dwUploadInterval; DWORD dwFaceFilteringTime; BYTE bySceneID; BYTE byInvalCapFilterEnable; BYTE byInvalCapFilterThreshold; BYTE byRes2[81]; }NET_VCA_FACESNAPCFG, *LPNET_VCA_FACESNAPCFG; typedef struct tagNET_DVR_FIRMWARE_VERSION_IFNO { DWORD dwSize; char szFirmwareVersion[LEN_PROPERTY]; BYTE byRes2[128]; }NET_DVR_FIRMWARE_VERSION_IFNO, *LPNET_DVR_FIRMWARE_VERSION_IFNO; typedef enum tagHUMAN_AGE_GROUP_ENUM { ENUM_AGE_GROUP_INFANT = 1, ENUM_AGE_GROUP_CHILD = 2, ENUM_AGE_GROUP_YOUNGSTER = 3, ENUM_AGE_GROUP_ADOLESCENT = 4, ENUM_AGE_GROUP_YOUTH = 5, ENUM_AGE_GROUP_PRIME = 6, ENUM_AGE_GROUP_MIDLIFE = 7, ENUM_AGE_GROUP_MIDAGE = 8, ENUM_AGE_GROUP_OLD = 9 }HUMAN_AGE_GROUP_ENUM; typedef struct tagNET_VCA_FACESNAP_ADDINFO { NET_VCA_RECT struFacePicRect; int iSwingAngle; int iTiltAngle; DWORD dwPupilDistance; BYTE byBlockingState; BYTE byRes[499]; }NET_VCA_FACESNAP_ADDINFO, *LPNET_VCA_FACESNAP_ADDINFO; typedef struct tagNET_VCA_FACESNAP_RESULT { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; DWORD dwFacePicID; DWORD dwFaceScore; NET_VCA_TARGET_INFO struTargetInfo; NET_VCA_RECT struRect; NET_VCA_DEV_INFO struDevInfo; DWORD dwFacePicLen; DWORD dwBackgroundPicLen; BYTE bySmart; BYTE byAlarmEndMark; BYTE byRepeatTimes; BYTE byUploadEventDataType; NET_VCA_HUMAN_FEATURE struFeature; float fStayDuration; char sStorageIP[16]; WORD wStoragePort; WORD wDevInfoIvmsChannelEx; BYTE byFacePicQuality; BYTE byUIDLen; BYTE byLivenessDetectionStatus; BYTE byAddInfo; BYTE *pUIDBuffer; BYTE *pAddInfoBuffer; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byBrokenNetHttp; BYTE* pBuffer1; BYTE* pBuffer2; }NET_VCA_FACESNAP_RESULT, *LPNET_VCA_FACESNAP_RESULT; typedef struct tagNET_VCA_SUB_PROCIMG_V50 { DWORD dwImageLen; DWORD dwFaceScore; NET_VCA_RECT struVcaRect; NET_VCA_POINT struLeftEyePoint; NET_VCA_POINT struRightEyePoint; BYTE byDistance; BYTE bySex; BYTE byAgeGroup; BYTE byEyeGlass; NET_VCA_RECT struPosRect; BYTE byRes[20]; BYTE *pImage; }NET_VCA_SUB_PROCIMG_V50, *LPNET_VCA_SUB_PROCIMG_V50; typedef struct tagNET_DVR_FACE_DETECTION { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; DWORD dwBackgroundPicLen; NET_VCA_DEV_INFO struDevInfo; NET_VCA_RECT struFacePic[MAX_FACE_PIC_NUM]; BYTE byFacePicNum; BYTE byUploadEventDataType; WORD wDevInfoIvmsChannelEx; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[249]; BYTE* pBackgroundPicpBuffer; }NET_DVR_FACE_DETECTION,*LPNET_DVR_FACE_DETECTION; typedef struct tagNET_DVR_UPGRADE_PARAM { DWORD dwUpgradeType; char *sFileName; void *pInbuffer; DWORD dwBufferLen; char *pUnitIdList[64]; BYTE byRes[112]; }NET_DVR_UPGRADE_PARAM, *LPNET_DVR_UPGRADE_PARAM; typedef struct tagNET_VCA_FD_PROCIMG_RESULT_V50 { DWORD dwSize; DWORD dwImageId; BYTE byRes[20]; DWORD dwSubImageNum; NET_VCA_SUB_PROCIMG_V50 struProcImg[MAX_TARGET_NUM]; }NET_VCA_FD_PROCIMG_RESULT_V50, *LPNET_VCA_FD_PROCIMG_RESULT_V50; typedef struct tagNET_DVR_DEFOCUS_ALARM { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; WORD wDevInfoIvmsChannelEx; BYTE byRes1[2]; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[49]; }NET_DVR_DEFOCUS_ALARM, *LPNET_DVR_DEFOCUS_ALARM; typedef struct tagNET_DVR_DENSEFOGDETECTION_ALARM { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byFogLevel; BYTE byRes[259]; }NET_DVR_DENSEFOGDETECTION_ALARM, *LPNET_DVR_DENSEFOGDETECTION_ALARM; typedef struct tagNET_DVR_AUDIOEXCEPTION_ALARM { DWORD dwSize; BYTE byAlarmType; BYTE byRes1; WORD wAudioDecibel; NET_VCA_DEV_INFO struDevInfo; WORD wDevInfoIvmsChannelEx; BYTE byRes[62]; }NET_DVR_AUDIOEXCEPTION_ALARM, *LPNET_DVR_AUDIOEXCEPTION_ALARM; typedef struct tagNET_BUTTON_DOWN_EXCEPTION_ALARM { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; BYTE byRes[64]; }NET_BUTTON_DOWN_EXCEPTION_ALARM, *LPNET_BUTTON_DOWN_EXCEPTION_ALARM; typedef struct tagNET_VCA_FD_IMAGE_CFG { DWORD dwWidth; DWORD dwHeight; DWORD dwImageLen; BYTE byRes[20]; BYTE *pImage; }NET_VCA_FD_IMAGE_CFG, *LPNET_VCA_FD_IMAGE_CFG; typedef struct tagNET_VCA_FD_PROCIMG_CFG { DWORD dwSize; BYTE byEnable; BYTE bySensitivity; BYTE byRes1[22]; NET_VCA_SIZE_FILTER struSizeFilter; NET_VCA_POLYGON struPolygon; NET_VCA_FD_IMAGE_CFG struFDImage; BYTE byRes2[20]; }NET_VCA_FD_PROCIMG_CFG, *LPNET_VCA_FD_PROCIMG_CFG; typedef struct tagNET_VCA_SUB_PROCIMG { DWORD dwImageLen; DWORD dwFaceScore; NET_VCA_RECT struVcaRect; BYTE byRes[20]; BYTE *pImage; }NET_VCA_SUB_PROCIMG, *LPNET_VCA_SUB_PROCIMG; typedef struct tagNET_VCA_FD_PROCIMG_RESULT { DWORD dwSize; DWORD dwImageId; BYTE byRes[20]; DWORD dwSubImageNum; NET_VCA_SUB_PROCIMG struProcImg[MAX_TARGET_NUM]; }NET_VCA_FD_PROCIMG_RESULT, *LPNET_VCA_FD_PROCIMG_RESULT; typedef struct tagNET_VCA_PICMODEL_RESULT { DWORD dwImageLen; DWORD dwModelLen; BYTE byRes[20]; BYTE *pImage; BYTE *pModel; }NET_VCA_PICMODEL_RESULT, *LPNET_VCA_PICMODEL_RESULT; typedef struct tagNET_VCA_REGISTER_PIC { DWORD dwImageID; DWORD dwFaceScore; NET_VCA_RECT struVcaRect; BYTE byRes[20]; }NET_VCA_REGISTER_PIC, *LPNET_VCA_REGISTER_PIC; #define MAX_HUMAN_PICTURE_NUM 10 #define MAX_HUMAN_BIRTHDATE_LEN 10 typedef struct tagNET_DVR_AREAINFOCFG { WORD wNationalityID; WORD wProvinceID; WORD wCityID; WORD wCountyID; DWORD dwCode; }NET_DVR_AREAINFOCFG, *LPNET_DVR_AREAINFOCFG; typedef struct tagNET_VCA_HUMAN_ATTRIBUTE { BYTE bySex; BYTE byCertificateType; BYTE byBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byName[NAME_LEN]; NET_DVR_AREAINFOCFG struNativePlace; BYTE byCertificateNumber[NAME_LEN]; DWORD dwPersonInfoExtendLen; BYTE *pPersonInfoExtend; BYTE byAgeGroup; BYTE byRes2[11]; }NET_VCA_HUMAN_ATTRIBUTE, *LPNET_VCA_HUMAN_ATTRIBUTE; typedef struct tagNET_VCA_HUMANATTRIBUTE_COND { BYTE bySex; BYTE byCertificateType; BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byName[NAME_LEN]; NET_DVR_AREAINFOCFG struNativePlace; BYTE byCertificateNumber[NAME_LEN]; BYTE byRes[20]; }NET_VCA_HUMANATTRIBUTE_COND, *LPNET_VCA_HUMANATTRIBUTE_COND; typedef struct tagNET_VCA_BLACKLIST_INFO { DWORD dwSize; DWORD dwRegisterID; DWORD dwGroupNo; BYTE byType; BYTE byLevel; BYTE byRes1[2]; NET_VCA_HUMAN_ATTRIBUTE struAttribute; BYTE byRemark[NAME_LEN]; DWORD dwFDDescriptionLen; BYTE *pFDDescriptionBuffer; DWORD dwFCAdditionInfoLen; BYTE *pFCAdditionInfoBuffer; BYTE byRes2[4]; }NET_VCA_BLACKLIST_INFO, *LPNET_VCA_BLACKLIST_INFO; typedef struct tagNET_VCA_BLACKLIST_PARA { DWORD dwSize; NET_VCA_BLACKLIST_INFO struBlackListInfo; DWORD dwRegisterPicNum; NET_VCA_PICMODEL_RESULT struRegisterPic[MAX_HUMAN_PICTURE_NUM]; BYTE byRes[40]; }NET_VCA_BLACKLIST_PARA, *LPNET_VCA_BLACKLIST_PARA; typedef struct tagNET_VCA_BLACKLIST_COND { LONG lChannel; DWORD dwGroupNo; BYTE byType; BYTE byLevel; BYTE byRes1[2]; NET_VCA_HUMAN_ATTRIBUTE struAttribute; BYTE byRes[20]; }NET_VCA_BLACKLIST_COND, *LPNET_VCA_BLACKLIST_COND; typedef struct tagNET_VCA_BLACKLIST_PIC { DWORD dwSize; DWORD dwFacePicNum; BYTE byRes[20]; NET_VCA_PICMODEL_RESULT struBlackListPic[MAX_HUMAN_PICTURE_NUM]; }NET_VCA_BLACKLIST_PIC, *LPNET_VCA_BLACKLIST_PIC; typedef struct tagNET_VCA_FIND_PICTURECOND { LONG lChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byRes[12]; }NET_VCA_FIND_PICTURECOND, *LPNET_VCA_FIND_PICTURECOND; #define MAX_FACE_PIC_LEN 6144 typedef struct tagNET_VCA_SUB_SNAPPIC_DATA { DWORD dwFacePicID; DWORD dwFacePicLen; NET_DVR_TIME struSnapTime; DWORD dwSimilarity; BYTE byRes[16]; char sPicBuf[MAX_FACE_PIC_LEN]; }NET_VCA_SUB_SNAPPIC_DATA, *LPNET_VCA_SUB_SNAPPIC_DATA; typedef struct tagNET_VCA_ADVANCE_FIND { DWORD dwFacePicID; BYTE byRes[36]; }NET_VCA_ADVANCE_FIND, *LPNET_VCA_ADVANCE_FIND; typedef struct tagNET_VCA_NORMAL_FIND { DWORD dwImageID; DWORD dwFaceScore; NET_VCA_RECT struVcaRect; BYTE byRes[20]; }NET_VCA_NORMAL_FIND, *LPNET_VCA_NORMAL_FIND; typedef union tagNET_VCA_FIND_SNAPPIC_UNION { NET_VCA_NORMAL_FIND struNormalFind; NET_VCA_ADVANCE_FIND struAdvanceFind; }NET_VCA_FIND_SNAPPIC_UNION, *LPNET_VCA_FIND_SNAPPIC_UNION; typedef enum _VCA_FIND_SNAPPIC_TYPE_ { VCA_NORMAL_FIND = 0x00000000, VCA_ADVANCE_FIND = 0x00000001 }VCA_FIND_SNAPPIC_TYPE; typedef struct tagNET_VCA_FIND_PICTURECOND_ADVANCE { LONG lChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byThreshold; BYTE byRes[23]; VCA_FIND_SNAPPIC_TYPE dwFindType; NET_VCA_FIND_SNAPPIC_UNION uFindParam; }NET_VCA_FIND_PICTURECOND_ADVANCE, *LPNET_VCA_FIND_PICTURECOND_ADVANCE; typedef struct tagNET_VCA_FACESNAP_INFO_ALARM { DWORD dwRelativeTime; DWORD dwAbsTime; DWORD dwSnapFacePicID; DWORD dwSnapFacePicLen; NET_VCA_DEV_INFO struDevInfo; BYTE byFaceScore; BYTE bySex; BYTE byGlasses; BYTE byAge; BYTE byAgeDeviation; BYTE byAgeGroup; BYTE byFacePicQuality; BYTE byEthnic; DWORD dwUIDLen; BYTE *pUIDBuffer; float fStayDuration; BYTE *pBuffer1; }NET_VCA_FACESNAP_INFO_ALARM, *LPNET_VCA_FACESNAP_INFO_ALARM; typedef struct tagNET_VCA_BLACKLIST_INFO_ALARM { NET_VCA_BLACKLIST_INFO struBlackListInfo; DWORD dwBlackListPicLen; DWORD dwFDIDLen; BYTE *pFDID; DWORD dwPIDLen; BYTE *pPID; WORD wThresholdValue; BYTE byIsNoSaveFDPicture; BYTE byRealTimeContrast; BYTE *pBuffer1; }NET_VCA_BLACKLIST_INFO_ALARM, *LPNET_VCA_BLACKLIST_INFO_ALARM; typedef struct tagNET_VCA_FACESNAP_MATCH_ALARM { DWORD dwSize; float fSimilarity; NET_VCA_FACESNAP_INFO_ALARM struSnapInfo; NET_VCA_BLACKLIST_INFO_ALARM struBlackListInfo; char sStorageIP[16]; WORD wStoragePort; BYTE byMatchPicNum; BYTE byPicTransType; DWORD dwSnapPicLen; BYTE *pSnapPicBuffer; NET_VCA_RECT struRegion; DWORD dwModelDataLen; BYTE *pModelDataBuffer; BYTE byModelingStatus; BYTE byLivenessDetectionStatus; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byMask; BYTE bySmile; BYTE byContrastStatus; BYTE byBrokenNetHttp; }NET_VCA_FACESNAP_MATCH_ALARM, *LPNET_VCA_FACESNAP_MATCH_ALARM; typedef struct tagNET_VCA_BLACKLIST_INFO_ALARM_LOG { NET_VCA_BLACKLIST_INFO struBlackListInfo; DWORD dwBlackListPicID; BYTE byRes[20]; }NET_VCA_BLACKLIST_INFO_ALARM_LOG, *LPNET_VCA_BLACKLIST_INFO_ALARM_LOG; typedef struct tagNET_VCA_FACESNAP_INFO_ALARM_LOG { DWORD dwRelativeTime; DWORD dwAbsTime; DWORD dwSnapFacePicID; NET_VCA_DEV_INFO struDevInfo; BYTE byRes[20]; }NET_VCA_FACESNAP_INFO_ALARM_LOG, *LPNET_VCA_FACESNAP_INFO_ALARM_LOG; typedef struct tagNET_VCA_FACESNAP_MATCH_ALARM_LOG { DWORD dwSize; float fSimilarity; NET_VCA_FACESNAP_INFO_ALARM_LOG struSnapInfoLog; NET_VCA_BLACKLIST_INFO_ALARM_LOG struBlackListInfoLog; BYTE byRes[60]; }NET_VCA_FACESNAP_MATCH_ALARM_LOG, *LPNET_VCA_FACESNAP_MATCH_ALARM_LOG; typedef struct tagNET_VCA_FACEMATCH_PICCOND { DWORD dwSize; DWORD dwSnapFaceID; DWORD dwBlackListID; DWORD dwBlackListFaceID; BYTE byRes[20]; }NET_VCA_FACEMATCH_PICCOND, *LPNET_VCA_FACEMATCH_PICCOND; typedef struct tagNET_VCA_FACEMATCH_PICTURE { DWORD dwSize; DWORD dwSnapFaceLen; DWORD dwBlackListFaceLen; BYTE byRes[20]; BYTE *pSnapFace; BYTE *pBlackListFace; }NET_VCA_FACEMATCH_PICTURE, *LPNET_VCA_FACEMATCH_PICTURE; typedef struct tagNET_VCA_BLACKLIST_FASTREGISTER_PARA { DWORD dwSize; NET_VCA_BLACKLIST_INFO struBlackListInfo; DWORD dwImageLen; BYTE byRes[124]; BYTE *pImage; }NET_VCA_BLACKLIST_FASTREGISTER_PARA, *LPNET_VCA_BLACKLIST_FASTREGISTER_PARA; typedef struct tagNET_DVR_FRAMES_PEOPLE_COUNTING { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; DWORD dwRelativeTime; DWORD dwAbsTime; DWORD dwPeopleCountingNum; DWORD dwPicLen; BYTE *pPicBuffer; BYTE byRes[512]; }NET_DVR_FRAMES_PEOPLE_COUNTING, *LPNET_DVR_FRAMES_PEOPLE_COUNTING; typedef struct tagNET_VCA_SINGLE_PATH { BYTE byActive; BYTE byType; BYTE bySaveAlarmPic; BYTE byRes1[5]; DWORD dwDiskDriver; DWORD dwLeftSpace; BYTE byRes2[8]; }NET_VCA_SINGLE_PATH, *LPNET_VCA_SINGLE_PATH; typedef struct tagNET_VCA_SAVE_PATH_CFG { DWORD dwSize; NET_VCA_SINGLE_PATH struPathInfo[MAX_DISKNUM_V30]; BYTE byRes[40]; }NET_VCA_SAVE_PATH_CFG, *LPNET_VCA_SAVE_PATH_CFG; typedef struct tagNET_DVR_DEV_ACCESS_CFG { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wDevicePort; BYTE byEnable; BYTE byRes1; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byRes2[60]; }NET_DVR_DEV_ACCESS_CFG,*LPNET_DVR_DEV_ACCESS_CFG; #define MAKE_RESOLUTION(_interlace_, _width_, _height_, _fps_) \ (((_interlace_)<<28) \ |((((_width_)>>3)&0x1ff)<<19)| \ ((((_height_)>>1)&0x7ff)<<8)| \ ((_fps_)&0xff)) #define GET_RES_INTERLACE(_res_) \ (((_res_)>>28)&0x1) #define GET_RES_WIDTH(_res_) \ ((((_res_)>>19)&0x1ff)<<3) #define GET_RES_HEIGHT(_res_) \ ((((_res_)>>8)&0x7ff)<<1) #define GET_RES_FPS(_res_) \ ((_res_)&0xff) #define NOT_AVALIABLE MAKE_RESOLUTION (0,0,0,0) #define SVGA_60HZ MAKE_RESOLUTION(0, 800, 600, 60) #define SVGA_75HZ MAKE_RESOLUTION(0, 800, 600, 75) #define XGA_60HZ MAKE_RESOLUTION(0, 1024, 768, 60) #define XGA_75HZ MAKE_RESOLUTION(0, 1024, 768, 75) #define SXGA_60HZ MAKE_RESOLUTION(0, 1280, 1024, 60) #define SXGA2_60HZ MAKE_RESOLUTION(0, 1280, 960, 60) #define _720P_24HZ MAKE_RESOLUTION(0, 1280, 720, 24) #define _720P_25HZ MAKE_RESOLUTION(0, 1280, 720, 25) #define _720P_30HZ MAKE_RESOLUTION(0, 1280, 720, 30) #define _720P_60HZ MAKE_RESOLUTION(0, 1280, 720, 60) #define _720P_50HZ MAKE_RESOLUTION(0, 1280, 720, 50) #define _1080I_60HZ MAKE_RESOLUTION(1, 1920, 1080, 60) #define _1080I_50HZ MAKE_RESOLUTION(1, 1920, 1080, 50) #define _1080P_60HZ MAKE_RESOLUTION(0, 1920, 1080, 60) #define _1080P_50HZ MAKE_RESOLUTION(0, 1920, 1080, 50) #define _1080P_30HZ MAKE_RESOLUTION(0, 1920, 1080, 30) #define _1080P_25HZ MAKE_RESOLUTION(0, 1920, 1080, 25) #define _1080P_24HZ MAKE_RESOLUTION(0, 1920, 1080, 24) #define UXGA_60HZ MAKE_RESOLUTION(0, 1600, 1200, 60) #define UXGA_30HZ MAKE_RESOLUTION(0, 1600, 1200, 30) #define WSXGA_60HZ MAKE_RESOLUTION(0, 1680, 1050, 60) #define WUXGA_60HZ MAKE_RESOLUTION(0, 1920, 1200, 60) #define WUXGA_30HZ MAKE_RESOLUTION(0, 1920, 1200, 30) #define WXGA_60HZ MAKE_RESOLUTION(0, 1360, 768, 60) #define SXGA_PLUS_60HZ MAKE_RESOLUTION(0, 1400, 1050, 60) #define VGA_MODE_3840x2160_30HZ MAKE_RESOLUTION(0, 3840, 2160, 30) #define VGA_MODE_3840x2160_60HZ MAKE_RESOLUTION(0, 3840, 2160, 60) #define MAX_WINDOWS_NUM 12 #define MAX_SUPPORT_RES 32 #define MAX_DISPNUM_V41 32 #define MAX_SDI_RES 16 typedef struct tagNET_DVR_DISPWINDOWMODE { BYTE byDispChanType; BYTE byDispChanSeq; BYTE byRes[2]; BYTE byDispMode[MAX_WINDOWS_NUM]; }NET_DVR_DISPWINDOWMODE, *LPNET_DVR_DISPWINDOWMODE; typedef struct tagNET_DVR_DISPINFO { BYTE byChanNums; BYTE byStartChan; BYTE byRes[2]; DWORD dwSupportResolution[MAX_SUPPORT_RES]; }NET_DVR_DISPINFO, *LPNET_DVR_DISPINFO; typedef struct tagNET_DVR_SCREENINFO { BYTE bySupportBigScreenNums; BYTE byStartBigScreenNum; BYTE byMaxScreenX; BYTE byMaxScreenY; BYTE byRes[8]; }NET_DVR_SCREENINFO, *LPNET_DVR_SCREENINFO; typedef struct tagNET_DVR_SDI_INFO { BYTE byChanNums; BYTE byStartChan; BYTE byRes[2]; DWORD dwSupportResolution[MAX_SDI_RES]; }NET_DVR_SDI_INFO,*LPNET_DVR_SDI_INFO; typedef struct tagNET_DVR_MATRIX_ABILITY_V41 { DWORD dwSize; BYTE byDspNums; BYTE byDecChanNums; BYTE byStartChan; BYTE byRes1[5]; NET_DVR_DISPINFO struVgaInfo; NET_DVR_DISPINFO struBncInfo; NET_DVR_DISPINFO struHdmiInfo; NET_DVR_DISPINFO struDviInfo; NET_DVR_DISPWINDOWMODE struDispMode[MAX_DISPNUM_V41]; NET_DVR_SCREENINFO struBigScreenInfo; BYTE bySupportAutoReboot; BYTE byRes2[3]; NET_DVR_SDI_INFO struSDIInfo; BYTE byRes3[48]; } NET_DVR_MATRIX_ABILITY_V41, *LPNET_DVR_MATRIX_ABILITY_V41; #define MAX_WINDOWS 16 #define MAX_WINDOWS_V41 36 #define STARTDISPCHAN_VGA 1 #define STARTDISPCHAN_BNC 9 #define STARTDISPCHAN_HDMI 25 #define STARTDISPCHAN_DVI 29 typedef union tagNET_DVR_VIDEO_PLATFORM { BYTE byRes[160]; struct { BYTE byJoinDecoderId[MAX_WINDOWS_V41]; BYTE byDecResolution[MAX_WINDOWS_V41]; NET_DVR_RECTCFG struPosition; BYTE byRes[80]; }struVideoPlatform; struct { BYTE byRes[160]; }struNotVideoPlatform; }NET_DVR_VIDEO_PLATFORM, LPNET_DVR_VIDEO_PLATFORM; typedef struct tagNET_DVR_MATRIX_VOUTCFG { DWORD dwSize; BYTE byAudio; BYTE byAudioWindowIdx; BYTE byDispChanType; BYTE byVedioFormat; DWORD dwResolution; DWORD dwWindowMode; BYTE byJoinDecChan[MAX_WINDOWS_V41]; BYTE byEnlargeStatus; BYTE byEnlargeSubWindowIndex; BYTE byScale; BYTE byUnionType; NET_DVR_VIDEO_PLATFORM struDiff; DWORD dwDispChanNum; WORD wLEDWidth; WORD wLEDHeight; BYTE byEnableVideoEffect; BYTE byRes[3]; NET_DVR_VIDEOEFFECT struVideoEffect; BYTE byRes2[60]; }NET_DVR_MATRIX_VOUTCFG,*LPNET_DVR_MATRIX_VOUTCFG; typedef struct tagNET_DVR_DISP_CHAN_STATUS_V41 { BYTE byDispStatus; BYTE byBVGA; BYTE byVideoFormat; BYTE byWindowMode; BYTE byJoinDecChan[MAX_WINDOWS_V41]; BYTE byFpsDisp[MAX_WINDOWS_V41]; BYTE byScreenMode; BYTE byRes1[3]; DWORD dwDispChan; BYTE byRes2[24]; }NET_DVR_DISP_CHAN_STATUS_V41, *LPNET_DVR_DISP_CHAN_STATUS_V41; typedef struct tagNET_DVR_DECODER_WORK_STATUS_V41 { DWORD dwSize; NET_DVR_MATRIX_CHAN_STATUS struDecChanStatus[32]; NET_DVR_DISP_CHAN_STATUS_V41 struDispChanStatus[MAX_DISPNUM_V41]; BYTE byAlarmInStatus[32]; BYTE byAlarmOutStatus[32]; BYTE byAudioInChanStatus; BYTE byRes[127]; }NET_DVR_DECODER_WORK_STATUS_V41,*LPNET_DVR_DECODER_WORK_STATUS_V41; typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byChannel; BYTE byReserve; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwPlayMode; NET_DVR_TIME StartTime; NET_DVR_TIME StopTime; char sFileName[128]; BYTE byRes[64]; }NET_DVR_MATRIX_DEC_REMOTE_PLAY_V41, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41; #define MAX_BIGSCREENNUM_SCENE 100 #define MAX_LAYERNUMS 32 typedef struct tagNET_DVR_RECTCFG_SCENE { WORD wXCoordinate; WORD wYCoordinate; WORD wWidth; WORD wHeight; }NET_DVR_RECTCFG_SCENE, *LPNET_DVR_RECTCFGSCENE; typedef struct tagNET_DVR_SCENEDISPCFG { BYTE byEnable; BYTE bySoltNum; BYTE byRes1[2]; BYTE byDispChanNum; BYTE byAudio; BYTE byAudioWindowIdx; BYTE byVedioFormat; BYTE byWindowMode; BYTE byEnlargeStatus; BYTE byEnlargeSubWindowIndex; BYTE byScale; DWORD dwResolution; BYTE byJoinDecChan[MAX_WINDOWS_V41]; BYTE byJoinDecoderId[MAX_WINDOWS_V41]; BYTE byDecResolution[MAX_WINDOWS_V41]; BYTE byRow; BYTE byColumn; BYTE byRes2[5]; NET_DVR_RECTCFG struDisp; } NET_DVR_SCENEDISPCFG,*LPNET_DVR_SCENEDISPCFG; typedef struct tagDEV_CHAN_INFO_SCENE { NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; BYTE byDeviceType; BYTE byRes[5]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; } NET_DVR_DEV_CHAN_INFO_SCENE,*LPNET_DVR_DEV_CHAN_INFO_SCENE; typedef struct tagSTREAM_MEDIA_SERVER_CFG_SCENE { BYTE byValid; BYTE byRes1[3]; NET_DVR_IPADDR struDevIP; WORD wDevPort; BYTE byTransmitType; BYTE byRes2[5]; }NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE; typedef struct tagPU_STREAM_CFG_SCENE { NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE streamMediaServerCfg; NET_DVR_DEV_CHAN_INFO_SCENE struDevChanInfo; }NET_DVR_PU_STREAM_CFG_SCENE,*LPNET_DVR_PU_STREAM_CFG_SCENE; typedef struct tagNET_DVR_CYC_SUR_CHAN_ELE_SCENE { BYTE byEnable; BYTE byRes[3]; NET_DVR_STREAM_MEDIA_SERVER_CFG_SCENE struStreamMediaSvrCfg; NET_DVR_DEV_CHAN_INFO_SCENE struDecChanInfo; }NET_DVR_CYC_SUR_CHAN_ELE_SCENE,*LPNET_DVR_CYC_SUR_CHAN_ELE_SCENE; typedef struct tagNET_DVR_MATRIX_LOOP_DECINFO_SCENE { WORD wPoolTime; BYTE byRes1[2]; NET_DVR_CYC_SUR_CHAN_ELE_SCENE struChanArray[MAX_CYCLE_CHAN]; BYTE byRes2[4]; } NET_DVR_MATRIX_LOOP_DECINFO_SCENE,*LPNET_DVR_MATRIX_LOOP_DECINFO_SCENE; typedef struct tagNET_DVR_DECODECHANCFG_SCENE { BYTE byDecodeEnable; BYTE bySlotNum; BYTE byDecChan; BYTE byJointAllDecodeChan; BYTE byJointSlotNum; BYTE byJointChanNum; BYTE byRes[2]; union { NET_DVR_PU_STREAM_CFG_SCENE struSceneDynamicDecCfg; NET_DVR_MATRIX_LOOP_DECINFO_SCENE struSceneCycDecCfg; } struDecCfg; }NET_DVR_DECODECHANCFG_SCENE,*LPNET_DVR_DECODECHANCFG_SCENE; typedef struct tagNET_DVR_BIGSCREENCFG_SCENE { BYTE byAllValid; BYTE byAssociateBaseMap; BYTE byEnableSpartan; BYTE byRes; NET_DVR_WINCFG struWinCfg[MAX_LAYERNUMS]; NET_DVR_BIGSCREENCFG struBigScreen; }NET_DVR_BIGSCREENCFG_SCENE, *LPNET_DVR_BIGSCREENCFG_SCENE; typedef struct tagNET_DVR_MATRIX_SCENECFG { DWORD dwSize; BYTE sSceneName[NAME_LEN]; BYTE byBigScreenNums; BYTE byRes1[3]; WORD wDecChanNums; WORD wDispChanNums; BYTE byRes2[12]; BYTE *pBigScreenBuffer; BYTE *pDecChanBuffer; BYTE *pDispChanBuffer; }NET_DVR_MATRIX_SCENECFG, *LPNET_DVR_MATRIX_SCENECFG; typedef struct tagNET_DVR_BIGSCREENASSOCIATECFG { DWORD dwSize; BYTE byEnableBaseMap; BYTE byAssociateBaseMap; BYTE byEnableSpartan; BYTE byRes[21]; } NET_DVR_BIGSCREENASSOCIATECFG, *LPNET_DVR_BIGSCREENASSOCIATECFG; #define MAX_WIN_COUNT 224 typedef struct tagNET_DVR_SCREEN_WINCFG { DWORD dwSize; BYTE byVaild; BYTE byInputType; WORD wInputIdx; DWORD dwLayerIdx; NET_DVR_RECTCFG struWin; BYTE byWndIndex; BYTE byCBD; BYTE bySubWnd; BYTE byRes1; DWORD dwDeviceIndex; BYTE byRes2[16]; }NET_DVR_SCREEN_WINCFG, *LPNET_DVR_SCREEN_WINCFG; typedef struct tagNET_DVR_WINLIST { DWORD dwSize; WORD wScreenSeq; BYTE byRes[10]; DWORD dwWinNum; BYTE *pBuffer; DWORD dwBufLen; }NET_DVR_WINLIST,*LPNET_DVR_WINLIST; #define MAX_LAYOUT_COUNT 16 typedef struct tagNET_DVR_LAYOUTCFG { DWORD dwSize; BYTE byValid; BYTE byRes1[3]; BYTE byLayoutName[NAME_LEN]; NET_DVR_SCREEN_WINCFG struWinCfg[MAX_WIN_COUNT]; BYTE byRes2[16]; }NET_DVR_LAYOUTCFG, *LPNET_DVR_LAYOUTCFG; typedef struct tagNET_DVR_LAYOUT_LIST { DWORD dwSize; NET_DVR_LAYOUTCFG struLayoutInfo[MAX_LAYOUT_COUNT]; BYTE byRes[4]; }NET_DVR_LAYOUT_LIST, *LPNET_DVR_LAYOUT_LIST; #define MAX_CAM_COUNT 224 #define MAX_CAM_COUNT_V50 512 typedef enum tagNET_DVR_CAM_MODE { NET_DVR_UNKNOW = 0, NET_DVR_CAM_BNC, NET_DVR_CAM_VGA, NET_DVR_CAM_DVI, NET_DVR_CAM_HDMI, NET_DVR_CAM_IP, NET_DVR_CAM_RGB, NET_DVR_CAM_DECODER, NET_DVR_CAM_MATRIX, NET_DVR_CAM_YPBPR, NET_DVR_CAM_USB, NET_DVR_CAM_SDI, NET_DVR_CAM_HDI, NET_DVR_CAM_DP, NET_DVR_CAM_HDTVI, NET_DVR_CAM_JOINT, NET_DVR_CAM_HDBASET, NET_DVR_CAM_DVIT, NET_DVR_CAM_FUSION, NET_DVR_CAM_VSCREEN, NET_DVR_CAM_FIBER, NET_DVR_CAM_3GSDI, NET_DVR_CAM_DISTRIBUTED_IP, NET_DVR_CAM_JONIT_X86, NET_DVR_CAM_TVI, }NET_DVR_CAM_MODE; typedef struct tagNET_DVR_INPUTSTREAMCFG { DWORD dwSize ; BYTE byValid; BYTE byCamMode; WORD wInputNo; BYTE sCamName[NAME_LEN] ; NET_DVR_VIDEOEFFECT struVideoEffect; NET_DVR_PU_STREAM_CFG struPuStream; WORD wBoardNum ; WORD wInputIdxOnBoard; DWORD dwResolution; BYTE byVideoFormat; BYTE byStatus; BYTE sGroupName[NAME_LEN]; BYTE byJointMatrix; BYTE byRes; }NET_DVR_INPUTSTREAMCFG, *LPNET_DVR_INPUTSTREAMCFG; typedef struct tagNET_DVR_INPUTSTREAM_LIST { DWORD dwSize; NET_DVR_INPUTSTREAMCFG struInputStreamInfo[MAX_CAM_COUNT]; BYTE byRes[4]; }NET_DVR_INPUTSTREAM_LIST, *LPNET_DVR_INPUTSTREAM_LIST; typedef struct tagNET_DVR_OUTPUTPARAM { DWORD dwSize; BYTE byMonMode; BYTE byRes1[3]; DWORD dwResolution; NET_DVR_VIDEOEFFECT struVideoEffect; BYTE byRes2[32]; }NET_DVR_OUTPUTPARAM, *LPNET_DVR_OUTPUTPARAM; typedef struct tagNET_DVR_OUTPUTCFG { DWORD dwSize; BYTE byScreenLayX; BYTE byScreenLayY; WORD wOutputChanNum; BYTE byRes1[4]; NET_DVR_OUTPUTPARAM struOutputParam; BYTE sWallName[16]; BYTE byRes2[8]; }NET_DVR_OUTPUTCFG, *LPNET_DVR_OUTPUTCFG; #define SCREEN_PROTOCOL_NUM 20 typedef struct tagNET_DVR_SCREENSERVER_ABILITY { DWORD dwSize; BYTE byIsSupportScreenNum; BYTE bySerialNums; BYTE byMaxInputNums; BYTE byMaxLayoutNums; BYTE byMaxWinNums; BYTE byRes1[19]; BYTE byMaxScreenLayX; BYTE byMaxScreenLayY; WORD wMatrixProtoNum; NET_DVR_PROTO_TYPE struScreenProto[SCREEN_PROTOCOL_NUM]; BYTE byRes2[24]; }NET_DVR_SCREENSERVER_ABILITY, *LPNET_DVR_SCREENSERVER_ABILITY; typedef struct tagNET_DVR_SCREENCONTROL_ABILITY { DWORD dwSize; BYTE byLayoutNum; BYTE byWinNum; BYTE byOsdNum; BYTE byLogoNum; BYTE byInputStreamNum; BYTE byOutputChanNum; BYTE byCamGroupNum; BYTE byPlanNum; BYTE byRes1[5]; BYTE byIsSupportPlayBack; BYTE byMatrixInputNum; BYTE byMatrixOutputNum; NET_DVR_DISPINFO struVgaInfo; NET_DVR_DISPINFO struBncInfo; NET_DVR_DISPINFO struHdmiInfo; NET_DVR_DISPINFO struDviInfo; BYTE byMaxUserNums; BYTE byPicSpan; WORD wDVCSDevNum; WORD wNetSignalNum; WORD wBaseCoordinateX; WORD wBaseCoordinateY; BYTE byExternalMatrixNum; BYTE byRes2[49]; }NET_DVR_SCREENCONTROL_ABILITY, *LPNET_DVR_SCREENCONTROL_ABILITY; typedef struct tagNET_DVR_ANALOGINPUTSTATUS { DWORD dwLostFrame; BYTE byHaveSignal; BYTE byVideoFormat; BYTE byRes[46]; } NET_DVR_ANALOGINPUTSTATUS, *LPNET_DVR_ANALOGINPUTSTATUS; typedef union tagNET_DVR_INPUTSTATUS_UNION { NET_DVR_MATRIX_CHAN_STATUS struIpInputStatus; NET_DVR_ANALOGINPUTSTATUS struAnalogInputStatus; } NET_DVR_INPUTSTATUS_UNION, *LPNET_DVR_INPUTSTATUS_UNION; typedef struct tagNET_DVR_INPUTSTATUS { WORD wInputNo; BYTE byInputType; BYTE byRes1[9]; NET_DVR_INPUTSTATUS_UNION struStatusUnion; BYTE byRes2[16]; } NET_DVR_INPUTSTATUS, *LPNET_DVR_INPUTSTATUS; typedef struct tagNET_DVR_SCREENINPUTSTATUS { DWORD dwSize; BYTE byRes[12]; DWORD dwNums; BYTE *pBuffer; DWORD dwBufLen; }NET_DVR_SCREENINPUTSTATUS,*LPNET_DVR_SCREENINPUTSTATUS; typedef struct tagNET_DVR_SCREENALARMCFG { DWORD dwSize; BYTE byAlarmType; BYTE byBoardType; BYTE bySubException; BYTE byRes1; WORD wStartInputNum; WORD wEndInputNum; BYTE byRes2[16]; }NET_DVR_SCREENALARMCFG, *LPNET_DVR_SCREENALARMCFG; typedef struct tagNET_DVR_MATRIX_CFG { BYTE byValid; BYTE byCommandProtocol; BYTE byScreenType; BYTE byRes1; BYTE byScreenToMatrix[32]; BYTE byRes2[4]; }NET_DVR_MATRIX_CFG, *LPNET_DVR_MATRIX_CFG; typedef struct tagNET_DVR_DIGITALSCREEN { NET_DVR_IPADDR struAddress; WORD wPort; BYTE byRes[26]; }NET_DVR_DIGITALSCREEN, *LPNET_DVR_DIGITALSCREEN; typedef struct tagNET_DVR_ANALOGSCREEN { BYTE byDevSerPortNum; BYTE byScreenSerPort; BYTE byRes[130]; NET_DVR_MATRIX_CFG struMatrixCfg; }NET_DVR_ANALOGSCREEN, *LPNET_DVR_ANALOGSCREEN; typedef union tagNET_DVR_SCREEN_UNION { NET_DVR_DIGITALSCREEN struDigitalScreen; NET_DVR_ANALOGSCREEN struAnalogScreen; }NET_DVR_SCREEN_UNION, *LPNET_DVR_SCREEN_UNION; typedef struct tagNET_DVR_SCREEN_SCREENINFO { DWORD dwSize; BYTE byValid; BYTE nLinkMode; BYTE byDeviceType; BYTE byScreenLayX; BYTE byScreenLayY; BYTE byRes1[3]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE sDevName[NAME_LEN]; NET_DVR_SCREEN_UNION struScreenUnion; BYTE byInputNum; BYTE byOutputNum; BYTE byCBDNum; BYTE byRes2[29]; } NET_DVR_SCREEN_SCREENINFO, *LPNET_DVR_SCREEN_SCREENINFO; typedef struct tagNET_DVR_BASEMAP_CFG { BYTE byScreenIndex; BYTE byMapNum; BYTE res[2]; WORD wSourWidth; WORD wSourHeight; }NET_DVR_BASEMAP_CFG, LPNET_DVR_BASEMAP_CFG; typedef struct tagNET_DVR_PICCFG { DWORD dwSize; BYTE byUseType; BYTE bySequence; BYTE byRes[2]; NET_DVR_BASEMAP_CFG struBasemapCfg; BYTE sPicName[NAME_LEN]; DWORD dwVideoWall; BYTE byRes2[28]; }NET_DVR_PICTURECFG, *LPNET_DVR_PICTURECFG; #define MAX_OSDCHAR_NUM 256 typedef struct tagNET_DVR_OSDCFG { DWORD dwSize; BYTE byValid; BYTE byDispMode; BYTE byFontColorY; BYTE byFontColorU; BYTE byFontColorV; BYTE byBackColorY; BYTE byBackColorU; BYTE byBackColorV; WORD wXCoordinate; WORD wYCoordinate; WORD wWidth; WORD wHeight; DWORD dwCharCnt; WORD wOSDChar[MAX_OSDCHAR_NUM]; BYTE byRes[32]; }NET_DVR_OSDCFG, *LPNET_DVR_OSDCFG; typedef struct tagNET_DVR_SERIAL_CONTROL { DWORD dwSize ; BYTE bySerialNum; BYTE byRes1[3]; BYTE bySerial[32]; BYTE byRes2[32]; }NET_DVR_SERIAL_CONTROL, *LPNET_DVR_SERIAL_CONTROL; typedef enum tagINPUT_INTERFACE_TYPE { INTERFACE_VGA = 0, INTERFACE_SVIDEO, INTERFACE_YPBPR, INTERFACE_DVI , INTERFACE_BNC , INTERFACE_DVI_LOOP, INTERFACE_BNC_LOOP, INTERFACE_HDMI, INTERFACE_IP, INTERFACE_USB, INTERFACE_SDI, INTERFACE_DP, INTERFACE_HDBASET }INPUT_INTERFACE_TYPE; typedef struct tagNET_DVR_INPUT_INTERFACE_CTRL { BYTE byInputSourceType; BYTE byRes[15]; }NET_DVR_INPUT_INTERFACE_CTRL, *LPNET_DVR_INPUT_INTERFACE_CTRL; typedef struct tagNET_DVR_DISPLAY_COLOR_CTRL { BYTE byColorType; char byScale; BYTE byRes[14]; }NET_DVR_DISPLAY_COLOR_CTRL, *LPNET_DVR_DISPLAY_COLOR_CTRL; typedef struct tagNET_DVR_DISPLAY_POSITION_CTRL { BYTE byPositionType; char byScale; BYTE byRes[14]; }NET_DVR_DISPLAY_POSITION_CTRL, *LPNET_DVR_DISPLAY_POSITION_CTRL; typedef struct tagNET_DVR_RECTCFG_EX { DWORD dwXCoordinate; DWORD dwYCoordinate; DWORD dwWidth; DWORD dwHeight; BYTE byRes[4]; }NET_DVR_RECTCFG_EX, *LPNET_DVR_RECTCFG_EX; #define MAX_PLAN_ACTION_NUM 32 #define DAYS_A_WEEK 7 #define MAX_PLAN_COUNT 16 typedef enum { NET_DVR_SWITCH_LAYOUT = 1, NET_DVR_SCREEN_POWER_OFF, NET_DVR_SCREEN_POWER_ON, NET_DVR_SWITCH_BASEMAP }NET_DVR_PLAN_OPERATE_TYPE; typedef struct tagNET_DVR_PLAN_INFO { BYTE byValid; BYTE byType; WORD wLayoutNo; BYTE byScreenStyle; BYTE byBaseMapType; BYTE byRes1[2]; DWORD dwDelayTime; DWORD dwSerialNo; DWORD dwBaseMapWndNo; DWORD dwBaseMapNo; BYTE byRes2[20]; } NET_DVR_PLAN_INFO, *LPNET_DVR_PLAN_INFO; typedef struct tagNET_DVR_CYCLE_TIME { BYTE byValid; BYTE byRes[3]; NET_DVR_TIME_EX struTime; }NET_DVR_CYCLE_TIME, *LPNET_DVR_CYCLE_TIME; typedef struct tagNET_DVR_PLAN_CFG { DWORD dwSize; BYTE byValid; BYTE byWorkMode; BYTE byWallNo; BYTE byPlanNo; BYTE byPlanName[NAME_LEN]; NET_DVR_TIME_EX struTime; NET_DVR_CYCLE_TIME struTimeCycle[DAYS_A_WEEK]; DWORD dwWorkCount; NET_DVR_PLAN_INFO strPlanEntry[MAX_PLAN_ACTION_NUM]; DWORD dwPlanNo; BYTE byRes2[60]; }NET_DVR_PLAN_CFG, *LPNET_DVR_PLAN_CFG; typedef struct tagNET_DVR_PLAN_LIST { DWORD dwSize; DWORD dwPlanNums; BYTE *pBuffer; BYTE byWallNo; BYTE byRes1[2]; DWORD dwBufLen; BYTE byRes2[64]; } NET_DVR_PLAN_LIST,*LPNET_DVR_PLAN_LIST; typedef struct tagNET_DVR_CONTROL_PARAM { DWORD dwSize; BYTE sDeviceID[NAME_LEN]; WORD wChan; BYTE byIndex; BYTE byRes1; DWORD dwControlParam; BYTE byMandatoryAlarm; BYTE byRes2; WORD wZoneIndex; BYTE byOperatorCode[16]; DWORD dwPlanNo; BYTE byRes3[8]; }NET_DVR_CONTROL_PARAM, *LPNET_DVR_CONTROL_PARAM; typedef struct tagNET_DVR_DEVICE_RUN_STATUS { DWORD dwSize; DWORD dwMemoryTotal; DWORD dwMemoryUsage; BYTE byCPUUsage; BYTE byMainFrameTemp; BYTE byBackPanelTemp; BYTE byRes1; BYTE byLeftDecResource[32]; float fNetworkFlow; BYTE byRes2[88]; }NET_DVR_DEVICE_RUN_STATUS, *LPNET_DVR_DEVICE_RUN_STATUS; typedef struct tagNET_DVR_ACCESS_CAMERA_INFO { DWORD dwSize; char sCameraInfo[32]; BYTE byInterfaceType; BYTE byRes1[3]; DWORD dwChannel; BYTE byRes[24]; }NET_DVR_ACCESS_CAMERA_INFO, *LPNET_DVR_ACCESS_CAMERA_INFO; typedef struct tagNET_DVR_AUDIO_INPUT_PARAM { BYTE byAudioInputType; BYTE byVolume; BYTE byEnableNoiseFilter; BYTE byres[5]; }NET_DVR_AUDIO_INPUT_PARAM, *LPNET_DVR_AUDIO_INPUT_PARAM; typedef struct tagNET_DVR_CAMERA_DEHAZE_CFG { DWORD dwSize; BYTE byDehazeMode; BYTE byLevel; BYTE byRes[6]; }NET_DVR_CAMERA_DEHAZE_CFG, *LPNET_DVR_CAMERA_DEHAZE_CFG; typedef struct tagNET_DVR_INPUT_SIGNAL_LIST { DWORD dwSize; DWORD dwInputSignalNums; BYTE *pBuffer; BYTE byRes1[3]; DWORD dwBufLen; BYTE byRes2[64]; } NET_DVR_INPUT_SIGNAL_LIST,*LPNET_DVR_INPUT_SIGNAL_LIST; #define PULL_DISK_SUCCESS 1 #define PULL_DISK_FAIL 2 #define PULL_DISK_PROCESSING 3 #define PULL_DISK_NO_ARRAY 4 #define PULL_DISK_NOT_SUPPORT 5 #define SCAN_RAID_SUC 1 #define SCAN_RAID_FAIL 2 #define SCAN_RAID_PROCESSING 3 #define SCAN_RAID_NOT_SUPPORT 4 #define SET_CAMERA_TYPE_SUCCESS 1 #define SET_CAMERA_TYPE_FAIL 2 #define SET_CAMERA_TYPE_PROCESSING 3 typedef struct tagNET_DVR_RECORD_TIME_SPAN_INQUIRY { DWORD dwSize; BYTE byType; BYTE byRes[63]; }NET_DVR_RECORD_TIME_SPAN_INQUIRY, *LPNET_DVR_RECORD_TIME_SPAN_INQUIRY; typedef struct tagNET_DVR_RECORD_TIME_SPAN { DWORD dwSize; NET_DVR_TIME strBeginTime; NET_DVR_TIME strEndTime; BYTE byType; BYTE byRes[35]; }NET_DVR_RECORD_TIME_SPAN, *LPNET_DVR_RECORD_TIME_SPAN; typedef struct tagNET_DVR_DRAWFRAME_DISK_QUOTA_CFG { DWORD dwSize; BYTE byPicQuota; BYTE byRecordQuota; BYTE byDrawFrameRecordQuota; BYTE byRes[61]; }NET_DVR_DRAWFRAME_DISK_QUOTA_CFG, *LPNET_DVR_DRAWFRAME_DISK_QUOTA_CFG; typedef struct tagNET_DVR_NAT_PORT { WORD wEnable; WORD wExtPort; BYTE byRes[12]; }NET_DVR_NAT_PORT, *LPNET_DVR_NAT_PORT; typedef struct tagNET_DVR_NAT_CFG { DWORD dwSize; WORD wEnableUpnp; WORD wEnableNat; NET_DVR_IPADDR struIpAddr; NET_DVR_NAT_PORT struHttpPort; NET_DVR_NAT_PORT struCmdPort; NET_DVR_NAT_PORT struRtspPort; BYTE byFriendName[64]; BYTE byNatType; BYTE byRes1[3]; NET_DVR_NAT_PORT struHttpsPort; NET_DVR_NAT_PORT struSDKOverTLSPort; BYTE byres[60]; }NET_DVR_NAT_CFG, *LPNET_DVR_NAT_CFG; typedef struct tagNET_DVR_UPNP_PORT_STATE { DWORD dwEnabled; WORD wInternalPort; WORD wExternalPort; DWORD dwStatus; NET_DVR_IPADDR struNatExternalIp; NET_DVR_IPADDR struNatInternalIp; BYTE byRes[16]; }NET_DVR_UPNP_PORT_STATE, *LPNET_DVR_UPNP_PORT_STATE; typedef struct tagNET_DVR_UPNP_NAT_STATE { NET_DVR_UPNP_PORT_STATE strUpnpPort[UPNP_PORT_NUM]; BYTE byRes[200]; }NET_DVR_UPNP_NAT_STATE, *LPNET_DVR_UPNP_NAT_STATE; typedef struct tagNET_DVR_PLAYCOND { DWORD dwChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byDrawFrame; BYTE byStreamType ; BYTE byStreamID[STREAM_ID_LEN]; BYTE byCourseFile; BYTE byDownload; BYTE byOptimalStreamType; BYTE byRes[27]; }NET_DVR_PLAYCOND, *LPNET_DVR_PLAYCOND; typedef struct tagNET_DVR_ATMFINDINFO { BYTE byTransactionType; BYTE byRes[3] ; DWORD dwTransationAmount ; } NET_DVR_ATMFINDINFO, *LPNET_DVR_ATMFINDINFO ; typedef union tagNET_DVR_SPECIAL_FINDINFO_UNION { BYTE byLenth[8] ; NET_DVR_ATMFINDINFO struATMFindInfo; }NET_DVR_SPECIAL_FINDINFO_UNION, *LPNET_DVR_SPECIAL_FINDINFO_UNION; typedef struct tagNET_DVR_FILECOND_V40 { LONG lChannel; DWORD dwFileType; DWORD dwIsLocked; DWORD dwUseCardNo; BYTE sCardNumber[CARDNUM_LEN_OUT]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byDrawFrame; BYTE byFindType; BYTE byQuickSearch; BYTE bySpecialFindInfoType ; DWORD dwVolumeNum; BYTE byWorkingDeviceGUID[GUID_LEN]; NET_DVR_SPECIAL_FINDINFO_UNION uSpecialFindInfo ; BYTE byStreamType; BYTE byAudioFile; BYTE byRes2[30]; }NET_DVR_FILECOND_V40, *LPNET_DVR_FILECOND_V40; typedef struct tagNET_DVR_FILECOND_V50 { NET_DVR_STREAM_INFO struStreamID; NET_DVR_TIME_SEARCH_COND struStartTime; NET_DVR_TIME_SEARCH_COND struStopTime; BYTE byFindType; BYTE byDrawFrame; BYTE byQuickSearch; BYTE byStreamType; DWORD dwFileType; DWORD dwVolumeNum; BYTE byIsLocked; BYTE byNeedCard; BYTE byOnlyAudioFile; BYTE bySpecialFindInfoType; char szCardNum[32]; char szWorkingDeviceGUID[16]; NET_DVR_SPECIAL_FINDINFO_UNION uSpecialFindInfo; BYTE byRes[256]; }NET_DVR_FILECOND_V50, *LPNET_DVR_FILECOND_V50; typedef struct tagNET_DVR_AES_KEY_INFO { BYTE sAESKey[16]; BYTE byRes[64]; }NET_DVR_AES_KEY_INFO, *LPNET_DVR_AES_KEY_INFO; typedef struct tagNET_DVR_POE_CFG { NET_DVR_IPADDR struIP; BYTE byRes[128]; }NET_DVR_POE_CFG, *LPNET_DVR_POE_CFG; #define MAX_PRO_PATH 256 typedef struct tagNET_DVR_CUSTOM_PROTOCAL { DWORD dwSize; DWORD dwEnabled; char sProtocalName[DESC_LEN]; BYTE byRes1[64]; DWORD dwEnableSubStream; BYTE byMainProType; BYTE byMainTransType; WORD wMainPort; char sMainPath[MAX_PRO_PATH]; BYTE bySubProType; BYTE bySubTransType; WORD wSubPort; char sSubPath[MAX_PRO_PATH]; BYTE byRes2[200]; }NET_DVR_CUSTOM_PROTOCAL, *LPNET_DVR_CUSTOM_PROTOCAL; typedef struct tagNET_DVR_MATRIX_CHAN_INFO_EX { DWORD dwEnable; BYTE byType; BYTE byRes[3]; NET_DVR_STREAM_MEDIA_SERVER_CFG streamMediaServerCfg; NET_DVR_DEV_CHAN_INFO struDevChanInfo; BYTE sRtspUrl[128]; }NET_DVR_MATRIX_CHAN_INFO_EX,*LPNET_DVR_MATRIX_CHAN_INFO_EX; typedef struct tagNET_DVR_MATRIX_LOOP_DECINFO_EX { DWORD dwSize; DWORD dwPoolTime; NET_DVR_MATRIX_CHAN_INFO_EX struchanConInfo[MAX_CYCLE_CHAN_V30]; BYTE byRes[16]; }NET_DVR_MATRIX_LOOP_DECINFO_EX,*LPNET_DVR_MATRIX_LOOP_DECINFO_EX; typedef struct tagNET_DVR_PU_STREAM_CFG_EX { DWORD dwSize; BYTE byType; BYTE byRes[3]; NET_DVR_STREAM_MEDIA_SERVER_CFG struStreamMediaSvrCfg; NET_DVR_DEV_CHAN_INFO struDevChanInfo; BYTE sRtspUrl[128]; }NET_DVR_PU_STREAM_CFG_EX,*LPNET_DVR_PU_STREAM_CFG_EX; typedef struct tagNET_DVR_MATRIX_TRUNKCFG { DWORD dwGlobalIndex; DWORD dwInterIndex; BYTE sTrunkName[NAME_LEN]; BYTE byType; BYTE byDir; BYTE byAbility; BYTE bySubsys; BYTE byChan; BYTE byRes[255]; } NET_DVR_MATRIX_TRUNKCFG,*LPNET_DVR_MATRIX_TRUNKCFG; typedef struct tagNET_DVR_DECSUBSYSTEMJIONSTATUS_V41 { BYTE byJoinStatus; BYTE byJoinSubSystem; BYTE byJoinDispNum; BYTE byJoinSubWindowNum; BYTE byDecodeAbility; BYTE byRes[15]; }NET_DVR_DECSUBSYSTEMJIONSTATUS_V41,LPNET_DVR_DECSUBSYSTEMJIONSTATUS_V41; typedef struct tagNET_DVR_SINGLESUBSYSTEMJOININFO_V41 { BYTE bySubSystemType; BYTE byConnectStatus; BYTE byMatrixNum; BYTE bySubSystemNum; NET_DVR_DECSUBSYSTEMJIONSTATUS_V41 struSubSystem[MAX_DECODECHANNUM]; BYTE byBindStatus; BYTE bySlotNum ; BYTE byUsedTrunk; BYTE byRes[65]; }NET_DVR_SINGLESUBSYSTEMJOININFO_V41,LPNET_DVR_SINGLESUBSYSTEMJOININFO_V41; typedef struct tagNET_DVR_ALLDECSUBSYSTEMJOININFO_V41 { DWORD dwSize; NET_DVR_SINGLESUBSYSTEMJOININFO_V41 struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM_V40]; BYTE byRes[48]; }NET_DVR_ALLDECSUBSYSTEMJOININFO_V41,*LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V41; #define MAX_ALARMHOSTKEYBOARD 64 typedef struct tagNET_DVR_PUBLIC_SUB_SYSTEM { DWORD dwJointSubSystem; BYTE byRes[16]; }NET_DVR_PUBLIC_SUB_SYSTEM, *LPNET_DVR_PUBLIC_SUB_SYSTEM; typedef struct tagNET_DVR_NOAMAL_SUB_SYSTEM { DWORD dwBeJoinedSubSystem; BYTE byRes[16]; }NET_DVR_NOAMAL_SUB_SYSTEM, *LPNET_DVR_NOAMAL_SUB_SYSTEM; typedef union tagNET_DVR_JOINT_SUB_SYSTEM { NET_DVR_NOAMAL_SUB_SYSTEM struNormalSubSystem; NET_DVR_PUBLIC_SUB_SYSTEM struPublicSubSystem; BYTE byRes[20]; }NET_DVR_JOINT_SUB_SYSTEM,*LPNET_DVR_JOINT_SUB_SYSTEM; #define MAX_SUBSYSTEM_ID_LEN 16 #define ACCOUNTNUM_LEN 6 #define ACCOUNTNUM_LEN_32 32 #define ACCOUNTNUM_LEN_V40 9 #define APN_NAME_LEN 32 #define APN_USERNAME_LEN 24 #define APN_USERPASSWORD_LEN 16 typedef struct tagNET_DVR_ALARMSUBSYSTEMPARAM { DWORD dwSize; WORD wEnterDelay; WORD wExitDelay; BYTE byHostageReport; BYTE bySubsystemEnable; BYTE byKeyToneOfArmOrDisarm; BYTE byKeyToneOfManualTestReport; WORD wDelayTime; BYTE byEnableAlarmInDelay; BYTE byPublicAttributeEnable; NET_DVR_JOINT_SUB_SYSTEM struJointSubSystem; BYTE byKeyZoneArm; BYTE byKeyZoneArmReport; BYTE byKeyZoneDisarm; BYTE byKeyZoneDisarmReport; BYTE bySubSystemID[MAX_SUBSYSTEM_ID_LEN]; BYTE byKeyZoneArmReportEnable; BYTE byKeyZoneArmEnable; BYTE byOneKeySetupAlarmEnable; BYTE bySingleZoneSetupAlarmEnable; BYTE byCenterType; BYTE sCenterAccount[ACCOUNTNUM_LEN]; BYTE sCenterAccountV40[ACCOUNTNUM_LEN_32]; BYTE byRes2[565]; }NET_DVR_ALARMSUBSYSTEMPARAM, *LPNET_DVR_ALARMSUBSYSTEMPARAM; typedef struct tagNET_DVR_REMIND_TIME { BYTE byEnable; BYTE byHour; BYTE byMinute; BYTE bySecond; }NET_DVR_REMIND_TIME,*LPNET_DVR_REMIND_TIME; #define MAX_KEYBOARD_USER_NUM 256 typedef struct tagNET_DVR_SUBSYSTEM_PARAM_EX { DWORD dwSize; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byAlarmInAdvance; BYTE byRes1[3]; BYTE byJointAlarmIn[MAX_ALARMHOST_ALARMIN_NUM / 8]; BYTE byJointKeyboard[MAX_ALARMHOSTKEYBOARD / 8]; BYTE byJointOpetaterUser[MAX_KEYBOARD_USER_NUM/8]; NET_DVR_REMIND_TIME struAlarmRemindTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes2[288]; }NET_DVR_SUBSYSTEM_PARAM_EX, *LPNET_DVR_SUBSYSTEM_PARAM_EX; typedef struct tagNET_DVR_ALARMHOST_PRINTER_CFG { DWORD dwSize; BYTE byPrinterEnable; BYTE byPrintTime; BYTE byFaultDetect; BYTE byRes1; DWORD dwAlarmInfo; DWORD dwDeviceInfo; DWORD dwOperateInfo; BYTE byRes2[256]; }NET_DVR_ALARMHOST_PRINTER_CFG, *LPNET_DVR_ALARMHOST_PRINTER_CFG; typedef struct tagNET_DVR_ALARMHOST_NETPARAM { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wPort; BYTE byAddressType; BYTE byRes1[1]; BYTE byDomainName[MAX_DOMAIN_NAME]; BYTE byReportProtocol; BYTE byDevID[ACCOUNTNUM_LEN_32]; BYTE byRes2[7]; }NET_DVR_ALARMHOST_NETPARAM, *LPNET_DVR_ALARMHOST_NETPARAM; typedef struct tagNET_DVR_REGISTER_RS485CFG { DWORD dwSize; WORD wDeviceProtocol; BYTE byRes[2]; DWORD dwBaudRate; BYTE byRes1[124]; }NET_DVR_REGISTER_RS485CFG, *LPNET_DVR_REGISTER_RS485CFG; typedef struct tagNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG { DWORD dwSize; NET_DVR_ALARMHOST_NETPARAM struNetCenter[MAX_CENTERNUM]; BYTE byAPNName[APN_NAME_LEN]; BYTE byAPNUserName[APN_USERNAME_LEN]; BYTE byAPNPassWord[APN_USERPASSWORD_LEN]; BYTE byReconnTime; BYTE byOverTime; BYTE byDetectLinkTime; BYTE byRes1; BYTE bySIMNum[NAME_LEN]; NET_DVR_IPADDR struSIMIP; BYTE byRes2[64]; }NET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG, *LPNET_DVR_ALARMHOST_WIRELESS_NETWORK_CFG; typedef struct tagNET_DVR_ALARMHOST_NETCFG { DWORD dwSize; NET_DVR_ALARMHOST_NETPARAM struNetCenter[MAX_CENTERNUM]; BYTE byRes1[32]; }NET_DVR_ALARMHOST_NETCFG, *LPNET_DVR_ALARMHOST_NETCFG; #define MAX_REPORTCHAN_NUM 4 #define MAX_CENTERGROUP_NUM 16 typedef struct tagNET_DVR_ALARMHOST_REPORTCENTER_CFG { DWORD dwSize; BYTE byValid; BYTE byRes[3]; BYTE byChanAlarmMode[MAX_REPORTCHAN_NUM]; BYTE byDealFailCenter[MAX_CENTERGROUP_NUM]; BYTE byDataType; BYTE byRes2[15]; }NET_DVR_ALARMHOST_REPORTCENTER_CFG, *LPNET_DVR_ALARMHOST_REPORTCENTER_CFG; #define MAX_EVENT_NUM 32 typedef struct tagNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40 { DWORD dwSize; BYTE byValid; BYTE byDataType; BYTE byRes[2]; BYTE byChanAlarmMode[MAX_REPORTCHAN_NUM]; BYTE byDealFailCenter[MAX_CENTERGROUP_NUM]; BYTE byZoneReport[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byNonZoneReport[MAX_EVENT_NUM]; BYTE byAlarmNetCard[MAX_REPORTCHAN_NUM]; BYTE byRes2[252]; }NET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40, *LPNET_DVR_ALARMHOST_REPORT_CENTER_CFG_V40; typedef struct tagNET_DVR_ALARMHOST_SAFETYCABINSTATE { DWORD dwSize; BYTE byEnterButton; BYTE byExitButton; BYTE byDoorState; BYTE byLockState; BYTE byUrgencyButton; BYTE byManState; BYTE byAbnormal; BYTE byLightState; BYTE byFanState; BYTE byFollow; BYTE byFighting; BYTE byFaint; BYTE byManyPerson; BYTE byRes[59]; }NET_DVR_ALARMHOST_SAFETYCABINSTATE,*LPNET_DVR_ALARMHOST_SAFETYCABINSTATE; typedef struct tagNET_DVR_ALARMHOST_ALARMOUTSTATUS { DWORD dwSize; BYTE byName[32]; BYTE byAlarmType; WORD wChan; BYTE byAlarmStatus; BYTE byRes[32]; }NET_DVR_ALARMHOST_ALARMOUTSTATUS,*LPNET_DVR_ALARMHOST_ALARMOUTSTATUS; typedef struct tagNET_DVR_AUDIO_PARAM { DWORD dwSize; BYTE byAudioFormat; BYTE byRes1; WORD wChannels; DWORD dwSamplesPerSec; BYTE byRes2[20]; DWORD dwAudioSize; }NET_DVR_AUDIO_PARAM,*LPNET_DVR_AUDIO_PARAM; typedef struct tagNET_DVR_PREVIEWINFO { LONG lChannel; DWORD dwStreamType; DWORD dwLinkMode; HWND hPlayWnd; DWORD bBlocked; DWORD bPassbackRecord; BYTE byPreviewMode; BYTE byStreamID[STREAM_ID_LEN]; BYTE byProtoType; BYTE byRes1; BYTE byVideoCodingType; DWORD dwDisplayBufNum; BYTE byNPQMode; BYTE byRes[215]; }NET_DVR_PREVIEWINFO, *LPNET_DVR_PREVIEWINFO; typedef struct tagNET_DVR_PREVIEWINFO_SPECIAL { char sURL[1024]; DWORD dwLinkMode; HWND hPlayWnd; DWORD bBlocked; DWORD dwDisplayBufNum; BYTE byRes[64]; }NET_DVR_PREVIEWINFO_SPECIAL, *LPNET_DVR_PREVIEWINFO_SPECIAL; typedef struct tagNET_DVR_TRIGGER_EVENT { DWORD dwSize; DWORD dwOverallEventTriggerAlarmoutOn; DWORD dwOverallEventTriggerAlarmoutOff; DWORD dwSubSystemEventTriggerAlarmoutOn[MAX_ALARMHOST_SUBSYSTEM]; DWORD dwSubSystemEventTriggerAlarmoutOff[MAX_ALARMHOST_SUBSYSTEM]; BYTE byRes[128]; }NET_DVR_TRIGGER_EVENT, *LPNET_DVR_TRIGGER_EVENT; typedef struct tagNET_DVR_ALARMHOST_FAULT_CFG { DWORD dwSize; DWORD dwCheckFault; DWORD dwOverallFaultJointLED; DWORD dwOverallFaultJointSound; DWORD dwSubSystemFaultJointLED[MAX_ALARMHOST_SUBSYSTEM]; DWORD dwSubSystemFaultJointSound[MAX_ALARMHOST_SUBSYSTEM]; DWORD dwFaultJointFaultLight; BYTE byRes[60]; }NET_DVR_ALARMHOST_FAULT_CFG, *LPNET_DVR_ALARMHOST_FAULT_CFG; typedef struct tagNET_DVR_LIST_INFO { DWORD dwSize; BYTE byIndex; BYTE byRes[63]; }NET_DVR_LIST_INFO, *LPNET_DVR_LIST_INFO; #define CID_CODE_LEN 4 #define DEV_SERIAL_LEN 9 typedef enum tagNET_DVR_ALARMHOST_REPORT_TYPE { NET_DVR_DEFENCE_ALARM = 1, NET_DVR_VIDEO_ALARM, NET_DVR_VIRTUAL_DEFENCE_ALARM, NET_DVR_HOSTAGE_ALARM, NET_DVR_KNOCK_DOWN_ALARM, NET_DVR_OPERATE_ALARM, NET_DVR_OHTER_ABNORMAL_ALARM }NET_DVR_ALARMHOST_REPORT_TYPE; typedef enum tagNET_DVR_ALARMHOST_CID_MAIN_TYPE { CID_ENTER = 1000, CID_EXIT = 3000 }NET_DVR_ALARMHOST_CID_MAIN_TYPE; typedef enum tagNET_DVR_ALARMHOST_CID_MINOR_TYPE { CID_ALARM = 103, CID_FIRE_ALARM = 110, CID_ABDUCT_REPORT = 121, CID_SILENT_24 = 122, CID_AUDIO_24 = 123, CID_AUXILIARY_24 = 124, CID_SHOCK_24 = 125, CID_EMERGENCE_CALL_HELP = 129, CID_PERIMETER_ALARM = 131, CID_INNET_ALARM = 132, CID_ENTER_EXIT = 134, CID_DEVICE_OPEN = 137, CID_ZONE_BUS_BREAK = 141, CID_ZONE_BUS_SHORT = 142, CID_AC_LOSS = 301, CID_LOW_BATT_VOL = 302, CID_DEV_RESET = 305, CID_MBUS_MODEL_FAULT = 333, CID_PRINTER_FAIL = 336, CID_LINE_LOSS = 354, CID_BUS_LOSS = 382, CID_DETECTOR_OPEN = 383, CID_GUARD = 401, CID_GUARD_AUTO = 403, CID_CANCEL_ARM = 406, CID_GUARD_IMME = 408, CID_KEY_ZONE_GUARD = 409, CID_GUARD_STAY = 441, CID_FORCED_ARM = 442, CID_AUTOCTRL_TRIG = 443, CID_ONETOUCH_AWAY_ARMING = 444, CID_ONETOUCH_STAY_ARMING = 445, CID_CARD_ARMING_OR_DISARMING = 446, CID_AUTOGUARD_FAIL = 455, CID_AOPEN_TRIG_FAIL = 460, CID_ACLOSE_TRIG_FAIL = 461, CID_AUTOUNGUARD_FAIL = 462, CID_BYPASS = 570, CID_GROUP_BYPASS = 574, CID_MANUAL_TEST_RPT = 601, CID_AUTO_TEST_RPT = 602, CID_ENTER_PROG = 627, CID_EXIT_PROG = 628, CID_SOFT_INSTAND = 810, CID_SOFT_FIRE = 811, CID_SOFT_MOBS = 812, CID_KEY_FAIL = 910, CID_TRIGGER_FAIL = 911, CID_GPK_FAIL = 912, CID_MODULE_FAIL = 913, CID_WIRELESS_DETECTOR_FAIL = 914, CID_WIRELESS_DETECTOR_BATTERY_LOW = 915, CID_WRIE_LESS_NET = 920, CID_SIM_FAULT = 921, CID_DATE_TRAFFIC_OVERFLOW = 924, CID_WIFI_ABNORMAL = 922, CID_RF_ABNORMAL = 923, CID_IPADDR_CONFLICT = 930, CID_ETHERNET_BROKEN = 931, CID_GROUP_OUT_RP = 932, CID_GROUP_IN_RP = 933, CID_MOTION_DECTECT = 940, CID_MASK_ALARM = 941, CID_VI_LOST = 942, CID_VS_MISMATCH = 943, CID_VI_EXCEPTION = 944, CID_HD_FULL = 945, CID_HD_ERROR = 946, CID_PIC_SEND_FAILED = 947, CID_KEY_LOCKED = 948, CID_ZONE_BUS_SEARCH = 970, CID_ZONE_BUS_REGIST = 971, CID_GUARD_DELAY_OP = 972, CID_GUARD_SINGLE = 973, CID_ZONE_ASSOCIATED_DETECTOR = 975, CID_ZONE_CONSULTING = 976, }NET_DVR_ALARMHOST_CID_MINOR_TYPE; typedef enum tagNET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE { CID_TYPE_ALARM = 1103, CID_TYPE_ALARM_RESET = 3103, CID_TYPE_FIRE_ALARM = 1110, CID_TYPE_FIRE_ALARM_RESET = 3110, CID_TYPE_ABDUCT_REPORT = 1121, CID_TYPE_SILENT_24 = 1122, CID_TYPE_SILENT_24_RESET = 3122, CID_TYPE_AUDIO_24 = 1123, CID_TYPE_AUDIO_24_RESET = 3123, CID_TYPE_AUXILIARY_24 = 1124, CID_TYPE_AUXILIARY_24_RESET = 3124, CID_TYPE_SHOCK_24 = 1125, CID_TYPE_SHOCK_24_RESET = 3125, CID_TYPE_TIMEOUT = 1126, CID_TYPE_TIMEOUT_RESET = 3126, CID_TYPE_EMERGENCE_CALL_HELP = 1129, CID_TYPE_EMERGENCE_CALL_HELP_RESET = 3129, CID_TYPE_PERIMETER_ALARM = 1131, CID_TYPE_PERIMETER_ALARM_RESET = 3131, CID_TYPE_INNET_ALARM = 1132, CID_TYPE_INNET_ALARM_RESET = 3132, CID_TYPE_ENTER_EXIT = 1134, CID_TYPE_ENTER_EXIT_RESET = 3134, CID_TYPE_DEVICE_OPEN = 1137, CID_TYPE_DEVICE_OPEN_RESET = 3137, CID_TYPE_ZONE_BUS_BREAK = 1141, CID_TYPE_ZONE_BUS_BREAK_RESET = 3141, CID_TYPE_ZONE_BUS_SHORT = 1142, CID_TYPE_ZONE_BUS_SHORT_RESET = 3142, CID_TYPE_AC_LOSS = 1301, CID_TYPE_AC_LOSS_RESET = 3301, CID_TYPE_LOW_BATT_VOL = 1302, CID_TYPE_LOW_BATT_VOL_NORMAL = 3302, CID_TYPE_DEV_RESET = 1305, CID_TYPE_MBUS_MODEL_FAULT = 1333, CID_TYPE_MBUS_MODEL_RESET = 3333, CID_TYPE_PRINTER_OFF = 1336, CID_TYPE_PRINTER_ON = 3336, CID_TYPE_EXTEND_MODULE_VOL_LOW = 1338, CID_TYPE_EXTEND_MODULE_VOL_NORMAL = 3338, CID_TYPE_EXTEND_MODULE_REMOVE = 1341, CID_TYPE_EXTEND_MODULE_RECOVER = 3341, CID_TYPE_EXTEND_MODULE_AC_LOSS = 1342, CID_TYPE_EXTEND_MODULE_AC_LOSS_RESET = 3342, CID_TYPE_WIRELESS_REPEATER_TAMPER = 1343, CID_TYPE_WIRELESS_REPEATER_RESTORE = 3343, CID_TYPE_WIRELESS_SIREN_TAMPER = 1344, CID_TYPE_WIRELESS_SIREN_RESTORE = 3344, CID_TYPE_WIRELESS_SIREN_DISCONNECT = 1345, CID_TYPE_WIRELESS_SIREN_CONNECT = 3345, CID_TYPE_LINE_LOSS = 1354, CID_TYPE_LINE_LOSS_RESET = 3354, CID_TYPE_BUS_LOSS = 1382, CID_TYPE_BUS_LOSS_RESET = 3382, CID_TYPE_SENSOR_TAMPER = 1383, CID_TYPE_SENSOR_TAMPER_RESET = 3383, CID_TYPE_DISARM = 1401, CID_TYPE_ARM = 3401, CID_TYPE_DISARM_AUTO = 1403, CID_TYPE_ARM_AUTO = 3403, CID_TYPE_CANCEL_ARM = 1406, CID_TYPE_ARM_IMME = 3408, CID_TYPE_KEY_ZONE_ARM = 1409, CID_TYPE_KEY_ZONE_DISARM = 3409, CID_TYPE_GUARD_STAY = 3441, CID_TYPE_FORCED_ARM = 3442, CID_TYPE_AUTOCTRL_TRIG_ON = 1443, CID_TYPE_AUTOCTRL_TRIG_OFF = 3443, CID_TYPE_AUTOGUARD_FAIL = 1455, CID_TYPE_AOPEN_TRIG_FAIL = 1460, CID_TYPE_ACLOSE_TRIG_FAIL = 1461, CID_TYPE_AUTOUNGUARD_FAIL = 1462, CID_TYPE_BYPASS = 1570, CID_TYPE_BYPASS_RESET = 3570, CID_TYPE_GROUP_BYPASS = 1574, CID_TYPE_GROUP_BYPASS_RESET = 3574, CID_TYPE_MANUAL_TEST_RPT = 1601, CID_TYPE_AUTO_TEST_RPT = 1602, CID_TYPE_LINE_TEST = 1617, CID_TYPE_ENTER_PROG = 1627, CID_TYPE_EXIT_PROG = 1628, CID_TYPE_SOFT_INSTAND = 1810, CID_TYPE_SOFT_FIRE = 1811, CID_TYPE_SOFT_MOBS = 1812, CID_TYPE_KEYPAD_LOCK = 1862, CID_TYPE_KEYPAD_UNLOCK = 3862, CID_TYPE_KEY_FAIL = 1910, CID_TYPE_KEY_RESET = 3910, CID_TYPE_TRIGGER_FAIL = 1911, CID_TYPE_TRIGGER_RESET = 3911, CID_TYPE_GPK_FAIL = 1912, CID_TYPE_GPK_RESET = 3912, CID_TYPE_MODULE_FAIL = 1913, CID_TYPE_MODULE_RESET = 3913, CID_TYPE_WIRELESS_DETECTOR_FAIL = 1914, CID_TYPE_WIRELESS_DETECTOR_RESET = 3914, CID_TYPE_WIRELESS_DETECTOR_BATTERY_LOW = 1915, CID_TYPE_WIRELESS_DETECTOR_BATTERY_NORMAL = 3915, CID_TYPE_EXTEND_MODULE_LOSS = 1916, CID_TYPE_EXTEND_MODULE_LOSS_RESET = 3916, CID_TYPE_WIRELESS_REPEATER_DISCONNECT = 1917, CID_TYPE_WIRELESS_REPEATER_CONNECT = 3917, CID_TYPE_WRIELESS_NET_FAULT = 1920, CID_TYPE_WRIELESS_NET_RESET = 3920, CID_TYPE_SIM_FAULT = 1921, CID_TYPE_SIM_RESET = 3921, CID_TYPE_WIFI_ABNORMAL = 1922, CID_TYPE_WIFI_NORMAL = 3922, CID_TYPE_RF_ABNORMAL = 1923, CID_TYPE_RF_NORMAL = 3923, CID_TYPE_DATE_TRAFFIC_OVERFLOW = 1924, CID_TYPE_IPADDR_CONFLICT = 1930, CID_TYPE_IPADDR_NORMAL = 3930, CID_TYPE_ETHERNET_BROKEN = 1931, CID_TYPE_ETHERNET_NORMAL = 3931, CID_TYPE_MOTION_DECTECT_START = 1940, CID_TYPE_MOTION_DECTECT_STOP = 3940, CID_TYPE_MASK_ALARM_START = 1941, CID_TYPE_MASK_ALARM_STOP = 3941, CID_TYPE_VI_LOST_START = 1942, CID_TYPE_VI_LOST_STOP = 3942, CID_TYPE_VS_MISMATCH = 1943, CID_TYPE_VS_MATCH = 3943, CID_TYPE_VI_EXCEPTION = 1944, CID_TYPE_VI_NORMAL = 3944, CID_TYPE_HD_FULL = 1945, CID_TYPE_HD_FREE = 3945, CID_TYPE_HD_ERROR = 1946, CID_TYPE_HD_RESET = 3946, CID_TYPE_PIC_SEND_FAILED = 1947, CID_TYPE_ZONE_BUS_SEARCH = 1970, CID_TYPE_ZONE_BUS_REGIST = 1971, CID_TYPE_GUARD_SINGLE_ARM = 1973, CID_TYPE_GUARD_SINGLE_DISARM = 3973, CID_TYPE_ZONE_ASSOCIATED_DETECTOR_DEL = 1975, CID_TYPE_ZONE_ASSOCIATED_DETECTOR_ADD = 3975, CID_TYPE_ZONE_CONSULT = 1976, CID_TYPE_ZONE_CONSULT_STOP = 3976, CID_TYPE_EXTEND_MODULE_DEL = 1977, CID_TYPE_EXTEND_MODULE_ADD = 3977, CID_TYPE_WIRELESS_REPEATER_DEL = 1978, CID_TYPE_WIRELESS_REPEATER_ADD = 3978, CID_TYPE_WIRELESS_SIREN_DEL = 1979, CID_TYPE_WIRELESS_SIREN_ADD = 3979 }NET_DVR_ALARMHOST_CID_ALL_MINOR_TYPE; typedef struct tagNET_DVR_CID_ALARM { DWORD dwSize; BYTE sCIDCode[CID_CODE_LEN]; BYTE sCIDDescribe[NAME_LEN]; NET_DVR_TIME_EX struTriggerTime; NET_DVR_TIME_EX struUploadTime; BYTE sCenterAccount[ACCOUNTNUM_LEN]; BYTE byReportType; BYTE byUserType; BYTE sUserName[NAME_LEN]; WORD wKeyUserNo; BYTE byKeypadNo; BYTE bySubSysNo; WORD wDefenceNo; BYTE byVideoChanNo; BYTE byDiskNo; WORD wModuleAddr; BYTE byCenterType; BYTE byRes1; BYTE sCenterAccountV40[ACCOUNTNUM_LEN_32]; BYTE byDevSerialNo[DEV_SERIAL_LEN]; BYTE byRes2[19]; }NET_DVR_CID_ALARM, *LPNET_DVR_CID_ALARM; #define MODULE_INFO_LEN 32 #define VERSION_INFO_LEN 32 typedef struct tagNET_DVR_ALARMHOST_MODULE_CFG { DWORD dwSize; BYTE byModuleType; BYTE byZoneType; BYTE byTriggerType; BYTE byRes1[1]; char sModelInfo[MODULE_INFO_LEN]; char sDeviceVersionInfo[VERSION_INFO_LEN]; BYTE byRes[188]; } NET_DVR_ALARMHOST_MODULE_CFG, *LPNET_DVR_ALARMHOST_MODULE_CFG; #define MAX_DECODE_CARD_SUPPORTDISPNUMS 8 #define MAX_SUPPORT_RES 32 typedef struct tagNET_DVR_DECCARD_ABILITY_V41 { BYTE byCardType; BYTE byDecNums; BYTE byDispNums; BYTE byDecStartIdx; BYTE byDispStartIdx; BYTE byRes1[3]; DWORD dwVgaSupportResolution[MAX_SUPPORT_RES]; DWORD dwHdmiSupportResolution[MAX_SUPPORT_RES]; DWORD dwDviSupportResolution[MAX_SUPPORT_RES]; DWORD dwYpbprSupportResolution[MAX_SUPPORT_RES]; BYTE byDispFormat[MAX_DECODE_CARD_SUPPORTDISPNUMS]; BYTE byWindowMode[MAX_DECODE_CARD_SUPPORTDISPNUMS][12]; BYTE byRes2[36]; } NET_DVR_DECCARD_ABILITY_V41,*LPNET_DVR_DECCARD_ABILITY_V41; #define MAX_DECODE_CARD_NUM 6 typedef struct tagNET_DVR_DECODESVR_ABILITY_V41 { DWORD dwSize; BYTE byCardNums; BYTE byStartChan; BYTE byRes1[2]; NET_DVR_DECCARD_ABILITY_V41 struDecCardAbility[MAX_DECODE_CARD_NUM]; BYTE byRes2[64]; }NET_DVR_DECODESVR_ABILITY_V41, *LPNET_DVR_DECODESVR_ABILITY_V41; typedef struct tagNET_DVR_STREAM_RECORD_STATUS { DWORD dwSize; BYTE byRecord; BYTE byOffLineRecord; BYTE byRes1[2]; DWORD dwRelatedHD; BYTE byRes2[8]; }NET_DVR_STREAM_RECORD_STATUS, *LPNET_DVR_STREAM_RECORD_STATUS; #define CHAN_NO_LEN 24 typedef struct tagNET_DVR_DIRECT_CONNECT_CHAN_INFO { BYTE byEnable; BYTE byProType; BYTE byZeroChan; BYTE byPriority; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byDomain[MAX_DOMAIN_NAME]; NET_DVR_IPADDR struIP; WORD wDVRPort; BYTE byStreamType; BYTE byOnline; DWORD dwChannel; BYTE byTransProtocol; BYTE byLocalBackUp; WORD wDirectLastTime; BYTE byChanNo[CHAN_NO_LEN]; }NET_DVR_DIRECT_CONNECT_CHAN_INFO, *LPNET_DVR_DIRECT_CONNECT_CHAN_INFO; typedef struct tagNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 { BYTE byEnable; BYTE byProType; BYTE byZeroChan; BYTE byRes1; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byAddress[MAX_DOMAIN_NAME]; WORD wDVRPort; BYTE byStreamType; BYTE byOnline; DWORD dwChannel; BYTE byTransProtocol; BYTE byLocalBackUp; BYTE byRes2[2]; BYTE byVAGChanNo[MAX_VAG_CHANNO_LEN]; BYTE byRes[340]; }NET_DVR_DIRECT_CONNECT_CHAN_INFO_V40, *LPNET_DVR_DIRECT_CONNECT_CHAN_INFO_V40; typedef struct tagNET_DVR_PU_STREAM_URL_CFG { BYTE byEnable; BYTE byRes[3]; BYTE byStreamMediaIP[64]; WORD wStreamMediaPort; BYTE byTransmitType; BYTE byRes1[33]; BYTE byDevIP[64]; WORD wDevPort; BYTE byChannel; BYTE byTransMode; BYTE byProType; BYTE byTransProtocol; BYTE byRes3[2]; BYTE sUserName[NAME_LEN]; BYTE sPassWord[PASSWD_LEN]; BYTE byRes2[28]; }NET_DVR_PU_STREAM_URL_CFG, *LPNET_DVR_PU_STREAM_URL_CFG; typedef struct tagNET_DVR_PU_STREAM_URL_CFG_V40 { BYTE byEnable; BYTE byRes[3]; BYTE byStreamMediaIP[64]; WORD wStreamMediaPort; BYTE byTransmitType; BYTE byRes1; BYTE byDevIP[64]; WORD wDevPort; BYTE byChannel; BYTE byTransMode; BYTE byProType; BYTE byTransProtocol; BYTE byRes3[2]; BYTE sUserName[NAME_LEN]; BYTE sPassWord[PASSWD_LEN]; BYTE byRes2[308]; }NET_DVR_PU_STREAM_URL_CFG_V40, *LPNET_DVR_PU_STREAM_URL_CFG_V40; typedef struct tagNET_DVR_STREAM_URL_V40 { BYTE byEnable; BYTE byStreamType; BYTE byLocalBackUp; BYTE byRes; BYTE strURL[URL_LEN_V40]; DWORD dwProtocalType; BYTE sUserName[NAME_LEN]; BYTE sPassWord[PASSWD_LEN]; BYTE byAddress[MAX_DOMAIN_NAME]; WORD wIPPort; WORD wChanNo; BYTE byVAGChanNo[MAX_VAG_CHANNO_LEN]; BYTE byRes1[88]; }NET_DVR_STREAM_URL_V40, *LPNET_DVR_STREAM_URL_V40; typedef union tagNET_DVR_STREAM_TYPE_UNION { NET_DVR_DIRECT_CONNECT_CHAN_INFO struChanInfo; NET_DVR_PU_STREAM_URL struStreamUrl; NET_DVR_PU_STREAM_URL_CFG struStreamUrlCfg; }NET_DVR_STREAM_TYPE_UNION, *LPNET_DVR_STREAM_TYPE_UNION; typedef union tagNET_DVR_STREAM_TYPE_V40_UNION { NET_DVR_DIRECT_CONNECT_CHAN_INFO_V40 struChanInfo; NET_DVR_PU_STREAM_URL struPuStreamUrl; NET_DVR_PU_STREAM_URL_CFG_V40 struStreamUrlCfg; NET_DVR_RTSP_PROTOCAL_CFG struRtspCfg; NET_DVR_STREAM_URL_V40 struStreamUrlV40; }NET_DVR_STREAM_TYPE_V40_UNION, *LPNET_DVR_STREAM_TYPE_V40_UNION; typedef struct tagNET_DVR_STREAM_MODE_TYPE { BYTE byGetStreamType; BYTE byRes[3]; NET_DVR_STREAM_TYPE_UNION uGetStream; }NET_DVR_STREAM_MODE_TYPE, *LPNET_DVR_STREAM_MODE_TYPE; typedef struct tagNET_DVR_STREAM_SRC_INFO { DWORD dwSize; NET_DVR_STREAM_MODE_TYPE struStreamSrcInfo; }NET_DVR_STREAM_SRC_INFO,*LPNET_DVR_STREAM_SRC_INFO; typedef struct tagNET_DVR_STREAM_SRC_INFO_V40 { DWORD dwSize; BYTE byGetStreamType; BYTE byRes1[3]; NET_DVR_STREAM_TYPE_V40_UNION uGetStream; BYTE byMonitorName[128]; BYTE byRes[384]; }NET_DVR_STREAM_SRC_INFO_V40,*LPNET_DVR_STREAM_SRC_INFO_V40; typedef struct tagNET_DVR_STREAM_RECORD_INFO { DWORD dwSize; NET_DVR_RECORD_V30 struRecordInfo; }NET_DVR_STREAM_RECORD_INFO, *LPNET_DVR_STREAM_RECORD_INFO; typedef struct tagNET_DVR_STREAM_TIME_LOCK { DWORD dwSize; NET_DVR_TIME strBeginTime; NET_DVR_TIME strEndTime; NET_DVR_STREAM_INFO struStreamInfo; DWORD dwRecordType; DWORD dwLockDuration; NET_DVR_TIME_EX strUnlockTimePoint; BYTE byRes[4]; }NET_DVR_STREAM_TIME_LOCK, *LPNET_DVR_STREAM_TIME_LOCK; typedef struct tagNET_DVR_VOD_DRAWFRAME_PARA { NET_DVR_TIME_EX struTime; DWORD dwDrawType; BYTE byRes[128]; }NET_DVR_VOD_DRAWFRAME_PARA, *LPNET_DVR_VOD_DRAWFRAME_PARA; typedef struct tagNET_DVR_VOD_PARA { DWORD dwSize; NET_DVR_STREAM_INFO struIDInfo; NET_DVR_TIME struBeginTime; NET_DVR_TIME struEndTime; HWND hWnd; BYTE byDrawFrame; BYTE byVolumeType; BYTE byVolumeNum; BYTE byStreamType; DWORD dwFileIndex; BYTE byAudioFile; BYTE byCourseFile; BYTE byDownload; BYTE byOptimalStreamType; BYTE byRes2[20]; }NET_DVR_VOD_PARA, *LPNET_DVR_VOD_PARA; typedef struct tagNET_DVR_VOD_PARA_V50 { DWORD dwSize; NET_DVR_STREAM_INFO struIDInfo; NET_DVR_TIME_V50 struBeginTime; NET_DVR_TIME_V50 struEndTime; HWND hWnd; BYTE byDrawFrame; BYTE byVolumeType; BYTE byVolumeNum; BYTE byStreamType; DWORD dwFileIndex; BYTE byAudioFile; BYTE byCourseFile; BYTE byPlayMode; BYTE byLinkMode; BYTE byDownload; BYTE byOptimalStreamType; BYTE byDisplayBufNum; BYTE byNPQMode; BYTE byRes2[252]; char* pSavedFileName; }NET_DVR_VOD_PARA_V50, *LPNET_DVR_VOD_PARA_V50; typedef struct tagNET_DVR_MANUAL_RECORD_PARA { NET_DVR_STREAM_INFO struStreamInfo; DWORD lRecordType; BYTE byRes[32]; }NET_DVR_MANUAL_RECORD_PARA, *LPNET_DVR_MANUAL_RECORD_PARA; typedef struct tagNET_DVR_STREAM_CABAC { DWORD dwSize; BYTE byCabacEnable; BYTE byRes1[31]; }NET_DVR_STREAM_CABAC, *LPNET_DVR_STREAM_CABAC; #define MAX_IOSPEED_GROUP_NUM 4 #define MAX_IOOUT_NUM 4 #define MAX_IOIN_NUM 8 #define MAX_RELAY_NUM 12 #define MAX_VEHICLE_TYPE_NUM 8 #define MAX_IOIN_NUMEX 10 #define MAX_ITC_LANE_NUM 6 #define MAX_LANEAREA_NUM 2 #define ITC_MAX_POLYGON_POINT_NUM 20 #define MAX_ITC_SERIALCHECK_NUM 8 #define MAX_LIGHT_NUM 6 #define MAX_VIDEO_INTERVAL_NUM 2 #define MAX_VIDEO_DETECT_LIGHT_NUM 12 #define MAX_CALIB_RECOG_NUM 2 #define MAX_RS485_NUM 12 #define MAX_MOBILE_POLYGON_NUM 3 #define MAX_MOBILE_DETECTLINE_NUM 3 #define MAX_IOOUT_K_NUM 8 typedef struct tagNET_ITC_IOOUT_PARAM { DWORD dwSize; BYTE byDefaultStatus; BYTE byIOOutStatus; BYTE byMode; BYTE byIOWorkMode; DWORD dwTimeDelay; WORD wAheadTime; BYTE byFreqMulti; BYTE byDutyRate; BYTE byDetectBrightness; BYTE byBrightnessThreld; BYTE byFlashLightEnable; BYTE byStartHour; BYTE byStartMinute; BYTE byEndHour; BYTE byEndMinute; BYTE byAutoPlateBrightness; BYTE byIncrBrightEnable; BYTE byIncrBrightPercent; WORD wIncrBrightTime; BYTE byBrightness; BYTE byEnvironBright; WORD wDelayCaptureTime; }NET_ITC_IOOUT_PARAM, *LPNET_ITC_IOOUT_PARAM; typedef enum _ITC_TRIGGERMODE_TYPE_ { ITC_POST_IOSPEED_TYPE = 0x1, ITC_POST_SINGLEIO_TYPE = 0x2, ITC_POST_RS485_TYPE = 0x4, ITC_POST_RS485_RADAR_TYPE = 0x8, ITC_POST_VIRTUALCOIL_TYPE = 0x10, ITC_POST_HVT_TYPE_V50 = 0x20, ITC_POST_MPR_TYPE = 0x40, ITC_POST_PRS_TYPE = 0x80, ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE = 0x100, ITC_EPOLICE_RS485_TYPE = 0x200, ITC_POST_HVT_TYPE = 0x400, ITC_PE_RS485_TYPE = 0x10000, ITC_VIDEO_EPOLICE_TYPE = 0x20000, ITC_VIA_VIRTUALCOIL_TYPE = 0x40000, ITC_POST_IMT_TYPE = 0x80000, IPC_POST_HVT_TYPE = 0x100000, ITC_POST_MOBILE_TYPE = 0x200000, ITC_REDLIGHT_PEDESTRIAN_TYPE = 0x400000, ITC_NOCOMITY_PEDESTRIAN_TYPE = 0x800000 }ITC_TRIGGERMODE_TYPE; typedef struct tagNET_ITC_TRIGGERMODE_ABILITY { DWORD dwSize; DWORD dwTriggerType; BYTE byRes[16]; }NET_ITC_TRIGGERMODE_ABILITY, *LPNET_ITC_TRIGGERMODE_ABILITY; typedef struct tagNET_ITC_INTERVAL_PARAM { BYTE byIntervalType; BYTE byRes1[3]; WORD wInterval[MAX_INTERVAL_NUM]; BYTE byRes[8]; }NET_ITC_INTERVAL_PARAM, *LPNET_ITC_INTERVAL_PARAM; typedef struct tagNET_ITC_PLATE_RECOG_PARAM { BYTE byDefaultCHN[MAX_CHJC_NUM]; BYTE byEnable; DWORD dwRecogMode; BYTE byVehicleLogoRecog; BYTE byProvince; BYTE byRegion; BYTE byCountry; WORD wPlatePixelWidthMin; WORD wPlatePixelWidthMax; BYTE byRes[24]; }NET_ITC_PLATE_RECOG_PARAM, *LPNET_ITC_PLATE_RECOG_PARAM; typedef struct tagNET_ITC_POLYGON { DWORD dwPointNum; NET_VCA_POINT struPos[ITC_MAX_POLYGON_POINT_NUM]; }NET_ITC_POLYGON, *LPNET_ITC_POLYGON; typedef struct tagNET_ITC_PLATE_RECOG_REGION_PARAM { BYTE byMode; BYTE byRes1[3]; union { NET_VCA_RECT struRect; NET_ITC_POLYGON struPolygon; }uRegion; BYTE byRes[16]; }NET_ITC_PLATE_RECOG_REGION_PARAM, *LPNET_ITC_PLATE_RECOG_REGION_PARAM; typedef struct tagNET_ITC_SINGLE_IOSPEED_PARAM { BYTE byEnable; BYTE byTrigCoil1; BYTE byCoil1IOStatus; BYTE byTrigCoil2; BYTE byCoil2IOStatus; BYTE byRelatedDriveWay; BYTE byTimeOut; BYTE byRelatedIOOutEx; DWORD dwDistance; BYTE byCapSpeed; BYTE bySpeedLimit; BYTE bySpeedCapEn; BYTE bySnapTimes1; BYTE bySnapTimes2; BYTE byBigCarSpeedLimit; BYTE byBigCarSignSpeed; BYTE byIntervalType; WORD wInterval1[MAX_INTERVAL_NUM]; WORD wInterval2[MAX_INTERVAL_NUM]; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE byLaneType; BYTE byCarSignSpeed; BYTE byUseageType; NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; BYTE byRelaLaneDirectionType; BYTE byLowSpeedLimit; BYTE byBigCarLowSpeedLimit; BYTE byLowSpeedCapEn; BYTE byEmergencyCapEn; BYTE byRes[27]; }NET_ITC_SINGLE_IOSPEED_PARAM, *LPNET_ITC_SINGLE_IOSPEED_PARAM; typedef struct tagNET_ITC_POST_IOSPEED_PARAM { NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_SINGLE_IOSPEED_PARAM struSingleIOSpeed[MAX_IOSPEED_GROUP_NUM]; BYTE byRes[32]; }NET_ITC_POST_IOSPEED_PARAM, *LPNET_ITC_POST_IOSPEED_PARAM; typedef struct tagNET_ITC_SINGLEIO_PARAM { BYTE byDefaultStatus; BYTE byRelatedDriveWay; BYTE bySnapTimes; BYTE byRelatedIOOutEx; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE byEnable; BYTE byUseageType; BYTE byEmergencyCapEn; NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; BYTE byRes[24]; }NET_ITC_SINGLEIO_PARAM, *LPNET_ITC_SINGLEIO_PARAM; typedef struct tagNET_ITC_POST_SINGLEIO_PARAM { NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_SINGLEIO_PARAM struSingleIO[MAX_IOIN_NUMEX]; }NET_ITC_POST_SINGLEIO_PARAM, *LPNET_ITC_POST_SINGLEIO_PARAM; typedef struct tagNET_ITC_LANE_PARAM { BYTE byEnable; BYTE byRelatedDriveWay; WORD wDistance; WORD wTrigDelayTime; BYTE byTrigDelayDistance; BYTE bySpeedCapEn; BYTE bySignSpeed; BYTE bySpeedLimit; BYTE bySnapTimes; BYTE byOverlayDriveWay; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE byCartSignSpeed; BYTE byCartSpeedLimit; BYTE byRelatedIOOutEx; NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; BYTE byLaneType; BYTE byUseageType; BYTE byRelaLaneDirectionType; BYTE byLowSpeedLimit; BYTE byBigCarLowSpeedLimit; BYTE byLowSpeedCapEn; BYTE byEmergencyCapEn; BYTE byRes[9]; }NET_ITC_LANE_PARAM, *LPNET_ITC_LANE_PARAM; typedef struct tagNET_ITC_POST_RS485_PARAM { BYTE byRelatedLaneNum; BYTE byTriggerSpareMode; BYTE byFaultToleranceTime; BYTE byRes1; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_LANE_PARAM struLane[MAX_ITC_LANE_NUM]; BYTE byRes[32]; }NET_ITC_POST_RS485_PARAM, *LPNET_ITC_POST_RS485_PARAM; typedef struct tagNET_ITC_RADAR_PARAM { BYTE byRadarType; BYTE byLevelAngle; WORD wRadarSensitivity; WORD wRadarSpeedValidTime; BYTE byRes1[2]; float fLineCorrectParam; int iConstCorrectParam; BYTE byRes2[8]; }NET_ITC_RADAR_PARAM, *LPNET_ITC_RADAR_PARAM; typedef struct tagNET_ITC_RS485_ACCESS_INFO_COND { DWORD dwSize; DWORD dwChannel; DWORD dwTriggerModeType; BYTE byAssociateRS485No; BYTE byRes[15]; }NET_ITC_RS485_ACCESS_INFO_COND,*LPNET_ITC_RS485_ACCESS_INFO_COND; typedef struct tagNET_ITC_RADAR_INFO_PARAM { NET_ITC_RADAR_PARAM struRadarParam; BYTE byAssociateLaneNo; BYTE byRes[103]; }NET_ITC_RADAR_INFO_PARAM, *LPNET_ITC_RADAR_INFO_PARAM; typedef union tagNET_ITC_ACCESS_DEVINFO_PARAM_UNION { BYTE uLen[128]; NET_ITC_RADAR_INFO_PARAM struRadarInfoParam; }NET_ITC_ACCESS_DEVINFO_PARAM_UNION, *LPNET_ITC_ACCESS_DEVINFO_PARAM_UNION; typedef struct tagNET_ITC_RS485_ACCESS_CFG { DWORD dwSize; BYTE byModeType; BYTE byRes[3]; NET_ITC_ACCESS_DEVINFO_PARAM_UNION uITCAccessDevinfoParam; BYTE byRes1[12]; }NET_ITC_RS485_ACCESS_CFG,*LPNET_ITC_RS485_ACCESS_CFG; typedef struct tagNET_ITC_RS485_ACCESS_INFO { DWORD dwSize; NET_ITC_RADAR_PARAM struRadar[MAX_ITC_LANE_NUM]; BYTE byRes[20]; }NET_ITC_RS485_ACCESS_INFO, *LPNET_ITC_RS485_ACCESS_INFO; typedef struct tagNET_ITC_POST_RS485_RADAR_PARAM { BYTE byRelatedLaneNum; BYTE byRes1[3]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_LANE_PARAM struLane[MAX_ITC_LANE_NUM]; NET_ITC_RADAR_PARAM struRadar; BYTE byRes[32]; }NET_ITC_POST_RS485_RADAR_PARAM, *LPNET_ITC_POST_RS485_RADAR_PARAM; typedef struct tagNET_ITC_VTLANE_PARAM { BYTE byRelatedDriveWay; BYTE bySpeedCapEn; BYTE bySignSpeed; BYTE bySpeedLimit; BYTE bySnapTimes; BYTE byBigCarSignSpeed; BYTE byBigCarSpeedLimit; BYTE byRelatedIOOutEx; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE byLowSpeedLimit; BYTE byBigCarLowSpeedLimit; BYTE byRelaLaneDirectionType; NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; NET_VCA_LINE struLine; }NET_ITC_VTLANE_PARAM, *LPNET_ITC_VTLANE_PARAM; typedef struct tagNET_ITC_VTCOIL_INFO { NET_VCA_RECT struLaneRect; BYTE byTrigFlag; BYTE byTrigSensitive; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE byLaneType; BYTE byEnableRadar; NET_ITC_VTLANE_PARAM struLane; BYTE byUseageType; BYTE byCarDriveDirect; BYTE byRes[30]; }NET_ITC_VTCOIL_INFO, *LPNET_ITC_VTCOIL_INFO; typedef struct tagNET_ITC_POST_VTCOIL_PARAM { BYTE byRelatedLaneNum; BYTE byIsDisplay; BYTE byLoopPos; BYTE byPolarLenType; BYTE byDayAuxLightMode; BYTE byVideoLaneNO; BYTE byVideoLowTh; BYTE byVideoHighTh; BYTE byRecordMode; BYTE bySnapMode; BYTE bySpeedDetector; BYTE byRes2; WORD wResolutionX; WORD wResolutionY; DWORD dwDayInitExp; DWORD dwDayMaxExp; DWORD dwNightExp; DWORD dwSnapExp; BYTE byDayInitGain; BYTE byDayMaxGain; BYTE byNightGain; BYTE bySnapGain; DWORD dwSceneMode; NET_DVR_GEOGLOCATION struGeogLocation; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_VTCOIL_INFO struVtCoil[MAX_VL_NUM]; NET_ITC_RADAR_PARAM struRadar; NET_VCA_LINE struLine; DWORD dwVioDetectType; BYTE byDebugMode; BYTE byRes[11]; }NET_ITC_POST_VTCOIL_PARAM, *LPNET_ITC_POST_VTCOIL_PARAM; typedef struct tagNET_ITC_SINGLE_IOTL_PARAM { BYTE byEnable; BYTE byLightIO; BYTE byTrafficLight; BYTE byTrigIO; BYTE byTrigIOStatus; BYTE byRelatedDriveWay; BYTE byRecordEnable; BYTE byRecordType; BYTE byPreRecordTime; BYTE byRecordDelayTime; BYTE byRecordTimeOut; BYTE byRedSnapTimes; BYTE byGreenSnapTimes; BYTE byRelatedIOOutEx; BYTE byRes1; BYTE byIntervalType; WORD wRedInterval[MAX_INTERVAL_NUM]; WORD wGreenInterval[MAX_INTERVAL_NUM]; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE byRes2[3]; NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; BYTE byRes[32]; }NET_ITC_SINGLE_IOTL_PARAM, *LPNET_ITC_SINGLE_IOTL_PARAM; typedef struct tagNET_ITC_EPOLICE_IOTL_PARAM { NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_SINGLE_IOTL_PARAM struSingleIOTL[MAX_IOSPEED_GROUP_NUM]; BYTE byRes[32]; }NET_ITC_EPOLICE_IOTL_PARAM, *LPNET_ITC_EPOLICE_IOTL_PARAM; typedef enum _ITC_SERIAL_PROTOCOL_ { ITC_PROTOCOL_UNKNOW = 0, ITC_SINGLE_COIL_PROTOCOL_MODE1 = 1, ITC_DOUBLE_COIL_PROTOCOL_MODE1 = 2, ITC_DOUBLE_COIL_PROTOCOL_MODE2 = 3, ITC_DOUBLE_COIL_PROTOCOL_MODE3 = 4, ITC_DOUBLE_COIL_PROTOCOL_MODE4 = 5, ITC_DOUBLE_COIL_PROTOCOL_MODE5 = 6, ITC_DOUBLE_COIL_PROTOCOL_MODE6 = 7, ITC_DOUBLE_COIL_PROTOCOL_MODE7 = 8, ITC_DOUBLE_COIL_PROTOCOL_MODE8 = 9, ITC_SINGLE_COIL_PROTOCOL_MODE2 = 10, ITC_OTHER_PROTOCOL = 0xff }ITC_SERIAL_PROTOCOL; typedef enum _ITC_NORMAL_PASS_SERIAL_PROTOCOL_ { ITC_NORMAL_PASS_SERIAL_UNKNOW = 0, ITC_NORMAL_PASS_PROTOCOL_MODE1 = 1, ITC_NORMAL_PASS_PROTOCOL_MODE2 =2, ITC_NORMAL_PASS_PROTOCOL_MODE3 =3, ITC_NORMAL_PASS_PROTOCOL_MODE4 =4, ITC_NORMAL_PASS_PROTOCOL_MODE5 =5, }ITC_NORMAL_PASS_SERIAL_PROTOCOL; typedef enum _ITC_INVERSE_SERIAL_PROTOCOL_ { ITC_INVERSE_SERIAL_UNKNOW = 0, ITC_INVERSE_PROTOCOL_MODE1 = 1, ITC_INVERSE_PROTOCOL_MODE2 =2, ITC_INVERSE_PROTOCOL_MODE3 =3, }ITC_INVERSE_SERIAL_PROTOCOL; typedef enum _ITC_SPEED_SERIAL_PROTOCOL_ { ITC_SPEED_SERIAL_UNKNOW = 0, ITC_SPEED_PROTOCOL_MODE1 = 1, ITC_SPEED_PROTOCOL_MODE2 =2, ITC_SPEED_PROTOCOL_MODE3 =3, }ITC_SPEED_SERIAL_PROTOCOL; typedef struct tagNET_ITC_SERIAL_INFO { BYTE bySerialProtocol; BYTE byIntervalType; WORD wInterval; BYTE byNormalPassProtocol; BYTE byInverseProtocol; BYTE bySpeedProtocol; BYTE byRes[9]; }NET_ITC_SERIAL_INFO, *LPNET_ITC_SERIAL_INFO; typedef struct tagNET_ITC_EPOLICE_LANE_PARAM { BYTE byEnable; BYTE byRelatedDriveWay; WORD wDistance; BYTE byRecordEnable; BYTE byRecordType; BYTE byPreRecordTime; BYTE byRecordDelayTime; BYTE byRecordTimeOut; BYTE bySignSpeed; BYTE bySpeedLimit; BYTE byOverlayDriveWay; NET_ITC_SERIAL_INFO struSerialInfo; BYTE byRelatedIOOut[MAX_IOOUT_NUM]; BYTE byFlashMode; BYTE bySerialType; BYTE byRelatedIOOutEx; BYTE bySnapPicPreRecord; NET_ITC_PLATE_RECOG_REGION_PARAM struPlateRecog[MAX_LANEAREA_NUM]; BYTE byBigCarSignSpeed; BYTE byBigCarSpeedLimit; BYTE byRedTrafficLightChan; BYTE byYellowTrafficLightChan; BYTE byRelaLaneDirectionType; BYTE byRes3[11]; }NET_ITC_EPOLICE_LANE_PARAM, *LPNET_ITC_EPOLICE_LANE_PARAM; typedef struct tagNET_ITC_EPOLICE_RS485_PARAM { BYTE byRelatedLaneNum; BYTE byTrafficLightSignalSrc; BYTE byRes1[2]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_EPOLICE_LANE_PARAM struLane[MAX_ITC_LANE_NUM]; BYTE byRes[32]; }NET_ITC_EPOLICE_RS485_PARAM, *LPNET_ITC_EPOLICE_RS485_PARAM; typedef struct tagNET_ITC_LANE_LOGIC_PARAM { BYTE byUseageType; BYTE byDirectionType; BYTE byCarDriveDirect; BYTE byRes[33]; }NET_ITC_LANE_LOGIC_PARAM, *LPNET_ITC_LANE_LOGIC_PARAM; typedef struct tagNET_ITC_LINE { NET_VCA_LINE struLine; BYTE byLineType; BYTE byRes[7]; }NET_ITC_LINE, *LPNET_ITC_LINE; typedef struct tagNET_ITC_SNAPMODE_PARAM { BYTE byVehicleCapMode; BYTE byNoVehicleCapMode; BYTE byPasserCapMode; BYTE byRes[29]; }NET_ITC_SNAPMODE_PARAM, *LPNET_ITC_SNAPMODE_PARAM; typedef struct tagNET_ITC_HVT_EC_PARAM { DWORD dwCapShutter; WORD wCapGain; BYTE byRes[2]; DWORD dwDayTimeVideoShutter; WORD wDayTimeVideoGain; WORD wNightVideoGain; DWORD wNightVideoShutter; BYTE byRes1[108]; }NET_ITC_HVT_EC_PARAM, *LPNET_ITC_HVT_EC_PARAM; typedef struct tagNET_ITC_LANE_HVT_PARAM { BYTE byLaneNO; BYTE bySignSpeed; BYTE bySpeedLimit; BYTE byBigCarSignSpeed; BYTE byBigCarSpeedLimit; BYTE bySpeedCapEn; BYTE byCaptureCount; BYTE byRelatedIOOut; BYTE byFlashMode; BYTE byEnableRadar; BYTE byChangeLaneEnable; BYTE byChangeLaneCapNo; DWORD dwCapTarget; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRes3[24]; NET_ITC_LANE_LOGIC_PARAM struLane; NET_ITC_LINE struLeftLaneLine; NET_ITC_LINE struRightLaneLine; NET_ITC_POLYGON struPlateRecog; NET_ITC_POLYGON struTraceArea; NET_VCA_LINE struForwardTrigLine; NET_VCA_LINE struBackwardTrigLine; NET_VCA_LINE struLeftTrigLine; NET_VCA_LINE struRightTrigLine; BYTE byRes4[60]; }NET_ITC_LANE_HVT_PARAM, *LPNET_ITC_LANE_HVT_PARAM; typedef struct tagNET_ITC_POST_HVT_PARAM { BYTE byLaneNum; BYTE bySceneMode; BYTE byRoadExpBright; BYTE byPlateExpBright; NET_ITC_POLYGON struDetectArea; NET_ITC_SNAPMODE_PARAM struCapMode; NET_ITC_HVT_EC_PARAM struEcParam; NET_ITC_LANE_HVT_PARAM struLaneParam[MAX_ITC_LANE_NUM]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_DVR_GEOGLOCATION struGeogLocation; BYTE byRes[324]; }NET_ITC_POST_HVT_PARAM, *LPNET_ITC_POST_HVT_PARAM; typedef struct tagNET_ITC_LANE_MPR_PARAM { BYTE byLaneNO; union { BYTE uLen[4]; struct { BYTE byIONo; BYTE byTriggerType; BYTE byRes1[2]; }struIO; struct { BYTE byRelateChan; BYTE byRes2[3]; }struRS485; }uTssParamInfo; BYTE byCarDriveDirect; BYTE byRes[58]; NET_ITC_LINE struLaneLine; NET_ITC_POLYGON struPlateRecog; BYTE byRelaLaneDirectionType; BYTE byRes1[255]; }NET_ITC_LANE_MPR_PARAM,*LPNET_ITC_LANE_MPR_PARAM; typedef struct tagNET_ITC_POST_MPR_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE bySourceType; BYTE byPicUploadType; BYTE byRoadType; BYTE byRes2; WORD wCustomDelayTime; BYTE byRes[56]; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_LANE_MPR_PARAM struLaneParam[MAX_ITC_LANE_NUM]; char szSceneName[NAME_LEN]; NET_VCA_LINE struSnapLine; BYTE byRes1[392]; }NET_ITC_POST_MPR_PARAM,*LPNET_ITC_POST_MPR_PARAM; typedef struct tagNET_DVR_VIA_LANE_PARAM { BYTE byLaneNO; BYTE byRes[63]; NET_ITC_LANE_LOGIC_PARAM struLogicParam; NET_ITC_LINE struLaneLine; NET_ITC_POLYGON struPlateRecog; BYTE byRes1[300]; } NET_DVR_VIA_LANE_PARAM,*LPNET_DVR_VIA_LANE_PARAM; typedef struct tagNET_DVR_VIA_VTCOIL_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE byRes[62]; NET_ITC_LINE struLaneBoundaryLine; NET_DVR_VIA_LANE_PARAM struLaneParam[MAX_ITC_LANE_NUM]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; BYTE byRes1[624]; }NET_DVR_VIA_VTCOIL_PARAM,*LPNET_DVR_VIA_VTCOIL_PARAM; typedef struct tagNET_DVR_TRIGGER_COND { DWORD dwSize; DWORD dwChannel; DWORD dwTriggerMode; BYTE byDetSceneID; BYTE byRes[63]; }NET_DVR_TRIGGER_COND,*LPNET_DVR_TRIGGER_COND; typedef struct tagNET_ITC_LANE_IMT_PARAM { BYTE byLaneNO; BYTE byRelaLaneDirectionType; BYTE byRes[146]; NET_ITC_LINE struLaneLine; BYTE byRes1[256]; }NET_ITC_LANE_IMT_PARAM,*LPNET_ITC_LANE_IMT_PARAM; typedef struct tagNET_ITC_POST_IMT_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE bySnapMode; BYTE byRes[61]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_LANE_IMT_PARAM struLaneParam[MAX_ITC_LANE_NUM]; BYTE byRes1[1584]; }NET_ITC_POST_IMT_PARAM,*LPNET_ITC_POST_IMT_PARAM; typedef struct tagNET_ITC_LANE_PRS_PARAM { BYTE byLaneNO; union { BYTE uLen[4]; struct { BYTE byIONo; BYTE byTriggerType; BYTE byRes1[2]; }struIO; struct { BYTE byRelateChan; BYTE byRes2[3]; }struRS485; }uTssParamInfo; BYTE byRes[59]; NET_ITC_LINE struLaneLine; NET_ITC_POLYGON struPlateRecog; BYTE byRelaLaneDirectionType; BYTE byRes2[3]; NET_ITC_LINE struTrigLine; BYTE byRes1[228]; }NET_ITC_LANE_PRS_PARAM,*LPNET_ITC_LANE_PRS_PARAM; typedef struct tagNET_ITC_POST_PRS_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE bySourceType; BYTE bySnapMode; BYTE byCapMode; BYTE byNoPlatCarCap; BYTE bySceneMode; BYTE byRes[57]; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_LANE_PRS_PARAM struLaneParam[MAX_ITC_LANE_NUM]; BYTE byRes1[440]; }NET_ITC_POST_PRS_PARAM,*LPNET_ITC_POST_PRS_PARAM; typedef struct tagNET_IPC_LANE_HVT_PARAM { BYTE byLaneNO; BYTE byCarDriveDirect; BYTE byRes[62]; NET_ITC_LINE struLaneLine; NET_ITC_POLYGON struPlateRecog; BYTE byRes1[256]; } NET_IPC_LANE_HVT_PARAM,*LPNET_IPC_LANE_HVT_PARAM; typedef struct _NET_ITC_PARKING_DETECTION_ { BYTE byEnable; BYTE byRes; WORD wDuration; WORD wAlarmIntervalTime; BYTE byRes1[58]; }NET_ITC_PARKING_DETECTION, *LPNET_ITC_PARKING_DETECTION; typedef struct tagNET_IPC_POST_HVT_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE byEnhancedMode; BYTE byPicRecognition; BYTE byRes[60]; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_IPC_LANE_HVT_PARAM struLaneParam[MAX_ITC_LANE_NUM]; char szSceneName[NAME_LEN]; NET_VCA_LINE struSnapLine; NET_ITC_PARKING_DETECTION struParkingDetection; BYTE byRes1[328]; } NET_IPC_POST_HVT_PARAM,*LPNET_IPC_POST_HVT_PARAM; typedef struct tagNET_ITC_LANE_HVT_PARAM_V50 { BYTE byLaneNO; BYTE byFlashMode; BYTE bySignSpeed; BYTE bySpeedLimit; BYTE bySignLowSpeed; BYTE byLowSpeedLimit; BYTE byBigCarSignSpeed; BYTE byBigCarSpeedLimit; BYTE byBigCarSignLowSpeed; BYTE byBigCarLowSpeedLimit; BYTE bySnapTimes; BYTE byDriveLineSnapTime; BYTE byHighSpeedSnapTime; BYTE byLowSpeedSnapTime; BYTE byBanSnapTime; BYTE byReverseSnapTime; BYTE byRelatedDriveWay; BYTE byLaneType; BYTE byRelaLaneDirectionType; BYTE byRes1[27]; BYTE byChangeLaneEnable; BYTE byChangeLaneCapNo; DWORD dwVioDetectType; DWORD dwRelatedIOOut; NET_ITC_LINE struTrigLine; NET_ITC_LINE struLineLeft; NET_ITC_POLYGON struPlateRecog; NET_ITC_LANE_LOGIC_PARAM struLane; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRes2[280]; }NET_ITC_LANE_HVT_PARAM_V50, *LPNET_ITC_LANE_HVT_PARAM_V50; typedef struct tagNET_ITC_POST_HVT_PARAM_V50 { BYTE byLaneNum; BYTE byCapType; BYTE byCapMode; BYTE bySecneMode; BYTE bySpeedMode; BYTE byLineRuleEffect; BYTE byRes1[78]; NET_ITC_LINE struLeftTrigLine; NET_ITC_LINE struRigtTrigLine; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_POLYGON struDetectArea; NET_DVR_GEOGLOCATION struGeogLocation; NET_ITC_LANE_HVT_PARAM_V50 struLaneParam[MAX_ITC_LANE_NUM]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; BYTE byRes2[260]; } NET_ITC_POST_HVT_PARAM_V50, *LPNET_ITC_POST_HVT_PARAM_V50; typedef struct tagNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM { BYTE byRelatedDriveWay; BYTE byRelaLaneDirectionType; BYTE byPedestriansNum; BYTE byVehicleSpeed; DWORD dwVehicleInterval; BYTE byPedesDetRule; BYTE byRes[3]; NET_ITC_LINE struLaneLine; NET_ITC_LINE struStopLine; NET_ITC_POLYGON struPlateRecog; BYTE byRes1[280]; } NET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM, *LPNET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM; typedef struct tagNET_ITC_NOCOMITY_PEDESTRIAN_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE byRes[74]; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_LINE struTriggerLine; NET_ITC_POLYGON struPedesDetRecog; NET_ITC_LANE_NOCOMITY_PEDESTRIAN_PARAM struLaneParam[MAX_ITC_LANE_NUM]; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; BYTE byRes1[400]; }NET_ITC_NOCOMITY_PEDESTRIAN_PARAM, *LPNET_ITC_NOCOMITY_PEDESTRIAN_PARAM; typedef struct tagNET_ITC_SINGLE_IO_LIGHT_PARAM { BYTE byLightType; BYTE byRelatedIO; BYTE byRedLightState; BYTE byRes[17]; }NET_ITC_SINGLE_IO_LIGHT_PARAM, *LPNET_ITC_SINGLE_IO_LIGHT_PARAM; typedef struct tagNET_ITC_IO_LIGHT_PARAM { NET_ITC_SINGLE_IO_LIGHT_PARAM struIOLight[MAX_LIGHT_NUM]; BYTE byRes[8]; }NET_ITC_IO_LIGHT_PARAM, *LPNET_ITC_IO_LIGHT_PARAM; typedef struct tagNET_ITC_SINGLE_RS485_LIGHT_PARAM { BYTE byLightType; BYTE byRelatedLightChan; BYTE byInputLight; BYTE byRelatedYLightChan; BYTE byRes[16]; }NET_ITC_SINGLE_RS485_LIGHT_PARAM, *LPNET_ITC_SINGLE_RS485_LIGHT_PARAM; typedef struct tagNET_ITC_RS485_LIGHT_PARAM { NET_ITC_SINGLE_RS485_LIGHT_PARAM struRS485Light[MAX_LIGHT_NUM]; BYTE byRes[8]; }NET_ITC_RS485_LIGHT_PARAM, *LPNET_ITC_RS485_LIGHT_PARAM; typedef struct tagNET_POS_PARAM { WORD wLeft; WORD wTop; WORD wRight; WORD wBottom; }NET_POS_PARAM, *LPNET_POS_PARAM; typedef struct tagNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM { BYTE byLightNum; BYTE byStraightLight; BYTE byLeftLight; BYTE byRightLight; BYTE byRedLight; BYTE byGreenLight; BYTE byYellowLight; BYTE byYellowLightTime; NET_POS_PARAM struLightRect; BYTE byRes[24]; }NET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM, *LPNET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM; typedef struct tagNET_ITC_VIDEO_DETECT_LIGHT_PARAM { NET_ITC_SINGLE_VIDEO_DETECT_LIGHT_PARAM struTrafficLight[MAX_VIDEO_DETECT_LIGHT_NUM]; BYTE byRes[8]; }NET_ITC_VIDEO_DETECT_LIGHT_PARAM, *LPNET_ITC_VIDEO_DETECT_LIGHT_PARAM; typedef union tagNET_ITC_LIGHT_ACCESSPARAM_UNION { DWORD uLen[122]; NET_ITC_IO_LIGHT_PARAM struIOLight; NET_ITC_RS485_LIGHT_PARAM struRS485Light; NET_ITC_VIDEO_DETECT_LIGHT_PARAM struVideoDelectLight; }NET_ITC_LIGHT_ACCESSPARAM_UNION, *LPNET_ITC_LIGHT_ACCESSPARAM_UNION; typedef struct tagNET_ITC_TRAFFIC_LIGHT_PARAM { BYTE bySource; BYTE byRes1[3]; NET_ITC_LIGHT_ACCESSPARAM_UNION struLightAccess; BYTE byRes[32]; }NET_ITC_TRAFFIC_LIGHT_PARAM, *LPNET_ITC_TRAFFIC_LIGHT_PARAM; typedef struct tagNET_ITC_VIOLATION_DETECT_LINE { NET_ITC_LINE struLaneLine; NET_ITC_LINE struStopLine; NET_ITC_LINE struRedLightLine; NET_ITC_LINE struCancelLine; NET_ITC_LINE struWaitLine; NET_ITC_LINE struRes[8]; }NET_ITC_VIOLATION_DETECT_LINE, *LPNET_ITC_VIOLATION_DETECT_LINE; typedef struct tagNET_ITC_REDLIGHT_PEDESTRIAN_PARAM { BYTE byEnable; BYTE bySnapNumTimes; BYTE byPedesDir; BYTE byDelayTime; BYTE byStackTargetEnble; BYTE byCalibRecogCtrl; BYTE byRes1[2]; NET_ITC_TRAFFIC_LIGHT_PARAM struTrafficLight; NET_ITC_LINE struStopLine; NET_ITC_POLYGON struCalibRecog[MAX_CALIB_RECOG_NUM]; BYTE byRes[440]; }NET_ITC_REDLIGHT_PEDESTRIAN_PARAM, *LPNET_ITC_REDLIGHT_PEDESTRIAN_PARAM; typedef struct tagNET_ITC_POST_MOBILE_PARAM { BYTE byEnable; BYTE bySceneMode; WORD wExpressWayCapType; WORD wUrbanRoadCapType; BYTE byCapNum; BYTE byRecordEnable; DWORD dwPreRecordTime; DWORD dwOverRecordTime; NET_ITC_LANE_LOGIC_PARAM struLane; NET_ITC_POLYGON struPolygon[MAX_MOBILE_POLYGON_NUM]; NET_ITC_VIOLATION_DETECT_LINE struLine[MAX_MOBILE_DETECTLINE_NUM]; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRes[256]; }NET_ITC_POST_MOBILE_PARAM,*LPNET_ITC_POST_MOBILE_PARAM; typedef union tagNET_ITC_TRIGGER_PARAM_UNION { DWORD uLen[1070]; NET_ITC_POST_IOSPEED_PARAM struIOSpeed; NET_ITC_POST_SINGLEIO_PARAM struSingleIO; NET_ITC_POST_RS485_PARAM struPostRs485; NET_ITC_POST_RS485_RADAR_PARAM struPostRadar; NET_ITC_POST_VTCOIL_PARAM struVtCoil; NET_ITC_POST_HVT_PARAM struHvt; NET_ITC_EPOLICE_IOTL_PARAM struIOTL; NET_ITC_EPOLICE_RS485_PARAM struEpoliceRs485; NET_ITC_EPOLICE_RS485_PARAM struPERs485; NET_ITC_POST_MPR_PARAM struPostMpr; NET_DVR_VIA_VTCOIL_PARAM struViaVtCoil; NET_ITC_POST_IMT_PARAM struPostImt; NET_ITC_POST_PRS_PARAM struPostPrs; NET_IPC_POST_HVT_PARAM struIpcHvt; NET_ITC_POST_HVT_PARAM_V50 struHvtV50; NET_ITC_POST_MOBILE_PARAM struPostMobile; NET_ITC_NOCOMITY_PEDESTRIAN_PARAM struNoComityPed; NET_ITC_REDLIGHT_PEDESTRIAN_PARAM struRedLightPed; }NET_ITC_TRIGGER_PARAM_UNION, *LPNET_ITC_TRIGGER_PARAM_UNION; typedef struct tagNET_ITC_SINGLE_TRIGGERCFG { BYTE byEnable; BYTE byRes1[3]; DWORD dwTriggerType; NET_ITC_TRIGGER_PARAM_UNION uTriggerParam; BYTE byRes[64]; }NET_ITC_SINGLE_TRIGGERCFG, *LPNET_ITC_SINGLE_TRIGGERCFG; typedef struct tagNET_ITC_TRIGGERCFG { DWORD dwSize; NET_ITC_SINGLE_TRIGGERCFG struTriggerParam; BYTE byRes[32]; }NET_ITC_TRIGGERCFG, *LPNET_ITC_TRIGGERCFG; typedef enum _ITC_VIOLATION_DETECT_TYPE_ { ITC_VIOLATION_POST = 0x01, ITC_VIOLATION_DRIVELINE = 0x02, ITC_VIOLATION_REVERSE = 0x04, ITC_VIOLATION_REDLIGHT = 0x08, ITC_VIOLATION_DIRECTION = 0x10, ITC_VIOLATION_INTERSECTION_CONGEST = 0x20, ITC_VIOLATION_NONDRIVEWAY = 0x40, ITC_VIOLATION_CHANGELANE = 0x80, ITC_VIOLATION_BAN = 0x100, ITC_VIOLATION_INTERSECTION_PARK=0x200, ITC_VIOLATION_GREEN_PARK=0x400, ITC_VIOLATION_HIGH_SPEED = 0x800, ITC_VIOLATION_LOW_SPEED = 0x1000, ITC_VIOLATION_EMERGENCY = 0x2000, ITC_VIOLATION_TURN_AROUND = 0x8000, ITC_VIOLATION_CONGESTION = 0x10000 }ITC_VIOLATION_DETECT_TYPE; typedef struct tagNET_ITC_VIOLATION_DETECT_PARAM { DWORD dwVioDetectType; BYTE byDriveLineSnapTimes; BYTE byReverseSnapTimes; WORD wStayTime; BYTE byNonDriveSnapTimes; BYTE byChangeLaneTimes; BYTE bybanTimes; BYTE byDriveLineSnapSen; WORD wSnapPosFixPixel; BYTE bySpeedTimes; BYTE byTurnAroundEnable; BYTE byThirdPlateRecogTime; BYTE byPostSnapTimes; BYTE byRes1[18]; WORD wStopLineDis; BYTE byRes[14]; }NET_ITC_VIOLATION_DETECT_PARAM, *LPNET_ITC_VIOLATION_DETECT_PARAM; typedef enum _ITC_RELA_LANE_DIRECTION_TYPE_ { ITC_RELA_LANE_DIRECTION_UNKNOW = 0, ITC_RELA_LANE_EAST_WEST = 1, ITC_RELA_LANE_WEST_EAST = 2, ITC_RELA_LANE_SOUTH_NORTH = 3, ITC_RELA_LANE_NORTH_SOUTH = 4, ITC_RELA_LANE_EASTSOUTH_WESTNORTH = 5, ITC_RELA_LANE_WESTNORTH_EASTSOUTH = 6, ITC_RELA_LANE_EASTNORTH_WESTSOUTH = 7, ITC_RELA_LANE_WESTSOUTH_EASTNORTH = 8 } ITC_RELA_LANE_DIRECTION_TYPE; typedef enum _ITC_LANE_USEAGE_TYPE_ { ITC_LANE_USEAGE_UNKNOW = 0, ITC_LANE_CARRIAGEWAY = 1, ITC_LANE_BUS = 2, ITC_LANE_FAST = 3, ITC_LANE_SLOW = 4, ITC_LANE_MOTOR = 5, ITC_LANE_NONMOTOR = 6, ITC_LANE_REVERSE_LANE = 7, ITC_LANE_BAN_TRUCKS = 8, ITC_LANE_MIX = 9, ITC_LANE_EMERGENCY = 10, ITC_LANE_BAN_LEFT = 11, ITC_LANE_BAN_RIGHT = 12 }ITC_LANE_USEAGE_TYPE; typedef enum _ITC_LANE_DIRECTION_TYPE_ { ITC_LANE_DIRECTION_UNKNOW = 0, ITC_LANE_LEFT = 1, ITC_LANE_STRAIGHT = 2, ITC_LANE_LEFT_STRAIGHT = 3, ITC_LANE_RIGHT = 4, ITC_LANE_LEFT_RIGHT = 5, ITC_LANE_RIGHT_STRAIGHT = 6, ITC_LANE_LEFT_RIGHT_STRAIGHT = 7, ITC_LANE_LEFT_WAIT = 9, ITC_LANE_STRAIGHT_WAIT = 10, ITC_LANE_FORWARD = 11, ITC_LANE_BACKWARD = 12, ITC_LANE_BOTHWAY = 13, ITC_LANE_STRAIGHT_WAIT_RIGHT = 14 }ITC_LANE_DIRECTION_TYPE; typedef enum _ITC_LANE_CAR_DRIVE_DIRECT_ { ITC_LANE_DRIVE_UNKNOW = 0, ITC_LANE_DRIVE_UP_TO_DOWN = 1, ITC_LANE_DRIVE_DOWN_TO_UP = 2 }ITC_LANE_CAR_DRIVE_DIRECT; typedef enum _ITC_LINE_TYPE_ { ITC_LINT_UNKNOW = 0, ITC_LINE_WHITE = 1, ITC_LINE_STOP = 2, ITC_LINE_SINGLE_YELLOW = 3, ITC_LINE_DOUBLE_YELLOW = 4, ITC_LINE_GUARD_RAIL = 5, ITC_LINE_NO_CROSS = 6, ITC_LINE_DOTTED = 7 }ITC_LINE_TYPE; typedef struct tagNET_ITC_LANE_VIDEO_EPOLICE_PARAM { BYTE byLaneNO; BYTE bySensitivity; BYTE byEnableRadar; BYTE byRelaLaneDirectionType; NET_ITC_LANE_LOGIC_PARAM struLane; NET_ITC_VIOLATION_DETECT_PARAM struVioDetect; NET_ITC_VIOLATION_DETECT_LINE struLine; NET_ITC_POLYGON struPlateRecog; BYTE byRecordEnable; BYTE byRecordType; BYTE byPreRecordTime; BYTE byRecordDelayTime; BYTE byRecordTimeOut; BYTE byCarSpeedLimit; BYTE byCarSignSpeed; BYTE bySnapPicPreRecord; NET_ITC_INTERVAL_PARAM struInterval; BYTE byRes[36]; }NET_ITC_LANE_VIDEO_EPOLICE_PARAM, *LPNET_ITC_LANE_VIDEO_EPOLICE_PARAM; typedef struct tagNET_ITC_VIDEO_EPOLICE_PARAM { BYTE byEnable; BYTE byLaneNum; BYTE byLogicJudge; BYTE byRes1; NET_ITC_PLATE_RECOG_PARAM struPlateRecog; NET_ITC_TRAFFIC_LIGHT_PARAM struTrafficLight; NET_ITC_LANE_VIDEO_EPOLICE_PARAM struLaneParam[MAX_ITC_LANE_NUM]; NET_ITC_LINE struLaneBoundaryLine; NET_ITC_LINE struLeftLine; NET_ITC_LINE struRightLine; NET_ITC_LINE struTopZebraLine; NET_ITC_LINE struBotZebraLine; BYTE byRes[32]; }NET_ITC_VIDEO_EPOLICE_PARAM, *LPNET_ITC_VIDEO_EPOLICE_PARAM; typedef union tagNET_ITC_VIDEO_TRIGGER_PARAM_UNION { DWORD uLen[1150]; NET_ITC_VIDEO_EPOLICE_PARAM struVideoEP; }NET_ITC_VIDEO_TRIGGER_PARAM_UNION, *LPNET_ITC_VIDEO_TRIGGER_PARAM_UNION; typedef struct tagNET_ITC_VIDEO_TRIGGER_PARAM { DWORD dwSize; DWORD dwMode; NET_ITC_VIDEO_TRIGGER_PARAM_UNION uVideoTrigger; BYTE byRes[32]; }NET_ITC_VIDEO_TRIGGER_PARAM, *LPNET_ITC_VIDEO_TRIGGER_PARAM; typedef struct tagNET_DVR_STATUS_DETECTCFG { DWORD dwSize; BYTE byEnableTrigIODetect; BYTE byEnableFlashOutDetect; BYTE byEnableRS485Detect; BYTE byEnableTrafficLightDetect; BYTE byRes[28]; }NET_DVR_STATUS_DETECTCFG, *LPNET_DVR_STATUS_DETECTCFG; typedef enum _ITC_STATUS_DETECT_TYPE_ { ITC_STATUS_DETECT_NULL = 0, ITC_STATUS_DETECT_TRIGGERIO, ITC_STATUS_DETECT_FLASHOUT, ITC_STATUS_DETECT_RS485, ITC_STATUS_DETECT_TRIGGERTYPE, ITC_STATUS_DETECT_TRAFFICLIGHT_COLOR, ITC_STATUS_DETECT_TRAFFICLIGHT_TURN }ITC_STATUS_DETECT_TYPE; typedef struct tagNET_ITC_TRIGGERIO_INFO { BYTE byTriggerIOIndex[MAX_IOIN_NUM]; BYTE byRes[40]; }NET_ITC_TRIGGERIO_INFO, *LPNET_ITC_TRIGGERIO_INFO; typedef struct tagNET_ITC_FLASHOUT_INFO { BYTE byFlashOutIndex[MAX_IOOUT_K_NUM]; BYTE byRes[40]; }NET_ITC_FLASHOUT_INFO, *LPNET_ITC_FLASHOUT_INFO; typedef struct tagNET_ITC_SERIAL_CHECKINFO { BYTE bySerialIndex[MAX_ITC_SERIALCHECK_NUM]; BYTE byRes[40]; }NET_ITC_SERIAL_CHECKINFO, *LPNET_ITC_SERIAL_CHECKINFO; typedef struct tagNET_ITC_TRIGGERTYPE_INFO { BYTE byTrigTypeIndex; BYTE byRes[47]; }NET_ITC_TRIGGERTYPE_INFO, *LPNET_ITC_TRIGGERTYPE_INFO; typedef struct tagNET_ITC_TRAFFIC_LIGHT_COLOR { BYTE byLeftLight; BYTE byRightLight; BYTE byStraightLight; BYTE byRes[45]; }NET_ITC_TRAFFIC_LIGHT_COLOR, *LPNET_ITC_TRAFFIC_LIGHT_COLOR; typedef struct tagNET_ITC_TRAFFIC_LIGHT_TURN { BYTE byLightType[MAX_ITC_LANE_NUM]; BYTE byRes[42]; } NET_ITC_TRAFFIC_LIGHT_TURN, *LPNET_ITC_TRAFFIC_LIGHT_TURN; typedef union tagNET_ITC_STATUS_UNION { BYTE uLen[48]; NET_ITC_TRIGGERIO_INFO struTrigIO; NET_ITC_FLASHOUT_INFO struFlashOut; NET_ITC_SERIAL_CHECKINFO struSerial; NET_ITC_TRIGGERTYPE_INFO struTrigType; NET_ITC_TRAFFIC_LIGHT_COLOR struTrafficLightColor; NET_ITC_TRAFFIC_LIGHT_TURN struTrafficLightTurn; }NET_ITC_STATUS_UNION, *LPNET_ITC_STATUS_UNION; typedef struct tagNET_ITC_STATUS_DETECT_RESULT { ITC_STATUS_DETECT_TYPE dwStatusType; NET_ITC_STATUS_UNION uStatusParam; DWORD dwHoldTime; BYTE byRes[32]; }NET_ITC_STATUS_DETECT_RESULT, *LPNET_ITC_STATUS_DETECT_RESULT; typedef struct tagNET_DVR_SETUPALARM_PARAM { DWORD dwSize; BYTE byLevel; BYTE byAlarmInfoType; BYTE byRetAlarmTypeV40; BYTE byRetDevInfoVersion; BYTE byRetVQDAlarmType; BYTE byFaceAlarmDetection; BYTE bySupport; BYTE byBrokenNetHttp; WORD wTaskNo; BYTE byDeployType; BYTE byRes1[3]; BYTE byAlarmTypeURL; BYTE byCustomCtrl; }NET_DVR_SETUPALARM_PARAM, *LPNET_DVR_SETUPALARM_PARAM; typedef struct tagNET_DVR_SETUPALARM_PARAM_V50 { DWORD dwSize; BYTE byLevel; BYTE byAlarmInfoType; BYTE byRetAlarmTypeV40; BYTE byRetDevInfoVersion; BYTE byRetVQDAlarmType; BYTE byFaceAlarmDetection; BYTE bySupport; BYTE byBrokenNetHttp; WORD wTaskNo; BYTE byDeployType; BYTE byRes1[3]; BYTE byAlarmTypeURL; BYTE byCustomCtrl; BYTE byRes4[128]; }NET_DVR_SETUPALARM_PARAM_V50, *LPNET_DVR_SETUPALARM_PARAM_V50; typedef struct tagNET_ITC_VIDEO_TRIGGER_COND { DWORD dwSize; DWORD dwChannel; DWORD dwTriggerMode; BYTE byRes[16]; }NET_ITC_VIDEO_TRIGGER_COND, *LPNET_ITC_VIDEO_TRIGGER_COND; typedef struct tagNET_ITC_FTP_TYPE_COND { DWORD dwChannel; BYTE byWorkMode; BYTE byRes[7]; }NET_ITC_FTP_TYPE_COND, *LPNET_ITC_FTP_TYPE_COND; typedef struct tagNET_ITC_FTP_CFG { DWORD dwSize; BYTE byEnable; BYTE byAddressType; WORD wFTPPort; union { struct { BYTE szDomain[MAX_DOMAIN_NAME]; BYTE byRes1[80]; }struDomain; struct { NET_DVR_IPADDR struIp; } struAddrIP; }unionServer; BYTE szUserName[NAME_LEN]; BYTE szPassWORD[PASSWD_LEN]; BYTE byRes4; BYTE byDirLevel; BYTE byIsFilterCarPic; BYTE byUploadDataType; NET_DVR_PICTURE_NAME struPicNameRule; BYTE byTopDirMode; BYTE bySubDirMode; BYTE byThreeDirMode; BYTE byFourDirMode; BYTE szPicNameCustom[MAX_CUSTOMDIR_LEN]; BYTE szTopCustomDir[MAX_CUSTOMDIR_LEN]; BYTE szSubCustomDir[MAX_CUSTOMDIR_LEN]; BYTE szThreeCustomDir[MAX_CUSTOMDIR_LEN]; BYTE szFourCustomDir[MAX_CUSTOMDIR_LEN]; BYTE byRes3[900]; }NET_ITC_FTP_CFG, *LPNET_ITC_FTP_CFG; typedef struct tagNET_DVR_LATITUDE_PARAM { BYTE byDegree; BYTE byMinute; BYTE bySec; BYTE byRes; }NET_DVR_LATITUDE_PARAM, *LPNET_DVR_LATITUDE_PARAM; typedef struct tagNET_DVR_LONGITUDE_PARAM { BYTE byDegree; BYTE byMinute; BYTE bySec; BYTE byRes; }NET_DVR_LONGITUDE_PARAM, *LPNET_DVR_LONGITUDE_PARAM; typedef struct tagNET_DVR_GPS_DATACFG { DWORD dwSize; BYTE byGpsDataMode; BYTE byLongitudeType; BYTE byLatitudeType; BYTE byRes; NET_DVR_LATITUDE_PARAM struLatitude; NET_DVR_LONGITUDE_PARAM struLongitude; BYTE byRes1[128]; }NET_DVR_GPS_DATACFG,*LPNET_DVR_GPS_DATACFG; typedef enum _VCA_DATABASE_TYPE_ { DATABASE_NULL = 0, DATABASE_SNAP, DATABASE_FACE }VCA_DATABASE_TYPE; typedef struct tagNET_VCA_DATABASE_PARAM { DWORD dwSize; DWORD dwDataBaseID; DWORD dwDataBaseType; BYTE byDataBaseName[NAME_LEN]; BYTE byAttribute[64]; BYTE byRes[20]; }NET_VCA_DATABASE_PARAM, *LPNET_VCA_DATABASE_PARAM; typedef struct tagNET_VCA_FIND_DATABASE_COND { DWORD dwDataBaseType; BYTE byRes[12]; }NET_VCA_FIND_DATABASE_COND, *LPNET_VCA_FIND_DATABASE_COND; typedef struct tagNET_VCA_DELETE_DATABASE_COND { DWORD dwSize; DWORD dwDataBaseType; DWORD dwDataBaseID; BYTE byRes[64]; }NET_VCA_DELETE_DATABASE_COND, *LPNET_VCA_DELETE_DATABASE_COND; typedef struct tagNET_VCA_INQUIRE_SNAPDB_COND { DWORD dwChannel; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE bySex; BYTE byRes1[3]; BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byAttribute1[NAME_LEN]; BYTE byAttribute2[NAME_LEN]; BYTE byRes[12]; }NET_VCA_INQUIRE_SNAPDB_COND, *LPNET_VCA_INQUIRE_SNAPDB_COND; typedef struct tagNET_VCA_INQUIRE_SNAPRECORD_RESULT { DWORD dwSize; DWORD dwDataBaseID; DWORD dwRecordID; NET_DVR_TIME struSnapTime; BYTE bySex; BYTE byRes1[3]; BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byAttribute1[NAME_LEN]; BYTE byAttribute2[NAME_LEN]; DWORD dwFacePicID; DWORD dwFacePicLen; BYTE byRes[80]; BYTE *pFacePic; }NET_VCA_INQUIRE_SNAPRECORD_RESULT, *LPNET_VCA_INQUIRE_SNAPRECORD_RESULT; typedef union tagNET_VCA_DELETE_SNAPRECORD_COND_UNION { NET_VCA_INQUIRE_SNAPDB_COND struAttribute; DWORD dwRecordID; }NET_VCA_DELETE_SNAPRECORD_COND_UNION, *LPNET_VCA_DELETE_SNAPRECORD_COND_UNION; typedef enum _VCA_DELETE_RECORD_TYPE_ { DELETE_RECORD_SINGLE = 0, DELETE_RECORD_BATCH }VCA_DELETE_RECORD_TYPE; typedef struct tagNET_VCA_DELETE_SNAPRECORD_COND { VCA_DELETE_RECORD_TYPE dwDeleteType; NET_VCA_DELETE_SNAPRECORD_COND_UNION uDeleteCond; BYTE byRes[40]; }NET_VCA_DELETE_SNAPRECORD_COND, *LPNET_VCA_DELETE_SNAPRECORD_COND; typedef enum _VCA_SEARCH_DATABASE_TYPE_ { VCA_NORMAL_SEARCH_DATABASE = 0x00000000, VCA_ADVANCE_SEARCH_DATABASE = 0x00000001 }VCA_SEARCH_DATABASE_TYPE; typedef struct tagNET_VCA_ADVANCE_SEARCH_DATABASE_COND { DWORD dwDataBaseType; DWORD dwDataBaseID; DWORD dwFacePicID; BYTE byRes[36]; }NET_VCA_ADVANCE_SEARCH_DATABASE_COND, *LPNET_VCA_ADVANCE_SEARCH_DATABASE_COND; typedef union tagNET_VCA_SEARCH_DATABASE_COND_UNION { DWORD uLen[25]; NET_VCA_REGISTER_PIC struNormalFind; NET_VCA_ADVANCE_SEARCH_DATABASE_COND struAdvanceFind; }NET_VCA_SEARCH_DATABASE_COND_UNION, *LPNET_VCA_SEARCH_DATABASE_COND_UNION; typedef struct tagNET_VCA_SEARCH_DATABASE_PARAM { DWORD dwSearchType; NET_VCA_SEARCH_DATABASE_COND_UNION uSearchCond; BYTE byRes[16]; }NET_VCA_SEARCH_DATABASE_PARAM, *LPNET_VCA_SEARCH_DATABASE_PARAM; typedef struct tagNET_VCA_SEARCH_SNAPDB_COND { DWORD dwChannel; DWORD dwDataBaseID; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE bySex; BYTE byRes1[3]; BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byAttribute1[NAME_LEN]; BYTE byAttribute2[NAME_LEN]; NET_VCA_SEARCH_DATABASE_PARAM struSearchParam; DWORD dwMaxSearchNum; WORD wThreshold; BYTE byRes[78]; }NET_VCA_SEARCH_SNAPDB_COND, *LPNET_VCA_SEARCH_SNAPDB_COND; typedef struct tagNET_VCA_SEARCH_SNAPRECORD_RESULT { DWORD dwSize; DWORD dwDataBaseID; DWORD dwRecordID; NET_DVR_TIME struSnapTime; BYTE bySex; BYTE byRes1[3]; BYTE byStartBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byEndBirthDate[MAX_HUMAN_BIRTHDATE_LEN]; BYTE byAttribute1[NAME_LEN]; BYTE byAttribute2[NAME_LEN]; float fSimilarity; DWORD dwFacePicID; DWORD dwFacePicLen; BYTE byRes[80]; BYTE *pFacePic; }NET_VCA_SEARCH_SNAPRECORD_RESULT, *LPNET_VCA_SEARCH_SNAPRECORD_RESULT; typedef struct tagNET_VCA_DATARECORD_INFO { DWORD dwSize; DWORD dwRecordID; NET_VCA_HUMAN_ATTRIBUTE struAttribute; NET_VCA_REGISTER_PIC struRegisterPic; BYTE byRemark1[NAME_LEN]; BYTE byRemark2[64]; BYTE byRes[32]; }NET_VCA_DATARECORD_INFO, *LPNET_VCA_DATARECORD_INFO; typedef struct tagNET_VCA_FAST_DATARECORD_INFO { DWORD dwSize; NET_VCA_HUMAN_ATTRIBUTE struAttribute; BYTE byRemark1[NAME_LEN]; BYTE byRemark2[64]; DWORD dwImageLen; BYTE byRes[80]; BYTE *pImage; }NET_VCA_FAST_DATARECORD_INFO, *LPNET_VCA_FAST_DATARECORD_INFO; typedef struct tagNET_VCA_INQUIRE_DATARECORD_RESULT { DWORD dwSize; DWORD dwDataBaseID; DWORD dwRecordID; NET_VCA_HUMAN_ATTRIBUTE struAttribute; BYTE byRemark1[NAME_LEN]; BYTE byRemark2[64]; DWORD dwFacePicID; DWORD dwFacePicLen; BYTE byRes[80]; BYTE *pFacePic; }NET_VCA_INQUIRE_DATARECORD_RESULT, *LPNET_VCA_INQUIRE_DATARECORD_RESULT; typedef struct tagNET_VCA_SEARCH_DATARECORD_RESULT { DWORD dwSize; DWORD dwDataBaseID; DWORD dwRecordID; NET_VCA_HUMAN_ATTRIBUTE struAttribute; BYTE byRemark1[NAME_LEN]; BYTE byRemark2[64]; float fSimilarity; DWORD dwFacePicID; DWORD dwFacePicLen; BYTE byRes[80]; BYTE *pFacePic; }NET_VCA_SEARCH_DATARECORD_RESULT, *LPNET_VCA_SEARCH_DATARECORD_RESULT; typedef struct tagNET_VCA_DATARECORD_COND { DWORD dwDataBaseID; NET_VCA_HUMANATTRIBUTE_COND struAttribute; BYTE byRes[80]; }NET_VCA_DATARECORD_COND, *LPNET_VCA_DATARECORD_COND; typedef union tagNET_VCA_DELETE_RECORD_COND_UNION { NET_VCA_HUMANATTRIBUTE_COND struAttribute; DWORD dwRecordID; }NET_VCA_DELETE_RECORD_COND_UNION, *LPNET_VCA_DELETE_RECORD_COND_UNION; typedef struct tagNET_VCA_DELETE_RECORD_COND { VCA_DELETE_RECORD_TYPE dwDeleteType; NET_VCA_DELETE_RECORD_COND_UNION uDeleteCond; BYTE byRes[40]; }NET_VCA_DELETE_RECORD_COND, *LPNET_VCA_DELETE_RECORD_COND; typedef struct tagNET_VCA_SEARCH_FACEDB_COND { DWORD dwDataBaseID; NET_VCA_HUMANATTRIBUTE_COND struAttribute; NET_VCA_SEARCH_DATABASE_PARAM struSearchParam; DWORD dwMaxSearchNum; WORD wThreshold; BYTE byRes[78]; }NET_VCA_SEARCH_FACEDB_COND, *LPNET_VCA_SEARCH_FACEDB_COND; typedef struct tagNET_VCA_FIND_MATCHPIC_COND { DWORD dwSize; DWORD dwDataBaseType; DWORD dwDataBaseID; DWORD dwRecordID; BYTE byRes[64]; }NET_VCA_FIND_MATCHPIC_COND, *LPNET_VCA_FIND_MATCHPIC_COND; typedef struct tagNET_VCA_FIND_MATCHPIC_RESULT { DWORD dwSize; DWORD dwDataBaseType; DWORD dwDataBaseID; DWORD dwRecordID; DWORD dwPicLen; BYTE byRes[64]; BYTE *pPicBuffer; }NET_VCA_FIND_MATCHPIC_RESULT, *LPNET_VCA_FIND_MATCHPIC_RESULT; typedef struct tagNET_DVR_REMOTECONTROL_ALARM_PARAM { DWORD dwSize; DWORD dwChannel; WORD wDealyTime; BYTE byRes[30]; }NET_DVR_REMOTECONTROL_ALARM_PARAM, *LPNET_DVR_REMOTECONTROL_ALARM_PARAM; typedef struct tagNET_DVR_REMOTECONTROL_STUDY_PARAM { DWORD dwSize; DWORD dwChannel; BYTE byRes[16]; }NET_DVR_REMOTECONTROL_STUDY_PARAM, *LPNET_DVR_REMOTECONTROL_STUDY_PARAM; typedef struct tagNET_DVR_WIRELESS_ALARM_STUDY_PARAM { DWORD dwSize; DWORD dwChannel; BYTE byIndex; BYTE byRes[15]; }NET_DVR_WIRELESS_ALARM_STUDY_PARAM, *LPNET_DVR_WIRELESS_ALARM_STUDY_PARAM; #define MAX_AUX_ALARM_NUM 8 #define MAX_WIRELESS_ALARM_NUM 8 typedef enum _IPC_AUX_ALARM_TYPE_ { IPC_AUXALARM_UNKNOW = 0, IPC_AUXALARM_PIR = 1, IPC_AUXALARM_WIRELESS = 2, IPC_AUXALARM_CALLHELP = 3 }IPC_AUX_ALARM_TYPE; typedef struct tagNET_DVR_AUDIO_LIMIT_ALARM_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwDecibelLimit; NET_DVR_HANDLEEXCEPTION_V30 struHandleException; BYTE byRes2[24]; }NET_IPC_AUDIO_LIMIT_ALARM_CFG,*LPNET_IPC_AUDIO_LIMIT_ALARM_CFG; typedef struct tagNET_DVR_BUTTON_DOWN_ALARM_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_HANDLEEXCEPTION_V30 struHandleException; BYTE byRes2[24]; }NET_IPC_BUTTON_DOWN_ALARM_CFG,*LPNET_IPC_BUTTON_DOWN_ALARM_CFG; typedef struct tagNET_IPC_PIR_ALARMCFG { BYTE byAlarmName[NAME_LEN]; BYTE byAlarmHandle; BYTE byRes1[3]; NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes[64]; }NET_IPC_PIR_ALARMCFG, *LPNET_IPC_PIR_ALARMCFG; typedef struct tagNET_IPC_PIR_ALARMCFG_EX { BYTE byAlarmName[NAME_LEN]; BYTE byAlarmHandle; BYTE byRes1[3]; NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[1464]; }NET_IPC_PIR_ALARMCFG_EX, *LPNET_IPC_PIR_ALARMCFG_EX; typedef struct tagNET_IPC_CALLHELP_ALARMCFG { BYTE byAlarmHandle; BYTE byRes1[3]; NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes[64]; }NET_IPC_CALLHELP_ALARMCFG, *LPNET_IPC_CALLHELP_ALARMCFG; typedef struct tagNET_IPC_SINGLE_WIRELESS_ALARMCFG { BYTE byAlarmName[NAME_LEN]; BYTE byAlarmHandle; BYTE byID; BYTE byRes1[2]; NET_DVR_HANDLEEXCEPTION_V30 struAlarmHandleType; BYTE byRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes[32]; }NET_IPC_SINGLE_WIRELESS_ALARMCFG, *LPNET_IPC_SINGLE_WIRELESS_ALARMCFG; typedef struct tagNET_IPC_WIRELESS_ALARMCFG { NET_IPC_SINGLE_WIRELESS_ALARMCFG struWirelessAlarm[MAX_WIRELESS_ALARM_NUM]; BYTE byRes[32]; }NET_IPC_WIRELESS_ALARMCFG, *LPNET_IPC_WIRELESS_ALARMCFG; typedef union tagNET_IPC_AUX_ALARMCFG_UNION { DWORD uLen[472]; NET_IPC_PIR_ALARMCFG_EX struPIRAlarm; NET_IPC_WIRELESS_ALARMCFG struWirelessAlarm; NET_IPC_CALLHELP_ALARMCFG struCallHelpAlarm; }NET_IPC_AUX_ALARMCFG_UNION, *LPNET_IPC_AUX_ALARMCFG_UNION; typedef struct tagNET_IPC_SINGLE_AUX_ALARMCFG { BYTE byAlarmType; BYTE byRes1[3]; NET_IPC_AUX_ALARMCFG_UNION uAlarm; BYTE byRes[16]; }NET_IPC_SINGLE_AUX_ALARMCFG, *LPNET_IPC_SINGLE_AUX_ALARMCFG; typedef struct tagNET_IPC_AUX_ALARMCFG { DWORD dwSize; NET_IPC_SINGLE_AUX_ALARMCFG struAlarm[MAX_AUX_ALARM_NUM]; BYTE byRes[64]; }NET_IPC_AUX_ALARMCFG, *LPNET_IPC_AUX_ALARMCFG; typedef union tagNET_IPC_AUXALARM_UPLOAD_UNION { DWORD uLen[66]; NET_IPC_PIR_ALARMCFG struPIRAlarm; NET_IPC_SINGLE_WIRELESS_ALARMCFG struWirelessAlarm; NET_IPC_CALLHELP_ALARMCFG struCallHelpAlarm; }NET_IPC_AUXALARM_UPLOAD_UNION, *LPNET_IPC_AUXALARM_UPLOAD_UNION; typedef struct tagNET_IPC_AUXALARM_RESULT { DWORD dwSize; DWORD dwChannel; BYTE byAlarmType; BYTE byRes1[3]; NET_IPC_AUXALARM_UPLOAD_UNION struAuxAlarm; BYTE byDeviceID[NAME_LEN]; BYTE byRes[32]; }NET_IPC_AUXALARM_RESULT, *LPNET_IPC_AUXALARM_RESULT; typedef struct tagNET_DVR_PREVIEW_DISPLAYCFG { DWORD dwSize; BYTE byCorrectMode; BYTE byMountType; BYTE byRealTimeOutput; BYTE byRes[61]; }NET_DVR_PREVIEW_DISPLAYCFG, *LPNET_DVR_PREVIEW_DISPLAYCFG; typedef struct tagNET_DVR_REMOTECONTROL_PTZ_PARAM { DWORD dwSize; DWORD dwChannel; DWORD dwPTZCommand; NET_VCA_POINT struVcaPoint; DWORD dwSpeed; DWORD dwStop; BYTE byRes[32]; }NET_DVR_REMOTECONTROL_PTZ_PARAM, *LPNET_DVR_REMOTECONTROL_PTZ_PARAM; typedef struct tagNET_DVR_PRESET_POINT_PARAM { DWORD dwSize; DWORD dwChannel; DWORD dwPTZPresetCmd; NET_VCA_POINT struVcaPoint; DWORD dwPresetIndex; WORD wZoomCoordinate; BYTE byRes[30]; }NET_DVR_PRESET_POINT_PARAM, *LPNET_DVR_PRESET_POINT_PARAM; typedef struct tagNET_DVR_PTZ_CRUISE_PARAM { DWORD dwSize; DWORD dwChannel; DWORD dwPTZCruiseCmd; NET_VCA_POINT struVcaPoint; WORD wCruiseRoute; WORD wCruisePoint; WORD wInput; WORD wZoomCoordinate; BYTE byRes[32]; }NET_DVR_PTZ_CRUISE_PARAM, *LPNET_DVR_PTZ_CRUISE_PARAM; typedef struct tagNET_DVR_WPS_PARAM { DWORD dwSize; BYTE byEnableWps; BYTE byRes[31]; }NET_DVR_WPS_PARAM, *LPNET_DVR_WPS_PARAM; typedef struct tagNET_DVR_PIN_PARAM { DWORD dwSize; BYTE byPIN[8]; BYTE byRes[32]; }NET_DVR_PIN_PARAM, *LPNET_DVR_PIN_PARAM; typedef struct tagNET_DVR_WPS_CONNECT_PARAM_ { DWORD dwSize; BYTE byConnectType; BYTE byRes1[3]; BYTE byPIN[8]; BYTE byEssid[IW_ESSID_MAX_SIZE]; BYTE byRes[32]; }NET_DVR_WPS_CONNECT_PARAM, *LPNET_DVR_WPS_CONNECT_PARAM; typedef struct tagNET_DVR_DECODER_JOINT_PARAM { DWORD dwSize; BYTE byJointed; BYTE byRes1[3]; NET_DVR_IPADDR struIP; WORD wPort; WORD wChannel; BYTE sDeviceName[NAME_LEN]; BYTE sChanName[NAME_LEN]; BYTE byRes2[32]; }NET_DVR_DECODER_JOINT_PARAM, *LPNET_DVR_DECODER_JOINT_PARAM; typedef struct tagNET_DVR_PIC_VIEW_PARAM { DWORD dwSize; NET_DVR_IPADDR struCuIp; WORD wPort; BYTE bySourceIndex; BYTE byRes[29]; }NET_DVR_PIC_VIEW_PARAM, *LPNET_DVR_PIC_VIEW_PARAM; #define DVCS_DEVICEID_LEN 16 typedef struct tagNET_DVR_PICVIEW_CALLBACKPARAM { DWORD dwUserID; BYTE sDeviceID[DVCS_DEVICEID_LEN]; LONG nPicViewHandle; WORD wSignalIndex; WORD wHeadLen; BYTE byHeadBuf[100]; BYTE byRes2[32]; }NET_DVR_PICVIEW_CALLBACKPARAM, *LPNET_DVR_PICVIEW_CALLBACKPARAM; #define DEVICEID_LEN 32 typedef struct tagNET_DVR_DEVICEID_INFO { DWORD dwSize; DWORD dwDeviceIndex; BYTE byWallNo; BYTE byRes1[27]; DWORD dwChan; DWORD dwInputSignalIndex; BYTE byRes2[60]; }NET_DVR_DEVICEID_INFO, *LPNET_DVR_DEVICEID_INFO; typedef struct tagNET_DVR_SINGLE_NETPARAM { DWORD dwSize; BYTE byUseDhcp; BYTE byRes1[3]; NET_DVR_IPADDR struDevIP; NET_DVR_IPADDR struSubnetMask; NET_DVR_IPADDR struGateway; WORD wDevPort; BYTE byMACAddr[MACADDR_LEN]; BYTE byRes2[16]; } NET_DVR_SINGLE_NETPARAM, *LPNET_DVR_SINGLE_NETPARAM; typedef struct tagNET_DVR_CHAN_INFO { DWORD dwSize; BYTE byValid; BYTE byRes1[3]; BYTE sChanName[NAME_LEN]; NET_DVR_COLOR struVideoColor; WORD wResolutionX; WORD wResolutionY; BYTE byRes2[40]; } NET_DVR_CHAN_INFO, *LPNET_DVR_CHAN_INFO; typedef struct tagNET_DVR_CODEDEV_INFO { NET_DVR_CHAN_INFO struChanInfo[MAX_CHANNUM]; } NET_DVR_CODEDEV_INFO, *LPNET_DVR_CODEDEV_INFO; typedef struct tagNET_DVR_DECODEDEV_INFO { BYTE byRes[1408]; } NET_DVR_DECODEDEV_INFO, *LPNET_DVR_DECODEDEV_INFO; typedef struct tagNET_DVR_NETSIGNAL_INFO { DWORD dwSize; BYTE byDevName[NAME_LEN]; NET_DVR_PU_STREAM_CFG struPuStream; BYTE byValid; BYTE byRes1[3]; BYTE sGroupName[NAME_LEN]; WORD wResolutionX; WORD wResolutionY; BYTE byRes2[24]; }NET_DVR_NETSIGNAL_INFO, *LPNET_DVR_NETSIGNAL_INFO; typedef struct tagNET_DVR_NETSIGNALDEV_INFO { NET_DVR_NETSIGNAL_INFO struDevInfo; BYTE byRes1[816]; }NET_DVR_NETSIGNALDEV_INFO, *LPNET_DVR_NETSIGNALDEV_INFO; typedef union tagNET_DVR_DIFFDEV_INFO { NET_DVR_CODEDEV_INFO struCodeDevInfo; NET_DVR_DECODEDEV_INFO struDecodeDevInfo; NET_DVR_NETSIGNALDEV_INFO struNetSignalInfo; } NET_DVR_DIFFDEV_INFO, *LPNET_DVR_DIFFDEV_INFO; typedef enum tagNET_DVCS_DEVICE_TYPE { NET_DVR_BNC_PROC = 1, NET_DVR_RGB_PROC, NET_DVR_STP_PROC, NET_DVR_DISP_PROC, NET_DVR_NETSIGNAL, NET_DVR_SDI_PROC, NET_DVR_BIW_PROC, NET_DVR_DON_PROC, NET_DVR_TVI_PROC, NET_DVR_DI2_PROC, NET_DVR_DO2_PROC, NET_DVR_UHDI_PROC, NET_DVR_YI2_PROC, NET_DVR_HI2_PROC, NET_DVR_VI2_PROC, NET_DVR_SI2_PROC, NET_DVR_HO2_PROC, NET_DVR_S24G_PROC, NET_DVR_S24X_PROC }NET_DVCS_DEVICE_TYPE; typedef struct tagNET_DVR_SINGLE_DEV_INFO { DWORD dwSize; DWORD dwSoftVersion; DWORD dwSoftwareBuildDate; BYTE byUseInSys; BYTE byDevStatus; BYTE byDeviceType; BYTE byRes1[17]; BYTE sDevName[NAME_LEN]; NET_DVR_SINGLE_NETPARAM struEtherNet[MAX_ETHERNET]; BYTE sSerialNumber[SERIALNO_LEN]; NET_DVR_DIFFDEV_INFO struSubDevInfo; DWORD dwDeviceIndex; DWORD dwSubBoardNo; BYTE bySubSysNo; BYTE byRes3[3]; WORD wStartAudioTalkChanNo; WORD wAudioTalkChanNum; BYTE byRes2[36]; } NET_DVR_SINGLE_DEV_INFO, *LPNET_DVR_SINGLE_DEV_INFO; typedef struct tagNET_DVR_DEVLIST { DWORD dwSize; DWORD dwDevNums; BYTE *pBuffer; BYTE byRes1[3]; DWORD dwBufLen; BYTE byRes2[64]; } NET_DVR_DEVLIST,*LPNET_DVR_DEVLIST; typedef struct tagNET_DVR_DEV_BASE_INFO { DWORD dwSize; BYTE byEnable; BYTE byDeviceType; BYTE byRes1[2]; BYTE sDevName[NAME_LEN]; BYTE byRes2[24]; } NET_DVR_DEV_BASE_INFO,*LPNET_DVR_DEV_BASE_INFO; typedef struct tagNET_DVR_NETPARAM { DWORD dwSize; NET_DVR_SINGLE_NETPARAM struEtherNet[MAX_ETHERNET]; BYTE byRes[64]; } NET_DVR_NETPARAM, *LPNET_DVR_NETPARAM; typedef struct tagNET_DVR_DISP_SCREEN { DWORD dwSize; WORD wScreenID; BYTE byWallNo; BYTE byRes1; DWORD dwDeviceIndex; BYTE byRes2[16]; }NET_DVR_DISP_SCREEN, *LPNET_DVR_DISP_SCREEN; typedef struct tagNET_DVR_TEXTSHOW { DWORD dwSize; BYTE byShowText; BYTE byRes[35]; }NET_DVR_TEXTSHOW, *LPNET_DVR_TEXTSHOW; typedef struct tagNET_DVR_SCREENLIST { DWORD dwSize; BYTE byWallNo; BYTE byRes[11]; DWORD dwScreenNums; BYTE *pBuffer; DWORD dwBufLen; } NET_DVR_SCREENLIST,*LPNET_DVR_SCREENLIST; typedef struct tagNET_DVR_OPERATE_DEVICE { DWORD dwSize; DWORD dwSubCommand; DWORD dwDeviceIndex; BYTE byRes[44]; }NET_DVR_OPERATE_DEVICE, *LPNET_DVR_OPERATE_DEVICE; typedef struct tagNET_DVR_UPGRADE_STATE { DWORD dwProgress; BYTE byState; BYTE byRes2[31]; }NET_DVR_UPGRADE_STATE, *LPNET_DVR_UPGRADE_STATE; typedef void(*DVCS_UPGRADESTATE_CB)(LONG nUpgradeHandle, BYTE *pBuffer, DWORD dwBufSize, void* pUser); typedef enum { NET_DVR_DATA_BMP = 0, NET_DVR_START_CALLBACK, NET_DVR_STREAM_SYSHEAD, NET_DVR_STREAM_DATA }PIC_PREVIEW_DATATYPE; typedef struct tagNET_DVR_START_PIC_VIEW_INFO { DWORD dwSize; DWORD dwSignalIndex; DWORD dwDeviceIndex; BYTE byRes1[12]; BYTE byChanIndex; BYTE byRes2[3]; DWORD dwScreenNum; DWORD dwLayer; DWORD dwResolution; BYTE byFrame; BYTE bySupportStreamView; BYTE byRes3[14]; }NET_DVR_START_PIC_VIEW_INFO, *LPNET_DVR_START_PIC_VIEW_INFO; typedef struct tagNET_DVR_DVCS_STATE_ALARM { DWORD dwSize; BYTE byAlarmType; BYTE byDeviceType; BYTE byWallNo; BYTE byDeviceChanIndex; DWORD dwDeviceIndex; WORD wResolutionX; WORD wResolutionY; WORD wTemperature; BYTE byRes[86]; }NET_DVR_DVCS_STATE_ALARM, *LPNET_DVR_DVCS_STATE_ALARM; typedef struct tagNET_DVR_PIC_ADJUST { DWORD dwSize; BYTE bySubCommand; BYTE byScale; BYTE byPictureProportion; BYTE byRes[29]; }NET_DVR_PIC_ADJUST, *LPNET_DVR_PIC_ADJUST; typedef struct tagNET_DVR_PICTURE_PARAM { DWORD dwSize; BYTE byControlCommand; BYTE byUseType; BYTE byWallNo; BYTE byPictureNo; BYTE byRes[64]; }NET_DVR_PICTURE_PARAM, *LPNET_DVR_PICTURE_PARAM; typedef struct tagNET_DVR_POE_CHANNEL_ADD_MODE { DWORD dwSize; BYTE byAddMode; BYTE byRes1[127]; }NET_DVR_POE_CHANNEL_ADD_MODE, *LPNET_DVR_POE_CHANNEL_ADD_MODE; #define MAX_ESATA_NUM 16 #define MAX_MINISAS_NUM 96 typedef struct tagNET_DVR_ESATA_MINISAS_USAGE { DWORD dwSize; BYTE byESATAUsage[MAX_ESATA_NUM]; BYTE byMiniSASUsage[MAX_MINISAS_NUM]; BYTE byRes[32]; }NET_DVR_ESATA_MINISAS_USAGE, *LPNET_DVR_ESATA_MINISAS_USAGE; #define MAX_DISK_NUM 128 typedef struct tagNET_DVR_BACKUP_LOG_PARAM { DWORD dwSize; BYTE byDiskDesc[DESC_LEN_32]; BYTE byHardDisk[MAX_DISK_NUM]; BYTE byBackupHardDiskNum; BYTE byContinue; BYTE byAllLogBackUp ; BYTE byRes[29]; }NET_DVR_BACKUP_LOG_PARAM, *LPNET_DVR_BACKUP_LOG_PARAM; typedef struct tagNET_DVR_DIGITAL_CHANNEL_STATE { DWORD dwSize; BYTE byDigitalAudioChanTalkState[MAX_CHANNUM_V30]; BYTE byDigitalChanState[MAX_CHANNUM_V30]; BYTE byDigitalAudioChanTalkStateEx[MAX_CHANNUM_V30*3]; BYTE byDigitalChanStateEx[MAX_CHANNUM_V30*3]; BYTE byAnalogChanState[MAX_ANALOG_CHANNUM]; BYTE byRes[32]; }NET_DVR_DIGITAL_CHANNEL_STATE, *LPNET_DVR_DIGITAL_CHANNEL_STATE; typedef enum { NET_SDK_DC_STATUS_CONNECTED = 1, NET_SDK_DC_STATUS_CONNECTING, NET_SDK_DC_STATUS_BAND_WIDTH_EXCEED, NET_SDK_DC_STATUS_DOMAIN_ERROR, NET_SDK_DC_STATUS_CHANNEL_ERROR, NET_SDK_DC_STATUS_ACCOUNT_ERROR, NET_SDK_DC_STATUS_STREAM_TYPE_NOT_SUPPORT, NET_SDK_DC_STATUS_CONFLICT_WITH_DVR, NET_SDK_DC_STATUS_CONFLICT_WITH_IPC, NET_SDK_DC_STATUS_NETWORK_UNREACHBALE, NET_SDK_DC_STATUS_IPC_NOT_EXIST, NET_SDK_DC_STATUS_IPC_EXCEPTION, NET_SDK_DC_STATUS_OTHER_ERROR, NET_SDK_DC_STATUS_RESOLUTION_NOT_SUPPORT, NET_SDK_DC_STATUS_IPC_LAN_ERR = 15, NET_SDK_DC_STATUS_USER_LOCKED = 16, NET_SDK_DC_STATUS_NOT_ACTIVATED = 17, NET_SDK_DC_STATUS_USER_NOT_EXIST = 18, NET_SDK_DC_STATUS_IPC_UNREGISTERED = 19, NET_SDK_DC_STATUS_POE_PORT_DETECTING = 20, NET_SDK_DC_STATUS_RESOURCE_EXCEED = 21, NET_SDK_DC_STATUS_NEED_TO_REPAIR = 22, NET_SDK_DC_STATUS_ACTIVATING = 23, NET_SDK_DC_STATUS_TOKEN_AUTHENTCATE_FAILED = 24 }NET_SDK_DIGITAL_CHANNEL_STATUS; #define VERSION_LEN 32 #define MAX_OVERLAP_ITEM_NUM 50 #define ITS_MAX_DEVICE_NUM 32 typedef struct tagNET_ITS_BASEINFO { DWORD dwSize; BYTE byMainVer[VERSION_LEN]; BYTE byMprVer[VERSION_LEN]; BYTE byBvtVer[VERSION_LEN]; BYTE byLptVer[VERSION_LEN]; BYTE byTvdVer[VERSION_LEN]; BYTE byTldVer[VERSION_LEN]; BYTE byRes[252]; }NET_ITS_BASEINFO,*LPNET_ITS_BASEINFO; typedef struct tagNET_ITS_IMGMERGE_CFG { DWORD dwSize; BYTE byIsMerge; BYTE byCloseupProportion; BYTE byRes1[2]; DWORD dwOneMergeType; DWORD dwTwoMergeType; DWORD dwThreeMergeType; DWORD dwJpegQuality; DWORD dwCloseupIndex; DWORD dwMerageMaxSize; WORD wCloseupDeviation; BYTE byRes[30]; }NET_ITS_IMGMERGE_CFG,*LPNET_ITS_IMGMERGE_CFG; typedef struct tagNET_ITS_TRAFFIC_DATA_HOST { NET_DVR_IPADDR struHostAddr; WORD wHostPort; BYTE byRes1[2]; DWORD dwDataType; BYTE bySuspendUpload; BYTE byUploadStrategy; WORD wUploadInterval; DWORD dwUploadTimeOut; BYTE byRes[24]; }NET_ITS_TRAFFIC_DATA_HOST,*LPNET_ITS_TRAFFIC_DATA_HOST; typedef struct tagNET_ITS_UPLOAD_CFG { DWORD dwSize; NET_ITS_TRAFFIC_DATA_HOST struRemoteDataHost1; NET_ITS_TRAFFIC_DATA_HOST struRemoteDataHost2; }NET_ITS_UPLOAD_CFG,*LPNET_ITS_UPLOAD_CFG; typedef struct tagNET_DVR_SYSTEM_TIME { WORD wYear; WORD wMonth; WORD wDay; WORD wHour; WORD wMinute; WORD wSecond; WORD wMilliSec; BYTE byRes[2]; }NET_DVR_SYSTEM_TIME, *LPNET_DVR_SYSTEM_TIME; typedef struct tagNET_ITS_TRAFFIC_DATA_INFO { DWORD dwDataQuantity; DWORD dwDataRsendQuantity; NET_DVR_SYSTEM_TIME struStartTime; NET_DVR_SYSTEM_TIME struEndTime; NET_DVR_IPADDR struDataHost; }NET_ITS_TRAFFIC_DATA_INFO, *LPNET_ITS_TRAFFIC_DATA_INFO; typedef struct tagNET_ITS_WORKSTATE { DWORD dwSize ; BYTE byDevName[NAME_LEN]; DWORD dwRunTime; NET_ITS_TRAFFIC_DATA_INFO struTrafficDataInfo[2]; DWORD dwMemoryUsage; DWORD dwCpuUsage; DWORD dwDevTemperature; DWORD dwDeviceStatic; NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; NET_DVR_CHANNELSTATE_V30 struChanStatic[MAX_CHANNUM_V30]; BYTE byAlarmInStatic[MAX_ALARMIN_V30]; BYTE byAlarmOutStatic[MAX_ALARMOUT_V30]; DWORD dwLocalDisplay; BYTE byAudioInChanStatus[8]; BYTE byRes[36]; }NET_ITS_WORKSTATE, *LPNET_ITS_WORKSTATE; typedef struct tagNET_ITS_ECT_WORKSTATE_COMMAND { DWORD dwSize; DWORD dwChannel; BYTE byRes[256]; }NET_ITS_ECT_WORKSTATE_COMMAND, *LPNET_ITS_ECT_WORKSTATE_COMMAND; typedef struct tagNET_ITS_ECTWORKSTATE { DWORD dwSize ; BYTE byDevName[NAME_LEN]; DWORD dwRunTime; NET_ITS_TRAFFIC_DATA_INFO struTrafficDataInfo[2]; DWORD dwMemoryUsage; DWORD dwCpuUsage; DWORD dwDevTemperature; DWORD dwDeviceStatic; NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM_V30]; BYTE byAlarmInStatic[MAX_ALARMIN_V30]; BYTE byAlarmOutStatic[MAX_ALARMOUT_V30]; DWORD dwLocalDisplay; BYTE byRes[256]; }NET_ITS_ECTWORKSTATE, *LPNET_ITS_ECTWORKSTATE; typedef struct tagNET_ITS_PICTURE_INFO { DWORD dwDataLen; BYTE byType; BYTE byDataType; BYTE byCloseUpType; BYTE byPicRecogMode; DWORD dwRedLightTime; BYTE byAbsTime[32]; NET_VCA_RECT struPlateRect; NET_VCA_RECT struPlateRecgRect; BYTE *pBuffer; DWORD dwUTCTime; BYTE byCompatibleAblity; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes2[4]; }NET_ITS_PICTURE_INFO, *LPNET_ITS_PICTURE_INFO; typedef struct tagNET_ITS_ILLEGAL_INFO { BYTE byIllegalInfo[MAX_ILLEGAL_LEN]; BYTE byRes[256]; }NET_ITS_ILLEGAL_INFO,*LPNET_ITS_ILLEGAL_INFO; typedef struct tagNET_ITS_PLATE_RESULT { DWORD dwSize; DWORD dwMatchNo; BYTE byGroupNum; BYTE byPicNo; BYTE bySecondCam; BYTE byFeaturePicNo; BYTE byDriveChan; BYTE byVehicleType; BYTE byDetSceneID; BYTE byVehicleAttribute; WORD wIllegalType; BYTE byIllegalSubType[8]; BYTE byPostPicNo; BYTE byChanIndex; WORD wSpeedLimit; BYTE byChanIndexEx; BYTE byRes2; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; BYTE byMonitoringSiteID[48]; BYTE byDeviceID[48]; BYTE byDir; BYTE byDetectType; BYTE byRelaLaneDirectionType; BYTE byCarDirectionType; DWORD dwCustomIllegalType; BYTE* pIllegalInfoBuf; BYTE byIllegalFromatType; BYTE byPendant; BYTE byDataAnalysis; BYTE byYellowLabelCar; BYTE byDangerousVehicles; BYTE byPilotSafebelt; BYTE byCopilotSafebelt; BYTE byPilotSunVisor; BYTE byCopilotSunVisor; BYTE byPilotCall; BYTE byBarrierGateCtrlType; BYTE byAlarmDataType; NET_DVR_TIME_V30 struSnapFirstPicTime; DWORD dwIllegalTime; DWORD dwPicNum; NET_ITS_PICTURE_INFO struPicInfo[6]; }NET_ITS_PLATE_RESULT, *LPNET_ITS_PLATE_RESULT; typedef struct tagNET_ITS_GATE_VEHICLE { DWORD dwSize; DWORD dwMatchNo; BYTE byGroupNum; BYTE byPicNo; BYTE bySecondCam; BYTE byRes; WORD wLaneid; BYTE byCamLaneId; BYTE byRes1; BYTE byAlarmReason[MAX_ALARMREASON_LEN]; WORD wBackList; WORD wSpeedLimit; DWORD dwChanIndex; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; BYTE byMonitoringSiteID[MAX_ID_LEN]; BYTE byDeviceID[MAX_ID_LEN]; BYTE byDir; BYTE byDetectType; BYTE byRes2[2]; BYTE byCardNo[MAX_ID_LEN]; DWORD dwPicNum; NET_ITS_PICTURE_INFO struPicInfo[4]; BYTE bySwipeTime[MAX_TIME_LEN]; BYTE byRes3[224]; }NET_ITS_GATE_VEHICLE, *LPNET_ITS_GATE_VEHICLE; typedef struct tagNET_ITS_GATE_FACE { DWORD dwSize; BYTE byGroupNum; BYTE byPicNo; BYTE byFeaturePicNo; BYTE byRes; WORD wLaneid; BYTE byCamLaneId; BYTE byDir; DWORD dwChanIndex; BYTE byMonitoringSiteID[MAX_ID_LEN]; BYTE byDeviceID[MAX_ID_LEN]; NET_VCA_FACESNAP_RESULT struFaceInfo; BYTE byRes2[256]; }NET_ITS_GATE_FACE, *LPNET_ITS_GATE_FACE; typedef struct _tagNET_ITS_PARK_VEHICLE_ { DWORD dwSize; BYTE byGroupNum; BYTE byPicNo; BYTE byLocationNum; BYTE byParkError; BYTE byParkingNo[MAX_PARKNO_LEN]; BYTE byLocationStatus; BYTE bylogicalLaneNum; WORD wUpLoadType; BYTE byRes1[4]; DWORD dwChanIndex; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; BYTE byMonitoringSiteID[MAX_ID_LEN]; BYTE byDeviceID[MAX_ID_LEN]; DWORD dwPicNum; NET_ITS_PICTURE_INFO struPicInfo[2]; BYTE byRes2[256]; }NET_ITS_PARK_VEHICLE, *LPNET_ITS_PARK_VEHICLE; typedef struct tagNET_DVR_TFS_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; DWORD dwIllegalType; DWORD dwIllegalDuration; BYTE byMonitoringSiteID[MONITORSITE_ID_LEN]; BYTE byDeviceID[DEVICE_ID_LEN]; NET_VCA_DEV_INFO struDevInfo; NET_DVR_SCENE_INFO struSceneInfo; NET_DVR_TIME_EX struBeginRecTime; NET_DVR_TIME_EX struEndRecTime; NET_DVR_AID_INFO struAIDInfo; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; DWORD dwPicNum; NET_ITS_PICTURE_INFO struPicInfo[8]; BYTE bySpecificVehicleType; BYTE byLaneNo; BYTE byRes1[2]; NET_DVR_TIME_V30 struTime; DWORD dwSerialNo; BYTE byVehicleAttribute; BYTE byPilotSafebelt; BYTE byCopilotSafebelt; BYTE byPilotSunVisor; BYTE byCopilotSunVisor; BYTE byPilotCall; BYTE byRes2[2]; BYTE byIllegalCode[ILLEGAL_LEN]; WORD wCountry; BYTE byRegion; BYTE byCrossLine; BYTE byParkingSerialNO[SERIAL_NO_LEN]; BYTE byCrossSpaces; BYTE byAngledParking; BYTE byAlarmValidity; BYTE byRes[45]; }NET_DVR_TFS_ALARM,*LPNET_DVR_TFS_ALARM; typedef struct tagNET_DVR_SOFTWARE_SERVICE_CFG { DWORD dwSize; BYTE byThirdStreamEnabled; BYTE bySubStreamEnabled; BYTE byRes[254]; }NET_DVR_SOFTWARE_SERVICE_CFG, *LPNET_DVR_SOFTWARE_SERVICE_CFG; typedef struct _tagNET_ITS_ECT_BLACKLIST_ { DWORD dwSize; DWORD dwChannel; BYTE bylogicalLaneNo; BYTE byRes1[3]; BYTE byLaneName[NAME_LEN]; NET_DVR_PLATE_INFO struPlateInfo; BYTE byRes2[256]; }NET_ITS_ECT_BLACKLIST, *LPNET_ITS_ECT_BLACKLIST; typedef struct tagNET_ITS_IPC_CHAN_CFG { DWORD dwSize; BYTE byCameraType; BYTE byRes1[3]; BYTE byMonitoringSiteID[48]; BYTE byDeviceID[48]; BYTE byDirectionNo; BYTE byMonitorInfo[48]; BYTE byRes2[15]; }NET_ITS_IPC_CHAN_CFG, *LPNET_ITS_IPC_CHAN_CFG; typedef struct tagNET_ITS_SINGLE_DEVICE_INFO { DWORD dwDeviceType; DWORD dwDirID; DWORD dwLaneID; DWORD dwDeviceState; BYTE byDeviceName[32]; BYTE byDeviceID[48]; NET_DVR_TIME_V30 struTriggerTime; BYTE byRelateChan; BYTE byRes[3]; }NET_ITS_SINGLE_DEVICE_INFO,*LPNET_ITS_SINGLE_DEVICE_INFO; typedef struct tagNET_ITS_ROADINFO { DWORD dwSize; DWORD dwChannel; BYTE byTriggerMode; BYTE byRes1[3]; DWORD dwDeviceNum; BYTE byMonitoringSiteID[48]; BYTE byRoadInfo[48]; NET_ITS_SINGLE_DEVICE_INFO struSingleDevice[ITS_MAX_DEVICE_NUM]; BYTE byRes[16]; }NET_ITS_ROADINFO,*LPNET_ITS_ROADINFO; typedef struct tagNET_ITS_TRAFFIC_DRIVE_CHAN { BYTE byDriveChan; BYTE byRes1[3]; WORD wCarFlux; WORD wPasserbyFlux; WORD wShayFlux; float fAverOccpancy; WORD wAverSpeed; WORD wAverCarDis; BYTE byRes2[16]; }NET_ITS_TRAFFIC_DRIVE_CHAN,*LPNET_ITS_TRAFFIC_DRIVE_CHAN; typedef struct tagNET_ITS_TRAFFIC_COLLECT { DWORD dwSize; BYTE byMonitoringSiteID[48]; BYTE byDeviceID[48]; BYTE byLaneNum; BYTE byDir; BYTE byDetectType; BYTE byRes1; DWORD dwChannel; NET_DVR_SYSTEM_TIME struStartTime; DWORD dwSamplePeriod; NET_ITS_TRAFFIC_DRIVE_CHAN struDriveChan[6]; BYTE byRes2[24]; }NET_ITS_TRAFFIC_COLLECT,*LPNET_ITS_TRAFFIC_COLLECT; typedef struct tagNET_ITS_OVERLAPCFG_COND { DWORD dwSize; DWORD dwChannel; DWORD dwConfigMode; BYTE byPicModeType; BYTE byRelateType; BYTE byRes[14]; }NET_ITS_OVERLAPCFG_COND, *LPNET_ITS_OVERLAPCFG_COND; typedef enum ITS_OVERLAP_ITEM_TYPE { OVERLAP_ITEM_NULL = 0, OVERLAP_ITEM_SITE, OVERLAP_ITEM_ROADNUM, OVERLAP_ITEM_INSTRUMENTNUM, OVERLAP_ITEM_DIRECTION, OVERLAP_ITEM_DIRECTIONDESC, OVERLAP_ITEM_LANENUM, OVERLAP_ITEM_LANEDES, OVERLAP_ITEM_CAPTIME, OVERLAP_ITEM_CAPTIME_MILLSECOND, OVERLAP_ITEM_PLATENUM, OVERLAP_ITEM_CARCOLOR, OVERLAP_ITEM_CARTYPE, OVERLAP_ITEM_CARBRAND, OVERLAP_ITEM_CARSPEED, OVERLAP_ITEM_SPEEDLIMIT, OVERLAP_ITEM_CARLENGTH, OVERLAP_ITEM_ILLEGALNUM, OVERLAP_ITEM_MONITOR_INFO, OVERLAP_ITEM_ILLEGALDES, OVERLAP_ITEM_OVERSPEED_PERCENT, OVERLAP_ITEM_RED_STARTTIME, OVERLAP_ITEM_RED_STOPTIME, OVERLAP_ITEM_RED_DURATION, OVERLAP_ITEM_SECUNITY_CODE, OVERLAP_ITEM_CAP_CODE, OVERLAP_ITEM_SEATBELT, OVERLAP_ITEM_MONITOR_ID, OVERLAP_ITEM_SUN_VISOR, OVERLAP_ITEM_LANE_DIRECTION, OVERLAP_ITEM_LICENSE_PLATE_COLOR, OVERLAP_ITEM_SCENE_NUMBER, OVERLAP_ITEM_SCENE_NAME, OVERLAP_ITEM_YELLOW_SIGN_CAR, OVERLAP_ITEM_DANGEROUS_CAR, OVERLAP_ITEM_CAR_SUBBRAND, OVERLAP_ITEM_CAR_DIRECTION, OVERLAP_ITEM_PENDANT, OVERLAP_ITEM_CALL, OVERLAP_ITEM_CAR_VALIDITY, OVERLAP_ITEM_CAR_COUNTRY, OVERLAP_ITEM_CAR_PLATE_TYPE, OVERLAP_ITEM_CAR_PLATE_SIZE, OVERLAP_ITEM_CAR_PLATE_COLOR, OVERLAP_ITEM_CAR_PLATE_CATEGORY, OVERLAP_ITEM_ACCIDENT, OVERLAP_ITEM_SMOKING, OVERLAP_ITEM_HELMET, OVERLAP_ITEM_MANNED, OVERLAP_ITEM_HUMAN, OVERLAP_ITEM_PLAYMOBILEPHONE, }ITS_OVERLAP_ITEM_TYPE; typedef struct tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM { BYTE byRes1[2]; BYTE byItemType; BYTE byChangeLineNum; BYTE bySpaceNum; BYTE byRes2[2]; BYTE byEnablePos; WORD wStartPosTop; WORD wStartPosLeft; BYTE byRes[8]; }NET_ITS_OVERLAP_SINGLE_ITEM_PARAM, *LPNET_ITS_OVERLAP_SINGLE_ITEM_PARAM; typedef struct tagNET_ITS_OVERLAP_ITEM_PARAM { NET_ITS_OVERLAP_SINGLE_ITEM_PARAM struSingleItem[MAX_OVERLAP_ITEM_NUM]; DWORD dwLinePercent; DWORD dwItemsStlye; WORD wStartPosTop; WORD wStartPosLeft; WORD wCharStyle; WORD wCharSize; WORD wCharInterval; BYTE byRes1[2]; DWORD dwForeClorRGB; DWORD dwBackClorRGB; BYTE byColorAdapt; BYTE byParamFillZeroEnble; BYTE byPlateLeftCornerEnable; BYTE byRes2; WORD wStartSPicPosTop; WORD wStartSPicPosLeft; BYTE byOsdLocate; BYTE byRes[23]; }NET_ITS_OVERLAP_ITEM_PARAM, *LPNET_ITS_OVERLAP_ITEM_PARAM; typedef struct tagNET_ITS_OVERLAP_INFO_PARAM { BYTE bySite[128]; BYTE byRoadNum[32]; BYTE byInstrumentNum[32]; BYTE byDirection[32]; BYTE byDirectionDesc[32]; BYTE byLaneDes[32]; BYTE byRes1[32]; BYTE byMonitoringSite1[44]; BYTE byMonitoringSite2[32]; BYTE byRes[64]; }NET_ITS_OVERLAP_INFO_PARAM, *LPNET_ITS_OVERLAP_INFO_PARAM; typedef struct tagNET_ITS_OVERLAP_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_ITS_OVERLAP_ITEM_PARAM struOverLapItem; NET_ITS_OVERLAP_INFO_PARAM struOverLapInfo; BYTE byRes[32]; }NET_ITS_OVERLAP_CFG, *LPNET_ITS_OVERLAP_CFG; typedef struct tagNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 { BYTE byRes1[2]; BYTE byItemType; BYTE byChangeLineNum; BYTE bySpaceNum; BYTE byRes2[2]; BYTE byEnablePos; WORD wStartPosTop; WORD wStartPosLeft; BYTE byItemTypeCustom[32]; BYTE byRes[8]; }NET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50, *LPNET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50; typedef struct tagNET_ITS_OVERLAP_ITEM_PARAM_V50 { NET_ITS_OVERLAP_SINGLE_ITEM_PARAM_V50 struSingleItem[MAX_OVERLAP_ITEM_NUM]; DWORD dwLinePercent; DWORD dwItemsStlye; WORD wStartPosTop; WORD wStartPosLeft; WORD wCharStyle; WORD wCharSize; WORD wCharInterval; BYTE byRes1[2]; DWORD dwForeClorRGB; DWORD dwBackClorRGB; BYTE byColorAdapt; BYTE byParamFillZeroEnble; BYTE byPlateLeftCornerEnable; BYTE byRes2; WORD wStartSPicPosTop; WORD wStartSPicPosLeft; BYTE byOsdLocate; BYTE byRes[63]; }NET_ITS_OVERLAP_ITEM_PARAM_V50, *LPNET_ITS_OVERLAP_ITEM_PARAM_V50; typedef struct tagNET_ITS_OVERLAP_CFG_V50 { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_ITS_OVERLAP_ITEM_PARAM_V50 struOverLapItemV50; NET_ITS_OVERLAP_INFO_PARAM struOverLapInfo; BYTE byRes[120]; }NET_ITS_OVERLAP_CFG_V50, *LPNET_ITS_OVERLAP_CFG_V50; #define MAX_PTZCRUISE_POINT_NUM 32 typedef struct tagNET_DVR_PRESET_INFO { DWORD dwSize; DWORD dwPresetNum; DWORD dwGroupNum; BYTE byRes[8]; }NET_DVR_PRESET_INFO, *LPNET_DVR_PRESET_INFO; typedef struct tagNET_DVR_PRESET_COND { DWORD dwSize; DWORD dwChannel; DWORD dwGroupNO; BYTE byRes[8]; }NET_DVR_PRESET_COND, *LPNET_DVR_PRESET_COND; typedef struct tagNET_DVR_PRESETCFG { DWORD dwSize; DWORD dwPresetIndex; NET_VCA_POINT struVcaPoint; WORD wZoomCoordinate; BYTE byRes[30]; }NET_DVR_PRESETCFG, *LPNET_DVR_PRESETCFG; typedef struct tagNET_DVR_PTZCRUISE_INFO { DWORD dwSize; DWORD dwPtzCruiseNum; DWORD dwGroupNum; BYTE byRes[8]; }NET_DVR_PTZCRUISE_INFO, *LPNET_DVR_PTZCRUISE_INFO; typedef struct tagNET_DVR_PTZCRUISE_COND { DWORD dwSize; DWORD dwChannel; DWORD dwGroupNO; BYTE byRes[8]; }NET_DVR_PTZCRUISE_COND, *LPNET_DVR_PTZCRUISE_COND; typedef struct tagNET_DVR_PTZCRUISE_POINTCFG { DWORD dwSize; DWORD dwPresetIndex; NET_VCA_POINT struVcaPoint; BYTE byDwell; BYTE bySpeed; WORD wZoomCoordinate; BYTE byRes[28]; }NET_DVR_PTZCRUISE_POINTCFG, *LPNET_DVR_PTZCRUISE_POINTCFG; typedef struct tagNET_DVR_PTZCRUISECFG { DWORD dwSize; DWORD dwCruiseRoute; NET_DVR_PTZCRUISE_POINTCFG struCruisePoint[MAX_PTZCRUISE_POINT_NUM]; BYTE byRes[32]; }NET_DVR_PTZCRUISECFG, *LPNET_DVR_PTZCRUISECFG; typedef struct tagNET_DVR_MOTION_TRACK_CFG { DWORD dwSize; BYTE byEnableTrack; BYTE byRes[63]; }NET_DVR_MOTION_TRACK_CFG, *LPNET_DVR_MOTION_TRACK_CFG; typedef struct tagNET_DVR_DAY_SCHEDULE { BYTE byWorkMode ; BYTE byRes1[3] ; NET_DVR_SCHEDTIME struTime[MAX_TIMESEGMENT_V30]; BYTE byRes2[8]; }NET_DVR_DAY_SCHEDULE ,*LPNET_DVR_DAY_SCHEDULE; typedef struct tagNET_DVR_SCHEDULE_AUTO_TRACK_CFG { DWORD dwSize; BYTE byEnableTrack; BYTE byRes1[3] ; NET_DVR_DAY_SCHEDULE struSchedule[MAX_DAYS]; BYTE byRes2[128]; }NET_DVR_SCHEDULE_AUTO_TRACK_CFG,*LPNET_DVR_SCHEDULE_AUTO_TRACK_CFG; typedef struct tagNET_DVR_I_FRAME { DWORD dwSize; BYTE sStreamID[STREAM_ID_LEN] ; DWORD dwChan; BYTE byStreamType; BYTE byRes[63]; } NET_DVR_I_FRAME, *LPNET_DVR_I_FRAME; typedef struct tagNET_DVR_REBOOT_TIME { BYTE byDate; BYTE byHour; BYTE byMinute; BYTE byRes1; BYTE byRebootMode; BYTE byRes[11]; }NET_DVR_REBOOT_TIME,*LPNET_DVR_REBOOT_TIME; typedef struct tagNET_DVR_AUTO_REBOOT_CFG { DWORD dwSize; NET_DVR_REBOOT_TIME struRebootTime; }NET_DVR_AUTO_REBOOT_CFG,*LPNET_DVR_AUTO_REBOOT_CFG; #define NET_DVR_GPS_FINDING 0 #define NET_DVR_GPS_RECV 1 #define NET_DVR_GPS_OVER 2 #define NET_DVR_GPS_EXCEPTION 3 typedef struct tagNET_DVR_MENU_OUTPUT_MODE { DWORD dwSize; BYTE byMenuOutputMode; BYTE byRes[63]; }NET_DVR_MENU_OUTPUT_MODE, *LPNET_DVR_MENU_OUTPUT_MODE; typedef struct tagNET_DVR_MB_IPADDR { NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes[2]; }NET_DVR_MB_IPADDR,*LPNET_DVR_MB_IPADDR; typedef struct tagNET_DVR_MB_WVSPARA { NET_DVR_MB_IPADDR struWVSAddr; BYTE byPuid[NAME_LEN]; BYTE byPassword[PASSWD_LEN]; BYTE byRes[8]; }NET_DVR_MB_WVSPARA, *LPNET_DVR_MB_WVSPARA; typedef struct tagNET_DVR_MB_EHOMEPARA { NET_DVR_MB_IPADDR struEHomeAddr; BYTE byPuid[NAME_LEN]; }NET_DVR_MB_EHOMEPARA, *LPNET_DVR_MB_EHOMEPARA; typedef struct tagNET_DVR_MB_PLATFORMPARA { DWORD dwSize; BYTE byNetEnvironment; BYTE byCurPlatForm; BYTE byRes1[2]; NET_DVR_MB_WVSPARA struWVSPara; NET_DVR_MB_EHOMEPARA struMbEHpara; BYTE byRes2[64]; }NET_DVR_MB_PLATFORMPARA, *LPNET_DVR_MB_PLATFORMPARA; typedef struct tagNET_DVR_MB_GPS_STATUS { BYTE byGPSModule; BYTE byPositionStatus; BYTE bySignalStrength; BYTE byres[5]; }NET_DVR_MB_GPS_STATUS, *LPNET_DVR_MB_GPS_STATUS; typedef struct tagNET_DVR_MB_GSENSOR_STATUS { BYTE byGsensorModule; BYTE byCurAccX[10]; BYTE byCurAccY[10]; BYTE byCurAccZ[10]; BYTE byRefAccX[10]; BYTE byRefAccY[10]; BYTE byRefAccZ[10]; BYTE byres[3]; }NET_DVR_MB_GSENSOR_STATUS, *LPNET_DVR_MB_GSENSOR_STATUS; #define IP_ADDR_LEN 16 #define IW_ESSID_MAX_SIZE 32 typedef struct tagNET_DVR_MB_WIFI_STATUS { BYTE byEnableWiFi; BYTE byWiFiConnectStatus; BYTE bySignalStrength; BYTE byIPaddress[IP_ADDR_LEN]; BYTE byEssid[IW_ESSID_MAX_SIZE]; BYTE byres[5]; }NET_DVR_MB_WIFI_STATUS,*LPNET_DVR_MB_WIFI_STATUS; typedef struct tagNET_DVR_MB_PLATFORM_STATUS { BYTE byCurPlat; BYTE byLoginStatus; BYTE byExceptionInfo; BYTE byres[5]; }NET_DVR_MB_PLATFORM_STATUS, *LPNET_DVR_MB_PLATFORM_STATUS; typedef struct tagNET_DVR_MB_MOBILEDEV_STATUS { DWORD dwSize; union { NET_DVR_MB_GPS_STATUS struGPSStatus; NET_DVR_MB_GSENSOR_STATUS struGSensorStatus; NET_DVR_MB_WIFI_STATUS struWiFiStatus; NET_DVR_MB_PLATFORM_STATUS struPlatformStatus; }mobileStatus; }NET_DVR_MB_MOBILEDEV_STATUS, *LPNET_DVR_MB_MOBILEDEV_STATUS; #define NET_DVR_GPS_STATUS 0 #define NET_DVR_GSENSOR_STATUS 1 #define NET_DVR_WIFI_STATUS 2 #define NET_DVR_PLATFORM_STATUS 3 typedef struct tagNET_DVR_GPS_INFO { BYTE byDirection[2]; BYTE bySvs; BYTE byLocateMode; WORD wHDOP; WORD wHeight; DWORD dwLatitude; DWORD dwLongitude; DWORD dwVehicleSpeed; DWORD dwVehicleDirection; BYTE byRes[8]; }NET_DVR_GPS_INFO,*LPNET_DVR_GPS_INFO; typedef struct _NET_DVR_GPS_STATUS_ALARM_ { DWORD dwSize; NET_DVR_TIME_V30 struGPSTime; NET_DVR_GPS_INFO struGPSInfo; BYTE byRetransFlag; BYTE byNeedsResponse; BYTE byType; BYTE byBatteryRemaining; int iRollAngle; int iPitchAngle; WORD wRelativeHeight; WORD wVerticalSpeed; BYTE byRes2[160]; }NET_DVR_GPS_STATUS_ALARM, *LPNET_DVR_GPS_STATUS_ALARM; typedef struct tagNTE_DVR_GPS_DATA { NET_DVR_GPS_INFO struGPSInfo; NET_DVR_TIME struTime; BYTE byRes[12]; }NET_DVR_GPS_DATA,*LPNET_DVR_GPS_DATA; typedef struct tagNET_DVR_GET_GPS_DATA_PAPAM { DWORD dwCmdType; union { struct { NET_DVR_TIME struBeginTime; NET_DVR_TIME struEndTime; DWORD dwInterval; BYTE byRes[76]; }TimeSeg; struct { NET_DVR_TIME struTimePoint; BYTE byRes[104]; }TimePoint; }GpsDataParam; }NET_DVR_GET_GPS_DATA_PARAM,*LPNET_DVR_GET_GPS_DATA_PARAM; #define NET_SDK_MAX_CARD_LEN 32 typedef struct _NET_DVR_TAG_INFO_ALARM_ { DWORD dwSize; BYTE byCardNo[NET_SDK_MAX_CARD_LEN]; int iRssi; BYTE byIndexCode[64]; NET_DVR_TIME_V30 struAcquisitionTime; BYTE byRFIDInfo[32]; BYTE byRFIDInfoLen; BYTE byVoltageLow; BYTE byAlarmFlag; BYTE byRes[49]; }NET_DVR_TAG_INFO_ALARM, *LPNET_DVR_TAG_INFO_ALARM; typedef struct tagNET_DVR_SDKLOCAL_CFG { BYTE byEnableAbilityParse; BYTE byVoiceComMode; BYTE byLoginWithSimXml; BYTE byCompatibleType; BYTE byRes[380]; BYTE byProtectKey[128]; }NET_DVR_SDKLOCAL_CFG, *LPNET_DVR_SDKLOCAL_CFG; typedef struct tagNET_DVR_LOCAL_ABILITY_PARSE_CFG { BYTE byEnableAbilityParse; BYTE byRes[127]; }NET_DVR_LOCAL_ABILITY_PARSE_CFG, *LPNET_DVR_LOCAL_ABILITY_PARSE_CFG; typedef struct tagNET_DVR_LOCAL_TALK_MODE_CFG { BYTE byTalkMode; BYTE byRes[127]; }NET_DVR_LOCAL_TALK_MODE_CFG, *LPNET_DVR_LOCAL_TALK_MODE_CFG; typedef struct tagNET_DVR_LOCAL_PROTECT_KEY_CFG { BYTE byProtectKey[128]; BYTE byRes[128]; }NET_DVR_LOCAL_PROTECT_KEY_CFG, *LPNET_DVR_LOCAL_PROTECT_KEY_CFG; typedef struct tagNET_DVR_SIMXML_LOGIN { BYTE byLoginWithSimXml; BYTE byRes[127]; }NET_DVR_SIMXML_LOGIN, *LPNET_DVR_SIMXML_LOGIN; typedef struct tagNET_DVR_MESSAGE_CALLBACK_PARAM_V51 { BYTE byVcaAlarmJsonType; BYTE byRes[63]; }NET_DVR_MESSAGE_CALLBACK_PARAM_V51,*LPNET_DVR_MESSAGE_CALLBACK_PARAM_V51; typedef enum tagNET_SDK_LOCAL_CFG_TYPE { NET_SDK_LOCAL_CFG_TYPE_TCP_PORT_BIND = 0, NET_SDK_LOCAL_CFG_TYPE_UDP_PORT_BIND, NET_SDK_LOCAL_CFG_TYPE_MEM_POOL, NET_SDK_LOCAL_CFG_TYPE_MODULE_RECV_TIMEOUT, NET_SDK_LOCAL_CFG_TYPE_ABILITY_PARSE, NET_SDK_LOCAL_CFG_TYPE_TALK_MODE, NET_SDK_LOCAL_CFG_TYPE_PROTECT_KEY, NET_SDK_LOCAL_CFG_TYPE_CFG_VERSION, NET_SDK_LOCAL_CFG_TYPE_RTSP_PARAMS, NET_SDK_LOCAL_CFG_TYPE_SIMXML_LOGIN, NET_SDK_LOCAL_CFG_TYPE_CHECK_DEV, NET_SDK_LOCAL_CFG_TYPE_SECURITY, NET_SDK_LOCAL_CFG_TYPE_EZVIZLIB_PATH, NET_SDK_LOCAL_CFG_TYPE_CHAR_ENCODE, NET_SDK_LOCAL_CFG_TYPE_PROXYS, NET_DVR_LOCAL_CFG_TYPE_LOG, NET_DVR_LOCAL_CFG_TYPE_STREAM_CALLBACK, NET_DVR_LOCAL_CFG_TYPE_GENERAL, NET_DVR_LOCAL_CFG_TYPE_PTZ, NET_DVR_LOCAL_CFG_MESSAGE_CALLBACK_V51, NET_SDK_LOCAL_CFG_CERTIFICATION, }NET_SDK_LOCAL_CFG_TYPE; typedef enum tagNET_SDK_EXCEPTION_CALLBACK_TYPE { NET_SDK_EXCEPTION_CALLBACK_BY_POOL = 0, NET_SDK_EXCEPTION_CALLBACK_DIRECTLY = 1, }NET_SDK_EXCEPTION_CALLBACK_TYPE; typedef struct tagNET_DVR_LOCAL_GENERAL_CFG { BYTE byExceptionCbDirectly; BYTE byNotSplitRecordFile; BYTE byResumeUpgradeEnable; BYTE byAlarmJsonPictureSeparate; BYTE byRes[4]; UINT64 i64FileSize; DWORD dwResumeUpgradeTimeout; BYTE byAlarmReconnectMode; BYTE byRes1[235]; }NET_DVR_LOCAL_GENERAL_CFG, *LPNET_DVR_LOCAL_GENERAL_CFG; typedef struct tagNET_DVR_LOCAL_STREAM_CALLBACK_CFG { BYTE byPlayBackEndFlag; BYTE byRes[255]; }NET_DVR_LOCAL_STREAM_CALLBACK_CFG, *LPNET_DVR_LOCAL_STREAM_CALLBACK_CFG; typedef struct tagNET_DVR_LOCAL_LOG_CFG { WORD wSDKLogNum; BYTE byRes[254]; }NET_DVR_LOCAL_LOG_CFG, *LPNET_DVR_LOCAL_LOG_CFG; typedef int(* CHAR_ENCODE_CONVERT)(char * pInput, DWORD dwInputLen, DWORD dwInEncodeType, char *pOutput, DWORD dwOutputLen, DWORD dwOutEncodeType); typedef struct tagNET_DVR_LOCAL_BYTE_ENCODE_CONVERT { CHAR_ENCODE_CONVERT fnCharConvertCallBack; BYTE byRes[256]; }NET_DVR_LOCAL_BYTE_ENCODE_CONVERT, *LPNET_DVR_LOCAL_BYTE_ENCODE_CONVERT; typedef struct tagNET_DVR_LOCAL_SECURITY { BYTE bySecurityLevel; BYTE byRes[255]; }NET_DVR_LOCAL_SECURITY, *LPNET_DVR_LOCAL_SECURITY; typedef struct tagNET_DVR_LOCAL_CHECK_DEV { DWORD dwCheckOnlineTimeout; DWORD dwCheckOnlineNetFailMax; BYTE byRes[256]; }NET_DVR_LOCAL_CHECK_DEV,*LPNET_DVR_LOCAL_CHECK_DEV; typedef struct tagNET_DVR_LOCAL_PTZ_CFG { BYTE byWithoutRecv; BYTE byRes[63]; }NET_DVR_LOCAL_PTZ_CFG, *LPNET_DVR_LOCAL_PTZ_CFG; typedef struct tagNET_DVR_LOCAL_CFG_VERSION { BYTE byVersion; BYTE byRes[63]; }NET_DVR_LOCAL_CFG_VERSION, *LPNET_DVR_LOCAL_CFG_VERSION; typedef struct tagNET_DVR_LOCAL_TCP_PORT_BIND_CFG { WORD wLocalBindTcpMinPort; WORD wLocalBindTcpMaxPort; BYTE byRes[60]; }NET_DVR_LOCAL_TCP_PORT_BIND_CFG, *LPNET_DVR_LOCAL_TCP_PORT_BIND_CFG; typedef struct tagNET_DVR_LOCAL_UDP_PORT_BIND_CFG { WORD wLocalBindUdpMinPort; WORD wLocalBindUdpMaxPort; BYTE byRes[60]; }NET_DVR_LOCAL_UDP_PORT_BIND_CFG, *LPNET_DVR_LOCAL_UDP_PORT_BIND_CFG; typedef struct tagNET_DVR_LOCAL_MEM_POOL_CFG { DWORD dwAlarmMaxBlockNum; DWORD dwAlarmReleaseInterval; DWORD dwObjectReleaseInterval; BYTE byRes[508]; }NET_DVR_LOCAL_MEM_POOL_CFG, *LPNET_DVR_LOCAL_MEM_POOL_CFG; typedef struct tagNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG { DWORD dwPreviewTime; DWORD dwAlarmTime; DWORD dwVodTime; DWORD dwElse; BYTE byRes[512]; }NET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG, *LPNET_DVR_LOCAL_MODULE_RECV_TIMEOUT_CFG; #define MAX_CERTIFICATE_ISSUER_LEN 64 #define MAX_CERTIFICATE_VALIDITY_LEN 128 #define MAX_CERTIFICATE_SUBJECT_LEN 64 typedef struct tagNET_DVR_CETTIFICATE_INFO { DWORD dwSize; char szIssuer[MAX_CERTIFICATE_ISSUER_LEN]; char szSubject[MAX_CERTIFICATE_SUBJECT_LEN]; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byRes1[1024]; }NET_DVR_CETTIFICATE_INFO, *LPNET_DVR_CETTIFICATE_INFO; typedef BOOL(*fnCertVerifyResultCallBack) (DWORD uiResult, LPNET_DVR_CETTIFICATE_INFO lpCertificateInfo, char *pUserData); #define MAX_FILE_PATH_LEN 256 typedef struct tagNET_DVR_LOCAL_CERTIFICATION { char szLoadPath[MAX_FILE_PATH_LEN]; fnCertVerifyResultCallBack fnCB; void* pUserData; BYTE byRes[64]; }NET_DVR_LOCAL_CERTIFICATION, *LPNET_DVR_LOCAL_CERTIFICATION; typedef struct tagNET_DVR_RTSP_PARAMS_CFG { DWORD dwMaxBuffRoomNum; BYTE byUseSort; BYTE byRes[123]; }NET_DVR_RTSP_PARAMS_CFG, *LPNET_DVR_RTSP_PARAMS_CFG; typedef struct tagNET_DVR_OPTICAL_CHANNEL_BIND { WORD wChannelIndex; WORD wSubChannel; BYTE byBind; BYTE byRes[3]; }NET_DVR_OPTICAL_CHANNEL_BIND,*LPNET_DVR_OPTICAL_CHANNEL_BIND; typedef struct tagNET_DVR_OPTICAL_CHANNEL_CFG { DWORD dwSize; NET_DVR_OPTICAL_CHANNEL_BIND struBindVideo; NET_DVR_OPTICAL_CHANNEL_BIND struBindAudio; BYTE byRes[16]; }NET_DVR_OPTICAL_CHANNEL_CFG,*LPNET_DVR_OPTICAL_CHANNEL_CFG; typedef struct tagNET_DVR_OPTICAL_INFO { DWORD dwSize; BYTE bySlotNum; BYTE byChannel; BYTE byRes[18]; }NET_DVR_OPTICAL_INFO,*LPNET_DVR_OPTICAL_INFO; typedef struct tagNET_DVR_AUDIO_SURCHAN_CFG { DWORD dwSize; BYTE byStatus; BYTE byRes1[3]; DWORD dwSubWinNum; DWORD dwSurChanNum; NET_DVR_IPADDR struIpaddr; WORD wPort; BYTE byRes2[14]; }NET_DVR_AUDIO_SURCHAN_CFG, *LPNET_DVR_AUDIO_SURCHAN_CFG; #define MAX_ETHERNET_PORT_NUM 8 typedef struct tagNET_DVR_ETHERNET_CHANNEL_INFO { DWORD dwSize; BYTE byConverge[MAX_ETHERNET_PORT_NUM]; BYTE byRes[32]; }NET_DVR_ETHERNET_CHANNEL_INFO,*LPNET_DVR_ETHERNET_CHANNEL_INFO; typedef struct tagNET_DVR_SPARTAN_INFO { DWORD dwSize; BYTE bySpartanStatus; BYTE byRes[31]; }NET_DVR_SPARTAN_INFO,*LPNET_DVR_SPARTAN_INFO; typedef struct tagNET_DVR_IPADDR_FILTERCFG { DWORD dwSize; BYTE byEnable; BYTE byFilterType; BYTE byRes[18]; BYTE byIPAddr[1024]; }NET_DVR_IPADDR_FILTERCFG, *LPNET_DVR_IPADDR_FILTERCFG; typedef struct tagNET_DVR_LOGO_OVERLAYCFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwCoordinateX; DWORD dwCoordinateY; WORD wPicWidth; WORD wPicHeight; BYTE byRes[16]; }NET_DVR_LOGO_OVERLAYCFG,*LPNET_DVR_LOGO_OVERLAYCFG; typedef struct tagNET_DVR_INVALID_DISK_PARAM { NET_DVR_STRUCTHEAD struStructHead; DWORD dwDiskNo; BYTE byDelAll; BYTE byres[31]; }NET_DVR_INVALID_DISK_PARAM, *LPNET_DVR_INVALID_DISK_PARAM; typedef struct tagNET_DVR_INVALID_MOUNT_DISK_PARAM { NET_DVR_STRUCTHEAD struStructHead; DWORD dwDiskNo; BYTE byres[32]; }NET_DVR_MOUNT_DISK_PARAM, *LPNET_DVR_MOUNT_DISK_PARAM; typedef enum { NET_SDK_CALLBACK_TYPE_STATUS = 0, NET_SDK_CALLBACK_TYPE_PROGRESS, NET_SDK_CALLBACK_TYPE_DATA }NET_SDK_CALLBACK_TYPE; typedef enum { NET_SDK_CALLBACK_STATUS_SUCCESS = 1000, NET_SDK_CALLBACK_STATUS_PROCESSING, NET_SDK_CALLBACK_STATUS_FAILED, NET_SDK_CALLBACK_STATUS_EXCEPTION, NET_SDK_CALLBACK_STATUS_LANGUAGE_MISMATCH, NET_SDK_CALLBACK_STATUS_DEV_TYPE_MISMATCH, NET_DVR_CALLBACK_STATUS_SEND_WAIT, }NET_SDK_CALLBACK_STATUS_NORMAL; #define NET_SDK_OKC_STATUS_SUCCESS 1000 #define NET_SDK_OKC_STATUS_FAILED 1002 #define NET_SDK_OKC_STATUS_START_CONFIG 1003 #define NET_SDK_OKC_CHECK_HD 1004 #define NET_SDK_OKC_INIT_HD 1005 #define NET_SDK_OKC_CREATE_RAID_OR_SINGLE_DISK 1006 #define NET_SDK_OKC_INIT_CVR_SERVICE 1007 #define NET_SDK_OKC_CREATE_RECORD_VOLUME 1008 #define NET_SDK_OKC_ERR_LOAD_CONF_FAILED 1009 #define NET_SDK_OKC_ERR_NOT_SUPPORT_RAID_LEVLE 1010 #define NET_SDK_OKC_ERR_CONFIGURATION_CONFLICT 1011 #define NET_SDK_OKC_ERR_GET_DISK_INFO_FAILED 1012 #define NET_SDK_OKC_ERR_CHECK_DISK_FAILED 1013 #define NET_SDK_OKC_ERR_INIT_DISK_FAILED 1014 #define NET_SDK_OKC_ERR_DISK_CAPACITY_SMALL 1015 #define NET_SDK_OKC_ERR_BOTH_SV_NS 1016 #define NET_SDK_OKC_ERR_CREATE_RAID_FAILED 1017 #define NET_SDK_OKC_ERR_GET_RAID_FAILED 1018 #define NET_SDK_OKC_ERR_CREATE_SPARE_FAILED 1019 #define NET_SDK_OKC_ERR_CREATE_STORAGE_POOL_FAILED 1020 #define NET_SDK_OKC_ERR_GET_POOL_INFO_FAILED 1021 #define NET_SDK_OKC_ERR_CREATE_LUN_FAILED 1022 #define NET_SDK_OKC_ERR_GET_LUN_INFO_FAILED 1023 #define NET_SDK_OKC_ERR_CREATE_BACKUP_FAILED 1024 #define NET_SDK_OKC_ERR_GET_BACKUP_FAILED 1025 #define NET_SDK_OKC_ERR_CREATE_PRIVATE_LUN_FAILED 1026 #define NET_SDK_OKC_ERR_CREATE_RV_FAILED 1027 #define NET_SDK_OKC_ERR_CREATE_ARCH_RV_FAILED 1028 #define NET_SDK_OKC_ERR_START_CVR_SERVICE_FAILED 1029 #define NET_SDK_OKC_CREATING_ARRAY 1030 #define NET_SDK_OKC_CREATING_STORAGE_POOL 1031 #define NET_SDK_OKC_CREATING_LUN_VOL 1032 #define NET_SDK_OKC_CREATING_ISCSI 1033 #define NET_SDK_OKC_ERR_HOT_SPARE_CONFICT 1034 #define NET_SDK_OKC_ERR_STORAGE_POOL_CONFICT 1035 #define NET_SDK_OKC_ERR_RAID_CONFLICT 1036 #define NET_SDK_OKC_ERR_OPEN_ISCSI_FAILED 1037 #define NET_SDK_OKC_ERR_DEVICE_NOSUPPORT_SAN 1038 #define NET_SDK_OKC_ERR_SAPRE_NUM_EXCEED 1101 #define NET_SDK_OKC_ERR_CREATE_PIC_VOLUME_FAILED 1102 typedef enum { NET_SDK_GET_NEXT_STATUS_SUCCESS = 1000, NET_SDK_GET_NETX_STATUS_NEED_WAIT, NET_SDK_GET_NEXT_STATUS_FINISH, NET_SDK_GET_NEXT_STATUS_FAILED, }NET_SDK_GET_NEXT_STATUS; typedef enum tagNET_SDK_IPC_CFG_FILE_ERR_CODE { NET_SDK_IPC_CFG_FILE_NO_ERR = 0, NET_SDK_IPC_CFG_FILE_ERR_CODE_CHANNEL_INVALID = 1, NET_SDK_IPC_CFG_FILE_ERR_CODE_CHANNEL_DUPLICATE, NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_INVALID, NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_DUPLICATE, NET_SDK_IPC_CFG_FILE_ERR_CODE_IP_CONFLICT_WITH_LOCAL, NET_SDK_IPC_CFG_FILE_ERR_CODE_PROTOCOL_INVALID, NET_SDK_IPC_CFG_FILE_ERR_CODE_PORT_INVALID, NET_SDK_IPC_CFG_FILE_ERR_CODE_DEVICE_CHANNEL_ERR, NET_SDK_IPC_CFG_FILE_ERR_CODE_USER_NAME_ERR, NET_SDK_IPC_CFG_FILE_ERR_CODE_PASSWD_ERR, NET_SDK_IPC_CFG_FILE_ERR_CODE_TRANSPORT_PROTOCOL_INVALID }NET_SDK_IPC_CFG_FILE_ERR_CODE; typedef enum { NET_SDK_UPGRADE_IPC_INVALID = 0, NET_SDK_UPGRADE_IPC_SUCCESS, NET_SDK_UPGRADE_IPC_OFFLINE, NET_SDK_UPGRADE_IPC_NOT_SUPPORT, NET_SDK_UPGRADE_IPC_LANGUAGE_MISMATCH, NET_SDK_UPGRADE_IPC_WRITE_FLASH_FAILED, NET_SDK_UPGRADE_IPC_OTHER_ERROR }NET_SDK_UPGRADE_IPC_ERR_CODE; typedef enum { NET_SDK_REMOTE_CONFIG_STATUS_SUCCESS = 1001, NET_SDK_REMOTE_CONFIG_STATUS_FAILED, NET_SDK_REMOTE_CONFIG_STATUS_PROCESSING }NET_SDK_REMOTE_CONFIG_STATUS; #define MAX_CODE_CARD_SUPPORTDISPNUMS 8 #define MAX_SUPPORT_RES 32 typedef enum _BOARD_TYPE { DS4004HC_BOARD =2, DS4008HC_BOARD =3, DS4016HC_BOARD =4, DS4001HF_BOARD =5, DS4004HF_BOARD =6, DS4002MD_BOARD =7, DS4004MD_BOARD =8, DS4016HCS_BOARD =9, DS4004HC_PLUS_BOARD =13, DS4008HC_PLUS_BOARD =14, DS4016HC_PLUS_BOARD =15, DS4008HF_BOARD =16, DS4008MD_BOARD =17, DS4008HS_BOARD =18, DS4016HS_BOARD =19, DS4108HCV_BOARD =20, DS4116HCV_BOARD =21, DS5016HC_BOARD =22, DS4208HFV_BOARD =23, DS4216HC_BOARD =24, DS4216HFV_BOARD =25, DS5008HF_BOARD =26, DS5116HF_BOARD =27, DS5216HC_BOARD =28, DS5208HF_BOARD =29, DS5216HF_BOARD =30, DS4101HD_BOARD =31, DS4102HD_BOARD =32, DS4104HD_BOARD =33, DS4002MD_PLUS_BOARD =34, DS4004MD_PLUS_BOARD =35, DS4204HFV_BOARD =36, DS4308HCV_BOARD =37, DS4308HFV_BOARD =38, DS4316HCV_BOARD =39, DS4316HFV_BOARD =40, DS4304HD_BOARD =41, DS4304HFH_BOARD =42, DS4304HFV_BOARD =43, DS4302HFH_BOARD =44, DS5316HF_BOARD =45, DS4308HW_BOARD =46, DS4316HW_BOARD =47, DS4308MD_BOARD =48, UNKNOWN_BOARD_TYPE =0xffffffff, }BOARD_TYPE; typedef struct tagNET_DVR_CODECARD_ABILITY { BYTE byCardType; BYTE byCodeNums; BYTE byDispNums; BYTE byCodeStartIdx; BYTE byDispStartIdx; BYTE byRes1[3]; DWORD dwVgaSupportResolution[MAX_SUPPORT_RES]; DWORD dwHdmiSupportResolution[MAX_SUPPORT_RES]; DWORD dwDviSupportResolution[MAX_SUPPORT_RES]; DWORD dwYpbprSupportResolution[MAX_SUPPORT_RES]; BYTE byDispFormat[MAX_CODE_CARD_SUPPORTDISPNUMS]; BYTE byWindowMode[MAX_CODE_CARD_SUPPORTDISPNUMS][12]; BYTE byRes2[36]; }NET_DVR_CODECARD_ABILITY,*LPNET_DVR_CODECARD_ABILITY; #define MAX_CODE_CARD_NUM 8 typedef struct tagNET_DVR_CODESVR_ABILITY { DWORD dwSize; BYTE byCardNums; BYTE byStartChan; BYTE byRes1[2]; NET_DVR_CODECARD_ABILITY struCodeCardAbility[MAX_CODE_CARD_NUM]; BYTE byRes2[64]; }NET_DVR_CODESVR_ABILITY, *LPNET_DVR_CODESVR_ABILITY; typedef struct tagNET_DVR_CODER_SERVER_OUTPUT_CFG { DWORD dwSize; BYTE byDispChanType; BYTE byVedioFormat; BYTE byRes1[2]; DWORD dwResolution; DWORD dwWindowMode; BYTE byRes2[64]; }NET_DVR_CODER_SERVER_OUTPUT_CFG,*LPNET_DVR_CODER_SERVER_OUTPUT_CFG; typedef struct tagNET_DVR_DISPLAY_START_INFO { DWORD dwSize; DWORD dwDisplayChan; DWORD dwCodeChan; DWORD dwWinNum; BYTE byEnableAudio; BYTE byRes[31]; }NET_DVR_DISPLAY_START_INFO,*LPNET_DVR_DISPLAY_START_INFO; typedef struct tagNET_DVR_CODER_WINDOW_INFO { DWORD dwSize; DWORD dwDisplayChan; DWORD dwWinNum; BYTE byRes[16]; }NET_DVR_CODER_WINDOW_INFO,*LPNET_DVR_CODER_WINDOW_INFO; typedef struct tagNET_DVR_WINDOW_STATUS { DWORD dwSize; DWORD dwCodeChan; BYTE byDisplay; BYTE byAudio; BYTE byRes[30]; }NET_DVR_WINDOW_STATUS,*LPNET_DVR_WINDOW_STATUS; typedef struct tagNET_DVR_RECORD_LOCK_PERCENTAGE { DWORD dwSize; BYTE byPercentage; BYTE byRes[31]; }NET_DVR_RECORD_LOCK_PERCENTAGE, *LPNET_DVR_RECORD_LOCK_PERCENTAGE; typedef struct tagNET_DVR_UPDATE_RECORD_INFO { DWORD dwSize; NET_DVR_STREAM_INFO struStreasmInfo; DWORD dwBeginTime; DWORD dwEndTime; BYTE byRes[32]; }NET_DVR_UPDATE_RECORD_INFO, *LPNET_DVR_UPDATE_RECORD_INFO; typedef struct tagNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA { NET_DVR_STREAM_INFO struStreamInfo; DWORD dwCmdType; DWORD dwRecordTimeLen; BYTE byEventID[MAX_EVENTID_LEN]; DWORD dwLockDuration; BYTE byBackUp; BYTE byPreRecord; BYTE byRes[122]; }NET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA, *LPNET_DVR_CMD_TRIGGER_PERIOD_RECORD_PARA; typedef struct tagNET_DVR_LOCK_FILE_BY_NAME_PARA { BYTE byFileName[NAME_LEN]; DWORD dwLockDuration; BYTE byRes[512]; }NET_DVR_LOCK_FILE_BY_NAME_PARA, *LPNET_DVR_LOCK_FILE_BY_NAME_PARA; typedef struct tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; DWORD dwStreamType; BYTE byRes[32]; }NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND, *LPNET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND; typedef struct tagNET_DVR_MULTI_STREAM_COMPRESSIONCFG { DWORD dwSize; DWORD dwStreamType; NET_DVR_COMPRESSION_INFO_V30 struStreamPara; BYTE byRes[80]; }NET_DVR_MULTI_STREAM_COMPRESSIONCFG, *LPNET_DVR_MULTI_STREAM_COMPRESSIONCFG; typedef struct tagNET_DVR_PUSHALARMINFO_V40 { DWORD dwAlarmType; union { BYTE byRes[300]; struct { DWORD dwAlarmInputNumber; BYTE byAlarmOutputNumber[MAX_ALARMOUT_V30]; BYTE byAlarmRelateChannel[MAX_CHANNUM_V30]; BYTE byRes1[97]; BYTE byDeviceID[NAME_LEN]; BYTE byRes2[7]; }struIOAlarm; struct { BYTE byStreamID[STREAM_ID_LEN]; BYTE byRes1[132]; BYTE byChannel[MAX_CHANNUM_V30]; BYTE byRes2[33]; BYTE byDeviceID[NAME_LEN]; BYTE byRes3[7]; }struStreamIDorChannel; struct { BYTE byRes1[228]; BYTE byDiskNumber[MAX_DISKNUM_V30]; BYTE byDeviceID[NAME_LEN]; BYTE byRes2[7]; }struDiskAlarm; }uAlarmInfo; }NET_DVR_PUSHALARMINFO_V40, *LPNET_DVR_PUSHALARMINFO_V40; typedef struct tagNET_DVR_RECORD_PACK { NET_DVR_STRUCTHEAD struStruceHead; DWORD dwPackageInterval; BYTE byRes[32]; }NET_DVR_RECORD_PACK,*LPNET_DVR_RECORD_PACK; #define NET_DVR_FIND_NAS_DIRECTORY 6161 #define NET_DVR_NAS_FINDING 0 #define NET_DVR_NAS_RECV 1 #define NET_DVR_NAS_OVER 2 #define NET_DVR_NAS_EXCEPTION 3 typedef struct tagNET_DVR_NET_DISK_SERACH_PARAM { NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes[10]; }NET_DVR_NET_DISK_SERACH_PARAM, *LPNET_DVR_NET_DISK_SERACH_PARAM; typedef struct tagNET_DVR_NET_DISK_SERACH_RET { BYTE byDirectory[128]; BYTE byRes[20]; }NET_DVR_NET_DISK_SERACH_RET, *LPNET_DVR_NET_DISK_SERACH_RET; typedef struct tagNET_DVR_WD1_CFG { NET_DVR_STRUCTHEAD struStruceHead; BYTE byWD1Enable; BYTE byRes[31]; }NET_DVR_WD1_CFG, *LPNET_DVR_WD1_CFG; typedef struct tagNET_DVR_FTPCFG_V40 { NET_DVR_STRUCTHEAD struStruceHead; BYTE byEnableFTP; BYTE byProtocolType; WORD wFTPPort; union { struct { BYTE szDomain[64]; BYTE byRes1[80]; }struDomain; struct { NET_DVR_IPADDR struIp; }struAddrIP; }unionServer; BYTE szUserName[32]; BYTE szPassWORD[16]; BYTE szTopCustomDir[64]; BYTE szSubCustomDir[64]; BYTE byDirLevel; BYTE byTopDirMode; BYTE bySubDirMode; BYTE byType; BYTE byEnableAnony; BYTE byAddresType; BYTE byFTPPicType; BYTE byPicArchivingInterval; NET_DVR_PICTURE_NAME_EX struPicNameRule; BYTE byPicNameRuleType; BYTE byRes[203]; }NET_DVR_FTPCFG_V40, *LPNET_DVR_FTPCFG_V40; typedef struct tagNET_DVR_FTP_TYPE { BYTE byType; BYTE byRes[3]; }NET_DVR_FTP_TYPE, *LPNET_DVR_FTP_TYPE; typedef struct tagNET_DVR_FTP_SERVER_TEST_PARA { DWORD dwSize; BYTE byEnableFTP; BYTE byProtocolType; WORD wFTPPort; union { BYTE byRes[144]; struct { BYTE szDomain[MAX_DOMAIN_NAME]; BYTE byRes1[80]; }struDomain; struct { NET_DVR_IPADDR struIp; }struAddrIP; }unionServer; BYTE szUserName[NAME_LEN]; BYTE szPassWORD[PASSWD_LEN]; BYTE szTopCustomDir[MAX_CUSTOM_DIR]; BYTE szSubCustomDir[MAX_CUSTOM_DIR]; BYTE byDirLevel; BYTE byTopDirMode; BYTE bySubDirMode; BYTE byType; BYTE byEnableAnony; BYTE byAddresType; BYTE byRes2[198]; }NET_DVR_FTP_SERVER_TEST_PARA, *LPNET_DVR_FTP_SERVER_TEST_PARA; #define NET_SDK_ACCESS_KEY_LEN 64 #define NET_SDK_SECRET_KEY_LEN 64 typedef struct tagNET_DVR_SERVER_TEST_PARA { DWORD dwSize; union { BYTE byRes[740]; struct { NET_DVR_NTPPARA struNtpPara; BYTE byRes1[660]; }struNtpPara; struct { NET_DVR_SINGLE_NET_DISK_INFO_V40 struNasPara; BYTE byRes1[260]; }struNasPara; struct { NET_DVR_FTP_SERVER_TEST_PARA struFtpPara; BYTE byRes1[212]; }struFtpPara; struct { NET_DVR_EMAILCFG_V30 struEmailPara; BYTE byRes1[80]; }struEmailPara; struct { NET_DVR_IPADDR struIp; BYTE byRes1[716]; }struIpPara; struct { NET_DVR_IPADDR struIPAdder; WORD wPort; BYTE byRes2[2]; char szUser[CLOUD_NAME_LEN]; char szPassword[CLOUD_PASSWD_LEN]; NET_DVR_POOLPARAM struPoolInfo[16]; BYTE byProtocolType; BYTE byRes3[3]; char szAccessKey[NET_SDK_ACCESS_KEY_LEN]; char szSecretKey[NET_SDK_SECRET_KEY_LEN]; BYTE byRes1[354]; }struCloudStoragePara; struct { BYTE byPhoneNum[MAX_PHONE_NUM]; BYTE byRes1[708]; }struPhoneNumPara; }unionServerPara; BYTE byRes2[800]; }NET_DVR_SERVER_TEST_PARA, *LPNET_DVR_SERVER_TEST_PARA; typedef struct tagNET_DVR_GOP_INFO { DWORD dwSize; LONG lChannel; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE byRes[256]; }NET_DVR_GOP_INFO, *LPNET_DVR_GOP_INFO; typedef struct tagNET_DVR_GOP_INFO_RET { NET_DVR_TIME_V30 struGopTime; DWORD dwDuration; DWORD dwDataSize; BYTE byRes[128]; char* pBuf; }NET_DVR_GOP_INFO_RET, *LPNET_DVR_GOP_INFO_RET; typedef struct tagNET_DVR_GOP_INFO_PASSBACK { DWORD dwSize; NET_DVR_TIME_V30 struTime; DWORD dwDuration; DWORD dwMetaDataSize; DWORD dwPicDataSize; char* pMetaDataBuffer; char* pPicDataBuf; BYTE byRes[32]; }NET_DVR_GOP_INFO_PASSBACK, *LPNET_DVR_GOP_INFO_PASSBACK; typedef struct tagNET_DVR_SINGLEWALLPARAM { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwWallNum; NET_DVR_RECTCFG struRectCfg; BYTE byRes2[36]; }NET_DVR_SINGLEWALLPARAM, *LPNET_DVR_SINGLEWALLPARAM; typedef struct tagNET_DVR_WALLWINCFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[7]; DWORD dwWinNum; DWORD dwLayerIndex; NET_DVR_RECTCFG struWinPosition; DWORD dwDeviceIndex; WORD wInputIndex; BYTE byRes2[14]; }NET_DVR_WALLWINCFG, *LPNET_DVR_WALLWINCFG; typedef struct tagNET_DVR_WALL_INDEX { DWORD dwSize; BYTE byWallNo; BYTE bySceneNo; BYTE byRes1[2]; DWORD dwDeviceID; DWORD dwWindowNo; BYTE byRes2[32]; }NET_DVR_WALL_INDEX, *LPNET_DVR_WALL_INDEX; typedef struct tagNET_DVR_WALLWINPARAM { DWORD dwSize; BYTE byTransparency; BYTE byWinMode; BYTE byEnableSpartan; BYTE byDecResource; BYTE byWndShowMode; BYTE byEnabledFeature; BYTE byFeatureMode; BYTE byRes1; DWORD dwAmplifyingSubWndNo; BYTE byWndTopKeep; BYTE byWndOpenKeep; BYTE byRes[22]; }NET_DVR_WALLWINPARAM, *LPNET_DVR_WALLWINPARAM; typedef struct tagNET_DVR_WALLSCENECFG { DWORD dwSize; BYTE sSceneName[NAME_LEN]; BYTE byEnable; BYTE bySceneIndex; BYTE byRes [78]; }NET_DVR_WALLSCENECFG, *LPNET_DVR_WALLSCENECFG; typedef struct tagNET_DVR_WALLWIN_INFO { DWORD dwSize; DWORD dwWinNum; DWORD dwSubWinNum; DWORD dwWallNo; BYTE byRes[12]; }NET_DVR_WALLWIN_INFO,*LPNET_DVR_WALLWIN_INFO; typedef struct tagNET_DVR_WALL_WIN_STATUS { DWORD dwSize ; BYTE byDecodeStatus; BYTE byStreamType; BYTE byPacketType; BYTE byFpsDecV; BYTE byFpsDecA; BYTE byRes1[7]; DWORD dwDecodedV; DWORD dwDecodedA; WORD wImgW; WORD wImgH; BYTE byStreamMode ; BYTE byRes2[31]; }NET_DVR_WALL_WIN_STATUS, *LPNET_DVR_WALL_WIN_STATUS; typedef struct tagNET_DVR_WININDEX_INFO { DWORD dwWinIndex; DWORD dwSubWinIndex; BYTE byType ; BYTE byWallNo ; BYTE byRes[6]; }NET_DVR_WININDEX_INFO, *LPNET_DVR_WININDEX_INFO; typedef struct tagNET_DVR_ASSOCIATEDDEV_CHAN_INFO { DWORD dwSize ; BYTE sAddress[MAX_DOMAIN_NAME]; WORD wDVRPort; WORD wChannel; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byRes[24]; }NET_DVR_ASSOCIATEDDEV_CHAN_INFO,*LPNET_DVR_ASSOCIATEDDEV_CHAN_INFO; typedef struct tagNET_DVR_WALLOUTPUTPARAM { DWORD dwSize; DWORD dwResolution; NET_DVR_VIDEOEFFECT struRes; BYTE byVideoFormat; BYTE byDisplayMode; BYTE byBackgroundColor; BYTE byUseEDIDResolution; WORD wLEDWidth; WORD wLEDHeight; NET_DVR_RGB_COLOR struBackColor; BYTE byRes2[52]; }NET_DVR_WALLOUTPUTPARAM, *LPNET_DVR_WALLOUTPUTPARAM; #define MAX_UNITEDMATRIX_NUM 8 typedef struct NET_DVR_SUBMATRIXSYSTEMINFO { DWORD dwSequence; BYTE sAddress[MAX_DOMAIN_NAME]; WORD wSubMatrixPort; BYTE byRes1[6]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byRes2[36]; }NET_DVR_SUBMATRIXSYSTEMINFO,*LPNET_DVR_SUBMATRIXSYSTEMINFO; typedef struct tagNET_DVR_UNITEDMATRIXSYSTEMINFO { DWORD dwSize; NET_DVR_SUBMATRIXSYSTEMINFO struMatrixInfo[MAX_UNITEDMATRIX_NUM]; BYTE byRes[32]; }NET_DVR_UNITEDMATRIXSYSTEMINFO,*LPNET_DVR_UNITEDMATRIXSYSTEMINFO; typedef struct tagNET_DVR_SUBSTREAM_SWITCH_CFG { BYTE byAutoSwitchEnable; BYTE byRes1[3]; WORD wSubWndWidth; WORD wSubWndHeight; }NET_DVR_SUBSTREAM_SWITCH_CFG, *LPNET_DVR_SUBSTREAM_SWITCH_CFG; typedef struct tagNET_DVR_WALL_CFG { DWORD dwSize; BYTE byTransparency; BYTE byWinStaticMode; BYTE byStreamFailedMode; BYTE byEnabledOverlayLogo; NET_DVR_SUBSTREAM_SWITCH_CFG struSubStreamSwitch; BYTE byLEDShowMode; BYTE byLowLatencyMode; BYTE byRes[50]; }NET_DVR_WALL_CFG, *LPNET_DVR_WALL_CFG; typedef struct tagNET_DVR_LEDDISPLAYINFO { DWORD dwSize; BYTE byAddressType; BYTE byRes1[3]; union { struct { BYTE szDomain[MAX_DOMAIN_NAME]; BYTE byRes1[80]; }struDomain; struct { NET_DVR_IPADDR struIp; } struAddrIP; }unionServer; char szDisplayInfo[MAX_LEDDISPLAYINFO_LEN]; BYTE byRes[128]; }NET_DVR_LEDDISPLAYINFO,*LPNET_DVR_LEDDISPLAYINFO; typedef struct tagNET_DVR_LOW_LIGHT_CFG { DWORD dwSize; BYTE byLowLightLimt; BYTE byLowLightLimtLevel; BYTE byRes[66]; }NET_DVR_LOW_LIGHT_CFG, *LPNET_DVR_LOW_LIGHT_CFG; typedef struct tagNET_DVR_FOCUSMODE_CFG { DWORD dwSize; BYTE byFocusMode; BYTE byAutoFocusMode; WORD wMinFocusDistance; BYTE byZoomSpeedLevel; BYTE byFocusSpeedLevel; BYTE byOpticalZoom; BYTE byDigtitalZoom; float fOpticalZoomLevel; DWORD dwFocusPos; BYTE byFocusDefinitionDisplay; BYTE byFocusSensitivity; BYTE byRes1[2]; DWORD dwRelativeFocusPos; BYTE byRes[48]; }NET_DVR_FOCUSMODE_CFG, *LPNET_DVR_FOCUSMODE_CFG; typedef struct tagNET_DVR_INFRARE_CFG { DWORD dwSize; BYTE byIrControlMode; BYTE byIrBrightness; BYTE byIrSensitivity; BYTE byIrTrigMode; BYTE byIrBrightnessLimit; BYTE byRes[63]; }NET_DVR_INFRARE_CFG, *LPNET_DVR_INFRARE_CFG; typedef struct tagNET_DVR_AEMODECFG { DWORD dwSize; int iIrisSet; int iGainSet; int iGainLimit; int iExposureCompensate; BYTE byExposureModeSet; BYTE byShutterSet; BYTE byImageStabilizeLevel; BYTE byCameraIrCorrect; BYTE byHighSensitivity; BYTE byInitializeLens; BYTE byChromaSuppress; BYTE byMaxShutterSet; BYTE byMinShutterSet; BYTE byMaxIrisSet; BYTE byMinIrisSet; BYTE byExposureLevel; BYTE byRes[60]; }NET_DVR_AEMODECFG, *LPNET_DVR_AEMODECFG; typedef struct tagNET_DVR_FLASH_CFG { DWORD dwSize; DWORD dwChan; DWORD dwInNumbers; DWORD dwOutNumbers; DWORD dwStartTime; DWORD dwEndTime; DWORD dwEhomeFlag; DWORD dwAlarmFlag; BYTE byRes[1024]; }NET_DVR_FLASH_CFG, *LPNET_DVR_FLASH_CFG; typedef struct tagNET_DVR_EXTERNAL_MATRIX_CFG { DWORD dwSize; BYTE byValid; BYTE byRes1[3]; BYTE sMatrixName[NAME_LEN]; DWORD dwMatrixID; WORD wMatrixInputChanNum; WORD wMatrixOutputChanNum; WORD wMatrixOutputChanRef[MAX_CAM_COUNT]; BYTE byMatrixChanType; BYTE byMatrixProtocol; BYTE byMatrixType; BYTE byRes2; NET_MATRIX_UNION struMatrixUnion; BYTE byRes3[128]; }NET_DVR_EXTERNAL_MATRIX_CFG, *LPNET_DVR_EXTERNAL_MATRIX_CFG; typedef struct tagNET_DVR_EXTERNAL_MATRIX_CFG_V50 { DWORD dwSize; BYTE byValid; BYTE byRes1[3]; BYTE sMatrixName[NAME_LEN]; DWORD dwMatrixID; WORD wMatrixInputChanNum; WORD wMatrixOutputChanNum; WORD wMatrixOutputChanRef[MAX_CAM_COUNT_V50]; BYTE byMatrixChanType; BYTE byMatrixProtocol; BYTE byMatrixType; BYTE byRes2; NET_MATRIX_UNION struMatrixUnion; BYTE byRes3[128]; }NET_DVR_EXTERNAL_MATRIX_CFG_V50, *LPNET_DVR_EXTERNAL_MATRIX_CFG_V50; #define MAX_INPUTNUMS 1024 #define MAX_OUTPUTNUMS 256 typedef struct tagNET_DVR_ASSOCIATE_INPUT_PARAM { BYTE byEnable; BYTE byRes1[3]; DWORD dwDeviceIndex; WORD wInputIndex; BYTE byRes2[18]; }NET_DVR_ASSOCIATE_INPUT_PARAM, *LPNET_DVR_ASSOCIATE_INPUT_PARAM; typedef struct tagNET_DVR_ASSOCIATE_OUTPUT_PARAM { BYTE byEnable; BYTE byWallNo; BYTE byRes1[2]; DWORD dwOutputIndex; BYTE byRes2[20]; }NET_DVR_ASSOCIATE_OUTPUT_PARAM,*LPNET_DVR_ASSOCIATE_OUTPUT_PARAM; typedef struct tagNET_DVR_VCS_USER_INFO { DWORD dwSize; BYTE sUserName[NAME_LEN]; BYTE sPassWord[PASSWD_LEN]; NET_DVR_IPADDR struUserIP; BYTE byMacAddr[MACADDR_LEN]; BYTE byPriority; BYTE byRes1; DWORD dwRight; NET_DVR_ASSOCIATE_INPUT_PARAM struInputParam[MAX_INPUTNUMS]; NET_DVR_ASSOCIATE_OUTPUT_PARAM struOutputParam[MAX_OUTPUTNUMS]; NET_DVR_RECTCFG_EX struManageRegion; BYTE byWallNo; BYTE byRes[107]; } NET_DVR_VCS_USER_INFO, *LPNET_DVR_VCS_USER_INFO; typedef struct tagNET_DVR_STREAM_MEDIA_SERVER_CFG_V41 { BYTE byValid; BYTE byRes1[3]; BYTE byAddress[MAX_DOMAIN_NAME]; WORD wDevPort; BYTE byTransmitType; BYTE byRes2[69]; }NET_DVR_STREAM_MEDIA_SERVER_CFG_V41,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG_V41; typedef struct tagNET_DVR_DEV_CHAN_INFO_V41 { BYTE byAddress[MAX_DOMAIN_NAME]; WORD wDVRPort; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; BYTE byDeviceType; BYTE byDispChan; BYTE bySubDispChan; BYTE byResolution; BYTE byUseZeroChan; BYTE byRes; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; }NET_DVR_DEV_CHAN_INFO_V41,*LPNET_DVR_DEV_CHAN_INFO_V41; typedef struct tagNET_DVR_DEV_CHAN_INFO_EX { BYTE byChanType; BYTE byStreamId[STREAM_ID_LEN]; BYTE byRes1[3]; DWORD dwChannel; BYTE byRes2[24]; BYTE byAddress[MAX_DOMAIN_NAME]; WORD wDVRPort; BYTE byChannel; BYTE byTransProtocol; BYTE byTransMode; BYTE byFactoryType; BYTE byDeviceType; BYTE byDispChan; BYTE bySubDispChan; BYTE byResolution; BYTE byRes[2]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; }NET_DVR_DEV_CHAN_INFO_EX,*LPNET_DVR_DEV_CHAN_INFO_EX; typedef struct tagNET_DVR_STREAM_MEDIA_SERVER { BYTE byValid; BYTE byRes1[3]; BYTE byAddress[MAX_DOMAIN_NAME]; WORD wDevPort; BYTE byTransmitType; BYTE byRes2[5]; }NET_DVR_STREAM_MEDIA_SERVER,*LPNET_DVR_STREAM_MEDIA_SERVER; typedef struct tagNET_DVR_DEV_DDNS_INFO { BYTE byDevAddress[MAX_DOMAIN_NAME]; BYTE byTransProtocol; BYTE byTransMode; BYTE byDdnsType; BYTE byRes1; BYTE byDdnsAddress[MAX_DOMAIN_NAME]; WORD wDdnsPort; BYTE byChanType; BYTE byFactoryType; DWORD dwChannel; BYTE byStreamId[STREAM_ID_LEN]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; WORD wDevPort; BYTE byRes2[2]; }NET_DVR_DEV_DDNS_INFO,*LPNET_DVR_DEV_DDNS_INFO; typedef struct tagNET_DVR_DEC_STREAM_DEV_EX { NET_DVR_STREAM_MEDIA_SERVER struStreamMediaSvrCfg; NET_DVR_DEV_CHAN_INFO_EX struDevChanInfo; }NET_DVR_DEC_STREAM_DEV_EX,*LPNET_DVR_DEC_STREAM_DEV_EX; typedef struct tagNET_DVR_DEC_DDNS_DEV { NET_DVR_DEV_DDNS_INFO struDdnsInfo; NET_DVR_STREAM_MEDIA_SERVER struMediaServer; }NET_DVR_DEC_DDNS_DEV,*LPNET_DVR_DEC_DDNS_DEV; typedef union tagNET_DVR_DEC_STREAM_MODE { NET_DVR_DEC_STREAM_DEV_EX struDecStreamDev; NET_DVR_PU_STREAM_URL struUrlInfo; NET_DVR_DEC_DDNS_DEV struDdnsDecInfo; BYTE byRes[300]; }NET_DVR_DEC_STREAM_MODE,*LPNET_DVR_DEC_STREAM_MODE; typedef struct tagNET_DVR_PU_STREAM_CFG_V41 { DWORD dwSize; BYTE byStreamMode; BYTE byRes1[3]; NET_DVR_DEC_STREAM_MODE uDecStreamMode; DWORD dwDecDelayTime; BYTE byRes2[60]; }NET_DVR_PU_STREAM_CFG_V41,*LPNET_DVR_PU_STREAM_CFG_V41; typedef struct tagNET_DVR_MATRIX_CHAN_INFO_V41 { BYTE byEnable; BYTE byStreamMode; BYTE byRes[2]; NET_DVR_DEC_STREAM_MODE uDecStreamMode; }NET_DVR_MATRIX_CHAN_INFO_V41,*LPNET_DVR_MATRIX_CHAN_INFO_V41; typedef struct tagNET_DVR_MATRIX_LOOP_DECINFO_V41 { DWORD dwSize; DWORD dwPoolTime; NET_DVR_MATRIX_CHAN_INFO_V41 struchanConInfo[MAX_CYCLE_CHAN_V30]; BYTE byRes[16]; }NET_DVR_MATRIX_LOOP_DECINFO_V41,*LPNET_DVR_MATRIX_LOOP_DECINFO_V41; typedef struct tagNET_DVR_MATRIX_DEC_CHAN_INFO_V41 { DWORD dwSize; BYTE byStreamMode; BYTE byRes1[3]; NET_DVR_DEC_STREAM_MODE uDecStreamMode; DWORD dwPlayMode; NET_DVR_TIME StartTime; NET_DVR_TIME StopTime; BYTE sFileName[128]; DWORD dwGetStreamMode; NET_DVR_MATRIX_PASSIVEMODE struPassiveMode; BYTE byRes2[32]; }NET_DVR_MATRIX_DEC_CHAN_INFO_V41,*LPNET_DVR_MATRIX_DEC_CHAN_INFO_V41; typedef struct tagNet_DVR_IP_ADDRESS { BYTE byDevAddress[MAX_DOMAIN_NAME]; WORD wDevPort; BYTE byres[134]; }NET_DVR_IP_ADDRESS, *LPNET_DVR_IP_ADDRESS; typedef struct tagNet_DVR_DDNS_ADDRESS { BYTE byDevAddress[MAX_DOMAIN_NAME]; BYTE byDevDdns[MAX_DOMAIN_NAME]; BYTE byDdnsType; BYTE byRes1[3]; WORD wDevPort; WORD wDdnsPort; BYTE byres[64]; }NET_DVR_DDNS_ADDRESS, *LPNET_DVR_DDNS_ADDRESS; typedef struct tagNet_DVR_PLAY_BACK_BY_TIME { NET_DVR_TIME StartTime; NET_DVR_TIME StopTime; }NET_DVR_PLAY_BACK_BY_TIME, *LPNET_DVR_PLAY_BACK_BY_TIME; typedef struct tagNet_DVR_MATRIX_DEC_REMOTE_PLAY_EX { DWORD dwSize; DWORD dwDecChannel; BYTE byAddressType; BYTE byChannelType; BYTE byres[2]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwChannel; BYTE byStreamId[STREAM_ID_LEN]; DWORD dwPlayMode; union { BYTE byRes[200]; NET_DVR_IP_ADDRESS struIpAddr; NET_DVR_DDNS_ADDRESS struDdnsAddr; }unionAddr; union { BYTE byRes[128]; NET_DVR_PLAY_BACK_BY_TIME struPlayBackByTime; char sFileName[128]; }unionPlayBackInfo; }NET_DVR_MATRIX_DEC_REMOTE_PLAY_EX, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_EX; typedef struct tagNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50 { DWORD dwSize; DWORD dwDecChannel; BYTE byAddressType; BYTE byChannelType; BYTE byRes1[2]; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwChannel; BYTE byStreamId[STREAM_ID_LEN]; DWORD dwPlayMode; union { BYTE byRes[200]; NET_DVR_IP_ADDRESS struIpAddr; NET_DVR_DDNS_ADDRESS struDdnsAddr; }unionAddr; union { BYTE byRes[128]; NET_DVR_PLAY_BACK_BY_TIME struPlayBackByTime; BYTE sFileName[128]; }unionPlayBackInfo; NET_DVR_PU_STREAM_URL struURL; BYTE byRes2[128]; }NET_DVR_MATRIX_DEC_REMOTE_PLAY_V50, *LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V50; typedef struct tagNET_DVR_DISPLAY_EFFECT_CFG { DWORD dwSize; NET_DVR_COLOR struColor; BYTE byRes[32]; }NET_DVR_DISPLAY_EFFECT_CFG,*LPNET_DVR_DISPLAY_EFFECT_CFG; typedef struct tagNET_DVR_TRUNK_USE_STATE { DWORD dwSize; DWORD dwTrunkID; WORD wReserveUserID; BYTE byStatus; BYTE byRes1; BYTE byUserId[256]; BYTE byRes2[64]; }NET_DVR_TRUNK_USE_STATE, *LPNET_DVR_TRUNK_USE_STATE; typedef struct tagNET_DVR_PTZ_CTRL_INFO { DWORD dwSize; DWORD dwCtrlDelayTime; BYTE byRes[64]; }NET_DVR_PTZ_CTRL_INFO, *LPNET_DVR_PTZ_CTRL_INFO; #define MAX_MATRIX_CASCADE 32 typedef struct tagNET_DVR_MATRIX_ROUTE_INFO { DWORD dwSize; DWORD dwCamNo; DWORD dwMonNo; DWORD dwSubWin; DWORD dwUserId; DWORD dwTrunkId[MAX_MATRIX_CASCADE]; BYTE byRes[64]; }NET_DVR_MATRIX_ROUTE_INFO, *LPNET_DVR_MATRIX_ROUTE_INFO; typedef struct tagNET_DVR_PTZ_STATUS { DWORD dwSize; DWORD dwUserID; DWORD dwStatus; DWORD dwRestTime; BYTE byRes[64]; }NET_DVR_PTZ_STATUS, *LPNET_DVR_PTZ_STATUS; typedef struct tagNET_DVR_SAFETYCABIN_WORK_MODE { DWORD dwSize; BYTE byWorkMode; BYTE byFaintToUnlock; BYTE byOvertimeToUnlock; BYTE byRes[13]; }NET_DVR_SAFETYCABIN_WORK_MODE,*LPNET_DVR_SAFETYCABIN_WORK_MODE; typedef struct tagNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG { DWORD dwSize; BYTE bySensorType; BYTE bySensitivity; BYTE byDevUseTimeout; BYTE byRes1; WORD wCurtainDelayTime; WORD wCurtainResponseTime; WORD wFaintToEmergencyTime; BYTE byFollowDetectorSensitivity; BYTE byManyPersonSensitivity; BYTE byRes2[28]; }NET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG,*LPNET_DVR_SAFETYCABIN_PERSON_SIGNAL_CFG; typedef struct tagNET_DVR_ETHERNET_IPV6_COND { DWORD dwSize; BYTE byMACAddr[MACADDR_LEN]; BYTE byRes[64]; }NET_DVR_ETHERNET_IPV6_COND,*LPNET_DVR_ETHERNET_IPV6_COND; typedef struct tagNET_DVR_ETHERNET_IPV6_CFG { DWORD dwSize; BYTE byState; BYTE byRes1[3]; BYTE byIPv6[MAX_IPV6_LEN]; BYTE byRes[64]; }NET_DVR_ETHERNET_IPV6_CFG,*LPNET_DVR_ETHERNET_IPV6_CFG; typedef struct tagNET_DVR_DAYTIME { BYTE byHour; BYTE byMinute; BYTE bySecond; BYTE byRes; WORD wMilliSecond; BYTE byRes1[2]; }NET_DVR_DAYTIME,*LPNET_DVR_DAYTIME; typedef struct tagNET_DVR_SCHEDULE_DAYTIME { NET_DVR_DAYTIME struStartTime; NET_DVR_DAYTIME struStopTime; }NET_DVR_SCHEDULE_DAYTIME, *LPNET_DVR_SCHEDULE_DAYTIME; typedef struct tagNET_DVR_DNMODE { BYTE byObjectSize; BYTE byMotionSensitive; BYTE byRes[6]; }NET_DVR_DNMODE, *LPNET_DVR_DNMODE; typedef struct tagNET_DVR_MOTION_MULTI_AREAPARAM { BYTE byAreaNo; BYTE byRes[3]; NET_VCA_RECT struRect; NET_DVR_DNMODE struDayNightDisable; NET_DVR_DNMODE struDayModeParam; NET_DVR_DNMODE struNightModeParam; BYTE byRes1[8]; }NET_DVR_MOTION_MULTI_AREAPARAM, *LPNET_DVR_MOTION_MULTI_AREAPARAM; typedef struct tagNET_DVR_MOTION_MULTI_AREA { BYTE byDayNightCtrl; BYTE byAllMotionSensitive; BYTE byRes[2]; NET_DVR_SCHEDULE_DAYTIME struScheduleTime; NET_DVR_MOTION_MULTI_AREAPARAM struMotionMultiAreaParam[MAX_MULTI_AREA_NUM]; BYTE byRes1[60]; }NET_DVR_MOTION_MULTI_AREA,*LPNET_DVR_MOTION_MULTI_AREA; typedef struct tagNET_DVR_MOTION_SINGLE_AREA { BYTE byMotionScope[64][96]; BYTE byMotionSensitive; BYTE byRes[3]; }NET_DVR_MOTION_SINGLE_AREA, *LPNET_DVR_MOTION_SINGLE_AREA; typedef struct tagNET_DVR_MOTION_MODE_PARAM { NET_DVR_MOTION_SINGLE_AREA struMotionSingleArea; NET_DVR_MOTION_MULTI_AREA struMotionMultiArea; }NET_DVR_MOTION_MODE_PARAM, *LPNET_DVR_MOTION_MODE_PARAM; typedef struct tagNET_DVR_MOTION_V40 { NET_DVR_MOTION_MODE_PARAM struMotionMode; BYTE byEnableHandleMotion; BYTE byEnableDisplay; BYTE byConfigurationMode; BYTE byKeyingEnable; DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwMaxRecordChanNum; DWORD dwRelRecordChan[MAX_CHANNUM_V40]; BYTE byDiscardFalseAlarm; BYTE byRes[127]; }NET_DVR_MOTION_V40,*LPNET_DVR_MOTION_V40; typedef struct tagNET_DVR_HIDEALARM_V40 { DWORD dwEnableHideAlarm; WORD wHideAlarmAreaTopLeftX; WORD wHideAlarmAreaTopLeftY; WORD wHideAlarmAreaWidth; WORD wHideAlarmAreaHeight; DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[64]; }NET_DVR_HIDEALARM_V40,*LPNET_DVR_HIDEALARM_V40; typedef struct tagNET_DVR_VILOST_V40 { DWORD dwEnableVILostAlarm; DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byVILostAlarmThreshold; BYTE byRes[63]; }NET_DVR_VILOST_V40,*LPNET_DVR_VILOST_V40; typedef struct tagNET_DVR_VICOLOR { NET_DVR_COLOR struColor[MAX_TIMESEGMENT_V30]; NET_DVR_SCHEDTIME struHandleTime[MAX_TIMESEGMENT_V30]; }NET_DVR_VICOLOR, *LPNET_DVR_VICOLOR; typedef struct tagNET_DVR_PICCFG_V40 { DWORD dwSize; BYTE sChanName[NAME_LEN]; DWORD dwVideoFormat; NET_DVR_VICOLOR struViColor; DWORD dwShowChanName; WORD wShowNameTopLeftX; WORD wShowNameTopLeftY; DWORD dwEnableHide; NET_DVR_SHELTER struShelter[MAX_SHELTERNUM]; DWORD dwShowOsd; WORD wOSDTopLeftX; WORD wOSDTopLeftY; BYTE byOSDType; BYTE byDispWeek; BYTE byOSDAttrib; BYTE byHourOSDType; BYTE byFontSize; BYTE byOSDColorType; BYTE byAlignment; BYTE byOSDMilliSecondEnable; NET_DVR_VILOST_V40 struVILost; NET_DVR_VILOST_V40 struAULost; NET_DVR_MOTION_V40 struMotion; NET_DVR_HIDEALARM_V40 struHideAlarm; NET_DVR_RGB_COLOR struOsdColor; DWORD dwBoundary; NET_DVR_RGB_COLOR struOsdBkColor; BYTE byOSDBkColorMode; BYTE byRes[115]; }NET_DVR_PICCFG_V40,*LPNET_DVR_PICCFG_V40; typedef struct tagNET_DVR_ISP_CAMERAPARAMCFG { DWORD dwSize; BYTE byWorkType; BYTE byRes[3]; NET_DVR_SCHEDULE_DAYTIME struDayNightScheduleTime; NET_DVR_CAMERAPARAMCFG_EX struSelfAdaptiveParam; NET_DVR_CAMERAPARAMCFG_EX struDayIspAdvanceParam; NET_DVR_CAMERAPARAMCFG_EX struNightIspAdvanceParam; BYTE byRes1[512]; }NET_DVR_ISP_CAMERAPARAMCFG,*LPNET_DVR_ISP_CAMERAPARAMCFG; typedef struct tagNET_DVR_DEVSERVER_CFG { DWORD dwSize; BYTE byIrLampServer; BYTE bytelnetServer; BYTE byABFServer; BYTE byEnableLEDStatus; BYTE byEnableAutoDefog; BYTE byEnableSupplementLight; BYTE byEnableDeicing; BYTE byEnableVisibleMovementPower; BYTE byEnableThermalMovementPower; BYTE byEnablePtzPower; BYTE byPowerSavingControl; BYTE byRes[245]; }NET_DVR_DEVSERVER_CFG,*LPNET_DVR_DEVSERVER_CFG; typedef struct tagNET_DVR_GBT28181_ACCESS_CFG { DWORD dwSize; BYTE byEnable; BYTE byTransProtocol; WORD wLocalSipPort; char szServerID[MAX_SERVERID_LEN]; char szServerDomain[MAX_SIPSERVER_ADDRESS_LEN] ; char szSipServerAddress[MAX_SIPSERVER_ADDRESS_LEN] ; WORD wServerSipPort; BYTE byProtocolVersion; BYTE byTCPConnectMod; char szSipUserName[MAX_SERVERNAME_LEN]; char szSipAuthenticateID[MAX_AUTHENTICATEID_LEN]; char szSipAuthenticatePasswd[MAX_AUTHENTICATEPASSWD_LEN]; DWORD dwRegisterValid; BYTE byHeartbeatInterval; BYTE byMaxHeartbeatTimeOut; BYTE byStreamType; BYTE byDeviceStatus; DWORD dwRegisterInterval; DWORD dwAutoAllocChannelID ; char szDeviceDomain[MAX_SIPSERVER_ADDRESS_LEN] ; BYTE byRes4[116]; }NET_DVR_GBT28181_ACCESS_CFG,*LPNET_DVR_GBT28181_ACCESS_CFG; typedef struct tagNET_DVR_GBT28181_CHANINFO_CFG { DWORD dwSize; char szVideoChannelNumID[MAX_COMPRESSIONID_LEN]; BYTE byRes[256]; }NET_DVR_GBT28181_CHANINFO_CFG,*LPNET_DVR_GBT28181_CHANINFO_CFG; typedef struct tagNET_DVR_ALARMIN_INFO { NET_DVR_STREAM_INFO struStreamInfo; DWORD dwAlarmInChannel; BYTE byRes[32]; }NET_DVR_ALARMIN_INFO, *LPNET_DVR_ALARMIN_INFO; typedef struct tagNET_DVR_GBT28181_ALARMINCFG { DWORD dwSize; char szAlarmInNumID[MAX_COMPRESSIONID_LEN]; BYTE byRes[256]; }NET_DVR_GBT28181_ALARMINCFG,*LPNET_DVR_GBT28181_ALARMINCFG; typedef struct tagNET_DVR_CAMERA_SETUPCFG { DWORD dwSize; WORD wSetupHeight; BYTE byLensType; BYTE bySetupHeightUnit; DWORD dwSceneDis; float fPitchAngle; float fInclineAngle; float fRotateAngle; WORD wVideoDetCoefficient; BYTE byErectMethod; BYTE byCameraViewAngle; DWORD dwHorizontalDistance; BYTE byDetailLensType; BYTE byRes[3]; float fHorFieldAngle; float fVerFieldAngle; float fLableSetupHeight; BYTE byRes1[20]; }NET_DVR_CAMERA_SETUPCFG, *LPNET_DVR_CAMERA_SETUPCFG; typedef struct tagNET_DVR_SCHEDDATE { BYTE byStartMonth; BYTE byStartDay; BYTE byStopMonth; BYTE byStopDay; }NET_DVR_SCHEDDATE,*LPNET_DVR_SCHEDDATE; typedef struct tagNET_DVR_OUTPUT_SCHEDULE { NET_DVR_SCHEDTIME struTime; BYTE byState; BYTE byRes[11]; } NET_DVR_OUTPUT_SCHEDULE ,*LPNET_DVR_OUTPUT_SCHEDULE; typedef struct tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE { BYTE byEnable; BYTE byRes1[3]; NET_DVR_SCHEDDATE struDate; NET_DVR_OUTPUT_SCHEDULE struOutputSchedule[MAX_TIMESEGMENT_V30]; BYTE byRes2[16]; }NET_DVR_ONE_OUTPUT_SCHEDULE_RULE,*LPNET_DVR_ONE_OUTPUT_SCHEDULE_RULE; typedef struct tagNET_DVR_OUTPUT_SCHEDULE_RULECFG { DWORD dwSize; NET_DVR_ONE_OUTPUT_SCHEDULE_RULE struOutputRule[MAX_RULE_NUM]; BYTE byRes[64]; }NET_DVR_OUTPUT_SCHEDULE_RULECFG,*LPNET_DVR_OUTPUT_SCHEDULE_RULECFG; typedef struct tagNET_DVR_TPS_ALARMCFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwInterval; BYTE byRes[248]; }NET_DVR_TPS_ALARMCFG, *LPNET_DVR_TPS_ALARMCFG; typedef struct tagNET_DVR_DOWNLOAD_ALARM_RECORD_COND { DWORD dwSize; WORD wAlarmRecordID; BYTE byRes[130]; }NET_DVR_DOWNLOAD_ALARM_RECORD_COND, *LPNET_DVR_DOWNLOAD_ALARM_RECORD_COND; typedef struct tagNET_DVR_CABINET_AlARM_PARAMCFG { char sCabinetName[NAME_LEN]; BYTE byAssociateIO; BYTE byCabinetState; BYTE byAlarmIntervalTime; BYTE byRes1[25]; }NET_DVR_CABINET_AlARM_PARAMCFG, *LPNET_DVR_CABINET_AlARM_PARAMCFG; typedef struct tagNET_DVR_CABINET_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[3]; NET_DVR_CABINET_AlARM_PARAMCFG struCabinetCfg[MAX_CABINET_COUNT]; BYTE byRes1[84]; } NET_DVR_CABINET_CFG, *LPNET_DVR_CABINET_CFG; typedef struct tagNET_ITS_GATE_LANE_CFG { BYTE byGateSiteID[MAX_ID_LEN]; BYTE byGateInfo[MAX_ID_LEN]; BYTE byLaneName[NAME_LEN]; BYTE byValid; BYTE byCamLaneId; WORD wLaneid; BYTE byRelativeIoNum; BYTE byDirection; BYTE byLprMode; BYTE byCardMode; BYTE byGateLaneMode; BYTE byCharge; BYTE byChargeMode; BYTE byRes1; BYTE byLedRelativeIndex[MAX_INDEX_LED]; BYTE byGateRelativeIndex; BYTE byFarRrRelativeIndex; BYTE byRes[82]; }NET_ITS_GATE_LANE_CFG, *LPNET_ITS_GATE_LANE_CFG; typedef struct tagNET_ITS_IPC_CHAN_LANE_CFG { DWORD dwSize; BYTE byIpcType; BYTE byRes[135]; NET_ITS_GATE_LANE_CFG struGateLane[4]; }NET_ITS_IPC_CHAN_LANE_CFG, *LPNET_ITS_IPC_CHAN_LANE_CFG; typedef struct tagNET_ITS_REMOTE_COMMAND { WORD wLaneid; BYTE byCamLaneId; BYTE byRes; DWORD dwCode; BYTE byRes1[128]; }NET_ITS_REMOTE_COMMAND,*LPNET_ITS_REMOTE_COMMAND; typedef struct tagNET_ITS_REMOTE_CONTROL_ { DWORD dwSize; NET_ITS_REMOTE_COMMAND struRemoteCommand; }NET_ITS_REMOTE_CONTROL,*LPNET_ITS_REMOTE_CONTROL; typedef struct tagNET_ITS_ECT_CHANNELSTATE { DWORD dwSize; BYTE byRecordStatic; BYTE bySignalStatic; BYTE byHardwareStatic; BYTE byChannelArmState; DWORD dwChannel; DWORD dwBitRate; DWORD dwLinkNum; NET_DVR_IPADDR struClientIP[MAX_LINK]; DWORD dwIPLinkNum; BYTE byExceedMaxLink; BYTE byRes[139]; }NET_ITS_ECT_CHANNELSTATE, *LPNET_ITS_ECT_CHANNELSTATE; typedef struct tagNET_DVR_PARK_EXTERNAL_SUBINFO { BYTE byEnable; BYTE byFlicker; BYTE byIOState; BYTE byLampColor; BYTE byRes[4]; }NET_DVR_PARK_EXTERNAL_SUBINFO, *LPNET_DVR_PARK_EXTERNAL_SUBINFO; typedef struct tagNET_DVR_PARK_INLAY_SUBINFO { BYTE byEnable; BYTE byFlicker; BYTE byLampColor; BYTE byRes[21]; }NET_DVR_PARK_INLAY_SUBINFO, *LPNET_DVR_PARK_INLAY_SUBINFO; typedef struct tagNET_DVR_PARKINFO { NET_DVR_PARK_EXTERNAL_SUBINFO struNormalParkIOState; NET_DVR_PARK_EXTERNAL_SUBINFO struNormalNoParkIOState; NET_DVR_PARK_EXTERNAL_SUBINFO struSpecialParkIOState; NET_DVR_PARK_EXTERNAL_SUBINFO struSpecialNoParkIOState; BYTE byRes[32]; }NET_DVR_PARKINFO, *LPNET_DVR_PARKINFO; typedef struct tagNET_DVR_EXTERNAL_LAMP_CTRL_MODE { NET_DVR_PARKINFO struParkInfo[MAX_PARKING_NUM]; BYTE byRes[32]; }NET_DVR_EXTERNAL_LAMP_CTRL_MODE, *LPNET_DVR_EXTERNAL_LAMP_CTRL_MODE; typedef struct tagNET_DVR_INLAY_LAMP_CTRL_MODE { NET_DVR_PARK_INLAY_SUBINFO struLampStateCtrl[MAX_PARKING_STATUS]; BYTE byRes[96]; }NET_DVR_INLAY_LAMP_CTRL_MODE, *LPNET_DVR_INLAY_LAMP_CTRL_MODE; typedef struct tagNET_DVR_LAMP_INFO { BYTE byEnable; BYTE byFlicker; BYTE byLampColor; BYTE byRes[5]; }NET_DVR_LAMP_INFO, *LPNET_DVR_LAMP_INFO; typedef struct tagNET_DVR_PARKLAMP_CTRL_MODE { NET_DVR_LAMP_INFO struLampInfo[MAX_PARKING_STATUS]; BYTE byLampType; BYTE byRes[7]; }NET_DVR_PARKLAMP_CTRL_MODE, *LPNET_DVR_PARKLAMP_CTRL_MODE; typedef struct tagNET_DVR_LAMP_PARAM { BYTE byEnable; BYTE byFlicker; BYTE byLampColor; BYTE byRes[3]; }NET_DVR_LAMP_PARAM, *LPNET_DVR_LAMP_PARAM; typedef struct tagNET_DVR_EXTERNAL_PARKLAMP { NET_DVR_LAMP_PARAM struLampParam[MAX_PARKING_STATUS]; BYTE byLampType; BYTE byRes[7]; }NET_DVR_EXTERNAL_PARKLAMP, *LPNET_DVR_EXTERNAL_PARKLAMP; typedef struct tagNET_DVR_BUILTIN_PARKLAMP { BYTE byEnable; BYTE byFlicker; BYTE byLampColor; BYTE byRes[5]; }NET_DVR_BUILTIN_PARKLAMP, *LPNET_DVR_BUILTIN_PARKLAMP; typedef struct tagNET_DVR_MIXLAMP_CTRL_MODE { NET_DVR_EXTERNAL_PARKLAMP struExternalParkLamp[MAX_PARKING_NUM]; NET_DVR_BUILTIN_PARKLAMP struBuiltInParkLamp[MAX_PARKING_STATUS]; }NET_DVR_MIXLAMP_CTRL_MODE, *LPNET_DVR_MIXLAMP_CTRL_MODE; typedef struct tagNET_DVR_SINGLELAMP_CTRL_MODE { NET_DVR_PARK_EXTERNAL_SUBINFO struExternLampStateCtrl[MAX_PARKING_STATUS]; BYTE byLampType; BYTE byRes[23]; }NET_DVR_SINGLELAMP_CTRL_MODE, *LPNET_DVR_SINGLELAMP_CTRL_MODE; typedef union tagNET_DVR_LAMP_CTRL_MODE_UNION { BYTE uLen[288]; NET_DVR_INLAY_LAMP_CTRL_MODE struInlayLampCtrlMode; NET_DVR_EXTERNAL_LAMP_CTRL_MODE struExternalLampCtrlMode; NET_DVR_PARKLAMP_CTRL_MODE struParkLampCtrlMode[MAX_PARKING_NUM]; NET_DVR_MIXLAMP_CTRL_MODE struMixLampCtrlMode; NET_DVR_SINGLELAMP_CTRL_MODE struSingleExternalLampCtrlMode; }NET_DVR_LAMP_CTRL_MODE_UNION, *LPNET_DVR_LAMP_CTRL_MODE_UNION; typedef struct tagNET_DVR_LAMP_CTRL_INFO { DWORD dwSize; BYTE byLampCtrlMode; BYTE byCtrlChannelIndex; BYTE byRes[2]; NET_DVR_LAMP_CTRL_MODE_UNION uLampCtrlMode; BYTE byRes2[32]; }NET_DVR_LAMP_CTRL_INFO, *LPNET_DVR_LAMP_CTRL_INFO; typedef struct tagNET_DVR_PARKSPACE_INFO { BYTE byParkSpaceAttribute; BYTE byRes[23]; }NET_DVR_PARKSPACE_INFO, *LPNET_DVR_PARKSPACE_INFO; typedef struct tagNET_DVR_PARKSPACE_ATTRIBUTE { DWORD dwSize; NET_DVR_PARKSPACE_INFO struParkSpaceInfo[MAX_PARKING_NUM]; BYTE byRes[64]; }NET_DVR_PARKSPACE_ATTRIBUTE, *LPNET_DVR_PARKSPACE_ATTRIBUTE; typedef struct tagNET_DVR_LAMP_STATE { BYTE byFlicker; BYTE byParkingIndex; BYTE byRes1[2]; DWORD dwIONo; BYTE byRes2[8]; }NET_DVR_LAMP_STATE, *LPNET_DVR_LAMP_STATE; typedef struct tagNET_DVR_LAMP_EXTERNAL_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_LAMP_STATE struLampStateCtrl; BYTE byRes2[32]; }NET_DVR_LAMP_EXTERNAL_CFG, *LPNET_DVR_LAMP_EXTERNAL_CFG; typedef struct tagNET_DVR_COMPEL_CAPTURE { DWORD dwSize; BYTE byParkIndex; BYTE byRes[63]; }NET_DVR_COMPEL_CAPTURE, *LPNET_DVR_COMPEL_CAPTURE; typedef struct tagNET_DVR_EXTERNAL_CONTROL_ALARM { DWORD dwSize; DWORD dwChannelNo; NET_DVR_LAMP_STATE struLampStateCtrl; NET_DVR_TIME struExternalBeginTime; BYTE byRes1[64]; }NET_DVR_EXTERNAL_CONTROL_ALARM, *LPNET_DVR_EXTERNAL_CONTROL_ALARM; typedef enum tagEXTERNAL_DEVICES_TYPE { DEVICES_TYPE_RES1 = 0, DEVICES_TYPE_FAR_SCR = 1, DEVICES_TYPE_ENTRANCE_CONTROL = 2, DEVICES_TYPE_WJ_LED_DEV = 3, DEVICES_TYPE_NJ_LED_DEV = 4, DEVICES_TYPE_VEH_DETECT_DEV = 5, DEVICES_TYPE_DZ_DEV = 6, DEVICES_TYPE_PX_SCR_DEV = 7, DEVICES_TYPE_KJ_SCR_DEV = 8, DEVICES_TYPE_FKJ_DEV = 9, DEVICES_TYPE_SKJ_DEV = 10, DEVICES_TYPE_HDD_DEV = 11, DEVICES_TYPE_DZ_LOCK = 12, DEVICES_TYPE_PAPER_PRINTER = 13, DEVICES_TYPE_PAPER_SCANNERS = 14, DEVICES_TYPE_IPC_ALARM = 15 }EXTERNAL_DEVICES_TYPE; typedef enum tagEXTERNAL_DEVICES_STATUS { DEVICES_STATUS_NORMAL = 0, DEVICES_STATUS_ABNORMAL = 1, DEVICES_STATUS_TOO_LESS_CARD = 20, DEVICES_STATUS_NO_CARD = 21, DEVICES_STATUS_SENDCARD_ERROR = 22, DEVICES_STATUS_CARD_BLOCKED = 23, DEVICES_STATUS_CARD_FULL = 24, DEVICES_STATUS_OPENING = 40, DEVICES_STATUS_CLOSING = 41, DEVICES_STATUS_OPENED = 42, DEVICES_STATUS_CLOSED = 43, DEVICES_STATUS_NOSIGNAL = 44, DEVICES_STATUS_LOCK= 45, PP_STATUS_OFFLINE = 61, PP_STATUS_PRINT_HEADER_UP, PP_STATUS_FEED_BUTTON_FEEDING, PP_STATUS_ONLINE_WAITING, PP_STATUS_FEED_BUTTON_ENABLE, PP_STATUS_JAMR_PAPER_ERROR, PP_STATUS_CUT_PAPER_ERROR, PP_STATUS_AUTO_FEED_ERROR, PP_STATUS_EXIT_RECOVERY_ERROR, PP_STATUS_EXIT_AUTO_RECOVERY_ERROR, PP_STATUS_PULL_PAPER_ERROR, PP_STATUS_LESS_PAPER , PP_STATUS_NO_PAPER, PP_STATUS_PRINT_FAIL, PP_STATUS_PRINTING, }EXTERNAL_DEVICES_STATUS; typedef struct tagNET_DVR_GATE_ALARMINFO { DWORD dwSize; BYTE byAlarmType; BYTE byExternalDevType; BYTE byExternalDevStatus; BYTE byRes; NET_DVR_TIME_V30 struAlarmTime; union { BYTE uLen[128]; struct { char sLicense[MAX_LICENSE_LEN]; BYTE byVehicleType; BYTE byRes1[111]; }struVehicleInfo; }uAlarmInfo; BYTE byRes2[64]; }NET_DVR_GATE_ALARMINFO, *LPNET_DVR_GATE_ALARMINFO; typedef struct tagNET_DVR_ALARMWIRELESSINFO { BYTE byDeviceID[NAME_LEN]; float fDataTraffic; BYTE bySignalIntensity; BYTE byRes[127]; }NET_DVR_ALARMWIRELESSINFO, *LPNET_DVR_ALARMWIRELESSINFO; typedef struct tagNET_DVR_VOLTAGE { int iPhaseAVol; int iPhaseBVol; int iPhaseCVol; int iAveragePhaseVol; }NET_DVR_VOLTAGE, *LPNET_DVR_VOLTAGE; typedef struct _tagNET_DVR_LINE_VOLTAGE { int iLineVolAB; int iLineVolBC; int iLineVolCA; int iAverageLineVol; } NET_DVR_LINE_VOLTAGE,*LPNET_DVR_LINE_VOLTAGE; typedef struct tagNET_DVR_CURRENT { int iPhaseACurrent; int iPhaseBCurrent; int iPhaseCCurrent; BYTE byRes[4]; }NET_DVR_CURRENT, *LPNET_DVR_CURRENT; typedef struct tagNET_DVR_POWER { int iPhaseAPower; int iPhaseBPower; int iPhaseCPower; int iSysTotalPower; }NET_DVR_POWER, *LPNET_DVR_POWER; typedef struct tagNET_DVR_POWER_FACTOR { int iPhaseAPowerFactor; int iPhaseBPowerFactor; int iPhaseCPowerFactor; int iTotalPowerFactor; }NET_DVR_POWER_FACTOR, *LPNET_DVR_POWER_FACTOR; typedef struct tagNET_DVR_FREQUENCY { int iPhaseAFrequency; int iPhaseBFrequency; int iPhaseCFrequency; BYTE byRes[4]; }NET_DVR_FREQUENCY, *LPNET_DVR_FREQUENCY; typedef struct tagNET_DVR_LOAD_FACTOR { int iPhaseALoadFactor; int iPhaseBLoadFactor; int iPhaseCLoadFactor; BYTE byRes[4]; } NET_DVR_LOAD_FACTOR, *LPNET_DVR_LOAD_FACTOR; typedef struct tagNET_DVR_ALARMHOST_UPS_STATE { NET_DVR_VOLTAGE struInputVoltage; NET_DVR_VOLTAGE struBypassVoltage; NET_DVR_VOLTAGE struOutputVoltage; int iRectifierVol; int iInverterVol; NET_DVR_CURRENT struInputCurrent; NET_DVR_CURRENT struBypassCurrent; NET_DVR_CURRENT struOutputCurrent; int iInverterCurrent; NET_DVR_FREQUENCY struInputFrequency; NET_DVR_FREQUENCY struBypassFrequency; NET_DVR_FREQUENCY struOutputFrequency; int iInverterFre; NET_DVR_POWER struInputPower; NET_DVR_POWER struBypassPower; NET_DVR_POWER struOutputPower; NET_DVR_POWER struComplexPower; int iNormalPower; int iPowerFacter; NET_DVR_LOAD_FACTOR struBatteryLoadFactor; int iBatteryEstimated; int iBatteryTemperature; int iBatteryVoltage; BYTE byRectifierState; BYTE byInverterState; BYTE byChargeState; BYTE byBatteryState; BYTE byAutoBypassState; BYTE byRes2[247]; } NET_DVR_ALARMHOST_UPS_STATE, *LPNET_DVR_ALARMHOST_UPS_STATE; typedef struct tagNET_DVR_ALARMHOST_SWITCH_POWER_STATE { NET_DVR_VOLTAGE struACVoltage; int iDCConvertVoltage; NET_DVR_CURRENT struACCurrent; int iTotalCurrent; int iBattery1Temperature; int iBattery2Temperature; int iBattery1Current; int iBattery2Current; int iBattery3Current; int iBattery4Current; int iBatteryTestVoltage; int iRectifierOutputVoltage; int iRectifierOutputCurrent; int iDCOutputVoltage; BYTE byRes[432]; } NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE, *LPNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE; typedef struct tagNET_DVR_ALARMHOST_GAS_DETECTOR_STATE { int iSF6; int iFlow; int iTemperature; int iO2; int iHumidity; BYTE byRes[492]; } NET_DVR_ALARMHOST_GAS_DETECTOR_STATE, *LPNET_DVR_ALARMHOST_GAS_DETECTOR_STATE; typedef struct tagNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE { int iTemperature; int iHumidity; BYTE byRes[504]; } NET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE, *LPNET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE; typedef struct tagNET_DVR_ALARMHOST_AIRCONDITION_STATE { int iTemperature; int iHumidity; BYTE byRunState; BYTE byRes[503]; } NET_DVR_ALARMHOST_AIRCONDITION_STATE, *LPNET_DVR_ALARMHOST_AIRCONDITION_STATE; typedef struct tagNET_DVR_ALARMHOST_ELECTRICITY_STATE { int iDCVoltage; int iDCCurrent; NET_DVR_VOLTAGE struPhaseVoltage; NET_DVR_LINE_VOLTAGE struLineVoltage; NET_DVR_CURRENT struCurrent[4]; int iAverageCurrent; int iNeutralCurrent; NET_DVR_POWER struActivePower[4]; NET_DVR_POWER struReactivePower[4]; NET_DVR_POWER struApparentPower[4]; NET_DVR_POWER_FACTOR struPowerFactor[4]; NET_DVR_FREQUENCY struFrequency; BYTE byRes[128]; }NET_DVR_ALARMHOST_ELECTRICITY_STATE, *LPNET_DVR_ALARMHOST_ELECTRICITY_STATE; typedef struct tagNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE { int iPhaseATemperature; int iPhaseBTemperature; int iPhaseCTemperature; int iPhaseDTemperature; BYTE byRes[496]; }NET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE, *LPNET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE; typedef struct tagNET_DVR_ALARMHOST_WATERLEVEL_SENSOR { LONG iWaterLevel; BYTE byRes[508]; }NET_DVR_ALARMHOST_WATERLEVEL_SENSOR, *LPNET_DVR_ALARMHOST_WATERLEVEL_SENSOR; typedef struct tagNET_DVR_ALARMHOST_DUSTNOISE_SENSOR { LONG iDust; LONG iNoise; LONG iPM25; BYTE byRes[500]; }NET_DVR_ALARMHOST_DUSTNOISE_SENSOR, *LPNET_DVR_ALARMHOST_DUSTNOISE_SENSOR; typedef struct tagNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER { LONG iAmmoniaNitrogen; LONG iCOD; LONG iPH; LONG iOxygen; LONG iSulfurDioxide; LONG iSoot; LONG iFluoride; LONG iPollutedWater; LONG iTotalPhosphorus; LONG iExhaust; LONG iNitrogenOxides; LONG iFlueGasTemperature; LONG iFlueGasPressure; LONG iDustThickness; LONG iAirCleanLevel; LONG iPm10Thickness; BYTE byRes[448]; }NET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER, *LPNET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER; typedef struct tagNET_DVR_WIND_SPEED_STATE { int iWindSpeed; BYTE byRes[508]; }NET_DVR_WIND_SPEED_STATE, *LPNET_DVR_WIND_SPEED_STATE; typedef struct tagNET_DVR_GENERATE_OUTPUT_STATE { BYTE byOutPutState1; BYTE byOutPutState2; BYTE byOutPutState3; BYTE byOutPutState4; BYTE byOutPutState5; BYTE byOutPutState6; BYTE Res[506]; }NET_DVR_GENERATE_OUTPUT_STATE, *LPNET_DVR_GENERATE_OUTPUT_STATE; typedef struct tagNET_DVR_SOAK_STATE { int iWaterLogVal; int iLeakResist1; int iTotolResist1; int iLeakResist2; int iTotolResist2; BYTE byWaterLogAlarm; BYTE byLeakAlarm1; BYTE byFaultAlarm1; BYTE byLeakAlarm2; BYTE byFaultAlarm2; BYTE byRes[487]; }NET_DVR_SOAK_STATE, *LPNET_DVR_SOAK_STATE; typedef struct tagNET_DVR_SOLAR_POWER_STATE { int iChangerVolInput; int iChangerCurInput; int iChangerPwInput; int iChangerVolOutput; int iChangerCurOutput; int iChangerPwOutput; int iDischangerVolOutput; int iDischangerCurOutput; int iDischangerPwOutput; int iDevTemperatrue; BYTE byBatteryVolState; BYTE byBatteryTmpState; BYTE byChangerVolInputState; BYTE byChangerRunState; BYTE byChangerChgState; BYTE byBatteryVolFlt; BYTE byBatteryTmpFlt; BYTE byBatteryResistanceFlt; BYTE byVolRcgFlt; BYTE byChangerVolInputFlt; BYTE byChangerMosShort; BYTE byChangerAntiOrMosShort; BYTE byChangerAntiShort; BYTE byInputOverCur; BYTE byLoadOverCur; BYTE byLoadShort; BYTE byLoadMosShort; BYTE byChangerFlt; BYTE byRes[454]; }NET_DVR_SOLAR_POWER_STATE, *LPNET_DVR_SOLAR_POWER_STATE; typedef struct tagNET_DVR_SF6_ALARMHOST_STATE { int iSf6Thick1; int iO2Thick1; int iTemprature1; int iHumidity1; int iSf6Thick2; int iO2Thick2; int iTemprature2; int iHumidity2; int iSf6Thick3; int iO2Thick3; int iTemprature3; int iHumidity3; int iSf6Thick4; int iO2Thick4; int iTemprature4; int iHumidity4; int iSf6Thick5; int iO2Thick5; int iTemprature5; int iHumidity5; int iSf6Thick6; int iO2Thick6; int iTemprature6; int iHumidity6; int iSf6Thick7; int iO2Thick7; int iTemprature7; int iHumidity7; int iSf6Thick8; int iO2Thick8; int iTemprature8; int iHumidity8; int iSf6Thick9; int iO2Thick9; int iTemprature9; int iHumidity9; int iSf6Thick10; int iO2Thick10; int iTemprature10; int iHumidity10; int iSf6Thick11; int iO2Thick11; int iTemprature11; int iHumidity11; int iSf6Thick12; int iO2Thick12; int iTemprature12; int iHumidity12; BYTE byFanState1; BYTE byFanState2; BYTE byFanState3; BYTE byFanState4; BYTE byFanState5; BYTE byFanState6; BYTE byFanState7; BYTE byFanState8; BYTE byFanState9; BYTE byFanState10; BYTE byFanState11; BYTE byFanState12; BYTE byRes[308]; }NET_DVR_SF6_ALARMHOST_STATE, *LPNET_DVR_SF6_ALARMHOST_STATE; typedef struct tagNET_DVR_WEIGHT_STATE { int iWeight; BYTE byRes[508]; }NET_DVR_WEIGHT_STATE, *LPNET_DVR_WEIGHT_STATE; typedef struct tagNET_DVR_WEATHER_STATION_STATE { int iAirTemperature; DWORD dwAirHumidity; DWORD dwWindSpeed; DWORD dwWindDirection; DWORD dwIlluminationIntensity; DWORD dwCO2; DWORD dwPM25; DWORD dwAirPressure; int iSoilTemperature; DWORD dwSoilHumidity; DWORD dwRainFall; BYTE byIsRainSnow; BYTE byRes[467]; }NET_DVR_WEATHER_STATION_STATE, *LPNET_DVR_WEATHER_STATION_STATE; typedef struct tagNET_DVR_WATER_QLT_STATE { DWORD dwTurbidity; DWORD dwChlorine; DWORD dwPH; BYTE byRes[500]; }NET_DVR_WATER_QLT_STATE, *LPNET_DVR_WATER_QLT_STATE; typedef struct tagNET_DVR_FUEL_GAS_DETE_STATE { int iNatrualGasThick; BYTE byRes[508]; }NET_DVR_FUEL_GAS_DETE_STATE, *LPNET_DVR_FUEL_GAS_DETE_STATE; typedef struct tagNET_DVR_FIRE_ALARM_STATUS { BYTE byFireAlarm[MAX_FIRE_ALARM_ZONE][MAX_FIRE_ALARM_POINT_ZONE]; BYTE byRes[128]; }NET_DVR_FIRE_ALARM_STATUS, *LPNET_DVR_FIRE_ALARM_STATUS; typedef union tagNET_DVR_EXTERNAL_DEVICE_STATE_UNION { NET_DVR_ALARMHOST_UPS_STATE struUpsState; NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_STATE struSwitchPowerState; NET_DVR_ALARMHOST_GAS_DETECTOR_STATE struGasDetectorState; NET_DVR_ALARMHOST_TEMP_HUMI_SENSOR_STATE struTempHumiSensorState; NET_DVR_ALARMHOST_AIRCONDITION_STATE struAirConditionState; NET_DVR_ALARMHOST_ELECTRICITY_STATE struElectricityState; NET_DVR_ALARMHOST_TRANSFORMER_TEMP_STATE struTransformerTempState; NET_DVR_ALARMHOST_WATERLEVEL_SENSOR struWaterLevelSensor; NET_DVR_ALARMHOST_DUSTNOISE_SENSOR struDustNoiseSensor; NET_DVR_ALARMHOST_ENVIRONMENTAL_LOGGER struEnvironmentLogger; NET_DVR_WIND_SPEED_STATE struWindSpeedState; NET_DVR_GENERATE_OUTPUT_STATE struGenerateOutputState; NET_DVR_SOAK_STATE struSoakState; NET_DVR_SOLAR_POWER_STATE struSolarPowerState; NET_DVR_SF6_ALARMHOST_STATE struSF6AlarmHostState; NET_DVR_WEIGHT_STATE struWeightState; NET_DVR_WEATHER_STATION_STATE struWeatherStationState; NET_DVR_WATER_QLT_STATE struWaterQltState; NET_DVR_FUEL_GAS_DETE_STATE struFuelGasDeteState; NET_DVR_FIRE_ALARM_STATUS struFireAlarmStatus; BYTE byRes[512]; } NET_DVR_EXTERNAL_DEVICE_STATE_UNION, *LPNET_DVR_EXTERNAL_DEVICE_STATE_UNION; typedef struct tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE { DWORD dwSize; BYTE byDevType; BYTE byRes1[3]; NET_DVR_EXTERNAL_DEVICE_STATE_UNION struDevState; BYTE byRes2[32]; } NET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE, *LPNET_DVR_ALARMHOST_EXTERNAL_DEVICE_STATE; typedef struct tagNET_DVR_GENERATE_OUTPUT_CTRL { DWORD dwSize; BYTE byOutPutState1; BYTE byOutPutState2; BYTE byOutPutState3; BYTE byOutPutState4; BYTE byOutPutState5; BYTE byOutPutState6; BYTE byOperateType; BYTE Res[65]; }NET_DVR_GENERATE_OUTPUT_CTRL, *LPNET_DVR_GENERATE_OUTPUT_CTRL; typedef struct tagNET_DVR_ALARMHOST_UPS_LIMIT_VALUE { int iInputVolHigh; int iInputVolLow; int iInputFreHigh; int iInputFreLow; int iOutputVolHigh; int iOutputVolLow; int iBatteryVoltageLow; int iBatterySurplus; int iBatteryTemperatureHigh; BYTE byRes[64]; }NET_DVR_ALARMHOST_UPS_LIMIT_VALUE, *LPNET_DVR_ALARMHOST_UPS_LIMIT_VALUE; typedef struct tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE { int iTemperatureHighLimit; int iTemperatureLowLimit; int iHumidityHighLimit; int iHumidityLowLimit; BYTE byRes[84]; } NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE, *LPNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE; typedef union tagNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION { NET_DVR_ALARMHOST_UPS_LIMIT_VALUE struUpsLimitValue; NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_LIMIT_VALUE struTempHumidityLimitValue; }NET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION,*LPNET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION; typedef struct tagNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE { DWORD dwSize; BYTE byDevType; BYTE byRes1[3]; NET_DVR_EXTERNAL_DEVICE_LIMIT_VALUE_UNION struAlarmValue; BYTE byRes2[32]; }NET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE, *LPNET_DVR_ALARMHOST_EXTERNAL_DEVICE_LIMIT_VALUE; #define ALARMHOST_ALARMOUT_NUM 64 #define MAX_OSD_UNIT_LEN 8 typedef struct tagNET_DVR_ALARMHOST_SENSOR_JOINT_CFG { DWORD dwSize; BYTE bySensorJointAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE bySensorJointSiren[ALARMHOST_MAX_SIREN_NUM]; BYTE bySensorAlarmTypeJointAlarmOut[ALARMHOST_ALARMOUT_NUM]; BYTE bySesorAlarmTypeJointSiren[ALARMHOST_MAX_SIREN_NUM]; BYTE byChan; BYTE byRes[55]; }NET_DVR_ALARMHOST_SENSOR_JOINT_CFG, *LPNET_DVR_ALARMHOST_SENSOR_JOINT_CFG; typedef struct tagNET_DVR_ALARMHOST_UPS_ALARMINFO { BYTE byAlarmType; BYTE byChanNo; BYTE bySlotNo; BYTE byRes1; int iAlarmValue; BYTE byRes2[64]; }NET_DVR_ALARMHOST_UPS_ALARMINFO, *LPNET_DVR_ALARMHOST_UPS_ALARMINFO; typedef struct tagNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO { BYTE byAlarmType; BYTE byChanNo; BYTE bySlotNo; BYTE byRes1; int iAlarmValue; BYTE byRes2[64]; }NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO, *LPNET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO; typedef struct tagNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO { BYTE byAlarmType; BYTE byChanNo; BYTE bySlotNo; BYTE byRes1; int iAlarmValue; BYTE byRes2[64]; }NET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO, *LPNET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO; typedef struct tagNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO { BYTE byAlarmType; BYTE byChanNo; BYTE bySlotNo; BYTE byRes1; int iAlarmValue; BYTE byRes2[64]; } NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO, *LPNET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO; typedef union tagNET_DVR_485_DEVICE_ALARM_UNION { NET_DVR_ALARMHOST_UPS_ALARMINFO struUPSAlarm; NET_DVR_ALARMHOST_SWITCH_POWER_SUPPLY_ALARMINFO struSwitchPowerAlarm; NET_DVR_ALARMHOST_GAS_DETECT_SYS_ALARMINFO struGasDetectSystemAlarm; NET_DVR_ALARMHOST_TEMP_HUMIDITY_SENSOR_ALARMINFO struTempHumiditySensorAlarm; BYTE byRes[72]; } NET_DVR_485_DEVICE_ALARM_UNION, *LPNET_DVR_485_DEVICE_ALARM_UNION; typedef struct tagNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO { DWORD dwSize; BYTE byAlarmType; BYTE byRes1[3]; NET_DVR_485_DEVICE_ALARM_UNION struAlarmInfo; BYTE byRes2[16]; } NET_DVR_485_EXTERNAL_DEVICE_ALARMINFO, *LPNET_DVR_485_EXTERNAL_DEVICE_ALARMINFO; typedef struct tagNET_DVR_ALARMHOST_RS485_SLOT_CFG { DWORD dwSize; BYTE sDeviceName[NAME_LEN]; WORD wDeviceType; WORD wDeviceProtocol; WORD wAddress; BYTE byChannel; BYTE bySlotChan; BYTE byRes[60]; }NET_DVR_ALARMHOST_RS485_SLOT_CFG, *LPNET_DVR_ALARMHOST_RS485_SLOT_CFG; typedef struct tagNET_DVR_CORRIDOR_MODE { DWORD dwSize; BYTE byEnableCorridorMode; BYTE byMirrorMode; BYTE byRes[126]; }NET_DVR_CORRIDOR_MODE, *LPNET_DVR_CORRIDOR_MODE; typedef struct tagNET_DVR_DETECT_FACE { DWORD dwSize; BYTE byEnableDetectFace; BYTE byDetectSensitive; BYTE byEnableDisplay; BYTE byRes; NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwMaxRelRecordChanNum; DWORD dwRelRecordChanNum; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; WORD wDuration; BYTE byRes1[30]; }NET_DVR_DETECT_FACE, *LPNET_DVR_DETECT_FACE; typedef struct tagNET_DVR_MUL_STREAM_CHANNEL_GROUP { DWORD dwSize; DWORD dwGroup ; NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND struMultiStreamCfg; BYTE byRes[64] ; }NET_DVR_MUL_STREAM_CHANNEL_GROUP,*LPNET_DVR_MUL_STREAM_CHANNEL_GROUP; typedef struct tagNET_DVR_CHANNEL_GROUP { DWORD dwSize; DWORD dwChannel; DWORD dwGroup; BYTE byID; BYTE byRes1[3]; DWORD dwPositionNo; BYTE byRes[56]; }NET_DVR_CHANNEL_GROUP, *LPNET_DVR_CHANNEL_GROUP; typedef struct tagNET_DVR_TIME_DETECTION { NET_DVR_SCHEDTIME struSchedTime; BYTE byDetSceneID; BYTE byRes[15]; }NET_DVR_TIME_DETECTION,*LPNET_DVR_TIME_DETECTION; typedef struct tagNET_DVR_GUARD_COND { DWORD dwSize; DWORD dwChannel; BYTE byRelateType; BYTE byGroupNo; BYTE byRes[62]; }NET_DVR_GUARD_COND,*LPNET_DVR_GUARD_COND; typedef struct tagNET_DVR_GUARD_CFG { DWORD dwSize; NET_DVR_TIME_DETECTION struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; NET_DVR_TIME_DETECTION struHolidayTime[MAX_TIMESEGMENT_V30]; BYTE byDirection; BYTE byRes[87]; }NET_DVR_GUARD_CFG,*LPNET_DVR_GUARD_CFG; typedef struct tagNET_DVR_SNAPINFO_COND_ { DWORD dwSize; DWORD dwChan; BYTE byRelateType; BYTE byRes[63]; }NET_DVR_SNAPINFO_COND, *LPNET_DVR_SNAPINFO_COND; typedef struct tagNET_DVR_SNAPINFOCFG { DWORD dwSize; BYTE byCurPicType; BYTE byPicQuality; BYTE byRes1[2]; DWORD dwPicSize; BYTE byRes2[128]; }NET_DVR_SNAPINFOCFG,*LPNET_DVR_SNAPINFOCFG; typedef enum _PTZ_TRACK_MODE_ { PTZ_TRACK_MODE_ALWAYS = 1, PTZ_TRACK_MODE_BYTIME = 2, PTZ_TRACK_MODE_NEXT = 3, }PTZ_TRACK_MODE; typedef struct _NET_DVR_PTZ_TRACK_PARAM_ { DWORD dwSize; BYTE byTrackMode; BYTE byLinkageTarget; BYTE byAutoTrackEnable; BYTE byRes1; DWORD dwTrackTime; BYTE byRes2[256]; }NET_DVR_PTZ_TRACK_PARAM,*LPNET_DVR_PTZ_TRACK_PARAM; typedef struct tagNET_VCA_TRAVERSE_PLANEPARAM { DWORD dwSize; BYTE byEnable; BYTE byEnableDualVca; BYTE byEnableHumanMisinfoFilter; BYTE byEnableVehicleMisinfoFilter; NET_VCA_TRAVERSE_PLANE struAlertParam[MAX_ALERTLINE_NUM]; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD byRelRecordChan[MAX_CHANNUM_V30]; NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; BYTE byRes2[100]; }NET_VCA_TRAVERSE_PLANE_DETECTION, *LPNET_VCA_TRAVERSE_PLANE_DETECTION; typedef struct tagNET_VCA_FIELDDETECION { DWORD dwSize; BYTE byEnable; BYTE byEnableDualVca; BYTE byEnableHumanMisinfoFilter; BYTE byEnableVehicleMisinfoFilter; NET_VCA_INTRUSION struIntrusion[MAX_INTRUSIONREGION_NUM]; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD byRelRecordChan[MAX_CHANNUM_V30]; NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; BYTE byRes2[100]; }NET_VCA_FIELDDETECION, *LPNET_VCA_FIELDDETECION; typedef struct tagNET_DVR_ROI_DETECT_NUM { DWORD dwSize; DWORD dwGroup; DWORD dwStreamType; DWORD dwRoiFixNum; DWORD dwRoiFixID[MAX_ROIDETECT_NUM]; BYTE szFixRoiName[MAX_ROIDETECT_NUM][NAME_LEN]; DWORD dwRoiTrackNum; DWORD dwRoiTrackID[MAX_ROIDETECT_NUM]; BYTE byRes[320]; }NET_DVR_ROI_DETECT_NUM, *LPNET_DVR_ROI_DETECT_NUM; typedef enum _DETECT_ROI_TYPE_ { DETECT_FIX_ROI = 0, DETECT_TRACK_ROI = 1 }DETECT_ROI_TYPE; typedef struct tagNET_DVR_ROI_DETECT_COND { DWORD dwSize; DWORD dwRoiID; NET_DVR_MULTI_STREAM_COMPRESSIONCFG_COND struMultiStreamCfg; BYTE byRoiDetectType; BYTE byRoiDetectTrackType; BYTE byRes[30]; }NET_DVR_ROI_DETECT_COND,*LPNET_DVR_ROI_DETECT_COND; typedef struct tagNET_DVR_ROI_FIX_RECT_CFG { BYTE byEnableFixRoi; BYTE byImageQualityLevel; BYTE byRes[2]; BYTE szFixRoiName[NAME_LEN]; NET_VCA_RECT struRoiRect; BYTE byRes1[468]; }NET_DVR_ROI_FIX_RECT_CFG, *LPNET_DVR_ROI_FIX_RECT_CFG; typedef struct tagNET_DVR_ROI_TRACK_RECT_CFG { BYTE byEnableTrackRoi; BYTE byImageQualityLevel; BYTE byModeType; BYTE byRes[509]; }NET_DVR_ROI_TRACK_RECT_CFG, *LPNET_DVR_ROI_TRACK_RECT_CFG; typedef union tagNET_DVR_ROI_DETECT_UNION { DWORD uLen[128]; NET_DVR_ROI_FIX_RECT_CFG strRoiFixRectCfg; NET_DVR_ROI_TRACK_RECT_CFG strRoiTrackRectCfg; }NET_DVR_ROI_DETECT_UNION,*LPNET_DVR_ROI_DETECT_UNION; typedef struct tagNET_DVR_ROI_DETECT_CFG { DWORD dwSize; DWORD dwStreamType; BYTE byRoiDetectType; BYTE byRes[3]; NET_DVR_ROI_DETECT_UNION uRoiDetectInfo; BYTE byRes1[36]; }NET_DVR_ROI_DETECT_CFG, *LPNET_DVR_ROI_DETECT_CFG; typedef struct tagNET_VCA_DEFOCUSPARAM { DWORD dwSize; BYTE byEnable; BYTE bySensitiveLevel; BYTE byRes1[2]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; BYTE byRes2[24]; }NET_VCA_DEFOCUSPARAM,*LPNET_VCA_DEFOCUSPARAM; typedef struct tagNET_PTZ_INFO_EX { float fPan; float fTilt; float fVisibleZoom; DWORD dwVisibleFocus; float fThermalZoom; DWORD dwThermalFocus; }NET_PTZ_INFO_EX, *LPNET_PTZ_INFO_EX; typedef struct tagNET_DVR_PRESET_NAME { DWORD dwSize; WORD wPresetNum; BYTE byRes1[2]; char byName[NAME_LEN]; WORD wPanPos; WORD wTiltPos; WORD wZoomPos; BYTE byRes2; BYTE byPTZPosExEnable; NET_PTZ_INFO_EX struPtzPosEx; BYTE byRes[32]; }NET_DVR_PRESET_NAME, *LPNET_DVR_PRESET_NAME; typedef struct tagNET_DVR_SCHEDTASK { NET_DVR_SCHEDTIME struSchedTime; WORD wAction; WORD wActionNum; BYTE byres[12]; }NET_DVR_SCHEDTASK,* LPNET_DVR_SCHEDTASK; typedef struct tagNET_DVR_TIME_TASK { DWORD dwSize; BYTE byTaskEnable; BYTE byRes[3]; NET_DVR_SCHEDTASK struTask[MAX_DAYS][MAX_SCH_TASKS_NUM]; DWORD dwParkTime; BYTE byRes1[64]; }NET_DVR_TIME_TASK,*LPNET_DVR_TIME_TASK; typedef struct tagNET_DVR_CHANNEL_INDEX { DWORD dwSize; DWORD dwChannel ; DWORD dwIndex ; BYTE byRes[64] ; }NET_DVR_CHANNEL_INDEX, *LPNET_DVR_CHANNEL_INDEX; typedef struct tagNET_DVR_AUDIO_NAME { DWORD dwSize; char cName[NAME_LEN] ; BYTE byRes[64]; }NET_DVR_AUDIO_NAME, *LPNET_DVR_AUDIO_NAME; typedef struct tagNET_DVR_LOGIN_DEVICE_PARAM_ { DWORD dwSize; BYTE byMobileDev; BYTE byRes[63]; }NET_DVR_LOGIN_DEVICE_PARAM, *LPNET_DVR_LOGIN_DEVICE_PARAM; typedef enum RECV_DATA_TYPE { ENUM_RECV_ERRCODE = 0x0, } RECV_DATA_TYPE; typedef enum tagFISHEYE_STREAM_OUTPUT_MODE_ { FISHEYE_STREAM_MODE_FISHEYE = 1, FISHEYE_STREAM_MODE_PTZ = 2, FISHEYE_STREAM_MODE_PANORAMA = 3 }FISHEYE_STREAM_OUTPUT_MODE; typedef enum _CALLBACK_TYPE_DATA_ENUM_ { ENUM_FISHEYE_STREAM_STATUS = 1, ENUM_FISHEYE_PTZPOS = 2, ENUM_FISHEYE_REALTIME_OUTPUT = 3 }CALLBACK_TYPE_DATA_ENUM; typedef struct tagNET_DVR_FISHEYE_STREAM_STATUS_ { DWORD dwSize; BYTE byStreamMode; BYTE byRes[63]; }NET_DVR_FISHEYE_STREAM_STATUS,*LPNET_DVR_FISHEYE_STREAM_STATUS; typedef struct tagNET_DVR_CALLBACK_TYPE_DATA { DWORD dwChannel; DWORD dwDataType; DWORD dwDataLen; BYTE* pData; BYTE byRes[64]; }NET_DVR_CALLBACK_TYPE_DATA,*LPNET_DVR_CALLBACK_TYPE_DATA; typedef struct tagNET_DVR_DRAG_POS_PARAM { DWORD dwChannel; DWORD dwPtzChannel; NET_VCA_POINT struToPoint; NET_VCA_POINT struOriPoint; BYTE byRes[56]; }NET_DVR_DRAG_POS_PARAM,*LPNET_DVR_DRAG_POS_PARAM; typedef struct tagNET_DVR_QUERY_STATUS { DWORD dwSize; BYTE byCpuLoad; BYTE byMemLoad; WORD wAbility; WORD wRemainAbility; WORD wTotalPlanNum; WORD wCurPlanNum; BYTE byRes[62]; }NET_DVR_QUERY_STATUS, *LPNET_DVR_QUERY_STATUS; typedef struct tagNET_DVR_MONITOR_VQDCFG { DWORD dwSize; BYTE byEnable; BYTE byDevType; BYTE bySignalPoint; BYTE byBlurPoint; BYTE byLumaPoint; BYTE byChromaPoint; BYTE bySnowPoint; BYTE byStreakPoint; BYTE byFreezePoint; BYTE byPTZPoint; BYTE byMonitorDel; BYTE byContrastThreshold; BYTE byMonoThreshold; BYTE byShakeThreshold; BYTE byFlashThreshold; BYTE byCoverThreshold; BYTE bySceneThreshold; BYTE byDarkThreshold; BYTE byRes[46]; }NET_DVR_MONITOR_VQDCFG, *LPNET_DVR_MONITOR_VQDCFG; typedef struct tagNET_DVR_DIAGNOSIS_UPLOAD { DWORD dwSize; char sStreamID[STREAM_ID_LEN]; char sMonitorIP[64]; DWORD dwChanIndex; DWORD dwWidth; DWORD dwHeight; NET_DVR_TIME struCheckTime; BYTE byResult; BYTE bySignalResult; BYTE byBlurResult; BYTE byLumaResult; BYTE byChromaResult; BYTE bySnowResult; BYTE byStreakResult; BYTE byFreezeResult; BYTE byPTZResult; BYTE byContrastResult; BYTE byMonoResult; BYTE byShakeResult; char sSNapShotURL[256]; BYTE byFlashResult; BYTE byCoverResult; BYTE bySceneResult; BYTE byDarkResult; BYTE byStreamType; BYTE byRes2[59]; }NET_DVR_DIAGNOSIS_UPLOAD, *LPNET_DVR_DIAGNOSIS_UPLOAD; typedef struct tagNET_DVR_DOWN_LOAD_REQUEST { NET_DVR_STREAM_INFO struStreamInfo; char sSnapShotURL[256]; BYTE byRes[32]; }NET_DVR_DOWN_LOAD_REQUEST, *LPNET_DVR_DOWN_LOAD_REQUEST; typedef struct tagNET_DVR_VQD_RESULT_INFO { DWORD dwSize; char sStreamID[32]; DWORD dwPicLength; BYTE byStatus; BYTE byRes[31]; char *pSnapShot; }NET_DVR_VQD_RESULT_INFO, *LPNET_DVR_VQD_RESULT_INFO; typedef struct tagNET_DVR_PLAN_VQD_CFG { DWORD dwSize; BYTE sPlanID[PLAN_ID_LEN]; NET_DVR_SCHEDTIME struDetectTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byPlanMode; BYTE byRes1; BYTE byCheckFlag; BYTE bySignal; BYTE byBlur; BYTE byLuma; BYTE byChroma; BYTE bySnow; BYTE byStreak; BYTE byFreeze; BYTE byPTZ; BYTE byEnablePlanRound; BYTE byContrast; BYTE byMono; BYTE byShake; BYTE byFlash; BYTE byCover; BYTE byScene; BYTE byDark; BYTE byRes[13]; }NET_DVR_PLAN_VQD_CFG, *LPNET_DVR_PLAN_VQD_CFG; typedef struct tagNET_DVR_TEST_SPOTCFG { DWORD dwSize; BYTE byStepCount; BYTE byStepIndex; BYTE byRes[14]; }NET_DVR_TEST_SPOTCFG, *LPNET_DVR_TEST_SPOTCFG; typedef enum tagNET_DVR_IPC_ENUM { ENUM_BUSINESS_INVALID = -1, ENUM_BUSINESS_HIKVISION = 0, ENUM_BUSINESS_PANASONIC, ENUM_BUSINESS_SONY, ENUM_BUSINESS_AXIS, ENUM_BUSINESS_SANYO, ENUM_BUSINESS_BOSCH, ENUM_BUSINESS_ZAVIO, ENUM_BUSINESS_GRANDEYE, ENUM_BUSINESS_PROVIDEO, ENUM_BUSINESS_ARECONT, ENUM_BUSINESS_ACTI, ENUM_BUSINESS_PELCO, ENUM_BUSINESS_VIVOTEK, ENUM_BUSINESS_INFINOVA, ENUM_BUSINESS_DAHUA, ENUM_BUSINESS_HIK_STD_H264 = 0x20, ENUM_BUSINESS_HIK_STD_MPEG4, ENUM_BUSINESS_SUNELL , ENUM_BUSINESS_ATEME , ENUM_BUSINESS_LAUNCH, ENUM_BUSINESS_YAAN, ENUM_BUSINESS_BLUESKY, ENUM_BUSINESS_BLUESKYLIMIT, ENUM_BUSINESS_TDWY, ENUM_BUSINESS_HBGK, ENUM_BUSINESS_SANTACHI, ENUM_BUSINESS_HIGHEASY, ENUM_BUSINESS_SAMSUNG, ENUM_BUSINESS_URL_RTSP = 0x40, ENUM_BUSINESS_ONVIF, ENUM_MAX_BUSINESS_TYPE, } NET_DVR_IPC_ENUM, *LPNET_DVR_IPC_ENUM; typedef enum tagNET_DVR_IPC_ENUM_UNIFY { ENUM_IPC_PROTOCOL_INVALID = -1, ENUM_IPC_PROTOCOL_HIKVISION = 0, ENUM_IPC_PROTOCOL_PANASONIC , ENUM_IPC_PROTOCOL_SONY , ENUM_IPC_PROTOCOL_AXIS = 4, ENUM_IPC_PROTOCOL_SANYO , ENUM_IPC_PROTOCOL_BOSCH , ENUM_IPC_PROTOCOL_ZAVIO , ENUM_IPC_PROTOCOL_GRANDEYE , ENUM_IPC_PROTOCOL_PROVIDEO , ENUM_IPC_PROTOCOL_ARECONT , ENUM_IPC_PROTOCOL_ACTI , ENUM_IPC_PROTOCOL_PELCO , ENUM_IPC_PROTOCOL_VIVOTEK , ENUM_IPC_PROTOCOL_DAHUA , ENUM_IPC_PROTOCOL_SAMSUNG , ENUM_IPC_PROTOCOL_PSIA = 17, ENUM_IPC_PROTOCOL_ONVIF , ENUM_IPC_PROTOCOL_BRICKCOM , ENUM_IPC_PROTOCOL_GB28181 , ENUM_IPC_PROTOCOL_CANON = 23 , ENUM_IPC_PROTOCOL_HUINT = 32, ENUM_IPC_PROTOCOL_INFINOVA , ENUM_IPC_PROTOCOL_HIK_STD_H264, ENUM_IPC_PROTOCOL_HIK_STD_MPEG4 , ENUM_IPC_PROTOCOL_SUNELL , ENUM_IPC_PROTOCOL_ATEME , ENUM_IPC_PROTOCOL_LAUNCH , ENUM_IPC_PROTOCOL_YAAN, ENUM_IPC_PROTOCOL_BLUESKY , ENUM_IPC_PROTOCOL_BLUESKYLIMIT , ENUM_IPC_PROTOCOL_TDWY , ENUM_IPC_PROTOCOL_HBGK , ENUM_IPC_PROTOCOL_SANTACHI, ENUM_IPC_PROTOCOL_HIGHEASY, ENUM_IPC_PROTOCOL_HANBANG , ENUM_IPC_PROTOCOL_SAMSUNG_3120 , ENUM_IPC_PROTOCOL_SAMSUNG_3080 , ENUM_IPC_PROTOCOL_SAMSUNG_2000, ENUM_IPC_PROTOCOL_SAMSUNG_5200 , ENUM_IPC_PROTOCOL_JINGYUAN , ENUM_IPC_PROTOCOL_VIDEOTREC , ENUM_IPC_PROTOCOL_CHENOVA , ENUM_IPC_PROTOCOL_FENGHUO , ENUM_IPC_PROTOCOL_ZB_5301 , ENUM_IPC_PROTOCOL_ZB_5401 , ENUM_IPC_PROTOCOL_HAIXIN, ENUM_IPC_PROTOCOL_ZHONGYINGXIN , ENUM_IPC_PROTOCOL_AVUN , ENUM_IPC_PROTOCOL_GOVTY , ENUM_IPC_PROTOCOL_SAE , ENUM_IPC_PROTOCOL_DONGFANGWANGLI, ENUM_IPC_PROTOCOL_CHANGHONG, ENUM_IPC_PROTOCOL_H3C , ENUM_IPC_PROTOCOL_BAIAN , ENUM_IPC_PROTOCOL_HAT , ENUM_IPC_PROTOCOL_YUANYE, ENUM_IPC_PROTOCOL_HIKCARD , ENUM_IPC_PROTOCOL_HAIXINCAP , ENUM_IPC_PROTOCOL_WENANCAP , ENUM_IPC_PROTOCOL_XUNMEI , ENUM_IPC_PROTOCOL_BAIWO , ENUM_IPC_PROTOCOL_APD , ENUM_IPC_PROTOCOL_REACHDEV , ENUM_IPC_PROTOCOL_XUNMEI_DAHUA , ENUM_IPC_PROTOCOL_HUANGHE, ENUM_IPC_PROTOCOL_LIANCHEN , ENUM_IPC_PROTOCOL_CHENGYE, ENUM_IPC_PROTOCOL_VISIONDIGI , ENUM_IPC_PROTOCOL_HENGHE , ENUM_IPC_PROTOCOL_KODAK , ENUM_IPC_PROTOCOL_AIRONIX, ENUM_IPC_PROTOCOL_LG, ENUM_IPC_PROTOCOL_HASEE , ENUM_IPC_PROTOCOL_8000ME , ENUM_IPC_PROTOCOL_POVITEL , ENUM_IPC_PROTOCOL_YIVIEW, ENUM_IPC_PROTOCOL_TIANYUE , ENUM_IPC_PROTOCOL_HOWELL , ENUM_IPC_PROTOCOL_WAPA, ENUM_IPC_PROTOCOL_SANLE , ENUM_IPC_PROTOCOL_HIKCARD_ENCRYPTION, ENUM_IPC_PROTOCOL_JUNSDA , ENUM_IPC_PROTOCOL_LIYUAN , ENUM_IPC_PROTOCOL_XINCHAN , ENUM_IPC_PROTOCOL_BITE , ENUM_IPC_PROTOCOL_MEIAN, ENUM_IPC_PROTOCOL_ROSEEK, ENUM_IPC_PROTOCOL_AEBELL , ENUM_IPC_PROTOCOL_JSL_ST , ENUM_IPC_PROTOCOL_VIMICRO, ENUM_IPC_PROTOCOL_UNIVIEW, ENUM_IPC_PROTOCOL_TYPE, }NET_DVR_IPC_ENUM_UNIFY, *LPNET_DVR_IPC_ENUM_UNIFY; typedef struct tagNET_DVR_MRD_SEARCH_PARAM { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; WORD wYear; BYTE byMonth; BYTE byDrawFrame; BYTE byStreamType; BYTE byLocalOrUTC; BYTE byRes[30]; }NET_DVR_MRD_SEARCH_PARAM, *LPNET_DVR_MRD_SEARCH_PARAM; typedef struct tagNET_DVR_MRD_SEARCH_RESULT { DWORD dwSize; BYTE byRecordDistribution[LEN_32]; BYTE byHasEventRecode[LEN_31]; BYTE byRes; }NET_DVR_MRD_SEARCH_RESULT, *LPNET_DVR_MRD_SEARCH_RESULT; typedef struct tagNET_DVR_ACCESS_DEVICE_INFO { DWORD dwSize; BYTE byGroup; BYTE byProType; BYTE byAccessMode; BYTE byRes1; char szUserName[NAME_LEN]; char szPassword[PASSWD_LEN]; char szDomain[MAX_DOMAIN_NAME]; NET_DVR_IPADDR struIP; WORD wPort; BYTE szGB28181DevID[DEV_ID_LEN]; BYTE byRes2[2]; }NET_DVR_ACCESS_DEVICE_INFO, *LPNET_DVR_ACCESS_DEVICE_INFO; typedef struct tagNET_DVR_ACCESS_DEVICE_CHANNEL_INFO { DWORD dwSize; DWORD dwTotalChannelNum; BYTE byChannel[MAX_CHANNUM_V30]; BYTE byRes[32]; }NET_DVR_ACCESS_DEVICE_CHANNEL_INFO, *LPNET_DVR_ACCESS_DEVICE_CHANNEL_INFO; typedef struct tagNET_DVR_PREVIEW_SWITCH_COND { DWORD dwSize; BYTE byGroup; BYTE byVideoOutType; BYTE byGetDefaultPreviewSet; BYTE byPreviewNumber; }NET_DVR_PREVIEW_SWITCH_COND, *LPNET_DVR_PREVIEW_SWITCH_COND; typedef struct tagNET_DVR_PREVIEW_SWITCH_CFG { DWORD dwSize; WORD wSwitchSeq[MAX_WINDOW_V40]; BYTE byPreviewNumber; BYTE byEnableAudio; BYTE bySwitchTime; BYTE bySameSource ; BYTE byRes[32]; }NET_DVR_PREVIEW_SWITCH_CFG,* LPNET_DVR_PREVIEW_SWITCH_CFG; typedef struct tagNET_DVR_USER_COND { char szUserName[NAME_LEN]; BYTE byRes[48]; }NET_DVR_USER_COND, *LPNET_DVR_USER_COND; typedef struct tagNET_DVR_USER_RIGHT_CFG { DWORD dwSize; BYTE byAddMonitoringPointRight; BYTE byModMonitoringPointRight; BYTE byDelMonitoringPointRight; BYTE bySetRecordPlanRight; BYTE byDelRecordPlanRight; BYTE byEnableOrDisableRecordPlanRight; BYTE byManualRecordRight; BYTE bySetAlarmRecordRight; BYTE byRecordBackupRight; BYTE byRecordDownloadRight; BYTE byRecordDeleteRight; BYTE byDelBackupRecordRight; BYTE bySetBackupVolumeRight; BYTE byRecordPlayBackRight; BYTE byLogDeleteRight; BYTE byLogDownloadRight; BYTE byAddUserRight; BYTE byDelUserRight; BYTE byModUserRight; BYTE byAllocUserRight; BYTE byRes[128]; }NET_DVR_USER_RIGHT_CFG, *LPNET_DVR_USER_RIGHT_CFG; typedef struct tagNET_DVR_MACHINE_MAX_NUM_CFG { DWORD dwSize; DWORD dwMaxNum; BYTE byRes[32]; }NET_DVR_MACHINE_MAX_NUM_CFG, *LPNETDVR_MACHINE_MAX_NUM_CFG; typedef struct tagNET_DVR_N_PLUS_ONE_WORK_MODE_CFG { DWORD dwSize ; BYTE byWorkMode; BYTE byRes[127]; }NET_DVR_N_PLUS_ONE_WORK_MODE_CFG, *LPNET_DVR_N_PLUS_ONE_WORK_MODE_CFG; typedef struct tagNET_DVR_ADD_PARAM { NET_DVR_IPADDR struIP; char szPassword[PASSWD_LEN]; BYTE byAddType; BYTE byDisableBackup; }NET_DVR_ADD_PARAM, *LPNET_DVR_ADD_PARAM; typedef struct tagNET_DVR_DEL_PARAM { NET_DVR_IPADDR struIP; BYTE byDelType; }NET_DVR_DEL_PARAM, *LPNET_DVR_DEL_PARAM; typedef union tagNET_DVR_NPO_PARAM_UNION { NET_DVR_ADD_PARAM struAddParam; NET_DVR_DEL_PARAM struDelParam; }NET_DVR_NPO_PARAM_UNION, *LPNET_DVR_NPO_PARAM_UNION; typedef struct tagNET_DVR_N_PLUS_ONE_DEVICE_PARAM { DWORD dwSize; NET_DVR_NPO_PARAM_UNION unionParam; BYTE byType; BYTE byRes[3]; char szUserName[NAME_LEN]; BYTE byRes2[220]; }NET_DVR_N_PLUS_ONE_DEVICE_PARAM, *LPNET_DVR_N_PLUS_ONE_DEVICE_PARAM; typedef struct tagNET_DVR_DATA_CALLBACK_CFG { DWORD dwSize; BYTE byEnable; BYTE byDelData; BYTE byRes[30]; }NET_DVR_DATA_CALLBACK_CFG, *LPNET_DVR_DATA_CALLBACK_CFG; typedef struct tagNET_DVR_HD_STATUS { DWORD dwSize; BYTE bySleepStatus; BYTE byRes[127]; }NET_DVR_HD_STATUS, *LPNET_DVR_HD_STATUS; typedef struct tagNET_DVR_RAID_BTS_CFG { DWORD dwSize; BYTE bySpeed; BYTE byRes[127]; }NET_DVR_RAID_BTS_CFG, *LPNET_DVR_RAID_BTS_CFG; typedef struct tagNET_DVR_LUN_CLONE { DWORD dwSize; DWORD dwSrcLunID; DWORD dwDstLunID; BYTE byRes[32]; }NET_DVR_LUN_CLONE, *LPNET_DVR_LUN_CLONE; typedef struct tagNET_DVR_LUN_EXPAND { DWORD dwSize; DWORD dwLunID; DWORD dwHSize; DWORD dwLSize; char szArrayIDGroup[NAME_LEN]; char szNewLunName[MAX_NAMELEN]; BYTE byRes[32]; }NET_DVR_LUN_EXPAND, *LPNET_DVR_LUN_EXPAND; typedef struct tagNET_DVR_DVR_NET_DISK_MODIFY { DWORD dwSize; char szOldDvrNetDiskName[MAX_NAMELEN]; char szNewDvrNetDiskName[MAX_NAMELEN]; NET_DVR_IPADDR struWarrantIP; BYTE byRes[32]; }NET_DVR_DVR_NET_DISK_MODIFY, *LPNET_DVR_DVR_NET_DISK_MODIFY; typedef struct tagNET_DVR_NAS_PARAM { DWORD dwSize; DWORD dwLunID; BYTE byRes[32]; }NET_DVR_NAS_PARAM, *LPNET_DVR_NAS_PARAM; typedef struct tagNET_DVR_ISCSI_PARAM { DWORD dwSize; DWORD dwTargetID; DWORD dwLunID; DWORD dwAccessMode; NET_DVR_IPADDR struClientIP; BYTE byRes[32]; }NET_DVR_ISCSI_PARAM, *LPNET_DVR_ISCSI_PARAM; typedef struct tagNET_DVR_FC_PARAM { DWORD dwSize; DWORD dwStoreLunID; DWORD dwLogicLunID; DWORD dwHbaID; DWORD dwAccessMode; char szClientWWWPN[NAME_LEN]; BYTE byRes[32]; }NET_DVR_FC_PARAM, *LPNET_DVR_FC_PARAM; typedef struct tagNET_DVR_LUN_PARAM { DWORD dwHCapacity; DWORD dwLCapacity; char szName[MAX_NAMELEN]; DWORD dwBlockSize; char szArrayIDGroup[NAME_LEN]; }NET_DVR_LUN_PARAM, *LPNET_DVR_LUN_PARAM; typedef struct tagNET_DVR_DVR_PARAM_ { DWORD dwHCapacity; DWORD dwLCapacity; char szName[MAX_NAMELEN]; DWORD dwBlockSize; NET_DVR_IPADDR struWarrantIP; char szArrayIDGroup[NAME_LEN]; }NET_DVR_DVR_PARAM, *LPNET_DVR_DVR_PARAM; typedef union tagNET_DVR_VD_UNION { BYTE byUnionLen[256]; NET_DVR_OPERATE_VD_PARAM struHikVDParam; NET_DVR_LUN_PARAM struLunParam; NET_DVR_DVR_PARAM struDvrParam; }NET_DVR_VD_UNION, *LPNET_DVR_VD_UNION; typedef struct tagNET_DVR_OPERATE_VD_PARAM_EX { BYTE byVDType; BYTE byRes1[3]; NET_DVR_VD_UNION uVDParam; BYTE byRes2[32]; }NET_DVR_OPERATE_VD_PARAM_EX, *LPNET_DVR_OPERATE_VD_PARAM_EX; typedef struct tagNET_DVR_CVR_ALARM { char szFirstType[NAME_LEN]; char szFirstIndex[NAME_LEN]; char szSecondType[NAME_LEN]; NET_DVR_TIME struTime; BYTE byStatus; BYTE byAlarmLevel; BYTE byRes1[2]; char szSecondIndex[NAME_LEN]; char szThirdType[NAME_LEN]; char szThirdIndex[NAME_LEN]; char szFourthType[NAME_LEN]; char szFourthIndex[NAME_LEN]; BYTE byRes2[92]; }NET_DVR_CVR_ALARM, *LPNET_DVR_CVR_ALARM; typedef struct tagNET_DVR_WORKING_DEVICE_INFO { NET_DVR_IPADDR struIP; BYTE byLinkStatus; BYTE byWorkStatus; BYTE byBacupStatus; BYTE bySyncProgress; NET_DVR_TIME_EX struSyncBeginTime; NET_DVR_TIME_EX struSyncEndTime; char szSerialNumber[SERIALNO_LEN] ; DWORD dwSoftwareVersion ; BYTE byWorkingDeviceGUID[GUID_LEN]; char szDevTypeName[DEV_TYPE_NAME_LEN]; WORD wDevType; }NET_DVR_WORKING_DEVICE_INFO, *LPNET_DVR_WORKING_DEVICE_INFO; typedef struct tagNET_DVR_REDUNDANT_DEVICE_INFO { NET_DVR_IPADDR struIP; BYTE byWorkStatus; BYTE byBackupStatus; WORD wBackupPort; }NET_DVR_REDUNDANT_DEVICE_INFO, *LPNET_DVR_REDUNDANT_DEVICE_INFO; typedef struct tagNET_DVR_WORKING_DEVICE_INFO_V50 { NET_DVR_WORKING_DEVICE_INFO struWorkingDeviceInfo; char szUserName[NAME_LEN]; BYTE byRes[32]; }NET_DVR_WORKING_DEVICE_INFO_V50, *LPNET_DVR_WORKING_DEVICE_INFO_V50; typedef struct tagNET_DVR_REDUNDANT_DEVICE_INFO_V50 { NET_DVR_REDUNDANT_DEVICE_INFO struRedundantDeviceInfo; char szUserName[NAME_LEN]; BYTE byRes[32]; }NET_DVR_REDUNDANT_DEVICE_INFO_V50, *LPNET_DVR_REDUNDANT_DEVICE_INFO_V50; typedef union tagNET_DVR_NPO_DEV_INFO_UNION { BYTE byUnionLen[512]; NET_DVR_WORKING_DEVICE_INFO struWorkingDeviceInfo; NET_DVR_REDUNDANT_DEVICE_INFO struRedundantDeviceInfo; NET_DVR_WORKING_DEVICE_INFO_V50 struWorkingDeviceInfoV50; NET_DVR_REDUNDANT_DEVICE_INFO_V50 struRedundantDeviceInfoV50; }NET_DVR_NPO_DEV_INFO_UNION, *LPNET_DVR_NPO_DEV_INFO_UNION; typedef struct tagNET_DVR_N_PLUS_ONE_DEVICE_INFO { DWORD dwSize; NET_DVR_NPO_DEV_INFO_UNION unionDevInfo; BYTE byType; BYTE byRes[127]; }NET_DVR_N_PLUS_ONE_DEVICE_INFO, *LPNET_DVR_N_PLUS_ONE_DEVICE_INFO; typedef struct tagNET_DVR_UPGRADE_IPC_PARAM { NET_DVR_STREAM_INFO struStreamInfo[MAX_CHANNUM_V30]; char szFileName[260]; }NET_DVR_UPGRADE_IPC_PARAM, *LPNET_DVR_UPGRADE_IPC_PARAM; typedef struct tagNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE { NET_DVR_STREAM_INFO struStreamInfo; WORD wErrCode; BYTE byRes[30]; }NET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE, *LPNET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE; typedef struct tagNET_DVR_UPGRADE_IPC_ERR_INFO { NET_DVR_UPGRADE_IPC_ERR_INFO_SINGLE struErrInfoSingle[MAX_CHANNUM_V30]; }NET_DVR_UPGRADE_IPC_ERR_INFO, *LPNET_DVR_UPGRADE_IPC_ERR_INFO; typedef struct tagNET_DVR_IPC_CFG_FILE_PARAM { char szFileName[260]; BYTE byRes[32]; }NET_DVR_IPC_CFG_FILE_PARAM, *LPNET_DVR_IPC_CFG_FILE_PARAM; typedef struct tagNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE { WORD wRow; WORD wErrCode; BYTE byRes[32]; }NET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE, *LPNET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE; typedef struct tagNET_DVR_IPC_CFG_FILE_ERR_INFO { NET_DVR_IPC_CFG_FILE_ERR_INFO_SINGLE struErrInfoSingle[MAX_CHANNUM_V30]; }NET_DVR_IPC_CFG_FILE_ERR_INFO, *LPNET_DVR_IPC_CFG_FILE_ERR_INFO; typedef struct tagNET_DVR_TRANSFER_SWITCH { DWORD dwEnable; BYTE byRes[64]; }NET_DVR_TRANSFER_SWITCH, *LPNET_DVR_TRANSFER_SWITCH; typedef struct tagNET_DVR_PTZ_PATTERN { DWORD dwSize; DWORD dwChannel; DWORD dwPatternCmd; DWORD dwPatternID; BYTE byRes[64]; }NET_DVR_PTZ_PATTERN, *LPNET_DVR_PTZ_PATTERN; typedef struct tagNET_DVR_PTZ_PARKACTION_CFG { DWORD dwSize; BYTE byEnable; BYTE byOneTouchSwitch; BYTE byRes1[2]; DWORD dwParkTime; WORD wActionType; WORD wID; BYTE byRes[128]; }NET_DVR_PTZ_PARKACTION_CFG, *LPNET_DVR_PTZ_PARKACTION_CFG; typedef struct tagNET_DVR_PTZ_MANUALTRACE { DWORD dwSize; DWORD dwChannel; NET_VCA_POINT struPoint; BYTE byTrackType; BYTE byLinkageType; BYTE byRes[2]; NET_VCA_POINT struPointEnd; NET_DVR_TIME_V30 struTime; DWORD dwSerialNo; BYTE byRes1[36]; }NET_DVR_PTZ_MANUALTRACE, *LPNET_DVR_PTZ_MANUALTRACE; typedef enum tagVQD_TYPE { VQD_BLUR_FLAG = 0x00000001, VQD_LUMA_FLAG = 0x00000002, VQD_CHROMA_FLAG = 0x00000004, VQD_SNOW_FLAG = 0x00000008, VQD_STREAK_FLAG = 0x00000010, VQD_FREEZE_FLAG = 0x00000020, VQD_SIGLOSE_FLAG = 0x00000040, VQD_PTZ_FLAG = 0x00000080 }VQD_TYPE; typedef struct tagNET_DVR_VQD_LOOP_DIAGNOSE_CFG { DWORD dwSize ; BYTE byEnable; BYTE byRes1[3] ; BYTE byVQDTypeEnable[32]; BYTE byThresholdValue[32] ; NET_DVR_HANDLEEXCEPTION_V40 struAlarmHandleType; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_SCHEDTIME struHolidayAlarmTime[MAX_TIMESEGMENT_V30]; BYTE byRes[324]; }NET_DVR_VQD_LOOP_DIAGNOSE_CFG, *LPNET_DVR_VQD_LOOP_DIAGNOSE_CFG; typedef struct tagNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO { DWORD dwChannelNO; DWORD dwVQDType; NET_DVR_TIME struDiagnoseTime; BYTE byScoreValue; BYTE byRes[27]; }NET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO,*LPNET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO; typedef struct tagNET_DVR_VQD_DIAGNOSE_INFO { DWORD dwSize ; NET_DVR_VQD_DIAGNOSE_EXCEPTION_INFO struVQDDiagnoseExceptionInfo ; }NET_DVR_VQD_DIAGNOSE_INFO, *LPNET_DVR_VQD_DIAGNOSE_INFO; typedef struct tagNET_DVR_DEC_RESOURCE_LIST { DWORD dwSize; BYTE byDecStatus[MAX_SUBSYSTEM_NUM_V40]; BYTE byRes[32]; }NET_DVR_DEC_RESOURCE_LIST,*LPNET_DVR_DEC_RESOURCE_LIST; typedef struct tagNET_DVR_DEC_APPLICANT_INFO { DWORD dwSize; DWORD dwDecResource; DWORD dwChannel; NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes[18]; }NET_DVR_DEC_APPLICANT_INFO,*LPNET_DVR_DEC_APPLICANT_INFO; typedef struct tagNET_DVR_DEC_RESOURCE_INFO { DWORD dwSize; DWORD dwSlotNum; NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes1[2]; DWORD dwDecChan; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; BYTE byRes2[32]; }NET_DVR_DEC_RESOURCE_INFO,*LPNET_DVR_DEC_RESOURCE_INFO; typedef struct tagNET_DVR_DEC_CHAN_COND { DWORD dwSize; DWORD dwSlotNum; DWORD dwDecChan; BYTE byRes[16]; }NET_DVR_DEC_CHAN_COND,*LPNET_DVR_DEC_CHAN_COND; typedef struct tagNET_DVR_DEC_YUV_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwYUVAddress[3]; WORD wWidth; WORD wHeight; BYTE byEnableAudio; BYTE byRes2[3]; DWORD dwAudioAddr; BYTE byRes3[16]; }NET_DVR_DEC_YUV_CFG,*LPNET_DVR_DEC_YUV_CFG; typedef struct tagNET_DVR_INPUT_INFO { DWORD dwSize; BYTE byChanType; BYTE byRes1[3]; DWORD dwChanNo; DWORD dwSubChanNo; DWORD dwVariableNo; BYTE byRemoteType; BYTE byLinkageIPCType; BYTE byLinkageTriggerType; BYTE byRes2[57]; }NET_DVR_INPUT_INFO, *LPNET_DVR_INPUT_INFO; typedef struct tagNET_DVR_ALARM_VARIABLE_CFG { DWORD dwSize; WORD wVariableIndex; WORD wVariableType; BYTE sDescribe[NAME_LEN]; BYTE byLimitLineType; BYTE byRemoteType; BYTE byRes[30]; }NET_DVR_ALARM_VARIABLE_CFG, *LPNET_DVR_ALARM_VARIABLE_CFG; typedef struct tagNET_DVR_ALARM_SENSOR_POINT_CFG { int nMeasureHigh; int nMeasureLow; BYTE byAlarmMode; BYTE byRes1[3]; int nAlarmValue[4]; DWORD dwOsdCfg; DWORD dwSensitive; DWORD dwIPChanOsd; char szOSDUnit[MAX_OSD_UNIT_LEN]; BYTE byRes[16]; }NET_DVR_ALARM_SENSOR_POINT_CFG,*LPNET_DVR_ALARM_SENSOR_POINT_CFG; typedef struct tagNET_DVR_ALARM_SWITCH_POINT_CFG { DWORD dwIPCChanOsd; BYTE byRes[60]; }NET_DVR_ALARM_SWITCH_POINT_CFG,*LPNET_DVR_ALARM_SWITCH_POINT_CFG; typedef union tagNET_DVR_ALARM_POINT_PARAM_UNION { BYTE byLength[64]; NET_DVR_ALARM_SENSOR_POINT_CFG struSensor; NET_DVR_ALARM_SWITCH_POINT_CFG struSwitch; }NET_DVR_ALARM_POINT_PARAM_UNION,*LPNET_DVR_ALARM_POINT_PARAM_UNION; typedef struct tagNET_DVR_ALARM_POINT_CFG { DWORD dwSize; DWORD dwPointNo; BYTE sPointDescribe[NAME_LEN]; NET_DVR_ALARM_POINT_PARAM_UNION struPointParam; BYTE byPointType; BYTE byChanType; BYTE byRes1[2]; DWORD dwChanNo; DWORD dwSubChanNo; DWORD dwVariableNo; BYTE byRes[16]; }NET_DVR_ALARM_POINT_CFG, *LPNET_DVR_ALARM_POINT_CFG; typedef struct _NET_DVR_SEARCH_CONDITION { DWORD dwSize; BYTE byMajorType; BYTE byMinorType; BYTE byRes1[2]; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byChanType; BYTE byRes2[3]; DWORD dwChanNo; DWORD dwSubChanNo; DWORD dwVariableNo; DWORD dwPointNo; BYTE byRes3[32]; }NET_DVR_SEARCH_CONDITION, *LPNET_DVR_SEARCH_CONDITION; typedef struct _NET_DVR_HISTORY_DATA { DWORD dwSize; NET_DVR_TIME struTime; BYTE byChanType; BYTE byRes1[3]; DWORD dwChanNo; DWORD dwSubChanNo; DWORD dwVariableNo; DWORD dwPointNo; int iData; BYTE byDataType; BYTE byRes2[31]; }NET_DVR_HISTORY_DATA, *LPNET_DVR_HISTORY_DATA; typedef struct tagNET_DVR_ALARMHOST_ALARM_MODE_CFG { DWORD dwSize; BYTE byDataUploadMode; BYTE byRes[31]; }NET_DVR_ALARMHOST_ALARM_MODE_CFG,*LPNET_DVR_ALARMHOST_ALARM_MODE_CFG; typedef struct tagNET_DVR_ALARMHOST_POINT_VALUE { BYTE byChanType; BYTE byPointType; BYTE byRes1[2]; DWORD dwChanNo; DWORD dwSubChanNo; DWORD dwVariableNo; DWORD dwPointNo; int iValue; BYTE byRes[16]; }NET_DVR_ALARMHOST_POINT_VALUE,*LPNET_DVR_ALARMHOST_POINT_VALUE; typedef union tagNET_DVR_ALARMHOST_DATA_UNION { BYTE byLength[40]; NET_DVR_ALARMHOST_POINT_VALUE struPointValue; }NET_DVR_ALARMHOST_DATA_UNION,*LPNET_DVR_ALARMHOST_DATA_UNION; typedef struct tagNET_DVR_ALARMHOST_DATA_UPLOAD { DWORD dwSize; BYTE byDataType; BYTE byRes1[3]; NET_DVR_ALARMHOST_DATA_UNION struAlarmData; BYTE byRes2[32]; }NET_DVR_ALARMHOST_DATA_UPLOAD, *LPNET_DVR_ALARMHOST_DATA_UPLOAD; typedef struct tagNET_DVR_INPUTVOLUME { DWORD dwSize; BYTE byAudioInputChan; BYTE byRes[63]; }NET_DVR_INPUTVOLUME, *LPNET_DVR_INPUTVOLUME; typedef struct tagNET_DVR_AUDIOOUT_VOLUME { DWORD dwSize; BYTE byAudioOutVolume; BYTE byRes[63]; }NET_DVR_AUDIOOUT_VOLUME,*LPNET_DVR_AUDIOOUT_VOLUME; typedef struct tagNET_DVR_FUZZY_UPGRADE { DWORD dwSize; char sUpgradeInfo[MAX_UPGRADE_INFO_LEN]; BYTE byRes[64]; }NET_DVR_FUZZY_UPGRADE,*LPNET_DVR_FUZZY_UPGRADE; typedef struct tagNET_DVR_RS485_WORK_MODE { DWORD dwSize; BYTE byWorkMode; BYTE byRes[31]; }NET_DVR_RS485_WORK_MODE, *LPNET_DVR_RS485_WORK_MODE; typedef struct tagNET_DVR_TRANSPARENT_CLIENT_SINGLE { BYTE byEnable; BYTE byRes1[3]; NET_DVR_IPADDR struIP; WORD wPort; BYTE byRes2[18]; }NET_DVR_TRANSPARENT_CLIENT_SINGLE, *LPNET_DVR_TRANSPARENT_CLIENT_SINGLE; typedef struct tagNET_DVR_TRANSPARENT_SERVER_SINGLE { BYTE byEnable; BYTE byRes1[3]; NET_DVR_IPADDR struIP; BYTE byRes2[16]; }NET_DVR_TRANSPARENT_SERVER_SINGLE, *LPNET_DVR_TRANSPARENT_SERVER_SINGLE; typedef struct tagNET_DVR_TRANSPARENT_CLIENT_MODE { NET_DVR_TRANSPARENT_CLIENT_SINGLE struClientSingle[MAX_TRANSPARENT_CHAN_NUM]; BYTE byRes[320]; }NET_DVR_TRANSPARENT_CLIENT_MODE, *LPNET_DVR_TRANSPARENT_CLIENT_MODE; typedef struct tagNET_DVR_TRANSPARENT_SERVER_MODE { WORD wPort; BYTE byRes1[2]; NET_DVR_TRANSPARENT_SERVER_SINGLE struServerSingle[MAX_TRANSPARENT_ACCESS_NUM]; BYTE byRes2[332]; }NET_DVR_TRANSPARENT_SERVER_MODE, *LPNET_DVR_TRANSPARENT_SERVER_MODE; typedef union tagNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION { BYTE byRes[512]; NET_DVR_TRANSPARENT_CLIENT_MODE struClientMode; NET_DVR_TRANSPARENT_SERVER_MODE struServerMode; }NET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION, *LPNET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION; typedef struct tagNET_DVR_TRANSPARENT_CHAN_CFG { DWORD dwSize; BYTE byWorkMode; BYTE byRes[3]; NET_DVR_TRANSPARENT_CHAN_WORK_MODE_UNION struTransparentPara; }NET_DVR_TRANSPARENT_CHAN_CFG, *LPNET_DVR_TRANSPARENT_CHAN_CFG; typedef struct tagNET_DVR_NAKED_DATA_INFO { char sSocketIP[128]; WORD wSocktPort; BYTE byRes[258]; }NET_DVR_NAKED_DATA_INFO, *LPNET_DVR_NAKED_DATA_INFO; typedef enum tagNAKED_DATA_TYPE { NAKED_DATA_TYPE_NOT_DEFINED = 0, NAKED_DATA_TYPE_POS_INFO }NAKED_DATA_TYPE; typedef struct tagNET_DVR_NAKED_DATA_PARAM { WORD wPort; BYTE byRes[130]; }NET_DVR_NAKED_DATA_PARAM, *LPNET_DVR_NAKED_DATA_PARAM; #define UPLOAD_POS_INFO 1001 typedef struct tagNET_DVR_POS_INFO { NET_DVR_STRUCTHEAD struVerHead; DWORD dwChannelNum; BYTE byRes[60]; }NET_DVR_POS_INFO, *LPNET_DVR_POS_INFO; #define MAX_IGNORE_STRING_NUM 4 #define FILTERRULE_NUM 4 #define MAX_POS_FILTER_DATA_LEN 128 typedef struct tagNET_DVR_POS_OSD_REGION { NET_VCA_POINT struStart; NET_VCA_POINT struEnd; }NET_DVR_POS_OSD_REGION, *LPNET_DVR_POS_OSD_REGION; typedef struct tagNET_DVR_POS_ACTION { DWORD dwDelayTime; BYTE byPrevOsd; BYTE byRes1[3]; NET_DVR_POS_OSD_REGION struOsdPosInfo; BYTE byRes[64]; }NET_DVR_POS_ACTION, *LPNET_DVR_POS_ACTION; typedef struct tagNET_DVR_GENERIC_START { BYTE sData[MAX_POS_FILTER_DATA_LEN]; BYTE byExclusive; BYTE byFlagType; BYTE byRes[2]; }NET_DVR_GENERIC_START, *LPNET_DVR_GENERIC_START; typedef struct tagNET_DVR_GENERIC_END { BYTE sData[MAX_POS_FILTER_DATA_LEN]; BYTE byExclusive; BYTE byFlagType; BYTE byRes[6]; } NET_DVR_GENERIC_END, *LPNET_DVR_GENERIC_END; typedef struct tagNET_DVR_GENERIC_DATA_CFG { BYTE sData[MAX_POS_FILTER_DATA_LEN]; BYTE byFlagType; BYTE byRes[3]; }NET_DVR_GENERIC_DATA_CFG, *LPNET_DVR_GENERIC_DATA_CFG; typedef struct tagNET_DVR_IGNORE_STRING { BYTE sData[MAX_POS_FILTER_DATA_LEN]; }NET_DVR_IGNORE_STRING, *LPNET_DVR_IGNORE_STRING; typedef struct tagNET_DVR_POS_GENERIC { BYTE byCaseSensitive; BYTE byRes1[7]; NET_DVR_GENERIC_START struTransactionStart; NET_DVR_GENERIC_END struTransactionEnd; NET_DVR_GENERIC_DATA_CFG struLineDeli; NET_DVR_IGNORE_STRING struIgnoreString[MAX_IGNORE_STRING_NUM]; BYTE byRes[40]; }NET_DVR_POS_GENERIC, *LPNET_DVR_GENERIC; typedef struct tagNET_DVR_POS_AVE { DWORD dwPosAddr; BYTE byRes[948]; }NET_DVR_POS_AVE, *LPNET_DVR_AVE; #define SERIAL_NUM_LEN 8 typedef struct tagNET_DVR_POS_NUCLEUS { char szEmployeeNo[SERIAL_NUM_LEN]; char szTerminalNo[SERIAL_NUM_LEN]; char szShiftNo[SERIAL_NUM_LEN]; BYTE byRes[928]; }NET_DVR_POS_NUCLEUS, *LPNET_DVR_POS_NUCLEUS; typedef union _NET_DVR_POS_PROTOCOL_UNION { BYTE byLenth[952]; NET_DVR_POS_GENERIC struGeneric; NET_DVR_POS_AVE struAve; NET_DVR_POS_NUCLEUS struNUCLEUS; }NET_DVR_POS_PROTOCOL_UNION,*LPNET_DVR_POS_PROTOCOL_UNION; typedef enum tagNET_DVR_CHARSET_ENUM { ENUM_UTF8 =0, ENUM_GB2312, ENUM_LATIN1, ENUM_LATIN2, ENUM_LATIN3, ENUM_LATIN4, ENUM_CYRILLIC, ENUM_ARABIC, ENUM_GREEK, ENUM_HEBREW, ENUM_TURKISH, ENUM_NORDIC, ENUM_THAI, ENUM_LATIN7, ENUM_LATIN8, ENUM_LATIN9, ENUM_LATIN10, ENUM_CENTRAL_EUROPEAN, ENUM_CYRILLIC_SCRIPT, ENUM_HEBREW_DOS862 }NET_DVR_CHARSET_ENUM, *LPNET_DVR_CHARSET_ENUM; typedef struct tagNET_DVR_POS_FILTER_CFG { DWORD dwSize; BYTE byEnable; BYTE byCharSetType; BYTE byRes1; BYTE byProtocolType; NET_DVR_POS_PROTOCOL_UNION uPosProtocol; BYTE byRes[32]; }NET_DVR_POS_FILTER_CFG, *LPNET_DVR_POS_FILTER_CFG; typedef struct tagNET_DVR_NET_SNIFF { BYTE byEnableSourcePort; BYTE byEnableDestAddr; BYTE byEnableDestPort; BYTE byRes1; BYTE bySourceIpAddr[MAX_DOMAIN_NAME]; BYTE byDestinationIpAddr[MAX_DOMAIN_NAME]; WORD wSourcePort; WORD wDestinationPort; BYTE byRes[16]; }NET_DVR_NET_SNIFF, *LPNET_DVR_NET_SNIFF; typedef struct tagNET_DVR_NET_RECEIVE { WORD wNetPort; BYTE byRes[2]; }NET_DVR_NET_RECEIVE, *LPNET_DVR_NET_RECEIVE; typedef struct tagNET_DVR_MONITOR_INFO { WORD wPort; BYTE byRes1[2]; NET_DVR_IPADDR struRestrictRemoteIP; BYTE byRes[164]; }NET_DVR_MONITOR_INFO, *LPNET_DVR_MONITOR_INFO; typedef union tagNET_DVR_POS_CONNECTMODE_UNION { BYTE byLen[312]; NET_DVR_NET_RECEIVE struNetRecv; NET_DVR_MONITOR_INFO struTcpMonitor; NET_DVR_SINGLE_RS232 struRS232; NET_DVR_MONITOR_INFO struUdpMonitor; NET_DVR_NET_SNIFF struSniff; NET_DVR_ADDRESS struMcast; NET_DVR_USB_RS232 struUSBRS232; }NET_DVR_POS_CONNECTMODE_UNION, *LPNET_DVR_POS_CONNECTMODE_UNION; typedef struct tagNET_DVR_CONNECT_POS_CFG { DWORD dwSize; BYTE byConnectMode; BYTE byRes1[3]; NET_DVR_POS_CONNECTMODE_UNION uPosConnMode; BYTE byRes[64]; }NET_DVR_CONNECT_POS_CFG, *LPNET_DVR_CONNECT_POS_CFG; typedef struct tagNET_DVR_CHAN_FILTER_CFG { DWORD dwSize; BYTE byFilterID; BYTE byFontSize; BYTE byShowPosInfo; BYTE byOverlayMode; DWORD dwDelayTime; NET_DVR_POS_OSD_REGION struOsdPosInfo; NET_DVR_RGB_COLOR struOsdColor; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; DWORD dwTimeOut; BYTE byRes[60]; }NET_DVR_CHAN_FILTER_CFG, *LPNET_DVR_CHAN_FILTER_CFG; #define MAX_LAN_ENCODE_LEN 32 typedef struct tagNET_DVR_DEVICE_LAN_ENCODE { DWORD dwSize; BYTE byLanEncode[MAX_LAN_ENCODE_LEN]; BYTE byRes[28]; }NET_DVR_DEVICE_LAN_ENCODE, *LPNET_DVR_DEVICE_LAN_ENCODE; typedef struct tagNET_DVR_SCENECHANGE_DETECTION { DWORD dwSize; BYTE byEnable; BYTE bySensitiveLevel; BYTE byRes1[2]; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; BYTE byRes2[128]; }NET_DVR_SCENECHANGE_DETECTION,*LPNET_DVR_SCENECHANGE_DETECTION; typedef struct tagNET_DVR_SCENECHANGE_DETECTION_RESULT { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; WORD wDevInfoIvmsChannelEx; BYTE byRes[126]; }NET_DVR_SCENECHANGE_DETECTION_RESULT,*LPNET_DVR_SCENECHANGE_DETECTION_RESULT; typedef enum { PREVIEW_MOD = 0, ALARM_MOD, PLAYBACK_MOD, MAX_TYPE }MODULE_TYPE; typedef struct tagNET_DVR_PARK_INFO { char sPlateNo[MAX_PlATE_NO_LEN]; char sParkIndex[MAX_PlATE_NO_LEN]; BYTE byRes[64]; }NET_DVR_PARK_INFO, *LPNET_DVR_PARK_INFO; typedef struct tagNET_DVR_CROSSLINE_ALARM { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; NET_DVR_TIME_EX struTriggerTime; NET_DVR_PARK_INFO struParkInfo; BYTE byRes1[128]; }NET_DVR_CROSSLINE_ALARM, *LPNET_DVR_CROSSLINE_ALARM; typedef struct tagNET_DVR_STREAM_SRC_CFG { DWORD dwSize; NET_DVR_STREAM_INFO struStreamID; NET_DVR_STREAM_SRC_INFO struStreamSrcInfo; }NET_DVR_STREAM_SRC_CFG,*LPNET_DVR_STREAM_SRC_CFG; typedef struct tagNET_DVR_ENCODEINFO { BYTE byFormatType; BYTE byVideoEncType; WORD wWidth; WORD wHeight; BYTE byRes1[2]; DWORD dwVideoBitrate; DWORD dwVideoFrameRate; BYTE byAudioEncType; BYTE byRes2[15]; }NET_DVR_ENCODEINFO, *LPNET_DVR_ENCODEINFO; typedef struct tagNET_DVR_TRANSSTATUS { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE byMode; BYTE byLinkNums; BYTE byPassiveTransMode; BYTE byRes; NET_DVR_ADDRESS struDstIPInfo[MAX_LINK]; BYTE byTransResource; BYTE byRes1[15]; NET_DVR_ENCODEINFO struSrcEncodeInfo; NET_DVR_ENCODEINFO struDstEncodeInfo[MAX_LINK ]; BYTE byRes2[36]; }NET_DVR_TRANSSTATUS, *LPNET_DVR_TRANSSTATUS; typedef struct tagNET_DVR_TRANSDEVICE_STATUS { DWORD dwSize; DWORD dwTotalResource; DWORD dwIdleResource; BYTE byCpuLoad; BYTE byRes[67]; }NET_DVR_TRANSDEVICE_STATUS, *LPNET_DVR_TRANSDEVICE_STATUS; typedef struct tagNET_DVR_DEV_WORK_MODE { DWORD dwSize; BYTE byWorkMode; BYTE byDisplayMode; BYTE byEnableVcaDec; BYTE byRes[61]; }NET_DVR_DEV_WORK_MODE,*LPNET_DVR_DEV_WORK_MODE; typedef struct tagNET_DVR_PASSIVETRANSINFO { DWORD dwSize; BYTE byStreamType; BYTE byLinkMode; BYTE byPassiveTransMode; BYTE byRes1[5]; BYTE byDataType; BYTE byRes2; WORD wDataLength; char *pBuffer; BYTE byRes3[32]; }NET_DVR_PASSIVETRANSINFO, *LPNET_DVR_PASSIVETRANSINFO; typedef struct tagNET_DVR_BASEMAP_CONTROL_CFG { DWORD dwSize; BYTE byEnable; BYTE byBaseMapType; BYTE byBaseMapCircleNo; BYTE byRes1; DWORD dwBaseMapNo; BYTE byRes2[64]; }NET_DVR_BASEMAP_CONTROL_CFG,*LPNET_DVR_BASEMAP_CONTROL_CFG; typedef struct tagNET_DVR_VIRTUAL_SCREEN_CFG { DWORD dwSize; DWORD dwResolution; BYTE byRes[64]; }NET_DVR_VIRTUAL_SCREEN_CFG, *LPNET_DVR_VIRTUAL_SCREEN_CFG; typedef struct tagNET_DVR_BASEMAP_WINCFG { DWORD dwSize; BYTE byEnable; BYTE byWndOperateMode; BYTE byRes1[6]; NET_DVR_RECTCFG_EX struWinPosition; NET_DVR_RECTCFG_EX struResolution; DWORD dwXCoordinate; DWORD dwYCoordinate; BYTE byRes2[36]; }NET_DVR_BASEMAP_WINCFG, *LPNET_DVR_BASEMAP_WINCFG; typedef struct tagNET_DVR_BASEMAP_PIC_INFO { DWORD dwSize; BYTE sPicName[NAME_LEN]; BYTE byUsed; BYTE byRes[31]; }NET_DVR_BASEMAP_PIC_INFO,*LPNET_DVR_BASEMAP_PIC_INFO; typedef struct tagNET_DVR_MATRIX_LOGO_INFO { DWORD dwSize; DWORD dwLogoSize; BYTE byRes[32]; }NET_DVR_MATRIX_LOGO_INFO,*LPNET_DVR_MATRIX_LOGO_INFO; typedef struct tagNET_DVR_MATRIX_LOGO_CFG { DWORD dwSize; BYTE byExist; BYTE byRes1[3]; DWORD dwLogoSize; BYTE byLogoName[NAME_LEN]; DWORD dwLogoNo; BYTE byRes2[28]; }NET_DVR_MATRIX_LOGO_CFG,*LPNET_DVR_MATRIX_LOGO_CFG; typedef struct tagNET_DVR_WIN_LOGO_CFG { DWORD dwSize; DWORD dwLogoNo; BYTE byEnable; BYTE byRes1[3]; DWORD dwCoordinateX; DWORD dwCoordinateY; BYTE byFlash; BYTE byTranslucent; BYTE byRes2[34]; }NET_DVR_WIN_LOGO_CFG,*LPNET_DVR_WIN_LOGO_CFG; typedef struct tagNET_DVR_BIG_SCREEN_AUDIO_CFG { DWORD dwSize; DWORD dwWinIndex; BYTE byEnable; BYTE byRes[31]; }NET_DVR_BIG_SCREEN_AUDIO_CFG, *LPNET_DVR_BIG_SCREEN_AUDIO_CFG; typedef struct tagNET_DVR_WIN_ZOOM_STATUS { DWORD dwSize; BYTE byZoomStatus; BYTE byRes1[3]; NET_DVR_POINT_FRAME struPointFrame; BYTE byRes2[32]; }NET_DVR_WIN_ZOOM_STATUS,NET_DVR_WIN_ZOOM_STATUS; typedef struct tagNET_DVR_RESUME_INITRACKPOS_CFG { DWORD dwSize; DWORD dwChannel;; BYTE byRes[16]; }NET_DVR_RESUME_INITRACKPOS_CFG,*LPNET_DVR_RESUME_INITRACKPOS_CFG; typedef struct tagNet_DVR_TEST_SELFCHECK_RESULT { DWORD dwSize; DWORD dwChannel; BYTE bySelfCheckStatus; BYTE byRes[23]; }NET_DVR_TEST_SELFCHECK_RESULT, *LPNET_DVR_TEST_SELECHECK_RESULT; typedef struct tagNET_DVR_TEST_COMMAND { DWORD dwSize; DWORD dwChannel; BYTE byTestCommand[MAX_TEST_COMMAND_NUM]; WORD wICRIntervalTime; BYTE byElectronicCompassState; BYTE byRes1[1]; float fDeviceTem; BYTE byTemp[9]; BYTE byRes[3]; }NET_DVR_TEST_COMMAND, *LPNET_DVR_TEST_COMMAND; typedef struct tagNET_DVR_AGING_TRICK_SCAN { DWORD dwSize; DWORD dwChannel; BYTE byAging; BYTE byWriteReadEnalbe; BYTE byRes[126]; }NET_DVR_AGING_TRICK_SCAN, *LPNET_DVR_AGING_TRICK_SCAN; #define IPC_PARAM_AGING_TRICK_SCAN 0x00000001 typedef struct tagNET_DVR_IPC_PARAM_TYPE { DWORD dwSize; DWORD dwParamType; BYTE byRes[32]; }NET_DVR_IPC_PARAM_TYPE, *LPNET_DVR_IPC_PARAM_TYPE; typedef struct tagNET_DVR_ECCENTRIC_CORRECT_STATE { DWORD dwSize; DWORD dwChannel; BYTE byEccentricCorrectState; BYTE byRes[127]; }NET_DVR_ECCENTRIC_CORRECT_STATE, *LPNET_DVR_ECCENTRIC_CORRECT_STATE; #define MAX_DEVMODULE_NUM 8 typedef struct tagNET_DVR_TEST_DEVMODULE_CFG { DWORD dwSize; DWORD dwChannel; BYTE byDevFanModuleType[MAX_DEVMODULE_NUM]; BYTE byDevHeaterModuleType[MAX_DEVMODULE_NUM]; BYTE byRes[22]; }NET_DVR_TEST_DEVMODULE_CFG, *LPNET_DVR_TEST_DEVMODULE_CFG; typedef struct tagNET_DVR_BARRIERGATE_COND { BYTE byLaneNo; BYTE byRes[3]; }NET_DVR_BARRIERGATE_COND,*LPNET_DVR_BARRIERGATE_COND; typedef struct tagNET_DVR_VEHICLE_CONTROL { BYTE byGateOperateType; BYTE byRes1 ; WORD wAlarmOperateType; BYTE byRes2[8]; }NET_DVR_VEHICLE_CONTROL,*LPNET_DVR_VEHICLE_CONTROL; typedef struct tagNET_DVR_RELAY_PARAM { BYTE byAccessDevInfo; BYTE byRes[3]; }NET_DVR_RELAY_PARAM,*LPNET_DVR_RELAY_PARAM; typedef struct tagNET_DVR_ENTRANCE_CFG { DWORD dwSize; BYTE byEnable ; BYTE byBarrierGateCtrlMode; BYTE byRes1[2]; DWORD dwRelateTriggerMode; DWORD dwMatchContent; NET_DVR_RELAY_PARAM struRelayRelateInfo[MAX_RELAY_NUM]; BYTE byGateSingleIO[MAX_IOIN_NUM]; NET_DVR_VEHICLE_CONTROL struVehicleCtrl[MAX_VEHICLE_TYPE_NUM]; BYTE byNotCloseCarFollow; BYTE byRes2[63]; }NET_DVR_ENTRANCE_CFG,*LPNET_DVR_ENTRANCE_CFG; typedef struct tagNET_DVR_BARRIERGATE_CFG { DWORD dwSize; DWORD dwChannel; BYTE byLaneNo; BYTE byBarrierGateCtrl; BYTE byEntranceNo; BYTE byUnlock; BYTE byRes[12]; }NET_DVR_BARRIERGATE_CFG, *LPNET_DVR_BARRIERGATE_CFG; typedef struct tagNET_DVR_VEHICLE_CONTROL_LIST_INFO { DWORD dwSize; DWORD dwChannel; DWORD dwDataIndex; char sLicense[MAX_LICENSE_LEN]; BYTE byListType; BYTE byPlateType; BYTE byPlateColor; BYTE byRes[21]; char sCardNo[MAX_CARDNO_LEN]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struStopTime; char sOperateIndex[MAX_OPERATE_INDEX_LEN]; BYTE byRes1[224]; } NET_DVR_VEHICLE_CONTROL_LIST_INFO,*LPNET_DVR_VEHICLE_CONTROL_LIST_INFO; typedef struct tagNET_DVR_VEHICLE_CONTROL_COND { DWORD dwChannel; DWORD dwOperateType; char sLicense[MAX_LICENSE_LEN]; char sCardNo[MAX_CARDNO_LEN]; BYTE byListType; BYTE byRes1[3]; DWORD dwDataIndex; BYTE byRes[116]; }NET_DVR_VEHICLE_CONTROL_COND,*LPNET_DVR_VEHICLE_CONTROL_COND; typedef struct tagNET_DVR_VEHICLE_CONTROL_LIST_DSALARM { DWORD dwSize; DWORD dwDataIndex; char sOperateIndex[MAX_OPERATE_INDEX_LEN]; BYTE byRes[32]; }NET_DVR_VEHICLE_CONTROL_LIST_DSALARM, *LPNET_DVR_VEHICLE_CONTROL_LIST_DSALARM; typedef struct tagNET_DVR_VEHICLE_CONTROL_ALARM { DWORD dwSize; BYTE byListType; BYTE byPlateType; BYTE byPlateColor; BYTE byRes1; char sLicense[MAX_LICENSE_LEN]; char sCardNo[MAX_CARDNO_LEN]; NET_DVR_TIME_V30 struAlarmTime; DWORD dwChannel; DWORD dwPicDataLen; BYTE byPicType; BYTE byPicTransType; BYTE byRes3[2]; char *pPicData; BYTE byRes2[48]; }NET_DVR_VEHICLE_CONTROL_ALARM,*LPNET_DVR_VEHICLE_CONTROL_ALARM; typedef struct tagNET_DVR_FIRE_ALARM { DWORD dwSize; NET_DVR_TIME_V30 struAlarmTime; BYTE byRes[128]; }NET_DVR_FIRE_ALARM,*LPNET_DVR_FIRE_ALARM; typedef struct tagNET_DVR_VEHICLE_CONTROL_DELINFO { DWORD dwSize; DWORD dwDelType; char sLicense[16]; char sCardNo[48]; BYTE byPlateType; BYTE byPlateColor; BYTE byOperateType; BYTE byListType; DWORD dwDataIndex; char sOperateIndex[MAX_OPERATE_INDEX_LEN]; BYTE byRes[24]; } NET_DVR_VEHICLE_CONTROL_DELINFO, *LPNET_DVR_VEHICLE_CONTROL_DELINFO; typedef struct tagNET_DVR_GATELAMP_INFO { DWORD dwSize; DWORD dwChannel; BYTE byLaneNo; BYTE byBrightlampCtrl; BYTE byRes[14]; }NET_DVR_GATELAMP_INFO,*LPNET_DVR_GATELAMP_INFO; #define MATRIX_MAX_OUTPUT_NUM 256 typedef struct tagNET_DVR_MATRIX_BASE_CFG { DWORD dwSize; DWORD dwValidInputNum; DWORD dwValidOutputNum; BYTE byRes[64]; }NET_DVR_MATRIX_BASE_CFG, *LPNET_DVR_MATRIX_BASE_CFG; typedef struct tagNET_DVR_MATRIX_SWITCH_INFO { DWORD dwSize; DWORD dwInputChan; DWORD dwOutputChan; DWORD dwMatrixID; BYTE byRes[28]; }NET_DVR_MATRIX_SWITCH_INFO, *LPNET_DVR_MATRIX_SWITCH_INFO; typedef struct tagNET_DVR_IO_RELATION_INFO { DWORD dwSize; DWORD dwIORelation[MATRIX_MAX_OUTPUT_NUM]; BYTE byRes[256]; }NET_DVR_IO_RELATION_INFO, *LPNET_DVR_IO_RELATION_INFO; typedef struct tagNET_DVR_EXTERNAL_DEVCOND { DWORD dwSize; BYTE byExternalDevTpye; BYTE byRelativeIndex; BYTE byRes[30]; }NET_DVR_EXTERNAL_DEVCOND,*LPNET_DVR_EXTERNAL_DEVCOND; typedef struct tagNET_DVR_EXTERNAL_DEVCFG { DWORD dwSize; BYTE byExternalDevTpye; BYTE byRes2[3]; char sDevName[MAX_DEVNAME_LEN]; union { BYTE byUnionLen[656]; struct { NET_DVR_IPADDR struDevIP; WORD wDevPort; BYTE byRes[510]; }struRrReader; struct { BYTE byRs485No; BYTE byDevCtrlCode; BYTE byAutoIssuedData; BYTE byOfflineDetEnable; BYTE byDetCycle; BYTE byRes[651]; }struGateway; struct { BYTE byExternalMode; BYTE byRes[3]; NET_DVR_IPADDR struDevIP; WORD wDevPort; BYTE byRs485No; BYTE byDevCtrlCode; BYTE byCtrlCardType; BYTE byLedScreenType; BYTE byLedScreenUse; BYTE byLedDisplayMode; char sLedCustomInfo[MAX_LED_INFO]; DWORD dwLedScreenH; DWORD dwLedScreenW; BYTE byRes1[236]; }struLed; }uExternalDevInfo; BYTE byRes[128]; }NET_DVR_EXTERNAL_DEVCFG, *LPNET_DVR_EXTERNAL_DEVCFG; typedef struct tagNET_DVR_EXTERNAL_DEVSTATUS { DWORD dwSize; char sDevName[MAX_DEVNAME_LEN]; BYTE byExternalDevTpye; BYTE byRelativeIndex; BYTE byOnline; BYTE byRes[125]; }NET_DVR_EXTERNAL_DEVSTATUS,*LPNET_DVR_EXTERNAL_DEVSTATUS; typedef struct tagNET_DVR_ENTRANCEDET_CFG { DWORD dwSize; BYTE byOfflineDetEnable; BYTE byDetCycle; BYTE byDevCtrlCode; BYTE byRes[61]; }NET_DVR_ENTRANCEDET_CFG,*LPNET_DVR_ENTRANCEDET_CFG; typedef struct tagNET_DVR_ENTRANCEDEV_COMMAND { DWORD dwSize; BYTE byDevCtrlCode; BYTE byManualIssuedData; BYTE byRes[62]; }NET_DVR_ENTRANCEDEV_COMMAND,*LPNET_DVR_ENTRANCEDEV_COMMAND; typedef struct tagNET_DVR_ENISSUED_DATADEL { DWORD dwSize; BYTE byDevCtrlCode; BYTE byRes[27]; }NET_DVR_ENISSUED_DATADEL,*LPNET_DVR_ENISSUED_DATADEL; typedef struct _tagNET_ITS_PASSVEHICLE_COST_ITEM { DWORD dwSize; DWORD dwPassVehicleID; BYTE byIntime[MAX_TIME_LEN]; BYTE byOuttime[MAX_TIME_LEN]; BYTE byCardNo[MAX_CARD_LEN]; BYTE byPlateInfo[MAX_LICENSE_LEN]; float fPayCost; BYTE byOperatorName[MAX_OPERATORNAME_LEN]; BYTE byVehicleType; BYTE byRes1[3]; DWORD dwPayRuleID; DWORD dwFreeRuleID; BYTE byRes2[256]; }NET_ITS_PASSVEHICLE_COST_ITEM, *LPNET_ITS_PASSVEHICLE_COST_ITEM; typedef struct _tagNET_ITS_HANDOVER_INFO { DWORD dwSize; BYTE byOperatorName[MAX_OPERATORNAME_LEN]; BYTE byOperatorCard[MAX_CARD_LEN]; BYTE byStartTime[MAX_TIME_LEN]; BYTE byEndTime[MAX_TIME_LEN]; float fTotal_Pay; DWORD dwTotal_Records; BYTE byRes[64]; }NET_ITS_HANDOVER_INFO, *LPNET_ITS_HANDOVER_INFO; typedef struct tagNET_DVR_CURTRIGGERMODE { DWORD dwSize; DWORD dwTriggerType; BYTE byRes[24]; }NET_DVR_CURTRIGGERMODE, *LPNET_DVR_CURTRIGGERMODE; typedef struct tagNET_DVR_TEMP_HUMI { DWORD dwSize; DWORD dwChannel; int iHumidity; int iTemp; BYTE byRes[8]; }NET_DVR_TEMP_HUMI, *LPNET_DVR_TEMP_HUMI; typedef struct tagNET_DVR_ALARMSOUNDMODE_CFG { DWORD dwSize; DWORD dwChannel; DWORD dwSoundMode; BYTE byRes[12]; }NET_DVR_ALARMSOUNDMODE_CFG, *LPNET_DVR_ALARMSOUNDMODE_CFG; typedef struct tagNET_DVR_SECURITYMODE { DWORD dwSize; DWORD dwChannel; DWORD dwMode; char szRandCode[6]; BYTE byRes[6]; }NET_DVR_SECURITYMODE, *LPNET_DVR_SECURITYMODE; typedef struct tagNET_DVR_MOBILE_CAPTUREPIC_CFG { DWORD dwSize; BYTE byPreviewFpsAdjMode; BYTE bySelPeccType; BYTE byOptHabit; BYTE byEnablePeccRec; BYTE byPicSize; BYTE byPicQuality; BYTE byRes[62]; }NET_DVR_MOBILE_CAPTUREPIC_CFG,*LPNET_DVR_MOBILE_CAPTUREPIC_CFG; typedef struct tagNET_DVR_CMS_PARAM { DWORD dwSize; NET_DVR_IPADDR struAddr; WORD wServerPort; BYTE bySeverProtocolType; BYTE byStatus; BYTE sDeviceId[NAME_LEN]; char sPassWord[PASSWD_LEN]; BYTE sPlatformEhomeVersion[NAME_LEN]; BYTE byNetWork; BYTE byAddressType; BYTE byProtocolVersion; BYTE byRes1; BYTE sDomainName[MAX_DOMAIN_NAME]; BYTE byEnable; BYTE byRes[139]; }NET_DVR_CMS_PARAM, *LPNET_DVR_CMS_PARAM; typedef struct tagNET_DVR_HEATMAP_COND { DWORD dwSize; DWORD dwChannel; BYTE byDetSceneID; BYTE byRes[63]; }NET_DVR_HEATMAP_COND, *LPNET_DVR_HEATMAP_COND; typedef struct tagNET_DVR_HEATMAP_PARAM { BYTE byTargetTrackEnable; BYTE bySensitivity; BYTE byBackgroundUpdateRate; BYTE bySceneChangeLevel; BYTE byMinTargetSize; BYTE byUploadHeatMapResultType; BYTE byRes[2]; float fConfidence; BYTE byRes1[8]; }NET_DVR_HEATMAP_PARAM, *LPNET_DVR_HEATMAP_PARAM; #define MAX_HEATMAPREGION_NUM 8 typedef struct tagNET_DVR_HEATMAP_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[3]; NET_VCA_POLYGON struRegion[MAX_HEATMAPREGION_NUM]; NET_DVR_HEATMAP_PARAM struHeatMap ; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes1[512]; }NET_DVR_HEATMAP_CFG, *LPNET_DVR_HEATMAP_CFG; typedef struct tagNET_DVR_HEATMAP_RESULT { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; DWORD dwMaxHeatMapValue; DWORD dwMinHeatMapValue; DWORD dwTimeHeatMapValue; WORD wArrayLine; WORD wArrayColumn; BYTE* pBuffer; BYTE byDetSceneID; BYTE byBrokenNetHttp; WORD wDevInfoIvmsChannelEx; BYTE byTimeDiffFlag; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes1[3]; DWORD dwTotalTime; BYTE byRes[112]; }NET_DVR_HEATMAP_RESULT,*LPNET_DVR_HEATMAP_RESULT; typedef struct tagNET_DVR_HEATMAP_QUERY_COND { DWORD dwSize; DWORD dwChannel ; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE byReportType; BYTE byDetSceneID; BYTE byHeatMapInfoType; BYTE byStatisticalModel; BYTE byRes[124]; }NET_DVR_HEATMAP_QUERY_COND,*LPNET_DVR_HEATMAP_QUERY_COND; typedef struct tagNET_DVR_HEATMAP_INFO { DWORD dwSize; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; DWORD dwHeatMapPicLen; BYTE* pBuffer; DWORD dwTimeHeatMapValue ; DWORD dwHeatMapMaxValue; DWORD dwHeatMapMinValue; WORD wArrayLine; WORD wArrayColumn; BYTE* pArrayBuffer; BYTE byArrayUnitType; BYTE byRes[107]; }NET_DVR_HEATMAP_INFO,*LPNET_DVR_HEATMAP_INFO; typedef struct tagNET_DVR_PDC_QUERY_COND { DWORD dwSize; DWORD dwChannel; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE byReportType; BYTE byEnableProgramStatistics; BYTE byTriggerPeopleCountingData; BYTE byRes1; DWORD dwPlayScheduleNo; BYTE byRes[120]; }NET_DVR_PDC_QUERY_COND,*LPNET_DVR_PDC_QUERY_COND; typedef struct tagNET_DVR_PROGRAM_INFO { DWORD dwProgramNo; BYTE sProgramName[NAME_LEN]; BYTE byRes[16]; }NET_DVR_PROGRAM_INFO, *LPNET_DVR_PROGRAM_INFO; typedef struct tagNET_DVR_POSINFO_OVERLAY { DWORD dwSize; BYTE byEnable; BYTE byBackpackEnanble; BYTE bySexEnanble; BYTE byCarryEnanble; BYTE byRideEnanble; BYTE byMaskEnanble; BYTE byHatEnanble; BYTE bySleeveEnanble; BYTE byPantsTypeEnanble; BYTE byHairEnanble; BYTE byGlassesEnanble; BYTE byAgeEnanble; BYTE byHeightEnanble; BYTE byRes[511]; }NET_DVR_POSINFO_OVERLAY, *LPNET_DVR_POSINFO_OVERLAY; typedef struct tagNET_DVR_PDC_RESULT { DWORD dwSize; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; DWORD dwEnterNum; DWORD dwLeaveNum; NET_DVR_PROGRAM_INFO struProgramInfo; DWORD dwPeoplePassing; BYTE byRes[200]; }NET_DVR_PDC_RESULT, *LPNET_DVR_PDC_RESULT; typedef struct tagNET_DVR_MOBILE_PLATE_RECOGCFG { DWORD dwSize; BYTE byDefaultCHN[MAX_CHJC_NUM]; BYTE byTimeOsd; BYTE byRecogResultOsd; BYTE byRecogHint; BYTE byRecogDir; BYTE byRecogEnv; BYTE byRecogPlateType; BYTE byUploadPlate; BYTE byRes[62]; }NET_DVR_MOBILE_PLATE_RECOGCFG,*LPNET_DVR_MOBILE_PLATE_RECOGCFG; typedef struct tagNET_DVR_MOBILE_RADAR_CFG { DWORD dwSize; BYTE byEnableRadar; BYTE byEnableAlarm; WORD wOverSpeed; BYTE bySpeedUnits; BYTE bydirection; BYTE byMeasureMode; BYTE byTargetType; BYTE bySensitivity; BYTE byCaptureNum; BYTE byUploadPlate; BYTE byRes[61]; }NET_DVR_MOBILE_RADAR_CFG,*LPNET_DVR_MOBILE_RADAR_CFG; typedef struct tagNET_DVR_MOBILE_LOCALPLATECHK_CFG { DWORD dwSize; BYTE byCheck; BYTE byCheckAlarm; BYTE byCheckHint; BYTE byUploadBlackCar; BYTE byRes[64]; }NET_DVR_MOBILE_LOCALPLATECHK_CFG,*LPNET_DVR_MOBILE_LOCALPLATECHK_CFG; typedef struct tagNET_DVR_VEHICLE_CHECK { DWORD dwSize; DWORD dwChannel; NET_DVR_PLATE_INFO struPlateInfo; WORD wIllegalType; BYTE byRes[2]; char sIllegalTypeInfo[128]; NET_DVR_TIME_V30 struIllegalTime; BYTE byIllegalVehicleNum; BYTE byRes1[3]; char sCustomInfo[64]; BYTE byRes2[128]; }NET_DVR_VEHICLE_CHECK,*LPNET_DVR_VEHICLE_CHECK; typedef enum _LONG_CFG_SEND_DATA_TYPE_ENUM_ { ENUM_DVR_VEHICLE_CHECK = 1, ENUM_MSC_SEND_DATA = 2, ENUM_ACS_SEND_DATA = 3, ENUM_TME_CARD_SEND_DATA = 4, ENUM_TME_VEHICLE_SEND_DATA = 5, ENUM_DVR_DEBUG_CMD = 6, ENUM_DVR_SCREEN_CTRL_CMD =7, ENUM_CVR_PASSBACK_SEND_DATA = 8, ENUM_ACS_INTELLIGENT_IDENTITY_DATA = 9, ENUM_VIDEO_INTERCOM_SEND_DATA = 10, ENUM_SEND_JSON_DATA = 11 }LONG_CFG_SEND_DATA_TYPE_ENUM; typedef enum _LONG_CFG_RECV_DATA_TYPE_ENUM_ { ENUM_DVR_ERROR_CODE = 1, ENUM_MSC_RECV_DATA=2, ENUM_ACS_RECV_DATA=3 }LONG_CFG_RECV_DATA_TYPE_ENUM; typedef struct tagNET_DVR_WIPER_CONTINUEWORK_PARAM { BYTE byWorkTimeInterval; BYTE byRes[3]; DWORD dwContinueWorkTime; BYTE byRes1[8]; }NET_DVR_WIPER_CONTINUEWORK_PARAM,*LPNET_DVR_WIPER_CONTINUEWORK_PARAM; typedef union tagNET_DVR_WIPERMODE_PARAM_UNION { BYTE uLen[16]; NET_DVR_WIPER_CONTINUEWORK_PARAM struWiperContinueWorkParam; }NET_DVR_WIPERMODE_PARAM_UNION,*LPNET_DVR_WIPERMODE_PARAM_UNION; typedef struct tagNET_DVR_WIPERINFO_CFG { DWORD dwSize; BYTE byWiperWorkMode; BYTE byRes1; WORD wSensitivity; BYTE byRes[20]; NET_DVR_WIPERMODE_PARAM_UNION ustruWiperModeParam; }NET_DVR_WIPERINFO_CFG,*LPNET_DVR_WIPERINFO_CFG; typedef struct tagNET_DVR_AUTOFOCUS_TESTCFG { DWORD dwSize; DWORD dwChannel; BYTE byRes[24]; }NET_DVR_AUTOFOCUS_TESTCFG,*LPNET_DVR_AUTOFOCUS_TESTCFG; typedef struct tagNET_DVR_VIDEO_OUT_CFG { BYTE byDisplayMode; BYTE byBrightnessLevel; BYTE byContrastLevel; BYTE bySharpnessLevel; BYTE bySaturationLevel; BYTE byHueLevel; BYTE byImageMode; BYTE byRes[5]; }NET_DVR_VIDEO_OUT_CFG, *LPNET_DVR_VIDEO_OUT_CFG; typedef struct tagNET_DVR_COLOR_TEMPERATURE_CFG { BYTE byRed; BYTE byGreen; BYTE byBlue; BYTE byRedOffset; BYTE byGreenOffset; BYTE byBlueOffset; BYTE byRes[6]; }NET_DVR_COLOR_TEMPERATURE_CFG, *LPNET_DVR_COLOR_TEMPERATURE_CFG; typedef struct tagNET_DVR_ADC_CFG { BYTE byGainR; BYTE byGainG; BYTE byGainB; BYTE byOffsetR; BYTE byOffsetG; BYTE byOffsetB; BYTE byRes[6]; }NET_DVR_ADC_CFG, *LPNET_DVR_ADC_CFG; typedef struct tagNET_DVR_SCREEN_EDGE_CFG { BYTE byEnable; BYTE byLeftEdge; BYTE byRightEdge; BYTE byTopEdge; BYTE byLowerEdge; BYTE byRes[7]; }NET_DVR_SCREEN_EDGE_CFG, *LPNET_DVR_SCREEN_EDGE_CFG; typedef struct tagNET_DVR_SCREEN_DISPLAY_CFG { DWORD dwSize; BYTE byCfgType; BYTE byBackLight; BYTE byRes1[2]; NET_DVR_VIDEO_OUT_CFG struVideoOutCfg; NET_DVR_COLOR_TEMPERATURE_CFG struColorTempCfg; NET_DVR_ADC_CFG struAdcCfg; NET_DVR_SCREEN_EDGE_CFG struScreenEdgeCfg; BYTE byRes[32]; }NET_DVR_SCREEN_DISPLAY_CFG, *LPNET_DVR_SCREEN_DISPLAY_CFG; typedef enum tagNET_DVR_SCREEN_REMOTE_CTRL_TYPE { REMOTE_CTRL_POWERSUPPLY_OPEN = 1, REMOTE_CTRL_POWERSUPPLY_CLOSE = 2, REMOTE_CTRL_SIGNALSOURCE, REMOTE_CTRL_MENU, REMOTE_CTRL_DETERMINATION, REMOTE_CTRL_ON, REMOTE_CTRL_UNDER, REMOTE_CTRL_LEFT, REMOTE_CTRL_RIGHT, REMOTE_CTRL_INFO, REMOTE_CTRL_RETURN, REMOTE_CTRL_NUM, }SCREEN_REMOTE_CTRL_TYPE; typedef struct tagNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL { DWORD dwSize; BYTE byControlType; BYTE byControlParam; BYTE byRes[14]; }NET_DVR_SIMULATE_SCREEN_REMOTE_CTRL,*LPNET_DVR_SIMULATE_SCREEN_REMOTE_CTRL; typedef struct tagNET_DVR_SCREEN_SIGNAL_CFG { DWORD dwSize; BYTE bySignalSourceType; BYTE byNoSignalPic; BYTE byRes[14]; }NET_DVR_SCREEN_SIGNAL_CFG, *LPNET_DVR_SCREEN_SIGNAL_CFG; typedef struct tagNET_DVRSCREEN_SPLICE_CFG { DWORD dwSize; BYTE bySpliceIndex; BYTE bySpliceX; BYTE bySpliceY; BYTE byWidth; BYTE byHeight; BYTE byRes[11]; }NET_DVR_SCREEN_SPLICE_CFG, *LPNET_DVR_SCREEN_SPLICE_CFG; typedef struct tagNET_DVR_SCREEN_FAN_WORK_MODE_CFG { DWORD dwSize; BYTE byWorkMode; BYTE byTemperatureLimitValue; BYTE byRes[14]; }NET_DVR_SCREEN_FAN_WORK_MODE_CFG, *LPNET_DVR_SCREEN_FAN_WORK_MODE_CFG; typedef struct tagNET_DVR_SCREEN_VGA_CFG { DWORD dwSize; BYTE byEnableAutoAdjust; BYTE byHorizontalPosition; BYTE byVerticalPosition; BYTE byClock; BYTE byPhase; BYTE byRes[11]; }NET_DVR_SCREEN_VGA_CFG, *LPNET_DVR_SCREEN_VGA_CFG; typedef struct tagNET_DVR_SCREEN_MENU_CFG { DWORD dwSize; BYTE byMenuLanguage; BYTE byTransparency; BYTE byDuration; BYTE byRes[13]; }NET_DVR_SCREEN_MENU_CFG, *LPNET_DVR_SCREEN_MENU_CFG; typedef struct tagNET_DVR_PIP_CFG { DWORD dwSize; BYTE byEnable; BYTE bySubWindowSource; BYTE bySubWindowBorderColor; BYTE byRes1; NET_DVR_RECTCFG struPosition; BYTE byRes2[12]; }NET_DVR_PIP_CFG, *LPNET_DVR_PIP_CFG; typedef struct tagNET_DVR_DEFOG_LCD { DWORD dwSize; BYTE byDefogEnable; BYTE byDefogModel; BYTE byDefogLevel; BYTE byRes[33]; }NET_DVR_DEFOG_LCD,*LPNET_DVR_DEFOG_LCD; typedef struct tagNET_DVR_SCREEN_WALL_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[35]; }NET_DVR_SCREEN_WALL_CFG, *LPNET_DVR_SCREEN_WALL_CFG; typedef struct tagNET_DVR_SCREEN_POS_CFG { DWORD dwSize; BYTE byScreenRowNum; BYTE byScreenColNum; BYTE byRes[34]; }NET_DVR_SCREEN_POS_CFG, *LPNET_DVR_SCREEN_POS_CFG; typedef struct tagNET_DVR_VIDEO_AUDIOIN_CFG { DWORD dwSize; DWORD dwChanNo; BYTE byEnable; BYTE byRes[31]; }NET_DVR_VIDEO_AUDIOIN_CFG, *LPNET_DVR_VIDEO_AUDIOIN_CFG; typedef struct _NET_DVR_VCA_DETION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_HANDLEEXCEPTION_V40 struHandleException; DWORD dwMaxRelRecordChanNum ; DWORD dwRelRecordChanNum ; DWORD dwRelRecordChan[MAX_CHANNUM_V30]; BYTE byEnablePreset[MAX_CHANNUM_V30]; BYTE byPresetNo[MAX_CHANNUM_V30]; BYTE byEnableCruise[MAX_CHANNUM_V30]; BYTE byCruiseNo[MAX_CHANNUM_V30]; BYTE byEnablePtzTrack[MAX_CHANNUM_V30]; BYTE byPTZTrack[MAX_CHANNUM_V30]; NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; BYTE byRes[224];; }NET_DVR_VCA_DETION_CFG, *LPNET_DVR_VCA_DETION_CFG; typedef struct tagNET_DVR_VCA_DETECTION_CFG_V40 { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_SCHEDTIME struAlarmSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwHandleType; DWORD dwMaxRelAlarmOutChanNum ; DWORD dwRelAlarmOut[MAX_ALARMOUT_V40]; DWORD dwMaxRecordChanNum; DWORD dwRelRecordChan[MAX_CHANNUM_V40]; DWORD dwEnablePresetChanNum; NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; BYTE byRes2[516]; DWORD dwEnableCruiseChanNum; NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; DWORD dwEnablePtzTrackChanNum; NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; NET_DVR_SCHEDTIME struHolidayTime[MAX_TIMESEGMENT_V30]; BYTE byRes[224]; }NET_DVR_VCA_DETECTION_CFG_V40, *LPNET_DVR_VCA_DETECTION_CFG_V40; typedef struct tagNET_DVR_CLOUD_STORAGE_CFG { DWORD dwSize; BYTE byEnableCS; BYTE byRes[511]; } NET_DVR_CLOUD_STORAGE_CFG, *LPNET_DVR_CLOUD_STORAGE_CFG; typedef struct tagNET_DVR_CHANS_RECORD_STATUS_CFG { DWORD dwSize ; BYTE byValid; BYTE byRecord; DWORD dwRelatedHD; BYTE byOffLineRecord; BYTE byRes[63]; }NET_DVR_CHAN_RECORD_STATUS_CFG, *LPNET_DVR_CHAN_RECORD_STATUS_CFG; #define MAX_CAMERAID_LEN 64 typedef struct tagNET_DVR_UPLOAD_RECORD_INFO { DWORD dwSize; DWORD dwRecordType; BYTE sCameraID[MAX_CAMERAID_LEN]; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struStopTime; DWORD dwStoragePoolID; BYTE byFormatType ; BYTE byVideoEncType ; BYTE byAudioEncType; BYTE byISO8601; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes[120]; }NET_DVR_UPLOAD_RECORD_INFO,*LPNET_DVR_UPLOAD_RECORD_INFO; typedef struct tagNET_DVR_IOOUT_COND { DWORD dwSize; BYTE bySyncOutputNo; BYTE byRes[63]; }NET_DVR_IOOUT_COND,*LPNET_DVR_IOOUT_COND; typedef struct tagNET_DVR_IOOUT_CFG { DWORD dwSize; BYTE byWorkMode; BYTE byRes1[3]; union { BYTE byUnionLen[128]; struct { BYTE byDefaultState; BYTE byWorkState; BYTE byFreqMulti; BYTE byDutyRatio; BYTE byRes[3]; BYTE byFlashLightEnable; NET_DVR_SCHEDTIME struFlashLightTime; BYTE byRes1[116]; }struStrobeLamp; }uWorkModeInfo; BYTE byRes2[128]; }NET_DVR_IOOUT_CFG,*LPNET_DVR_IOOUT_CFG; typedef struct tagNET_DVR_SIGNAL_SYNCCFG { DWORD dwSize; WORD wPhase; BYTE byLineLock; BYTE byRes[125]; }NET_DVR_SIGNAL_SYNCCFG,*LPNET_DVR_SIGNAL_SYNCCFG; typedef struct tagNET_DVR_EZVIZ_ACCESS_CFG { DWORD dwSize; BYTE byEnable; BYTE byDeviceStatus; BYTE byAllowRedirect; BYTE byDomainName[MAX_DOMAIN_NAME]; BYTE byRes1; BYTE byVerificationCode[NET_SDK_MAX_VERIFICATION_CODE_LEN]; BYTE byNetMode; BYTE byOfflineStatus; BYTE byRes2[2]; BYTE byOperateCode[NET_SDK_MAX_OPERATE_CODE_LEN]; BYTE byRes[344]; }NET_DVR_EZVIZ_ACCESS_CFG,*LPNET_DVR_EZVIZ_ACCESS_CFG; typedef struct tagNET_DVR_ALARM_RELATE_COND { DWORD dwSize; BYTE byAlarmType; BYTE byRelateActType; BYTE byRes[2]; DWORD dwChannel; BYTE byRes1[64]; }NET_DVR_ALARM_RELATE_COND,*LPNET_DVR_ALARM_RELATE_COND; typedef struct tagNET_DVR_ALARM_RELATE_CFG { DWORD dwSize; DWORD dwMaxRelateChanNum ; DWORD dwRelateChan[MAX_CHANNUM_V40]; BYTE byRes1[256]; }NET_DVR_ALARM_RELATE_CFG,*LPNET_DVR_ALARM_RELATE_CFG; typedef struct tagNET_DVR_PTZ_BASICPARAMCFG { DWORD dwSize; BYTE byProportionalPan; BYTE byPresetFreezing; BYTE byPresetSpeed; BYTE byKeyboardCtrlSpeed; BYTE byAutoScanSpeed; BYTE byZoomingSpeed; BYTE byManualControlSpeed; BYTE byPTZMotionTrack; BYTE byRes[124]; }NET_DVR_PTZ_BASICPARAMCFG,*LPNET_DVR_PTZ_BASICPARAMCFG; typedef struct tagNET_DVR_PTZ_OSDCFG { DWORD dwSize; BYTE byZoomStatus; BYTE byPtStatus; BYTE byPresetStatus; BYTE byPositionDisplayFormat; BYTE byRes[124]; }NET_DVR_PTZ_OSDCFG,*LPNET_DVR_PTZ_OSDCFG; typedef struct tagNET_DVR_PTZ_POWEROFFMEMCFG { DWORD dwSize; BYTE byResumeTimePoint; BYTE byRes[127]; }NET_DVR_PTZ_POWEROFFMEMCFG,*LPNET_DVR_PTZ_POWEROFFMEMCFG; typedef struct tagNET_DVR_PTZ_LIMITCOND { DWORD dwSize; DWORD dwChan; BYTE byLimitMode; BYTE byRes[63]; }NET_DVR_PTZ_LIMITCOND, *LPNET_DVR_PTZ_LIMITCOND; typedef struct tagNET_DVR_PTZ_LIMITCFG { DWORD dwSize; BYTE byEnable; BYTE byLimitStatus; BYTE byRes[122]; }NET_DVR_PTZ_LIMITCFG,*LPNET_DVR_PTZ_LIMITCFG; typedef struct tagNET_DVR_PTZ_LIMITCTRL { DWORD dwSize; DWORD dwChan; BYTE byLimitMode; BYTE byWorkMode ; BYTE byRes[122]; }NET_DVR_PTZ_LIMITCTRL,*LPNET_DVR_PTZ_LIMITCTRL; typedef struct tagNET_DVR_PTZ_LOCKCFG { DWORD dwSize; BYTE byWorkMode ; BYTE byRes[123]; }NET_DVR_PTZ_LOCKCFG,*LPNET_DVR_PTZ_LOCKCFG; typedef struct tagNET_DVR_PTZLOCKINFO_COND { DWORD dwSize; DWORD dwChannel ; BYTE byRes[64]; }NET_DVR_PTZLOCKINFO_COND,*LPNET_DVR_PTZLOCKINFO_COND; typedef struct tagNET_DVR_PTZLOCKINFO { DWORD dwSize; DWORD dwRemainingSec ; BYTE byRes[128]; }NET_DVR_PTZLOCKINFO, *LPNET_DVR_PTZLOCKINFO; typedef struct tagNET_DVR_CRUISEPOINT_COND { DWORD dwSize; DWORD dwChan; WORD wRouteNo; BYTE byRes[30]; }NET_DVR_CRUISEPOINT_COND,*LPNET_DVR_CRUISEPOINT_COND; typedef struct tagNET_DVR_CRUISEPOINT_PARAM { WORD wPresetNo; WORD wDwell; BYTE bySpeed; BYTE bySupport256PresetNo; BYTE byRes[6]; }NET_DVR_CRUISEPOINT_PARAM,*LPNET_DVR_CRUISEPOINT_PARAM; typedef struct tagNET_DVR_CRUISEPOINT_V40 { DWORD dwSize; NET_DVR_CRUISEPOINT_PARAM struCruisePoint[MAX_CRUISE_POINT_NUM]; BYTE Res[64]; }NET_DVR_CRUISEPOINT_V40, *LPNET_DVR_CRUISEPOINT_V40; typedef struct tagNET_DVR_CRUISEPOINT_V50 { DWORD dwSize; NET_DVR_CRUISEPOINT_PARAM struCruisePoint[MAX_CRUISEPOINT_NUM_V50]; BYTE Res[64]; }NET_DVR_CRUISEPOINT_V50, *LPNET_DVR_CRUISEPOINT_V50; typedef struct tagNET_DVR_TEST_VERSION_HEAD { DWORD dwSize; DWORD dwParam1; BYTE byParam2; BYTE byRes[31]; }NET_DVR_TEST_VERSION_HEAD, *LPNET_DVR_TEST_VERSION_HEAD; typedef struct tagNET_DVR_TEST_VERSION_HEAD_V1 { DWORD dwSize; DWORD dwParam1; BYTE byParam2; BYTE byRes[31]; DWORD dwParam1_1; BYTE byParam1_2; BYTE byRes1[31]; }NET_DVR_TEST_VERSION_HEAD_V1, *LPNET_DVR_TEST_VERSION_HEAD_V1; typedef struct tagNET_DVR_TEST_VERSION_HEAD_V2 { DWORD dwSize; DWORD dwParam1; BYTE byParam2; BYTE byRes[31]; DWORD dwParam1_1; BYTE byParam1_2; BYTE byRes1[31]; DWORD dwParam2_1; BYTE byParam2_2; BYTE byRes2[31]; }NET_DVR_TEST_VERSION_HEAD_V2, *LPNET_DVR_TEST_VERSION_HEAD_V2; #define MAX_DISPLAY_NUM 512 #define MAX_LEDCONTENT_NUM 512 #define MAX_PPT_CHAN 128 typedef struct tagNET_DVR_VIDEOWALLDISPLAYMODE { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_RECTCFG_EX struRect; BYTE sName[NAME_LEN]; BYTE byRes2[100]; }NET_DVR_VIDEOWALLDISPLAYMODE, *LPNET_DVR_VIDEOWALLDISPLAYMODE; typedef struct tagNET_DVR_DISPLAYPARAM { DWORD dwDisplayNo; BYTE byDispChanType; BYTE byRes[11]; }NET_DVR_DISPLAYPARAM,*LPNET_DVR_DISPLAYPARAM; typedef struct tagNET_DVR_DISPLAYCFG { DWORD dwSize; NET_DVR_DISPLAYPARAM struDisplayParam[MAX_DISPLAY_NUM] ; BYTE byRes[128]; }NET_DVR_DISPLAYCFG,*LPNET_DVR_DISPLAYCFG; typedef struct tagNET_DVR_VIDEOWALLDISPLAYPOSITION { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwVideoWallNo; DWORD dwDisplayNo; NET_DVR_RECTCFG_EX struRectCfg; BYTE byRes2[64]; }NET_DVR_VIDEOWALLDISPLAYPOSITION,*LPNET_DVR_VIDEOWALLDISPLAYPOSITION; typedef struct tagNET_DVR_VIDEOWALLWINDOWPOSITION { DWORD dwSize; BYTE byEnable; BYTE byWndOperateMode; BYTE byRes1[6]; DWORD dwWindowNo; DWORD dwLayerIndex; NET_DVR_RECTCFG_EX struRect; NET_DVR_RECTCFG_EX struResolution; DWORD dwXCoordinate; DWORD dwYCoordinate; BYTE byRes2[36]; }NET_DVR_VIDEOWALLWINDOWPOSITION,*LPNET_DVR_VIDEOWALLWINDOWPOSITION; typedef struct tagNET_DVR_VIDEO_WALL_INFO { DWORD dwSize; DWORD dwWindowNo; DWORD dwSceneNo; DWORD dwDestWallNo; DWORD dwDestSceneNo; BYTE byRes[12]; }NET_DVR_VIDEO_WALL_INFO,*LPNET_DVR_VIDEO_WALL_INFO; typedef struct tagNET_DVR_VIRTUALLED_PARAM { DWORD dwSize; BYTE byEnable; BYTE byDispMode; BYTE byWndOperateMode; BYTE byType; BYTE byDirection; BYTE byTimeType; BYTE byDateFormat; BYTE byTimeFormat; NET_DVR_RGB_COLOR struContentColor; NET_DVR_RGB_COLOR struBackColor; NET_DVR_RECTCFG_EX struRect; DWORD dwContentNum; BYTE byLedContent[MAX_LEDCONTENT_NUM]; BYTE byMoveMode; BYTE byFontSize; BYTE byMoveDirection; BYTE byMoveSpeed; NET_DVR_RECTCFG_EX struResolution; DWORD dwXCoordinate; DWORD dwYCoordinate; BYTE byHourFormat; BYTE byAMFormat; BYTE byPMFormat; BYTE byAlignmentX; BYTE byAlignmentY; BYTE byFontType; BYTE byRes2[90]; }NET_DVR_VIRTUALLED_PARAM,*LPNET_DVR_VIRTUALLED_PARAM; typedef struct tagNET_DVR_IMAGE_CUT_MODE { DWORD dwSize; BYTE byCutMode; BYTE byRes[31]; }NET_DVR_IMAGE_CUT_MODE,*LPNET_DVR_IMAGE_CUT_MODE; typedef struct tagNET_DVR_USING_SERIALPORT { DWORD dwSize ; DWORD dwSerialPort; BYTE byProtocolType; BYTE byRes[31]; }NET_DVR_USING_SERIALPORT,*LPNET_DVR_USING_SERIALPORT; typedef struct tagNET_DVR_VIDEOWALLSCENECFG { DWORD dwSize; BYTE sSceneName[NAME_LEN]; BYTE byEnable; BYTE bySceneIndex; BYTE byRes [78]; }NET_DVR_VIDEOWALLSCENECFG, *LPNET_DVR_VIDEOWALLSCENECFG; typedef struct tagNET_DVR_SCENE_CONTROL_INFO { DWORD dwSize; NET_DVR_VIDEO_WALL_INFO struVideoWallInfo; DWORD dwCmd; BYTE byRes[4]; }NET_DVR_SCENE_CONTROL_INFO, *LPNET_DVR_SCENE_CONTROL_INFO; typedef struct tagNET_DVR_SHOW_CONTROL_INFO { DWORD dwSize; DWORD dwDisplayNo; BYTE byEnable; BYTE byChanType; BYTE byRes1[2]; DWORD dwWallNo; BYTE byRes2[56]; }NET_DVR_SHOW_CONTROL_INFO,*LPNET_DVR_SHOW_CONTROL_INFO; typedef struct tagNET_DVR_BUF_INFO { void* pBuf; DWORD nLen; }NET_DVR_BUF_INFO, *LPNET_DVR_BUF_INFO; typedef struct tagNET_DVR_IN_PARAM { NET_DVR_BUF_INFO struCondBuf; NET_DVR_BUF_INFO struInParamBuf; DWORD dwRecvTimeout; BYTE byRes[32]; }NET_DVR_IN_PARAM,LPNET_DVR_IN_PARAM; typedef struct tagNET_DVR_OUT_PARAM { NET_DVR_BUF_INFO struOutBuf; void* lpStatusList; BYTE byRes[32]; }NET_DVR_OUT_PARAM,LPNET_DVR_OUT_PARAM; typedef struct tagNET_DVR_AUDIO_CHAN_INFO { DWORD dwSize; DWORD dwChannel; BYTE byRes[48]; }NET_DVR_AUDIO_CHAN_INFO, *LPNET_DVR_AUDIO_CHAN_INFO; typedef struct tagNET_DVR_AUDIO_CHAN_CFG { DWORD dwSize; BYTE sChanName[NAME_LEN]; BYTE byEnable; BYTE byAudioSwitchType; BYTE byRes[2]; NET_DVR_PU_STREAM_CFG_V41 struAudioSrcInfo; DWORD dwWindowNo; BYTE byRes2[28]; }NET_DVR_AUDIO_CHAN_CFG, *LPNET_DVR_AUDIO_CHAN_CFG; #define MAX_SUBBOARD_NUM 42 #define MAX_SINGLE_BOARD_EXCEPTION_NUM 16 typedef struct tagNET_DVR_MAINBOARD_SERIAL_CFG { DWORD dwSize; BYTE bySerialWorkMode; BYTE byFunType; BYTE byDataBit; BYTE byStopBit; DWORD dwBaudRate; BYTE byParity; BYTE byFlowcontrol; WORD wProtocol; BYTE byVariable ; BYTE byGateWayEnable; BYTE byRes[30]; }NET_DVR_MAINBOARD_SERIAL_CFG, *LPNET_DVR_MAINBOARD_SERIAL_CFG; typedef struct tagNET_DVR_SUBBOARD_INFO { DWORD dwSize; BYTE byBoardType; BYTE byInterfaceNum; BYTE byStatus; BYTE byRes[1]; DWORD dwSlotNo; BYTE byRes2[32]; }NET_DVR_SUBBOARD_INFO, *LPNET_DVR_SUBBOARD_INFO; typedef struct tagNET_DVR_DEVICE_SUBBOARD_INFO { DWORD dwSize; BYTE byBackBoardType; BYTE bySoltNum; BYTE byBoardNum; BYTE byRes1[1]; NET_DVR_SUBBOARD_INFO struSubBoadInfo[MAX_SUBBOARD_NUM]; BYTE byRes2[32]; }NET_DVR_DEVICE_SUBBOARD_INFO, *LPNET_DVR_DEVICE_SUBBOARD_INFO; typedef struct tagNET_DVR_DEVICE_BOARD_EXCEPINFO { DWORD dwSize; BYTE byExceptNum; BYTE byRes1[3]; BYTE byMajor[MAX_SINGLE_BOARD_EXCEPTION_NUM]; WORD wMinor[MAX_SINGLE_BOARD_EXCEPTION_NUM]; BYTE byRes2[32]; }NET_DVR_DEVICE_BOARD_EXCEPINFO, *LPNET_DVR_DEVICE_BOARD_EXCEPINFO; typedef struct tagNET_DVR_LINEARSCAN { DWORD dwSize; DWORD dwChan; BYTE byLinearScanType; BYTE byRes[63]; }NET_DVR_LINEARSCAN, *LPNET_DVR_LINEARSCAN; typedef struct tagNET_DVR_STREAM_ATTACHINFO_CFG { DWORD dwSize; BYTE byStreamWithVca; BYTE byRes[127]; }NET_DVR_STREAM_ATTACHINFO_CFG,*LPNET_DVR_STREAM_ATTACHINFO_CFG; typedef struct tagNET_DVR_SUBSYSTEM_NETCFG { DWORD dwSize; BYTE byDefaultRoute; BYTE byNetworkCardNum; BYTE byRes1[2]; NET_DVR_ETHERNET_MULTI struEtherNet [MAX_NETWORK_CARD]; BYTE byRes2[128]; }NET_DVR_SUBSYSTEM_NETCFG, *LPNET_DVR_SUBSYSTEM_NETCFG; typedef struct tagNET_DVR_CLEARCTRL { DWORD dwSize; DWORD dwChan; BYTE byAllPreset; BYTE byAllPatrols; BYTE byAllPatterms; BYTE byAllPrivacyMasks; BYTE byAllPTZLimited; BYTE byAllScheduledTasks; BYTE byAllParkAction; BYTE byRes[125]; }NET_DVR_CLEARCTRL, *LPNET_DVR_CLEARCTRL; typedef struct tagNET_DVR_PTZ_PRIORITIZECFG { DWORD dwSize; BYTE byPTZPrioritize; BYTE byRes[3]; DWORD dwDelay; BYTE byRes1[124]; }NET_DVR_PTZ_PRIORITIZECFG, *LPNET_DVR_PTZ_PRIORITIZECFG; typedef struct tagNET_DVR_INITIALPOSITIONCTRL { DWORD dwSize; DWORD dwChan; BYTE byWorkMode ; BYTE byRes[127]; }NET_DVR_INITIALPOSITIONCTRL,*LPNET_DVR_INITIALPOSITIONCTRL; typedef struct tagNET_DVR_PRIVACY_MASKS_COND { DWORD dwSize; DWORD dwChan; BYTE byRegionalID; BYTE byDelPrivacyMaskCfg; BYTE byRes[62]; }NET_DVR_PRIVACY_MASKS_COND, *LPNET_DVR_PRIVACY_MASKS_COND; typedef struct tagNET_DVR_PRIVACY_MASKS_CFG { DWORD dwSize; BYTE byEnable; BYTE byPrivacyMaskCfgEnable; BYTE byColorType; BYTE byActiveZoomRatio; char sPrivacyMaskName[NAME_LEN]; NET_VCA_POLYGON struRegion; BYTE byCurrentRegionEnable; BYTE byCurZoomRatio ; BYTE byRes[2]; float fActiveZoomRatio; BYTE byRes1[120]; }NET_DVR_PRIVACY_MASKS_CFG, *LPNET_DVR_PRIVACY_MASKS_CFG; typedef struct tagNET_DVR_PRIVACY_MASKS_ENABLECFG { DWORD dwSize; BYTE byEnable; BYTE byRes[127]; }NET_DVR_PRIVACY_MASKS_ENABLECFG,*LPNET_DVR_PRIVACY_MASKS_ENABLECFG; typedef struct tagNET_DVR_SMARTTRACKCFG { DWORD dwSize; BYTE byEnable; BYTE byRes[3]; DWORD dwDuration; BYTE byRes1[124]; }NET_DVR_SMARTTRACKCFG,*LPNET_DVR_SMARTTRACKCFG; typedef struct tagNET_DVR_ZOOMRATIOCTRL { DWORD dwSize; DWORD dwChan; BYTE byRes[128]; }NET_DVR_ZOOMRATIOCTRL,*LPNET_DVR_ZOOMRATIOCTRL; typedef struct tagNET_DVR_DIAL_SWITCH_CFG { DWORD dwSize; DWORD dwSwitchState; BYTE byRes[28]; }NET_DVR_DIAL_SWITCH_CFG,*LPNET_DVR_DIAL_SWITCH_CFG; typedef struct tagNET_ALARM_RECORDFILE_LOSS { NET_DVR_TIME_EX struInspectStart; NET_DVR_TIME_EX struInspectEnd; NET_DVR_IPADDR struIP; DWORD dwChanNo; DWORD dwIDIndex; BYTE sName[STREAM_ID_LEN]; NET_DVR_TIME_EX struLossStartTime; NET_DVR_TIME_EX struLossEndTime; DWORD dwLostNum; BYTE byRes[240]; } NET_ALARM_RECORDFILE_LOSS, *LPNET_ALARM_RECORDFILE_LOSS; typedef struct tagNET_ALARM_STREAM_EXCEPTION { NET_DVR_IPADDR struIP; DWORD dwChanNo; DWORD dwIDIndex; BYTE sName[STREAM_ID_LEN]; BYTE byExceptionCase; BYTE byRes[307]; } NET_ALARM_STREAM_EXCEPTION, *LPNET_ALARM_STREAM_EXCEPTION; typedef struct tagNET_ALARM_RESOURCE_USAGE { BYTE byLevel; BYTE byRes[491]; }NET_ALARM_RESOURCE_USAGE, *LPNET_ALARM_RESOURCE_USAGE; typedef struct tagNET_ALARM_RECORD_EXCEPTION { BYTE byReason; BYTE byRes1[3]; BYTE sVolumeName[MAX_VOLUMENAME_LEN]; DWORD dwVolumeID; BYTE byRes[452]; }NET_ALARM_RECORD_EXCEPTION, *LPNET_ALARM_RECORD_EXCEPTION; typedef union tagNET_ALARM_CVR_SUBINFO_UNION { BYTE byLen[492]; NET_ALARM_RECORDFILE_LOSS struRecordLost; NET_ALARM_STREAM_EXCEPTION struStreamException; NET_ALARM_RESOURCE_USAGE struResourceUsage; NET_ALARM_RECORD_EXCEPTION struRecordException; }NET_ALARM_CVR_SUBINFO_UNION, *LPNET_ALARM_CVR_SUBINFO_UNION; #define MAX_VARIABLE_DATA_NUM 65535 typedef struct tagNET_DVR_ALARMINFO_DEV_V40 { DWORD dwAlarmType; NET_DVR_TIME struTime; NET_ALARM_CVR_SUBINFO_UNION uSubAlarmInfo; BYTE byRes[256]; DWORD dwNumber; WORD *pNO; }NET_DVR_ALARMINFO_DEV_V40, *LPNET_DVR_ALARMINFO_DEV_V40; typedef struct tagNET_DVR_CONTROL_START_CFG { BYTE byUseDefine; BYTE byRes1; WORD wCourseIndex; BYTE byRes[128]; }NET_DVR_CONTROL_START_CFG, *LPNET_DVR_CONTROL_START_CFG; typedef struct tagNET_DVR_CONTROL_DELAY_CFG { BYTE byUseDefine; BYTE byRes1; WORD wDelayTime; BYTE byRes[128]; }NET_DVR_CONTROL_DELAY_CFG, *LPNET_DVR_CONTROL_DELAY_CFG; typedef union tagNET_DVR_CONTROL_INFO_UNION { BYTE byLen[132]; NET_DVR_CONTROL_START_CFG struStartCfg; NET_DVR_CONTROL_DELAY_CFG struDelayCfg; }NET_DVR_CONTROL_INFO_UNION, *LPNET_DVR_CONTROL_INFO_UNION; typedef struct tagNET_DVR_RECORDING_CONTROL_CFG_ { DWORD dwSize; WORD wCmdType; BYTE byRes1 [2]; NET_DVR_CONTROL_INFO_UNION struControlInfo; BYTE byRes[256]; }NET_DVR_RECORDING_CONTROL_CFG, *LPNET_DVR_RECORDING_CONTROL_CFG; typedef struct tagNET_DVR_RECORDING_HOST_CFG { DWORD dwSize; DWORD dwOneKeyDelayTime; BYTE byDirectedMode; BYTE byClassroomType; BYTE byCourseDataStorageEnabled; BYTE byElectronicEnlargeMode; BYTE byRes[124]; }NET_DVR_RECORDING_HOST_CFG, *LPNET_DVR_RECORDING_HOST_CFG; typedef struct tagNET_DVR_STATISTIC_DATA_COND { DWORD dwSize; DWORD dwTypeTarget; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byRes[280]; }NET_DVR_STATISTIC_DATA_COND, *LPNET_DVR_STATISTIC_DATA_COND; typedef struct tagNET_DVR_STATISTIC_DATA_CFG { DWORD dwSize; DWORD dwTypeTarget; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; BYTE byRes[300]; }NET_DVR_STATISTIC_DATA_CFG, *LPNET_DVR_STATISTIC_DATA_CFG; typedef struct tagNET_DVR_AUTO_TRACK_CFG { DWORD dwSize; NET_DVR_DIRECT_CONNECT_CHAN_INFO struSDIInfo[MAX_CHANNUM_V30] ; BYTE byCameraType[MAX_CHANNUM_V30]; BYTE byRes[64]; }NET_DVR_AUTO_TRACK_CFG, *LPNET_DVR_AUTO_TRACK_CFG; typedef struct tagNET_DVR_PUBLISH_FTP_CFG { BYTE byProtocolType; BYTE byRes1; WORD wFTPPort; BYTE byAddress[MAX_DOMAIN_NAME]; BYTE szUserName[NAME_LEN]; BYTE szPassWord[PASSWD_LEN]; BYTE szCustomDir[128]; BYTE byRes[12]; } NET_DVR_PUBLISH_FTP_CFG, *LPNET_DVR_PUBLISH_FTP_CFG; typedef struct tagNET_DVR_PUBLISH_HTTP_CFG { BYTE strUrl[256]; }NET_DVR_PUBLISH_HTTP_CFG, *LPNET_DVR_PUBLISH_HTTP_CFG; typedef struct tagNET_DVR_PUBLISH_FTP_CFG_DIR { BYTE byProtocolType; BYTE byRes1; WORD wFTPPort; BYTE byAddress[MAX_DOMAIN_NAME]; BYTE szUserName[NAME_LEN]; BYTE szPassWord[PASSWD_LEN]; BYTE byDirLevel; BYTE byTopDirMode; BYTE bySubDirMode; BYTE byRes2; BYTE byTopCustomDir[MAX_CUSTOMDIR_LEN]; BYTE bySubCustomDir[MAX_CUSTOMDIR_LEN]; BYTE byRes[72]; }NET_DVR_PUBLISH_FTP_CFG_DIR, *LPNET_DVR_PUBLISH_FTP_CFG_DIR; typedef union tagNET_DVR_PUBLISH_ADD_UNION { BYTE byLen[256]; NET_DVR_PUBLISH_HTTP_CFG struHttpCfg; NET_DVR_PUBLISH_FTP_CFG struFtpCfg; NET_DVR_PUBLISH_FTP_CFG_DIR struDirFtpCfg; }NET_DVR_PUBLISH_ADD_UNION, *LPNET_DVR_PUBLISH_ADD_UNION; typedef struct tagNET_DVR_CHAN_RECORD_PUBLISH_INFO { BYTE byPublish; BYTE byRes1[3]; DWORD dwStreamType; BYTE byRes[12]; }NET_DVR_RECORD_PUBLISH_INFO,*LPNET_DVR_RECORD_PUBLISH_INFO; typedef struct tagNET_DVR_PUBLISH_CFG { DWORD dwSize; BYTE byPublishType; BYTE byRes1[3]; NET_DVR_PUBLISH_ADD_UNION struPublishAddr; NET_DVR_RECORD_PUBLISH_INFO struChanPublish[MAX_CHANNUM_V30]; NET_DVR_RECORD_PUBLISH_INFO struDirectChanPublish; BYTE byUploadTime; BYTE byTimerMode; BYTE byUploadStartHour; BYTE byUoploadStartMin; BYTE byRes[1020]; }NET_DVR_PUBLISH_CFG, *LPNET_DVR_PUBLISH_CFG; typedef struct tagNET_DVR_ONEKEY_PUBLISH_CFG { DWORD dwSize; BYTE byUseDefine; BYTE byRes1[3]; NET_DVR_RECORD_PUBLISH_INFO struChanPublish[MAX_CHANNUM_V30]; NET_DVR_RECORD_PUBLISH_INFO struDirectChanPublish; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE bySchedulePublish; BYTE sFileName[COURSE_NAME_LEN]; BYTE byRes[31]; }NET_DVR_ONEKEY_PUBLISH_CFG,*LPNET_DVR_ONEKEY_PUBLISH_CFG; typedef struct tagNET_DVR_COURSE_RECORDING_INFO { DWORD dwSize; char sCourseName[COURSE_NAME_LEN]; char sInstructorName[INSTRUCTOR_NAME_LEN]; char sCourseDescription[COURSE_DESCRIPTION_LEN ]; BYTE byIndex; BYTE byRes[15]; }NET_DVR_COURSE_RECORDING_INFO, *LPNET_DVR_COURSE_RECORDING_INFO; typedef struct tagNET_DVR_EACH_LESSON_INFO_ { NET_DVR_SCHEDTIME struSchedTime ; WORD wCourseIndex ; WORD wSessionIndex ; BYTE byRes[4] ; }NET_DVR_EACH_LESSON_INFO,*LPNET_DVR_EACH_LESSON_INFO ; typedef struct tagNET_DVR_CURRICULUM_CFG { DWORD dwSize ; NET_DVR_EACH_LESSON_INFO struLessonInfo[MAX_TIMESEGMENT_V40] ; BYTE byRes[256] ; }NET_DVR_CURRICULUM_CFG, *LPNET_DVR_CURRICULUM_CFG; typedef struct tagNET_DVR_DATE_ { WORD wYear; BYTE byMonth; BYTE byDay; }NET_DVR_DATE,*LPNET_DVR_DATE; typedef struct _NET_DVR_PPT_DETECT_CFG_ { DWORD dwSize ; BYTE byEnablePPTDetect; BYTE byPptDetLevel; BYTE byEnablePartScreen; BYTE byRes1; WORD wX; WORD wY; WORD wWidth; WORD wHeight; DWORD dwChangePixelNum; BYTE byRes[28]; }NET_DVR_PPT_DETECT_CFG,*LPNET_DVR_PPT_DETECT_CFG; typedef struct _NET_DVR_SCREEN_SWITCH_ { DWORD dwSize; BYTE byRes[64]; }NET_DVR_SCREEN_SWITCH, *LPNET_DVR_SCREEN_SWITCH; typedef struct _NET_DVR_PPT_CHANNEL_CFG_ { DWORD dwSize ; BYTE byChan[MAX_PPT_CHAN]; BYTE byRes[32]; }NET_DVR_PPT_CHANNEL_CFG,*LPNET_DVR_PPT_CHANNEL_CFG; typedef struct tagNET_DVR_BACKUP_RECORD_INFO { BYTE byEnable; BYTE byRes[11]; DWORD dwStreamType; }NET_DVR_BACKUP_RECORD_INFO, *LPNET_DVR_BACKUP_RECORD_INFO; typedef struct tagNET_DVR_BACKUP_RECORD_PARAM { DWORD dwSize ; NET_DVR_BACKUP_RECORD_INFO struChanBackUp[MAX_CHANNUM_V30]; NET_DVR_BACKUP_RECORD_INFO struDirectedChanBackUp; BYTE byRes[256]; }NET_DVR_BACKUP_RECORD_PARAM, *LPNET_DVR_BACKUP_RECORD_PARAM; typedef struct tagNET_DVR_INDOOR_UNIT_DEVICEID { SHORT wFloorNumber; WORD wRoomNumber; WORD wDevIndex; BYTE byRes[122]; }NET_DVR_INDOOR_UNIT_DEVICEID,*LPNET_DVR_INDOOR_UNIT_DEVICEID; typedef struct tagNET_DVR_OUTDOOR_UNIT_DEVICEID { WORD wPeriod; WORD wBuildingNumber; WORD wUnitNumber; SHORT wFloorNumber; WORD wDevIndex; BYTE byRes[118]; }NET_DVR_OUTDOOR_UNIT_DEVICEID,*LPNET_DVR_OUTDOOR_UNIT_DEVICEID; typedef struct tagNET_DVR_OUTDOOR_FENCE_DEVICEID { WORD wPeriod; WORD wDevIndex; BYTE byRes[124]; }NET_DVR_OUTDOOR_FENCE_DEVICEID,*LPNET_DVR_OUTDOOR_FENCE_DEVICEID; typedef struct tagNET_DVR_MANAGE_UNIT_DEVICEID { WORD wPeriod; WORD wDevIndex; BYTE byRes[124]; }NET_DVR_MANAGE_UNIT_DEVICEID,*LPNET_DVR_MANAGE_UNIT_DEVICEID; typedef union tagNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION { BYTE byLen[128] ; NET_DVR_INDOOR_UNIT_DEVICEID struIndoorUnit; NET_DVR_OUTDOOR_UNIT_DEVICEID struOutdoorUnit; NET_DVR_MANAGE_UNIT_DEVICEID struManageUnit; NET_DVR_OUTDOOR_FENCE_DEVICEID struFenceUnit; NET_DVR_OUTDOOR_UNIT_DEVICEID struVillaOutdoorUnit; NET_DVR_OUTDOOR_UNIT_DEVICEID struAgainConfirmUnit; }NET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION,*LPNET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION; typedef struct tagNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG { DWORD dwSize; BYTE byUnitType; BYTE byIsAutoReg; BYTE byRes1[2]; NET_DVR_VIDEO_INTERCOM_UNIT_DEVICEID_UNION uVideoIntercomUnit; BYTE byRes2[128]; }NET_DVR_VIDEO_INTERCOM_DEVICEID_CFG,*LPNET_DVR_VIDEO_INTERCOM_DEVICEID_CFG; typedef enum tagPRIVILEGE_PASSWORD_TYPE_ENUM { ENUM_PRIVILEGE_PASSWORD_ENGINEERING = 1, ENUM_PRIVILEGE_PASSWORD_SETUPALARM = 2, ENUM_PRIVILEGE_PASSWORD_HOUSEHOLDER_UNLOCK = 3, ENUM_PRIVILEGE_PASSWORD_ANTI_HIJACKING = 4, ENUM_PRIVILEGE_PASSWORD_PUBLIC1 = 5, ENUM_PRIVILEGE_PASSWORD_PUBLIC2 = 6, ENUM_PRIVILEGE_PASSWORD_PUBLIC3 = 7, ENUM_PRIVILEGE_PASSWORD_SENDCARD = 8 }PRIVILEGE_PASSWORD_TYPE_ENUM; typedef struct tagNET_DVR_PRIVILEGE_PASSWORD_CFG { DWORD dwSize; BYTE byPwdType; BYTE byRes1[3]; BYTE byOldPassword[PASSWD_LEN]; BYTE byNewPassword[PASSWD_LEN]; BYTE byRes2[128]; }NET_DVR_PRIVILEGE_PASSWORD_CFG,*LPNET_DVR_PRIVILEGE_PASSWORD_CFG; typedef struct tagNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG { DWORD dwMaxMonitoringTime; DWORD dwMaxRingTime; DWORD dwCallForwardingTime; BYTE byRes[116]; }NET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG,*LPNET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG; typedef struct tagNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG { DWORD dwMaxMessageTime; DWORD dwMaxTalkTime; BYTE byRes[120]; }NET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG,*LPNET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG; typedef struct tagNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG { DWORD dwMaxMonitoringTime; DWORD dwMaxRingTime; DWORD dwMaxTalkTime; BYTE byRes[116]; }NET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG,*LPNET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG; typedef union tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION { BYTE byLen[128]; NET_DVR_INDOOR_UNIT_OPERATION_TIME_CFG struIndoorUnit; NET_DVR_OUTDOOR_UNIT_OPERATION_TIME_CFG struOutdoorUnit; NET_DVR_MANAGE_UNIT_OPERATION_TIME_CFG struManageUnit; }NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION,*LPNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION; typedef struct tagNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG { DWORD dwSize; BYTE byUnitType; BYTE byRes1[3]; NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_UNION uVideoIntercomUnit; BYTE byRes2[128]; }NET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG,*LPNET_DVR_VIDEO_INTERCOM_OPERATION_TIME_CFG; typedef struct tagNET_DVR_INDOOR_UNIT_RELATEDEV { NET_DVR_IPADDR struOutdoorUnit; NET_DVR_IPADDR struManageUnit; NET_DVR_IPADDR struSIPServer; NET_DVR_IPADDR struAgainUnit; BYTE byOutDoorType; BYTE byOutInConnectMode; BYTE byIndoorConnectMode; BYTE byRes1; NET_DVR_IPADDR struIndoorUnit; BYTE byManageCenterID[32]; BYTE byRes[268]; }NET_DVR_INDOOR_UNIT_RELATEDEV,*LPNET_DVR_INDOOR_UNIT_RELATEDEV; typedef struct tagNET_DVR_OUTDOOR_UNIT_RELATEDEV { NET_DVR_IPADDR struMainOutdoorUnit; NET_DVR_IPADDR struManageUnit; NET_DVR_IPADDR struSIPServer; BYTE byManageCenterID[32]; BYTE byRes[560]; }NET_DVR_OUTDOOR_UNIT_RELATEDEV,*LPNET_DVR_OUTDOOR_UNIT_RELATEDEV; typedef struct tagNET_DVR_AGAIN_RELATEDEV { NET_DVR_IPADDR struSIPServer; NET_DVR_IPADDR struCenterAddr; WORD wCenterPort; BYTE byRes1[2]; NET_DVR_IPADDR struIndoorUnit; NET_DVR_IPADDR struAgainAddr; BYTE byRes[444]; }NET_DVR_AGAIN_RELATEDEV,*LPNET_DVR_AGAIN_RELATEDEV; typedef struct tagNET_DVR_MANAGE_UNIT_RELATEDEV { NET_DVR_IPADDR struSIPServer; BYTE byRes[880]; }NET_DVR_MANAGE_UNIT_RELATEDEV,*LPNET_DVR_MANAGE_UNIT_RELATEDEV; typedef union tagNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION { DWORD dwRes[256] ; NET_DVR_INDOOR_UNIT_RELATEDEV struIndoorUnit; NET_DVR_OUTDOOR_UNIT_RELATEDEV struMainOutdoorUnit; NET_DVR_MANAGE_UNIT_RELATEDEV struManageUnit; NET_DVR_OUTDOOR_UNIT_RELATEDEV struVillaUnit; NET_DVR_AGAIN_RELATEDEV struAgainUnit; }NET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION,*LPNET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION; typedef struct tagNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG { DWORD dwSize; BYTE byUnitType; BYTE byRes1[3]; NET_DVR_VIDEO_INTERCOM_UNIT_RELATEDEV_UNION uVideoIntercomUnit; BYTE byRes2[128]; }NET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG,*LPNET_DVR_VIDEO_INTERCOM_RELATEDEV_CFG; typedef struct tagNET_DVR_CONTROL_GATEWAY { DWORD dwSize; DWORD dwGatewayIndex; BYTE byCommand; BYTE byLockType; WORD wLockID; BYTE byControlSrc[NAME_LEN]; BYTE byControlType; BYTE byRes3[3]; BYTE byPassword[PASSWD_LEN]; BYTE byRes2[108]; }NET_DVR_CONTROL_GATEWAY,*LPNET_DVR_CONTROL_GATEWAY; typedef struct tagNET_DVR_NOTICE_PIC { BYTE* pPicData; DWORD dwPicDataLen; BYTE byRes[32]; }NET_DVR_NOTICE_PIC,*LPNET_DVR_NOTICE_PIC; typedef struct tagNET_DVR_NOTICE_DATA { DWORD dwSize; NET_DVR_TIME_EX struTime; BYTE byNoticeNumber[MAX_NOTICE_NUMBER_LEN]; BYTE byNoticeTheme[MAX_NOTICE_THEME_LEN]; BYTE byNoticeDetail[MAX_NOTICE_DETAIL_LEN]; BYTE byLevel; BYTE byPicNum; BYTE byRes1[2]; NET_DVR_NOTICE_PIC struNoticePic[MAX_NOTICE_PIC_NUM]; BYTE byRes2[128]; }NET_DVR_NOTICE_DATA,*LPNET_DVR_NOTICE_DATA; typedef struct tagNET_DVR_OPERATION_AUTH { DWORD dwSize; BYTE byPassword[PASSWD_LEN]; BYTE byRes[128]; }NET_DVR_OPERATION_AUTH,*LPNET_DVR_OPERATION_AUTH; typedef enum tagUNLOCK_TYPE_ENUM { ENUM_UNLOCK_PASSWORD = 1, ENUM_UNLOCK_HIJACKING = 2, ENUM_UNLOCK_CARD = 3, ENUM_UNLOCK_HOUSEHOLDER = 4, ENUM_UNLOCK_CENTER_PLATFORM = 5, ENUM_UNLOCK_BLUETOOTH = 6, ENUM_UNLOCK_QR_CODE = 7, ENUM_UNLOCK_FACE = 8, ENUM_UNLOCK_FINGERPRINT = 9 }UNLOCK_TYPE_ENUM; typedef struct tagNET_DVR_UNLOCK_RECORD_INFO { BYTE byUnlockType; BYTE byRes1[3]; BYTE byControlSrc[NAME_LEN]; DWORD dwPicDataLen; BYTE* pImage; DWORD dwCardUserID; SHORT nFloorNumber; WORD wRoomNumber; WORD wLockID; BYTE byRes2[2]; BYTE byLockName[LOCK_NAME_LEN]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes[136]; }NET_DVR_UNLOCK_RECORD_INFO,*LPNET_DVR_UNLOCK_RECORD_INFO; typedef struct tagNET_DVR_NOTICEDATA_RECEIPT_INFO { BYTE byNoticeNumber[MAX_NOTICE_NUMBER_LEN]; BYTE byRes[224]; }NET_DVR_NOTICEDATA_RECEIPT_INFO,*LPNET_DVR_NOTICEDATA_RECEIPT_INFO; typedef struct tagNET_DVR_AUTH_INFO { BYTE byAuthResult; BYTE byAuthType; BYTE byRes1[2]; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwPicDataLen; BYTE* pImage; BYTE byRes[212]; }NET_DVR_AUTH_INFO, *LPNET_DVR_AUTH_INFO; typedef struct tagNET_DVR_UPLOAD_PLATE_INFO { char sLicense[MAX_LICENSE_LEN]; BYTE byColor; BYTE byRes[239]; }NET_DVR_UPLOAD_PLATE_INFO, *LPNET_DVR_UPLOAD_PLATE_INFO; typedef struct tagNET_DVR_SEND_CARD_INFO { BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byRes[224]; }NET_DVR_SEND_CARD_INFO, *LPNET_DVR_SEND_CARD_INFO; typedef union tagNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON { BYTE byLen[256]; NET_DVR_UNLOCK_RECORD_INFO struUnlockRecord; NET_DVR_NOTICEDATA_RECEIPT_INFO struNoticedataReceipt; NET_DVR_AUTH_INFO struAuthInfo; NET_DVR_UPLOAD_PLATE_INFO struUploadPlateInfo; NET_DVR_SEND_CARD_INFO struSendCardInfo; }NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON,*LPNET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON; typedef struct tagNET_DVR_VIDEO_INTERCOM_EVENT { DWORD dwSize; NET_DVR_TIME_EX struTime; BYTE byDevNumber[MAX_DEV_NUMBER_LEN]; BYTE byEventType; BYTE byPicTransType; BYTE byRes1[2]; NET_DVR_VIDEO_INTERCOM_EVENT_INFO_UINON uEventInfo; DWORD dwIOTChannelNo; BYTE byRes2[252]; }NET_DVR_VIDEO_INTERCOM_EVENT,*LPNET_DVR_VIDEO_INTERCOM_EVENT; typedef struct tagNET_DVR_ZONE_ALARM_INFO { BYTE byZoneName[NAME_LEN]; DWORD dwZonendex; BYTE byZoneType; BYTE byRes[219]; }NET_DVR_ZONE_ALARM_INFO,*LPNET_DVR_ZONE_ALARM_INFO; typedef struct tagNET_DVR_LOCK_ALARM_INFO { DWORD dwLockID; BYTE byRes[252]; }NET_DVR_LOCK_ALARM_INFO, *LPNET_DVR_LOCK_ALARM_INFO; typedef union tagNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION { BYTE byLen[256]; NET_DVR_ZONE_ALARM_INFO struZoneAlarm; NET_DVR_LOCK_ALARM_INFO struLockAlarm; }NET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION,*LPNET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION; typedef struct tagNET_DVR_VIDEO_INTERCOM_ALARM { DWORD dwSize; NET_DVR_TIME_EX struTime; BYTE byDevNumber[MAX_DEV_NUMBER_LEN]; BYTE byAlarmType; BYTE byRes1[3]; NET_DVR_VIDEO_INTERCOM_ALARM_INFO_UNION uAlarmInfo; WORD wLockID; BYTE byRes3[2]; DWORD dwIOTChannelNo; BYTE byRes2[248]; }NET_DVR_VIDEO_INTERCOM_ALARM,*LPNET_DVR_VIDEO_INTERCOM_ALARM; typedef struct tagNET_DVR_PEOPLE_REGION { BYTE byID; BYTE byNumber; BYTE byDressType; BYTE byRes; NET_VCA_RECT struRegion; DWORD dwPicLen; char* pPicBuffer; BYTE byRes1[24]; }NET_DVR_PEOPLE_REGION,*LPNET_DVR_PEOPLE_REGION; typedef struct tagNET_DVR_PEOPLE_DETECTION_RESULT { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; NET_DVR_PEOPLE_REGION struPeopleRegion[MAX_PEOPLE_DETECTION_NUM]; BYTE byPeopleAlarmType; BYTE byRes[255]; }NET_DVR_PEOPLE_DETECTION_RESULT,*LPNET_DVR_PEOPLE_DETECTION_RESULT; typedef struct tagNET_DVR_SUPPLEMENTLIGHT { BYTE byEnable; BYTE byMode; BYTE byHighBeamBrightness; BYTE byLowBeamBrightness; NET_DVR_SCHEDULE_DAYTIME struSchedTime; WORD wFilteringTime; BYTE byBrightness; BYTE bySensitivity; BYTE byBrightnessRegulatMode; BYTE byMaxBrightness; BYTE byRes[58]; }NET_DVR_SUPPLEMENTLIGHT,*LPNET_DVR_SUPPLEMENTLIGHT; typedef struct tagNET_DVR_EXTERNALDEVICE { DWORD dwSize; NET_DVR_SUPPLEMENTLIGHT struSupplementLight; BYTE byRes[512]; }NET_DVR_EXTERNALDEVICE,*LPNET_DVR_EXTERNALDEVICE; typedef struct tagNET_DVR_TEMPERATURE_TRIGGER_COND { DWORD dwSize; DWORD dwChan; DWORD dwPreset; BYTE byRes[256]; }NET_DVR_TEMPERATURE_TRIGGER_COND, *LPNET_DVR_TEMPERATURE_TRIGGER_COND; typedef struct tagNET_DVR_BUILTIN_SUPPLEMENTLIGHT { DWORD dwSize; BYTE byMode; BYTE byBrightnessLimit; BYTE byRes[6]; NET_DVR_SCHEDULE_DAYTIME struSchedTime; BYTE byRes1[256]; }NET_DVR_BUILTIN_SUPPLEMENTLIGHT,*LPNET_DVR_BUILTIN_SUPPLEMENTLIGHT; typedef struct tagNET_DVR_OIS_CFG { DWORD dwSize; BYTE byMode; BYTE byOISLevel; BYTE byOISSensitivity; BYTE byRes[125]; }NET_DVR_OIS_CFG, *LPNET_DVR_OIS_CFG; typedef struct tagNET_DVR_MACFILTER_CFG { DWORD dwSize; BYTE byEnabled; BYTE byPermissionType; BYTE byRes1[2]; BYTE szMacAddress[MAC_ADDRESS_NUM][MACADDR_LEN]; BYTE byRes[128]; }NET_DVR_MACFILTER_CFG, *LPNET_DVR_MACFILTER_CFG; typedef struct tagNET_DVR_EAGLEFOCUSING_SENCE { BYTE byRuleType; BYTE bySceneID; WORD wRate; NET_VCA_POLYGON struRegion; BYTE bySpotNum; BYTE byRes[127]; }NET_DVR_EAGLEFOCUSING_SENCE, *LPNET_DVR_EAGLEFOCUSING_SENCE; typedef struct tagNET_DVR_EAGLEFOCUSING_CALCFG { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_EAGLEFOCUSING_SENCE struEagleFoucsing[MAX_SENCE_NUM]; BYTE byRes[512]; }NET_DVR_EAGLEFOCUSING_CALCFG, *LPNET_DVR_EAGLEFOCUSING_CALCFG; typedef struct tagNET_DVR_EAGLEFOCUSING_CTRL { DWORD dwSize; BYTE byEnable; BYTE byRes[511]; }NET_DVR_EAGLEFOCUSING_CTRL, *LPNET_DVR_EAGLEFOCUSING_CTRL; typedef struct tagNET_DVR_SMARTCALIBRATION_REGION { BYTE byRuleID; BYTE byMode; BYTE byStrategy; BYTE byPriority; NET_VCA_POLYGON struMaxTargetSize; NET_VCA_POLYGON struMinTargetSize; }NET_DVR_SMARTCALIBRATION_REGION, *LPNET_DVR_SMARTCALIBRATION_REGION; #define RULE_REGION_MAX 128 typedef struct tagNET_DVR_SMARTCALIBRATION_CFG { DWORD dwSize; BYTE bySmartType; BYTE byRes[3]; NET_DVR_SMARTCALIBRATION_REGION strRegion[RULE_REGION_MAX]; BYTE byRes1[128]; }NET_DVR_SMARTCALIBRATION_CFG, *LPNET_DVR_SMARTCALIBRATION_CFG; typedef struct tagNET_DVR_SMARTCALIBRATION_COND { DWORD dwSize; BYTE bySmartType; BYTE byRes[3]; DWORD dwChannel; BYTE byRes1[128]; }NET_DVR_SMARTCALIBRATION_COND, *LPNET_DVR_SMARTCALIBRATION_COND; typedef struct tagNET_DVR_SMARTCALIBRATION_REGION_CFG { DWORD dwSize; NET_DVR_SMARTCALIBRATION_REGION strRegion[RULE_REGION_MAX]; BYTE byRes1[128]; }NET_DVR_SMARTCALIBRATION_REGION_CFG, *LPNET_DVR_SMARTCALIBRATION_REGION_CFG; typedef struct tagNET_DVR_OSD_BATTERY_POWER_CFG { DWORD dwSize; NET_VCA_POINT struOSDBatteryPower; BYTE byOSDBatteryPower; BYTE byRes[63]; }NET_DVR_OSD_BATTERY_POWER_CFG, *LPNET_DVR_OSD_BATTERY_POWER_CFG; #define CARD_PARAM_CARD_VALID 0x00000001 #define CARD_PARAM_VALID 0x00000002 #define CARD_PARAM_CARD_TYPE 0x00000004 #define CARD_PARAM_DOOR_RIGHT 0x00000008 #define CARD_PARAM_LEADER_CARD 0x00000010 #define CARD_PARAM_SWIPE_NUM 0x00000020 #define CARD_PARAM_GROUP 0x00000040 #define CARD_PARAM_PASSWORD 0x00000080 #define CARD_PARAM_RIGHT_PLAN 0x00000100 #define CARD_PARAM_SWIPED_NUM 0x00000200 typedef struct tagNET_DVR_VALID_PERIOD_CFG { BYTE byEnable; BYTE byBeginTimeFlag; BYTE byEnableTimeFlag; BYTE byTimeDurationNo; NET_DVR_TIME_EX struBeginTime; NET_DVR_TIME_EX struEndTime; BYTE byTimeType; BYTE byRes2[31]; }NET_DVR_VALID_PERIOD_CFG, *LPNET_DVR_VALID_PERIOD_CFG; typedef struct tagNET_DVR_CARD_CFG { DWORD dwSize; DWORD dwModifyParamType; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardValid; BYTE byCardType; BYTE byLeaderCard; BYTE byRes1; DWORD dwDoorRight; NET_DVR_VALID_PERIOD_CFG struValid; DWORD dwBelongGroup; BYTE byCardPassword[CARD_PASSWORD_LEN]; BYTE byCardRightPlan[MAX_DOOR_NUM][MAX_CARD_RIGHT_PLAN_NUM]; DWORD dwMaxSwipeTime; DWORD dwSwipeTime; WORD wRoomNumber; SHORT wFloorNumber; BYTE byRes2[20]; }NET_DVR_CARD_CFG, *LPNET_DVR_CARD_CFG; typedef struct _NET_DVR_CARD_CFG_COND { DWORD dwSize; DWORD dwCardNum; BYTE byCheckCardNo; BYTE byRes1[3]; WORD wLocalControllerID; BYTE byRes2[2]; DWORD dwLockID; BYTE byRes3[20]; }NET_DVR_CARD_CFG_COND, *LPNET_DVR_CARD_CFG_COND; typedef struct _NET_DVR_CARD_CFG_SEND_DATA { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwCardUserId; BYTE byRes[12]; }NET_DVR_CARD_CFG_SEND_DATA, *LPNET_DVR_CARD_CFG_SEND_DATA; typedef struct tagNET_DVR_CARD_USER_INFO_CFG { DWORD dwSize; BYTE sUsername[NAME_LEN]; BYTE byRes2[256]; }NET_DVR_CARD_USER_INFO_CFG, *LPNET_DVR_CARD_USER_INFO_CFG; #define ACS_PARAM_DOOR_STATUS_WEEK_PLAN 0x00000001 #define ACS_PARAM_VERIFY_WEEK_PALN 0x00000002 #define ACS_PARAM_CARD_RIGHT_WEEK_PLAN 0x00000004 #define ACS_PARAM_DOOR_STATUS_HOLIDAY_PLAN 0x00000008 #define ACS_PARAM_VERIFY_HOLIDAY_PALN 0x00000010 #define ACS_PARAM_CARD_RIGHT_HOLIDAY_PLAN 0x00000020 #define ACS_PARAM_DOOR_STATUS_HOLIDAY_GROUP 0x00000040 #define ACS_PARAM_VERIFY_HOLIDAY_GROUP 0x00000080 #define ACS_PARAM_CARD_RIGHT_HOLIDAY_GROUP 0x00000100 #define ACS_PARAM_DOOR_STATUS_PLAN_TEMPLATE 0x00000200 #define ACS_PARAM_VERIFY_PALN_TEMPLATE 0x00000400 #define ACS_PARAM_CARD_RIGHT_PALN_TEMPLATE 0x00000800 #define ACS_PARAM_CARD 0x00001000 #define ACS_PARAM_GROUP 0x00002000 #define ACS_PARAM_ANTI_SNEAK_CFG 0x00004000 #define ACS_PAPAM_EVENT_CARD_LINKAGE 0x00008000 #define ACS_PAPAM_CARD_PASSWD_CFG 0x00010000 #define ACS_PARAM_PERSON_STATISTICS_CFG 0x00020000 #define ACS_PARAM_BLACK_LIST_PICTURE 0x00040000 #define ACS_PARAM_ID_BLACK_LIST 0x00080000 #define ACS_PARAM_EXAM_INFO 0x00100000 #define ACS_PARAM_EXAMINEE_INFO 0x00200000 #define ACS_PARAM_FAILED_FACE_INFO 0x00400000 typedef struct tagNET_DVR_ACS_PARAM_TYPE { DWORD dwSize; DWORD dwParamType; WORD wLocalControllerID; BYTE byRes[30]; }NET_DVR_ACS_PARAM_TYPE, *LPNET_DVR_ACS_PARAM_TYPE; typedef struct tagNET_DVR_VIDEO_INTERCOM_IOIN_CFG { DWORD dwSize; BYTE byIOUseType; BYTE byRes[63]; }NET_DVR_VIDEO_INTERCOM_IOIN_CFG, *LPNET_DVR_VIDEO_INTERCOM_IOIN_CFG; typedef struct tagNET_DVR_VIDEO_INTERCOM_IOOUT_CFG { DWORD dwSize; BYTE byIOUseType; BYTE byRes[63]; }NET_DVR_VIDEO_INTERCOM_IOOUT_CFG, *LPNET_DVR_VIDEO_INTERCOM_IOOUT_CFG; typedef struct tagNET_DVR_ELEVATORCONTROL_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1; BYTE byInterfaceType; BYTE byRS485Protocol; BYTE byNetworkType; BYTE byRes[63]; }NET_DVR_ELEVATORCONTROL_CFG, *LPNET_DVR_ELEVATORCONTROL_CFG; typedef struct tagNET_DVR_ELEVATORCONTROL_CFG_V40 { DWORD dwSize; BYTE byEnable; BYTE byRes1; BYTE byInterfaceType; BYTE byRS485Protocol; BYTE byNetworkType; BYTE byRes2; WORD wServerPort; NET_DVR_IPADDR struServerIP; BYTE byRes[256]; }NET_DVR_ELEVATORCONTROL_CFG_V40, *LPNET_DVR_ELEVATORCONTROL_CFG_V40; typedef struct tagNET_DVR_ELEVATORCONTROL_CFG_V50 { DWORD dwSize; BYTE byEnable; BYTE byNegativeFloor; BYTE byInterfaceType; BYTE byRS485Protocol; BYTE byNetworkType; BYTE byElevatorControlType; WORD wServerPort; NET_DVR_IPADDR struServerIP; BYTE sUserName[NET_DVR_LOGIN_USERNAME_MAX_LEN]; BYTE sPassword[NET_DVR_LOGIN_PASSWD_MAX_LEN]; BYTE byRes[256]; }NET_DVR_ELEVATORCONTROL_CFG_V50, *LPNET_DVR_ELEVATORCONTROL_CFG_V50; typedef struct tagNET_DVR_ROOM_CUSTOM_COND { DWORD dwSize; DWORD dwRoomNumber; BYTE byRes[128]; }NET_DVR_ROOM_CUSTOM_COND, *LPNET_DVR_ROOM_CUSTOM_COND; typedef struct tagNET_DVR_ROOM_CUSTOM_CFG { DWORD dwSize; DWORD dwFormerRoomNo; DWORD dwCustomRoomNo; BYTE byRes[128]; }NET_DVR_ROOM_CUSTOM_CFG, *LPNET_DVR_ROOM_CUSTOM_CFG; typedef struct tagNET_DVR_ROOM_CUSTOM_STATUS { DWORD dwSize; DWORD dwFormerRoomNo; BYTE byStatus; BYTE byRes[127]; }NET_DVR_ROOM_CUSTOM_STATUS, *LPNET_DVR_ROOM_CUSTOM_STATUS; typedef struct tagNET_DVR_VIDEOINTERCOM_STREAM { DWORD dwSize; BYTE byVisDevID[MAX_NAMELEN]; BYTE byDeviceName[NAME_LEN]; BYTE bySourceType; BYTE byRes[255]; }NET_DVR_VIDEOINTERCOM_STREAM, LPNET_DVR_VIDEOINTERCOM_STREAM; #define UNLOCK_PASSWORD_LEN 8 #define LOCAL_CONTROLLER_NAME_LEN 32 typedef struct tagNET_DVR_DOOR_CFG { DWORD dwSize; BYTE byDoorName[DOOR_NAME_LEN]; BYTE byMagneticType; BYTE byOpenButtonType; BYTE byOpenDuration; BYTE byDisabledOpenDuration; BYTE byMagneticAlarmTimeout; BYTE byEnableDoorLock; BYTE byEnableLeaderCard; BYTE byLeaderCardMode; DWORD dwLeaderCardOpenDuration; BYTE byStressPassword[STRESS_PASSWORD_LEN]; BYTE bySuperPassword[SUPER_PASSWORD_LEN]; BYTE byUnlockPassword[UNLOCK_PASSWORD_LEN]; BYTE byUseLocalController; BYTE byRes1; WORD wLocalControllerID; WORD wLocalControllerDoorNumber; WORD wLocalControllerStatus; BYTE byLockInputCheck; BYTE byLockInputType; BYTE byDoorTerminalMode; BYTE byOpenButton; BYTE byLadderControlDelayTime; BYTE byRes2[43]; }NET_DVR_DOOR_CFG, *LPNET_DVR_DOOR_CFG; typedef struct tagNET_DVR_VIS_DEV_INFO { DWORD dwSize; BYTE szDevNumber[MAX_DEV_NUMBER_LEN]; BYTE byRes[64]; }NET_DVR_VIS_DEV_INFO,*LPNET_DVR_VIS_DEV_INFO; typedef struct tagNET_DVR_VIS_REGISTER_INFO { DWORD dwSize; DWORD dwID; BYTE szDevNumber[MAX_DEV_NUMBER_LEN]; BYTE byMACAddr[MACADDR_LEN]; BYTE byRes1[2]; BYTE sSerialNumber[SERIALNO_LEN]; NET_DVR_IPADDR struDevIP; NET_DVR_TIME_EX struRegisterTime; BYTE byRegisterType; BYTE byRes[127]; }NET_DVR_VIS_REGISTER_INFO,*LPNET_DVR_VIS_REGISTER_INFO; typedef struct tagNET_DVR_CALLER_INFO { DWORD dwSize; WORD wBuildingNo; SHORT wFloorNo; BYTE byZoneNo; BYTE byUnitNo; BYTE byDevNo; BYTE byDevType; BYTE byLockNum; BYTE byHighDevNo; BYTE byRes1[2]; BYTE byVoipNo[16]; BYTE byRes[80]; }NET_DVR_CALLER_INFO,*LPNET_DVR_CALLER_INFO; typedef struct tagNET_DVR_CALL_STATUS { DWORD dwSize; BYTE byCallStatus; BYTE byRes[127]; }NET_DVR_CALL_STATUS, *LPNET_DVR_CALL_STATUS; #define MAX_SERVER_DEVICE_NUMBER 16 typedef struct tagNET_DVR_SERVER_DEVICE_CFG { BYTE byDeviceName[NAME_LEN]; BYTE byDeviceType; BYTE byDeviceID; BYTE byLockNum; BYTE byRes[5]; }NET_DVR_SERVER_DEVICE_CFG,*LPNET_DVR_SERVER_DEVICE_CFG; typedef struct tagNET_DVR_SERVER_DEVICE_INFO { DWORD dwSize; DWORD dwDeviceNum; NET_DVR_SERVER_DEVICE_CFG struDeviceCfg[MAX_SERVER_DEVICE_NUMBER]; BYTE byRes[200]; }NET_DVR_SERVER_DEVICE_INFO,*LPNET_DVR_SERVER_DEVICE_INFO; typedef struct tagNET_DVR_VIDEO_CALL_PARAM { DWORD dwSize; DWORD dwCmdType; WORD wPeriod; WORD wBuildingNumber; WORD wUnitNumber; SHORT wFloorNumber; WORD wRoomNumber; WORD wDevIndex; BYTE byUnitType; BYTE byRes[115]; }NET_DVR_VIDEO_CALL_PARAM,*LPNET_DVR_VIDEO_CALL_PARAM; #define MAX_SCREEN_ADDRESS_LEN 16 #define MAX_DAY_TIME_POINT 8 #define MAX_TIME_POINT 16 typedef struct tagNET_DVR_DEV_IP_INFO { BYTE byUserName[NAME_LEN]; BYTE byPassWord[PASSWD_LEN]; NET_DVR_IPADDR struIPAddr; WORD wPort; BYTE byRes[24]; }NET_DVR_DEV_IP_INFO, *LPNET_DVR_DEV_IP_INFO; typedef union tagNET_DVR_SCREEN_BASE_INFO { BYTE byScreenAddress[MAX_SCREEN_ADDRESS_LEN]; NET_DVR_DEV_IP_INFO struIPInfo; BYTE byRes[100]; }NET_DVR_SCREEN_BASE_INFO,*LPNET_DVR_SCREEN_BASE_INFO; typedef struct tagNET_DVR_SCREEN_INDEX_CFG { DWORD dwSize; BYTE byEnbale; BYTE byDevAddType; BYTE byRes1[2]; NET_DVR_SCREEN_BASE_INFO struScreenBaseInfo; BYTE byRes[32]; }NET_DVR_SCREEN_INDEX_CFG,*LPNET_DVR_SCREEN_INDEX_CFG; typedef struct tagNET_DVR_SIMULATE_REMOTE_CTRL { BYTE byControlType; BYTE byControlParam; BYTE byRes[14]; }NET_DVR_SIMULATE_REMOTE_CTRL, *LPNET_DVR_SIMULATE_REMOTE_CTRL; typedef struct tagNET_DVR_SCREEN_WALL_CTRL { BYTE byEnable; BYTE byRes[15]; }NET_DVR_SCREEN_WALL_CTRL, *LPNET_DVR_SCREEN_WALL_CTRL; typedef struct tagNET_DVR_AREA_ZOOM_CFG { BYTE byCmd; BYTE byRes[3]; NET_DVR_RECTCFG struArea; }NET_DVR_AREA_ZOOM_CFG, *LPNET_DVR_AREA_ZOOM_CFG; typedef union tagNET_DVR_SCREEN_CONTROL_PARAM { NET_DVR_INPUT_INTERFACE_CTRL struInputCtrl; NET_DVR_DISPLAY_COLOR_CTRL struDisplayCtrl; NET_DVR_DISPLAY_POSITION_CTRL struPositionCtrl; NET_DVR_SIMULATE_REMOTE_CTRL struSimulateRemoteCrtl; NET_DVR_SCREEN_WALL_CTRL struScreenWallCtrl; NET_DVR_AREA_ZOOM_CFG struZoomArea; BYTE byRes[16]; }NET_DVR_SCREEN_CONTROL_PARAM, *LPNET_DVR_SCREEN_CONTROL_PARAM; typedef struct tagNET_DVR_SCREEN_CONTROL { DWORD dwSize; DWORD dwCommand ; BYTE byProtocol; BYTE byRes1[3]; NET_DVR_SCREEN_CONTROL_PARAM struControlParam; BYTE byRes2[52]; }NET_DVR_SCREEN_CONTROL, *LPNET_DVR_SCREEN_CONTROL; typedef struct tagNET_DVR_SCREEN_CONTROL_V41 { DWORD dwSize; BYTE bySerialNo; BYTE byRes[2]; BYTE byProtocol; DWORD dwCommand ; NET_DVR_SCREEN_CONTROL_PARAM struControlParam; BYTE byWallNo; BYTE byDevNo; BYTE bySubboardNo; BYTE byRes1; NET_DVR_RECTCFG_EX struRect; BYTE byRes2[28]; }NET_DVR_SCREEN_CONTROL_V41, *LPNET_DVR_SCREEN_CONTROL_V41; typedef struct tagNET_DVR_MSC_SPLICE_CFG { DWORD dwSize; BYTE bySpliceNo; BYTE byWallNo; BYTE byEnable; BYTE byRes1[1]; NET_DVR_RECTCFG_EX struRectCfg; BYTE byRes2[32]; }NET_DVR_MSC_SPLICE_CFG,*LPNET_DVR_MSC_SPLICE_CFG; typedef struct tagNET_DVR_MSC_SCREEN_INTERFACE_CFG { DWORD dwSize; BYTE byInterfaceType; BYTE byNoSignalPic; BYTE byRes[30]; }NET_DVR_MSC_SCREEN_INTERFACE_CFG,*LPNET_DVR_MSC_SCREEN_INTERFACE_CFG; typedef struct tagNET_DVR_MSC_SCREEN_BACKLIGHT_CFG { DWORD dwSize; BYTE byBacklight; BYTE byRes[15]; }NET_DVR_MSC_SCREEN_BACKLIGHT_CFG,*LPNET_DVR_MSC_SCREEN_BACKLIGHT_CFG; typedef struct tagNET_DVR_MSC_SCREEN_PIP_CFG { DWORD dwSize; BYTE byEnable; BYTE bySubWindowSource; BYTE bySubWindowBorderColor; BYTE byRes1; NET_DVR_RECTCFG_EX struPosition; BYTE byRes2[16]; }NET_DVR_MSC_SCREEN_PIP_CFG,*LPNET_DVR_MSC_SCREEN_PIP_CFG; typedef struct tagNET_DVR_SCREEN_WORK_STATE { DWORD dwSize; BYTE byFanStatus; BYTE byFanExceptionStatus; BYTE byRes1[2]; DWORD dwWorkingHours; BYTE byVersion[VERSION_LEN]; int iTemperature; BYTE byTempState; BYTE byRes[31]; }NET_DVR_SCREEN_WORK_STATE,*LPNET_DVR_SCREEN_WORK_STATE; typedef struct tagNET_DVR_BOOT_LOGO_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[31]; }NET_DVR_BOOT_LOGO_CFG,*LPNET_DVR_BOOT_LOGO_CFG; typedef struct tagNET_DVR_LCD_AUDIO_CFG { DWORD dwSize; BYTE byMute; BYTE byVolume; char byBalance; BYTE byRes[33]; }NET_DVR_LCD_AUDIO_CFG, *LPNET_DVR_LCD_AUDIO_CFG; typedef union tagNET_DVR_MSC_SCREEN_PARAM { NET_DVR_MSC_SCREEN_INTERFACE_CFG struInterfaceCfg; NET_DVR_SCREEN_FAN_WORK_MODE_CFG struFanWorkMode; NET_DVR_SCREEN_VGA_CFG struVgaCfg; NET_DVR_SCREEN_MENU_CFG struMenuCfg; NET_DVR_VIDEO_OUT_CFG struOutEffectCfg; NET_DVR_COLOR_TEMPERATURE_CFG struColorTemperatureCfg; NET_DVR_ADC_CFG struAdcCfg; NET_DVR_SCREEN_EDGE_CFG struScreenEdgeCfg; NET_DVR_MSC_SCREEN_BACKLIGHT_CFG struBacklight; NET_DVR_MSC_SCREEN_PIP_CFG struPicInPicCfg; NET_DVR_DEFOG_LCD struDefog; NET_DVR_SCREEN_WORK_STATE struWorkState; NET_DVR_BOOT_LOGO_CFG struBootLogoCfg; NET_DVR_LCD_AUDIO_CFG struAudioCfg; BYTE byRes[256]; }NET_DVR_MSC_SCREEN_PARAM,*LPNET_DVR_MSC_SCREEN_PARAM; typedef struct tagNET_DVR_MSC_SCREEN_PARAM_CFG { DWORD dwSize; BYTE byParamType; BYTE byRes1[3]; NET_DVR_MSC_SCREEN_PARAM struParam; BYTE byRes2[32]; }NET_DVR_MSC_SCREEN_PARAM_CFG,*LPNET_DVR_MSC_SCREEN_PARAM_CFG; typedef struct tagNET_DVR_MSC_SCREEN_REMOTE_CFG { DWORD dwSize; BYTE byWallNo; BYTE byRes1[3]; NET_DVR_RECTCFG_EX struRectCfg; NET_DVR_MSC_SCREEN_PARAM_CFG struScreenParam; BYTE byRes2[32]; }NET_DVR_MSC_SCREEN_REMOTE_CFG,*LPNET_DVR_MSC_SCREEN_REMOTE_CFG; typedef struct tagNET_DVR_MSC_SCREEN_PARAM_COND { DWORD dwSize; BYTE byWallNo; BYTE byParamType; BYTE byRes1[2]; NET_DVR_RECTCFG_EX struRectCfg; BYTE byRes2[32]; }NET_DVR_MSC_SCREEN_PARAM_COND,*LPNET_DVR_MSC_SCREEN_PARAM_COND; typedef struct tagNET_DVR_SWITCH_DAY_TIME { BYTE byEnable; BYTE bySwitchType; BYTE byRes1[2]; NET_DVR_DAYTIME struTimePoint; BYTE byRes2[8]; }NET_DVR_SWITCH_DAY_TIME,*LPNET_DVR_SWITCH_DAY_TIME; typedef struct tagNET_DVR_SWITCH_TIME_POINT { BYTE byEnable; BYTE bySwitchType; BYTE byRes1[2]; NET_DVR_SYSTEM_TIME struTimePoint; BYTE byRes2[16]; }NET_DVR_SWITCH_TIME_POINT,*LPNET_DVR_SWITCH_TIME_POINT; typedef struct tagNET_DVR_TIME_SWITCH_CFG { DWORD dwSize; NET_DVR_SWITCH_DAY_TIME struSwitchDayTime[MAX_DAYS][MAX_DAY_TIME_POINT]; NET_DVR_SWITCH_TIME_POINT struSwitchTimePoint[MAX_TIME_POINT]; BYTE byRes[64]; }NET_DVR_TIME_SWITCH_CFG,*LPNET_DVR_TIME_SWITCH_CFG; typedef struct tagNET_DVR_VIDEO_WALL_AREA { DWORD dwSize; BYTE byWallNo; BYTE byRes1[3]; NET_DVR_RECTCFG_EX struRect; BYTE byRes2[32]; }NET_DVR_VIDEO_WALL_AREA, *LPNET_DVR_VIDEO_WALL_AREA; typedef struct tagNET_DVR_DELAY_TIME { DWORD dwSize; DWORD dwDelayTime; BYTE byRes[32]; }NET_DVR_DELAY_TIME,*LPNET_DVR_DELAY_TIME; typedef enum _BV_CALIBRATION_TYPE_ENUM_ { ENUM_BV_CALIBRATION_NONE = 0, ENUM_BV_CALIBRATION_DIRECT = 1, ENUM_BV_CALIBRATION_SAMPLE = 2, } BV_CALIBRATION_TYPE_ENUM; typedef struct tagNET_DVR_BV_SAMPLE_CALIB_POINT { BYTE byCalibPtID; BYTE byRes1[3]; NET_VCA_POINT struPoint; BYTE byRes2[16]; }NET_DVR_BV_SAMPLE_CALIB_POINT,*LPET_DVR_BV_SAMPLE_CALIB_POINT; typedef struct tagNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM { DWORD dwCameraHeight; DWORD dwHumanHeight; BYTE byRes[248]; }NET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM,*LPNET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM; typedef struct tagNET_DVR_BV_SAMPLE_CALIB_SET_PARAM { NET_DVR_BV_SAMPLE_CALIB_POINT struCalibPoint; BYTE byRes[228]; }NET_DVR_BV_SAMPLE_CALIB_SET_PARAM,*LPNET_DVR_BV_SAMPLE_CALIB_SET_PARAM; typedef struct tagNET_DVR_BV_SAMPLE_CALIB_END_PARAM { BYTE byRes[256]; }NET_DVR_BV_SAMPLE_CALIB_END_PARAM,*LPNET_DVR_BV_SAMPLE_CALIB_END_PARAM; typedef union tagNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION { BYTE byRes[256]; NET_DVR_BV_SAMPLE_CALIB_BEGIN_PARAM struCalibBegin; NET_DVR_BV_SAMPLE_CALIB_SET_PARAM struCalibSet; NET_DVR_BV_SAMPLE_CALIB_END_PARAM struCalibEnd; }NET_DVR_BV_SAMPLE_CALIB_PARAM_UNION,*LPNET_DVR_BV_SAMPLE_CALIB_PARAM_UNION; typedef enum _BV_SAMPLE_CALIB_CMD_ENUM { ENUM_BV_SAMPLE_CALIB_BEGIN = 1, ENUM_BV_SAMPLE_CALIB_SETTING = 2, ENUM_BV_SAMPLE_CALIB_END = 3 }BV_SAMPLE_CALIB_CMD_ENUM; typedef struct tagNET_DVR_BV_SAMPLE_CALIBRATION { DWORD dwSize; DWORD dwChannel; BYTE byCommand; BYTE byRes1[3]; NET_DVR_BV_SAMPLE_CALIB_PARAM_UNION uCalibParam; BYTE byRes2[256] ; }NET_DVR_BV_SAMPLE_CALIBRATION,*LPNET_DVR_BV_SAMPLE_CALIBRATION; typedef struct tagNET_DVR_BV_SAMPLE_CALIB_CFG { DWORD dwSize; DWORD dwCameraHeight; float fPitchAngle; float fInclineAngle; NET_DVR_BV_SAMPLE_CALIB_POINT struCalibPoint[MAX_SAMPLE_NUM]; NET_DVR_BV_SAMPLE_CALIB_POINT struCalibPointEx[MAX_SAMPLE_NUM_EX]; BYTE byRes[60]; }NET_DVR_BV_SAMPLE_CALIB_CFG,*LPNET_DVR_BV_SAMPLE_CALIB_CFG; typedef struct tagNET_DVR_BINOC_RECTIFY_PARAM { float fCamInternalMatrix[3][3]; float fDistCoeffs[8]; float fRotateMatrix[3][3]; float fProjectMatrix[3][4]; BYTE byRes[64]; }NET_DVR_BINOC_RECTIFY_PARAM, *LPNET_DVR_BINOC_RECTIFY_PARAM; typedef struct _tagNET_DVR_BV_CORRECT_PARAM { DWORD dwSize; float fReprojectMatrix[4][4]; NET_DVR_BINOC_RECTIFY_PARAM struLCamParam; NET_DVR_BINOC_RECTIFY_PARAM struRCamParam; BYTE byLensType; BYTE byRes1[3]; float fRotateMatrix[3][3]; float fTransMatrix[3]; DWORD dwOriImgWidth; DWORD dwOriImgHeight; BYTE byRes[196]; } NET_DVR_BV_CORRECT_PARAM,*LPNET_DVR_BV_CORRECT_PARAM; typedef struct tagNET_DVR_OUTPUT_VIDEO_TYPE { DWORD dwSize; BYTE byType; BYTE byRes[63]; }NET_DVR_OUTPUT_VIDEO_TYPE,*LPNET_DVR_OUTPUT_VIDEO_TYPE; #define MAX_CHECK_485CHAN 64 typedef struct tagNET_DVR_DEVICE_SELF_CHECK_STATE { DWORD dwSize; DWORD dwRS485Chan[MAX_CHECK_485CHAN]; DWORD dwSensorChan[4]; BYTE byRes[32]; }NET_DVR_DEVICE_SELF_CHECK_STATE, *LPNET_DVR_DEVICE_SELF_CHECK_STATE; typedef struct tagNET_DVR_COMPLETE_RESTORE_INFO_ { DWORD dwSize ; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_COMPLETE_RESTORE_INFO, *LPNET_DVR_COMPLETE_RESTORE_INFO; typedef struct tagNET_DVR_UPLOAD_PICTURE_INFO { DWORD dwSize; DWORD dwChannel; BYTE byPictureType; BYTE byRes1[3]; NET_DVR_TIME_V30 struTime; char* sPictureBuffer; DWORD dwPictureLength; DWORD dwPicMangeNo; BYTE sPicName[NAME_LEN]; BYTE byRes[92]; }NET_DVR_UPLOAD_PICTURE_INFO,*LPNET_DVR_UPLOAD_PICTURE_INFO; #define MAX_UPLOADFILE_URL_LEN 240 typedef struct tagNET_DVR_UPLOAD_FILE_RET { BYTE sUrl[MAX_UPLOADFILE_URL_LEN] ; BYTE byRes[260]; } NET_DVR_UPLOAD_FILE_RET,*LPNET_DVR_UPLOAD_FILE_RET; typedef struct tagNET_DVR_FACE_EXTRA_INFO { NET_VCA_RECT struVcaRect[MAX_FACE_PIC_NUM]; BYTE byRes[64]; }NET_DVR_FACE_EXTRA_INFO, *LPNET_DVR_FACE_EXTRA_INFO; typedef union tagNET_DVR_PIC_EXTRA_INFO_UNION { BYTE byUnionLen[544]; NET_DVR_FACE_EXTRA_INFO struFaceExtraInfo; }NET_DVR_PIC_EXTRA_INFO_UNION, *LPNET_DVR_PIC_EXTRA_INFO_UNION; typedef struct tagNET_DVR_FIND_PICTURE_V40 { char sFileName[PICTURE_NAME_LEN]; NET_DVR_TIME struTime; DWORD dwFileSize; char sCardNum[CARDNUM_LEN_V30]; BYTE byPlateColor ; BYTE byVehicleLogo; BYTE byFileType ; BYTE byRecogResult ; char sLicense[MAX_LICENSE_LEN]; BYTE byEventSearchStatus; BYTE byRes[75]; NET_DVR_PIC_EXTRA_INFO_UNION uPicExtraInfo; }NET_DVR_FIND_PICTURE_V40,*LPNET_DVR_FIND_PICTURE_V40; typedef struct tagNET_DVR_FIND_PICTURE_V50 { char sFileName[PICTURE_NAME_LEN]; NET_DVR_TIME struTime; DWORD dwFileSize; char sCardNum[CARDNUM_LEN_V30]; BYTE byPlateColor; BYTE byVehicleLogo; BYTE byFileType; BYTE byRecogResult; char sLicense[MAX_LICENSE_LEN]; BYTE byEventSearchStatus; NET_DVR_ADDRESS struAddr; BYTE byISO8601; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[253]; NET_DVR_PIC_EXTRA_INFO_UNION uPicExtraInfo; }NET_DVR_FIND_PICTURE_V50, *LPNET_DVR_FIND_PICTURE_V50; typedef struct tagNET_DVR_THUMBNAILS_COND { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE bySearchDataType; BYTE byRes[3]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struStopTime; DWORD dwIntervalTime; BYTE byRes1[512]; }NET_DVR_THUMBNAILS_COND, *LPNET_DVR_THUMBNAILS_COND; typedef struct tagNET_DVR_THUMBNAILS_RESULT { BYTE byResultDataType; BYTE byIFrameType; BYTE byRes1[2]; NET_DVR_TIME_SEARCH struTime; BYTE byRes[252]; DWORD dwFileSize; char* pBuffer; }NET_DVR_THUMBNAILS_RESULT, *LPNET_DVR_THUMBNAILS_RESULT; typedef struct tagNET_DVR_REGIONENTRANCE_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byDetectionTarget; BYTE byRes[62]; }NET_DVR_REGIONENTRANCE_REGION, *LPNET_DVR_REGIONENTRANCE_REGION; typedef struct tagNET_DVR_REGION_ENTRANCE_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byEnableHumanMisinfoFilter; BYTE byEnableVehicleMisinfoFilter; BYTE byRes1[1]; NET_DVR_REGIONENTRANCE_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_REGION_ENTRANCE_DETECTION,*LPNET_DVR_REGION_ENTRANCE_DETECTION; typedef struct tagNET_DVR_SMART_REGION_COND { DWORD dwSize; DWORD dwChannel; DWORD dwRegion; }NET_DVR_SMART_REGION_COND, *LPNET_DVR_SMART_REGION_COND; typedef struct tagNET_DVR_ENTRANCE_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byRes[63]; }NET_DVR_ENTRANCE_REGION, *LPNET_DVR_ENTRANCE_REGION; typedef struct tagNET_DVR_DENSEFOGDETECTION_CFG { DWORD dwSize; BYTE byEnable; BYTE bySensitivity; BYTE byRes[258]; }NET_DVR_DENSEFOGDETECTION_CFG, *LPNET_DVR_DENSEFOGDETECTION_CFG; typedef struct tagNET_DVR_EVENT_TRIGGER { DWORD dwSize; NET_DVR_HANDLEEXCEPTION_V41 struHandleException; DWORD dwRelRecordChan[MAX_CHANNUM_V40]; NET_DVR_PRESETCHAN_INFO struPresetChanInfo[MAX_CHANNUM_V40]; NET_DVR_CRUISECHAN_INFO struCruiseChanInfo[MAX_CHANNUM_V40]; NET_DVR_PTZTRACKCHAN_INFO struPtzTrackInfo[MAX_CHANNUM_V40]; BYTE byDirection; BYTE byRes2[255]; }NET_DVR_EVENT_TRIGGER,*LPNET_DVR_EVENT_TRIGGER; typedef struct tagNET_DVR_EVENT_SCHEDULE { DWORD dwSize; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; NET_DVR_SCHEDTIME struHolidayAlarmTime[MAX_TIMESEGMENT_V30]; BYTE bySceneID[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[72]; }NET_DVR_EVENT_SCHEDULE,*LPNET_DVR_EVENT_SCHEDULE; typedef struct tagNET_DVR_ANR_ARMING_HOST { DWORD dwSize; NET_DVR_IPADDR struANRArmingHostIpAddr; WORD wANRAlarmHostPort; BYTE byANRAlarmType; BYTE byConfirmMechanismEnabled; BYTE byRes[512]; }NET_DVR_ANR_ARMING_HOST, *LPNET_DVR_ANR_ARMING_HOST; typedef struct tagNET_DVR_REGIONEXITING_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byDetectionTarget; BYTE byRes[62]; }NET_DVR_REGIONEXITING_REGION, *LPNET_DVR_REGIONEXITING_REGION; typedef struct tagNET_DVR_REGION_EXITING_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byEnableHumanMisinfoFilter; BYTE byEnableVehicleMisinfoFilter; BYTE byRes1[1]; NET_DVR_REGIONEXITING_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_REGION_EXITING_DETECTION,*LPNET_DVR_REGION_EXITING_DETECTION; typedef struct tagNET_DVR_LOITERING_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byTimeThreshold; BYTE byRes[62]; }NET_DVR_LOITERING_REGION, *LPNET_DVR_LOITERING_REGION; typedef struct tagNET_DVR_LOITERING_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_LOITERING_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_LOITERING_DETECTION,*LPNET_DVR_LOITERING_DETECTION; typedef struct tagNET_DVR_GROUPDETECTION_REGION { NET_VCA_POLYGON struRegion; BYTE byObjectOccup; BYTE bySensitivityLevel; BYTE byDurationTime; BYTE byFilterTime; BYTE byMinTriggerNumber; BYTE byLinkageTime; BYTE byRes[58]; }NET_DVR_GROUPDETECTION_REGION, *LPNET_DVR_GROUPDETECTION_REGION; typedef struct tagNET_DVR_POS_HIDDEN_INFORMATION { char szKeyWord[KEY_WORD_NUM][KEY_WORD_LEN]; BYTE byRes[128]; }NET_DVR_POS_HIDDEN_INFORMATION, *LPNET_DVR_POS_HIDDEN_INFORMATION; typedef struct tagNET_DVR_HIDDEN_INFORMATION_CFG { DWORD dwSize; BYTE byFuncType; BYTE Res1[3]; NET_DVR_POS_HIDDEN_INFORMATION struPosInfo; BYTE byRes[1024]; }NET_DVR_HIDDEN_INFORMATION_CFG, *LPNET_DVR_HIDDEN_INFORMATION_CFG; typedef struct tagNET_DVR_GROUP_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_GROUPDETECTION_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_GROUP_DETECTION,*LPNET_DVR_GROUP_DETECTION; typedef struct tagNET_DVR_RAPIDMOVE_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byDetectionTarget; BYTE byRes[62]; }NET_DVR_RAPIDMOVE_REGION, *LPNET_DVR_RAPIDMOVE_REGION; typedef struct tagNET_DVR_RAPIDMOVE_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_RAPIDMOVE_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_RAPIDMOVE_DETECTION,*LPNET_DVR_RAPIDMOVE_DETECTION; typedef struct tagNET_DVR_PARKING_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byTimeThreshold; BYTE byRes[62]; }NET_DVR_PARKING_REGION, *LPNET_DVR_PARKING_REGION; typedef struct tagNET_DVR_PARKING_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_PARKING_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_PARKING_DETECTION,*LPNET_DVR_PARKING_DETECTION; typedef struct tagNET_DVR_UNATTENDED_BAGGAGE_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byTimeThreshold; WORD wTimeThreshold; BYTE byTimeThresholdMode; BYTE byRes[59]; }NET_DVR_UNATTENDED_BAGGAGE_REGION, *LPNET_DVR_UNATTENDED_BAGGAGE_REGION; typedef struct tagNET_DVR_UNATTENDED_BAGGAGE_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_UNATTENDED_BAGGAGE_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_UNATTENDED_BAGGAGE_DETECTION,*LPNET_DVR_UNATTENDED_BAGGAGE_DETECTION; typedef struct tagNET_DVR_ATTENDED_BAGGAGE_REGION { NET_VCA_POLYGON struRegion; BYTE bySensitivity; BYTE byTimeThreshold; WORD wTimeThreshold; BYTE byTimeThresholdMode; BYTE byRes[59]; }NET_DVR_ATTENDED_BAGGAGE_REGION, *LPNET_DVR_ATTENDED_BAGGAGE_REGION; typedef struct tagNET_DVR_ATTENDED_BAGGAGE_DETECTION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_ATTENDED_BAGGAGE_REGION struRegion[MAX_REGION_NUM]; BYTE byRes2[128]; }NET_DVR_ATTENDED_BAGGAGE_DETECTION,*LPNET_DVR_ATTENDED_BAGGAGE_DETECTION; typedef struct tagNET_DVR_REGION_CLIP_COND { DWORD dwSize; DWORD dwChannel; DWORD dwStreamType; BYTE byRes[8]; }NET_DVR_REGION_CLIP_COND, *LPNET_DVR_REGION_CLIP_COND; typedef struct tagNET_DVR_REGION_CLIP_CFG { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; WORD wResolutionWidth; WORD wResolutionHeight; NET_VCA_POLYGON struRegion[MAX_REGION_NUM]; BYTE byRes2[64]; }NET_DVR_REGION_CLIP_CFG, *LPNET_DVR_REGION_CLIP_CFG; #define MAX_DIALNUM_LENGTH 32 typedef struct tagNET_DVR_WIRELESSDIAL_CFG { DWORD dwSize; BYTE byEnabled; BYTE byDialMode; BYTE byNetworkMode; BYTE byRes1; BYTE byDialNum[MAX_DIALNUM_LENGTH]; BYTE byUserName[NAME_LEN]; BYTE byPassword[NAME_LEN]; BYTE byAPNName[NAME_LEN]; BYTE byUIMCardNum[NAME_LEN]; BYTE byVerifProtocol; BYTE byRes2; WORD wMTU; DWORD dwOffineTime; BYTE byNetAPN[NAME_LEN]; BYTE byRes3[32]; }NET_DVR_WIRELESSDIAL_CFG, *LPNET_DVR_WIRELESSDIAL_CFG; typedef struct tagNET_DVR_WIRELESSDIAL_SCHEDULE { DWORD dwSize; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[160]; }NET_DVR_WIRELESSDIAL_SCHEDULE,*LPNET_DVR_WIRELESSDIAL_SCHEDULE; #define MAX_LENGTH_32 32 typedef struct tagNET_DVR_WIRELESSDIAL_STATUS { DWORD dwSize; BYTE byRealtimeMode[MAX_LENGTH_32]; BYTE byUIMStatus[MAX_LENGTH_32]; DWORD dwSignalQuality; BYTE byDialStatus[MAX_LENGTH_32]; NET_DVR_IPADDR struIpAddr; NET_DVR_IPADDR struIPMask; NET_DVR_IPADDR struGatewayIPMask; NET_DVR_IPADDR struDnsServerIpAddr; BYTE byRes[256]; }NET_DVR_WIRELESSDIAL_STATUS,*LPNET_DVR_WIRELESSDIAL_STATUS; typedef struct tagNET_DVR_WIRELESSDIAL_CONNECT { DWORD dwSize; DWORD dwInterface; BYTE byEnableConnect; BYTE byRes[255]; }NET_DVR_WIRELESSDIAL_CONNECT_PARAM,*LPNET_DVR_WIRELESSDIAL_CONNECT_PARAM; typedef struct tagNET_DVR_LITESTORAGE { DWORD dwSize; BYTE byEnable; BYTE byStorageTime; BYTE byLevel; BYTE byRes; float fCapacity; BYTE byDefLowStorageTime; BYTE byDefMediumStorageTime; BYTE byDefHighStorageTime; BYTE byRes1[61]; }NET_DVR_LITESTORAGE,*LPNET_DVR_LITESTORAGE; typedef struct tagNET_DVR_CALIBRATION { DWORD dwSize; NET_VCA_POLYGON struRegion; BYTE byRes[64]; }NET_DVR_CALIBRATION,*LPNET_DVR_CALIBRATION; typedef struct tagNET_DVR_STD_CONFIG { void* lpCondBuffer; DWORD dwCondSize; void* lpInBuffer; DWORD dwInSize; void* lpOutBuffer; DWORD dwOutSize; void* lpStatusBuffer; DWORD dwStatusSize; void* lpXmlBuffer; DWORD dwXmlSize; BYTE byDataType; BYTE byRes[23]; }NET_DVR_STD_CONFIG,*LPNET_DVR_STD_CONFIG; typedef struct DWORDtagNET_DVR_STD_ABILITY { void* lpCondBuffer; DWORD dwCondSize; void* lpOutBuffer; DWORD dwOutSize; void* lpStatusBuffer; DWORD dwStatusSize; DWORD dwRetSize; BYTE byRes[32]; }NET_DVR_STD_ABILITY,*LPNET_DVR_STD_ABILITY; typedef struct tagNET_DVR_STD_CONTROL { void* lpCondBuffer; DWORD dwCondSize; void* lpStatusBuffer; DWORD dwStatusSize; void* lpXmlBuffer; DWORD dwXmlSize; BYTE byDataType; BYTE byRes[55]; }NET_DVR_STD_CONTROL, *LPNET_DVR_STD_CONTROL; #define MAX_FILE_PATH_LEN 256 typedef struct tagNET_DVR_MIME_UNIT { char szContentType[32]; char szName[MAX_FILE_PATH_LEN]; char szFilename[MAX_FILE_PATH_LEN]; DWORD dwContentLen; char* pContent; BYTE bySelfRead; BYTE byRes[15]; }NET_DVR_MIME_UNIT, *LPNET_DVR_MIME_UNIT; typedef struct tagNET_DVR_XML_CONFIG_INPUT { DWORD dwSize; void* lpRequestUrl; DWORD dwRequestUrlLen; void* lpInBuffer; DWORD dwInBufferSize; DWORD dwRecvTimeOut; BYTE byForceEncrpt; BYTE byNumOfMultiPart; BYTE byRes[30]; }NET_DVR_XML_CONFIG_INPUT, *LPNET_DVR_XML_CONFIG_INPUT; typedef struct tagNET_DVR_XML_CONFIG_OUTPUT { DWORD dwSize; void* lpOutBuffer; DWORD dwOutBufferSize; DWORD dwReturnedXMLSize; void* lpStatusBuffer; DWORD dwStatusSize; BYTE byRes[32]; }NET_DVR_XML_CONFIG_OUTPUT, *LPNET_DVR_XML_CONFIG_OUTPUT; typedef struct tagNET_DVR_JSON_DATA_CFG { DWORD dwSize; void *lpJsonData; DWORD dwJsonDataSize; void *lpPicData; DWORD dwPicDataSize; BYTE byRes[256]; }NET_DVR_JSON_DATA_CFG, *LPNET_DVR_JSON_DATA_CFG; typedef struct tagNET_DVR_SIMPLE_DAYTIME { BYTE byHour; BYTE byMinute; BYTE bySecond; BYTE byRes; }NET_DVR_SIMPLE_DAYTIME, *LPNET_DVR_SIMPLE_DAYTIME; typedef struct tagNET_DVR_TIME_SEGMENT { NET_DVR_SIMPLE_DAYTIME struBeginTime; NET_DVR_SIMPLE_DAYTIME struEndTime; }NET_DVR_TIME_SEGMENT, *LPNET_DVR_TIME_SEGMENT; typedef struct tagNET_DVR_SINGLE_PLAN_SEGMENT { BYTE byEnable; BYTE byDoorStatus; BYTE byVerifyMode; BYTE byRes[5]; NET_DVR_TIME_SEGMENT struTimeSegment; }NET_DVR_SINGLE_PLAN_SEGMENT, *LPNET_DVR_SINGLE_PLAN_SEGMENT; typedef struct tagNET_DVR_WEEK_PLAN_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_SINGLE_PLAN_SEGMENT struPlanCfg[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes2[16]; }NET_DVR_WEEK_PLAN_CFG, *LPNET_DVR_WEEK_PLAN_CFG; typedef struct tagNET_DVR_HOLIDAY_PLAN_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_DATE struBeginDate; NET_DVR_DATE struEndDate; NET_DVR_SINGLE_PLAN_SEGMENT struPlanCfg[MAX_TIMESEGMENT_V30]; BYTE byRes2[16]; }NET_DVR_HOLIDAY_PLAN_CFG, *LPNET_DVR_HOLIDAY_PLAN_CFG; typedef struct tagNET_DVR_HOLIDAY_PLAN_COND { DWORD dwSize; DWORD dwHolidayPlanNumber; WORD wLocalControllerID; BYTE byRes[106]; }NET_DVR_HOLIDAY_PLAN_COND, *LPNET_DVR_HOLIDAY_PLAN_COND; typedef struct tagNET_DVR_WEEK_PLAN_COND { DWORD dwSize; DWORD dwWeekPlanNumber; WORD wLocalControllerID; BYTE byRes[106]; }NET_DVR_WEEK_PLAN_COND, *LPNET_DVR_WEEK_PLAN_COND; typedef struct tagNET_DVR_HOLIDAY_GROUP_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; BYTE byGroupName[HOLIDAY_GROUP_NAME_LEN]; DWORD dwHolidayPlanNo[MAX_HOLIDAY_PLAN_NUM]; BYTE byRes2[32]; }NET_DVR_HOLIDAY_GROUP_CFG, *LPNET_DVR_HOLIDAY_GROUP_CFG; typedef struct tagNET_DVR_HOLIDAY_GROUP_COND { DWORD dwSize; DWORD dwHolidayGroupNumber; WORD wLocalControllerID; BYTE byRes[106]; }NET_DVR_HOLIDAY_GROUP_COND, *LPNET_DVR_HOLIDAY_GROUP_COND; typedef struct tagNET_DVR_PLAN_TEMPLATE { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; BYTE byTemplateName[TEMPLATE_NAME_LEN]; DWORD dwWeekPlanNo; DWORD dwHolidayGroupNo[MAX_HOLIDAY_GROUP_NUM]; BYTE byRes2[32]; }NET_DVR_PLAN_TEMPLATE, *LPNET_DVR_PLAN_TEMPLATE; typedef struct tagNET_DVR_PLAN_TEMPLATE_COND { DWORD dwSize; DWORD dwPlanTemplateNumber; WORD wLocalControllerID; BYTE byRes[106]; }NET_DVR_PLAN_TEMPLATE_COND, *LPNET_DVR_PLAN_TEMPLATE_COND; typedef struct tagNET_DVR_DOOR_STATUS_PLAN { DWORD dwSize; DWORD dwTemplateNo; BYTE byRes[64]; }NET_DVR_DOOR_STATUS_PLAN, *LPNET_DVR_DOOR_STATUS_PLAN; typedef struct tagNET_DVR_CARD_READER_PLAN { DWORD dwSize; DWORD dwTemplateNo; BYTE byRes[64]; }NET_DVR_CARD_READER_PLAN, *LPNET_DVR_CARD_READER_PLAN; typedef struct _tagNET_DVR_GROUP_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_VALID_PERIOD_CFG struValidPeriodCfg; BYTE byGroupName[GROUP_NAME_LEN]; BYTE byRes2[32]; }NET_DVR_GROUP_CFG, *LPNET_DVR_GROUP_CFG; typedef struct tagNET_DVR_GROUP_COMBINATION_INFO { BYTE byEnable; BYTE byMemberNum; BYTE bySequenceNo; BYTE byRes; DWORD dwGroupNo; }NET_DVR_GROUP_COMBINATION_INFO, *LPNET_DVR_GROUP_COMBINATION_INFO; typedef struct tagNET_DVR_MULTI_CARD_GROUP_CFG { BYTE byEnable; BYTE byEnableOfflineVerifyMode; BYTE byRes1[2]; DWORD dwTemplateNo; NET_DVR_GROUP_COMBINATION_INFO struGroupCombination[GROUP_COMBINATION_NUM]; }NET_DVR_MULTI_CARD_GROUP_CFG, *LPNET_DVR_MULTI_CARD_GROUP_CFG; typedef struct tagNET_DVR_MULTI_CARD_CFG { DWORD dwSize; BYTE byEnable; BYTE bySwipeIntervalTimeout; BYTE byRes1[2]; NET_DVR_MULTI_CARD_GROUP_CFG struGroupCfg[MULTI_CARD_GROUP_NUM]; BYTE byRes2[32]; }NET_DVR_MULTI_CARD_CFG, *LPNET_DVR_MULTI_CARD_CFG; typedef struct tagNET_DVR_GROUP_COMBINATION_INFO_V50 { BYTE byEnable; BYTE byMemberNum; BYTE bySequenceNo; BYTE byRes; DWORD dwGroupNo; }NET_DVR_GROUP_COMBINATION_INFO_V50, *LPNET_DVR_GROUP_COMBINATION_INFO_V50; typedef struct tagNET_DVR_MULTI_CARD_GROUP_CFG_V50 { BYTE byEnable; BYTE byEnableOfflineVerifyMode; BYTE byRes1[2]; DWORD dwTemplateNo; NET_DVR_GROUP_COMBINATION_INFO_V50 struGroupCombination[GROUP_COMBINATION_NUM]; }NET_DVR_MULTI_CARD_GROUP_CFG_V50, *LPNET_DVR_MULTI_CARD_GROUP_CFG_V50; typedef struct tagNET_DVR_MULTI_CARD_CFG_V50 { DWORD dwSize; BYTE byEnable; BYTE bySwipeIntervalTimeout; BYTE byRes1[2]; NET_DVR_MULTI_CARD_GROUP_CFG_V50 struGroupCfg[NET_SDK_MULTI_CARD_GROUP_NUM_20]; BYTE byRes2[32]; }NET_DVR_MULTI_CARD_CFG_V50, *LPNET_DVR_MULTI_CARD_CFG_V50; typedef struct tagNET_DVR_T1TEST_PARAMCFG { DWORD dwSize; WORD wPort; BYTE byPortState; BYTE byRes[61]; }NET_DVR_T1TEST_PARAMCFG,*LPNET_DVR_T1TEST_PARAMCFG; #define CARD_PARAM_CARD_VALID 0x00000001 #define CARD_PARAM_VALID 0x00000002 #define CARD_PARAM_CARD_TYPE 0x00000004 #define CARD_PARAM_DOOR_RIGHT 0x00000008 #define CARD_PARAM_LEADER_CARD 0x00000010 #define CARD_PARAM_SWIPE_NUM 0x00000020 #define CARD_PARAM_GROUP 0x00000040 #define CARD_PARAM_PASSWORD 0x00000080 #define CARD_PARAM_RIGHT_PLAN 0x00000100 #define CARD_PARAM_SWIPED_NUM 0x00000200 #define CARD_PARAM_EMPLOYEE_NO 0x00000400 #define CARD_PARAM_NAME 0x00000800 #define CARD_PARAM_DEPARTMENT_NO 0x00001000 #define CARD_SCHEDULE_PLAN_NO 0x00002000 #define CARD_SCHEDULE_PLAN_TYPE 0x00004000 #define CARD_ROOM_NUMBER 0x00008000 #define CARD_SIM_NO 0x00010000 #define CARD_FLOOR_NUMBER 0x00020000 #define CARD_USER_TYPE 0x00040000 typedef struct tagNET_DVR_ANTI_SNEAK_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwStartCardReaderNo; BYTE byRes2[64]; }NET_DVR_ANTI_SNEAK_CFG, *LPNET_DVR_ANTI_SNEAK_CFG; typedef struct tagNET_DVR_CARD_READER_ANTI_SNEAK_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwFollowUpCardReader[MAX_SNEAK_PATH_NODE]; BYTE byRes2[32]; }NET_DVR_CARD_READER_ANTI_SNEAK_CFG, *LPNET_DVR_CARD_READER_ANTI_SNEAK_CFG; typedef struct tagNET_DVR_PHONE_DOOR_RIGHT_CFG { DWORD dwSize; BYTE byOpenRight[MAX_DOOR_NUM_256]; BYTE byCloseRight[MAX_DOOR_NUM_256]; BYTE byNormalOpenRight[MAX_DOOR_NUM_256]; BYTE byNormalCloseRight[MAX_DOOR_NUM_256]; BYTE byArmRight[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byDisarmRight[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[256]; }NET_DVR_PHONE_DOOR_RIGHT_CFG,*LPNET_DVR_PHONE_DOOR_RIGHT_CFG; typedef struct tagNET_DVR_MULTI_DOOR_INTERLOCK_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwMultiDoorGroup[MAX_MULTI_DOOR_INTERLOCK_GROUP][MAX_INTER_LOCK_DOOR_NUM]; BYTE byRes2[64]; }NET_DVR_MULTI_DOOR_INTERLOCK_CFG, *LPNET_DVR_MULTI_DOOR_INTERLOCK_CFG; typedef struct tagNET_DVR_CARD_READER_CFG { DWORD dwSize; BYTE byEnable; BYTE byCardReaderType; BYTE byOkLedPolarity; BYTE byErrorLedPolarity; BYTE byBuzzerPolarity; BYTE bySwipeInterval; BYTE byPressTimeout; BYTE byEnableFailAlarm; BYTE byMaxReadCardFailNum; BYTE byEnableTamperCheck; BYTE byOfflineCheckTime; BYTE byFingerPrintCheckLevel; BYTE byUseLocalController; BYTE byRes1; WORD wLocalControllerID; WORD wLocalControllerReaderID; WORD wCardReaderChannel; BYTE byRes[16]; }NET_DVR_CARD_READER_CFG, *LPNET_DVR_CARD_READER_CFG; typedef struct tagNET_DVR_CARD_READER_CFG_V50 { DWORD dwSize; BYTE byEnable; BYTE byCardReaderType; BYTE byOkLedPolarity; BYTE byErrorLedPolarity; BYTE byBuzzerPolarity; BYTE bySwipeInterval; BYTE byPressTimeout; BYTE byEnableFailAlarm; BYTE byMaxReadCardFailNum; BYTE byEnableTamperCheck; BYTE byOfflineCheckTime; BYTE byFingerPrintCheckLevel; BYTE byUseLocalController; BYTE byRes1; WORD wLocalControllerID; WORD wLocalControllerReaderID; WORD wCardReaderChannel; BYTE byFingerPrintImageQuality; BYTE byFingerPrintContrastTimeOut; BYTE byFingerPrintRecogizeInterval; BYTE byFingerPrintMatchFastMode; BYTE byFingerPrintModuleSensitive; BYTE byFingerPrintModuleLightCondition; BYTE byFaceMatchThresholdN; BYTE byFaceQuality; BYTE byFaceRecogizeTimeOut; BYTE byFaceRecogizeInterval; WORD wCardReaderFunction; BYTE byCardReaderDescription[CARD_READER_DESCRIPTION]; WORD wFaceImageSensitometry; BYTE byLivingBodyDetect; BYTE byFaceMatchThreshold1; WORD wBuzzerTime; BYTE byFaceMatch1SecurityLevel; BYTE byFaceMatchNSecurityLevel; BYTE byEnvirMode; BYTE byLiveDetLevelSet; BYTE byLiveDetAntiAttackCntLimit; BYTE byEnableLiveDetAntiAttack; BYTE bySupportDelFPByID; BYTE byFaceContrastMotionDetLevel; BYTE byDayFaceMatchThresholdN; BYTE byNightFaceMatchThresholdN; BYTE byFaceRecogizeEnable; BYTE byBlackFaceMatchThreshold; BYTE byRes3; BYTE byDefaultVerifyMode; DWORD dwFingerPrintCapacity; DWORD dwFingerPrintNum; BYTE byEnableFingerPrintNum; BYTE byRes[231]; }NET_DVR_CARD_READER_CFG_V50, *LPNET_DVR_CARD_READER_CFG_V50; typedef struct tagNET_DVR_FAILED_FACE_COND { DWORD dwSize; BYTE byRes[128]; }NET_DVR_FAILED_FACE_COND, *LPNET_DVR_FAILED_FACE_COND; typedef struct tagNET_DVR_FAILED_FACE_INFO { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byErrorCode; BYTE byRes[127]; }NET_DVR_FAILED_FACE_INFO, *LPNET_DVR_FAILED_FACE_INFO; typedef struct tagNET_DVR_FACE_PARAM_COND { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; DWORD dwFaceNum; BYTE byFaceID; BYTE byRes[127]; }NET_DVR_FACE_PARAM_COND, *LPNET_DVR_FACE_PARAM_COND; typedef struct tagNET_DVR_FACE_PARAM_CFG { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwFaceLen; char* pFaceBuffer; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; BYTE byFaceID; BYTE byFaceDataType; BYTE byRes[126]; }NET_DVR_FACE_PARAM_CFG, *LPNET_DVR_FACE_PARAM_CFG; typedef struct tagNET_DVR_FACE_PARAM_STATUS { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardReaderRecvStatus[MAX_CARD_READER_NUM_512]; BYTE byErrorMsg[ERROR_MSG_LEN]; DWORD dwCardReaderNo; BYTE byTotalStatus; BYTE byFaceID; BYTE byRes[130]; }NET_DVR_FACE_PARAM_STATUS, *LPNET_DVR_FACE_PARAM_STATUS; typedef struct tagNET_DVR_FACE_PARAM_BYCARD { BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; BYTE byFaceID[MAX_FACE_NUM]; BYTE byRes1[42]; }NET_DVR_FACE_PARAM_BYCARD, *LPNET_DVR_FACE_PARAM_BYCARD; typedef struct tagNET_DVR_FACE_PARAM_BYREADER { DWORD dwCardReaderNo; BYTE byClearAllCard; BYTE byRes1[3]; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byRes[548]; }NET_DVR_FACE_PARAM_BYREADER, *LPNET_DVR_FACE_PARAM_BYREADER; typedef union tagNET_DVR_DEL_FACE_PARAM_MODE { BYTE uLen[588]; NET_DVR_FACE_PARAM_BYCARD struByCard; NET_DVR_FACE_PARAM_BYREADER struByReader; }NET_DVR_DEL_FACE_PARAM_MODE, *LPNET_DVR_DEL_FACE_PARAM_MODE; typedef struct tagNET_DVR_FACE_PARAM_CTRL { DWORD dwSize; BYTE byMode; BYTE byRes1[3]; NET_DVR_DEL_FACE_PARAM_MODE struProcessMode; BYTE byRes[64]; }NET_DVR_FACE_PARAM_CTRL, *LPNET_DVR_FACE_PARAM_CTRL; typedef struct tagNET_DVR_LOCAL_CONTROLLER_STATUS_COND { DWORD dwSize; WORD wLocalControllerID; BYTE byRes[306]; }NET_DVR_LOCAL_CONTROLLER_STATUS_COND, *LPNET_DVR_LOCAL_CONTROLLER_STATUS_COND; typedef struct tagNET_DVR_LOCAL_CONTROLLER_STATUS { DWORD dwSize; WORD wLocalControllerID; BYTE byLocalAntiDismantleStatus; BYTE byPowerSupplyStatus; WORD wBatteryVoltage; BYTE byBatteryLowVoltage; BYTE byFireAlarm; BYTE bySerialNumber[SERIALNO_LEN]; BYTE byMagneticStatus[MAX_DOOR_NUM]; BYTE byDoorLockStatus[MAX_DOOR_NUM]; BYTE byCardReaderOnlineStatus[MAX_CARD_READER_NUM]; WORD wLocalControllerStatus; BYTE byRes2[122]; }NET_DVR_LOCAL_CONTROLLER_STATUS, *LPNET_DVR_LOCAL_CONTROLLER_STATUS; typedef struct tagNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG { DWORD dwSize; BYTE byLocalControllerName[LOCAL_CONTROLLER_NAME_LEN]; WORD wLocalControllerID; WORD wDevPort; NET_DVR_IPADDR struDevIP; NET_DVR_IPADDR struSubnetMask; NET_DVR_IPADDR struGateway; BYTE bySearchProgress; BYTE byEffectData; BYTE byRes[302]; }NET_DVR_ONLINE_LOCAL_CONTROLLER_CFG, *LPNET_DVR_ONLINE_LOCAL_CONTROLLER_CFG; typedef struct tagNET_DVR_ACS_WORK_STATUS { DWORD dwSize; BYTE byDoorLockStatus[MAX_DOOR_NUM]; BYTE byDoorStatus[MAX_DOOR_NUM]; BYTE byMagneticStatus[MAX_DOOR_NUM]; BYTE byCaseStatus[MAX_CASE_SENSOR_NUM]; WORD wBatteryVoltage; BYTE byBatteryLowVoltage; BYTE byPowerSupplyStatus; BYTE byMultiDoorInterlockStatus; BYTE byAntiSneakStatus; BYTE byHostAntiDismantleStatus; BYTE byIndicatorLightStatus; BYTE byCardReaderOnlineStatus[MAX_CARD_READER_NUM]; BYTE byCardReaderAntiDismantleStatus[MAX_CARD_READER_NUM]; BYTE byCardReaderVerifyMode[MAX_CARD_READER_NUM]; BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; DWORD dwCardNum; BYTE byRes2[32]; }NET_DVR_ACS_WORK_STATUS, *LPNET_DVR_ACS_WORK_STATUS; typedef struct tagNET_DVR_ACS_WORK_STATUS_V50 { DWORD dwSize; BYTE byDoorLockStatus[MAX_DOOR_NUM_256]; BYTE byDoorStatus[MAX_DOOR_NUM_256]; BYTE byMagneticStatus[MAX_DOOR_NUM_256]; BYTE byCaseStatus[MAX_CASE_SENSOR_NUM]; WORD wBatteryVoltage; BYTE byBatteryLowVoltage; BYTE byPowerSupplyStatus; BYTE byMultiDoorInterlockStatus; BYTE byAntiSneakStatus; BYTE byHostAntiDismantleStatus; BYTE byIndicatorLightStatus; BYTE byCardReaderOnlineStatus[MAX_CARD_READER_NUM_512]; BYTE byCardReaderAntiDismantleStatus[MAX_CARD_READER_NUM_512]; BYTE byCardReaderVerifyMode[MAX_CARD_READER_NUM_512]; BYTE bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM]; DWORD dwCardNum; BYTE byFireAlarmStatus; BYTE byBatteryChargeStatus; BYTE byMasterChannelControllerStatus; BYTE bySlaveChannelControllerStatus; BYTE byAntiSneakServerStatus; BYTE byRes3[3]; DWORD dwWhiteFaceNum; DWORD dwBlackFaceNum; BYTE byRes2[108]; }NET_DVR_ACS_WORK_STATUS_V50, *LPNET_DVR_ACS_WORK_STATUS_V50; typedef struct tagNET_DVR_CASE_SENSOR_CFG { DWORD dwSize; BYTE byHostBuzzer; BYTE byRes1[3]; BYTE byCardReaderBuzzer[MAX_CARD_READER_NUM]; BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byDoorOpen[MAX_DOOR_NUM]; BYTE byDoorClose[MAX_DOOR_NUM]; BYTE byRes2[64]; }NET_DVR_CASE_SENSOR_CFG, *LPNET_DVR_CASE_SENSOR_CFG; typedef enum _ENUM_UPGRADE_TYPE { ENUM_UPGRADE_DVR = 0, ENUM_UPGRADE_ADAPTER = 1, ENUM_UPGRADE_VCALIB = 2, ENUM_UPGRADE_OPTICAL = 3, ENUM_UPGRADE_ACS = 4, ENUM_UPGRADE_AUXILIARY_DEV = 5, ENUM_UPGRADE_LED = 6, ENUM_UPGRADE_INTELLIGENT = 7 }ENUM_UPGRADE_TYPE; typedef struct tagNET_DVR_ACS_EVENT_INFO { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardType; BYTE byWhiteListNo; BYTE byReportChannel; BYTE byCardReaderKind; DWORD dwCardReaderNo; DWORD dwDoorNo; DWORD dwVerifyNo; DWORD dwAlarmInNo; DWORD dwAlarmOutNo; DWORD dwCaseSensorNo; DWORD dwRs485No; DWORD dwMultiCardGroupNo; WORD wAccessChannel; BYTE byDeviceNo; BYTE byDistractControlNo; DWORD dwEmployeeNo; WORD wLocalControllerID; BYTE byInternetAccess; BYTE byType; BYTE byMACAddr[MACADDR_LEN]; BYTE bySwipeCardType; BYTE byRes2; DWORD dwSerialNo; BYTE byChannelControllerID; BYTE byChannelControllerLampID; BYTE byChannelControllerIRAdaptorID; BYTE byChannelControllerIREmitterID; BYTE byRes[4]; }NET_DVR_ACS_EVENT_INFO, *LPNET_DVR_ACS_EVENT_INFO; typedef struct tagNET_DVR_ACS_EVENT_INFO_EXTEND { DWORD dwFrontSerialNo; BYTE byUserType; BYTE byCurrentVerifyMode; BYTE byCurrentEvent; BYTE byRes1; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes[128]; }NET_DVR_ACS_EVENT_INFO_EXTEND, *LPNET_DVR_ACS_EVENT_INFO_EXTEND; typedef struct tagNET_DVR_ACS_ALARM_INFO { DWORD dwSize; DWORD dwMajor; DWORD dwMinor; NET_DVR_TIME struTime; BYTE sNetUser[MAX_NAMELEN] ; NET_DVR_IPADDR struRemoteHostAddr ; NET_DVR_ACS_EVENT_INFO struAcsEventInfo; DWORD dwPicDataLen; char *pPicData; WORD wInductiveEventType; BYTE byPicTransType; BYTE byRes1; DWORD dwIOTChannelNo; char *pAcsEventInfoExtend; BYTE byAcsEventInfoExtend; BYTE byTimeType; BYTE byRes[10]; }NET_DVR_ACS_ALARM_INFO, *LPNET_DVR_ACS_ALARM_INFO; #define JUDGE_MAX_VIDEOOUT_NUM 9 typedef struct tagNET_DVR_AUDIO_ACTIVATION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwChanNo; BYTE bySensitivity; BYTE byPriority; WORD wDelayTime; BYTE byRes2; BYTE byEnablePreset; WORD wPreset; WORD wBase; BYTE byRes3[2]; BYTE byVoChanNo[JUDGE_MAX_VIDEOOUT_NUM]; BYTE byRes[255]; }NET_DVR_AUDIO_ACTIVATION_CFG,*LPNET_DVR_AUDIO_ACTIVATION_CFG; typedef struct tagNET_DVR_INFRARED_OUTPUT_CTRL_CFG { DWORD dwSize; BYTE byIROutPort; BYTE byIRCmdIndex; BYTE byRes[254]; }NET_DVR_INFRARED_OUTPUT_CTRL_CFG, *LPNET_DVR_INFRARED_OUTPUT_CTRL_CFG; #define MAX_IR_CMD_NAME_LEN 32 #define MAX_IR_CMD_NUM 32 typedef struct tagNET_DVR_INFRARED_CMD_INFO { char sCmdName[MAX_IR_CMD_NAME_LEN]; BYTE byRes[8]; } NET_DVR_INFRARED_CMD_INFO,*LPNET_DVR_INFRARED_CMD_INFO; typedef struct tagNET_DVR_INFRARED_LEARN_CODE_CFG_ { DWORD dwSize; BYTE sIROutName[MAX_IR_CMD_NAME_LEN]; NET_DVR_INFRARED_CMD_INFO struIRCmdInfo[MAX_IR_CMD_NUM]; BYTE byRes[256]; } NET_DVR_INFRARED_CMD_NAME_CFG,*LPNET_DVR_INFRARED_CMD_NAME_CFG; typedef enum tagIR_LEARN_SEND_DATA_TYPE_ENUM { ENUM_SENDDATA = 0x0, ENUM_SEND_LEARN_IR_CMD_START, ENUM_SEND_LEARN_IR_CMD_END = 0x2 }IR_LEARN_SEND_DATA_TYPE_ENUM; typedef struct tagNET_DVR_INFRARED_LEARN_INFO { DWORD dwSize; BYTE byIROutPort; BYTE byIRCmdIndex; BYTE byRes[30]; } NET_DVR_INFRARED_LEARN_INFO, *LPNET_DVR_INFRARED_LEARN_INFO; typedef struct tagNET_DVR_INFRARED_LEARN_END { DWORD dwSize; BYTE bySaveLearnInfo; BYTE byRes[255]; } NET_DVR_INFRARED_LEARN_END,*LPNET_DVR_INFRARED_LEARN_END; #define MAX_VIDEOIN_TYPE_NUM 10 typedef struct tagNET_DVR_VIDEOIN_TYPE_INFO { WORD wInType; WORD wInNum; WORD wStartNo; BYTE byRes[6]; }NET_DVR_VIDEOIN_TYPE_INFO, *LPNET_DVR_VIDEOIN_TYPE_INFO; typedef struct tagNET_DVR_TRIAL_SYSTEM_INFO { DWORD dwSize ; BYTE byVideoInTypeNum ; BYTE byRes1[3]; NET_DVR_VIDEOIN_TYPE_INFO struVideoIn[MAX_VIDEOIN_TYPE_NUM] ; BYTE byRes[512 ] ; } NET_DVR_TRIAL_SYSTEM_INFO, *LPNET_DVR_TRIAL_SYSTEM_INFO; typedef struct tagNET_DVR_CASE_INFO { DWORD dwSize; BYTE byCaseNo[CASE_NO_LEN]; BYTE byCaseName[CASE_NAME_LEN]; BYTE byLitigant1[LITIGANT_LEN]; BYTE byLitigant2[LITIGANT_LEN]; BYTE byChiefJudge[CHIEF_JUDGE_LEN]; BYTE byCaseType; BYTE byShowCaseInfoTime; BYTE byRes1[2]; char sCaseTypeCustom[NET_SDK_CASETYPE_LEN]; BYTE byRes[220]; }NET_DVR_CASE_INFO, *LPNET_DVR_CASE_INFO; #define MICROPHONE_NUM 16 #define FAN_NUM 8 #define FPGA_NUM 8 #define MAIN_BOARD 8 #define LOCAL_INPUT_NUM 24 #define LAMP_STATE_NAME 32 #define LAMP_NAME 32 #define FILE_NAME_LEN 32 typedef struct _NET_DVR_REMOTE_PLAY_ { DWORD dwSize; BYTE byFileName[FILE_NAME_LEN]; BYTE byVideoOut[7]; BYTE byRes1[5]; BYTE byType; BYTE byRes[31]; }NET_DVR_REMOTE_PLAY, *LPNET_DVR_REMOTE_PLAY; typedef struct _NET_DVR_TRIAL_MICROPHONE_STATUS { DWORD dwSize ; BYTE byMicrophoneStatus [MICROPHONE_NUM]; BYTE byRes[32] ; }NET_DVR_TRIAL_MICROPHONE_STATUS, *LPNET_DVR_TRIAL_MICROPHONE_STATUS; typedef struct _NET_DVR_TRIAL_HOST_STATUS { DWORD dwSize ; DWORD dwFanSpeed [FAN_NUM]; WORD wMainBoardTemp[MAIN_BOARD]; BYTE byFpgaTempWarn [FPGA_NUM]; BYTE byRes[32] ; }NET_DVR_TRIAL_HOST_STATUS, *LPNET_DVR_TRIAL_HOST_STATUS; typedef struct _NET_DVR_LOCAL_INPUT_INFO_ { DWORD dwSize; BYTE byChannelName[NAME_LEN] ; BYTE byRes[32] ; }NET_DVR_LOCAL_INPUT_INFO, *LPNET_DVR_LOCAL_INPUT_INFO; typedef struct tagNET_DVR_LAMP_STATUS { BYTE byEnable; BYTE byRes1[3]; BYTE byLampName[LAMP_NAME]; BYTE byLampState1[LAMP_STATE_NAME]; BYTE byLampState2[LAMP_STATE_NAME]; BYTE byLampState3[LAMP_STATE_NAME]; BYTE byRes[32]; }NET_DVR_LAMP_STATUS,*LPNET_DVR_LAMP_STATUS; typedef struct _NET_DVR_LAMP_OUT { DWORD dwSize; NET_DVR_LAMP_STATUS struLampInfo[2]; BYTE byRes[256]; }NET_DVR_LAMP_OUT, *LPNET_DVR_LAMP_OUT; typedef struct _NET_DVR_LAMP_CONTROL { DWORD dwSize ; BYTE byLampNo ; BYTE byLampStateNo ; BYTE byRes[14] ; }NET_DVR_LAMP_CONTROL, *LPNET_DVR_LAMP_CONTROL; typedef struct tagNET_DVR_TPS_PARAM { BYTE byStart; BYTE byCMD; BYTE byRes[2]; WORD wDeviceID; WORD wDataLen; BYTE byLane; BYTE bySpeed; BYTE byLaneState; BYTE byQueueLen; WORD wLoopState; WORD wStateMask; DWORD dwDownwardFlow; DWORD dwUpwardFlow; BYTE byJamLevel; BYTE byRes1[11]; }NET_DVR_TPS_PARAM, *LPNET_DVR_TPS_PARAM; typedef struct tagNET_DVR_TPS_REAL_TIME_INFO { DWORD dwSize; DWORD dwChan ; NET_DVR_TIME_V30 struTime; NET_DVR_TPS_PARAM struTPSRealTimeInfo; BYTE byRes[24]; }NET_DVR_TPS_REAL_TIME_INFO, *LPNET_DVR_TPS_REAL_TIME_INFO; typedef struct tagNET_DVR_TPS_LANE_PARAM { BYTE byLane; BYTE bySpeed; BYTE byRes[2]; DWORD dwLightVehicle; DWORD dwMidVehicle; DWORD dwHeavyVehicle; DWORD dwTimeHeadway; DWORD dwSpaceHeadway; float fSpaceOccupyRation; float fTimeOccupyRation; BYTE byRes1[16]; }NET_DVR_TPS_LANE_PARAM, *LPNET_DVR_TPS_LANE_PARAM; typedef struct tagNET_DVR_PANORAMA_LINKAGE { DWORD dwSize; BYTE byEnable; BYTE byRes[127]; }NET_DVR_PANORAMA_LINKAGE, *LPNET_DVR_PANORAMA_LINKAGE; typedef struct tagNET_DVR_TPS_STATISTICS_PARAM { BYTE byStart; BYTE byCMD; BYTE byRes[2]; WORD wDeviceID; WORD wDataLen; BYTE byTotalLaneNum; BYTE byRes1[15]; NET_DVR_TIME_V30 struStartTime; DWORD dwSamplePeriod; NET_DVR_TPS_LANE_PARAM struLaneParam[MAX_TPS_RULE]; }NET_DVR_TPS_STATISTICS_PARAM, *LPNET_DVR_TPS_STATISTICS_PARAM; typedef struct tagNET_DVR_TPS_STATISTICS_INFO { DWORD dwSize; DWORD dwChan ; NET_DVR_TPS_STATISTICS_PARAM struTPSStatisticsInfo; BYTE byRes[128]; }NET_DVR_TPS_STATISTICS_INFO, *LPNET_DVR_TPS_STATISTICS_INFO; #define DPC_CORRECT 1 #define DPC_CORRECT_CANCEL 2 #define DPC_CROSS_DISPALY_OPEN 3 #define DPC_CROSS_DISPALY_CLOSE 4 #define DPC_POINT 5 #define DPC_UP 6 #define DPC_DOWN 7 #define DPC_RIGHT 8 #define DPC_LEFT 9 #define DPC_ALL_CORRECT 10 #define DPC_SAVE 11 typedef struct tagNET_DVR_DPC_PARAM { DWORD dwSize; DWORD dwChannel; WORD wCtrlType ; BYTE byDPCMode; BYTE byRes; NET_VCA_POINT struPoint; BYTE byRes1[64]; }NET_DVR_DPC_PARAM, *LPNET_DVR_DPC_PARAM; typedef struct tagNET_DVR_FFC_MANUAL_INFO { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_FFC_MANUAL_INFO, *LPNET_DVR_FFC_MANUAL_INFO; typedef struct tagNET_DVR_FFC_BACKCOMP_INFO { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_FFC_BACKCOMP_INFO, *LPNET_DVR_FFC_BACKCOMP_INFO; typedef struct tagNET_DVR_STORAGE_SERVER_SWITCH_CFG { DWORD dwSize; BYTE byPicEnable[MAX_PIC_SWITCH_STORAGE_SERVER]; BYTE byAddInfoEnable[MAX_INFO_SWITCH_STORAGE_SERVER]; BYTE byRes[324]; } NET_DVR_STORAGE_SERVER_SWITCH_CFG, *LPNET_DVR_STORAGE_SERVER_SWITCH_CFG; typedef struct tagNET_DVR_FORCESTOP_FORENSICS_CFG { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_FORCESTOP_FORENSICS_CFG, *LPNET_DVR_FORCESTOP_FORENSICS_CFG; typedef struct tagNET_DVR_DEC_VCA_ALARM { DWORD dwSize; DWORD dwDisplayNo; BYTE bySubWinNo; BYTE byRes1[3]; NET_DVR_TIME_V30 struTime; NET_DVR_PU_STREAM_CFG_V41 struSourceInfo; BYTE *byAlarmPic; DWORD dwAlarmPicSize; BYTE byRes2[64]; }NET_DVR_DEC_VCA_ALARM, *LPNET_DVR_DEC_VCA_ALARM; typedef struct tagNET_DVR_DEC_VCA_ALARM_LOGO { BYTE byEnableLogo; BYTE byFlash; WORD wFlashTime; DWORD dwLogoX; DWORD dwLogoY; BYTE byRes[32]; }NET_DVR_DEC_VCA_ALARM_LOGO, *LPNET_DVR_DEC_VCA_ALARM_LOGO; typedef struct tagNET_DVR_DEC_VCA_ALARM_PIC { BYTE byUploadPic; BYTE byOverlayTargetInfo; BYTE byOverlayRuleInfo; BYTE byPicQuality; BYTE byPicSize; BYTE byRes[27]; }NET_DVR_DEC_VCA_ALARM_PIC, *LPNET_DVR_DEC_VCA_ALARM_PIC; typedef struct tagNET_DVR_DEC_VCA_ALARM_CFG { DWORD dwSize; NET_DVR_DEC_VCA_ALARM_LOGO struAlarmLogo; NET_DVR_DEC_VCA_ALARM_PIC struAlarmPic; BYTE byRes[64]; }NET_DVR_VCA_ALARM_CFG, *LPNET_DVR_DEC_VCA_ALARM_CFG; #define MAX_OSD_LEN 64 typedef struct tagNET_DVR_OUTPUT_PIC_INFO { DWORD dwSize; BYTE sPicName[NAME_LEN]; BYTE byUsed; BYTE byRes[31]; }NET_DVR_OUTPUT_PIC_INFO,*LPNET_DVR_OUTPUT_PIC_INFO; typedef struct tagNET_DVR_OUTPUT_PIC_CFG { DWORD dwSize; DWORD dwOutputPicNo; BYTE byEnable; BYTE byRes1[3]; NET_DVR_RECTCFG_EX struRect; BYTE byFlash; BYTE byTranslucent; BYTE byRes2[2]; DWORD dwOutputPicWinNo; BYTE byRes3[28]; }NET_DVR_OUTPUT_PIC_CFG,*LPNET_DVR_OUTPUT_PIC_CFG; typedef struct tagNET_DVR_OUTPUT_OSD_CFG { DWORD dwSize; BYTE byEnable; BYTE byFontSize; BYTE byOSDColor; BYTE byRes1[1]; BYTE byOsdContent[MAX_OSD_LEN]; NET_DVR_RECTCFG_EX struRect; DWORD dwOsdWinNo; BYTE byRes2[32]; }NET_DVR_OUTPUT_OSD_CFG,*LPNET_DVR_OUTPUT_OSD_CFG; typedef struct tagNET_DVR_CHAN_RELATION_RESOURCE { DWORD dwSize; DWORD dwDisplayChan; BYTE byRelateAudio; BYTE byRes1[3]; DWORD dwSubWinNo; DWORD dwChannel; BYTE byRes2[32]; }NET_DVR_CHAN_RELATION_RESOURCE, *LPNET_DVR_CHAN_RELATION_RESOURCE; typedef struct tagNET_DVR_ALARM_CHAN_ABLITITY { DWORD dwSize; BYTE bySensorChan[64]; BYTE byAlarmInChan[64]; BYTE byAlarmOutChan[64]; BYTE by485Chan[64]; BYTE byRes[128]; }NET_DVR_ALARM_CHAN_ABLITITY, *LPNET_DVR_ALARM_CHAN_ABLITITY; typedef struct tagNET_DVR_OUT_SCALE_CFG { DWORD dwSize; BYTE byOutScale[8]; BYTE byRes[16]; }NET_DVR_OUT_SCALE_CFG, *LPNET_DVR_OUT_SCALE_CFG; typedef struct tagNET_DVR_MONITOR_LOCATION_COND { DWORD dwSize; DWORD dwChan; BYTE byRelateType; BYTE byRes[63]; }NET_DVR_MONITOR_LOCATION_COND, *LPNET_DVR_MONITOR_LOCATION_COND; typedef struct tagNET_DVR_MONITOR_LOCATION_CFG { DWORD dwSize; BYTE byMonitoringSiteID[MAX_ID_LEN]; BYTE byDeviceID[MAX_ID_LEN]; BYTE byDirectionNo; BYTE byRes1[3]; BYTE byMonitorInfo[MONITORSITE_ID_LEN]; BYTE byRes[128]; }NET_DVR_MONITOR_LOCATION_CFG, *LPNET_DVR_MONITOR_LOCATION_CFG; typedef struct tagNET_DVR_REMOTECONTROL_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_REMOTECONTROL_COND, *LPNET_DVR_REMOTECONTROL_COND; typedef struct tagNET_DVR_REMOTECONTROL_STATUS_ { DWORD dwSize; BYTE byAlarmStatus; BYTE byRes[3]; WORD wAlarmDealyTime; WORD wDisAlarmDealyTime; BYTE byRes1[64]; } NET_DVR_REMOTECONTROL_STATUS, *LPNET_DVR_REMOTECONTROL_STATUS; typedef struct tagNET_DVR_SECURITY_CFG { DWORD dwSize; BYTE byCommuMode; BYTE byRes1[2]; BYTE byWebAuthentication; BYTE byRtspAuthentication; BYTE byTelnetServer; BYTE bySSHServer; BYTE byIllegalLoginLock; BYTE byStreamEncryption; BYTE byAntiAttack; BYTE byRes[26]; }NET_DVR_SECURITY_CFG,*LPNET_DVR_SECURITY_CFG; typedef struct tagNET_DVR_PASSWORD_MANAGE_CFG { DWORD dwSize; BYTE byRes[3]; BYTE byLockCount; DWORD dwLockTime; BYTE byRes1[128]; } NET_DVR_PASSWORD_MANAGE_CFG,*LPNET_DVR_PASSWORD_MANAGE_CFG; typedef struct tagNET_DVR_UNLOCK_INFO { DWORD dwSize; BYTE byUnlockType; BYTE byIPVersion; BYTE byRes1[2]; NET_DVR_IPADDR struIPAddr; BYTE byRes[64]; } NET_DVR_UNLOCK_INFO,*LPNET_DVR_UNLOCK_INFO; typedef struct tagNET_DVR_LOCKED_INFO { DWORD dwSize; BYTE byIPType; BYTE byRes1[3]; NET_DVR_IPADDR struIPAddress; BYTE byRes[20]; } NET_DVR_LOCKED_INFO,*LPNET_DVR_LOCKED_INFO; typedef struct tagNET_DVR_VEHICLE_PARA { BYTE sLicense[MAX_LICENSE_LEN]; BYTE byCountry; BYTE byRes[239]; }NET_DVR_VEHICLE_PARA, *LPNET_DVR_VEHICLE_PARA; typedef struct tagNET_DVR_FACE_PIC_DATA_INFO { DWORD dwImageLen; NET_VCA_RECT struVcaRect; DWORD dwFaceScore; BYTE byVcaRectOnly; BYTE byRes1[3]; DWORD dwPID; DWORD dwFaceSearchNum; NET_VCA_RECT struMultiVcaRect[NET_DVR_MAX_FACE_SEARCH_NUM]; BYTE byRes[136]; BYTE *pImage; }NET_DVR_FACE_PIC_DATA_INFO, *LPNET_DVR_FACE_PIC_DATA_INFO; typedef struct tagNET_DVR_BEHAVIOUR_COND { DWORD dwSearchType; BYTE byHumanMisinfo; BYTE byRes[251]; }NET_DVR_BEHAVIOUR_COND, *LPNET_DVR_BEHAVIOUR_COND; typedef union tagNET_DVR_SMARTSEARCH_PIC_UNION { BYTE byLen[256]; NET_DVR_VEHICLE_PARA struVehiclePara; NET_VCA_HUMAN_FEATURE struHumaFeature; NET_DVR_FACE_PIC_DATA_INFO struHumaPic; NET_DVR_BEHAVIOUR_COND struBehaviourCond; }NET_DVR_SMARTSEARCH_PIC_UNION,*LPNET_DVR_SMARTSEARCH_PIC_UNION; typedef struct tagNET_DVR_SMART_SEARCH_PIC_PARA { DWORD dwChanNo; DWORD byStreamID[STREAM_ID_LEN] ; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; WORD wSearchType; BYTE byRes1[2]; NET_DVR_SMARTSEARCH_PIC_UNION uSmartSearchCond; BYTE byISO8601; char cStartTimeDifferenceH; char cStartTimeDifferenceM; char cStopTimeDifferenceH; char cStopTimeDifferenceM; BYTE byRes[59]; }NET_DVR_SMART_SEARCH_PIC_PARA, *LPNET_DVR_SMART_SEARCH_PIC_PARA; typedef struct tagNET_DVR_FACE_SUB_PIC_INFO { DWORD dwSimilarity; NET_VCA_RECT struVcaRect; BYTE byRes2[236]; }NET_DVR_FACE_SUB_PIC_INFO ,*LPNET_DVR_FACE_SUB_PIC_INFO; typedef struct tagNET_DVR_BEHAVIOR_INFO { NET_VCA_RECT struVcaRect; BYTE byRes2[240]; }NET_DVR_BEHAVIOR_INFO ,*LPNET_DVR_BEHAVIOR_INFO; typedef union tagNET_DVR_PIC_FEATURE_UNION { BYTE byLen[256]; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_FACE_SUB_PIC_INFO struFaceSubInfo; NET_DVR_BEHAVIOR_INFO struBehavior; }NET_DVR_PIC_FEATURE_UNION,*LPNET_DVR_PIC_FEATURE_UNION; typedef struct tagNET_DVR_SMART_SEARCH_PIC_RET { char sFileName[PICTURE_NAME_LEN]; NET_DVR_TIME_EX struTime; DWORD dwFileSize; WORD wPicType; BYTE byRes1[2]; NET_DVR_PIC_FEATURE_UNION uPicFeature; BYTE byISO8601; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[29]; }NET_DVR_SMART_SEARCH_PIC_RET, *LPNET_DVR_SMART_SEARCH_PIC_RET; typedef struct tagNET_DVR_T1TEST_SEND_DATA_BUZZER { BYTE byHearSound; BYTE byRes[31]; }NET_DVR_T1TEST_SEND_DATA_BUZZER,*LPNET_DVR_T1TEST_SEND_DATA_BUZZER; typedef union NET_DVR_T1TEST_DATA_UNION { BYTE byUnionLen[32]; NET_DVR_T1TEST_SEND_DATA_BUZZER struBuzzer; NET_DVR_TIME_V30 struCurTime; }NET_DVR_T1TEST_DATA_UNION,*LPNET_DVR_T1TEST_DATA_UNION; typedef struct tagNET_DVR_T1TEST_SEND_DATA { DWORD dwSize; BYTE byDataType; BYTE byRes1[3]; NET_DVR_T1TEST_DATA_UNION uSendData; BYTE byRes[64]; }NET_DVR_T1TEST_SEND_DATA,*LPNET_DVR_T1TEST_SEND_DATA; typedef struct tagNET_DVR_PIC_MODEL_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[63]; }NET_DVR_PIC_MODEL_CFG, *LPNET_DVR_PIC_MODEL_CFG; typedef struct tagNET_DVR_MOUSE_EVENT_PARAM { DWORD dwSize; BYTE byMouseEvent; BYTE byRes1[3]; NET_VCA_POINT struPoint; BYTE byRes[64]; }NET_DVR_MOUSE_EVENT_PARAM, *LPNET_DVR_MOUSE_EVENT_PARAM; typedef struct tagNET_DVR_AUTO_LIMIT_WAVE_CFG { BYTE byFBCEnable; BYTE byMode; BYTE byFilterQValue; BYTE byStaticFilterNum; BYTE byRes[16]; }NET_DVR_AUTO_LIMIT_WAVE_CFG,*LPNET_DVR_AUTO_LIMIT_WAVE_CFG; typedef struct _NET_DVR_DSP_PARAMETER_CFG { BYTE byFBCEnable; BYTE byVolume; BYTE byRes[22]; }NET_DVR_DSP_PARAMETER_CFG, *LPNET_DVR_DSP_PARAMETER_CFG; typedef struct tagNET_DVR_MIX_AUDIOIN_CFG { DWORD dwSize; DWORD dwHighPassFilter; DWORD dwNoiseMargin; NET_DVR_AUTO_LIMIT_WAVE_CFG struLimitWave; NET_DVR_DSP_PARAMETER_CFG struDSPParameter; BYTE byRes[40]; }NET_DVR_MIX_AUDIOIN_CFG,*LPNET_DVR_MIX_AUDIOIN_CFG; typedef struct tagNET_DVR_MIX_AUDIOOUT_CFG { DWORD dwSize; BYTE byModulatorEnbale; BYTE byPostFilter; BYTE byLimitPressure; BYTE byRes1; WORD wModulatorValue; WORD wTriggerTime; WORD wFreeTime; BYTE byCompressThreshold; BYTE byCompressMode; BYTE byCompressRate; BYTE byRecoveryGain; BYTE byOutputGain; BYTE byOutputMute; int iOutputGainEx; BYTE bySoundQualityHanding; BYTE byRes[55]; }NET_DVR_MIX_AUDIOOUT_CFG,*LPNET_DVR_MIX_AUDIOOUT_CFG; #define MAX_AUDIOOUT_PRO_TYPE 8 typedef struct tagNET_DVR_VOLUME_CFG { DWORD dwSize; WORD wVolume[MAX_AUDIOOUT_PRO_TYPE]; BYTE byPhantomPowerSupply; BYTE byEnableAEC; WORD wTalkVolume; BYTE byEnableFBC[MAX_AUDIOOUT_PRO_TYPE]; WORD wVolumeEx[MAX_AUDIOOUT_PRO_TYPE]; BYTE byRes[4]; }NET_DVR_VOLUME_CFG,*LPNET_DVR_VOLUME_CFG; typedef struct tagNET_DVR_VIDEOOUT_RESOLUTION_CFG { DWORD dwSize; BYTE byResolution; BYTE byRes[63]; }NET_DVR_VIDEOOUT_RESOLUTION_CFG, *LPNET_DVR_VIDEOOUT_RESOLUTION_CFG; typedef struct tagNET_DVR_ADDR_DOMAIN_INFO { BYTE szDomainAddr[MAX_DOMAIN_NAME]; WORD wPort; BYTE byRes[2]; }NET_DVR_ADDR_DOMAIN_INFO,*LPNET_DVR_ADDR_DOMAIN_INFO; #define MAX_CENTERNUM_V40 6 typedef struct tagNET_DVR_ALARMCENTER_NETCFG { DWORD dwSize; BYTE byAuxiliaryAlarmAddr[MAX_DOMAIN_NAME]; WORD wAuxiliaryAlarmPort; NET_DVR_ADDR_DOMAIN_INFO struHostAddr[MAX_CENTERNUM_V40]; BYTE byRes[172]; }NET_DVR_ALARMCENTER_NETCFG, *LPNET_DVR_ALARMCENTER_NETCFG; typedef struct tagNET_DVR_ALARM_LINKAGE_PARAM { DWORD dwSize; WORD wChanRec; BYTE byRes1[2]; WORD wRecTime[MAX_LINKAGE_CHAN_NUM]; WORD wChanPic; BYTE byRes2[2]; BYTE byPicNum[MAX_LINKAGE_CHAN_NUM]; BYTE byTriggerEnabled[ALARMHOST_ALARMOUT_NUM]; BYTE bySensorJointAlarmOut[ALARMHOST_ALARMOUT_NUM]; BYTE byRes3[128]; }NET_DVR_ALARM_LINKAGE_PARAM, *LPNET_DVR_ALARM_LINKAGE_PARAM; typedef struct tagNET_DVR_ALARM_RADARINFO { DWORD dwSize; DWORD dwRadarTriggerTimeSecond; DWORD dwRadarTriggerTimeMSecond; DWORD dwVedioTriggerTimeSecond; DWORD dwVedioTriggerTimeMSecond; DWORD dwVedioRadarDiffTimeMSecond; DWORD dwRadarSpeed; BYTE byRes[16]; } NET_DVR_ALARM_RADARINFO, *LPNET_DVR_ALARM_RADARINFO; #define MAX_FINGER_PRINT_LEN 768 typedef struct tagNET_DVR_FINGER_PRINT_CFG { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwFingerPrintLen; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; BYTE byFingerPrintID; BYTE byFingerType; BYTE byRes1[30]; BYTE byFingerData[MAX_FINGER_PRINT_LEN]; BYTE byRes[64]; }NET_DVR_FINGER_PRINT_CFG,*LPNET_DVR_FINGER_PRINT_CFG; typedef struct tagNET_DVR_FINGER_PRINT_STATUS { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardReaderRecvStatus[MAX_CARD_READER_NUM_512]; BYTE byFingerPrintID; BYTE byFingerType; BYTE byTotalStatus; BYTE byRes1; BYTE byErrorMsg[ERROR_MSG_LEN]; DWORD dwCardReaderNo; BYTE byRes[24]; }NET_DVR_FINGER_PRINT_STATUS,*LPNET_DVR_FINGER_PRINT_STATUS; typedef struct tagNET_DVR_FINGER_PRINT_INFO_COND { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; DWORD dwFingerPrintNum; BYTE byFingerPrintID; BYTE byCallbackMode; BYTE byRes1[26]; }NET_DVR_FINGER_PRINT_INFO_COND,*LPNET_DVR_FINGER_PRINT_INFO_COND; typedef struct tagNET_DVR_FINGER_PRINT_CFG_V50 { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwFingerPrintLen; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; BYTE byFingerPrintID; BYTE byFingerType; BYTE byRes1[30]; BYTE byFingerData[MAX_FINGER_PRINT_LEN]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byLeaderFP[MAX_DOOR_NUM_256]; BYTE byRes[128]; }NET_DVR_FINGER_PRINT_CFG_V50, *LPNET_DVR_FINGER_PRINT_CFG_V50; typedef struct tagNET_DVR_FINGER_PRINT_STATUS_V50 { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardReaderRecvStatus[MAX_CARD_READER_NUM_512]; BYTE byFingerPrintID; BYTE byFingerType; BYTE byTotalStatus; BYTE byRecvStatus; BYTE byErrorMsg[ERROR_MSG_LEN]; DWORD dwCardReaderNo; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byErrorEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes[128]; }NET_DVR_FINGER_PRINT_STATUS_V50, *LPNET_DVR_FINGER_PRINT_STATUS_V50; typedef struct tagNET_DVR_FINGER_PRINT_INFO_COND_V50 { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; DWORD dwFingerPrintNum; BYTE byFingerPrintID; BYTE byCallbackMode; BYTE byRes2[2]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes1[128]; }NET_DVR_FINGER_PRINT_INFO_COND_V50, *LPNET_DVR_FINGER_PRINT_INFO_COND_V50; typedef struct tagNET_DVR_FINGER_PRINT_BYCARD { BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; BYTE byFingerPrintID[MAX_FINGER_PRINT_NUM]; BYTE byRes1[34]; }NET_DVR_FINGER_PRINT_BYCARD,*LPNET_DVR_FINGER_PRINT_BYCARD; typedef struct tagNET_DVR_FINGER_PRINT_BYREADER { DWORD dwCardReaderNo; BYTE byClearAllCard; BYTE byRes1[3]; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byRes[548]; }NET_DVR_FINGER_PRINT_BYREADER,*LPNET_DVR_FINGER_PRINT_BYREADER; typedef union tagNET_DVR_DEL_FINGER_PRINT_MODE { BYTE uLen[588]; NET_DVR_FINGER_PRINT_BYCARD struByCard; NET_DVR_FINGER_PRINT_BYREADER struByReader; }NET_DVR_DEL_FINGER_PRINT_MODE,*LPNET_DVR_DEL_FINGER_PRINT_MODE; typedef struct tagNET_DVR_FINGER_PRINT_INFO_CTRL { DWORD dwSize; BYTE byMode; BYTE byRes1[3]; NET_DVR_DEL_FINGER_PRINT_MODE struProcessMode; BYTE byRes[64]; }NET_DVR_FINGER_PRINT_INFO_CTRL,*LPNET_DVR_FINGER_PRINT_INFO_CTRL; typedef struct tagNET_DVR_FINGER_PRINT_BYCARD_V50 { BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEnableCardReader[MAX_CARD_READER_NUM_512]; BYTE byFingerPrintID[MAX_FINGER_PRINT_NUM]; BYTE byRes1[2]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; }NET_DVR_FINGER_PRINT_BYCARD_V50, *LPNET_DVR_FINGER_PRINT_BYCARD_V50; typedef struct tagNET_DVR_FINGER_PRINT_BYREADER_V50 { DWORD dwCardReaderNo; BYTE byClearAllCard; BYTE byRes1[3]; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; BYTE byRes[516]; }NET_DVR_FINGER_PRINT_BYREADER_V50, *LPNET_DVR_FINGER_PRINT_BYREADER_V50; typedef union tagNET_DVR_DEL_FINGER_PRINT_MODE_V50 { BYTE uLen[588]; NET_DVR_FINGER_PRINT_BYCARD_V50 struByCard; NET_DVR_FINGER_PRINT_BYREADER_V50 struByReader; }NET_DVR_DEL_FINGER_PRINT_MODE_V50, *LPNET_DVR_DEL_FINGER_PRINT_MODE_V50; typedef struct tagNET_DVR_FINGER_PRINT_INFO_CTRL_V50 { DWORD dwSize; BYTE byMode; BYTE byRes1[3]; NET_DVR_DEL_FINGER_PRINT_MODE_V50 struProcessMode; BYTE byRes[64]; }NET_DVR_FINGER_PRINT_INFO_CTRL_V50, *LPNET_DVR_FINGER_PRINT_INFO_CTRL_V50; typedef struct tagNET_DVR_FINGER_PRINT_INFO_STATUS_V50 { DWORD dwSize; DWORD dwCardReaderNo; BYTE byStatus; BYTE byRes[63]; }NET_DVR_FINGER_PRINT_INFO_STATUS_V50, *LPNET_DVR_FINGER_PRINT_INFO_STATUS_V50; typedef enum _ACS_DEV_SUBEVENT_ENUM_ { EVENT_ACS_HOST_ANTI_DISMANTLE = 0, EVENT_ACS_OFFLINE_ECENT_NEARLY_FULL, EVENT_ACS_NET_BROKEN, EVENT_ACS_NET_RESUME , EVENT_ACS_LOW_BATTERY, EVENT_ACS_BATTERY_RESUME, EVENT_ACS_AC_OFF, EVENT_ACS_AC_RESUME, EVENT_ACS_SD_CARD_FULL, EVENT_ACS_LINKAGE_CAPTURE_PIC, EVENT_ACS_IMAGE_QUALITY_LOW, EVENT_ACS_FINGER_PRINT_QUALITY_LOW, EVENT_ACS_BATTERY_ELECTRIC_LOW, EVENT_ACS_BATTERY_ELECTRIC_RESUME, EVENT_ACS_FIRE_IMPORT_SHORT_CIRCUIT, EVENT_ACS_FIRE_IMPORT_BROKEN_CIRCUIT, EVENT_ACS_FIRE_IMPORT_RESUME, EVENT_ACS_MASTER_RS485_LOOPNODE_BROKEN, EVENT_ACS_MASTER_RS485_LOOPNODE_RESUME, EVENT_ACS_LOCAL_CONTROL_OFFLINE, EVENT_ACS_LOCAL_CONTROL_RESUME, EVENT_ACS_LOCAL_DOWNSIDE_RS485_LOOPNODE_BROKEN, EVENT_ACS_LOCAL_DOWNSIDE_RS485_LOOPNODE_RESUME, EVENT_ACS_DISTRACT_CONTROLLER_ONLINE, EVENT_ACS_DISTRACT_CONTROLLER_OFFLINE, EVENT_ACS_FIRE_BUTTON_TRIGGER, EVENT_ACS_FIRE_BUTTON_RESUME, EVENT_ACS_MAINTENANCE_BUTTON_TRIGGER, EVENT_ACS_MAINTENANCE_BUTTON_RESUME, EVENT_ACS_EMERGENCY_BUTTON_TRIGGER, EVENT_ACS_EMERGENCY_BUTTON_RESUME, EVENT_ACS_MAC_DETECT, EVENT_ACS_SUBMARINEBACK_COMM_BREAK, EVENT_ACS_SUBMARINEBACK_COMM_RESUME, EVENT_ACS_REMOTE_ACTUAL_GUARD, EVENT_ACS_REMOTE_ACTUAL_UNGUARD, EVENT_ACS_MOTOR_SENSOR_EXCEPTION, EVENT_ACS_CAN_BUS_EXCEPTION, EVENT_ACS_CAN_BUS_RESUME, EVENT_ACS_GATE_TEMPERATURE_OVERRUN, EVENT_ACS_IR_EMITTER_EXCEPTION, EVENT_ACS_IR_EMITTER_RESUME, EVENT_ACS_LAMP_BOARD_COMM_EXCEPTION, EVENT_ACS_LAMP_BOARD_COMM_RESUME, EVENT_ACS_IR_ADAPTOR_BOARD_COMM_EXCEPTION, EVENT_ACS_IR_ADAPTOR_BOARD_COMM_RESUME, EVENT_ACS_CHANNEL_CONTROLLER_DESMANTLE_ALARM, EVENT_ACS_CHANNEL_CONTROLLER_DESMANTLE_RESUME, EVENT_ACS_CHANNEL_CONTROLLER_FIRE_IMPORT_ALARM, EVENT_ACS_CHANNEL_CONTROLLER_FIRE_IMPORT_RESUME, EVENT_ACS_STAY_EVENT, EVENT_ACS_LEGAL_EVENT_NEARLY_FULL }ACS_DEV_SUBEVENT_ENUM; typedef enum _ACS_ALARM_SUBEVENT_ENUM_ { EVENT_ACS_ALARMIN_SHORT_CIRCUIT = 0, EVENT_ACS_ALARMIN_BROKEN_CIRCUIT, EVENT_ACS_ALARMIN_EXCEPTION, EVENT_ACS_ALARMIN_RESUME, EVENT_ACS_CASE_SENSOR_ALARM, EVENT_ACS_CASE_SENSOR_RESUME }ACS_ALARM_SUBEVENT_ENUM; typedef enum _ACS_DOOR_SUBEVENT_ENUM_ { EVENT_ACS_LEADER_CARD_OPEN_BEGIN = 0, EVENT_ACS_LEADER_CARD_OPEN_END, EVENT_ACS_ALWAYS_OPEN_BEGIN , EVENT_ACS_ALWAYS_OPEN_END, EVENT_ACS_ALWAYS_CLOSE_BEGIN, EVENT_ACS_ALWAYS_CLOSE_END, EVENT_ACS_LOCK_OPEN, EVENT_ACS_LOCK_CLOSE, EVENT_ACS_DOOR_BUTTON_PRESS, EVENT_ACS_DOOR_BUTTON_RELEASE, EVENT_ACS_DOOR_OPEN_NORMAL, EVENT_ACS_DOOR_CLOSE_NORMAL , EVENT_ACS_DOOR_OPEN_ABNORMAL, EVENT_ACS_DOOR_OPEN_TIMEOUT, EVENT_ACS_REMOTE_OPEN_DOOR, EVENT_ACS_REMOTE_CLOSE_DOOR, EVENT_ACS_REMOTE_ALWAYS_OPEN, EVENT_ACS_REMOTE_ALWAYS_CLOSE, EVENT_ACS_NOT_BELONG_MULTI_GROUP, EVENT_ACS_INVALID_MULTI_VERIFY_PERIOD, EVENT_ACS_MULTI_VERIFY_SUPER_RIGHT_FAIL, EVENT_ACS_MULTI_VERIFY_REMOTE_RIGHT_FAIL, EVENT_ACS_MULTI_VERIFY_SUCCESS, EVENT_ACS_MULTI_VERIFY_NEED_REMOTE_OPEN, EVENT_ACS_MULTI_VERIFY_SUPERPASSWD_VERIFY_SUCCESS, EVENT_ACS_MULTI_VERIFY_REPEAT_VERIFY_FAIL, EVENT_ACS_MULTI_VERIFY_TIMEOUT, EVENT_ACS_REMOTE_CAPTURE_PIC, EVENT_ACS_DOORBELL_RINGING, EVENT_ACS_SECURITY_MODULE_DESMANTLE_ALARM, EVENT_ACS_CALL_CENTER, EVENT_ACS_FIRSTCARD_AUTHORIZE_BEGIN, EVENT_ACS_FIRSTCARD_AUTHORIZE_END, EVENT_ACS_DOORLOCK_INPUT_SHORT_CIRCUIT, EVENT_ACS_DOORLOCK_INPUT_BROKEN_CIRCUIT, EVENT_ACS_DOORLOCK_INPUT_EXCEPTION, EVENT_ACS_DOORCONTACT_INPUT_SHORT_CIRCUIT, EVENT_ACS_DOORCONTACT_INPUT_BROKEN_CIRCUIT, EVENT_ACS_DOORCONTACT_INPUT_EXCEPTION, EVENT_ACS_OPENBUTTON_INPUT_SHORT_CIRCUIT, EVENT_ACS_OPENBUTTON_INPUT_BROKEN_CIRCUIT, EVENT_ACS_OPENBUTTON_INPUT_EXCEPTION, EVENT_ACS_DOORLOCK_OPEN_EXCEPTION, EVENT_ACS_DOORLOCK_OPEN_TIMEOUT, EVENT_ACS_FIRSTCARD_OPEN_WITHOUT_AUTHORIZE, EVENT_ACS_CALL_LADDER_RELAY_BREAK, EVENT_ACS_CALL_LADDER_RELAY_CLOSE, EVENT_ACS_AUTO_KEY_RELAY_BREAK, EVENT_ACS_AUTO_KEY_RELAY_CLOSE, EVENT_ACS_KEY_CONTROL_RELAY_BREAK, EVENT_ACS_KEY_CONTROL_RELAY_CLOSE, EVENT_ACS_REMOTE_VISITOR_CALL_LADDER, EVENT_ACS_REMOTE_HOUSEHOLD_CALL_LADDER, EVENT_ACS_LEGAL_MESSAGE, EVENT_ACS_ILLEGAL_MESSAGE, EVENT_ACS_TRAILING, EVENT_ACS_REVERSE_ACCESS, EVENT_ACS_FORCE_ACCESS, EVENT_ACS_CLIMBING_OVER_GATE, EVENT_ACS_PASSING_TIMEOUT, EVENT_ACS_INTRUSION_ALARM, EVENT_ACS_FREE_GATE_PASS_NOT_AUTH, EVENT_ACS_DROP_ARM_BLOCK, EVENT_ACS_DROP_ARM_BLOCK_RESUME, EVENT_ACS_REMOTE_CONTROL_CLOSE_DOOR, EVENT_ACS_REMOTE_CONTROL_OPEN_DOOR, EVENT_ACS_REMOTE_CONTROL_ALWAYS_OPEN_DOOR }ACS_DOOR_SUBEVENT_ENUM; typedef enum _ACS_CARD_READER_SUBEVENT_ENUM_ { EVENT_ACS_STRESS_ALARM = 0, EVENT_ACS_CARD_READER_DESMANTLE_ALARM, EVENT_ACS_LEGAL_CARD_PASS, EVENT_ACS_CARD_AND_PSW_PASS, EVENT_ACS_CARD_AND_PSW_FAIL, EVENT_ACS_CARD_AND_PSW_TIMEOUT, EVENT_ACS_CARD_MAX_AUTHENTICATE_FAIL, EVENT_ACS_CARD_NO_RIGHT, EVENT_ACS_CARD_INVALID_PERIOD, EVENT_ACS_CARD_OUT_OF_DATE, EVENT_ACS_INVALID_CARD, EVENT_ACS_ANTI_SNEAK_FAIL, EVENT_ACS_INTERLOCK_DOOR_NOT_CLOSE, EVENT_ACS_FINGERPRINT_COMPARE_PASS, EVENT_ACS_FINGERPRINT_COMPARE_FAIL, EVENT_ACS_CARD_FINGERPRINT_VERIFY_PASS, EVENT_ACS_CARD_FINGERPRINT_VERIFY_FAIL, EVENT_ACS_CARD_FINGERPRINT_VERIFY_TIMEOUT, EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_PASS, EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_FAIL, EVENT_ACS_CARD_FINGERPRINT_PASSWD_VERIFY_TIMEOUT, EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_PASS, EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_FAIL, EVENT_ACS_FINGERPRINT_PASSWD_VERIFY_TIMEOUT, EVENT_ACS_FINGERPRINT_INEXISTENCE, EVENT_ACS_FACE_VERIFY_PASS, EVENT_ACS_FACE_VERIFY_FAIL, EVENT_ACS_FACE_AND_FP_VERIFY_PASS, EVENT_ACS_FACE_AND_FP_VERIFY_FAIL, EVENT_ACS_FACE_AND_FP_VERIFY_TIMEOUT, EVENT_ACS_FACE_AND_PW_VERIFY_PASS, EVENT_ACS_FACE_AND_PW_VERIFY_FAIL, EVENT_ACS_FACE_AND_PW_VERIFY_TIMEOUT, EVENT_ACS_FACE_AND_CARD_VERIFY_PASS, EVENT_ACS_FACE_AND_CARD_VERIFY_FAIL, EVENT_ACS_FACE_AND_CARD_VERIFY_TIMEOUT, EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_PASS, EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_FAIL, EVENT_ACS_FACE_AND_PW_AND_FP_VERIFY_TIMEOUT, EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_PASS, EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_FAIL, EVENT_ACS_FACE_AND_CARD_AND_FP_VERIFY_TIMEOUT, EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_PASS, EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_FAIL, EVENT_ACS_EMPLOYEENO_AND_FP_VERIFY_TIMEOUT, EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_PASS, EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_FAIL, EVENT_ACS_EMPLOYEENO_AND_FP_AND_PW_VERIFY_TIMEOUT, EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_PASS, EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_FAIL, EVENT_ACS_EMPLOYEENO_AND_FACE_VERIFY_TIMEOUT, EVENT_ACS_FACE_RECOGNIZE_FAIL, EVENT_ACS_EMPLOYEENO_AND_PW_PASS, EVENT_ACS_EMPLOYEENO_AND_PW_FAIL, EVENT_ACS_EMPLOYEENO_AND_PW_TIMEOUT, EVENT_ACS_HUMAN_DETECT_FAIL, EVENT_ACS_PEOPLE_AND_ID_CARD_COMPARE_PASS, EVENT_ACS_PEOPLE_AND_ID_CARD_COMPARE_FAIL, EVENT_ACS_DOOR_OPEN_OR_DORMANT_FAIL, EVENT_ACS_AUTH_PLAN_DORMANT_FAIL, EVENT_ACS_CARD_ENCRYPT_VERIFY_FAIL, EVENT_ACS_SUBMARINEBACK_REPLY_FAIL, EVENT_ACS_PASSWORD_MISMATCH, EVENT_ACS_EMPLOYEE_NO_NOT_EXIST, EVENT_ACS_COMBINED_VERIFY_PASS, EVENT_ACS_COMBINED_VERIFY_TIMEOUT, EVENT_ACS_VERIFY_MODE_MISMATCH }ACS_CARD_READER_SUBEVENT_ENUM; typedef struct tagNET_DVR_EVENT_LINKAGE_INFO { WORD wMainEventType; WORD wSubEventType; BYTE byRes[28]; }NET_DVR_EVENT_LINKAGE_INFO,*LPNET_DVR_EVENT_LINKAGE_INFO; typedef union tagNET_DVR_EVETN_CARD_LINKAGE_UNION { BYTE byCardNo[ACS_CARD_NO_LEN]; NET_DVR_EVENT_LINKAGE_INFO struEventLinkage; BYTE byMACAddr[MACADDR_LEN]; BYTE byEmployeeNo[NET_SDK_EMPLOYEE_NO_LEN]; }NET_DVR_EVETN_CARD_LINKAGE_UNION,*LPNET_DVR_EVETN_CARD_LINKAGE_UNION; typedef struct tagNET_DVR_EVENT_CARD_LINKAGE_CFG { DWORD dwSize; BYTE byProMode; BYTE byRes1[3]; DWORD dwEventSourceID; NET_DVR_EVETN_CARD_LINKAGE_UNION uLinkageInfo; BYTE byAlarmout[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byRes2[32]; BYTE byOpenDoor[MAX_DOOR_NUM_256]; BYTE byCloseDoor[MAX_DOOR_NUM_256]; BYTE byNormalOpen[MAX_DOOR_NUM_256]; BYTE byNormalClose[MAX_DOOR_NUM_256]; BYTE byMainDevBuzzer; BYTE byCapturePic; BYTE byRecordVideo; BYTE byRes3[29]; BYTE byReaderBuzzer[MAX_CARD_READER_NUM_512]; BYTE byRes[128]; }NET_DVR_EVENT_CARD_LINKAGE_CFG,*LPNET_DVR_EVENT_CARD_LINKAGE_CFG; typedef struct tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V50 { DWORD dwSize; BYTE byProMode; BYTE byRes1[3]; DWORD dwEventSourceID; NET_DVR_EVETN_CARD_LINKAGE_UNION uLinkageInfo; BYTE byAlarmout[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byRes2[32]; BYTE byOpenDoor[MAX_DOOR_NUM_256]; BYTE byCloseDoor[MAX_DOOR_NUM_256]; BYTE byNormalOpen[MAX_DOOR_NUM_256]; BYTE byNormalClose[MAX_DOOR_NUM_256]; BYTE byMainDevBuzzer; BYTE byCapturePic; BYTE byRecordVideo; BYTE byRes3[29]; BYTE byReaderBuzzer[MAX_CARD_READER_NUM_512]; BYTE byAlarmOutClose[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAlarmInSetup[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInClose[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byRes[500]; }NET_DVR_EVENT_CARD_LINKAGE_CFG_V50, *LPNET_DVR_EVENT_CARD_LINKAGE_CFG_V50; typedef struct tagNET_DVR_EVENT_LINKAGE_CARD_CFG_V51 { DWORD dwSize; BYTE byProMode; BYTE byRes1[3]; DWORD dwEventSourceID; NET_DVR_EVETN_CARD_LINKAGE_UNION uLinkageInfo; BYTE byAlarmout[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byRes2[32]; BYTE byOpenDoor[MAX_DOOR_NUM_256]; BYTE byCloseDoor[MAX_DOOR_NUM_256]; BYTE byNormalOpen[MAX_DOOR_NUM_256]; BYTE byNormalClose[MAX_DOOR_NUM_256]; BYTE byMainDevBuzzer; BYTE byCapturePic; BYTE byRecordVideo; BYTE byMainDevStopBuzzer; WORD wAudioDisplayID; BYTE byAudioDisplayMode; BYTE byRes3[25]; BYTE byReaderBuzzer[MAX_CARD_READER_NUM_512]; BYTE byAlarmOutClose[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAlarmInSetup[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byAlarmInClose[MAX_ALARMHOST_ALARMIN_NUM]; BYTE byReaderStopBuzzer[MAX_CARD_READER_NUM_512]; BYTE byRes[512]; }NET_DVR_EVENT_CARD_LINKAGE_CFG_V51, *LPNET_DVR_EVENT_CARD_LINKAGE_CFG_V51; typedef struct tagNET_DVR_EVENT_CARD_LINKAGE_COND { DWORD dwSize; DWORD dwEventID; WORD wLocalControllerID; BYTE byRes[106]; }NET_DVR_EVENT_CARD_LINKAGE_COND, *LPNET_DVR_EVENT_CARD_LINKAGE_COND; typedef struct tagNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM { DWORD dwSize; DWORD dwFileSize; DWORD dwAudioID; BYTE byRes[256]; }NET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM, *LPNET_DVR_RIGHT_CONTROLLER_AUDIO_PARAM; typedef struct tagNET_DVR_ANTI_SNEAK_HOST_INFO { NET_DVR_ADDRESS struDVRIP; BYTE byIsStartAddr; BYTE byHostNo; BYTE byRes[34]; }NET_DVR_ANTI_SNEAK_HOST_INFO,*LPNET_DVR_ANTI_SNEAK_HOST_INFO; typedef struct tagNET_DVR_ANTI_SNEAK_HOST_READER_INFO { BYTE byAntiSnealHostNo; BYTE byRes[5]; WORD wFollowUpCardReader; }NET_DVR_ANTI_SNEAK_HOST_READER_INFO, *LPNET_DVR_ANTI_SNEAK_HOST_READER_INFO; typedef struct tagNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_ANTI_SNEAK_HOST_INFO struSneakHost[MAX_SNEAK_PATH_NODE]; NET_DVR_ANTI_SNEAK_HOST_READER_INFO struStartReader; BYTE byRes2[128]; }NET_DVR_ANTI_SNEAK_MULTI_HOST_CFG, *LPNET_DVR_ANTI_SNEAK_MULTI_HOST_CFG; typedef struct tagNET_DVR_ANTI_SNEAK_READER_CFG { BYTE byEnable; BYTE byAntiSnealHostNo; WORD wReaderID; NET_DVR_ANTI_SNEAK_HOST_READER_INFO struSneakReaderInfo[MAX_SNEAK_PATH_NODE]; BYTE byRes2[8]; }NET_DVR_ANTI_SNEAK_READER_CFG, *LPNET_DVR_ANTI_SNEAK_READER_CFG; typedef struct tagNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG { DWORD dwSize; NET_DVR_ANTI_SNEAK_READER_CFG struReaderCfg[MAX_READER_ROUTE_NUM]; BYTE byRes[128]; }NET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG, *LPNET_DVR_ANTI_SNEAK_MULTI_HOST_READERS_CFG; typedef struct tagNET_DVR_ACS_CFG { DWORD dwSize; BYTE byRS485Backup; BYTE byShowCapPic; BYTE byShowCardNo; BYTE byShowUserInfo; BYTE byOverlayUserInfo; BYTE byVoicePrompt; BYTE byUploadCapPic; BYTE bySaveCapPic; BYTE byInputCardNo; BYTE byEnableWifiDetect; BYTE byEnable3G4G; BYTE byProtocol; BYTE byRes[500]; }NET_DVR_ACS_CFG, *LPNET_DVR_ACS_CFG; typedef struct tagNET_DVR_PLATFORM_VERIFY_CFG { DWORD dwSize; DWORD dwDoorNo; BYTE byResultType; BYTE byRes1[3]; BYTE byScreenDisplay[MAX_SCREEN_DISPLAY_LEN]; BYTE byRes[300]; }NET_DVR_PLATFORM_VERIFY_CFG, *LPNET_DVR_PLATFORM_VERIFY_CFG; typedef struct tagNET_DVR_PERSON_STATISTICS_CFG { DWORD dwSize; BYTE byEnableStatistics; BYTE byEnableOfflineStatistics; BYTE byCountSignalStatisticalStandard; BYTE byRes[605]; }NET_DVR_PERSON_STATISTICS_CFG, *LPNET_DVR_PERSON_STATISTICS_CFG; typedef struct tagNET_DVR_ACS_SCREEN_DISPLAY_CFG { DWORD dwSize; DWORD dwFontSize; DWORD dwRowSpacing; DWORD dwColumnSpacing; DWORD dwFirstRowPosition; BYTE byDegree; BYTE byScreenType; BYTE byRes[306]; }NET_DVR_ACS_SCREEN_DISPLAY_CFG, *LPNET_DVR_ACS_SCREEN_DISPLAY_CFG; typedef struct tagNET_DVR_GATE_TIME_CFG { DWORD dwSize; DWORD dwHoldOnALarmTime; DWORD dwHoldOnGateOpenTime; DWORD dwPostponeIntrusionAlarmTime; DWORD dwNoLaneAccessTimeLimitTime; DWORD dwSafetyZoneStayTime; BYTE byIRTriggerTimeoutTime; BYTE byRes[299]; }NET_DVR_GATE_TIME_CFG, *LPNET_DVR_GATE_TIME_CFG; typedef struct tagNET_DVR_CARD_PASSWD_CFG { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardPassword[CARD_PASSWORD_LEN]; DWORD dwErrorCode; BYTE byCardValid; BYTE byRes2[23]; }NET_DVR_CARD_PASSWD_CFG, *LPNET_DVR_CARD_PASSWD_CFG; typedef struct tagNET_DVR_CARD_PASSWD_STATUS { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwErrorCode; BYTE byRes2[24]; }NET_DVR_CARD_PASSWD_STATUS, *LPNET_DVR_CARD_PASSWD_STATUS; typedef struct tagNET_DVR_VEHICLE_RECOG_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; } NET_DVR_VEHICLE_RECOG_COND, *LPNET_DVR_VEHICLE_RECOG_COND; typedef struct tagNET_DVR_VEHICLE_RECOG_CFG { DWORD dwSize; char sDataIndex[DATA_INDEX_LEN]; WORD wTaskNo; BYTE byRes1[2]; NET_VCA_RECT struPlateRect; char sLicense[MAX_LICENSE_LEN]; DWORD dwRecogOperate; DWORD dwDataUploadType; DWORD dwPostID; NET_DVR_TIME_V30 struPostTime; DWORD dwJsonLen; BYTE *pJsonBuffer; BYTE byRes[107]; BYTE byPicDataType; char sPicDataPath[256]; }NET_DVR_VEHICLE_RECOG_CFG, *LPNET_DVR_VEHICLE_RECOG_CFG; typedef struct tagNET_DVR_VEHICLERECOG_TASK_RESULT { DWORD dwSize; char sDevDataIndex[MAX_DEV_DATAINDEX_LEN]; BYTE byRes[256]; }NET_DVR_VEHICLERECOG_TASK_RESULT, *LPNET_DVR_VEHICLERECOG_TASK_RESULT; typedef struct tagNET_DVR_VEHICLE_RECOG_TASK_COND { DWORD dwSize; DWORD dwChannel; char sDataIndex[DATA_INDEX_LEN]; WORD wTaskNo; BYTE byTask; BYTE byRes1; char sDevDataIndex[MAX_DEV_DATAINDEX_LEN]; BYTE byRes[60]; }NET_DVR_VEHICLE_RECOG_TASK_COND, *LPNET_DVR_VEHICLE_RECOG_TASK_COND; typedef struct tagNET_DVR_VEHICLE_RECOG_TASK_INFO { DWORD dwSize; DWORD dwChannel; char sDataIndex[DATA_INDEX_LEN]; WORD wTaskNo; WORD wTaskProgress; BYTE byTaskState; BYTE byRes1[3]; DWORD dwRecogOperate; DWORD dwPostID; NET_DVR_TIME_V30 struPostTime; DWORD dwJsonLen; BYTE *pJsonBuffer; BYTE byRes[104]; }NET_DVR_VEHICLE_RECOG_TASK_INFO, *LPNET_DVR_VEHICLE_RECOG_TASK_INFO; typedef struct tagNET_DVR_VEHICLE_RECOG_RESULT { DWORD dwSize; char sDataIndex[DATA_INDEX_LEN]; WORD wTaskNo; BYTE byRes[2]; NET_VCA_RECT struPlateRect; char sLicense[MAX_LICENSE_LEN]; BYTE byVehicleType; BYTE byColorDepth; BYTE byColor; BYTE byVehicleLogoRecog; BYTE byVehicleSubLogoRecog; BYTE byPilotSafebelt; BYTE byCopilotSafebelt; BYTE byPilotSunVisor; BYTE byCopilotSunVisor; BYTE byVehicleModel; WORD wVehicleLogoRecog; BYTE byRes1[251]; BYTE byDataType; DWORD dwPicType; BYTE *pVehicleBuffer; DWORD dwVehicleBufferLen ; BYTE *pPlateBuffer; DWORD dwPlateBufferLen ; BYTE *pPilotFaceBuffer; DWORD dwPilotFaceBufferLen ; BYTE *pCopilotFaceBuffer; DWORD dwCopilotFaceBufferLen ; BYTE *pPilotSafebeltBuffer; DWORD dwPilotSafebeltBufferLen ; BYTE *pCopilotSafebeltBuffer; DWORD dwCopilotSafebeltBufferLen ; NET_VCA_RECT struVehicleRect ; NET_VCA_RECT struPilotRect ; NET_VCA_RECT struCopilotRect ; BYTE *pJsonBuffer; DWORD dwJsonBufferLen; DWORD dwPostID; NET_DVR_TIME_V30 struPostTime; BYTE Res2[56]; }NET_DVR_VEHICLE_RECOG_RESULT, *LPNET_DVR_VEHICLE_RECOG_RESULT; #define MAX_ZONE_LINKAGE_CHAN_NUM 4 typedef struct tagNET_DVR_CENTER_SERVER_CFG_ { DWORD dwSize; BYTE byAddressType; BYTE byRes1; WORD wServerPort; union { struct { BYTE szDomain[MAX_DOMAIN_NAME]; BYTE byRes2[80]; }struDomain; struct { NET_DVR_IPADDR struIp; }struAddrIP; }unionServer; WORD wInterval; BYTE byRes3[514]; }NET_DVR_CENTER_SERVER_CFG,*LPNET_DVR_CENTER_SERVER_CFG; typedef struct tagNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG_ { BYTE byDDNSType; BYTE byRes1; WORD wDDNSPort; BYTE byServerAddr[MAX_DOMAIN_NAME]; BYTE byDevName[MAX_DOMAIN_NAME]; BYTE byDevSerialNum[SERIALNO_LEN]; BYTE byAddressType; BYTE byRes2; WORD wDevPort; union { struct { BYTE szDomain[MAX_DOMAIN_NAME]; BYTE byRes2[80]; }struDomain; struct { NET_DVR_IPADDR struIp; }struAddrIP; }unionDevAddr; BYTE sUserName[NAME_LEN]; BYTE sPassword[PASSWD_LEN]; DWORD dwChannel; BYTE byRes3[32]; }NET_DVR_SINGLE_CHANNEL_LINKAGE_CFG,*LPNET_DVR_SINGLE_CHANNEL_LINKAGE_CFG; typedef struct tagNET_DVR_REGION_CHANNEL_LINKAGE_CFG_ { DWORD dwSize; NET_DVR_SINGLE_CHANNEL_LINKAGE_CFG struLinkChannels[MAX_ZONE_LINKAGE_CHAN_NUM]; BYTE byRes[64]; }NET_DVR_ZONE_CHANNEL_LINKAGE_CFG,*LPNET_DVR_ZONE_CHANNEL_LINKAGE_CFG; typedef struct tagNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG { BYTE byDevSerialNo[SERIALNO_LEN]; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_SINGLE_ASSOCIATED_CHAN_CFG, *LPNET_DVR_SINGLE_ASSOCIATED_CHAN_CFG; typedef struct tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG { WORD wZoneNo; BYTE byRes1[2]; NET_DVR_SINGLE_ASSOCIATED_CHAN_CFG struSingleChanCfg[MAX_ZONE_LINKAGE_CHAN_NUM]; BYTE byRes2[64]; }NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG, *LPNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG; typedef struct tagNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST_ { DWORD dwSize; NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG struAssociatedChanCfg[MAX_MAX_ALARMIN_NUM]; BYTE byRes[64]; }NET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST, *LPNET_DVR_ALARMIN_ASSOCIATED_CHAN_CFG_LIST; typedef struct tagNET_DVR_LCD_ALARM { DWORD dwSize; DWORD dwScreenID; BYTE byOnOffLine; BYTE byTempState; BYTE byFanState; BYTE byFanException; BYTE byTemperature; BYTE byRes[27]; }NET_DVR_LCD_ALARM, *LPNET_DVR_LCD_ALARM; typedef struct tagNET_DVR_SENSOR_INFO_UPLOAD { DWORD dwSize; NET_DVR_TIME_V30 struTime; char szSensorName[MAX_SENSORNAME_LEN]; char szSensorChan[MAX_SENSORCHAN_LEN]; BYTE byReboot; BYTE byPowerSupply; BYTE byStatusType; BYTE bySensorType; float fVoltageValue; float fCurrentValue; float fActualValue; char szDescription[MAX_DESCRIPTION_LEN ]; BYTE byRes1[128]; }NET_DVR_SENSOR_INFO_UPLOAD,*LPNET_DVR_SENSOR_INFO_UPLOAD; typedef struct tagNET_DVR_CAPTURE_UPLOAD { DWORD dwSize; NET_DVR_TIME_V30 struTime; DWORD dwChannel; char szDevName[MAX_DEVNAME_LEN_EX]; DWORD dwPicLen; BYTE *pBuffer; BYTE byRes[124]; }NET_DVR_CAPTURE_UPLOAD,*LPNET_DVR_CAPTURE_UPLOAD; typedef struct tagNET_DVR_PANORAMIC_LINKAGE { DWORD dwSize; DWORD dwChannel; BYTE byType; BYTE byRes1[3]; BYTE byMACAddr[MACADDR_LEN]; BYTE byRes2[2]; NET_DVR_IPADDR struDevIP; DWORD dwPicLen; char *pPicBuff; BYTE byRes[128]; }NET_DVR_PANORAMIC_LINKAGE, *LPNET_DVR_PANORAMIC_LINKAGE; #define MAX_MASK_AREA_NUM 8 typedef struct tagNET_DVR_AREA_MASK_CFG { DWORD dwSize; BYTE byEnable; BYTE byMaskThick; BYTE byAutoMask; BYTE byRes1; NET_VCA_RECT struRegion[MAX_MASK_AREA_NUM]; BYTE byRes[64]; }NET_DVR_AREA_MASK_CFG, *LPNET_DVR_AREA_MASK_CFG; typedef struct tagNET_DVR_AUDIO_DIACRITICAL_CFG { DWORD dwSize; BYTE byEnable; char byBassValue; BYTE byRes[62]; }NET_DVR_AUDIO_DIACRITICAL_CFG, *LPNET_DVR_AUDIO_DIACRITICAL_CFG; typedef struct tagNET_DVR_RESOLUTION_SWITCH { DWORD dwSize; BYTE byResolutionType; BYTE byRes[127]; }NET_DVR_RESOLUTION_SWITCH, *LPNET_DVR_RESOLUTION_SWITCH; typedef struct tagNET_DVR_WIFI_DHCP_ADDR_CFG { DWORD dwSize; NET_DVR_IPADDR struStartAddr; NET_DVR_IPADDR struEndAddr; BYTE byRes[256]; }NET_DVR_WIFI_DHCP_ADDR_CFG, *LPNET_DVR_WIFI_DHCP_ADDR_CFG; typedef struct tagNET_DVR_WIFI_CLIENT_INFO { DWORD dwSize; NET_DVR_IPADDR struAddress; BYTE byMACAddr [MACADDR_LEN]; WORD wConnSpeed; BYTE byRSSIValue; BYTE byRes1; WORD wBandwidth; BYTE byRes[32]; }NET_DVR_WIFI_CLIENT_INFO, *LPNET_DVR_WIFI_CLIENT_INFO; typedef struct tagNET_DVR_MULTISTREAM_RELATION_CHAN_CFG { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_MULTISTREAM_RELATION_CHAN_CFG, *LPNET_DVR_MULTISTREAM_RELATION_CHAN_CFG; typedef struct tagNET_DVR_RING_PORT_PROPERTY { BYTE byPort; BYTE byMasterSlaveProperty; BYTE byPortEthernetType; BYTE byRes[9]; }NET_DVR_RING_PORT_PROPERTY, *LPNET_DVR_RING_PORT_PROPERTY; typedef struct tagNET_DVR_NS_RING_CFG { DWORD dwSize; BYTE byEnable; BYTE byProtoType; BYTE byBandWidth; BYTE byRes1; NET_DVR_RING_PORT_PROPERTY struRingPort[PER_RING_PORT_NUM]; BYTE byRes2[60]; }NET_DVR_NS_RING_CFG, *LPNET_DVR_NS_RING_CFG; typedef struct tagNET_DVR_NS_RING_STATUS { DWORD dwSize; BYTE byStatus; BYTE byMasterSlaveProperty ; BYTE byRes[62]; } NET_DVR_NS_RING_STATUS, *LPNET_DVR_NS_RING_STATUS; typedef struct tagNET_DVR_FIREDETECTION_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; WORD wPanPos; WORD wTiltPos; WORD wZoomPos; BYTE byRes1[2]; DWORD dwPicDataLen; BYTE *pBuffer; NET_VCA_RECT struRect; NET_VCA_POINT struPoint ; WORD wFireMaxTemperature ; WORD wTargetDistance ; BYTE byStrategyType; BYTE byAlarmSubType; BYTE byPTZPosExEnable; BYTE byRes2; NET_PTZ_INFO struPtzPosEx; DWORD dwVisiblePicLen; BYTE *pVisiblePicBuf; BYTE *pSmokeBuf; WORD wDevInfoIvmsChannelEx; BYTE byRes3; BYTE byFireScanWaitMode; DWORD dwVisibleChannel; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[49]; } NET_DVR_FIREDETECTION_ALARM,*LPNET_DVR_FIREDETECTION_ALARM; typedef struct tagNET_DVR_SMOKEDETECTION_CFG { BYTE byEnable; BYTE bySensitivity; BYTE byPatrolSensitivity; BYTE byDoubleCheckSensitivity; BYTE byRes[56]; }NET_DVR_SMOKEDETECTION_CFG, *LPNET_DVR_SMOKEDETECTION_CFG; typedef struct tagNET_DVR_ALARMSTRATEGY_PARAM { BYTE byStrategyType; BYTE byRes[15]; }NET_DVR_ALARMSTRATEGY_PARAM, *LPNET_DVR_ALARMSTRATEGY_PARAM; typedef struct tagNET_DVR_FIREDETECTION_CFG { DWORD dwSize; BYTE byEnabled; BYTE bySensitivity; BYTE byFireComfirmTime; BYTE byFireRegionOverlay; BYTE byDetectionMode; BYTE byFireFocusMode; BYTE byFireZoomMode; BYTE byFirezoomLevel; BYTE bySmokeFireEnabled; BYTE byFireManualWaitEnabled; BYTE byCancelRepeatedAlarmEnabled; BYTE byApplicationSceneMode; DWORD dwInstallationHeight; BYTE byRes[40]; NET_DVR_ALARMSTRATEGY_PARAM struAlarmStrategy; NET_DVR_SMOKEDETECTION_CFG struSmokeCfg; }NET_DVR_FIREDETECTION_CFG,*LPNET_DVR_FIREDETECTION_CFG; typedef struct tagNET_DVR_THERMALPOWER_PARAM { DWORD dwSize; BYTE byPowerSwitch; BYTE byRes[123]; }NET_DVR_THERMALPOWER_PARAM, *LPNET_DVR_THERMALPOWER_PARAM; typedef struct tagNET_DVR_PTZABSOLUTEEX_CFG { DWORD dwSize; NET_PTZ_INFO struPTZCtrl; DWORD dwFocalLen; float fHorizontalSpeed; float fVerticalSpeed; BYTE byZoomType; BYTE byRes[123]; }NET_DVR_PTZABSOLUTEEX_CFG, *LPNET_DVR_PTZABSOLUTEEX_CFG; #define MAX_PLAYLIST_NUM 50 #define MAX_PLAYPLAN_NUM 50 #define MAX_LEN_256 256 #define MAX_GROUP_RECORD_NUM 10 typedef struct tagNET_DVR_AREA_MONITOR_COND { DWORD dwSize; DWORD dwAreaID; DWORD dwMonitorID; BYTE byIsNeedGroup; BYTE byRes [127]; }NET_DVR_AREA_MONITOR_COND,*LPNET_DVR_AREA_MONITOR_COND; typedef struct tagNET_DVR_DEL_MONITOR_COND { DWORD dwSize; BYTE byDelType; DWORD dwAreaID; DWORD dwMonitorID; BYTE byRes[64]; }NET_DVR_DEL_MONITOR_COND,*LPNET_DVR_DEL_MONITOR_COND; typedef struct tagNET_DVR_BLACKLIST_ALARM_COND { DWORD dwSize; BYTE byType; BYTE byRes1[3]; DWORD dwFaceID; DWORD dwMaxSnapNum; BYTE byRes[256]; }NET_DVR_BLACKLIST_ALARM_COND, *LPNET_DVR_BLACKLIST_ALARM_COND; typedef struct tagNET_DVR_STORAGE_RESOURCE_COND { DWORD dwSize; DWORD dwStorageID; BYTE byRes[64]; }NET_DVR_STORAGE_RESOURCE_COND, *LPNET_DVR_STORAGE_RESOURCE_COND; typedef struct tagNET_DVR_BLACKLIST_ALARM_RECORD { DWORD dwSize; DWORD dwSnapFacePicID; DWORD dwRegisterID; DWORD dwGroupNo; BYTE byRes[128]; }NET_DVR_BLACKLIST_ALARM_RECORD, *LPNET_DVR_BLACKLIST_ALARM_RECORD; typedef struct tagNET_DVR_BLACKLIST_GROUP_INFO { DWORD dwSize; DWORD dwGroupID; DWORD dwGroupNo; BYTE byGroupType; BYTE byRes1; WORD wThreshold; DWORD dwListNum; BYTE szGroupName[NAME_LEN]; BYTE szRemark[MAX_LEN_256]; BYTE byStorageAddr[MAX_DOMAIN_NAME]; WORD wStoragePort; BYTE byRes[126]; }NET_DVR_BLACKLIST_GROUP_INFO, *LPNET_DVR_BLACKLIST_GROUP_INFO; typedef struct tagNET_DVR_SINGLE_BLACKLIST_GROUP_RECORD { DWORD dwSize; DWORD dwGroupRecordID; DWORD dwGroupNo; DWORD dwFaceDBID; DWORD dwFaceRecordID; BYTE byAlarmLevel; BYTE byRes1[3]; NET_DVR_ADDR_DOMAIN_INFO struStorageAddr; BYTE byRes[256]; }NET_DVR_SINGLE_BLACKLIST_GROUP_RECORD,*LPNET_DVR_SINGLE_BLACKLIST_GROUP_RECORD; typedef struct tagNET_DVR_BLACKLIST_GROUP_RECORD_COND { DWORD dwSize; DWORD dwRecordID; BYTE byRes[64]; }NET_DVR_BLACKLIST_GROUP_RECORD_COND, *LPNET_DVR_BLACKLIST_GROUP_RECORD_COND; typedef struct tagNET_DVR_BLACKLIST_GROUP_RECORD_CFG { DWORD dwSize; DWORD dwRecordNum; NET_DVR_SINGLE_BLACKLIST_GROUP_RECORD struRecord[MAX_GROUP_RECORD_NUM]; BYTE byRes[256]; }NET_DVR_BLACKLIST_GROUP_RECORD_CFG,*LPNET_DVR_BLACKLIST_GROUP_RECORD_CFG; typedef struct tagNET_DVR_BLACKLIST_GROUP_CFG { DWORD dwSize; DWORD dwGroupNum; NET_DVR_BLACKLIST_GROUP_INFO struGroup[MAX_GROUP_RECORD_NUM]; BYTE byRes[256]; }NET_DVR_BLACKLIST_GROUP_CFG,*LPNET_DVR_BLACKLIST_GROUP_CFG; typedef struct tagNET_DVR_BLACKLIST_GROUP_COND { DWORD dwSize; DWORD dwGroupID; BYTE byRes[64]; }NET_DVR_BLACKLIST_GROUP_COND, *LPNET_DVR_BLACKLIST_GROUP_COND; typedef struct tagNET_DVR_SENSOR_VALUE { float fMinValue; float fMaxValue; BYTE byRes[8]; }NET_DVR_SENSOR_VALUE, *LPNET_DVR_SENSOR_VALUE; typedef struct tagNET_DVR_HISTORICAL_QUERY_PARAM { NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; NET_DVR_SENSOR_VALUE struVoltageValue; NET_DVR_SENSOR_VALUE struCurrentValue; NET_DVR_SENSOR_VALUE struTemperatureValue; NET_DVR_SENSOR_VALUE struHumidityValue; BYTE bySwitchStatus; BYTE bySensorStatus; BYTE byRes[66]; }NET_DVR_HISTORICAL_QUERY_PARAM, *LPNET_DVR_HISTORICAL_QUERY_PARAM; typedef struct tagNET_DVR_SENSOR_COND { DWORD dwSize; BYTE byQueryType; BYTE byDeviceType; BYTE byDeviceID; BYTE byRes1; NET_DVR_HISTORICAL_QUERY_PARAM struHistoricalQueryParam; BYTE byRes[64]; }NET_DVR_SENSOR_COND,*LPNET_DVR_SENSOR_COND; typedef struct tagNET_DVR_SENSOR_CFG { DWORD dwSize; BYTE byEnable; BYTE byDeviceType; BYTE byDeviceID; BYTE byRes1; NET_DVR_TIME_V30 struTime; BYTE byIsFirst; BYTE byIsSwitchOn; BYTE bySensorStatus; BYTE bySensorType; float fVoltage; float fCurrent; float fTemperatureValue; float fHumidityValue; BYTE bySensorName[SENSORNAME_LEN]; BYTE byDescription[MAX_SENSORDESCR_LEN]; float fActualValue; BYTE byUnit[SENSORUNIT_LEN]; BYTE byRes[220]; }NET_DVR_SENSOR_CFG,*LPNET_DVR_SENSOR_CFG; typedef struct tagNET_DVR_SENSOR_SWITCH_COND { DWORD dwSize; BYTE byDeviceType; BYTE byDeviceID; BYTE bySwitch; BYTE byRes[125]; }NET_DVR_SENSOR_SWITCH_COND,*LPNET_DVR_SENSOR_SWITCH_COND; typedef struct tagNET_DVR_GB28181_SERVICE_CFG { DWORD dwSize; BYTE byServerID[DEV_ID_LEN]; WORD wPort; BYTE byRes1[2]; BYTE byAuthPasswd[PASSWD_LEN]; DWORD dwRegisterValid; BYTE byMaxHeartbeatTimeOut; BYTE byAutoAddIpc; BYTE byAuthPasswdEx[MAX_PASSWD_LEN_EX]; BYTE byRes[190]; }NET_DVR_GB28181_SERVICE_CFG,*LPNET_DVR_GB28181_SERVICE_CFG; typedef struct tagNET_DVR_ACTIVATECFG { DWORD dwSize; BYTE sPassword[PASSWD_LEN]; BYTE byRes[108]; }NET_DVR_ACTIVATECFG,*LPNET_DVR_ACTIVATECFG; typedef struct tagNET_DVR_IPDEVICE_ACTIVATE_CFG { DWORD dwSize; BYTE byMode; BYTE bySelfDefinePassword; BYTE sPassword[PASSWD_LEN]; BYTE sUserName[NAME_LEN]; BYTE byRes[78]; union { BYTE byLen[512]; struct { DWORD dwChannelNo; BYTE byRes[508]; }struChannelInfo; struct { NET_DVR_IPADDR struIp; WORD wPort; BYTE sProtocolDesc[DESC_LEN]; BYTE byMacAddr[MACADDR_LEN]; BYTE byRes[344]; }struAddrInfo; }unActivateDeviceInfo; }NET_DVR_IPDEVICE_ACTIVATE_CFG,*LPNET_DVR_IPDEVICE_ACTIVATE_CFG; typedef struct tagNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS_ { DWORD dwSize; BYTE byDigitalChanPasswordStatus[MAX_CHANNUM_V30*4]; BYTE byRes[1140]; }NET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS, *LPNET_DVR_DIGITAL_CHANNEL_SECURITY_STATUS; typedef struct tagNET_DVR_CAMERACHAN_SERIALCFG { DWORD dwSize; DWORD dwBaudRate; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; WORD wPTZProtocol; BYTE byRes1[6]; DWORD dwSerialPort; BYTE bySerialAddress; BYTE byRes[15]; }NET_DVR_CAMERACHAN_SERIALCFG, *LPNET_DVR_CAMERACHAN_SERIALCFG; #define MAX_MATRIX_SUBBOARD_NUM 16 #define MAX_MATRIX_SUBBOARD_NUM_V51 32 #define MAX_BOARD_SUBSYSTEM_NUM 12 typedef struct tagNET_DVR_SUBSYSTEM_STATUS { BYTE bySubSystemType; BYTE bySubSystemNo; BYTE byOnlineStatus; BYTE byRes[49]; }NET_DVR_SUBSYSTEM_STATUS, *LPNET_DVR_SUBSYSTEM_STATUS; typedef struct tagNET_DVR_MATRIX_SUBBOARD { BYTE byBoardNo; BYTE byPcieConnectStatus; BYTE byRes[2]; DWORD dwHardwareVersion; DWORD dwPcieBandwidth; DWORD dwTemperature; NET_DVR_SUBSYSTEM_STATUS struSubsystemStatus[MAX_BOARD_SUBSYSTEM_NUM]; BYTE byRes2[16]; }NET_DVR_MATRIX_SUBBOARD, *LPNET_DVR_MATRIX_SUBBOARD; typedef struct tagNET_DVR_MATRIX_STATUS { DWORD dwSize; BYTE byMainFrameType; BYTE bySoltNum; BYTE byBoardNum; BYTE byRes; NET_DVR_MATRIX_SUBBOARD struMatrixSubboard[MAX_MATRIX_SUBBOARD_NUM]; BYTE byRes2[48]; }NET_DVR_MATRIX_STATUS, *LPNET_DVR_MATRIX_STATUS; typedef struct tagNET_DVR_MATRIX_SUBBOARD_V50 { BYTE byBoardNo; BYTE byPcieConnectStatus; BYTE byRes; BYTE byTemperatureAlarm; DWORD dwHardwareVersion; DWORD dwPcieBandwidth; DWORD dwTemperature; NET_DVR_SUBSYSTEM_STATUS struSubsystemStatus[MAX_BOARD_SUBSYSTEM_NUM]; BYTE bySubboardModel[32]; BYTE byRes1[32]; }NET_DVR_MATRIX_SUBBOARD_V50, *LPNET_DVR_MATRIX_SUBBOARD_V50; typedef struct tagNET_DVR_MATRIX_STATUS_V50 { DWORD dwSize; BYTE byMainFrameType; BYTE bySoltNum; BYTE byBoardNum; BYTE byLCDPanelStatus; NET_DVR_MATRIX_SUBBOARD_V50 struMatrixSubboard[MAX_MATRIX_SUBBOARD_NUM]; DWORD dwFanSequence; DWORD dwFanConnectStatus; DWORD dwFanOperationStatus; BYTE byDeviceModel[32]; BYTE byPowerNums; BYTE byMainBoardNums; BYTE byHotStandbyMode; BYTE byRes[29]; }NET_DVR_MATRIX_STATUS_V50, *LPNET_DVR_MATRIX_STATUS_V50; typedef struct tagNET_DVR_MATRIX_SUBBOARD_V51 { BYTE byBoardNo; BYTE byPcieConnectStatus; BYTE byRes1; BYTE byTemperatureAlarm; DWORD dwHardwareVersion; DWORD dwPcieBandwidth; DWORD dwTemperature; NET_DVR_SUBSYSTEM_STATUS struSubsystemStatus[MAX_BOARD_SUBSYSTEM_NUM]; BYTE bySubboardModel[32]; BYTE byRes2[128]; }NET_DVR_MATRIX_SUBBOARD_V51, *LPNET_DVR_MATRIX_SUBBOARD_V51; typedef struct tagNET_DVR_MATRIX_STATUS_V51 { DWORD dwSize; BYTE byMainFrameType; BYTE bySoltNum; BYTE byBoardNum; BYTE byLCDPanelStatus; NET_DVR_MATRIX_SUBBOARD_V51 struMatrixSubboard[MAX_MATRIX_SUBBOARD_NUM_V51]; DWORD dwFanSequence; DWORD dwFanConnectStatus; DWORD dwFanOperationStatus; BYTE byDeviceModel[32]; BYTE byFanSpeed[32]; BYTE byMainMemUsed; BYTE byMainCpuUsed; BYTE byNetwordUsed; BYTE byRes1; DWORD dwMainSoftwareVer; BYTE byPowerNums; BYTE byMainBoardNums; BYTE byHotStandbyMode; BYTE byRes2[125]; }NET_DVR_MATRIX_STATUS_V51, *LPNET_DVR_MATRIX_STATUS_V51; typedef struct _NET_DVR_SUBWIND_INFO { DWORD dwSize; DWORD dwSubWndNo; BYTE byRes[8]; } NET_DVR_SUBWIND_INFO, *LPNET_DVR_SUBWIND_INFO; typedef struct tagNET_DVR_FUSION_SCALE { DWORD dwSize; WORD wWidth; WORD wHeight; BYTE byRes[32]; }NET_DVR_FUSION_SCALE, *LPNET_DVR_FUSION_SCALE; typedef struct tagNET_DVR_FUSION_CFG { DWORD dwSize; BYTE byFusion; BYTE byUseHistoryMap; BYTE byRes[30]; }NET_DVR_FUSION_CFG, *LPNET_DVR_FUSION_CFG; typedef struct tagNET_DVR_MULTIFUNCTION_SERIALCFG { DWORD dwSize ; BYTE byVariable ; BYTE bySerialWorkMode; BYTE byFunType; BYTE byDataBit; BYTE byStopBit; BYTE byParity; BYTE byFlowcontrol; BYTE byRes1 ; DWORD dwBaudRate; WORD wProtocol; BYTE byRes[34]; }NET_DVR_MULTIFUNCTION_SERIALCFG, *LPNET_DVR_MULTIFUNCTION_SERIALCFG; typedef struct tagNET_DVR_PTZ_3D_SPEED_CONTROL { DWORD dwSize; DWORD dwChannel; BYTE byPSpeed; BYTE byTSpeed; BYTE byZSpeed; BYTE byPDirect; BYTE byTDirect; BYTE byZDirect; BYTE byRes[18]; }NET_DVR_PTZ_3D_SPEED_CONTROL, *LPNET_DVR_PTZ_3D_SPEED_CONTROL; typedef struct tagNET_DVR_SENSOR_PARAM { BYTE bySensorType; BYTE byRes[31]; float fHorWidth; float fVerWidth; float fFold; }NET_DVR_SENSOR_PARAM,*LPNET_DVR_SENSOR_PARAM; typedef struct tagNET_DVR_LLI_PARAM { float fSec; BYTE byDegree; BYTE byMinute; BYTE byRes[6]; }NET_DVR_LLI_PARAM, *LPNET_DVR_LLI_PARAM; typedef struct tagNET_DVR_LLPOS_PARAM { BYTE byLatitudeType; BYTE byLongitudeType; BYTE byRes1[2]; NET_DVR_LLI_PARAM struLatitude; NET_DVR_LLI_PARAM struLongitude; BYTE byRes[16]; }NET_DVR_LLPOS_PARAM, *LPNET_DVR_LLPOS_PARAM; typedef struct tagNET_DVR_SMOKEDETECTION_ALARM { NET_PTZ_INFO struPTZPos; NET_PTZ_INFO struThermalPTZPos; NET_DVR_LLPOS_PARAM struLLPos; NET_VCA_RECT struSmokePos; BYTE byRes[256]; }NET_DVR_SMOKEDETECTION_ALARM, *LPNET_DVR_SMOKEDETECTION_ALARM; typedef struct tagNET_DVR_PTZPOS_PARAM { float fPanPos; float fTiltPos; float fZoomPos; BYTE byRes[16] ; }NET_DVR_PTZPOS_PARAM, *LPNET_DVR_PTZPOS_PARAM; typedef struct tagNET_DVR_GIS_UPLOADINFO { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; float fAzimuth; BYTE byLatitudeType ; BYTE byLongitudeType ; BYTE byRes1[2] ; NET_DVR_LLI_PARAM struLatitude; NET_DVR_LLI_PARAM struLongitude; float fHorizontalValue; float fVerticalValue; float fVisibleRadius; float fMaxViewRadius; NET_DVR_SENSOR_PARAM struSensorParam; NET_DVR_PTZPOS_PARAM struPtzPos; BYTE byRes[256]; }NET_DVR_GIS_UPLOADINFO,*LPNET_DVR_GIS_UPLOADINFO; typedef struct tagNET_DVR_VANDALPROOF_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; BYTE byRes[256]; }NET_DVR_VANDALPROOF_ALARM,*LPNET_DVR_VANDALPROOF_ALARM; typedef struct tagNET_DVR_CENTRALIZEDCTRL_CFG { DWORD dwSize; BYTE byEnable; BYTE byLatitudeType ; BYTE byLongitudeType ; BYTE byRes1; NET_DVR_LLI_PARAM struLatitude; NET_DVR_LLI_PARAM struLongitude; DWORD dwTimeOut; BYTE byControlType; BYTE byRes[127]; }NET_DVR_CENTRALIZEDCTRL_CFG,*LPNET_DVR_CENTRALIZEDCTRL_CFG; typedef struct tagNET_DVR_GIS_INFO { DWORD dwSize; float fAzimuth; float fHorizontalValue; float fVerticalValue; float fVisibleRadius; float fMaxViewRadius; BYTE byLatitudeType ; BYTE byLongitudeType ; BYTE byPTZPosExEnable; BYTE byRes1; NET_DVR_LLI_PARAM struLatitude; NET_DVR_LLI_PARAM struLongitude; NET_DVR_PTZPOS_PARAM struPtzPos; NET_DVR_SENSOR_PARAM struSensorParam; NET_PTZ_INFO struPtzPosEx; float fMinHorizontalValue; float fMaxHorizontalValue; float fMinVerticalValue; float fMaxVerticalValue; BYTE byRes[220]; }NET_DVR_GIS_INFO,*LPNET_DVR_GIS_INFO; typedef struct tagNET_DVR_CRUISE_PARAM { DWORD dwSize; BYTE byCruiseMode; BYTE byRes[123]; }NET_DVR_CRUISE_PARAM, *LPNET_DVR_CRUISE_PARAM; typedef struct tagNET_DVR_TEMP_HUMI_INFO { DWORD dwSize; NET_DVR_TIME_V30 struCurrentTime; float fTemperature; float fHumidity; BYTE byRes[256]; }NET_DVR_TEMP_HUMI_INFO, *LPNET_DVR_TEMP_HUMI_INFO; typedef struct tagNET_SDK_POINT_THERMOMETRY { float fPointTemperature; NET_VCA_POINT struPoint; BYTE byRes[20]; }NET_SDK_POINT_THERMOMETRY, *LPNET_SDK_POINT_THERMOMETRY; typedef struct tagNET_SDK_REGION_THERMOMETRY { float fMaxTemperature; float fMinTemperature; float fAverageTemperature; float fTemperatureDiff; NET_VCA_POLYGON struRegion; BYTE byRes[20]; }NET_SDK_REGION_THERMOMETRY, *LPNET_SDK_REGION_THERMOMETRY; typedef struct tagNET_SDK_MANUALTHERM_RULE { BYTE byRuleID; BYTE byEnable; BYTE byRes1[2]; char szRuleName[NAME_LEN]; BYTE byRuleCalibType; BYTE byRes2[3]; NET_SDK_POINT_THERMOMETRY struPointTherm; NET_SDK_REGION_THERMOMETRY struRegionTherm; BYTE byRes[512]; }NET_SDK_MANUALTHERM_RULE, *LPNET_SDK_MANUALTHERM_RULE; typedef struct tagNET_SDK_MANUAL_THERMOMETRY { DWORD dwSize; DWORD dwChannel; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byThermometryUnit; BYTE byDataType; BYTE byRes1[6]; NET_SDK_MANUALTHERM_RULE struRuleInfo; BYTE byRes[512]; }NET_SDK_MANUAL_THERMOMETRY, *LPNET_SDK_MANUAL_THERMOMETRY; typedef struct tagNET_SDK_MANUALTHERM_BASICPARAM { DWORD dwSize; WORD wDistance; BYTE byDistanceUnit; BYTE byRes1[1]; float fEmissivity; BYTE byRes[64]; }NET_SDK_MANUALTHERM_BASICPARAM, *LPNET_SDK_MANUALTHERM_BASICPARAM; typedef struct tagNET_SDK_FIRESHIELDMASK_REGION { DWORD dwSize; BYTE byMaskID; BYTE byEnabled; BYTE byShieldZoom; BYTE byMaskType; BYTE byRegionType; BYTE byShowEnabled; BYTE byRes1[2]; char szMaskName[NAME_LEN]; NET_VCA_POLYGON struRegion; BYTE byRes[32]; }NET_SDK_FIRESHIELDMASK_REGION, *LPNET_SDK_FIRESHIELDMASK_REGION; #define MAX_FIRESHIELDMASK_REGION 24 typedef struct tagNET_SDK_FIRESHIELDMASK_CFG { DWORD dwSize; BYTE byEnabled; BYTE byShieldAreaTransparency; BYTE byDisplayShieldAreaEnabled; BYTE byRes1[1]; NET_SDK_FIRESHIELDMASK_REGION struMaskRegion[MAX_FIRESHIELDMASK_REGION]; BYTE byRes[256]; }NET_SDK_FIRESHIELDMASK_CFG, *LPNET_SDK_FIRESHIELDMASK_CFG; typedef struct tagNET_SDK_SMOKESHIELDMASK_REGION { DWORD dwSize; BYTE byMaskID; BYTE byEnabled; BYTE byShieldZoom; BYTE byMaskType; BYTE byRegionType; BYTE byShowEnabled; BYTE byRes1[2]; char szMaskName[NAME_LEN]; NET_VCA_POLYGON struRegion; BYTE byRes[32]; }NET_SDK_SMOKESHIELDMASK_REGION, *LPNET_SDK_SMOKESHIELDMASK_REGION; #define MAX_SMOKESHIELDMASK_REGION 24 typedef struct tagNET_SDK_SMOKESHIELDMASK_CFG { DWORD dwSize; BYTE byEnabled; BYTE byShieldAreaTransparency; BYTE byDisplayShieldAreaEnabled; BYTE byRes1[1]; NET_SDK_SMOKESHIELDMASK_REGION struMaskRegion[MAX_SMOKESHIELDMASK_REGION]; BYTE byRes[256]; }NET_SDK_SMOKESHIELDMASK_CFG, *LPNET_SDK_SMOKESHIELDMASK_CFG; typedef struct tagNET_SDK_AREASCAN_CFG { DWORD dwSize; BYTE byScanState; BYTE byRes[259]; }NET_SDK_AREASCAN_CFG, *LPNET_SDK_AREASCAN_CFG; typedef struct tagNET_SDK_FIRESHIELDMASK_COND { DWORD dwSize; DWORD dwChannel; BYTE byRegionID; BYTE byRes[127]; }NET_SDK_FIRESHIELDMASK_COND, *LPNET_SDK_FIRESHIELDMASK_COND; typedef struct tagNET_SDK_SMOKESHIELDMASK_COND { DWORD dwSize; DWORD dwChannel; BYTE byRegionID; BYTE byRes[127]; }NET_SDK_SMOKESHIELDMASK_COND, *LPNET_SDK_SMOKESHIELDMASK_COND; typedef struct tagNET_DVR_VANDALPROOFALARM_CFG { DWORD dwSize; BYTE bySensitivity; BYTE byUploadEnabled; BYTE byVoiceWarningEnabled; BYTE byEnable; BYTE byRes[124]; }NET_DVR_VANDALPROOFALARM_CFG,*LPNET_DVR_VANDALPROOFALARM_CFG; typedef struct tagNET_DVR_AZIMUTHINFO { DWORD dwSize; float fDegree; BYTE byAzimuth; BYTE byRes[127]; }NET_DVR_AZIMUTHINFO,*LPNET_DVR_AZIMUTHINFO; typedef struct tagNET_DVR_COMPASS_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[128]; }NET_DVR_COMPASS_COND,*LPNET_DVR_COMPASS_COND; typedef struct tagNET_DVR_POSITION_CFG { DWORD dwSize; BYTE bySoftWorkMode; BYTE byRes[127]; }NET_DVR_POSITION_CFG,*LPNET_DVR_POSITION_CFG; typedef struct tagNET_DVR_STREAMING_COND { DWORD dwSize; DWORD dwChannel; BYTE byStreamType; BYTE byRes[127]; }NET_DVR_STREAMING_COND,*LPNET_DVR_STREAMING_COND; typedef struct tagNET_DVR_SATELLITETIME_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes; WORD wTimeInterval; BYTE byRes1[124]; }NET_DVR_SATELLITETIME_CFG,*LPNET_DVR_SATELLITETIME_CFG; #define MAX_SIGNAL_JOINT_NUM 64 typedef struct tagNET_DVR_SIGNAL_JOINT_CFG { DWORD dwSize; BYTE sCamName[NAME_LEN] ; BYTE byEnable; BYTE byCamMode ; BYTE byRows ; BYTE byColumns ; DWORD dwSignalNo[MAX_SIGNAL_JOINT_NUM]; DWORD dwJointNo; DWORD dwSignalNoJoint; BYTE byRes[64]; } NET_DVR_SIGNAL_JOINT_CFG, *LPNET_DVR_SIGNAL_JOINT_CFG; typedef struct tagNET_DVR_SIGNAL_CUTPARAM { DWORD dwSize; DWORD dwSignalNo; DWORD dwCutTop; DWORD dwCutBottom; DWORD dwCutLeft; DWORD dwCutRight; BYTE byRes2[32]; } NET_DVR_SIGNAL_CUTPARAM, *LPNET_DVR_SIGNAL_CUTPARAM; typedef struct tagNET_DVR_WALL_RELATION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRealWallNo ; BYTE byRes[14] ; }NET_DVR_WALL_RELATION_CFG, *LPNET_DVR_WALL_RELATION_CFG; typedef struct tagNET_DVR_INPUTSTREAMCFG_V40 { DWORD dwSize ; BYTE byValid ; BYTE byCamMode ; WORD wInputNo ; BYTE sCamName[NAME_LEN] ; NET_DVR_VIDEOEFFECT struVideoEffect ; NET_DVR_PU_STREAM_CFG struPuStream ; WORD wBoardNum ; WORD wInputIdxOnBoard ; DWORD dwResolution ; BYTE byVideoFormat ; BYTE byStatus; BYTE sGroupName[NAME_LEN]; BYTE byJointMatrix ; BYTE byJointNo ; BYTE byColorMode; BYTE byScreenServer; BYTE byDevNo; BYTE byRes1; DWORD dwInputSignalNo; BYTE byVideoEnctype; BYTE byAudioEnctype; BYTE byRes[118]; }NET_DVR_INPUTSTREAMCFG_V40, *LPNET_DVR_INPUTSTREAMCFG_V40 ; typedef struct tagNET_DVR_AUDIO_CONTROL_INFO { DWORD dwSize; DWORD dwMonId; BYTE bySubWindowNum; BYTE byWallNo; BYTE byEnable; BYTE byRes[13]; }NET_DVR_AUDIO_CONTROL_INFO,*LPNET_DVR_AUDIO_CONTROL_INFO; typedef struct tagNET_DVR_INPUTSTREAM_PTZCFG_PARAM { DWORD dwSize; WORD wPTZProtocol; BYTE byRes[34]; }NET_DVR_INPUTSTREAM_PTZCFG_PARAM, *LPNET_DVR_INPUTSTREAM_PTZCFG_PARAM; typedef enum { AXLE_TYPE_UNKNOWN = 0x0000, AXLE_TYPE_2AXLE_12 = 0x0200, AXLE_TYPE_3AXLE_122_1 = 0x0300, AXLE_TYPE_3AXLE_122_2, AXLE_TYPE_3AXLE_15, AXLE_TYPE_3AXLE_112, AXLE_TYPE_4AXLE_125_1 = 0x0400, AXLE_TYPE_4AXLE_152, AXLE_TYPE_4AXLE_125_2, AXLE_TYPE_4AXLE_1222, AXLE_TYPE_4AXLE_115, AXLE_TYPE_5AXLE_155_1 = 0x0500, AXLE_TYPE_5AXLE_1125_1, AXLE_TYPE_5AXLE_155_2, AXLE_TYPE_5AXLE_1125_2, AXLE_TYPE_5AXLE_129, AXLE_TYPE_5AXLE_1522, AXLE_TYPE_5AXLE_11222, AXLE_TYPE_6AXLE_159_1 = 0x0600, AXLE_TYPE_6AXLE_159_2, AXLE_TYPE_6AXLE_1155_1, AXLE_TYPE_6AXLE_1155_2, AXLE_TYPE_6AXLE_159_3, AXLE_TYPE_6AXLE_159_4, AXLE_TYPE_6AXLE_1129, AXLE_TYPE_6AXLE_11522_1, AXLE_TYPE_6AXLE_11522_2, }TRUCK_AXLE_MODEL; typedef struct tagNET_DVR_VEHICLE_WEIGHT_RESULT_ { BYTE byIsOverWeight; BYTE byAxleNum; WORD wAxleModel; float fOverWeight; float fWeight; float fLimitWeight; float fAxleLen; char sDevDescInfo[MAX_DEVDESC_LEN]; WORD wAxleWeight[MAX_TRUCK_AXLE_NUM]; WORD wAxleDistance[MAX_TRUCK_AXLE_NUM]; BYTE byRes2[24]; }NET_DVR_VEHICLE_WEIGHT_RESULT, *LPNET_DVR_VEHICLE_WEIGHT_RESULT; typedef struct tagNET_DVR_PLATE_RESULT_V50 { DWORD dwSize; DWORD dwMatchNo; BYTE byGroupNum; BYTE byPicNo; BYTE bySecondCam; BYTE byFeaturePicNo; BYTE byDriveChan; BYTE byVehicleType; BYTE byDetSceneID; BYTE byVehicleAttribute; WORD wIllegalType; BYTE byIllegalSubType[8]; BYTE byPostPicNo; BYTE byChanIndex; WORD wSpeedLimit; BYTE byRes2[2]; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; BYTE byMonitoringSiteID[48]; BYTE byDeviceID[48]; BYTE byDir; BYTE byDetectType; BYTE byRelaLaneDirectionType; BYTE byRes3; DWORD dwCustomIllegalType; BYTE byRes4[9]; BYTE byPilotSafebelt; BYTE byCopilotSafebelt; BYTE byPilotSunVisor; BYTE byCopilotSunVisor; BYTE byPilotCall; BYTE byBarrierGateCtrlType; BYTE byAlarmDataType; NET_DVR_TIME_V30 struSnapFirstPicTime; DWORD dwIllegalTime; DWORD dwPicNum; NET_ITS_PICTURE_INFO struPicInfo[6]; NET_DVR_VEHICLE_WEIGHT_RESULT struWeightResult; BYTE byRes[256]; }NET_DVR_PLATE_RESULT_V50, *LPNET_DVR_PLATE_RESULT_V50; typedef struct _NET_DVR_NORMAL_SCHEDTIME_ { NET_DVR_SCHEDTIME struTime; BYTE byAlarmType; BYTE byRes[3]; }NET_DVR_NORMAL_SCHEDTIME,*LPNET_DVR_NORMAL_SCHEDTIME; typedef struct tagNET_DVR_SUBSYSTEM_ALARM { DWORD dwSize; NET_DVR_NORMAL_SCHEDTIME struNormalSchedtime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byNormalSchedTimeOn; BYTE byMandatoryAlarm; BYTE byRes[254]; }NET_DVR_SUBSYSTEM_ALARM,*LPNET_DVR_SUBSYSTEM_ALARM; #define MAX_WHITELIST_PHONE_NUM 16 typedef struct _NET_DVR_ALARM_PHONECFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; BYTE byPhoneNumber[MAX_PHONE_NUM]; DWORD dwArmRight; DWORD dwDisArmRight; DWORD dwClearAlarmRight; BYTE byZoneReport[MAX_ALARMHOST_ALARMIN_NUM]; DWORD dwNonZoneReport; BYTE byIntervalTime; BYTE byRes2; WORD wDefineIntervalTime; BYTE byRes3[128]; }NET_DVR_ALARM_PHONECFG, *LPNET_DVR_ALARM_PHONECFG; typedef struct tagNET_DVR_MODULE_INFO { DWORD dwSize; BYTE byModuleType; BYTE byKeyBoardType; BYTE byTriggerType; BYTE byZoneType; WORD wModuleAddress; BYTE byRes2[2]; char sModelInfo[32]; char sDeviceVersionInfo[32]; BYTE byRes[128]; }NET_DVR_MODULE_INFO,*LPNET_DVR_MODULE_INFO; typedef struct tagNET_DVR_ALARMHOST_DETECTOR_INFO { DWORD dwSize; BYTE byDetectorSerialNo[16]; DWORD dwAlarmIn; WORD wDetectorType; BYTE byRes[126]; }NET_DVR_ALARMHOST_DETECTOR_INFO, *LPNET_DVR_ALARMHOST_DETECTOR_INFO; typedef struct tagNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 { BYTE byEnable; BYTE byRes1[3]; NET_DVR_SCHEDDATE struDate; NET_DVR_OUTPUT_SCHEDULE struOutputSchedule[MAX_TIMESEGMENT_V30]; BYTE byTriggerIndex[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byRes2[64]; }NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40,*LPNET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40; typedef struct tagNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40 { DWORD dwSize; NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 struOutputRule[MAX_RULE_NUM]; BYTE byRes[64]; }NET_DVR_OUTPUT_SCHEDULE_RULECFG_V40,*LPNET_DVR_OUTPUT_SCHEDULE_RULECFG_V40; typedef struct tagNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40 { DWORD dwSize; NET_DVR_ONE_OUTPUT_SCHEDULE_RULE_V40 struOutputRule; BYTE byRes[256]; }NET_DVR_ONE_OUTPUT_SCH_RULECFG_V40,*LPNET_DVR_ONE_OUTPUT_SCH_RULECFG_V40; typedef struct tagNET_DVR_ALARM_CAPTRUE_CFG { DWORD dwSize; BYTE byBeforeAlarmPic; BYTE byAfterAlarmPic; WORD wInterval; BYTE byResolution; BYTE byRes[63]; }NET_DVR_ALARM_CAPTRUE_CFG, *LPNET_DVR_ALARM_CAPTRUE_CFG; #define PRIOR_SCHEDTIME 30 typedef struct _NET_DVR_PRIOR_SCHEDTIME_ { DWORD dwSize; NET_DVR_SCHEDDATE struData; NET_DVR_NORMAL_SCHEDTIME struOneDayTime[8]; BYTE byEnable; BYTE byRes1[3]; BYTE bySubSystem[32]; BYTE byMandatoryAlarm; BYTE byRes[63]; }NET_DVR_PRIOR_SCHEDTIME,*LPNET_DVR_PRIOR_SCHEDTIME; typedef struct tagNET_DVR_TAMPER_ALARMIN_PARAM { DWORD dwSize; BYTE byTamperType; BYTE byUploadAlarmRecoveryReport; BYTE byRes1[2]; BYTE byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM]; BYTE byAssociateSirenOut[8]; BYTE byTamperResistor; BYTE byRes2[3]; float fTamperResistorManual; BYTE byRes3[36]; }NET_DVR_TAMPER_ALARMIN_PARAM, *LPNET_DVR_TAMPER_ALARMIN_PARAM; typedef struct tagNET_DVR_REMOTECONTROLLER_PERMISSION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1; WORD wRemoteCtrllerID; BYTE sDevSn[16]; BYTE byArmRight; BYTE byDisArmRight; BYTE byArmReportRight; BYTE byDisArmReportRight; BYTE byClearAlarmRight; BYTE bySubSystemID; BYTE byKeyboardAddr; BYTE byEnableDel; BYTE byAlwaysOpenRight; BYTE byOpeningDirection; BYTE byRes2[62]; }NET_DVR_REMOTECONTROLLER_PERMISSION_CFG, *LPNET_DVR_REMOTECONTROLLER_PERMISSION_CFG; typedef struct tagNET_DVR_KEYBOARD_CFG { DWORD dwSize; BYTE byEnableLock; BYTE byErrorTimes; WORD wLockTime; BYTE byRes[128]; }NET_DVR_KEYBOARD_CFG, *LPNET_DVR_KEYBOARD_CFG; typedef struct tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND { DWORD dwSize; BYTE byCommOperatorNum[NAME_LEN]; BYTE byQueryCode[16]; BYTE byBusinessType; BYTE byRes[35]; }NET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND, *LPNET_DVR_ALARMHOST_WIRELESS_BUSINESS_COND; typedef struct tagNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO { DWORD dwSize; BYTE by3GBusiness[1024]; BYTE byRes[32]; }NET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO, *LPNET_DVR_ALARMHOST_WIRELESS_BUSINESS_INFO; typedef struct tagNET_DVR_PREVIEW_DELAY_CFG { DWORD dwSize; WORD wdelayTime; BYTE byRes[130]; }NET_DVR_PREVIEW_DELAY_CFG, *LPNET_DVR_PREVIEW_DELAY_CFG; typedef struct tagNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM { DWORD dwSize; DWORD dwDevNo; BYTE byDevType; BYTE byRes[131]; }NET_DVR_AUXILIARY_DEV_UPGRADE_PARAM,*LPNET_DVR_AUXILIARY_DEV_UPGRADE_PARAM; typedef struct tagNET_DVR_CALL_ROOM_CFG { DWORD dwSize; SHORT nFloorNumber; WORD wRoomNumber; BYTE byManageCenter; BYTE byRes1[3]; BYTE byCalledName[64]; BYTE byRes[60]; }NET_DVR_CALL_ROOM_CFG,*LPNET_DVR_CALL_ROOM_CFG; typedef struct tagNET_DVR_VIDEO_CALL_COND { DWORD dwSize; BYTE byRes[128]; }NET_DVR_VIDEO_CALL_COND,*LPNET_DVR_VIDEO_CALL_COND; typedef struct tagNET_DVR_INQUEST_CASE_INFO { DWORD dwSize; BYTE sCaseNo[INQUEST_CASE_NO_LEN]; BYTE sCaseName[INQUEST_CASE_NAME_LEN]; BYTE sCustomInfo1[CUSTOM_INFO_LEN]; BYTE sCustomInfo2[CUSTOM_INFO_LEN]; BYTE sCustomInfo3[CUSTOM_INFO_LEN]; BYTE byShowCaseInfoTime; BYTE byShowCaseInfo; BYTE byPosition; BYTE byRes[257]; }NET_DVR_INQUEST_CASE_INFO, *LPNET_DVR_INQUEST_CASE_INFO; typedef struct tagNET_DVR_CASE_INFO_CTRL_PARA { DWORD dwSize; DWORD dwChannel; BYTE byShowCaseInfoTime; BYTE byRes[131]; }NET_DVR_CASE_INFO_CTRL_PARAM, *LPNET_DVR_CASE_INFO_CTRL_PARA; typedef struct tagNET_DVR_INQUEST_USER_RIGHT_CFG { DWORD dwSize; BYTE byLocalRight[MAX_RIGHT]; BYTE byRemoteRight[MAX_RIGHT]; BYTE byNetAudioRight[MAX_CHANNUM_V40]; BYTE byRes[512*9]; }NET_DVR_INQUEST_USER_RIGHT_CFG, *LPNET_DVR_INQUEST_USER_RIGHT_CFG; typedef struct tagNET_DVR_INQUEST_MIX_AUDIOIN_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwMixCnt; BYTE bySrcChan[MAX_MIX_CHAN_NUM]; BYTE byLineIn[MAX_LINE_IN_CHAN_NUM]; BYTE byMic[MAX_MIC_CHAN_NUM]; BYTE byMixAudioDelay; BYTE byRes2[127]; }NET_DVR_INQUEST_MIX_AUDIOIN_CFG, *LPNET_DVR_INQUEST_MIX_AUDIOIN_CFG; typedef struct tagNET_DVR_FACECAPTURE_STATISTICS_COND { DWORD dwSize; DWORD dwChannel; NET_DVR_TIME_EX struStartTime; BYTE byReportType; BYTE byStatType; BYTE byEnableProgramStatistics; BYTE byRes1; DWORD dwPlayScheduleNo; BYTE byRes[120]; }NET_DVR_FACECAPTURE_STATISTICS_COND,*LPNET_DVR_FACECAPTURE_STATISTICS_COND; typedef struct tagNET_DVR_AGEGROUP_PARAM_ { DWORD dwTeenage; DWORD dwYouth; DWORD dwMidLife; DWORD dwElderly; DWORD dwChild; DWORD dwAdolescent; DWORD dwPrime; DWORD dwMidage; BYTE byRes[48]; }NET_DVR_AGEGROUP_PARAM, *LPNET_DVR_AGEGROUP_PARAM; typedef struct tagNET_DVR_FILECOND_MEDICAL { LONG lChannel; DWORD dwFileType; DWORD dwIsLocked; DWORD dwUseCardNo; BYTE sCardNumber[32]; NET_DVR_TIME_SEARCH_COND struStartTime; NET_DVR_TIME_SEARCH_COND struStopTime; char szPatientID[64]; BYTE byRes[256]; }NET_DVR_FILECOND_MEDICAL, *LPNET_DVR_FILECOND_MEDICAL; typedef struct tagNET_DVR_FIND_PICTURE_MEDICAL_PARAM { DWORD dwSize; LONG lChannel; BYTE byFileType; BYTE byNeedCard; BYTE byProvince; BYTE byRes1; NET_DVR_TIME struStartTime; NET_DVR_TIME struStopTime; char szPatientID[64]; BYTE byRes[256]; }NET_DVR_FIND_PICTURE_MEDICAL_PARAM, *LPNET_DVR_FIND_PICTURE_MEDICAL_PARAM; typedef struct tagNET_DVR_SEXGROUP_PARAM_ { DWORD dwMale; DWORD dwFemale; BYTE byRes[64]; }NET_DVR_SEXGROUP_PARAM,*LPNET_DVR_SEXGROUP_PARAM; typedef struct tagNET_DVR_FACECAPTURE_STATISTICS_RESULT_ { DWORD dwSize; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE byStatType; BYTE byRes[7]; DWORD dwPeopleNum; NET_DVR_AGEGROUP_PARAM struAgeGroupParam; NET_DVR_SEXGROUP_PARAM struSexGroupParam; NET_DVR_PROGRAM_INFO struProgramInfo; BYTE byRes1[76]; }NET_DVR_FACECAPTURE_STATISTICS_RESULT,*LPNET_DVR_FACECAPTURE_STATISTICS_RESULT; typedef struct tagNET_DVR_TRAFFIC_DATA_QUERY_COND_ { DWORD dwSize; DWORD dwQueryCond; DWORD dwChannel; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; char sLicense[MAX_LICENSE_LEN]; DWORD dwPlateType; DWORD dwPlateColor; DWORD dwVehicleColor; DWORD dwVehicleType; DWORD dwIllegalType; DWORD dwEventType; DWORD dwForensiceType; WORD wVehicleLogoRecog; BYTE byLaneNo; BYTE byDirection; WORD wMinSpeed; WORD wMaxSpeed; BYTE byDataType; BYTE byExecuteCtrl; BYTE byRes[254]; }NET_DVR_TRAFFIC_DATA_QUERY_COND,*LPNET_DVR_TRAFFIC_DATA_QUERY_COND; typedef struct tagNET_DVR_TRAFFIC_PICTURE_PARAM_ { NET_DVR_TIME_V30 struRelativeTime; NET_DVR_TIME_V30 struAbsTime; char szPicName[PICTURE_NAME_LEN]; BYTE byPicType; BYTE byRes[63]; }NET_DVR_TRAFFIC_PICTURE_PARAM,*LPNET_DVR_TRAFFIC_PICTURE_PARAM; typedef struct tagNET_DVR_TRAFFIC_DATA_QUERY_RESULT_ { DWORD dwSize; DWORD dwChannel; char sLicense[MAX_LICENSE_LEN]; DWORD dwPlateType; DWORD dwPlateColor; DWORD dwVehicleColor; DWORD dwVehicleType; DWORD dwIllegalType; DWORD dwEventType; DWORD dwForensiceType; WORD wVehicleLogoRecog; BYTE byLaneNo; BYTE byDirection; WORD wSpeed; BYTE byDataType; BYTE byRes[253]; NET_DVR_TRAFFIC_PICTURE_PARAM struTrafficPic[MAX_TRAFFIC_PICTURE_NUM]; }NET_DVR_TRAFFIC_DATA_QUERY_RESULT,*LPNET_DVR_TRAFFIC_DATA_QUERY_RESULT; typedef struct tagNET_DVR_TRAFFIC_FLOW_QUERY_COND_ { DWORD dwSize; DWORD dwQueryCond; DWORD dwChannel; DWORD dwResChan[10]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byLaneNo; BYTE byRes[255]; }NET_DVR_TRAFFIC_FLOW_QUERY_COND,*LPNET_DVR_TRAFFIC_FLOW_QUERY_COND; typedef struct tagNET_DVR_TRAFFIC_FLOW_QUERY_RESULT_ { DWORD dwSize; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; DWORD dwChannel; DWORD dwFlow; BYTE byLaneNo; BYTE byRes[511]; }NET_DVR_TRAFFIC_FLOW_QUERY_RESULT,*LPNET_DVR_TRAFFIC_FLOW_QUERY_RESULT; typedef struct tagNET_DVR_PIC_INFO { BYTE byPicType; BYTE byRes1[3]; DWORD dwPicWidth; DWORD dwPicHeight; DWORD dwPicDataLen; char* byPicDataBuff; BYTE byRes2[32]; }NET_DVR_PIC_INFO,*LPNET_DVR_PIC_INFO; typedef struct tagNET_DVR_VCA_RULE_COLOR_CFG { DWORD dwSize; BYTE byEnable; BYTE byRuleID; BYTE byColorBlockNo; BYTE byRes1; NET_DVR_PIC_INFO struPicInfo; BYTE byRes[64]; }NET_DVR_VCA_RULE_COLOR_CFG,*LPNET_DVR_VCA_RULE_COLOR_CFG; typedef struct tagNET_DVR_VCA_RULE_COLOR_COND { DWORD dwSize; DWORD dwChannel; BYTE byRuleID; BYTE byRes[127]; }NET_DVR_VCA_RULE_COLOR_COND,*LPNET_DVR_VCA_RULE_COLOR_COND; typedef struct tagNET_DVR_LLDP_PORT_CFG { BYTE byCardNo; BYTE byPortNo; BYTE byEnabledTx; BYTE byEnabledRx; BYTE byRes[12]; }NET_DVR_LLDP_PORT_CFG, *LPNET_DVR_LLDP_PORT_CFG; typedef struct tagNET_DVR_LLDP_CFG { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; DWORD dwHoldTime; DWORD dwReiniTime; DWORD dwPacketTime; NET_DVR_LLDP_PORT_CFG struLLDPPortCfg[MAX_PORT_NUM]; BYTE byRes2[32]; }NET_DVR_LLDP_CFG, *LPNET_DVR_LLDP_CFG; typedef struct tagNET_DVR_CARD_PORT_INFO { DWORD dwPortNo; BYTE byPortName[NAME_LEN]; BYTE byWorkMode; BYTE byBandWidth; BYTE byPortType; BYTE byRes[13]; }NET_DVR_CARD_PORT_INFO, *LPNET_DVR_CARD_PORT_INFO; typedef struct tagNET_DVR_NETMGR_CARD_INFO { BYTE byTypeName[NAME_LEN]; BYTE bySerialNo[SERIALNO_LEN]; BYTE bySoftwareVersion[VERSION_LEN]; NET_DVR_IPADDR struIPAddr; DWORD dwSlotNo; BYTE byStructureType; BYTE byRes1[3]; NET_DVR_CARD_PORT_INFO struNetPortInfo[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes2[32]; }NET_DVR_NETMGR_CARD_INFO, *LPNET_DVR_NETMGR_CARD_INFO; typedef struct tagNET_DVR_FUNC_CARD_INFO { DWORD dwCardNo; BYTE byTypeName[NAME_LEN]; BYTE bySerialNo[SERIALNO_LEN]; BYTE bySoftwareVersion[VERSION_LEN]; DWORD dwMainSlot; BYTE byStructureType; BYTE byRes1[3]; NET_DVR_CARD_PORT_INFO struFuncPortInfo[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes2[32]; }NET_DVR_FUNC_CARD_INFO, *LPNET_DVR_FUNC_CARD_INFO; typedef struct tagNET_DVR_FIBER_CONVERT_BASIC { DWORD dwSize; BYTE byPowerType; BYTE byRes1[3]; DWORD dwSlotNum; NET_DVR_NETMGR_CARD_INFO struNetCardInfo; NET_DVR_FUNC_CARD_INFO struFuncCardInfo[MAX_FUNC_CARD_NUM]; BYTE byRes2[64]; }NET_DVR_FIBER_CONVERT_BASIC, *LPNET_DVR_FIBER_CONVERT_BASIC; typedef struct tagNET_DVR_CARD_PORT_STATE { BYTE byValid; BYTE byPortType; BYTE byLinkState; BYTE byRes1; DWORD dwSendBytes; DWORD dwRecvBytes; DWORD dwRecvLostPackets; DWORD dwRecvCrcErrPackets; DWORD dwRecvFragmentPackets; BYTE byRes2[16]; }NET_DVR_CARD_PORT_STATE, *LPNET_DVR_CARD_PORT_STATE; typedef struct tagNET_DVR_NET_CARD_STATE { NET_DVR_CARD_PORT_STATE struNetPortState[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes[64]; }NET_DVR_NET_CARD_STATE, *LPNET_DVR_NET_CARD_STATE; typedef struct tagNET_DVR_FUNC_CARD_STATE { BYTE byEnabled; BYTE byRes1[3]; DWORD dwCardNo; NET_DVR_CARD_PORT_STATE struFuncCardPortState[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes[32]; }NET_DVR_FUNC_CARD_STATE, *LPNET_DVR_FUNC_CARD_STATE; typedef struct tagNET_DVR_FIBER_CONVERT_STATE { DWORD dwSize; NET_DVR_NET_CARD_STATE struNetCardState; NET_DVR_FUNC_CARD_STATE struFuncCardState[MAX_FUNC_CARD_NUM]; BYTE byRes[32]; }NET_DVR_FIBER_CONVERT_STATE, *LPNET_DVR_FIBER_CONVERT_STATE; typedef struct tagNET_DVR_NETMGR_CARD_INFO_V50 { BYTE byMainSlotNo; BYTE byRes1[3]; BYTE byTypeName[NAME_LEN]; BYTE bySerialNo[SERIALNO_LEN]; BYTE bySoftwareVersion[VERSION_LEN]; BYTE byHardwareVersion[VERSION_LEN]; NET_DVR_IPADDR struIPAddr; NET_DVR_IPADDR struMask; NET_DVR_IPADDR struGateway; BYTE byMacAddr[6]; BYTE bySlotNums; BYTE byStructureType; NET_DVR_CARD_PORT_INFO struPortInfo[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes2[64]; }NET_DVR_NETMGR_CARD_INFO_V50, *LPNET_DVR_NETMGR_CARD_INFO_V50; typedef struct tagNET_DVR_FUNC_CARD_INFO_V50 { BYTE byCardNo; BYTE byMainSlotNo; BYTE byRes1[2]; BYTE byTypeName[NAME_LEN]; BYTE bySerialNo[SERIALNO_LEN]; BYTE bySoftwareVersion[VERSION_LEN]; BYTE byIsVerMismatch; BYTE byRes2[3]; BYTE byNewestSoftwareVersion[VERSION_LEN]; BYTE byHardwareVersion[VERSION_LEN]; BYTE bySlotNums; BYTE byStructureType; BYTE byRes3[2]; NET_DVR_CARD_PORT_INFO struPortInfo[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes4[64]; }NET_DVR_FUNC_CARD_INFO_V50, *LPNET_DVR_FUNC_CARD_INFO_V50; typedef struct tagNET_DVR_REMOTE_SEND_CARD_INFO_V50 { BYTE byCardNo; BYTE byMainSlotNo; BYTE byRes1[2]; BYTE byTypeName[NAME_LEN]; BYTE bySoftwareVersion[VERSION_LEN]; BYTE byIsVerMismatch; BYTE byRes2[3]; BYTE byNewestSoftwareVersion[VERSION_LEN]; BYTE byHardwareVersion[VERSION_LEN]; NET_DVR_CARD_PORT_INFO struPortInfo[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes3[64]; }NET_DVR_REMOTE_SEND_CARD_INFO_V50, *LPNET_DVR_REMOTE_SEND_CARD_INFO_V50; typedef struct tagNET_DVR_FIBER_CONVERT_BASIC_V50 { DWORD dwSize; BYTE byPowerType; BYTE byRes1[3]; DWORD dwSlotNum; NET_DVR_NETMGR_CARD_INFO_V50 struNetCardInfo; NET_DVR_FUNC_CARD_INFO_V50 struFuncCardInfo[MAX_FUNC_CARD_NUM]; NET_DVR_REMOTE_SEND_CARD_INFO_V50 struRemoteSendCardInfo[MAX_FUNC_CARD_NUM]; BYTE byRes2[64]; }NET_DVR_FIBER_CONVERT_BASIC_V50, *LPNET_DVR_FIBER_CONVERT_BASIC_V50; typedef struct tagNET_DVR_CARD_PORT_STATE_V50 { BYTE byPortNo; BYTE byPortType; BYTE byLinkState; BYTE byPortSpeed; BYTE byPortDuplexMode; BYTE byRes1[3]; BYTE byPortName[NAME_LEN]; DWORD dwSendBytes; DWORD dwSendByteSpeed; DWORD dwSendPackets; DWORD dwSendPacketSpeed; DWORD dwRecvBytes; DWORD dwRecvByteSpeed; DWORD dwRecvPackets; DWORD dwRecvPacketSpeed; DWORD dwRecvLostPackets; DWORD dwRecvCrcErrPackets; DWORD dwRecvFragmentPackets; BYTE byRes2[48]; }NET_DVR_CARD_PORT_STATE_V50, *LPNET_DVR_CARD_PORT_STATE_V50; typedef struct tagNET_DVR_NET_CARD_STATE_V50 { BYTE byMainSlotNo; BYTE byRes1[3]; NET_DVR_CARD_PORT_STATE_V50 struPortState[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes2[344]; }NET_DVR_NET_CARD_STATE_V50, *LPNET_DVR_NET_CARD_STATE_V50; typedef struct tagNET_DVR_FUNC_CARD_STATE_V50 { BYTE byCardNo; BYTE byMainSlotNo; BYTE byRes1[2]; NET_DVR_CARD_PORT_STATE_V50 struPortState[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes2[64]; }NET_DVR_FUNC_CARD_STATE_V50, *LPNET_DVR_FUNC_CARD_STATE_V50; typedef struct tagNET_DVR_REMOTE_SEND_CARD_STATE_V50 { BYTE byCardNo; BYTE byMainSlotNo; BYTE byRes1[2]; NET_DVR_CARD_PORT_STATE_V50 struPortState[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes[64]; }NET_DVR_REMOTE_SEND_CARD_STATE_V50, *LPNET_DVR_REMOTE_SEND_CARD_STATE_V50; typedef struct tagNET_DVR_FIBER_CONVERT_STATE_V50 { DWORD dwSize; NET_DVR_NET_CARD_STATE_V50 struNetCardState; NET_DVR_FUNC_CARD_STATE_V50 struFuncCardState[MAX_FUNC_CARD_NUM]; NET_DVR_REMOTE_SEND_CARD_STATE_V50 struRemoteSendCardState[MAX_FUNC_CARD_NUM]; BYTE byRes[64]; }NET_DVR_FIBER_CONVERT_STATE_V50, *LPNET_DVR_FIBER_CONVERT_STATE_V50; typedef struct tagNET_DVR_FC_PORT_TOPOLOGY { DWORD dwPortNo; BYTE byPortType; BYTE byLocalWorkMode; BYTE byLocalBandWidth; BYTE byRes1[1]; BYTE byPeerTypeName[NAME_LEN]; BYTE byPeerMac[MACADDR_LEN]; DWORD dwPeerPortNo; BYTE byPeerWorkMode; BYTE byPeerBandWidth; BYTE byRes2[30]; }NET_DVR_FC_PORT_TOPOLOGY, *LPNET_DVR_FC_PORT_TOPOLOGY; typedef struct tagNET_DVR_FC_CARD_TOPOLOGY { BYTE byEnable; BYTE byRes1[3]; DWORD dwCardNo; DWORD dwSlotNum; BYTE byTypeName[NAME_LEN]; BYTE byLocalMac[MACADDR_LEN]; NET_DVR_FC_PORT_TOPOLOGY struFCPortTopology[MAX_SINGLE_CARD_PORT_NO]; BYTE byRes[32]; }NET_DVR_FC_CARD_TOPOLOGY, *LPNET_DVR_FC_CARD_TOPOLOGY; typedef struct tagNET_DVR_FIBER_CONVERT_TOPOLOGY { DWORD dwSize; NET_DVR_FC_CARD_TOPOLOGY struFCCardTopology[MAX_FC_CARD_NUM]; BYTE byRes[64]; }NET_DVR_FIBER_CONVERT_TOPOLOGY, *LPNET_DVR_FIBER_CONVERT_TOPOLOGY; typedef struct tagNET_DVR_FC_COND { DWORD dwSize; DWORD dwSlotNo; DWORD dwPortNo; BYTE byRes[32]; }NET_DVR_FC_COND, *LPNET_DVR_FC_COND; typedef struct tagNET_DVR_FC_PORT_REMARKS { DWORD dwSize; BYTE byLocalRemarks[MAX_REMARKS_LEN]; BYTE byPeerRemarks[MAX_REMARKS_LEN]; BYTE byRes[32]; }NET_DVR_FC_PORT_REMARKS, *LPNET_DVR_FC_PORT_REMARKS; typedef enum _EN_FIBER_CONVERT_ALARM { FC_OPTICAL_PORT_LOST = 1, FC_ELECTRICAL_PORT_LOST, FC_FUNC_CARD_LOST, FC_CARD_DISCONNECTED, FC_MAX_TEMP_LIMITED, FC_MIN_TEMP_LIMITED, FC_MAX_VOLTAGE_LIMITED, FC_MIN_VOLTAGE_LIMITED, }EN_FIBER_CONVERT_ALARM; typedef enum _EN_FIBER_CONVERT_NOTIFICATION { FC_OPTICAL_PORT_CONNECTED = 1, FC_ELECTRICAL_PORT_CONNECTED, FC_FUNC_CARD_INSERT, FC_CARD_CONNECTED, FC_TEMP_RECOVERY, FC_VOLTAGE_RECOVERY, }EN_FIBER_CONVERT_NOTIFICATION; typedef struct tagNET_DVR_FIBER_CONVERT_ALARM { DWORD dwSize; DWORD dwEventType; DWORD dwEvent; BYTE bySlotNum; BYTE byCardType; BYTE byPortNo; BYTE byCurTemperature; WORD wCurVoltage; BYTE byRes1[30]; }NET_DVR_FIBER_CONVERT_ALARM, *LPNET_DVR_FIBER_CONVERT_ALARM; typedef enum _EN_SWITCH_CONVERT_ALARM { SC_OPTICAL_PORT_LOST = 1, SC_NETWORK_PORT_LOST, }EN_SWITCH_CONVERT_ALARM; typedef enum _EN_SWICH_CONVERT_NOTIFICATION { SC_OPTICAL_PORT_CONNECTED = 1, SC_NETWORK_PORT_CONNECTED, }EN_SWITCH_CONVERT_NOTIFICATION; typedef struct tagNET_DVR_SWITCH_CONVERT_ALARM { DWORD dwSize; BYTE byPortNo; BYTE byRes1[3]; DWORD dwEventType; DWORD dwEvent; BYTE byRes2[32]; }NET_DVR_SWITCH_CONVERT_ALARM, *LPNET_DVR_SWITCH_CONVERT_ALARM; typedef struct tagNET_DVR_SWITCH_LAMP_CFG { DWORD dwSize; BYTE byEnable; BYTE byTriggerMode; BYTE byUploadPic; BYTE byRes1; DWORD dwTimeInterval; NET_DVR_HANDLEEXCEPTION_V30 struHandleType; BYTE byRelRecordChan[MAX_IVMS_IP_CHANNEL]; NET_DVR_SCHEDTIME struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[256]; }NET_DVR_SWITCH_LAMP_CFG,*LPNET_DVR_SWITCH_LAMP_CFG; typedef struct tagNET_DVR_SWITCH_LAMP_ALARM { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; NET_DVR_TIME_EX struTime; BYTE byLampStatus; BYTE byRes1[3]; DWORD dwPicDataLen; char* pPicData; BYTE byRes[64]; }NET_DVR_SWITCH_LAMP_ALARM,*LPNET_DVR_SWITCH_LAMP_ALARM; typedef struct tagNET_DVR_RS485_CASCADE_CFG { DWORD dwSize; BYTE byDevAddr; BYTE byRes[131]; }NET_DVR_RS485_CASCADE_CFG,*LPNET_DVR_RS485_CASCADE_CFG; typedef struct tagNET_DVR_PRIVATE_PROTOCOL_CFG { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wPort; BYTE byEnable; BYTE byRes; DWORD dwInterval; BYTE byServerType; BYTE byEcryptedSMSEnable; BYTE byAlgorithm; BYTE byAcauisitionMode; DWORD dwDistanceLimit; BYTE byPKModeEnable; BYTE byMACAddrReductionEnable; BYTE byRes1[214]; char szIndexCode[MAX_INDEX_CODE_LEN]; DWORD dwSecretKeyLen; char szSecretKey[MAX_SECRETKEY_LEN]; }NET_DVR_PRIVATE_PROTOCOL_CFG,*LPNET_DVR_PRIVATE_PROTOCOL_CFG; typedef struct tagNET_DVR_DEBUG_CMD { DWORD dwSize; char szDebugCMD[MAX_DEBUGCMD_LEN]; BYTE byRes[400]; }NET_DVR_DEBUG_CMD,*LPNET_DVR_DEBUG_CMD; typedef struct tagNET_DVR_DEBUG_INFO { DWORD dwSize; char szDebugInfo[MAX_DEBUGINFO_LEN]; BYTE byRes[32]; }NET_DVR_DEBUG_INFO,*LPNET_DVR_DEBUG_INFO; #define MAX_SSID_LEN 32 #define MAX_WS_PASSWD_LEN 64 typedef struct tagNET_DVR_WIRELESSSERVER { DWORD dwSize; BYTE byWLanShare; BYTE byBroadcastSSID; BYTE bySecurityMode; BYTE byAlgorithmType; char szSSID[MAX_SSID_LEN]; char szPassWord[MAX_WS_PASSWD_LEN]; BYTE byDefaultPassword; BYTE byRes[255]; }NET_DVR_WIRELESSSERVER,*LPNET_DVR_WIRELESSSERVER; typedef struct tagNET_DVR_CONNECTDEV_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[128]; }NET_DVR_CONNECTDEV_COND,*LPNET_DVR_CONNECTDEV_COND; typedef struct tagNET_DVR_CONNECTDEV_CFG { DWORD dwSize; BYTE byID; BYTE byRes[1]; BYTE byMACAddr[MACADDR_LEN]; NET_DVR_IPADDR struDVRIP; NET_DVR_TIME struConnectTime; BYTE byRes1[256]; }NET_DVR_CONNECTDEV_CFG,*LPNET_DVR_CONNECTDEV_CFG; typedef struct tagNET_DVR_GIS_SERVER_INFO { BYTE byUserName[NAME_LEN]; BYTE byPassword[PASSWD_LEN]; NET_DVR_IPADDR struServerIP; WORD wPort; BYTE byRes[30]; }NET_DVR_GIS_SERVER_INFO, *LPNET_DVR_GIS_SERVER_INFO; typedef struct tagNET_DVR_BASEMAP_CONTROL_CFG_V40 { DWORD dwSize; BYTE byEnable; BYTE byBaseMapType; BYTE byRes1[2]; DWORD dwBaseMapNo; NET_DVR_GIS_SERVER_INFO struGisServer; BYTE byRes2[64]; }NET_DVR_BASEMAP_CONTROL_CFG_V40,*LPNET_DVR_BASEMAP_CONTROL_CFG_V40; typedef struct tagNET_DVR_VIDEO_IMG_DB_CFG { DWORD dwSize; INT64 i64Capacity; INT64 i64UsedSpace; INT64 i64AvailableSpace; BYTE byRes[256]; }NET_DVR_VIDEO_IMG_DB_CFG, *LPNET_DVR_VIDEO_IMG_DB_CFG; typedef struct tagNET_DVR_FILE_QUERY_INFO { DWORD dwSize; INT64 i64FileLen; BYTE byRes[256]; }NET_DVR_FILE_QUERY_INFO, *LPNET_DVR_FILE_QUERY_INFO; typedef struct tagNET_DVR_FILE_INFO_IN { char szFileID[MAX_FILE_ID_LEN]; BYTE byRes[256]; }NET_DVR_FILE_INFO_IN, *LPNET_DVR_FILE_INFO_IN; typedef struct tagNET_DOWNLOAD_CB_INFO { DWORD dwType; BYTE *pData; DWORD dwDataLen; void* pFileInfo; DWORD dwFileInfoLen; BYTE byRes[120]; }NET_DOWNLOAD_CB_INFO, *LPNET_DOWNLOAD_CB_INFO; typedef BOOL (*DOWNLOAD_DATA_CB)( LONG lHandle, NET_DOWNLOAD_CB_INFO *pCBInfo, void *pUserData); typedef struct tagNET_DVR_DOWNLOAD_CB_PARAM { DOWNLOAD_DATA_CB fnDownloadDataCB; void *pUserData; INT64 i64Offset; BYTE byRes[256]; }NET_DVR_DOWNLOAD_CB_PARAM, *LPNET_DVR_DOWNLOAD_CB_PARAM; typedef struct tagNET_DVR_UPLOAD_DB_IN { INT64 i64FileLen; BYTE byContinueUpload; BYTE byRes[255]; }NET_DVR_UPLOAD_DB_IN, *LPNET_DVR_UPLOAD_DB_IN; typedef struct tagNET_DVR_UPLOAD_DB_OUT { char szFileID[MAX_FILE_ID_LEN]; BYTE byRes[256]; }NET_DVR_UPLOAD_DB_OUT, *LPNET_DVR_UPLOAD_DB_OUT; typedef struct tagNET_DVR_SEND_PARAM_IN { BYTE *pSendData; DWORD dwSendDataLen; NET_DVR_TIME_V30 struTime; BYTE byPicType; BYTE byPicURL; BYTE byUploadModeling; BYTE byRes1; DWORD dwPicMangeNo; BYTE sPicName[NAME_LEN]; DWORD dwPicDisplayTime; BYTE *pSendAppendData; DWORD dwSendAppendDataLen; BYTE byRes[192]; }NET_DVR_SEND_PARAM_IN, *LPNET_DVR_SEND_PARAM_IN; typedef struct tagNET_DVR_DOWNLOAD_QOS { DWORD dwMaxSpeed; BYTE byRes[256]; }NET_DVR_DOWNLOAD_QOS, *LPNET_DVR_DOWNLOAD_QOS; #define NET_SDK_MAX_FILE_NAME 100 typedef struct tagNET_DVR_UPLOAD_FILEVOLUME_PRARAM_ { DWORD dwSize; BYTE byFileType; BYTE byFileVolnumeID; BYTE byArchive; BYTE byRes1; DWORD dwFileSize; char szFileName[NET_SDK_MAX_FILE_NAME]; BYTE byRes[300]; }NET_DVR_UPLOAD_FILEVOLUME_PRARAM, *LPNET_DVR_UPLOAD_FILEVOLUME_PRARAM; typedef struct tagNET_DVR_DOWNLOAD_FILEVOLUME_PARAM_ { DWORD dwSize; BYTE sUrl[MAX_UPLOADFILE_URL_LEN]; BYTE byRes[248]; DOWNLOAD_DATA_CB fnDownloadDataCB; void *pUserData; }NET_DVR_DOWNLOAD_FILEVOLUME_PARAM, *LPNET_DVR_DOWNLOAD_FILEVOLUME_PARAM; typedef struct tagNET_DVR_FILM_MODE_CFG { DWORD dwSize; BYTE byScreenType; BYTE byRes[255]; }NET_DVR_FILM_MODE_CFG, *LPNET_DVR_FILM_MODE_CFG; typedef struct tagNET_DVR_DIRECTED_STRATEGY_CFG { DWORD dwSize; BYTE byDirectedStrategyType; BYTE byRes[255]; }NET_DVR_DIRECTED_STRATEGY_CFG, *LPNET_DVR_DIRECTED_STRATEGY_CFG; typedef struct NET_DVR_FRAME { BYTE byFrameWide; BYTE byRed; BYTE byGreen; BYTE byBlue; BYTE byRes[256]; }NET_DVR_FRAME, *LPNET_DVR_FRAME; typedef struct tagNET_DVR_FRAME_CFG { DWORD dwSize; NET_DVR_FRAME struTopFrame; NET_DVR_FRAME struBottomFrame; NET_DVR_FRAME struLeftFrame; NET_DVR_FRAME struRightFrame; BYTE byFrameEnable; BYTE byRes[256]; }NET_DVR_FRAME_CFG, *LPNET_DVR_FRAME_CFG; typedef struct tagNET_DVR_FRAME_COND { DWORD dwSize; DWORD dwPicNo; BYTE byRes[256]; }NET_DVR_FRAME_COND, *LPNET_DVR_FRAME_COND; typedef struct tagNET_DVR_AUDIO_EFFECTIVE_CFG { DWORD dwSize; DWORD dwCheckDelay; BYTE byThreshold; BYTE byVolumePercent; BYTE byPriority; BYTE byRes[301]; }NET_DVR_AUDIO_EFFECTIVE_CFG, *LPNET_DVR_AUDIO_EFFECTIVE_CFG; typedef struct tagNET_DVR_RECORD_VIDEO_CFG { DWORD dwSize; BYTE byExportType; BYTE byRes[255]; } NET_DVR_RECORD_VIDEO_CFG, *LPNET_DVR_RECORD_VIDEO_CFG; typedef struct tagNET_DVR_RTMP_COND { DWORD dwSize; DWORD dwChannel; BYTE byStreamType; BYTE byRes[303]; }NET_DVR_RTMP_COND, *LPNET_DVR_RTMP_COND; typedef struct tagNET_DVR_RTMP_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwPacketLen; char szURL[RTMP_URL_LEN]; BYTE byRes[256]; }NET_DVR_RTMP_CFG, *LPNET_DVR_RTMP_CFG; typedef struct tagNET_DVR_RECORDING_PUBLISH_FILE_CFG { DWORD dwSize; BYTE byFileID[MAX_ID_LEN_128]; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; BYTE byCmdType; BYTE byFileType; BYTE byRes[254]; }NET_DVR_RECORDING_PUBLISH_FILE_CFG, *LPNET_DVR_RECORDING_PUBLISH_FILE_CFG; typedef struct tagNET_DVR_PUBLISH_PROGRESS_COND { DWORD dwSize; DWORD dwChannel; BYTE byFileID[MAX_ID_LEN_128]; BYTE byRes[256]; }NET_DVR_PUBLISH_PROGRESS_COND, *LPNET_DVR_PUBLISH_PROGRESS_COND; typedef struct tagNET_DVR_PUBLISH_PROGRESS_CFG { DWORD dwSize; BYTE byPublishPercent; BYTE byPublishStatus; BYTE byRes[302]; }NET_DVR_PUBLISH_PROGRESS_CFG, *LPNET_DVR_PUBLISH_PROGRESS_CFG; typedef struct tagNET_DVR_BACKGROUND_PIC_COND { DWORD dwSize; char szFileID[MAX_ID_LEN_128]; BYTE byRes[256]; }NET_DVR_BACKGROUND_PIC_COND, *LPNET_DVR_BACKGROUND_PIC_COND; typedef struct tagNET_DVR_BACKGROUND_PIC_CFG { DWORD dwSize; DWORD dwPicSize; DWORD dwPicType; WORD wPicWidth; WORD wPicHeight; BYTE byPicName[MAX_PIC_NAME_LEN]; BYTE byRes[128]; }NET_DVR_BACKGROUND_PIC_CFG,*LPNET_DVR_BACKGROUND_PIC_CFG; typedef struct tagNET_DVR_BACKGROUND_PIC_INFO { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; BYTE byPicID[MAX_ID_LEN_128]; BYTE byRes[300]; }NET_DVR_BACKGROUND_PIC_INFO,*LPNET_DVR_BACKGROUND_PIC_INFO; typedef struct tagNET_DVR_BACKGROUND_PIC_PRARAM { DWORD dwSize; DWORD dwChannel; DWORD dwPicSize; WORD wPicWidth; WORD wPicHeight; char szPicName[MAX_PIC_NAME_LEN]; BYTE byPicType; BYTE byRes[303]; }NET_DVR_BACKGROUND_PIC_PRARAM,*LPNET_DVR_BACKGROUND_PIC_PRARAM; typedef struct tagNET_DVR_LOWPOWER { DWORD dwSize; BYTE byMode; BYTE byEnabled; BYTE byRes[6]; NET_DVR_SCHEDULE_DAYTIME struSchedTime; BYTE byRes1[256]; }NET_DVR_LOWPOWER,*LPNET_DVR_LOWPOWER; typedef struct tagNET_DVR_POINT { DWORD dwX; DWORD dwY; }NET_DVR_POINT, *LPNET_DVR_POINT; typedef struct tagNET_DVR_ZOOMLINKAGE { DWORD dwSize; BYTE byEnable; BYTE byRes[255]; }NET_DVR_ZOOMLINKAGE,*LPNET_DVR_ZOOMLINKAGE; typedef struct tagNET_DVR_ONLINEUPGRADE_STATUS { DWORD dwSize; BYTE byUpgradeStatus; BYTE byProgress; BYTE byRes[250]; }NET_DVR_ONLINEUPGRADE_STATUS,*LPNET_DVR_ONLINEUPGRADE_STATUS; typedef struct tagNET_DVR_FIRMWARECODE_COND { DWORD dwSize; DWORD dwStartIndex; DWORD dwMaxNum; BYTE byRes[52]; }NET_DVR_FIRMWARECODE_COND,*LPNET_DVR_FIRMWARECODE_COND; typedef struct tagNET_DVR_FIRMWARECODE { WORD wIndex; WORD wCodeLen; BYTE byCode[MAX_IDCODE_LEN]; BYTE byVersion[MAX_VERSIIN_LEN]; BYTE byRes[12]; }NET_DVR_FIRMWARECODE,*LPNET_DVR_FIRMWARECODE; typedef struct tagNET_DVR_FIRMWARECODE_LIST { DWORD dwSize; DWORD dwValidCodeNum; NET_DVR_FIRMWARECODE struCode[MAX_IDCODE_NUM]; BYTE byRes[64]; }NET_DVR_FIRMWARECODE_LIST,*LPNET_DVR_FIRMWARECODE_LIST; typedef struct tagNET_DVR_ONLINEUPGRADE_SERVER { DWORD dwSize; BYTE byConnectStatus; BYTE byRes[1019]; }NET_DVR_ONLINEUPGRADE_SERVER,*LPNET_DVR_ONLINEUPGRADE_SERVER; typedef struct tagNET_DVR_ONLINEUPGRADE_VERSION_COND { DWORD dwSize; BYTE byCheckFromSvr; BYTE byRes[59]; }NET_DVR_ONLINEUPGRADE_VERSION_COND,*LPNET_DVR_ONLINEUPGRADE_VERSION_COND; typedef struct tagNET_DVR_ONLINEUPGRADE_VERSION_RET { DWORD dwSize; BYTE byNewVersionAvailable; BYTE byNewVersion[MAX_VERSIIN_LEN]; BYTE byChangeLog[SDK_LEN_2048]; BYTE byRes[971]; }NET_DVR_ONLINEUPGRADE_VERSION_RET,*LPNET_DVR_ONLINEUPGRADE_VERSION_RET; typedef struct tagNET_DVR_RECOMMEN_VERSION_COND { DWORD dwSize; BYTE byFirmwareCode[MAX_IDCODE_LEN]; BYTE byFirmwareVersion[MAX_VERSIIN_LEN]; BYTE byRes[60]; }NET_DVR_RECOMMEN_VERSION_COND,*LPNET_DVR_RECOMMEN_VERSION_COND; typedef struct tagNET_DVR_RECOMMEN_VERSION_RET { DWORD dwSize; BYTE byRecommenUpgrade; BYTE byRes[123]; }NET_DVR_RECOMMEN_VERSION_RET,*LPNET_DVR_RECOMMEN_VERSION_RET; typedef struct tagNET_DVR_THSCREEN { DWORD dwSize; BYTE byEnable; BYTE byTHOSDDisplay; BYTE byRes[2]; NET_VCA_POINT struTHOSDPoint; BYTE byTimingMode; BYTE byRes1; WORD wInterval; BYTE byRes2[254]; }NET_DVR_THSCREEN,*LPNET_DVR_THSCREEN; typedef struct tagNET_DVR_SENSOR_ADJUSTMENT { DWORD dwSize; BYTE byType; BYTE bySensorNo; BYTE byRes[2]; int iAdjustMentRange; BYTE byR; BYTE byG; BYTE byB; BYTE byRgbType; BYTE byBrightness; BYTE byRes1[123]; }NET_DVR_SENSOR_ADJUSTMENT,*LPNET_DVR_SENSOR_ADJUSTMENT; typedef struct tagNET_DVR_SENSOR_ADJUSTMENT_INFO { DWORD dwSize; int iPan; int iTilt; int iRotation; int iFieldAngle; BYTE byR; BYTE byG; BYTE byB; BYTE byRgbType; BYTE byBrightness; BYTE byRes[123]; }NET_DVR_SENSOR_ADJUSTMENT_INFO,*LPNET_DVR_SENSOR_ADJUSTMENT_INFO; typedef struct tagNET_DVR_SENSOR_RESET { DWORD dwSize; BYTE bySensorNo; BYTE byRes[127]; }NET_DVR_SENSOR_RESET,*LPNET_DVR_SENSOR_RESET; typedef struct tagNET_DVR_PANORAMAIMAGE { DWORD dwSize; BYTE byFusionMode; BYTE byPreviewMode; BYTE byRes[126]; }NET_DVR_PANORAMAIMAGE,*LPNET_DVR_PANORAMAIMAGE; typedef struct tagNET_DVR_RELOCATE_INFO { DWORD dwSize; BYTE byTakeOverAddr[MAX_DOMAIN_NAME]; WORD wPort ; BYTE byRes[254] ; }NET_DVR_RELOCATE_INFO, *LPNET_DVR_RELOCATE_INFO; typedef struct tagNET_DVR_CONFERENCE_REGION { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_POINT struRegion[RECT_POINT_NUM]; DWORD dwOutputWidth; DWORD dwOutputHeight; BYTE byRes2[32]; }NET_DVR_CONFERENCE_REGION, *LPNET_DVR_CONFERENCE_REGION; typedef struct tagNET_DVR_TERMINAL_CALL_CFG { DWORD dwSize; BYTE byAnswerType; BYTE byProtocolType; BYTE byTransmissionProtocol; BYTE byRes[29]; }NET_DVR_TERMINAL_CALL_CFG, *LPNET_DVR_TERMINAL_CALL_CFG; typedef struct tagNET_DVR_TERMINAL_CALL_INFO { BYTE byTermianlURL[MAX_URL_LEN]; DWORD dwCallRate; BYTE byRes[124]; }NET_DVR_TERMINAL_CALL_INFO, *LPNET_DVR_TERMINAL_CALL_INFO; typedef struct tagNET_DVR_TERMINAL_AUDIO_CTRL { BYTE byMute; BYTE byVolume; BYTE byAudioInputDisabled; BYTE byAudioInputVolume; BYTE byRes[636]; }NET_DVR_TERMINAL_AUDIO_CTRL, *LPNET_DVR_TERMINAL_AUDIO_CTRL; typedef struct tagNET_DVR_HOWLING_SUPPRESSION { BYTE byEnabled; BYTE byHsSensibility; BYTE byHsMode; BYTE byRes1; DWORD dwHsTime; BYTE byRes2[16]; }NET_DVR_HOWLING_SUPPRESSION, *LPNET_DVR_HOWLING_SUPPRESSION; typedef struct tagNET_DVR_TERMINAL_INPUT_AUDIO { DWORD dwChannel; BYTE byGainType; BYTE byEnableSimulate; BYTE byVolumeSimulate; BYTE byEnableDigital; BYTE byVolumeDigital; BYTE byRes1[3]; NET_DVR_HOWLING_SUPPRESSION struHsParam; BYTE byRes[604]; }NET_DVR_TERMINAL_INPUT_AUDIO, *LPNET_DVR_TERMINAL_INPUT_AUDIO; typedef union tagNET_DVR_TERMINAL_DETAIL_CTRL_PARAM { BYTE byRes[640]; NET_DVR_TERMINAL_CALL_INFO struCallInfo; NET_DVR_TERMINAL_AUDIO_CTRL struAudioCtrl; NET_DVR_TERMINAL_INPUT_AUDIO struInputAudio; }NET_DVR_TERMINAL_DETAIL_CTRL_PARAM, *LPNET_DVR_TERMINAL_DETAIL_CTRL_PARAM; typedef struct tagNET_DVR_TERMINAL_CTRL_PARAM { DWORD dwSize; BYTE byOperateType; BYTE byRes1[3]; NET_DVR_TERMINAL_DETAIL_CTRL_PARAM struCtrlParam; BYTE byRes2[32]; }NET_DVR_TERMINAL_CTRL_PARAM, *LPNET_DVR_TERMINAL_CTRL_PARAM; typedef struct tagNET_DVR_POS_INFO_OVERLAY { DWORD dwSize; BYTE byPosInfoOverlayEnable; BYTE byOverlayType; BYTE byRes[126]; }NET_DVR_POS_INFO_OVERLAY, *LPNET_DVR_POS_INFO_OVERLAY; typedef struct tagNET_DVR_CAMERA_WORK_MODE { DWORD dwSize; BYTE byWorkMode; BYTE byPreviewImageMode; BYTE byRes[126]; }NET_DVR_CAMERA_WORK_MODE, *LPNET_DVR_CAMERA_WORK_MODE; typedef struct tagNET_DVR_VCA_VERSION_LIST { DWORD dwSize; NET_DVR_VCA_VERSION struVcaVersion[NET_SDK_VERSION_LIST_LEN]; BYTE byRes[128]; }NET_DVR_VCA_VERSION_LIST, *LPNET_DVR_VCA_VERSION_LIST; typedef struct tagNET_DVR_SETUP_CALIB_COND { DWORD dwSize; BYTE byCalibrateType; BYTE byRes1[3]; float fTiltAngle; float fHeelAngle; float fHeight; NET_VCA_POLYGON struAutoCalibPolygon; BYTE byIntelligentType; BYTE byRes[127]; }NET_DVR_SETUP_CALIB_COND, *LPNET_DVR_SETUP_CALIB_COND; typedef struct tagNET_DVR_SETUP_CALIB_RESULT { DWORD dwSize; BYTE byCalibrateType; BYTE byRes1[3]; float fTiltAngle; float fHeelAngle; float fHeight; NET_VCA_POLYGON struCountPolygon; NET_DVR_PDC_ENTER_DIRECTION struEnterDirection; NET_VCA_LINE struLine; BYTE byRes[128]; }NET_DVR_SETUP_CALIB_RESULT, *LPNET_DVR_SETUP_CALIB_RESULT; typedef struct tagNET_DVR_CALL_QUERY_COND { DWORD dwSize; BYTE bySearchID[MAX_SEARCH_ID_LEN]; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byCallType; BYTE byRes1[3]; DWORD dwMaxResults; DWORD dwSearchPos; BYTE byRes2[32]; }NET_DVR_CALL_QUERY_COND, *LPNET_DVR_CALL_QUERY_COND; typedef struct tagNET_DVR_CALL_QUERY_SINGLE { DWORD dwSize; BYTE byCallType; BYTE byRes1[3]; BYTE byTerminalName[TERMINAL_NAME_LEN]; BYTE byAddressURL[MAX_URL_LEN]; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byRes2[32]; }NET_DVR_CALL_QUERY_SINGLE, *LPNET_DVR_CALL_QUERY_SINGLE; typedef enum tagCALL_QUERY_RESULT_STATUS { CALL_QUERY_RESULT_OK = 0, CALL_QUERY_RESULT_FAIL, CALL_QUERY_RESULT_MORE, CALL_QUERY_RESULT_NOMATCH, CALL_QUERY_RESULT_PARAMERROR, CALL_QUERY_RESULT_INVALIDTIME, CALL_QUERY_RESULT_TIMEOUT, }CALL_QUERY_RESULT_STATUS; typedef struct tagNET_DVR_CALL_QUERY_RESULT { DWORD dwSize; BYTE bySearchID[MAX_SEARCH_ID_LEN]; BYTE byStatus; BYTE byRes[3]; DWORD dwCount; BYTE *pResults; BYTE byRes2[32]; }NET_DVR_CALL_QUERY_RESULT, *LPNET_DVR_CALL_QUERY_RESULT; typedef struct tagNET_DVR_CONFERENCE_CALL_INFO { BYTE byConferenceID[MAX_ID_LEN]; BYTE byConferenceName[NAME_LEN]; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byRes[512]; }NET_DVR_CONFERENCE_CALL_INFO, *LPNET_DVR_CONFERENCE_CALL_INFO; typedef union tagNET_DVR_CALL_INFO { BYTE byRes[640]; NET_DVR_TERMINAL_CALL_INFO struTerminalCallInfo; NET_DVR_CONFERENCE_CALL_INFO struConferenceCallInfo; }NET_DVR_CALL_INFO, *LPNET_DVR_CALL_INFO; typedef struct tagNET_DVR_CONFERENCE_CALL_ALARM { DWORD dwSize; BYTE byAlarmType; BYTE byCallType; BYTE byAutoAnswer; BYTE byCallStatusSwitch; NET_DVR_CALL_INFO struCallInfo; BYTE byRes2[32]; }NET_DVR_CONFERENCE_CALL_ALARM, *LPNET_DVR_CONFERENCE_CALL_ALARM; typedef struct tagNET_DVR_TERMINAL_INPUT_CFG { DWORD dwSize; DWORD dwInputNo; BYTE byStreamType; BYTE byRes[31]; }NET_DVR_TERMINAL_INPUT_CFG, *LPNET_DVR_TERMINAL_INPUT_CFG; typedef struct tagNET_DVR_AUDIO_STATUS { BYTE byMute; BYTE byVolume; BYTE byAudioInputDisabled; BYTE byAudioInputVolume; BYTE byRes[32]; }NET_DVR_AUDIO_STATUS, *LPNET_DVR_AUDIO_STATUS; typedef struct tagNET_DVR_TERMINAL_CONFERENCE_STATUS { DWORD dwSize; BYTE byConferenceState; BYTE byConferenceType; BYTE byDualStreamEnabled; BYTE byMicPowerEnabled; DWORD dwInputNo; NET_DVR_CALL_INFO struCallInfo; NET_DVR_AUDIO_STATUS struAudioStatus; BYTE byRes2[32]; }NET_DVR_TERMINAL_CONFERENCE_STATUS, *LPNET_DVR_TERMINAL_CONFERENCE_STATUS; typedef struct tagNET_DVR_TERMINAL_GK_CFG { DWORD dwSize; BYTE byEnable; BYTE byRegisterState; BYTE byRes1[2]; NET_DVR_IPADDR struGKIP; WORD wGKPort; BYTE byRes2[2]; BYTE byRegisterName[REGISTER_NAME_LEN]; BYTE byPassword[PASSWD_LEN]; BYTE byRes3[16]; }NET_DVR_TERMINAL_GK_CFG, *LPNET_DVR_TERMINAL_GK_CFG; typedef struct tagNET_DVR_WIN_ROAM_SWITCH_CFG { DWORD dwSize; BYTE byEnableRoam; BYTE byRes[31]; }NET_DVR_WIN_ROAM_SWITCH_CFG,*LPNET_DVR_WIN_ROAM_SWITCH_CFG; typedef struct tagNET_DVR_LED_OUTPUT_CFG { DWORD dwSize; BYTE byEnableZoom; BYTE byAutoCutBlackEdge; BYTE byRes1[2]; WORD wLEDWidth; WORD wLEDHeight; DWORD dwRefreshRate; DWORD dwInputNO; BYTE byRes2[32]; }NET_DVR_LED_OUTPUT_CFG, *LPNET_DVR_LED_OUTPUT_CFG; typedef struct tagNET_DVR_LED_OUTPUT_PORT_CFG { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; DWORD dwPortNum; DWORD dwPortNo[MAX_OUTPUT_PORT_NUM]; BYTE byRes2[64]; }NET_DVR_LED_OUTPUT_PORT_CFG, *LPNET_DVR_LED_OUTPUT_PORT_CFG; typedef struct tagNET_DVR_LINE_COLUMN_INFO { WORD wLine; WORD wColumn; }NET_DVR_LINE_COLUMN_INFO, *LPNET_DVR_LINE_COLUMN_INFO; typedef struct tagNET_DVR_LED_DISPLAY_AREA { DWORD dwSize; NET_DVR_LINE_COLUMN_INFO struLCInfo; WORD wWidth; WORD wHeight; WORD wRecvCardWidth; WORD wRecvCardHeigt; BYTE byRes[32]; }NET_DVR_LED_DISPLAY_AREA, *LPNET_DVR_LED_DISPLAY_AREA; typedef struct tagNET_DVR_LED_RECV_CARD_INFO { NET_DVR_LINE_COLUMN_INFO struPos; WORD wRecvCardWidth; WORD wRecvCardHeigt; }NET_DVR_LED_RECV_CARD_INFO, *LPNET_DVR_LED_RECV_CARD_INFO; typedef struct tagNET_DVR_LED_PORT_BACKUP { BYTE byEnabled; BYTE byPortMode; BYTE byRes1[2]; DWORD dwPairPort; BYTE byRes2[16]; }NET_DVR_LED_PORT_BACKUP, *LPNET_DVR_LED_PORT_BACKUP; typedef struct tagNET_DVR_LED_PORT_CFG { DWORD dwSize; BYTE byEnabled; BYTE byRes1[3]; NET_DVR_LED_PORT_BACKUP struLedPortBackup; DWORD dwRecvCardNum; NET_DVR_LED_RECV_CARD_INFO struRecvCard[MAX_SINGLE_PORT_RECVCARD_NUM]; DWORD dwPortNo; BYTE byRes2[64]; }NET_DVR_LED_PORT_CFG, *LPNET_DVR_LED_PORT_CFG; typedef struct tagNET_DVR_LED_DISPLAY_CFG { DWORD dwSize; NET_DVR_COLOR_TEMPERATURE_CFG struColorTemp; NET_DVR_VIDEO_OUT_CFG struVoutCfg; BYTE byRes[32]; }NET_DVR_LED_DISPLAY_CFG, *LPNET_DVR_LED_DISPLAY_CFG; typedef struct tagNET_DVR_LED_TEST_SIGNAL_CFG { DWORD dwSize; BYTE byEnabled; BYTE bySignalType; BYTE byRes1[2]; NET_DVR_RGB_COLOR struSignalColor; BYTE byRes[32]; }NET_DVR_LED_TEST_SIGNAL_CFG, *LPNET_DVR_LED_TEST_SIGNAL_CFG; typedef struct tagNET_DVR_LED_NOSIGNAL_CFG { DWORD dwSize; BYTE byNoSignalMode; BYTE byRes[63]; }NET_DVR_LED_NOSIGNAL_CFG, *LPNET_DVR_LED_NOSIGNAL_CFG; typedef struct tagNET_DVR_LED_INPUT_CFG { DWORD dwSize; DWORD dwResolutionWidth; DWORD dwResolutionHeight; DWORD dwRefreshRate; NET_DVR_SCREEN_VGA_CFG struVgaCfg; BYTE byRes[32]; }NET_DVR_LED_INPUT_CFG, *LPNET_DVR_LED_INPUT_CFG; typedef struct tagNET_DVR_LED_RECV_CARD_CFG_COND { DWORD dwSize; DWORD dwOutputNo; NET_DVR_LINE_COLUMN_INFO struPosStart; NET_DVR_LINE_COLUMN_INFO struPosEnd; BYTE byRes[32]; }NET_DVR_LED_RECV_CARD_CFG_COND, *LPNET_DVR_LED_RECV_CARD_CFG_COND; typedef struct tagNET_DVR_LED_GAMMA_CFG_COND { DWORD dwSize; DWORD dwOutputNo; NET_DVR_LINE_COLUMN_INFO struPosStart; NET_DVR_LINE_COLUMN_INFO struPosEnd; BYTE byGammaType; BYTE byRes[31]; }NET_DVR_LED_GAMMA_CFG_COND, *LPNET_DVR_LED_GAMMA_CFG_COND; typedef struct tagNET_DVR_LED_GAMMA_CFG { DWORD dwSize; WORD wGammaValue[MAX_GAMMA_X_VALUE]; BYTE byGammaModel; BYTE byRes[127]; }NET_DVR_LED_GAMMA_CFG, *LPNET_DVR_LED_GAMMA_CFG; typedef struct tagNET_DVR_LED_CLOCK_CFG { DWORD dwDclkRate; DWORD dwGclkRate; DWORD dwGclkCountNum; BYTE byDclkDutyRatio; BYTE byDclkPhase; BYTE byGclkNum; BYTE byRes[17]; }NET_DVR_LED_CLOCK_CFG, *LPNET_DVR_LED_CLOCK_CFG; typedef struct tagNET_DVR_LED_RECV_CFG { DWORD dwSize; NET_DVR_LED_CLOCK_CFG struClockCfg; BYTE byGrayLevel; BYTE byRefreshRate; BYTE byLineScanNum; BYTE byRefreshCompleteGrayNum; DWORD dwHBlank; DWORD dwAfterglowCtrl; DWORD dwLineFeedTime; BYTE byRes[128]; }NET_DVR_LED_RECV_CFG, *LPNET_DVR_LED_RECV_CFG; typedef struct tagNET_DVR_LED_REGISTOR_VALUE { BYTE byChip1High; BYTE byChip1Low; BYTE byChip2High; BYTE byChip2Low; BYTE byChip3High; BYTE byChip3Low; BYTE byChip4High; BYTE byChip4Low; BYTE byChip5High; BYTE byChip5Low; BYTE byChip6High; BYTE byChip6Low; BYTE byRes[4]; }NET_DVR_LED_REGISTOR_VALUE, *LPNET_DVR_LED_REGISTOR_VALUE; typedef struct tagNET_DVR_LED_RECV_REGISTOR { BYTE byEliminateGhostShadowLevel; BYTE byEliminateShadowy; BYTE byGrayEqualize1; BYTE byGrayEqualize2; BYTE byEnableGrayUniformity; BYTE byDisableHGrayStripes; BYTE byGhostShadowEnhancedMode1; BYTE byGhostShadowEnhancedMode2; BYTE byClearBadPoint; BYTE byEnableSelfDefineRegistor; BYTE byRes1[2]; NET_DVR_LED_REGISTOR_VALUE struRegistorValue; BYTE byEnabledExGradientOptimition; BYTE byDummyGClockCycle; BYTE byDummyGClockHighTime; BYTE byFirstGClockExtendedTime; BYTE byRes[28]; }NET_DVR_LED_RECV_REGISTOR, *LPNET_DVR_LED_RECV_REGISTOR; typedef struct tagNET_DVR_LED_RECV_ADVANCED_CFG { DWORD dwSize; NET_DVR_LED_RECV_REGISTOR struFirstRegistor; NET_DVR_LED_RECV_REGISTOR struSecondRegistor; NET_DVR_LED_RECV_REGISTOR struThirdRegistor; BYTE byRes2[64]; }NET_DVR_LED_RECV_ADVANCED_CFG,*LPNET_DVR_LED_RECV_ADVANCED_CFG; typedef struct tagNET_DVR_LED_CHECK_COND { DWORD dwSize; DWORD dwOutputNo; NET_DVR_LINE_COLUMN_INFO struPosStart; BYTE byStartPosType; BYTE byRes1[3]; DWORD dwXCoordinate; DWORD dwYCoordinate; DWORD dwWidth; DWORD dwHeight; BYTE byRes[8]; }NET_DVR_LED_CHECK_COND, *LPNET_DVR_LED_CHECK_COND; enum ADDR_QUERY_TYPE { QUERYSVR_BY_COUNTRYID = 0, QUERYSVR_BY_SERVERTYPE = 1, QUERYDEV_BY_NICKNAME_DDNS = 2, QUERYDEV_BY_SERIAL_DDNS = 3, CHECKDEV_BY_NICKNAME_DDNS = 4, CHECKDEV_BY_SERIAL_DDNS = 5, QUERYDEV_BY_NICKNAME_IPSERVER = 6, QUERYDEV_BY_SERIAL_IPSERVER = 7 }; #define CLIENT_VERSION_LEN 64 typedef struct tagNET_DVR_QUERY_COUNTRYID_COND { WORD wCountryID; char szSvrAddr[MAX_DOMAIN_NAME]; char szClientVersion[CLIENT_VERSION_LEN]; BYTE byRes[382]; }NET_DVR_QUERY_COUNTRYID_COND,*LPNET_DVR_QUERY_COUNTRYID_COND; typedef struct tagNET_DVR_QUERY_COUNTRYID_RET { char szResolveSvrAddr[MAX_DOMAIN_NAME]; char szAlarmSvrAddr[MAX_DOMAIN_NAME]; BYTE byRes[1024]; }NET_DVR_QUERY_COUNTRYID_RET,*LPNET_DVR_QUERY_COUNTRYID_RET; typedef struct tagNET_DVR_QUERY_SERVERTYPE_COND { WORD wSvrType; char szSvrAddr[MAX_DOMAIN_NAME]; char szClientVersion[CLIENT_VERSION_LEN]; BYTE byRes[382]; }NET_DVR_QUERY_SERVERTYPE_COND, *LPNET_DVR_QUERY_SERVERTYPE_COND; typedef struct tagNET_DVR_QUERY_SERVERTYPE_RET { char szSvrAddr[MAX_DOMAIN_NAME]; WORD wSvrPort; BYTE byRes[446]; }NET_DVR_QUERY_SERVERTYPE_RET, *LPNET_DVR_QUERY_SERVERTYPE_RET; typedef struct tagNET_DVR_QUERY_DDNS_COND { char szResolveSvrAddr[MAX_DOMAIN_NAME]; char szDevNickName[MAX_DOMAIN_NAME]; char szDevSerial[SERIALNO_LEN]; char szClientVersion[CLIENT_VERSION_LEN]; BYTE byRes[272]; }NET_DVR_QUERY_DDNS_COND,*LPNET_DVR_QUERY_DDNS_COND; typedef struct tagNET_DVR_QUERY_DDNS_RET { char szDevIP[SDK_MAX_IP_LEN]; WORD wCmdPort; WORD wHttpPort; BYTE byRes[460]; }NET_DVR_QUERY_DDNS_RET,*LPNET_DVR_QUERY_DDNS_RET; typedef struct tagNET_DVR_CHECK_DDNS_RET { BYTE byDevStatus; BYTE byRes1; NET_DVR_QUERY_DDNS_RET struQueryRet; WORD wRegionID; BYTE byRes2[508]; }NET_DVR_CHECK_DDNS_RET,*LPNET_DVR_CHECK_DDNS_RET; typedef struct tagNET_DVR_QUERY_IPSERVER_COND { char szResolveSvrAddr[MAX_DOMAIN_NAME]; WORD wResolveSvrPort; char szDevNickName[MAX_DOMAIN_NAME]; char szDevSerial[SERIALNO_LEN]; BYTE byRes[334]; }NET_DVR_QUERY_IPSERVER_COND,*LPNET_DVR_QUERY_IPSERVER_COND; typedef struct tagNET_DVR_QUERY_IPSERVER_RET { char szDevIP[SDK_MAX_IP_LEN]; WORD wCmdPort; BYTE byRes[462]; }NET_DVR_QUERY_IPSERVER_RET,*LPNET_DVR_QUERY_IPSERVER_RET; typedef struct tagNET_DVR_CURRENT_VALID_PORT { DWORD dwSize; WORD wHTTPPort; BYTE byRes[122]; }NET_DVR_CURRENT_VALID_PORT,*LPNET_DVR_CURRENT_VALID_PORT; typedef struct tagNET_DVR_AUDIO_CHANNEL { DWORD dwChannelNum; BYTE byres[32]; }NET_DVR_AUDIO_CHANNEL, *LPNET_DVR_AUDIO_CHANNEL; typedef struct tagNET_DVR_STREAMENCRYPTION_COND { DWORD dwSize; DWORD dwChan; BYTE byRes[128]; }NET_DVR_STREAMENCRYPTION_COND, *LPNET_DVR_STREAMENCRYPTION_COND; typedef struct tagNET_DVR_STREAMENCRYPTION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[255]; }NET_DVR_STREAMENCRYPTION_CFG, *LPNET_DVR_STREAMENCRYPTION_CFG; typedef struct tagNET_DVR_REVISE_GPS_CFG { DWORD dwSize; BYTE byLatitudeType ; BYTE byLongitudeType ; BYTE byMode ; BYTE byRes; NET_DVR_LLI_PARAM struLatitude; NET_DVR_LLI_PARAM struLongitude; BYTE byRes1[300]; }NET_DVR_REVISE_GPS_CFG, *LPNET_DVR_REVISE_GPS_CFG; typedef struct tagNET_DVR_PDC_RECOMMEND { DWORD dwSize; WORD wWidth; BYTE byRes[126]; }NET_DVR_PDC_RECOMMEND,*LPNET_DVR_PDC_RECOMMEND; typedef struct tagNET_DVR_FLASHSTORAGE_REMOVE { DWORD dwSize; DWORD dwChannel; BYTE byPDCRemoveEnable; BYTE byRes[127]; }NET_DVR_FLASHSTORAGE_REMOVE,*LPNET_DVR_FLASHSTORAGE_REMOVE; typedef struct tagNET_DVR_PARKING_CARD { DWORD dwSize; DWORD dwChannel; char szCardNo[MAX_CARDNO_LEN]; BYTE byCardType; BYTE byCardStatus; BYTE byChargeRuleID; BYTE byDelete; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byRes[128]; }NET_DVR_PARKING_CARD,*LPNET_DVR_PARKING_CARD; typedef struct tagNET_DVR_GATE_CARDINFO { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; DWORD dwRelativeTime; DWORD dwAbsTime; char szCardNo[MAX_CARDNO_LEN]; char szPassVehicleID[MAX_VEHICLE_ID_LEN]; char szInVehicleID[MAX_VEHICLE_ID_LEN]; NET_DVR_TIME_V30 struSwipeTime; NET_DVR_TIME_V30 struCardTime; BYTE byLetPass; BYTE byCardType; BYTE byRes[126]; }NET_DVR_GATE_CARDINFO, *LPNET_DVR_GATE_CARDINFO; typedef struct tagNET_DVR_GATE_CHARGEINFO { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; DWORD dwRelativeTime; DWORD dwAbsTime; char sLicense[MAX_LICENSE_LEN]; char szCardNo[48]; NET_DVR_TIME_V30 struEntranceTime; NET_DVR_TIME_V30 struDepartureTime; char szDepartureID[32]; char szEntranceID[32]; DWORD dwTotalCost; char szOperateName[32]; BYTE byChargeRuleId; BYTE byVehicleType; BYTE byRes[127]; }NET_DVR_GATE_CHARGEINFO,*LPNET_DVR_GATE_CHARGEINFO; typedef struct tagNET_DVR_PARKING_CARD_CTRL_PARAM { DWORD dwSize; DWORD dwChannel; BYTE byCardType; BYTE byDeleteALL; BYTE byRes[62]; }NET_DVR_PARKING_CARD_CTRL_PARAM,*LPNET_DVR_PARKING_CARD_CTRL_PARAM; typedef struct tagNET_DVR_TME_VEHICLE_RESULT_ { DWORD dwSize; WORD wLaneid; BYTE byCamLaneId; BYTE byRes1; DWORD dwChanIndex; NET_DVR_PLATE_INFO struPlateInfo; NET_DVR_VEHICLE_INFO struVehicleInfo; BYTE byMonitoringSiteID[48]; BYTE byDeviceID[48]; BYTE byDir; BYTE byRes2; WORD wBackList; DWORD dwPicNum; NET_ITS_PICTURE_INFO struPicInfo[4]; BYTE byPassVehicleID[32]; BYTE byCardNo[48]; BYTE bySwipeTime[32]; DWORD dwCharge; BYTE byHistory; BYTE byLetPass; BYTE byRes3[186]; } NET_DVR_TME_VEHICLE_RESULT, *LPNET_DVR_TME_VEHICLE_RESULT; typedef struct tagNET_DVR_MVMRegisterInfo_ { DWORD dwSize; char sDetectorID[16]; char sManagerID[16]; char sSim[20]; DWORD dwLocalIP; DWORD dwLocalIPMask; DWORD dwLocalGateway; DWORD dwDstIP; BYTE byMACAddr[6]; WORD wLocalPort; WORD wFirmwareYear; BYTE byFirmwareMonth; BYTE byFirmwareDay; BYTE byMajorVersion; BYTE byMinorVersion; BYTE byRes[170]; }NET_DVR_MVMRegisterInfo, *LPNET_DVR_MVMRegisterInfo; typedef struct tagNET_DVR_SingleMagneticStatus_ { DWORD dwSize; char sDetectorID[16]; char sManagerID[16]; char sParkNum[16]; NET_DVR_TIME_V30 struDetectorTime; DWORD dwRssi; BYTE byParkinglotState; BYTE byBatteryState; BYTE byDeviceState; BYTE byCMD; BYTE byRes[184]; }NET_DVR_SingleMagneticStatus, *LPNET_DVR_SingleMagneticStatus; typedef struct tagNET_DVR_PARKING_VEHICLE { DWORD dwSize; DWORD dwChannel; char szLicense[MAX_LICENSE_LEN]; char szRelateCardNo[MAX_CARDNO_LEN]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byVehicleType; BYTE byPlateColor; BYTE byRes[126]; }NET_DVR_PARKING_VEHICLE,*LPNET_DVR_PARKING_VEHICLE; typedef struct tagNET_DVR_CHARGEACCOUNT_CFG { DWORD dwSize; float fAccount; BYTE byRes[128]; }NET_DVR_CHARGEACCOUNT_CFG,*LPNET_DVR_CHARGEACCOUNT_CFG; typedef struct tagNET_DVR_PXMULTICTRL_CFG { DWORD dwSize; DWORD dwMultiChansWaitTime; BYTE byMultiChansCapEnabled; BYTE byRes[127]; }NET_DVR_PXMULTICTRL_CFG,*LPNET_DVR_PXMULTICTRL_CFG; typedef struct tagNET_DVR_PXOFFLINE_CFG { DWORD dwSize; BYTE byEnabled; BYTE byChargeEnabled; BYTE byAlarmEnabled; BYTE byRecordSource; DWORD dwTimeWait; DWORD dwRealeaseMode; BYTE byVehCardmatch; BYTE bySingleInSingleOut; BYTE byRes[126]; }NET_DVR_PXOFFLINE_CFG,*LPNET_DVR_PXOFFLINE_CFG; typedef struct tagNET_DVR_PARKINGSAPCE_CFG { DWORD dwSize; DWORD dwTotalParkingLot; DWORD dwCurrParkingLot; BYTE byRes[128]; }NET_DVR_PARKINGSAPCE_CFG,*LPNET_DVR_PARKINGSAPCE_CFG; typedef struct tagNET_DVR_PAPERCHARGEINFO_CFG { DWORD dwSize; char szBarCode[LEN_16]; char szLicense[MAX_LICENSE_LEN]; char szVehicleInTime[LEN_32]; char szPaymentTime[LEN_32]; float fPaymentAmount; DWORD dwPaymentOutFailureTime; BYTE byVehicleOutEnabled; BYTE byRes[128]; }NET_DVR_PAPERCHARGEINFO_CFG,*LPNET_DVR_PAPERCHARGEINFO_CFG; typedef struct tagNET_DVR_ILLEGALCARDFILTERING_CFG { DWORD dwSize; char sLEDDefaultInfo[MAX_LED_INFO_LEN]; BYTE byillegalCardFilteringEnabled; BYTE bySendCardSensingCoilEnabled; BYTE byWiegendSensingCoilEnabled; BYTE byGateSwitchEnabled; BYTE byVerifyKeyWriteCardEnabled; BYTE byNoplateTakeCardEnabled; BYTE byRes[126]; }NET_DVR_ILLEGALCARDFILTERING_CFG,*LPNET_DVR_ILLEGALCARDFILTERING_CFG; typedef struct tagNET_DVR_TME_CHARGERULE_COND { DWORD dwSize; DWORD dwChannel; char szCardNo[32]; BYTE byRes[128]; }NET_DVR_TME_CHARGERULE_COND, *LPNET_DVR_TME_CHARGERULE_COND; typedef struct tagNET_DVR_LEDDISPLAY_CFG { DWORD dwSize; char sDisplayInfo[MAX_LED_INFO_LEN]; BYTE byDisplayMode; BYTE bySpeedType; BYTE byShowPlateEnable; BYTE byRes1; DWORD dwShowTime; BYTE byRes[128]; }NET_DVR_LEDDISPLAY_CFG,*LPNET_DVR_LEDDISPLAY_CFG; typedef struct tagNET_DVR_VOICEBROADCAST_CFG { DWORD dwSize; char sInfo[MAX_VOICE_INFO_LEN]; BYTE byBroadcastNum; BYTE byIntervalTime; BYTE byRes[126]; }NET_DVR_VOICEBROADCAST_CFG,*LPNET_DVR_VOICEBROADCAST_CFG; typedef struct tagNET_DVR_PAPERPRINTFORMAT_CFG { DWORD dwSize; char sTitleInfo[MAX_LITLE_INFO_LEN]; char sCustomInfo[MAX_CUSTOM_INFO_LEN]; char sPhoneNum[MAX_PHONE_NUM_LEN]; BYTE byPrintInTimeEnabled; BYTE byRes[127]; }NET_DVR_PAPERPRINTFORMAT_CFG,*LPNET_DVR_PAPERPRINTFORMAT_CFG; typedef struct tagNET_DVR_LOCKGATE_TIME_CFG { char sBeginTime[LEN_32]; char sEndTime[LEN_32]; BYTE byRes[64]; }NET_DVR_LOCKGATE_TIME_CFG,*LPNET_DVR_LOCKGATE_TIME_CFG; typedef struct tagNET_DVR_LOCKGATE_CFG { DWORD dwSize; NET_DVR_LOCKGATE_TIME_CFG struTime[LOCKGATE_TIME_NUM]; BYTE byRes[128]; }NET_DVR_LOCKGATE_CFG,*LPNET_DVR_LOCKGATE_CFG; typedef struct NET_DVR_PARKING_DATASTATE_INFO { DWORD dwSize; char szAppSerialNum [MAX_APP_SERIALNUM_LEN]; DWORD dwParkingNum; DWORD dwUpdataSerialNum; BYTE byRes[256]; } NET_DVR_PARKING_DATASTATE_INFO,*LPNET_DVR_PARKING_DATASTATE_INFO; typedef struct tagNET_DVR_EPTZ_CFG { DWORD dwSize; BYTE byEnableEPTZ; BYTE byRes[503]; }NET_DVR_EPTZ_CFG, *LPNET_DVR_EPTZ_CFG; typedef struct tagNET_DVR_CENTER_POINT_CFG { DWORD dwSize; NET_VCA_POLYGON struRegion; BYTE byRes[512]; }NET_DVR_CENTER_POINT_CFG, *LPNET_DVR_CENTER_POINT_CFG; typedef struct tagNET_DVR_FTPUPLOAD_PARAM { char szRuleTypeItem[MAX_SINGLE_FTPPICNAME_LEN]; char szCameraName[MAX_CAMNAME_LEN]; BYTE byRes[64]; }NET_DVR_FTPUPLOAD_PARAM, *LPNET_DVR_FTPUPLOAD_PARAM; typedef struct tagNET_DVR_FTPUPLOADCFG { DWORD dwSize; BYTE byEventType; BYTE byMode; BYTE byRes[62]; NET_DVR_FTPUPLOAD_PARAM struCustomVehicle[MAX_FTPNAME_NUM]; BYTE byRes1[1024] ; }NET_DVR_FTPUPLOADCFG, *LPNET_DVR_FTPUPLOADCFG; typedef struct tagNET_DVR_PUBLISH_UPGRADE_COND { DWORD dwSize; DWORD dwUpgradeType; DWORD dwTerminalNum; DWORD *pTerminalNo; DWORD dwGroupNo; BYTE byRes[32]; }NET_DVR_PUBLISH_UPGRADE_COND, *LPNET_DVR_PUBLISH_UPGRADE_COND; typedef struct tagNET_DVR_WEP_KEY_CFG { char csWEPKey[WEP_KEY_MAX_SIZE]; BYTE byRes[64]; }NET_DVR_WEP_KEY_CFG, *LPNET_DVR_WEP_KEY_CFG; typedef struct tagNET_DVR_SUB_UPGRADE_PROGRESS { DWORD dwTerminalNo; DWORD dwProgress; }NET_DVR_SUB_UPGRADE_PROGRESS, *LPNET_DVR_SUB_UPGRADE_PROGRESS; typedef struct tagNET_DVR_UPGRADE_PROGRESS_RESULT { DWORD dwSize; DWORD dwMainProgress; DWORD dwSubProgressNum; LPNET_DVR_SUB_UPGRADE_PROGRESS lpStruSubProgress; BYTE byRes[32]; }NET_DVR_UPGRADE_PROGRESS_RESULT, *LPNET_DVR_UPGRADE_PROGRESS_RESULT; typedef struct tagNET_DVR_SCHEDULE_PROGRESS_COND { DWORD dwSize; DWORD dwScheduleNo; BYTE byProgressType; BYTE byRes1[3]; DWORD dwGroupNo; DWORD dwTerminalNo; BYTE byRes2[32]; }NET_DVR_SCHEDULE_PROGRESS_COND, *LPNET_DVR_SCHEDULE_PROGRESS_COND; typedef struct tagNET_DVR_SUB_SCHEDULE_PROGRESS { DWORD dwTerminalNo; DWORD dwProgress; }NET_DVR_SUB_SCHEDULE_PROGRESS, *LPNET_DVR_SUB_SCHEDULE_PROGRESS; typedef struct tagNET_DVR_SCHEDULE_PROGRESS_RESULT { DWORD dwSize; DWORD dwMainProgress; DWORD dwSubProgressNum; LPNET_DVR_SUB_SCHEDULE_PROGRESS lpStruSubProgress; BYTE byRes[32]; }NET_DVR_SCHEDULE_PROGRESS_RESULT, *LPNET_DVR_SCHEDULE_PROGRESS_RESULT; typedef struct tagNET_DVR_INSERTPLAY_PROGRESS_COND { DWORD dwSize; BYTE byInsertType; BYTE byRes3[3]; DWORD dwInsertNo; BYTE byProgressType; BYTE byRes1[3]; DWORD dwGroupNo; DWORD dwTerminalNo; BYTE byRes2[32]; }NET_DVR_INSERTPLAY_PROGRESS_COND, *LPNET_DVR_INSERTPLAY_PROGRESS_COND; typedef struct tagNET_DVR_SUB_INSERTPLAY_PROGRESS { DWORD dwTerminalNo; DWORD dwProgress; }NET_DVR_SUB_INSERTPLAY_PROGRESS, *LPNET_DVR_SUB_INSERTPLAY_PROGRESS; typedef struct tagNET_DVR_INSERTPLAY_PROGRESS_RESULT { DWORD dwSize; DWORD dwMainProgress; DWORD dwSubProgressNum; LPNET_DVR_SUB_INSERTPLAY_PROGRESS lpStruSubProgress; BYTE byRes[32]; }NET_DVR_INSERTPLAY_PROGRESS_RESULT, *LPNET_DVR_INSERTPLAY_PROGRESS_RESULT; typedef struct tagNET_DVR_WEP_CFG { BYTE byAuthenticationType; BYTE byDefaultTransmitKeyIndex; BYTE byWepKeyLenType; BYTE byKeyType; NET_DVR_WEP_KEY_CFG struWEPKeyCfg[WEP_KEY_MAX_NUM]; BYTE byRes[128]; }NET_DVR_WEP_CFG, *LPNET_DVR_WEP_CFG; typedef struct tagNET_DVR_WPA_CFG { BYTE byAlgorithmType; BYTE byWPAKeyLen; BYTE byDefaultPassword; BYTE byRes1; char csSharedKey[WPA_KEY_MAX_SIZE]; BYTE byRes[128]; }NET_DVR_WPA_CFG, *LPNET_DVR_WPA_CFG; typedef struct tagNET_DVR_WIRELESS_SECURITY_CFG { BYTE bySecurityMode; NET_DVR_WEP_CFG struWEPCfg; NET_DVR_WPA_CFG struWPACfg; BYTE byRes[256]; } NET_DVR_WIRELESS_SECURITY_CFG,*LPNET_DVR_WIRELESS_SECURITY_CFG; typedef struct tagNET_DVR_WIRELESSSERVER_FULLVERSION_CFG { DWORD dwSize; BYTE byWifiAPEnabled; BYTE byBroadcastEnabled; BYTE byWlanShareEnabled; BYTE byDHCPEnabled; BYTE bySSID[IW_ESSID_MAX_SIZE]; BYTE byRes1[11]; BYTE byIPType; NET_DVR_IPADDR struIPAddr; NET_DVR_IPADDR struIPMask; NET_DVR_IPADDR struGatewayIPMask; NET_DVR_IPADDR struStartIPAddrPool; NET_DVR_IPADDR struEndIPAddrPool; NET_DVR_IPADDR struDNSServerIpAddr[MAX_DNS_SERVER_NUM]; NET_DVR_WIRELESS_SECURITY_CFG struWirelessSecurityCfg; BYTE byRes[256]; }NET_DVR_WIRELESSSERVER_FULLVERSION_CFG, *LPNET_DVR_WIRELESSSERVER_FULLVERSION_CFG; typedef struct tagNET_DVR_OPTICAL_DEV_CHAN_INFO { DWORD dwChannel; BYTE byChannelName[NAME_LEN]; BYTE bySignal; BYTE bySignalType; BYTE byRes[10]; }NET_DVR_OPTICAL_DEV_CHAN_INFO, *LPNET_DVR_OPTICAL_DEV_CHAN_INFO; typedef struct tagNET_DVR_OPTICAL_DEV_NODE { BYTE byValid; BYTE byRes1[3]; DWORD dwDevNo; BYTE byDevName[NAME_LEN]; BYTE byDevID[MAX_ID_LEN]; NET_DVR_OPTICAL_DEV_CHAN_INFO struChannel[MAX_CHANNUM]; BYTE byRes2[32]; }NET_DVR_OPTICAL_DEV_NODE, *LPNET_DVR_OPTICAL_DEV_NODE; #define MAX_OPTICAL_DEV_NODE 32 typedef struct tagNET_DVR_OPTICAL_PORT_INFO { DWORD dwSize; BYTE byValid; BYTE byLinkType; BYTE byPortWorkMode; BYTE byRes1[1]; DWORD dwPairPort; NET_DVR_OPTICAL_DEV_NODE struDevInfo[MAX_OPTICAL_DEV_NODE]; BYTE byRes2[32]; }NET_DVR_OPTICAL_PORT_INFO, *LPNET_DVR_OPTICAL_PORT_INFO; typedef struct tagNET_DVR_OPTICAL_CHAN_RELATE_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; DWORD dwDevNo; DWORD dwOpticalPort; BYTE byDevID[MAX_ID_LEN]; DWORD dwInputChanNo; BYTE byRes2[64]; }NET_DVR_OPTICAL_CHAN_RELATE_CFG, *LPNET_DVR_OPTICAL_CHAN_RELATE_CFG; typedef struct tagNET_DVR_START_FILE_TO_CLOUD_COND { DWORD dwSize; BYTE aCameraID[MAX_CAMERAID_LEN]; DWORD dwPoolID; DWORD dwRepPoolID; WORD wReplication; BYTE byRes [178]; }NET_DVR_START_FILE_TO_CLOUD_COND,*LPNET_DVR_START_FILE_TO_CLOUD_COND; typedef struct tagNET_DVR_START_PICTURE_FROM_CLOUD_COND { DWORD dwSize; BYTE aCameraID[MAX_CAMERAID_LEN]; NET_DVR_TIME_V30 struBeginTime; NET_DVR_TIME_V30 struEndTime; DWORD dwPicType; BYTE byRes1[3]; BYTE byZoomType; union { BYTE uLen[32]; struct { BYTE byScale; }struScale; struct { BYTE byQuality; }struQuality; struct { DWORD dwWidth; DWORD dwHeight; }struResolution; }uZoomParam; DOWNLOAD_DATA_CB fnDownloadFileCallBack; void* pUser; BYTE byRes [372]; }NET_DVR_START_PICTURE_FROM_CLOUD_COND,*LPNET_DVR_START_PICTURE_FROM_CLOUD_COND; typedef struct tagNET_DVR_START_PICTURE_FROM_CLOUD_RET { DWORD dwSize; DWORD dwFileCount; BYTE byRes[120]; }NET_DVR_START_PICTURE_FROM_CLOUD_RET,*LPNET_DVR_START_PICTURE_FROM_CLOUD_RET; typedef struct tagNET_DVR_PICTURE_FROM_CLOUD_RET { DWORD dwSize; NET_DVR_TIME_V30 struTime; DWORD dwPicLen; BYTE byPicType; BYTE byRes[107]; }NET_DVR_PICTURE_FROM_CLOUD_RET,*LPNET_DVR_PICTURE_FROM_CLOUD_RET; typedef struct tagNET_DVR_ACS_EXTERNAL_DEV_CFG { DWORD dwSize; BYTE byIDCardUpMode; BYTE byRes1; BYTE byCardVerifyMode; BYTE byACSDevType; BYTE byDoorMode; BYTE byRes2; WORD wDevDetailType; BYTE byRes[300]; }NET_DVR_ACS_EXTERNAL_DEV_CFG, *LPNET_DVR_ACS_EXTERNAL_DEV_CFG; typedef struct tagNET_DVR_PERSONNEL_CHANNEL_CFG { DWORD dwSize; BYTE byInMode; BYTE byOutMode; BYTE byWorkMode; BYTE byRes[301]; }NET_DVR_PERSONNEL_CHANNEL_CFG, *LPNET_DVR_PERSONNEL_CHANNEL_CFG; #define MAX_ID_NUM_LEN 32 #define MAX_ID_NAME_LEN 128 #define MAX_ID_ADDR_LEN 280 #define MAX_ID_ISSUING_AUTHORITY_LEN 128 typedef struct tagNET_DVR_ID_CARD_INFO { DWORD dwSize; BYTE byName[MAX_ID_NAME_LEN]; NET_DVR_DATE struBirth; BYTE byAddr[MAX_ID_ADDR_LEN]; BYTE byIDNum[MAX_ID_NUM_LEN]; BYTE byIssuingAuthority[MAX_ID_ISSUING_AUTHORITY_LEN]; NET_DVR_DATE struStartDate; NET_DVR_DATE struEndDate; BYTE byTermOfValidity; BYTE bySex; BYTE byNation; BYTE byRes[101]; }NET_DVR_ID_CARD_INFO, *LPNET_DVR_ID_CARD_INFO; typedef struct tagNET_DVR_ID_CARD_INFO_ALARM { DWORD dwSize; NET_DVR_ID_CARD_INFO struIDCardCfg ; DWORD dwMajor; DWORD dwMinor; NET_DVR_TIME_V30 struSwipeTime; BYTE byNetUser[MAX_NAMELEN] ; NET_DVR_IPADDR struRemoteHostAddr ; DWORD dwCardReaderNo; DWORD dwDoorNo; DWORD dwPicDataLen; char *pPicData; BYTE byCardType; BYTE byDeviceNo; BYTE byRes2[2]; DWORD dwFingerPrintDataLen; char *pFingerPrintData; DWORD dwCapturePicDataLen; char *pCapturePicData; BYTE byRes[188]; }NET_DVR_ID_CARD_INFO_ALARM, *LPNET_DVR_ID_CARD_INFO_ALARM; typedef struct tagNET_DVR_ID_CARD_BLACK_LIST_COND { DWORD dwSize; BYTE byRes[256]; }NET_DVR_ID_CARD_BLACK_LIST_COND, *LPNET_DVR_ID_CARD_BLACK_LIST_COND; typedef struct tagNET_DVR_ID_CARD_BLACK_LIST_CFG { DWORD dwSize; NET_DVR_ID_CARD_INFO struIDCardCfg; DWORD dwFingerPrintDataLen; char *pFingerPrintData; DWORD dwPicDataLen; char *pPicData; BYTE byRes[128]; }NET_DVR_ID_CARD_BLACK_LIST_CFG, *LPNET_DVR_ID_CARD_BLACK_LIST_CFG; typedef struct tagNET_DVR_PASSNUM_INFO_ALARM { DWORD dwSize; DWORD dwAccessChannel; NET_DVR_TIME_V30 struSwipeTime; BYTE byNetUser[MAX_NAMELEN] ; NET_DVR_IPADDR struRemoteHostAddr ; DWORD dwEntryTimes; DWORD dwExitTimes; DWORD dwTotalTimes; BYTE byRes[300]; }NET_DVR_PASSNUM_INFO_ALARM, *LPNET_DVR_PASSNUM_INFO_ALARM; typedef struct tagNET_DVR_UPLOAD_VIDEO_INFO { DWORD dwSize; DWORD dwVideoMangeNo; BYTE byVideoType; BYTE byRes1[3]; BYTE sVideoName[NAME_LEN]; NET_DVR_TIME_V30 struTime; BYTE byRes[132]; } NET_DVR_UPLOAD_VIDEO_INFO, *LPNET_DVR_UPLOAD_VIDEO_INFO; typedef struct tagNET_DVR_DEVICE_FILE_INFO { DWORD dwSize; BYTE sFileName[NAME_LEN]; DWORD dwManageNo; NET_DVR_TIME_EX struTime; BYTE byUsed; BYTE byRes[127]; } NET_DVR_DEVICE_FILE_INFO, *LPNET_DVR_DEVICE_FILE_INFO; typedef struct tagNET_DVR_PLAY_ITEM { DWORD dwSize; BYTE byItemType; BYTE byRes[3]; DWORD dwPlayManageNo; DWORD dwPlayPicTime; BYTE byRes2[64]; } NET_DVR_PLAY_ITEM, *LPNET_DVR_PLAY_ITEM; typedef struct tagNET_DVR_DEVICE_PLAYLIST { DWORD dwSize; BYTE byEnable; BYTE byPlayType; BYTE byVaildItemNum; BYTE byRes[1]; NET_DVR_PLAY_ITEM struPlayItem[PLAYLIST_ITEM_NUM]; BYTE byPlaylistName[PLAYLIST_NAME_LEN]; DWORD dwPlaylistNo; BYTE byRes2[128]; } NET_DVR_DEVICE_PLAYLIST, *LPNET_DVR_DEVICE_PLAYLIST; typedef struct tagNET_DVR_PLAYLIST_ITEM_CTRL { DWORD dwSize; BYTE byCtrlType; BYTE byPlayIndex; NET_DVR_PLAY_ITEM struPlayItem; BYTE byNewPlayIndex; BYTE byRes[63]; }NET_DVR_PLAYLIST_ITEM_CTRL, *LPNET_DVR_PLAYLIST_ITEM_CTRL; typedef struct tagNET_DVR_PLAN_ITEM { NET_DVR_PLAY_ITEM struPlanPlayItem; NET_DVR_TIME_SEGMENT struTimeSegment; BYTE byRes[16]; } NET_DVR_PLAN_ITEM, *LPNET_DVR_PLAN_ITEM; typedef struct tagNET_DVR_PLAYPLAN_CFG { DWORD dwSize; BYTE byEnable; BYTE byPlanMode; BYTE byRes[2]; NET_DVR_PLAN_ITEM struPlanItem[MAX_DAYS][MAX_TIMESEGMENT_V30]; DWORD dwPlayPlanNo; BYTE byPlayPlanName[NAME_LEN]; BYTE byRes2[32]; } NET_DVR_PLAYPLAN_CFG, *LPNET_DVR_PLAYPLAN_CFG; typedef struct tagNET_DVR_WINDOW_PLAYPLAN_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes[3]; DWORD dwPlayPlanNo; BYTE byRes2[32]; } NET_DVR_WINDOW_PLAYPLAN_CFG, *LPNET_DVR_WINDOW_PLAYPLAN_CFG; typedef struct tagNET_DVR_DEV_PLAYCTRL { DWORD dwSize; BYTE byControlType; BYTE byRes[131]; } NET_DVR_DEV_PLAYCTRL, *LPNET_DVR_DEV_PLAYCTRL; typedef union tagNET_DVR_PLAYITEM_INFO { struct { DWORD dwPlayItem; BYTE byPlayItemName[NAME_LEN]; BYTE byRes2[8]; } struPlayItem; struct { DWORD dwPlaylistNo; BYTE byPlaylistName[NAME_LEN]; WORD wPlayIndex; BYTE byPlayType; BYTE byRes[3]; DWORD dwPlayItem; BYTE byPlayItemName[NAME_LEN]; BYTE byRes2[16]; } struPlaylistItem; struct { DWORD dwPlayPlanNo; NET_DVR_TIME_SEGMENT struTime; BYTE byPlayType; BYTE byRes[3]; DWORD dwPlaylistNo; BYTE byPlaylistName[NAME_LEN]; DWORD dwPlayItem; BYTE byPlayItemName[NAME_LEN]; WORD wPlayIndex; BYTE byRes2[18]; } struPlayPlanItem; }NET_DVR_PLAYITEM_INFO, *LPNET_DVR_PLAYITEM_INFO; typedef struct tagNET_DVR_PLAYING_INFO { DWORD dwSize; BYTE byPlayWay; BYTE byCurPlayType; BYTE byPlayState; BYTE byAudioState; NET_DVR_PLAYITEM_INFO struPlayItemInfo; BYTE byRes2[16]; } NET_DVR_PLAYING_INFO, *LPNET_DVR_PLAYING_INFO; typedef struct tagNET_DVR_ONLINEUSER_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes [128]; }NET_DVR_ONLINEUSER_COND,*LPNET_DVR_ONLINEUSER_COND; typedef struct tagNET_DVR_ONLINEUSER_CFG { DWORD dwSize; BYTE byID; BYTE byUserType; BYTE byDataType; BYTE byRes; NET_DVR_IPADDR struIpAddr; NET_DVR_TIME_V30 struLoginTime; char szUserName[NAME_LEN]; BYTE byRes1[128]; }NET_DVR_ONLINEUSER_CFG,*LPNET_DVR_ONLINEUSER_CFG; typedef struct tagNET_DVR_STORAGE_DETECTION { DWORD dwSize; BYTE byHealthState; BYTE bySDCardState; WORD wAbnormalPowerLoss; WORD wBadBlocks; BYTE byRemainingLife; BYTE byRes[125]; }NET_DVR_STORAGE_DETECTION,*LPNET_DVR_STORAGE_DETECTION; typedef struct tagNET_DVR_STORAGE_DETECTION_ALARM { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; DWORD dwCardID; WORD wAbnormalPowerLoss; WORD wBadBlocks; BYTE byHealthState; BYTE byRes1[3]; float fResidualLife; BYTE byRes[118]; }NET_DVR_STORAGE_DETECTION_ALARM,*LPNET_DVR_STORAGE_DETECTION_ALARM; typedef struct tagNET_DVR_STORAGE_RWLOCK { DWORD dwSize; BYTE byEnabled; BYTE byRes[3]; char szPassWD[PASSWD_LEN]; char szOriginalPassWD[PASSWD_LEN]; BYTE byRes1[128]; }NET_DVR_STORAGE_RWLOCK,*LPNET_DVR_STORAGE_RWLOCK; typedef struct tagNET_DVR_STORAGE_UNLOCK { DWORD dwSize; char szPassWD[PASSWD_LEN]; BYTE byRes1[128]; }NET_DVR_STORAGE_UNLOCK,*LPNET_DVR_STORAGE_UNLOCK; typedef struct tagNET_DVR_PTZTRACKSTATUS { DWORD dwSize; BYTE byID; BYTE byLinkageType; BYTE byRes[254]; }NET_DVR_PTZTRACKSTATUS,*LPNET_DVR_PTZTRACKSTATUS; #define MAX_PROXY_COUNT 32 typedef struct tagNET_DVR_SOCKS_PROXY_PARA { BYTE byIP[129]; BYTE byAuthType; WORD wPort; BYTE byRes2[64]; }NET_DVR_SOCKS_PROXY_PARA, *LPNET_DVR_SOCKS_PROXY_PARA; typedef struct tagNET_DVR_SOCKS_PROXYS { NET_DVR_SOCKS_PROXY_PARA struProxy[MAX_PROXY_COUNT]; }NET_DVR_SOCKS_PROXYS, *LPNET_DVR_SOCKS_PROXYS; typedef struct tagNET_DVR_GET_FIGURE_COND { DWORD dwLength; DWORD dwChannel; NET_DVR_TIME_V30 struTimePoint; BYTE byID[STREAM_ID_LEN]; BYTE byRes[32]; }NET_DVR_GET_FIGURE_COND, *LPNET_DVR_GET_FIGURE_COND; typedef struct tagNET_DVR_FIGURE_INFO { DWORD dwPicLen; char *pPicBuf; }NET_DVR_FIGURE_INFO, *LPNET_DVR_FIGURE_INFO; typedef struct tagNET_DVR_MANUALRANGING_CFG { DWORD dwSize; BYTE byEnabled; BYTE byRes[127]; }NET_DVR_MANUALRANGING_CFG,*LPNET_DVR_MANUALRANGING_CFG; typedef struct tagNET_DVR_VIDEO_INTERCOM_ALARM_CFG { DWORD dwSize; BYTE byDoorNotCloseAlarm; BYTE byRes[603]; }NET_DVR_VIDEO_INTERCOM_ALARM_CFG, *LPNET_DVR_VIDEO_INTERCOM_ALARM_CFG; typedef struct tagNET_DVR_PACKET_INFO_EX { WORD wWidth; WORD wHeight; DWORD dwTimeStamp; DWORD dwTimeStampHigh; DWORD dwYear; DWORD dwMonth; DWORD dwDay; DWORD dwHour; DWORD dwMinute; DWORD dwSecond; DWORD dwMillisecond; DWORD dwFrameNum; DWORD dwFrameRate; DWORD dwFlag; DWORD dwFilePos; DWORD dwPacketType; DWORD dwPacketSize; unsigned char* pPacketBuffer; BYTE byRes1[4]; DWORD dwPacketMode; BYTE byRes2[16]; DWORD dwReserved[6]; }NET_DVR_PACKET_INFO_EX, *LPNET_DVR_PACKET_INFO_EX; typedef BOOL (* DEV_WORK_STATE_CB)(void* pUserdata, int iUserID, LPNET_DVR_WORKSTATE_V40 lpWorkState); typedef struct tagNetDVRCheckDevState { DWORD dwTimeout; DEV_WORK_STATE_CB fnStateCB; void* pUserData; BYTE byRes[60]; }NET_DVR_CHECK_DEV_STATE,*LPNET_DVR_CHECK_DEV_STATE; #define COURSE_NAME_LEN_128 128 #define INSTRUCTOR_NAME_LEN_64 64 #define MAX_UUID_LEN 64 typedef struct tagNET_DVR_COURSE_LIST_COND { DWORD dwSize; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byCourseName[COURSE_NAME_LEN_128]; BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; BYTE byCourseType; BYTE byRes[603]; }NET_DVR_COURSE_LIST_COND,*LPNET_DVR_COURSE_LIST_COND; typedef struct tagNET_DVR_COURSE_CFG { DWORD dwSize; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byCourseName[COURSE_NAME_LEN_128]; BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; BYTE byCourseDescription[COURSE_DESCRIPTION_LEN ]; BYTE byRecUUID[MAX_UUID_LEN]; BYTE byCourseType; BYTE byRes[303]; }NET_DVR_COURSE_CFG, *LPNET_DVR_COURSE_CFG; typedef struct tagNET_DVR_RECORD_STATUS { DWORD dwSize; BYTE byRecUUID[MAX_UUID_LEN]; BYTE byRecordStatus; BYTE byRes1[3]; DWORD dwRecordingTime; BYTE byRes[596]; }NET_DVR_RECORD_STATUS, *LPNET_DVR_RECORD_STATUS; typedef struct tagNET_DVR_MANUAL_CURRICULUM_CFG { DWORD dwSize; BYTE byRecUUID[MAX_UUID_LEN]; BYTE byCourseName[COURSE_NAME_LEN_128]; BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; BYTE byCourseDescription[COURSE_DESCRIPTION_LEN ]; BYTE byCmdType; BYTE byRes[303]; }NET_DVR_MANUAL_CURRICULUM_CFG, *LPNET_DVR_MANUAL_CURRICULUM_CFG; typedef struct tagNET_DVR_IMAGE_DIFF_DETECTION_CFG { DWORD dwSize; NET_VCA_POLYGON struRegion; BYTE byEnabled; BYTE byThreshold; BYTE bySensitivity; BYTE byVideoInputType; BYTE byRes[300]; }NET_DVR_IMAGE_DIFF_DETECTION_CFG, *LPNET_DVR_IMAGE_DIFF_DETECTION_CFG; typedef struct tagNET_DVR_RECORDING_PUBLISH_FILE_COND { DWORD dwSize; DWORD dwChannel; BYTE byFileID[MAX_ID_LEN_128]; BYTE byRes[300]; }NET_DVR_RECORDING_PUBLISH_FILE_COND, *LPNET_DVR_RECORDING_PUBLISH_FILE_COND; typedef struct tagNET_DVR_RECORDING_PUBLISH_FILE_INFO { DWORD dwSize; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byCourseName[COURSE_NAME_LEN_128]; BYTE byInstructorName[INSTRUCTOR_NAME_LEN_64]; BYTE byCourseDescription[COURSE_DESCRIPTION_LEN ]; BYTE byRes[300]; }NET_DVR_RECORDING_PUBLISH_FILE_INFO, *LPNET_DVR_RECORDING_PUBLISH_FILE_INFO; typedef struct tagNET_DVR_SCREEN_POINT { WORD wX; WORD wY; }NET_DVR_SCREEN_POINT,*LPNET_DVR_SCREEN_POINT; typedef struct tagNET_DVR_MOUSE_PARAM { BYTE byMouseEvent; BYTE byRes1[3]; NET_DVR_SCREEN_POINT struMousePoint; BYTE byRes2[8]; }NET_DVR_MOUSE_PARAM, *LPNET_DVR_MOUSE_PARAM; typedef struct tagNET_DVR_MARK_PARAM { BYTE byMarkEvent; BYTE byMarkTool; BYTE byLineWidth; BYTE byMouseEvent; NET_DVR_RGB_COLOR struColor; NET_DVR_SCREEN_POINT struPoint; BYTE byRes[4]; }NET_DVR_MARK_PARAM, *LPNET_DVR_MARK_PARAM; typedef struct tagNET_DVR_KEYBOARD_PARM { DWORD dwKeyValue; BYTE byRes[12]; }NET_DVR_KEYBOARD_PARAM, *LPNET_DVR_KEYBOARD_PARAM; typedef struct tagNET_DVR_PPT_PARAM { BYTE byPPTAction; BYTE byRes1[3]; NET_DVR_SCREEN_POINT struPoint; DWORD dwPPTNo; BYTE byRes2[4]; }NET_DVR_PPT_PARAM, *LPNET_DVR_PPT_PARAM; typedef struct tagNET_DVR_REMOTE_CTRL_PARAM { BYTE byRemoteCtrlCmd; BYTE byRes1[3]; DWORD dwCtrlParam; BYTE byRes2[8]; }NET_DVR_REMOTE_CTRL_PARAM, *LPNET_DVR_REMOTE_CTRL_PARAM; typedef struct tagNET_DVR_SPOTLIGHT_PARAM { BYTE byCmd; BYTE byRes1[3]; NET_DVR_SCREEN_POINT struPoint; DWORD dwRadius; BYTE byRes2[4]; } NET_DVR_SPOTLIGHT_PARAM, *LPNET_DVR_SPOTLIGHT_PARAM; typedef struct tagNET_DVR_TOUCHPAD_PARAM { BYTE byMouseEvent; BYTE byRes1[3]; int iXDisplacement; int iYDisplacement; BYTE byRes2[4]; }NET_DVR_TOUCHPAD_PARAM, *LPNET_DVR_TOUCHPAD_PARAM; typedef struct tagNET_DVR_MEDIA_LIST_PARAM { BYTE byOperateCmd; BYTE byRes[15]; }NET_DVR_MEDIA_LIST_PARAM, *LPNET_DVR_MEDIA_LIST_PARAM; typedef union tagNET_DVR_SCREEN_CTRL_PARAM { NET_DVR_MOUSE_PARAM struMouseParam; NET_DVR_MARK_PARAM struMarkParam; NET_DVR_KEYBOARD_PARAM struKeyboardInfo; NET_DVR_PPT_PARAM struPPTParam; NET_DVR_REMOTE_CTRL_PARAM struRemoteCtrlParam; NET_DVR_SPOTLIGHT_PARAM struSpotLight; NET_DVR_TOUCHPAD_PARAM struTouchPadParam; NET_DVR_MEDIA_LIST_PARAM struMediaListParam; BYTE byRes[16]; }NET_DVR_SCREEN_CTRL_PARAM, *LPNET_DVR_SCREEN_CTRL_PARAM; typedef struct tagNET_DVR_SCREEN_CTRL_CMD { DWORD dwSize; BYTE byCmdType; BYTE byRes1[3]; NET_DVR_SCREEN_CTRL_PARAM struScreenCtrlParam; }NET_DVR_SCREEN_CTRL_CMD, *LPNET_DVR_SCREEN_CTRL_CMD; typedef struct tagNET_DVR_FILE_RESPONSE_PARAM { BYTE byFileState; BYTE byRes1[3]; DWORD dwErrorFileIndex; BYTE byRes2[24]; } NET_DVR_FILE_RESPONSE_PARAM, *LPNET_DVR_FILE_RESPONSE_PARAM; typedef struct tagNET_DVR_PPT_RESPONSE_PARAM { BYTE byCurrentState; BYTE byRes1[3]; DWORD dwCurrentPage; DWORD dwFileIndex; DWORD dwTotalPageNum; BYTE byRes2[16]; }NET_DVR_PPT_RESPONSE_PARAM, *LPNET_DVR_PPT_RESPONSE_PARAM; typedef union tagNET_DVR_SCREEN_RESPONSE_PARAM { BYTE byRes[32]; NET_DVR_PPT_RESPONSE_PARAM struPPTParam; NET_DVR_FILE_RESPONSE_PARAM struFileParam; }NET_DVR_SCREEN_RESPONSE_PARAM,*LPNET_DVR_SCREEN_RESPONSE_PARAM; typedef struct tagNET_DVR_SCREEN_RESPONSE_CMD { DWORD dwSize; BYTE byResponseCmd; BYTE byRes1[3]; NET_DVR_SCREEN_RESPONSE_PARAM struResonseParam; BYTE byRes2[16]; }NET_DVR_SCREEN_RESPONSE_CMD, *LPNET_DVR_SCREEN_RESPONSE_CMD; typedef struct tagNET_DVR_SCREEN_FILE_COND { DWORD dwSize; BYTE byFileType; BYTE byRes[127]; }NET_DVR_SCREEN_FILE_COND, *LPNET_DVR_SCREEN_FILE_COND; typedef struct tagNET_DVR_SCREEN_FILE_INFO { DWORD dwSize; DWORD dwFileIndex; BYTE byFileType; BYTE byPictureFormat; BYTE byVideoFormat; BYTE byDocumentFormat; BYTE byFileName[NET_SDK_MAX_FILE_PATH]; DWORD dwFileSize; DWORD dwPPTPage; BYTE byOtherFileFormat[8]; BYTE byRes1[56]; }NET_DVR_SCREEN_FILE_INFO, *LPNET_DVR_SCREEN_FILE_INFO; typedef struct tagNET_DVR_SCREEN_CONFIG { DWORD dwSize; BYTE byVolume; BYTE byContrast; BYTE byBrightness; BYTE byScreenShowEnabled; BYTE byScreenLocked; BYTE byBlackScreenEnabled; BYTE byRes[30]; }NET_DVR_SCREEN_CONFIG, *LPNET_DVR_SCREEN_CONFIG; typedef struct tagNET_DVR_SCREEM_FILE_UPLOAD_PARAM { DWORD dwSize; BYTE byFileType; BYTE byPictureFormat; BYTE byVideoFormat; BYTE byDocumentFormat; BYTE byFileName[NET_SDK_MAX_FILE_PATH]; BYTE byOtherFileFormat[8]; BYTE byRes1[56]; }NET_DVR_SCREEM_FILE_UPLOAD_PARAM, *LPNET_DVR_SCREEM_FILE_UPLOAD_PARAM; typedef struct tagNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM { DWORD dwSize; DWORD dwFileIndex; DWORD dwPPTPageNo; BYTE byRes2[64]; }NET_DVR_SCREEM_FILE_DOWNLOAD_PARAM, *LPNET_DVR_SCREEM_FILE_DOWNLOAD_PARAM; typedef struct tagNET_DVR_TV_SCREEN_COND { DWORD dwSize; DWORD dwChannel; WORD wTVScreenNo; BYTE byRes[62]; }NET_DVR_TV_SCREEN_COND, *LPNET_DVR_TV_SCREEN_COND; typedef struct tagNET_DVR_TV_SCREEN_CFG { DWORD dwSize; DWORD dwPicStayTime; BYTE byRes[256]; }NET_DVR_TV_SCREEN_CFG, *LPNET_DVR_TV_SCREEN_CFG; typedef struct tagNET_DVR_BV_CALIB_COND { DWORD dwSize; DWORD dwChannels; BYTE byRes[300]; }NET_DVR_BV_CALIB_COND, *LPNET_DVR_BV_CALIB_COND; typedef struct tagNET_DVR_BV_CALIB_PIC { DWORD dwSize; DWORD dwPicID; DWORD dwPicLen1; DWORD dwPicLen2; char* pPicBuffer1; char* pPicBuffer2; BYTE byRes[600]; }NET_DVR_BV_CALIB_PIC, *LPNET_DVR_BV_CALIB_PIC; typedef struct tagNET_DVR_BV_CALIB_PARAM { DWORD dwPicID; NET_VCA_POINT struPoint; BYTE byRes[32]; }NET_DVR_BV_CALIB_PARAM, *LPNET_DVR_BV_CALIB_PARAM; typedef struct tagNET_DVR_BV_CALIB_INFO { DWORD dwSize; DWORD dwBVCalibNumber; NET_DVR_BV_CALIB_PARAM struBVCalibParam[12]; DWORD dwHumanHeight; DWORD dwChannel; BYTE byRes[300]; }NET_DVR_BV_CALIB_INFO, *LPNET_DVR_BV_CALIB_INFO; typedef struct tagNET_DVR_BV_CALIB_RESULT { DWORD dwSize; DWORD dwCameraHeight; float fPitchAngle; float fInclineAngle; BYTE byRes[300]; }NET_DVR_BV_CALIB_RESULT, *LPNET_DVR_BV_CALIB_RESULT; typedef struct tagNET_DVR_BV_HCORRECTION_COND { DWORD dwSize; DWORD dwChannels; DWORD dwPicID; BYTE byRes[300]; }NET_DVR_BV_HCORRECTION_COND, *LPNET_DVR_BV_HCORRECTION_COND; typedef struct tagNET_DVR_BV_HCORRECTION_CFG { DWORD dwSize; DWORD dwHumanHeight; BYTE byRes[300]; }NET_DVR_BV_HCORRECTION_CFG, *LPNET_DVR_BV_HCORRECTION_CFG; typedef struct tagNET_DVR_TMEVOICE_CFG { DWORD dwSize; BYTE byVoiceSpeed; BYTE byVoicePitch; BYTE byVoiceVolum; BYTE byVoicePlateEnable; DWORD dwVoiceRole; char sInfo[MAX_TMEVOICE_LEN]; char sFileName[MAX_TMEVOICE_LEN]; BYTE byRes[64]; }NET_DVR_TMEVOICE_CFG,*LPNET_DVR_TMEVOICE_CFG; typedef struct tagNET_DVR_INPUT_BOARD_CFG { DWORD dwSize; DWORD dwSlotNo; BYTE byFullFrameEnable; BYTE byRes[3]; BYTE byRes1[64]; }NET_DVR_INPUT_BOARD_CFG, *LPNET_DVR_INPUT_BOARD_CFG; typedef struct tagNET_DVR_INPUT_BOARD_CFG_LIST { DWORD dwSize; NET_DVR_INPUT_BOARD_CFG struBoardList[MAX_NUM_INPUT_BOARD]; }NET_DVR_INPUT_BOARD_CFG_LIST, *LPNET_DVR_INPUT_BOARD_CFG_LIST; typedef struct _NET_DVR_ENCRYPT_DEVICE_COND { DWORD dwSize; DWORD dwChannel; BYTE byAlgorithm; BYTE byModelLen; BYTE byCERTSaveLocation; BYTE byRes[29]; }NET_DVR_ENCRYPT_DEVICE_COND, *LPNET_DVR_ENCRYPT_DEVICE_COND; typedef struct _NET_DVR_ENCRYPT_DEVICE_INFO { DWORD dwSize; BYTE byAlgorithm; BYTE byModelLen; BYTE byRes1[30]; DWORD dwPublicKeyLen; char szPublicKey[MAX_PUBLIC_KEY_LEN]; char szChipSerialNumber[CHIP_SERIALNO_LEN]; char szDeviceID[ENCRYPT_DEV_ID_LEN]; BYTE byRes2[128]; }NET_DVR_ENCRYPT_DEVICE_INFO, *LPNET_DVR_ENCRYPT_DEVICE_INFO; typedef struct _NET_DVR_ENCRYPT_CERT_PARAM { DWORD dwSize; WORD wCertType; BYTE byRes1[2]; DWORD dwCertLen; BYTE byRes2[32]; char* pCertBuf; }NET_DVR_ENCRYPT_CERT_PARAM, *LPNET_DVR_ENCRYPT_CERT_PARAM; #define MAX_RING_NAME_LEN_128 128 typedef struct tagNET_DVR_RING_UPLOAD_CFG { DWORD dwSize; DWORD dwRingID; BYTE byRingName[MAX_RING_NAME_LEN_128]; DWORD dwRingSize; BYTE byRingType; BYTE byRes[363]; }NET_DVR_RING_UPLOAD_CFG,*LPNET_DVR_RING_UPLOAD_CFG; typedef struct tagNET_DVR_RING_SEARCH_COND { DWORD dwSize; DWORD dwRingID; BYTE byRes[300]; }NET_DVR_RING_SEARCH_COND,*LPNET_DVR_RING_SEARCH_COND; typedef struct tagNET_DVR_RING_SEARCH_CFG { DWORD dwSize; DWORD dwRingID; BYTE byRingName[MAX_RING_NAME_LEN_128]; DWORD dwRingSize; BYTE byRingType; BYTE byRes[303]; }NET_DVR_RING_SEARCH_CFG,*LPNET_DVR_RING_SEARCH_CFG; typedef struct tagNET_DVR_ALARMCTRL_CFG { DWORD dwSize; BYTE byListenPicUploadEnabled; BYTE byRes [259]; }NET_DVR_ALARMCTRL_CFG,*LPNET_DVR_ALARMCTRL_CFG; typedef struct tagNET_DVR_VEHICLEFLOW_COND { DWORD dwSize; DWORD dwChannel; BYTE byLane; BYTE byRes1[3]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byRes[256]; }NET_DVR_VEHICLEFLOW_COND, *LPNET_DVR_VEHICLEFLOW_COND; typedef struct tagNET_DVR_VEHICLEFLOW_INFO { DWORD dwVehicleFlowValue; BYTE byRes[64]; }NET_DVR_VEHICLEFLOW_INFO, *LPNET_DVR_VEHICLEFLOW_INFO; typedef struct tagNET_DVR_VEHICLEFLOW_CFG { DWORD dwSize; NET_DVR_VEHICLEFLOW_INFO struVehFlow[MAX_VEHICLEFLOW_INFO]; BYTE byRes[512]; }NET_DVR_VEHICLEFLOW_CFG, *LPNET_DVR_VEHICLEFLOW_CFG; typedef struct tagNET_DVR_IPADDR_FILTER_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[64]; }NET_DVR_IPADDR_FILTER_COND, *LPNET_DVR_IPADDR_FILTER_COND; typedef struct tagNET_DVR_TEMPHUMSENSOR { DWORD dwSize; BYTE byEnable; BYTE byCtrlMode; BYTE byTemperatureValue; BYTE byHumidityValue; BYTE byFanSwitch; BYTE byThermometryUnit; BYTE byRes[62]; }NET_DVR_TEMPHUMSENSOR, *LPNET_DVR_TEMPHUMSENSOR; typedef struct tagNET_DVR_POSTRADARSPEED_CFG { DWORD dwSize; BYTE byLaneType; BYTE byRes1[3]; DWORD dwInterval; DWORD dwSignSpeed; DWORD dwSpeedLimit; DWORD dwBigCarSignSpeed; DWORD dwBigCarSpeedLimit; DWORD dwLowSpeedLimit; DWORD dwBigCarLowSpeedLimit; BYTE byCheckPostEnabled; BYTE byOverSpeedEnabled; BYTE byRes[246]; }NET_DVR_POSTRADARSPEED_CFG, *LPNET_DVR_POSTRADARSPEED_CFG; typedef struct tagNET_DVR_POSTRADARPARAM_CFG { DWORD dwSize; BYTE bySoftWareVersion[32]; BYTE byID; BYTE byWorkMode; BYTE bySpeedType; BYTE byDirectionFilter; DWORD dwAngleCorrect; DWORD dwSensitivity; DWORD dwSpeedLowLimit; DWORD dwTrigDistance; BYTE byRes[256]; }NET_DVR_POSTRADARPARAM_CFG, *LPNET_DVR_POSTRADARPARAM_CFG; typedef struct tagNET_DVR_CLOUD_URL_COND { DWORD dwSize; BYTE byType; BYTE byRes[63]; }NET_DVR_CLOUD_URL_COND, *LPNET_DVR_CLOUD_URL_COND; typedef struct tagNET_DVR_CLOUD_URL { DWORD dwSize; char szURL[256]; BYTE byRes[256]; }NET_DVR_CLOUD_URL, *LPNET_DVR_CLOUD_URL; typedef struct tagNET_DVR_CLOUD_CFG { DWORD dwSize; BYTE byEnable; BYTE byType; BYTE byStatus; BYTE byRes1; char szAuthCode[CODE_LEN]; char szAlias[ALIAS_LEN]; INT64 i64TotalCapability; INT64 i64UsedSpace; BYTE byRes2[256]; }NET_DVR_CLOUD_CFG, *LPNET_DVR_CLOUD_CFG; typedef struct tagNET_DVR_CLOUD_UPLOADSTRATEGY_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[254]; }NET_DVR_CLOUD_UPLOADSTRATEGY_COND, *LPNET_DVR_CLOUD_UPLOADSTRATEGY_COND; typedef struct tagNET_DVR_CLOUD_UPLOADSTRATEGY { DWORD dwSize; BYTE byStrategyType; BYTE byRes1[3]; DWORD dwRecordType; BYTE byRes[256]; }NET_DVR_CLOUD_UPLOADSTRATEGY, *LPNET_DVR_CLOUD_UPLOADSTRATEGY; typedef struct tagNET_DVR_RECORD_CHECK_COND { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE byCheckType; BYTE byRes1[3]; NET_DVR_TIME_EX struBeginTime; NET_DVR_TIME_EX struEndTime; BYTE byRes[128]; }NET_DVR_RECORD_CHECK_COND, *LPNET_DVR_RECORD_CHECK_COND; typedef struct tagNET_DVR_RECORD_CHECK_RET { DWORD dwSize; BYTE byRecordNotComplete; BYTE byRes1[3]; NET_DVR_TIME_EX struBeginTime; NET_DVR_TIME_EX struEndTime; BYTE byRes[128]; }NET_DVR_RECORD_CHECK_RET, *LPNET_DVR_RECORD_CHECK_RET; typedef struct tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE byRes[128]; }NET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND, *LPNET_DVR_ADD_RECORD_PASSBACK_MANUAL_COND; typedef struct tagNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG { DWORD dwSize; NET_DVR_TIME_EX struBeginTime; NET_DVR_TIME_EX struEndTime; BYTE byRes[128]; }NET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG, *LPNET_DVR_ADD_RECORD_PASSBACK_MANUAL_CFG; typedef struct tagNET_DVR_RECORD_PASSBACK_TASK_CFG { DWORD dwSize; DWORD dwTaskID; BYTE byRes[160]; }NET_DVR_RECORD_PASSBACK_TASK_CFG, *LPNET_DVR_RECORD_PASSBACK_TASK_CFG; typedef struct tagNET_DVR_RECORD_PASSBACK_MANUAL_COND { DWORD dwSize; BYTE byType; BYTE byTimeSegmentQuety; BYTE byRes1[2]; NET_DVR_STREAM_INFO struStreamInfo; NET_DVR_TIME_EX struBeginTime; NET_DVR_TIME_EX struEndTime; DWORD dwTaskID; BYTE byRes[108]; }NET_DVR_RECORD_PASSBACK_MANUAL_COND, *LPNET_DVR_RECORD_PASSBACK_MANUAL_COND; typedef struct tagNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; DWORD dwTaskID; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struStopTime; BYTE byTaskStatus; BYTE byRes1[3]; NET_DVR_TIME_EX struExecuteStartTime; NET_DVR_TIME_EX struExecuteStopTime; BYTE byRes[128]; }NET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET, *LPNET_DVR_RECORD_PASSBACK_MANUAL_TASK_RET; typedef struct tagNET_DVR_RECORD_PASSBACK_MANUAL_CTRL { DWORD dwSize; BYTE byControlType; BYTE byRes[131]; }NET_DVR_RECORD_PASSBACK_MANUAL_CTRL, *LPNET_DVR_RECORD_PASSBACK_MANUAL_CTRL; typedef struct tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND { DWORD dwSize; BYTE byDelType; BYTE byRes[131]; }NET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND, *LPNET_DVR_DEL_RECORD_PASSBACK_MANUAL_COND; typedef struct tagNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG { DWORD dwSize; DWORD dwTaskID; NET_DVR_STREAM_INFO struStreamInfo; BYTE byRes[128]; }NET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG, *LPNET_DVR_DEL_RECORD_PASSBACK_MANUAL_CFG; typedef struct tagNET_DVR_PASSBACK_DAY { BYTE byAllDay; BYTE byRes[3]; }NET_DVR_PASSBACK_DAY, *LPNET_DVR_PASSBACK_DAY; typedef struct tagNET_DVR_PASSBACK_SCHED { NET_DVR_SCHEDTIME struPassBackTime; BYTE byRes[4]; }NET_DVR_PASSBACK_SCHED, *LPNET_DVR_PASSBACK_SCHED; typedef struct tagNET_DVR_RECORD_PASSBACK_SCH_CFG_ { DWORD dwSize; BYTE byEnable; BYTE byPassBackWeek; BYTE byRes1[2]; NET_DVR_PASSBACK_DAY struPassBackDay[MAX_DAYS]; NET_DVR_PASSBACK_SCHED struPassBackSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[128]; }NET_DVR_RECORD_PASSBACK_SCH_CFG, *LPNET_DVR_RECORD_PASSBACK_SCH_CFG; typedef struct tagNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG_ { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; NET_DVR_PASSBACK_DAY struPassBackDay[MAX_DAYS]; NET_DVR_PASSBACK_SCHED struPassBackSched[MAX_DAYS][MAX_TIMESEGMENT_V30]; BYTE byRes[256]; }NET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG, *LPNET_DVR_RECORD_PASSBACK_HISTORY_PLAN_CFG; typedef struct tagNET_DVR_DEV_STORAGE_CFG { DWORD dwSize; DWORD dwCapacityTotal; DWORD dwFreeSpaceTotal; DWORD dwLockedRecordSpace; DWORD dwUnLockedSpace; BYTE byRes[512]; }NET_DVR_DEV_STORAGE_CFG, *LPNET_DVR_DEV_STORAGE_CFG; typedef struct tagNET_DVR_ONE_KEY_CFG_V50 { DWORD dwSize; BYTE byRaidType; BYTE bySpareRaidProportion; BYTE byPicQuota; BYTE byRes[257]; }NET_DVR_ONE_KEY_CFG_V50, *LPNET_DVR_ONE_KEY_CFG_V50; typedef struct tagNET_DVR_ONE_KEY_RESULT_V51 { DWORD dwState; BYTE byProgress; BYTE byRes[259]; }NET_DVR_ONE_KEY_RESULT_V51, *LPNET_DVR_ONE_KEY_RESULT_V51; typedef struct tagNET_DVR_ONE_KEY_CFG_SAN_V50 { DWORD dwSize; BYTE byRaidType; BYTE bySpareRaidProportion; BYTE byRes[254]; }NET_DVR_ONE_KEY_CFG_SAN_V50, *LPNET_DVR_ONE_KEY_CFG_SAN_V50; typedef struct tagNET_DVR_REC_PASSBACK_BASIC_CFG { DWORD dwSize; DWORD dwStartTime; DWORD dwStopTime; WORD wMaxTotalConcurrenceNum; WORD wMaxDvrConcurrenceNum; BYTE byRes[256]; }NET_DVR_REC_PASSBACK_BASIC_CFG, *LPNET_DVR_REC_PASSBACK_BASIC_CFG; typedef struct tagNET_DVR_ONLINE_USER_INFO_ { DWORD dwSize; WORD wOnlineUserCount; BYTE byRes[514]; }NET_DVR_ONLINE_USER_INFO, *LPNET_DVR_ONLINE_USER_INFO; typedef struct tagNET_DVR_RECORD_SEGMENT_COND_ { DWORD dwSize; NET_DVR_STREAM_INFO struStreanInfo; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struStopTime; BYTE byRes[256]; }NET_DVR_RECORD_SEGMENT_COND, *LPNET_DVR_RECORD_SEGMENT_COND; typedef struct tagNET_DVR_RECORD_SEGMENT_RET_ { DWORD dwSize; DWORD dwRecordTotalSize; BYTE byRes[256]; }NET_DVR_RECORD_SEGMENT_RET, *LPNET_DVR_RECORD_SEGMENT_RET; typedef struct tagNET_DVR_ACCESSORY_CARD_INFO { DWORD dwSize; BYTE szAccessoryCardInfo[MAX_ACCESSORY_CARD]; BYTE byRes[512]; }NET_DVR_ACCESSORY_CARD_INFO, *LPNET_DVR_ACCESSORY_CARD_INFO; typedef struct tagNET_DVR_SEARCH_INFO_COND { DWORD dwSize; BYTE byCommand; BYTE byRes1[3]; DWORD dwEmployeeNo; BYTE byName[NAME_LEN]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byRes[128]; }NET_DVR_SEARCH_INFO_COND, *LPNET_DVR_SEARCH_INFO_COND; typedef struct tagNET_DVR_SCHEDULE_CHOICE { BYTE byScheduleType; BYTE byScheduleNo; BYTE byRes[14]; }NET_DVR_SCHEDULE_CHOICE, *LPNET_DVR_SCHEDULE_CHOICE; typedef struct tagNET_DVR_DISPINPUT_CFG { DWORD dwSize; DWORD dwDispInputNo; DWORD dwEDIDFileNo; BYTE byRes[32]; }NET_DVR_DISPINPUT_CFG, *LPNET_DVR_DISPINPUT_CFG; typedef struct tagNET_DVR_SCHEDULE_PLAN { DWORD dwSize; BYTE bySchedulePlanNo; BYTE bySchedulePlanType; BYTE byEnable; BYTE byRes1; NET_DVR_SCHEDULE_CHOICE struScheduleChoice[DAYS_A_WEEK]; NET_DVR_TIME_V30 struStartTime; NET_DVR_TIME_V30 struEndTime; BYTE byHolidayNo; BYTE byRes[63]; }NET_DVR_SCHEDULE_PLAN, *LPNET_DVR_SCHEDULE_PLAN; typedef struct tagNET_DVR_DISPINPUT_CFG_LIST { DWORD dwSize; DWORD dwDispInputNum; LPNET_DVR_DISPINPUT_CFG lpstruBuffer; DWORD dwBufferSize; BYTE byRes[32]; }NET_DVR_DISPINPUT_CFG_LIST, *LPNET_DVR_DISPINPUT_CFG_LIST; typedef struct tagNET_DVR_SCHEDULE_INFO_CFG { DWORD dwSize; DWORD dwEmployeeNo; BYTE byName[NAME_LEN]; BYTE byDepartmentName[NAME_LEN]; NET_DVR_SCHEDULE_PLAN struSchedulePlan; BYTE byRes[128]; }NET_DVR_SCHEDULE_INFO_CFG, *LPNET_DVR_SCHEDULE_INFO_CFG; typedef struct tagNET_DVR_ATTENDANCE_SUMMARY_CFG { DWORD dwSize; DWORD dwEmployeeNo; BYTE byName[NAME_LEN]; BYTE byDepartmentName[NAME_LEN]; DWORD dwWorkStandard; DWORD dwWorkActual; DWORD dwLateTimes; DWORD dwLateMinutes; DWORD dwLeaveEarlyTimes; DWORD dwLeaveEarlyMinutes; DWORD dwOvertimeStandard; DWORD dwOvertimeActual; DWORD dwAttendanceStandard; DWORD dwAttendanceActual; DWORD dwAbsentDays; BYTE byRes[128]; }NET_DVR_ATTENDANCE_SUMMARY_CFG, *LPNET_DVR_ATTENDANCE_SUMMARY_CFG; typedef struct tagNET_DVR_ATTENDANCE_RECORD_CFG { DWORD dwSize; DWORD dwEmployeeNo; BYTE byName[NAME_LEN]; BYTE byDepartmentName[NAME_LEN]; NET_DVR_TIME_V30 struAttendanceTime; BYTE byRes[128]; }NET_DVR_ATTENDANCE_RECORD_CFG, *LPNET_DVR_ATTENDANCE_RECORD_CFG; typedef struct tagNET_DVR_ATTENDANCE_TIME { NET_DVR_TIME_V30 struOnDutyTime; NET_DVR_TIME_V30 struOffDutyTime; }NET_DVR_ATTENDANCE_TIME, *LPNET_DVR_ATTENDANCE_TIME; typedef struct tagNET_DVR_ABNORMAL_CFG { DWORD dwSize; DWORD dwEmployeeNo; BYTE byName[NAME_LEN]; BYTE byDepartmentName[NAME_LEN]; NET_DVR_ATTENDANCE_TIME struAttendanceTime[ABNORMAL_INFO_NUM]; DWORD dwLateMinutes; DWORD dwLeaveEarlyMinutes; DWORD dwAbsenceMinutes; DWORD dwTotalMinutes; BYTE byRes[128]; }NET_DVR_ABNORMAL_CFG, *LPNET_DVR_ABNORMAL_CFG; typedef struct tagNET_DVR_CARD_CFG_V50 { DWORD dwSize; DWORD dwModifyParamType; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byCardValid; BYTE byCardType; BYTE byLeaderCard; BYTE byUserType; BYTE byDoorRight[MAX_DOOR_NUM_256]; NET_DVR_VALID_PERIOD_CFG struValid; BYTE byBelongGroup[MAX_GROUP_NUM_128]; BYTE byCardPassword[CARD_PASSWORD_LEN]; WORD wCardRightPlan[MAX_DOOR_NUM_256][MAX_CARD_RIGHT_PLAN_NUM]; DWORD dwMaxSwipeTime; DWORD dwSwipeTime; WORD wRoomNumber; SHORT wFloorNumber; DWORD dwEmployeeNo; BYTE byName[NAME_LEN]; WORD wDepartmentNo; WORD wSchedulePlanNo; BYTE bySchedulePlanType; BYTE byRightType; BYTE byRes2[2]; DWORD dwLockID; BYTE byLockCode[MAX_LOCK_CODE_LEN]; BYTE byRoomCode[MAX_DOOR_CODE_LEN]; DWORD dwCardRight; DWORD dwPlanTemplate; DWORD dwCardUserId; BYTE byCardModelType; BYTE byRes3[51]; BYTE bySIMNum[NAME_LEN]; }NET_DVR_CARD_CFG_V50, *LPNET_DVR_CARD_CFG_V50; typedef struct tagNET_DVR_CAPTURE_FINGERPRINT_COND { DWORD dwSize; BYTE byFingerPrintPicType; BYTE byFingerNo; BYTE byRes[126]; }NET_DVR_CAPTURE_FINGERPRINT_COND, *LPNET_DVR_CAPTURE_FINGERPRINT_COND; typedef struct tagNET_DVR_CAPTURE_FINGERPRINT_CFG { DWORD dwSize; DWORD dwFingerPrintDataSize; BYTE byFingerData[MAX_FINGER_PRINT_LEN]; DWORD dwFingerPrintPicSize; char* pFingerPrintPicBuffer; BYTE byFingerNo; BYTE byFingerPrintQuality; BYTE byRes[62]; }NET_DVR_CAPTURE_FINGERPRINT_CFG, *LPNET_DVR_CAPTURE_FINGERPRINT_CFG; typedef struct tagNET_DVR_CAPTURE_FACE_COND { DWORD dwSize; BYTE byRes[128]; }NET_DVR_CAPTURE_FACE_COND, *LPNET_DVR_CAPTURE_FACE_COND; typedef struct tagNET_DVR_CAPTURE_FACE_CFG { DWORD dwSize; DWORD dwFaceTemplate1Size; char* pFaceTemplate1Buffer; DWORD dwFaceTemplate2Size; char* pFaceTemplate2Buffer; DWORD dwFacePicSize; char* pFacePicBuffer; BYTE byFaceQuality1; BYTE byFaceQuality2; BYTE byCaptureProgress; BYTE byRes[125]; }NET_DVR_CAPTURE_FACE_CFG, *LPNET_DVR_CAPTURE_FACE_CFG; typedef struct tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE byRes[128]; }NET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND, *LPNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_SEND; typedef struct tagNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET { DWORD dwSize; NET_DVR_STREAM_INFO struStreamInfo; BYTE byExecutable; BYTE byUnexecutableReason; BYTE byRes[254]; }NET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET, *LPNET_DVR_REC_PASSBACK_MANUAL_EXECUTABLE_RET; typedef struct tagNET_DVR_STREAM_MEDIA_CFG { DWORD dwSize; BYTE sUrl[MAX_URL_LEN]; BYTE byRes[512]; }NET_DVR_STREAM_MEDIA_CFG, *LPNET_DVR_STREAM_MEDIA_CFG; typedef struct tagNET_DVR_SHIPSDETECTION_REGION_CFG { BYTE byRuleID; BYTE byEnable; BYTE bySensitivity; BYTE byFrameOverlayEnabled; BYTE byRes[36]; NET_ITC_POLYGON struPolygon; NET_VCA_LINE struTriggerLine; }NET_DVR_SHIPSDETECTION_REGION_CFG, *LPNET_DVR_SHIPSDETECTION_REGION_CFG; typedef struct tagNET_DVR_SHIPSDETECTION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; float fLookDownUpAngle; float fHorizontalHeight; NET_DVR_SHIPSDETECTION_REGION_CFG struShipsDetectionRegion[MAX_SHIPSDETE_REGION_NUM]; BYTE byRes[256]; }NET_DVR_SHIPSDETECTION_CFG, *LPNET_DVR_SHIPSDETECTION_CFG; typedef struct tagNET_DVR_TEMPERATURE_COLOR { BYTE byType; BYTE byRes1[3]; int iHighTemperature; int iLowTemperature; BYTE byRes[8]; }NET_DVR_TEMPERATURE_COLOR, *LPNET_DVR_TEMPERATURE_COLOR; typedef struct tagNET_DVR_THERMOMETRY_BASICPARAM { DWORD dwSize; BYTE byEnabled; BYTE byStreamOverlay; BYTE byPictureOverlay; BYTE byThermometryRange; BYTE byThermometryUnit; BYTE byThermometryCurve; BYTE byFireImageModea; BYTE byShowTempStripEnable; float fEmissivity; BYTE byDistanceUnit; BYTE byEnviroHumidity; BYTE byRes2[2]; NET_DVR_TEMPERATURE_COLOR struTempColor; int iEnviroTemperature; int iCorrectionVolume; BYTE bySpecialPointThermType; BYTE byReflectiveEnabled; WORD wDistance; float fReflectiveTemperature; float fAlert; float fAlarm; float fThermalOpticalTransmittance; float fExternalOpticsWindowCorrection; BYTE byDisplayMaxTemperatureEnabled; BYTE byDisplayMinTemperatureEnabled; BYTE byDisplayAverageTemperatureEnabled; BYTE byThermometryInfoDisplayposition; BYTE byRes[60]; }NET_DVR_THERMOMETRY_BASICPARAM, *LPNET_DVR_THERMOMETRY_BASICPARAM; typedef struct tagNET_DVR_THERMOMETRY_COND { DWORD dwSize; DWORD dwChannel; WORD wPresetNo; BYTE byRes[62]; }NET_DVR_THERMOMETRY_COND, *LPNET_DVR_THERMOMETRY_COND; typedef struct tagNET_DVR_THERMOMETRY_PRESETINFO_PARAM { BYTE byEnabled; BYTE byRuleID; WORD wDistance; float fEmissivity; BYTE byDistanceUnit; BYTE byRes[2]; BYTE byReflectiveEnabled; float fReflectiveTemperature; char szRuleName[NAME_LEN]; BYTE byRes1[63]; BYTE byRuleCalibType; NET_VCA_POINT struPoint; NET_VCA_POLYGON struRegion; }NET_DVR_THERMOMETRY_PRESETINFO_PARAM, *LPNET_DVR_THERMOMETRY_PRESETINFO_PARAM; typedef struct tagNET_DVR_THERMOMETRY_PRESETINFO { DWORD dwSize; WORD wPresetNo; BYTE byRes[2]; NET_DVR_THERMOMETRY_PRESETINFO_PARAM struPresetInfo[MAX_THERMOMETRY_REGION_NUM]; }NET_DVR_THERMOMETRY_PRESETINFO, *LPNET_DVR_THERMOMETRY_PRESETINFO; typedef struct tagNET_DVR_BASE_STATION_INFO_ALARM { DWORD dwSize; DWORD dwChannel; char sNetBarWaCode[16]; char sCollectionEquipmentID[24]; char sMCC[4]; char sMNC[4]; char sLAC[36]; char sCI[36]; char sBSCI[36]; char sBCCH[36]; char sLEV[36]; char sCollectionEquipmentLongitude[12]; char sCollectionEquipmentLatitude[12]; char sCaptureTime[20]; BYTE byRes[256]; }NET_DVR_BASE_STATION_INFO_ALARM, *LPNET_DVR_BASE_STATION_INFO_ALARM; typedef struct tagNET_DVR_THERMOMETRY_ALARMRULE_PARAM { BYTE byEnable; BYTE byRuleID; BYTE byRule; BYTE byRes; char szRuleName[NAME_LEN]; float fAlert; float fAlarm; float fThreshold; BYTE byRes1[64]; }NET_DVR_THERMOMETRY_ALARMRULE_PARAM, *LPNET_DVR_THERMOMETRY_ALARMRULE_PARAM; typedef struct tagNET_DVR_THERMOMETRY_ALARMRULE { DWORD dwSize; NET_DVR_THERMOMETRY_ALARMRULE_PARAM struThermometryAlarmRuleParam[THERMOMETRY_ALARMRULE_NUM]; BYTE byRes[128]; }NET_DVR_THERMOMETRY_ALARMRULE, *LPNET_DVR_THERMOMETRY_ALARMRULE; typedef struct tagNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM { BYTE byEnable; BYTE byRuleID; BYTE byAlarmID1; BYTE byAlarmID2; BYTE byRule; BYTE byRes[3]; float fTemperatureDiff; BYTE byRes1[32]; }NET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM, *LPNET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM; typedef struct tagNET_DVR_THERMOMETRY_DIFFCOMPARISON { DWORD dwSize; NET_DVR_THERMOMETRY_DIFFCOMPARISON_PARAM struDiffComparison[MAX_THERMOMETRY_DIFFCOMPARISON_NUM]; BYTE byRes[64]; }NET_DVR_THERMOMETRY_DIFFCOMPARISON, *LPNET_DVR_THERMOMETRY_DIFFCOMPARISON; typedef struct tagNET_DVR_REALTIME_THERMOMETRY_COND { DWORD dwSize; DWORD dwChan; BYTE byRuleID; BYTE byMode; BYTE byRes[62]; }NET_DVR_REALTIME_THERMOMETRY_COND, *LPNET_DVR_REALTIME_THERMOMETRY_COND; typedef struct tagNET_DVR_POINT_THERM_CFG { float fTemperature; NET_VCA_POINT struPoint; BYTE byRes[120]; }NET_DVR_POINT_THERM_CFG, *LPNET_DVR_POINT_THERM_CFG; typedef struct tagNET_DVR_LINEPOLYGON_THERM_CFG { float fMaxTemperature; float fMinTemperature; float fAverageTemperature; float fTemperatureDiff; NET_VCA_POLYGON struRegion; BYTE byRes[32]; }NET_DVR_LINEPOLYGON_THERM_CFG, *LPNET_DVR_LINEPOLYGON_THERM_CFG; typedef struct tagNET_DVR_THERMOMETRY_UPLOAD { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; char szRuleName[NAME_LEN]; BYTE byRuleID; BYTE byRuleCalibType; WORD wPresetNo; NET_DVR_POINT_THERM_CFG struPointThermCfg; NET_DVR_LINEPOLYGON_THERM_CFG struLinePolygonThermCfg; BYTE byThermometryUnit; BYTE byDataType; BYTE byRes1; BYTE bySpecialPointThermType; float fCenterPointTemperature; float fHighestPointTemperature; float fLowestPointTemperature; NET_VCA_POINT struHighestPoint; NET_VCA_POINT struLowestPoint; BYTE byRes[96]; }NET_DVR_THERMOMETRY_UPLOAD, *LPNET_DVR_THERMOMETRY_UPLOAD; typedef struct tagNET_DVR_THERMOMETRY_ALARM { DWORD dwSize; DWORD dwChannel; BYTE byRuleID; BYTE byThermometryUnit; WORD wPresetNo; NET_PTZ_INFO struPtzInfo; BYTE byAlarmLevel; BYTE byAlarmType; BYTE byAlarmRule; BYTE byRuleCalibType; NET_VCA_POINT struPoint; NET_VCA_POLYGON struRegion; float fRuleTemperature; float fCurrTemperature; DWORD dwPicLen; DWORD dwThermalPicLen; DWORD dwThermalInfoLen; char* pPicBuff; char* pThermalPicBuff; char* pThermalInfoBuff; NET_VCA_POINT struHighestPoint; float fToleranceTemperature; DWORD dwAlertFilteringTime; DWORD dwAlarmFilteringTime; DWORD dwTemperatureSuddenChangeCycle; float fTemperatureSuddenChangeValue; BYTE byRes[40]; }NET_DVR_THERMOMETRY_ALARM, *LPNET_DVR_THERMOMETRY_ALARM; typedef struct tagNET_DVR_THERMOMETRY_DIFF_ALARM { DWORD dwSize; DWORD dwChannel; BYTE byAlarmID1; BYTE byAlarmID2; WORD wPresetNo; BYTE byAlarmLevel; BYTE byAlarmType; BYTE byAlarmRule; BYTE byRuleCalibType; NET_VCA_POINT struPoint[2]; NET_VCA_POLYGON struRegion[2]; float fRuleTemperatureDiff; float fCurTemperatureDiff; NET_PTZ_INFO struPtzInfo; DWORD dwPicLen; DWORD dwThermalPicLen; DWORD dwThermalInfoLen; char* pPicBuff; char* pThermalPicBuff; char* pThermalInfoBuff; BYTE byThermometryUnit; BYTE byRes1[3]; float fToleranceTemperature; DWORD dwAlarmFilteringTime; BYTE byRes[52]; }NET_DVR_THERMOMETRY_DIFF_ALARM, *LPNET_DVR_THERMOMETRY_DIFF_ALARM; typedef struct tagNET_DVR_SHIPSCOUNT_COND { DWORD dwSize; DWORD dwChannel; BYTE byRes[128]; }NET_DVR_SHIPSCOUNT_COND, *LPNET_DVR_SHIPSCOUNT_COND; typedef struct tagNET_DVR_SHIPSCOUNT_CFG { DWORD dwSize; DWORD dwUpShipsCount; DWORD dwDownShipsCount; DWORD dwLeftShipsCount; DWORD dwRightShipsCount; DWORD dwTotalCount; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byDataType; BYTE byRes[255]; }NET_DVR_SHIPSCOUNT_CFG, *LPNET_DVR_SHIPSCOUNT_CFG; typedef struct tagNET_DVR_SHIPSINFO { float fShipsLength; float fShipsHeight; float fShipsWidth; float fShipsSpeed; BYTE byShipsDirection; BYTE byShipsDetState; BYTE byTriggerLineID; BYTE byRes[61]; NET_VCA_POLYGON struShipsRect; } NET_DVR_SHIPSINFO, *LPNET_DVR_SHIPSINFO; typedef struct tagNET_DVR_SHIPSDETECTION_ALARM { DWORD dwSize; NET_VCA_DEV_INFO struDevInfo; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byShipsNum; BYTE byShipsNumHead; BYTE byShipsNumEnd; BYTE byRes1; NET_DVR_SHIPSINFO struShipInfo[MAX_SHIPS_NUM]; DWORD dwPicLen; DWORD dwThermalPicLen; BYTE* pPicBuffer; BYTE* pThermalPicBuffer; WORD wDevInfoIvmsChannelEx; BYTE byTimeDiffFlag; char cTimeDifferenceH; char cTimeDifferenceM; BYTE byRes[251]; }NET_DVR_SHIPSDETECTION_ALARM, *LPNET_DVR_SHIPSDETECTION_ALARM; typedef struct tagNET_DVR_THERMAL_PIP { DWORD dwSize; BYTE byEnable; BYTE byPipMode; BYTE byOverlapType; BYTE byTransparency; NET_VCA_POLYGON struPipRegion; BYTE byRes[640]; }NET_DVR_THERMAL_PIP, *LPNET_DVR_THERMAL_PIP; typedef struct tagNET_DVR_RULESLINE_CFG { NET_DVR_RGB_COLOR struRGB; BYTE byRes[128]; }NET_DVR_RULESLINE_CFG, *LPNET_DVR_RULESLINE_CFG; typedef struct tagNET_DVR_THERMAL_INTELRULE_DISPLAY { DWORD dwSize; BYTE byFontSizeType; BYTE byRes1[3]; NET_DVR_RULESLINE_CFG struNormalRulesLineCfg; NET_DVR_RULESLINE_CFG struAlertRulesLineCfg; NET_DVR_RULESLINE_CFG struAlarmRulesLineCfg; BYTE byRes[640]; }NET_DVR_THERMAL_INTELRULE_DISPLAY, *LPNET_DVR_THERMAL_INTELRULE_DISPLAY; typedef struct tagNET_DVR_BAREDATAOVERLAY_CFG { DWORD dwSize; BYTE byEnable; BYTE byIntervalTime; BYTE byRes[258]; }NET_DVR_BAREDATAOVERLAY_CFG, *LPNET_DVR_BAREDATAOVERLAY_CFG; typedef struct tagNET_DVR_THERMOMETRY_TRIGGER_COND { DWORD dwSize; DWORD dwChan; DWORD dwPreset; BYTE byRes[256]; }NET_DVR_THERMOMETRY_TRIGGER_COND, *LPNET_DVR_THERMOMETRY_TRIGGER_COND; typedef struct tagNET_DVR_MANUALDEICING_CFG { DWORD dwSize; BYTE byEnabled; BYTE byRes[127]; }NET_DVR_MANUALDEICING_CFG, *LPNET_DVR_MANUALDEICING_CFG; typedef struct tagNET_DVR_INPUT_SOURCE_TEXT_COND { DWORD dwSize; DWORD dwInputSourceNo; DWORD dwTextNo; BYTE byRes[32]; }NET_DVR_INPUT_SOURCE_TEXT_COND, *LPNET_DVR_INPUT_SOURCE_TEXT_COND; typedef struct tagNET_DVR_INPUT_SOURCE_TEXT { DWORD dwSize; DWORD dwTextNo; BYTE byEnable; BYTE byFontSize; BYTE byBkGroudMode; BYTE byRes[1]; DWORD dwXPosition; DWORD dwYPosition; NET_DVR_RGB_COLOR struForegroudColor; NET_DVR_RGB_COLOR struBackgroudColor; BYTE byTextContent[MAX_LEN_TEXT_CONTENT]; BYTE byRes1[64]; }NET_DVR_INPUT_SOURCE_TEXT, *LPNET_DVR_INPUT_SOURCE_TEXT; typedef struct tagNET_DVR_INPUT_SOURCE_TEXT_LIST { DWORD dwSize; NET_DVR_INPUT_SOURCE_TEXT struTextList[MAX_NUM_INPUT_SOURCE_TEXT]; BYTE byRes[64]; }NET_DVR_INPUT_SOURCE_TEXT_LIST, *LPNET_DVR_INPUT_SOURCE_TEXT_LIST; typedef struct tagNET_DVR_INPUT_SOURCE_RESOLUTION { DWORD dwSize; DWORD dwInputSignalNo; BYTE byEnabled; BYTE byRes; WORD wImageWidth; WORD wImageHeight; WORD wRefreshRate; BYTE byColorDepth; BYTE byScanType; BYTE byRes1[62]; }NET_DVR_INPUT_SOURCE_RESOLUTION, *LPNET_DVR_INPUT_SOURCE_RESOLUTION; typedef struct tagNET_DVR_INPUT_SOURCE_RESOLUTION_LIST { DWORD dwSize; DWORD dwInputSignalCnt; LPNET_DVR_INPUT_SOURCE_RESOLUTION lpstruBuffer; DWORD dwBufferSize; BYTE byRes[32]; }NET_DVR_INPUT_SOURCE_RESOLUTION_LIST, *LPNET_DVR_INPUT_SOURCE_RESOLUTION_LIST; typedef struct tagNET_DVR_LED_AREA_COND { DWORD dwSize; DWORD dwVideoWallNo; DWORD dwLEDAreaNo; BYTE byRes[32]; }NET_DVR_LED_AREA_COND, *LPNET_DVR_LED_AREA_COND; typedef struct tagNET_DVR_LED_AREA_INFO { DWORD dwSize; DWORD dwLEDAreaNo; NET_DVR_RECTCFG_EX struRect; DWORD dwaOutputNo[MAX_NUM_OUTPUT_CHANNEL]; BYTE byAreaType; BYTE byRes[31]; }NET_DVR_LED_AREA_INFO, *LPNET_DVR_LED_AREA_INFO; typedef struct tagNET_DVR_LED_AREA_INFO_LIST { DWORD dwSize; DWORD dwLEDAreaNum; LPNET_DVR_LED_AREA_INFO lpstruBuffer; DWORD dwBufferSize; BYTE byRes[32]; }NET_DVR_LED_AREA_INFO_LIST, *LPNET_DVR_LED_AREA_INFO_LIST; typedef struct tagNET_DVR_CALL_WAITTING_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1; WORD wWaitTime; BYTE byRes[512]; }NET_DVR_CALL_WAITTING_CFG, *LPNET_DVR_CALL_WAITTING_CFG; typedef struct tagNET_DVR_ALARM_LAMP_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1; WORD wFlashDuration; WORD wFlashIntervalTime; BYTE byRes[510]; }NET_DVR_ALARM_LAMP_CFG, *LPNET_DVR_ALARM_LAMP_CFG; typedef struct tagNET_DVR_VOICE_PROMPTION_CFG { DWORD dwSize; BYTE byEnable; BYTE byRes1[3]; BYTE byCenterBusyFile[NAME_LEN]; BYTE byRefusedFile[NAME_LEN]; BYTE byHangUpFile[NAME_LEN]; BYTE byCallWaittingFile[NAME_LEN]; BYTE byConsultWaittingFile[NAME_LEN]; BYTE byRes[480]; }NET_DVR_VOICE_PROMPTION_CFG, *LPNET_DVR_VOICE_PROMPTION_CFG; typedef struct tagNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG { DWORD dwSize; BYTE byCommand; BYTE byType; BYTE byRes[510]; }NET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG, *LPNET_DVR_EMERGENCE_ALARM_RSP_CTRL_CFG; typedef struct _tagNET_DVR_ALARMHOST_NETPARAM_V50 { DWORD dwSize; NET_DVR_IPADDR struIP; WORD wPort; BYTE byAddressType; BYTE byEnable; BYTE byDomainName[MAX_DOMAIN_NAME]; BYTE byReportProtocol; BYTE byDevID[ACCOUNTNUM_LEN_32]; BYTE byProtocolVersion; BYTE byRes1[3]; BYTE byEHomeKey[NET_SDK_EHOME_KEY_LEN]; BYTE byRes2[28]; } NET_DVR_ALARMHOST_NETPARAM_V50, *LPNET_DVR_ALARMHOST_NETPARAM_V50; typedef struct _tagNET_DVR_ALARMHOST_NETCFG_V50 { DWORD dwSize; NET_DVR_ALARMHOST_NETPARAM_V50 struNetCenter[MAX_CENTERNUM]; BYTE byRes1[128]; } NET_DVR_ALARMHOST_NETCFG_V50, *LPNET_DVR_ALARMHOST_NETCFG_V50; typedef enum tagSTREAM_TYPE{ STREAM_PS = 0x1, STREAM_3GPP = 0x2, }STREAM_TYPE; typedef enum tagNET_SDK_INIT_CFG_TYPE { NET_SDK_INIT_CFG_TYPE_CHECK_MODULE_COM = 0, NET_SDK_INIT_CFG_ABILITY = 1, NET_SDK_INIT_CFG_SDK_PATH = 2 }NET_SDK_INIT_CFG_TYPE; typedef struct tagNET_DVR_INIT_CHECK_MODULE_COM { BYTE byEnable; BYTE byRes[255]; }NET_DVR_INIT_CHECK_MODULE_COM, *LPNET_DVR_INIT_CHECK_MODULE_COM; typedef enum _INIT_CFG_MAX_NUM { INIT_CFG_NUM_2048 = 2048, INIT_CFG_NUM_5120 = 5120, INIT_CFG_NUM_10240 = 10240, INIT_CFG_NUM_15360 = 15360, INIT_CFG_NUM_20480 = 20480, }INIT_CFG_MAX_NUM; typedef struct tagNET_DVR_INIT_CFG_ABILITY { INIT_CFG_MAX_NUM enumMaxLoginUsersNum; INIT_CFG_MAX_NUM enumMaxAlarmNum; BYTE byRes[64]; }NET_DVR_INIT_CFG_ABILITY, *LPNET_DVR_INIT_CFG_ABILITY; typedef struct tagNET_DVR_LOCAL_SDK_PATH { char sPath[NET_SDK_MAX_FILE_PATH]; BYTE byRes[128]; }NET_DVR_LOCAL_SDK_PATH, *LPNET_DVR_LOCAL_SDK_PATH; typedef struct tagNET_DVR_SDKMEMPOOL_CFG { BYTE byRes[256]; }NET_DVR_SDKMEMPOOL_CFG, *LPNET_DVR_SDKMEMPOOL_CFG; typedef struct tagNET_DVR_RES_INFO { DWORD dwImageWidth; DWORD dwImageHeight; }NET_DVR_RES_INFO, *LPNET_DVR_RES_INFO; typedef struct tagNET_DVR_VS_INPUT_CHAN_INIT { DWORD dwSize; DWORD dwVSInputChan; DWORD dwResNums; NET_DVR_RES_INFO struResList[MAX_RES_NUM_ONE_VS_INPUT_CHAN]; BYTE byRes[32]; }NET_DVR_VS_INPUT_CHAN_INIT, *LPNET_DVR_VS_INPUT_CHAN_INIT; typedef struct tagNET_DVR_VS_INPUT_CHAN_INIT_LIST { DWORD dwSize; NET_DVR_VS_INPUT_CHAN_INIT struChanList[MAX_VS_INPUT_CHAN_NUM]; BYTE byRes[32]; }NET_DVR_VS_INPUT_CHAN_INIT_LIST, *LPNET_DVR_VS_INPUT_CHAN_INIT_LIST; typedef struct tagNET_DVR_VS_INPUT_CHAN_CFG { DWORD dwSize; DWORD dwVSInputChan; NET_DVR_RES_INFO struResolutin; BYTE byRes[64]; }NET_DVR_VS_INPUT_CHAN_CFG, *LPNET_DVR_VS_INPUT_CHAN_CFG; typedef struct tagNET_DVR_VS_NETSRC_CFG { DWORD dwSize; DWORD dwVSInputChan; BYTE byDispUrl[MAX_URL_LEN]; BYTE byEnabled; BYTE byRes[127]; }NET_DVR_VS_NETSRC_CFG, *LPNET_DVR_VS_NETSRC_CFG; typedef struct tagNET_DVR_EDID_FILE_INFO { DWORD dwSize; DWORD dwEDIDFileNo; BYTE byFileName[FILE_NAME_LEN]; BYTE byRes[32]; }NET_DVR_EDID_FILE_INFO, *LPNET_DVR_EDID_FILE_INFO; typedef struct tagNET_DVR_EDID_FILE_INFO_LIST { DWORD dwSize; DWORD dwEDIDFileNum; LPNET_DVR_EDID_FILE_INFO lpstruBuffer; DWORD dwBufferSize; BYTE byRes[32]; }NET_DVR_EDID_FILE_INFO_LIST, *LPNET_DVR_EDID_FILE_INFO_LIST; typedef struct tagNET_DVR_OSD_INFO { BYTE byEnabled; BYTE byEnabledFlash; BYTE byFontSize; BYTE byTransparent; NET_DVR_RGB_COLOR struColor; WORD wCoordinateX; WORD wCoordinateY; BYTE byContent[MAX_LEN_OSD_CONTENT]; BYTE byRes[32]; }NET_DVR_OSD_INFO, *LPNET_DVR_OSD_INFO; typedef struct tagNET_DVR_SUBWND_DECODE_OSD { DWORD dwSize; DWORD dwSubWndNo; DWORD dwOSDNums; NET_DVR_OSD_INFO struOSDList[MAX_NUM_OSD_ONE_SUBWND]; BYTE byRes[32]; }NET_DVR_SUBWND_DECODE_OSD, *LPNET_DVR_SUBWND_DECODE_OSD; typedef struct tagNET_DVR_SUBWND_DECODE_OSD_LIST { DWORD dwSize; NET_DVR_SUBWND_DECODE_OSD struSubWndList[MAX_NUM_SPLIT_WND]; BYTE byRes[32]; }NET_DVR_SUBWND_DECODE_OSD_LIST, *LPNET_DVR_SUBWND_DECODE_OSD_LIST; typedef struct tagNET_DVR_DECODE_CHANNEL_OSD { DWORD dwSize; NET_DVR_OSD_INFO struOSDInfo[MAX_NUM_OSD]; BYTE byRes[32]; }NET_DVR_DECODE_CHANNEL_OSD, *LPNET_DVR_DECODE_CHANNEL_OSD; typedef struct tagNET_DVR_THERMINTELL_PARAM { DWORD dwSize; BYTE byIntellType; BYTE byRes[127]; }NET_DVR_THERMINTELL_PARAM, *LPNET_DVR_THERMINTELL_PARAM; typedef struct tagNET_DVR_FACE_THERMOMETRY_ALARM { DWORD dwSize; DWORD dwChannel; BYTE byRuleID; BYTE byRes1[3]; BYTE byRuleName[NAME_LEN]; DWORD dwRelativeTime; DWORD dwAbsTime; BYTE byFaceDetectionState; BYTE byThermometryUnit; BYTE byAlarmRule; BYTE byRes2[1]; float fAlarmTemperature; float fRuleTemperature; DWORD dwVisibleLightImageLen; BYTE *pVisibleLightImage; DWORD dwFaceImageLen; BYTE *pFaceImage; NET_VCA_RECT struFaceRegion; float fMinTemperature; float fAverageTemperature; NET_VCA_POINT struMinTemperaturePoint; NET_VCA_POINT struMaxTemperaturePoint; BYTE byRes[720]; }NET_DVR_FACE_THERMOMETRY_ALARM, *LPNET_DVR_FACE_THERMOMETRY_ALARM; typedef struct tagNET_DVR_GUID_FILE_EXPORT { DWORD dwSize; char sLoginPassWord[NET_SDK_MAX_LOGIN_PASSWORD_LEN]; BYTE byRes[128]; }NET_DVR_GUID_FILE_EXPORT, *LPNET_DVR_GUID_FILE_EXPORT; typedef struct tagNET_DVR_LOGIN_PASSWORDCFG { DWORD dwSize; char sLoginPassWord[NET_SDK_MAX_LOGIN_PASSWORD_LEN]; BYTE byRes[256]; }NET_DVR_LOGIN_PASSWORDCFG, *LPNET_DVR_LOGIN_PASSWORDCFG; typedef struct tagNET_DVR_SINGLE_SECURITY_QUESTION_CFG { DWORD dwSize; DWORD dwId; char sAnswer[NET_SDK_MAX_ANSWER_LEN]; BYTE byMark; BYTE byRes[127]; }NET_DVR_SINGLE_SECURITY_QUESTION_CFG, *LPNET_DVR_SINGLE_SECURITY_QUESTION_CFG; typedef struct tagNET_DVR_SECURITY_QUESTION_CFG { DWORD dwSize; NET_DVR_SINGLE_SECURITY_QUESTION_CFG struSecurityQuestion[NET_SDK_MAX_QUESTION_LIST_LEN]; char sLoginPassWord[NET_SDK_MAX_LOGIN_PASSWORD_LEN]; BYTE byRes[512]; }NET_DVR_SECURITY_QUESTION_CFG, *LPNET_DVR_SECURITY_QUESTION_CFG; typedef struct tagNET_DVR_ALARMIN_TRIGGER_COND { DWORD dwSize; DWORD dwChannel; DWORD dwAlarmInNo; BYTE byRes[256]; }NET_DVR_ALARMIN_TRIGGER_COND, *LPNET_DVR_ALARMIN_TRIGGER_COND; typedef struct tagNET_DVR_FACELIB_GUARD_COND { DWORD dwSize; DWORD dwChannel; char szFDID[68]; BYTE byRes[128]; }NET_DVR_FACELIB_GUARD_COND, *LPNET_DVR_FACELIB_GUARD_COND; typedef struct tagNET_DVR_GUID_FILE_STATUS_INFO { DWORD dwSize; BYTE byLockStatus; BYTE byPasswd; BYTE byRetryNum; BYTE byRes1; DWORD dwLockTime; BYTE byRes[128]; }NET_DVR_GUID_FILE_STATUS_INFO, *LPNET_DVR_GUID_FILE_STATUS_INFO; typedef struct tagNET_DVR_THERMOMETRY_MODE { DWORD dwSize; BYTE byMode; BYTE byThermometryROIEnabled; BYTE byRes[62]; }NET_DVR_THERMOMETRY_MODE, *LPNET_DVR_THERMOMETRY_MODE; typedef struct tagNET_DVR_THERMAL_ALGINFO { DWORD dwSize; char sThermometryAlgName[NET_SDK_MAX_THERMOMETRYALGNAME]; char sShipsAlgName[NET_SDK_MAX_SHIPSALGNAME ]; char sFireAlgName[NET_SDK_MAX_FIRESALGNAME ]; BYTE byRes[768]; }NET_DVR_THERMAL_ALGINFO, *LPNET_DVR_THERMAL_ALGINFO; typedef struct tagNET_DVR_CURRENT_LOCK { DWORD dwSize; BYTE byCurrentLock; BYTE byRes[255]; }NET_DVR_CURRENT_LOCK, *LPNET_DVR_CURRENT_LOCK; typedef struct tagNET_VCA_FACESNAP_RAWDATA_ALARM_ { DWORD dwSize; DWORD dwRelativeTime; DWORD dwAbsTime; NET_VCA_DEV_INFO struDevInfo; DWORD dwJsonDataLen; BYTE* pJsonBuff; BYTE byRes[256]; }NET_VCA_FACESNAP_RAWDATA_ALARM, *LPNET_VCA_FACESNAP_RAWDATA_ALARM; typedef struct tagNET_SDK_LED_SCREEN_CHECK_PARAM { DWORD dwSize; BYTE byOperateType; BYTE byIsRGBSynChk; BYTE byRes1[2]; WORD wRgbPermil; WORD wRedPermil; WORD wGreenPermil; WORD wBluePermil; DWORD dwRectCount; NET_DVR_RECTCFG_EX struRectList[MAX_SCREEN_AREA_NUM]; BYTE byRes2[64]; }NET_SDK_LED_SCREEN_CHECK_PARAM, *LPNET_SDK_LED_SCREEN_CHECK_PARAM; typedef struct tagNET_SDK_SCREEN_CHECK_RESPONSE_DATA { DWORD dwSize; BYTE byDataType; BYTE byOperateType; BYTE byProgress; BYTE byStatus; NET_DVR_RECTCFG_EX struRect; BYTE byRes[64]; }NET_SDK_SCREEN_CHECK_RESPONSE_DATA, *LPNET_SDK_SCREEN_CHECK_RESPONSE_DATA; typedef struct tagNET_DVR_PLAY_BY_NAME_PARA { char szFileName[100]; BYTE byDownload; BYTE byRes1[127]; HWND hWnd; NET_DVR_ADDRESS struAddr; BYTE byRes2[256]; }NET_DVR_PLAY_BY_NAME_PARA, *LPNET_DVR_PLAY_BY_NAME_PARA; typedef struct tagNET_DVR_DOWNLOAD_BY_NAME_COND { char *pFileName; char *pSavedFileName; NET_DVR_ADDRESS struAddr; BYTE byRes[256]; }NET_DVR_DOWNLOAD_BY_NAME_COND, *LPNET_DVR_DOWNLOAD_BY_NAME_COND; typedef struct tagNET_DVR_PIC_PARAM { char *pDVRFileName; char *pSavedFileBuf; DWORD dwBufLen; DWORD *lpdwRetLen; NET_DVR_ADDRESS struAddr; BYTE byRes[256]; }NET_DVR_PIC_PARAM, *LPNET_DVR_PIC_PARAM; #define NET_SDK_MAX_INDENTITY_KEY_LEN 64 typedef struct tagNET_DVR_FACELIB_COND { DWORD dwSize; char szFDID[NET_SDK_MAX_FDID_LEN]; BYTE byConcurrent; BYTE byCover; BYTE byCustomFaceLibID; BYTE byPictureSaveMode; BYTE byIdentityKey[NET_SDK_MAX_INDENTITY_KEY_LEN]; BYTE byRes[60]; }NET_DVR_FACELIB_COND, *LPNET_DVR_FACELIB_COND; typedef struct tagNET_DVR_EXPORT_PUBLISH_SCHEDULE { DWORD dwScheduleID; DOWNLOAD_DATA_CB fnDownloadFileCallBack; void* pUser; BYTE byRes[32]; }NET_DVR_EXPORT_PUBLISH_SCHEDULE, *LPNET_DVR_EXPORT_PUBLISH_SCHEDULE; typedef struct tagNET_DVR_GBT28181_AUDIO_OUTPUT_COND { DWORD dwSize; DWORD dwAudioChannel; BYTE byRes[128]; }NET_DVR_GBT28181_AUDIO_OUTPUT_COND, *LPNET_DVR_GBT28181_AUDIO_OUTPUT_COND; typedef struct tagNET_DVR_GBT28181_AUDIO_OUTPUT_CFG { DWORD dwSize; char szAudioOutNumID[MAX_COMPRESSIONID_LEN]; BYTE byRes[256]; }NET_DVR_GBT28181_AUDIO_OUTPUT_CFG, *LPNET_DVR_GBT28181_AUDIO_OUTPUT_CFG; typedef struct tagNET_DVR_NOTICE_VIDEO_DATA { DWORD dwSize; DWORD dwFileSize; BYTE byNoticeNumber[MAX_NOTICE_NUMBER_LEN]; BYTE byRes[2016]; }NET_DVR_NOTICE_VIDEO_DATA, *LPNET_DVR_NOTICE_VIDEO_DATA; typedef struct tagNET_DVR_NOTICE_VIDEO_DATA_COND { DWORD dwSize; BYTE byRes[256]; }NET_DVR_NOTICE_VIDEO_DATA_COND, *LPNET_DVR_NOTICE_VIDEO_DATA_COND; typedef struct tagNET_DVR_NOTICE_VIDEO_DATA_CFG { DWORD dwSize; DWORD dwDataLen; char* pDataBuffer; BYTE byDataType; BYTE byRes[63]; }NET_DVR_NOTICE_VIDEO_DATA_CFG, *LPNET_DVR_NOTICE_VIDEO_DATA_CFG; typedef struct tagNET_DVR_UPGRADE_FIRMWARE_INFO { DWORD dwMagicNumber; DWORD dwCheckSum; DWORD dwHeadLen; DWORD dwFileNums; DWORD dwLanguage; DWORD dwDeviceClassID; DWORD dwOemCode; BYTE byUpgradeVersion; BYTE byResFeature[15]; BYTE byFlashSize; BYTE byRamSize; BYTE byDspRamSize; BYTE byRes[17]; }NET_DVR_UPGRADE_FIRMWARE_INFO, *LPNET_DVR_UPGRADE_FIRMWARE_INFO; typedef struct tagNET_DVR_SCHEDULE_FILE_RET { DWORD dwSize; char szFileName[32]; DWORD dwFileLen; BYTE byRes[64]; }NET_DVR_SCHEDULE_FILE_RET, *LPNET_DVR_SCHEDULE_FILE_RET; #define NET_SDK_MAX_EXAM_ROUND_NO 64 #define NET_SDK_MAX_EXAM_NO 64 #define NET_SDK_MAX_EXAM_SUBJECT 64 #define NET_SDK_MAX_TEACHER_NO 64 #define NET_SDK_MAX_TEACHER_NAME 64 #define NET_SDK_MAX_EXAMINEE_NO 64 #define NET_SDK_MAX_ADMISSION_TICKET 64 typedef struct tagNET_DVR_EXAM_INFO_COND { DWORD dwSize; DWORD dwExamNumber; BYTE byRes[128]; }NET_DVR_EXAM_INFO_COND, *LPNET_DVR_EXAM_INFO_COND; typedef struct tagNET_DVR_EXAM_INFO_CFG { DWORD dwSize; BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO]; BYTE byExamNo[NET_SDK_MAX_EXAM_NO]; BYTE byExamSubject[NET_SDK_MAX_EXAM_SUBJECT]; BYTE byTeacherNo[NET_SDK_MAX_TEACHER_NO]; BYTE byTeacherName[NET_SDK_MAX_TEACHER_NAME]; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byExamInfoValid; BYTE byRes[127]; }NET_DVR_EXAM_INFO_CFG, *LPNET_DVR_EXAM_INFO_CFG; typedef struct tagNET_DVR_EXAM_INFO_STATUS { DWORD dwSize; BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO]; BYTE byStatus; BYTE byRes[127]; }NET_DVR_EXAM_INFO_STATUS, *LPNET_DVR_EXAM_INFO_STATUS; typedef struct tagNET_DVR_EXAMINEE_INFO_COND { DWORD dwSize; DWORD dwExamineeNumber; BYTE byRes[128]; }NET_DVR_EXAMINEE_INFO_COND, *LPNET_DVR_EXAMINEE_INFO_COND; typedef struct tagNET_DVR_EXAMINEE_INFO_CFG { DWORD dwSize; BYTE byExamineeNo[NET_SDK_MAX_EXAMINEE_NO]; BYTE byAdmissionTicket[NET_SDK_MAX_ADMISSION_TICKET]; BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO]; BYTE byName[NAME_LEN]; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE bySex; BYTE byExamineeInfoValid; BYTE byRes[126]; }NET_DVR_EXAMINEE_INFO_CFG, *LPNET_DVR_EXAMINEE_INFO_CFG; typedef struct tagNET_DVR_EXAMINEE_INFO_STATUS { DWORD dwSize; BYTE byExamineeNo[NET_SDK_MAX_EXAMINEE_NO]; BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO]; BYTE byStatus; BYTE byRes[127]; }NET_DVR_EXAMINEE_INFO_STATUS, *LPNET_DVR_EXAMINEE_INFO_STATUS; typedef struct tagNET_DVR_EXAM_COMPARE_RESULT_COND { DWORD dwSize; BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO]; BYTE byExamNo[NET_SDK_MAX_EXAM_NO]; NET_DVR_TIME struStartTime; NET_DVR_TIME struEndTime; BYTE byRes[512]; }NET_DVR_EXAM_COMPARE_RESULT_COND, *LPNET_DVR_EXAM_COMPARE_RESULT_COND; typedef struct tagNET_DVR_EXAM_COMPARE_RESULT_CFG { DWORD dwSize; NET_DVR_TIME struTime; BYTE byExamineeNo[NET_SDK_MAX_EXAMINEE_NO]; BYTE byAdmissionTicket[NET_SDK_MAX_ADMISSION_TICKET]; BYTE byExamNo[NET_SDK_MAX_EXAM_NO]; BYTE byExamRoundNo[NET_SDK_MAX_EXAM_ROUND_NO]; BYTE byName[NAME_LEN]; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwPicDataLen; char *pPicData; BYTE byRes[256]; }NET_DVR_EXAM_COMPARE_RESULT_CFG, *LPNET_DVR_EXAM_COMPARE_RESULT_CFG; typedef struct tagNET_DVR_BLACK_LIST_PICTURE_COND { DWORD dwSize; DWORD dwPictureNum; BYTE byRes[128]; }NET_DVR_BLACK_LIST_PICTURE_COND, *LPNET_DVR_BLACK_LIST_PICTURE_COND; typedef struct tagNET_DVR_BLACK_LIST_PICTURE_STATUS { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byStatus; BYTE byRes[63]; }NET_DVR_BLACK_LIST_PICTURE_STATUS, *LPNET_DVR_BLACK_LIST_PICTURE_STATUS; typedef struct tagNET_DVR_BLACK_LIST_PICTURE_CFG { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byName[NAME_LEN]; BYTE bySex; BYTE byPictureValid; BYTE byRes1[2]; DWORD dwPictureLen; char* pPictureBuffer; BYTE byRes[128]; }NET_DVR_BLACK_LIST_PICTURE_CFG, *LPNET_DVR_BLACK_LIST_PICTURE_CFG; typedef struct tagNET_DVR_UPLOAD_ID_BLACK_LIST_COND { DWORD dwSize; DWORD dwBlackListNum; BYTE byRes[128]; }NET_DVR_UPLOAD_ID_BLACK_LIST_COND, *LPNET_DVR_UPLOAD_ID_BLACK_LIST_COND; typedef struct tagNET_DVR_UPLOAD_ID_BLACK_LIST_CFG { DWORD dwSize; NET_DVR_ID_CARD_INFO struIDCardCfg; BYTE byBlackListValid; BYTE byRes[127]; }NET_DVR_UPLOAD_ID_BLACK_LIST_CFG, *LPNET_DVR_UPLOAD_ID_BLACK_LIST_CFG; typedef struct tagNET_DVR_UPLOAD_ID_BLACK_LIST_STATUS { DWORD dwSize; BYTE byIDNum[MAX_ID_NUM_LEN]; BYTE byStatus; BYTE byRes[63]; }NET_DVR_UPLOAD_ID_BLACK_LIST_STATUS, *LPNET_DVR_UPLOAD_ID_BLACK_LIST_STATUS; typedef struct tagNET_DVR_ALARM_ISAPI_INFO { char * pAlarmData; DWORD dwAlarmDataLen; BYTE byDataType; BYTE byPicturesNumber; BYTE byRes[2]; void * pPicPackData; BYTE byRes1[32]; }NET_DVR_ALARM_ISAPI_INFO, *LPNET_DVR_ALARM_ISAPI_INFO; typedef struct tagNET_DVR_ALARM_ISAPI_PICDATA { DWORD dwPicLen; BYTE byPicType; BYTE byRes[3]; char szFilename[MAX_FILE_PATH_LEN]; BYTE *pPicData; }NET_DVR_ALARM_ISAPI_PICDATA, *LPNET_DVR_ALARM_ISAPI_PICDATA; typedef struct tagNET_DVR_FORMAT_HDD { DWORD dwSize; DWORD dwDiskNo; NET_DVR_IPADDR struLocateIP; BYTE byRes[16]; }NET_DVR_FORMAT_HDD, *LPNET_DVR_FORMAT_HDD; typedef struct tagNET_DVR_CHECK_FACE_PICTURE_COND { DWORD dwSize; DWORD dwPictureNum; BYTE byCheckTemplate; BYTE byRes[127]; }NET_DVR_CHECK_FACE_PICTURE_COND, *LPNET_DVR_CHECK_FACE_PICTURE_COND; typedef struct tagNET_DVR_CHECK_FACE_PICTURE_CFG { DWORD dwSize; DWORD dwPictureNo; DWORD dwPictureLen; char* pPictureBuffer; DWORD dwFaceTemplateLen; char* pFaceTemplateBuffer; BYTE byRes[248]; }NET_DVR_CHECK_FACE_PICTURE_CFG, *LPNET_DVR_CHECK_FACE_PICTURE_CFG; typedef struct tagNET_DVR_CHECK_FACE_PICTURE_STATUS { DWORD dwSize; DWORD dwPictureNo; BYTE byCheckStatus; BYTE byRes[127]; }NET_DVR_CHECK_FACE_PICTURE_STATUS, *LPNET_DVR_CHECK_FACE_PICTURE_STATUS; typedef struct tagNET_SDK_NPQ_STATE_SINGLE { DWORD dwRttUs; DWORD dwRealRttUs; DWORD dwBitRate; BYTE byLossFraction; BYTE byLossFraction2; BYTE byRes[126]; }NET_SDK_NPQ_STATE_SINGLE, *LPNET_SDK_NPQ_STATE_SINGLE; typedef struct tagNET_SDK_NPQ_STATE { DWORD dwSize; NET_SDK_NPQ_STATE_SINGLE struAudioState; NET_SDK_NPQ_STATE_SINGLE struVideoState; BYTE byRes[256]; }NET_SDK_NPQ_STATE, *LPNET_SDK_NPQ_STATE; typedef struct tagNET_SDK_NPQ_NOTIFY_PARAM { LONG iVersion; DWORD dwBitRate; BOOL bHaveBitrate; BOOL bHaveForceIframe; BOOL bForceIframe; BOOL bHaveScale; float fScale; BYTE res[240]; }NET_SDK_NPQ_NOTIFY_PARAM, *LPNET_SDK_NPQ_NOTIFY_PARAM; typedef struct tagNET_DVR_ALARM_SEARCH_COND { DWORD dwSize; NET_DVR_TIME_SEARCH_COND strStartTime; NET_DVR_TIME_SEARCH_COND strStopTime; DWORD dwAlarmComm; char sAlarmUID[64]; BYTE byRes[128]; }NET_DVR_ALARM_SEARCH_COND, *LPNET_DVR_ALARM_SEARCH_COND; typedef struct tagNET_DVR_ALARM_SEARCH_RESULT { DWORD dwSize; DWORD dwAlarmComm; DWORD dwAlarmLen; char *pAlarmInfo; NET_DVR_ALARMER struAlarmer; BYTE byRes[128]; }NET_DVR_ALARM_SEARCH_RESULT, *LPNET_DVR_ALARM_SEARCH_RESULT; typedef struct tagNET_DVR_FACE_AND_TEMPLATE_COND { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwFaceNum; BYTE byRes[128]; }NET_DVR_FACE_AND_TEMPLATE_COND, *LPNET_DVR_FACE_AND_TEMPLATE_COND; typedef struct tagNET_DVR_FACE_AND_TEMPLATE_CFG { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; DWORD dwFaceLen; char* pFaceBuffer; DWORD dwFaceTemplateLen; char* pFaceTemplateBuffer; BYTE byRes[116]; }NET_DVR_FACE_AND_TEMPLATE_CFG, *LPNET_DVR_FACE_AND_TEMPLATE_CFG; typedef struct tagNET_DVR_FACE_AND_TEMPLATE_STATUS { DWORD dwSize; BYTE byCardNo[ACS_CARD_NO_LEN]; BYTE byRecvStatus; BYTE byRes[131]; }NET_DVR_FACE_AND_TEMPLATE_STATUS, *LPNET_DVR_FACE_AND_TEMPLATE_STATUS; typedef struct tagNET_DVR_SINGLE_HEATMAP_RESULT_PDC { DWORD dwMaxHeatMapValue; DWORD dwMinHeatMapValue; DWORD dwTimeHeatMapValue; WORD wArrayLine; WORD wArrayColumn; BYTE* pBuffer; BYTE byRes[32]; }NET_DVR_SINGLE_HEATMAP_RESULT_PDC, *LPNET_DVR_SINGLE_HEATMAP_RESULT_PDC; typedef struct tagNET_DVR_HEATMAP_RESULT_PDC { DWORD dwSize; NET_DVR_TIME_EX struStartTime; NET_DVR_TIME_EX struEndTime; NET_VCA_DEV_INFO struDevInfo; WORD wDevInfoIvmsChannelEx; BYTE byBrokenNetHttp; BYTE byRes; NET_DVR_SINGLE_HEATMAP_RESULT_PDC struSingleHeatMap[2]; WORD wCurNumber; WORD wLeaveNumber; BYTE byRes1[60]; }NET_DVR_HEATMAP_RESULT_PDC, *LPNET_DVR_HEATMAP_RESULT_PDC; #if (defined __linux__) typedef struct _NET_DVR_AUDIOENCInfo { DWORD in_frame_size; int reserved[16]; } NET_DVR_AUDIOENC_INFO; typedef enum _ENUM_AUDIO_ENC_MODE { AMR_MR475_ = 0, AMR_MR515_, AMR_MR59_, AMR_MR67_, AMR_MR74_, AMR_MR795_, AMR_MR102_, AMR_MR122_, AMR_MRDTX_, AMR_N_MODES_ }ENUM_AUDIO_ENC_MODE; typedef struct _NET_DVR_AUDIOENC_PROCESS_PARAM_ { unsigned char *in_buf; unsigned char *out_buf; DWORD out_frame_size; int g726enc_reset; int g711_type; ENUM_AUDIO_ENC_MODE enc_mode; int reserved[16]; }NET_DVR_AUDIOENC_PROCESS_PARAM; typedef struct _NET_DVR_AUDIODECInfo { int nchans; int sample_rate; int aacdec_profile; int reserved[16]; } NET_DVR_AUDIODEC_INFO; typedef struct _NET_DVR_AUDIODEC_PROCESS_PARAM { unsigned char *in_buf; unsigned char *out_buf; DWORD in_data_size; DWORD proc_data_size; DWORD out_frame_size; NET_DVR_AUDIODEC_INFO dec_info; int g726dec_reset; int g711_type; int reserved[16]; } NET_DVR_AUDIODEC_PROCESS_PARAM; const unsigned int G726_EBCIN_DECOUT_SIZE = 640; #if (defined __x86_64__) const unsigned int G726_ENC_OUT_SIZE = 160; const unsigned int G726_DEC_IN_SIZE = 200; #else const unsigned int G726_ENC_OUT_SIZE = 80; const unsigned int G726_DEC_IN_SIZE = 80; #endif #endif BOOL NET_DVR_Init(); BOOL NET_DVR_Cleanup(); #ifdef _WIN32 BOOL NET_DVR_SetDVRMessage(UINT nMessage,HWND hWnd); BOOL NET_DVR_SetExceptionCallBack_V30(UINT nMessage, HWND hWnd, void(*fExceptionCallBack)(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser), void *pUser); #elif defined(__linux__) || defined(__APPLE__) BOOL NET_DVR_SetExceptionCallBack_V30(UINT reserved1, void* reserved2, void(*fExceptionCallBack)(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser), void *pUser); #if defined(__linux__) BOOL NET_DVR_DrawAreaInit(INITINFO InitInfo, DWORD iUseSDL); BOOL NET_DVR_DrawAreaRelease(); #endif #endif BOOL NET_DVR_SetDVRMessCallBack(BOOL(*fMessCallBack)(LONG lCommand,char *sDVRIP,char *pBuf,DWORD dwBufLen)); BOOL NET_DVR_SetDVRMessCallBack_EX(BOOL(*fMessCallBack_EX)(LONG lCommand,LONG lUserID,char *pBuf,DWORD dwBufLen)); BOOL NET_DVR_SetDVRMessCallBack_NEW(BOOL(*fMessCallBack_NEW)(LONG lCommand,char *sDVRIP,char *pBuf,DWORD dwBufLen, WORD dwLinkDVRPort)); BOOL NET_DVR_SetDVRMessageCallBack(BOOL(*fMessageCallBack)(LONG lCommand,char *sDVRIP,char *pBuf,DWORD dwBufLen, DWORD dwUser), DWORD dwUser); typedef void(*MSGCallBack)(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser); BOOL NET_DVR_SetDVRMessageCallBack_V30(MSGCallBack fMessageCallBack, void* pUser); typedef BOOL(*MSGCallBack_V31)(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser); BOOL NET_DVR_SetDVRMessageCallBack_V31(MSGCallBack_V31 fMessageCallBack, void* pUser); BOOL NET_DVR_SetDVRMessageCallBack_V50(int iIndex, MSGCallBack fMessageCallBack, void* pUser); // BOOL NET_DVR_SetDVRMessageCallBack_V51(int iIndex, MSGCallBack fMsgCallBack, void* pUser); BOOL NET_DVR_SetConnectTime(DWORD dwWaitTime, DWORD dwTryTimes); BOOL NET_DVR_SetReconnect(DWORD dwInterval, BOOL bEnableRecon); DWORD NET_DVR_GetSDKVersion(); DWORD NET_DVR_GetSDKBuildVersion(); int NET_DVR_IsSupport(); BOOL NET_DVR_StartListen(char *sLocalIP,WORD wLocalPort); BOOL NET_DVR_StopListen(); LONG NET_DVR_StartListen_V30(char *sLocalIP, WORD wLocalPort, MSGCallBack DataCallback, void* pUserData); BOOL NET_DVR_StopListen_V30(LONG lListenHandle); LONG NET_DVR_Login(char *sDVRIP,WORD wDVRPort,char *sUserName,char *sPassword,LPNET_DVR_DEVICEINFO lpDeviceInfo); LONG NET_DVR_Login_V30(char *sDVRIP, WORD wDVRPort, char *sUserName, char *sPassword, LPNET_DVR_DEVICEINFO_V30 lpDeviceInfo); LONG NET_DVR_Login_V40(LPNET_DVR_USER_LOGIN_INFO pLoginInfo,LPNET_DVR_DEVICEINFO_V40 lpDeviceInfo); // BOOL NET_DVR_Login_Check(char *sDVRIP, WORD wDVRPort, char *sUserName, char *sPassword, LPNET_DVR_DEVICEINFO_V30 lpDeviceInfo); BOOL NET_DVR_Logout(LONG lUserID); BOOL NET_DVR_Logout_V30(LONG lUserID); DWORD NET_DVR_GetLastError(); char* NET_DVR_GetErrorMsg(LONG *pErrorNo); BOOL NET_DVR_SetShowMode(DWORD dwShowType,COLORREF colorKey); BOOL NET_DVR_GetDVRIPByResolveSvr(char *sServerIP, WORD wServerPort, BYTE *sDVRName,WORD wDVRNameLen,BYTE *sDVRSerialNumber,WORD wDVRSerialLen,char* sGetIP); BOOL NET_DVR_GetDVRIPByResolveSvr_EX(char *sServerIP, WORD wServerPort, BYTE *sDVRName, WORD wDVRNameLen, BYTE *sDVRSerialNumber, WORD wDVRSerialLen, char* sGetIP, DWORD *dwPort); // LONG NET_DVR_PlayDirect(char *sDVRIP, char *sUserName, char *sPassword, \ // LPNET_DVR_CLIENTINFO lpClientInfo, void(*fRealDataCallBack_V30) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser), void* pUser, BOOL bBlocked); LONG NET_DVR_RealPlay(LONG lUserID,LPNET_DVR_CLIENTINFO lpClientInfo); LONG NET_DVR_RealPlay_V30(LONG lUserID, LPNET_DVR_CLIENTINFO lpClientInfo, void(*fRealDataCallBack_V30) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser), void* pUser, BOOL bBlocked); BOOL NET_DVR_StopRealPlay(LONG lRealHandle); // BOOL NET_DVR_StopPlayDirect(LONG lRealHandle); BOOL NET_DVR_RigisterDrawFun(LONG lRealHandle,void(*fDrawFun)(LONG lRealHandle,HDC hDc,DWORD dwUser),DWORD dwUser); BOOL NET_DVR_SetPlayerBufNumber(LONG lRealHandle,DWORD dwBufNum); BOOL NET_DVR_ThrowBFrame(LONG lRealHandle,DWORD dwNum); BOOL NET_DVR_SetAudioMode(DWORD dwMode); BOOL NET_DVR_OpenSound(LONG lRealHandle); BOOL NET_DVR_CloseSound(); BOOL NET_DVR_OpenSoundShare(LONG lRealHandle); BOOL NET_DVR_CloseSoundShare(LONG lRealHandle); BOOL NET_DVR_Volume(LONG lRealHandle,WORD wVolume); BOOL NET_DVR_SaveRealData(LONG lRealHandle,char *sFileName); BOOL NET_DVR_StopSaveRealData(LONG lRealHandle); BOOL NET_DVR_SetRealDataCallBack(LONG lRealHandle,void(*fRealDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); BOOL NET_DVR_SetStandardDataCallBack(LONG lRealHandle,void(*fStdDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); // BOOL NET_DVR_SetStandardDataCallBackEx(LONG lRealHandle,void(*fStdDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,void *pUser),void *pUser); BOOL NET_DVR_CapturePicture(LONG lRealHandle,char *sPicFileName); BOOL NET_DVR_SetCapturePictureMode(DWORD dwCaptureMode); BOOL NET_DVR_MakeKeyFrame(LONG lUserID, LONG lChannel); BOOL NET_DVR_MakeKeyFrameSub(LONG lUserID, LONG lChannel); BOOL NET_DVR_PTZControl(LONG lRealHandle,DWORD dwPTZCommand,DWORD dwStop); BOOL NET_DVR_PTZControl_Other(LONG lUserID,LONG lChannel,DWORD dwPTZCommand,DWORD dwStop); BOOL NET_DVR_TransPTZ(LONG lRealHandle,char *pPTZCodeBuf,DWORD dwBufSize); BOOL NET_DVR_TransPTZ_Other(LONG lUserID,LONG lChannel,char *pPTZCodeBuf,DWORD dwBufSize); BOOL NET_DVR_PTZPreset(LONG lRealHandle,DWORD dwPTZPresetCmd,DWORD dwPresetIndex); BOOL NET_DVR_PTZPreset_Other(LONG lUserID,LONG lChannel,DWORD dwPTZPresetCmd,DWORD dwPresetIndex); BOOL NET_DVR_TransPTZ_EX(LONG lRealHandle,char *pPTZCodeBuf,DWORD dwBufSize); BOOL NET_DVR_PTZControl_EX(LONG lRealHandle,DWORD dwPTZCommand,DWORD dwStop); BOOL NET_DVR_PTZPreset_EX(LONG lRealHandle,DWORD dwPTZPresetCmd,DWORD dwPresetIndex); BOOL NET_DVR_PTZCruise(LONG lRealHandle,DWORD dwPTZCruiseCmd,BYTE byCruiseRoute, BYTE byCruisePoint, WORD wInput); BOOL NET_DVR_PTZCruise_Other(LONG lUserID,LONG lChannel,DWORD dwPTZCruiseCmd,BYTE byCruiseRoute, BYTE byCruisePoint, WORD wInput); BOOL NET_DVR_PTZCruise_EX(LONG lRealHandle,DWORD dwPTZCruiseCmd,BYTE byCruiseRoute, BYTE byCruisePoint, WORD wInput); BOOL NET_DVR_PTZTrack(LONG lRealHandle, DWORD dwPTZTrackCmd); BOOL NET_DVR_PTZTrack_Other(LONG lUserID, LONG lChannel, DWORD dwPTZTrackCmd); BOOL NET_DVR_PTZTrack_EX(LONG lRealHandle, DWORD dwPTZTrackCmd); BOOL NET_DVR_PTZControlWithSpeed(LONG lRealHandle, DWORD dwPTZCommand, DWORD dwStop, DWORD dwSpeed); BOOL NET_DVR_PTZControlWithSpeed_Other(LONG lUserID, LONG lChannel, DWORD dwPTZCommand, DWORD dwStop, DWORD dwSpeed); BOOL NET_DVR_PTZControlWithSpeed_EX(LONG lRealHandle, DWORD dwPTZCommand, DWORD dwStop, DWORD dwSpeed); BOOL NET_DVR_GetPTZCruise(LONG lUserID,LONG lChannel,LONG lCruiseRoute, LPNET_DVR_CRUISE_RET lpCruiseRet); LONG NET_DVR_FindFile(LONG lUserID,LONG lChannel,DWORD dwFileType, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); LONG NET_DVR_FindNextFile(LONG lFindHandle,LPNET_DVR_FIND_DATA lpFindData); BOOL NET_DVR_FindClose(LONG lFindHandle); LONG NET_DVR_FindNextFile_V30(LONG lFindHandle, LPNET_DVR_FINDDATA_V30 lpFindData); LONG NET_DVR_FindNextFile_V40(LONG lFindHandle, LPNET_DVR_FINDDATA_V40 lpFindData); // LONG NET_DVR_FindNextFile_V50(LONG lFindHandle, LPNET_DVR_FINDDATA_V50 lpFindData); LONG NET_DVR_FindFile_V30(LONG lUserID, LPNET_DVR_FILECOND pFindCond); // LONG NET_DVR_FindFile_V50(LONG lUserID, LPNET_DVR_FILECOND_V50 pFindCond); BOOL NET_DVR_FindClose_V30(LONG lFindHandle); BOOL NET_DVR_LockFileByName(LONG lUserID, char *sLockFileName); BOOL NET_DVR_UnlockFileByName(LONG lUserID, char *sUnlockFileName); BOOL NET_DVR_LockFileByNameV40(LONG lUserID, BOOL bLock, const NET_DVR_LOCK_FILE_BY_NAME_PARA *lpLockFilePara); LONG NET_DVR_PlayBackByName(LONG lUserID,char *sPlayBackFileName, HWND hWnd); LONG NET_DVR_PlayBackByTime(LONG lUserID,LONG lChannel, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime, HWND hWnd); LONG NET_DVR_PlayBackReverseByName(LONG lUserID, char *sPlayBackFileName, HWND hWnd); // LONG NET_DVR_PlayBackByName_V50(LONG lUserID, LPNET_DVR_PLAY_BY_NAME_PARA pParam); // LONG NET_DVR_PlayBackReverseByName_V50(LONG lUserID, LPNET_DVR_PLAY_BY_NAME_PARA pParam); BOOL NET_DVR_PlayBackControl(LONG lPlayHandle,DWORD dwControlCode,DWORD dwInValue,DWORD *LPOutValue); BOOL NET_DVR_StopPlayBack(LONG lPlayHandle); BOOL NET_DVR_SetPlayDataCallBack(LONG lPlayHandle,void(*fPlayDataCallBack) (LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); BOOL NET_DVR_SetPlayBackESCallBack(LONG lPlayHandle, void(*fPlayESCallBack)(LONG lPlayHandle, NET_DVR_PACKET_INFO_EX *struPackInfo, void* pUser), void* pUser); BOOL NET_DVR_SetPlayDataCallBack_V40(LONG lPlayHandle,void(*fPlayDataCallBack_V40) (LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,void *pUser),void *pUser); BOOL NET_DVR_PlayBackSaveData(LONG lPlayHandle,char *sFileName); BOOL NET_DVR_StopPlayBackSave(LONG lPlayHandle); BOOL NET_DVR_GetPlayBackOsdTime(LONG lPlayHandle, LPNET_DVR_TIME lpOsdTime); BOOL NET_DVR_PlayBackCaptureFile(LONG lPlayHandle,char *sFileName); LONG NET_DVR_GetFileByName(LONG lUserID,char *sDVRFileName,char *sSavedFileName); // LONG NET_DVR_GetFileByName_V50(LONG lUserID, LPNET_DVR_DOWNLOAD_BY_NAME_COND pParam); LONG NET_DVR_GetFileByTime(LONG lUserID,LONG lChannel, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime, char *sSavedFileName); BOOL NET_DVR_StopGetFile(LONG lFileHandle); int NET_DVR_GetDownloadPos(LONG lFileHandle); int NET_DVR_GetPlayBackPos(LONG lPlayHandle); LONG NET_DVR_AdapterUpgrade(LONG lUserID, char *sFileName); LONG NET_DVR_Upgrade(LONG lUserID, char *sFileName); LONG NET_DVR_VcalibUpgrade(LONG lUserID, LONG lChannel, char const *sFileName); int NET_DVR_GetUpgradeState(LONG lUpgradeHandle); int NET_DVR_GetUpgradeProgress(LONG lUpgradeHandle); BOOL NET_DVR_CloseUpgradeHandle(LONG lUpgradeHandle); BOOL NET_DVR_SetNetworkEnvironment(DWORD dwEnvironmentLevel); LONG NET_DVR_FormatDisk(LONG lUserID,LONG lDiskNumber); // LONG NET_DVR_FormatDisk_V50(LONG lUserID, NET_DVR_FORMAT_HDD *lpStruHddFormatCond); BOOL NET_DVR_GetFormatProgress(LONG lFormatHandle, LONG *pCurrentFormatDisk,LONG *pCurrentDiskPos,LONG *pFormatStatic); BOOL NET_DVR_CloseFormatHandle(LONG lFormatHandle); LONG NET_DVR_SetupAlarmChan(LONG lUserID); BOOL NET_DVR_CloseAlarmChan(LONG lAlarmHandle); LONG NET_DVR_SetupAlarmChan_V30(LONG lUserID); BOOL NET_DVR_CloseAlarmChan_V30(LONG lAlarmHandle); LONG NET_DVR_StartVoiceCom(LONG lUserID, void(*fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, DWORD dwUser), DWORD dwUser); LONG NET_DVR_StartVoiceCom_V30(LONG lUserID, DWORD dwVoiceChan, BOOL bNeedCBNoEncData, void(*fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser), void* pUser); BOOL NET_DVR_SetVoiceComClientVolume(LONG lVoiceComHandle, WORD wVolume); BOOL NET_DVR_StopVoiceCom(LONG lVoiceComHandle); LONG NET_DVR_StartVoiceCom_MR(LONG lUserID, void(*fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, DWORD dwUser), DWORD dwUser); LONG NET_DVR_StartVoiceCom_MR_V30(LONG lUserID, DWORD dwVoiceChan, void(*fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser), void* pUser); BOOL NET_DVR_VoiceComSendData(LONG lVoiceComHandle, char *pSendBuf, DWORD dwBufSize); BOOL NET_DVR_GetCurrentAudioCompress(LONG lUserID, LPNET_DVR_COMPRESSION_AUDIO lpCompressAudio); BOOL NET_DVR_GetCurrentAudioCompress_V50(LONG lUserID, LPNET_DVR_AUDIO_CHANNEL lpAudioChannel, LPNET_DVR_COMPRESSION_AUDIO lpCompressAudio); BOOL NET_DVR_ClientAudioStart(); BOOL NET_DVR_ClientAudioStart_V30(void(*fVoiceDataCallBack)(char *pRecvDataBuffer, DWORD dwBufSize, void * pUser), void *pUser); BOOL NET_DVR_ClientAudioStop(); BOOL NET_DVR_AddDVR(LONG lUserID); LONG NET_DVR_AddDVR_V30(LONG lUserID, DWORD dwVoiceChan); BOOL NET_DVR_DelDVR(LONG lUserID); BOOL NET_DVR_DelDVR_V30(LONG lVoiceHandle); LONG NET_DVR_SerialStart(LONG lUserID,LONG lSerialPort,void(*fSerialDataCallBack)(LONG lSerialHandle,char *pRecvDataBuffer,DWORD dwBufSize,DWORD dwUser),DWORD dwUser); LONG NET_DVR_SerialStart_V40(LONG lUserID,void* lpInBuffer, LONG dwInBufferSize, void(*fSerialDataCallBack)(LONG lSerialHandle, LONG lCHannel, char *pRecvDataBuffer, DWORD dwBufSize, void* pUser), void* pUser); BOOL NET_DVR_SerialSend(LONG lSerialHandle, LONG lChannel, char *pSendBuf,DWORD dwBufSize); BOOL NET_DVR_SerialStop(LONG lSerialHandle); BOOL NET_DVR_SendTo232Port(LONG lUserID, char *pSendBuf, DWORD dwBufSize); BOOL NET_DVR_SendToSerialPort(LONG lUserID, DWORD dwSerialPort, DWORD dwSerialIndex, char *pSendBuf, DWORD dwBufSize); #if (defined _WIN32) void* NET_DVR_InitG722Decoder(int nBitrate); BOOL NET_DVR_DecodeG722Frame(void *pDecHandle, BYTE* pInBuffer, BYTE* pOutBuffer); void* NET_DVR_InitG722Encoder(); BOOL NET_DVR_EncodeG722Frame(void *pEncodeHandle, BYTE* pInBuffer, BYTE* pOutBuffer); #elif (defined __linux__) void* NET_DVR_InitG722Decoder(); BOOL NET_DVR_DecodeG722Frame(void *handle, NET_DVR_AUDIODEC_PROCESS_PARAM * param); void* NET_DVR_InitG722Encoder(NET_DVR_AUDIOENC_INFO* enc_info); BOOL NET_DVR_EncodeG722Frame(void *handle, NET_DVR_AUDIOENC_PROCESS_PARAM* param); #endif void NET_DVR_ReleaseG722Decoder(void *pDecHandle); void NET_DVR_ReleaseG722Encoder(void *pEncodeHandle); void* NET_DVR_InitG726Decoder(void** pDecMoudle); void NET_DVR_ReleaseG726Decoder(void *pDecHandle); BOOL NET_DVR_DecodeG726Frame(void *pDecMoudle, BYTE* pInBuffer, BYTE* pOutBuffer, BYTE byReset); void* NET_DVR_InitG726Encoder(void** pEncMoudle); BOOL NET_DVR_EncodeG726Frame(void *pEncMoudle,BYTE* pInBuffer, BYTE* pOutBuffer, BYTE byReset); void NET_DVR_ReleaseG726Encoder(void *pEncHandle); BOOL NET_DVR_ClickKey(LONG lUserID, LONG lKeyIndex); BOOL NET_DVR_StartDVRRecord(LONG lUserID,LONG lChannel,LONG lRecordType); BOOL NET_DVR_StopDVRRecord(LONG lUserID,LONG lChannel); BOOL NET_DVR_InitDevice_Card(long *pDeviceTotalChan); BOOL NET_DVR_ReleaseDevice_Card(); BOOL NET_DVR_InitDDraw_Card(HWND hParent,COLORREF colorKey); BOOL NET_DVR_ReleaseDDraw_Card(); LONG NET_DVR_RealPlay_Card(LONG lUserID,LPNET_DVR_CARDINFO lpCardInfo,long lChannelNum); BOOL NET_DVR_ResetPara_Card(LONG lRealHandle,LPNET_DVR_DISPLAY_PARA lpDisplayPara); BOOL NET_DVR_RefreshSurface_Card(); BOOL NET_DVR_ClearSurface_Card(); BOOL NET_DVR_RestoreSurface_Card(); BOOL NET_DVR_OpenSound_Card(LONG lRealHandle); BOOL NET_DVR_CloseSound_Card(LONG lRealHandle); BOOL NET_DVR_SetVolume_Card(LONG lRealHandle,WORD wVolume); BOOL NET_DVR_AudioPreview_Card(LONG lRealHandle,BOOL bEnable); LONG NET_DVR_GetCardLastError_Card(); HANDLE NET_DVR_GetChanHandle_Card(LONG lRealHandle); BOOL NET_DVR_CapturePicture_Card(LONG lRealHandle, char *sPicFileName); BOOL NET_DVR_GetSerialNum_Card(long lChannelNum,DWORD *pDeviceSerialNo); LONG NET_DVR_FindDVRLog(LONG lUserID, LONG lSelectMode, DWORD dwMajorType,DWORD dwMinorType, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); LONG NET_DVR_FindNextLog(LONG lLogHandle, LPNET_DVR_LOG lpLogData); BOOL NET_DVR_FindLogClose(LONG lLogHandle); LONG NET_DVR_FindDVRLog_V30(LONG lUserID, LONG lSelectMode, DWORD dwMajorType,DWORD dwMinorType, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime, BOOL bOnlySmart); LONG NET_DVR_FindNextLog_V30(LONG lLogHandle, LPNET_DVR_LOG_V30 lpLogData); // LONG NET_DVR_FindDVRLog_V50(LONG lUserID, LPNET_DVR_FIND_LOG_COND pFindCond); // LONG NET_DVR_FindNextLog_V50(LONG lLogHandle, LPNET_DVR_LOG_V50 lpLogData); BOOL NET_DVR_FindLogClose_V30(LONG lLogHandle); LONG NET_DVR_FindAlarmHostLog(LONG lUserID, LONG lSelectMode, NET_DVR_ALARMHOST_SEARCH_LOG_PARAM *lpSearchParam); LONG NET_DVR_FindNextAlarmHostLog(LONG lFindHandle, NET_DVR_ALARMHOST_LOG_RET *lpFindData); BOOL NET_DVR_FindAlarmHostLogClose(LONG lFindHandle); LONG NET_DVR_FindFileByCard(LONG lUserID,LONG lChannel,DWORD dwFileType, int nFindType, BYTE *sCardNumber, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); BOOL NET_DVR_CaptureJPEGPicture(LONG lUserID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, char *sPicFileName); BOOL NET_DVR_CaptureJPEGPicture_NEW(LONG lUserID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, char *sJpegPicBuffer, DWORD dwPicSize, LPDWORD lpSizeReturned); BOOL NET_DVR_CapturePicture_V50(LONG lUserID, LONG lChannel, LPNET_DVR_PICPARAM_V50 lpPicParam, char *sPicBuffer, DWORD dwPicSize, LPDWORD lpSizeReturned); // BOOL NET_DVR_CaptureJPEGPicture_WithAppendData(LONG lUserID, LONG lChannel, NET_DVR_JPEGPICTURE_WITH_APPENDDATA *lpJpegWithAppend); int NET_DVR_GetRealPlayerIndex(LONG lRealHandle); int NET_DVR_GetPlayBackPlayerIndex(LONG lPlayHandle); BOOL NET_DVR_SetScaleCFG(LONG lUserID, DWORD dwScale); BOOL NET_DVR_GetScaleCFG(LONG lUserID, DWORD *lpOutScale); BOOL NET_DVR_SetScaleCFG_V30(LONG lUserID, LPNET_DVR_SCALECFG pScalecfg); BOOL NET_DVR_GetScaleCFG_V30(LONG lUserID, LPNET_DVR_SCALECFG pScalecfg); BOOL NET_DVR_SetATMPortCFG(LONG lUserID, WORD wATMPort); BOOL NET_DVR_GetATMPortCFG(LONG lUserID, WORD *LPOutATMPort); BOOL NET_DVR_InitDDrawDevice(); BOOL NET_DVR_ReleaseDDrawDevice(); LONG NET_DVR_GetDDrawDeviceTotalNums(); BOOL NET_DVR_SetDDrawDevice(LONG lPlayPort, DWORD nDeviceNum); BOOL NET_DVR_PTZSelZoomIn(LONG lRealHandle, LPNET_DVR_POINT_FRAME pStruPointFrame); BOOL NET_DVR_PTZSelZoomIn_EX(LONG lUserID, LONG lChannel, LPNET_DVR_POINT_FRAME pStruPointFrame); BOOL NET_DVR_StartDecode(LONG lUserID, LONG lChannel, LPNET_DVR_DECODERINFO lpDecoderinfo); BOOL NET_DVR_StopDecode(LONG lUserID, LONG lChannel); BOOL NET_DVR_GetDecoderState(LONG lUserID, LONG lChannel, LPNET_DVR_DECODERSTATE lpDecoderState); BOOL NET_DVR_SetDecInfo(LONG lUserID, LONG lChannel, LPNET_DVR_DECCFG lpDecoderinfo); BOOL NET_DVR_GetDecInfo(LONG lUserID, LONG lChannel, LPNET_DVR_DECCFG lpDecoderinfo); BOOL NET_DVR_SetDecTransPort(LONG lUserID, LPNET_DVR_PORTCFG lpTransPort); BOOL NET_DVR_GetDecTransPort(LONG lUserID, LPNET_DVR_PORTCFG lpTransPort); BOOL NET_DVR_DecPlayBackCtrl(LONG lUserID, LONG lChannel, DWORD dwControlCode, DWORD dwInValue,DWORD *LPOutValue, LPNET_DVR_PLAYREMOTEFILE lpRemoteFileInfo); BOOL NET_DVR_StartDecSpecialCon(LONG lUserID, LONG lChannel, LPNET_DVR_DECCHANINFO lpDecChanInfo); BOOL NET_DVR_StopDecSpecialCon(LONG lUserID, LONG lChannel, LPNET_DVR_DECCHANINFO lpDecChanInfo); BOOL NET_DVR_DecCtrlDec(LONG lUserID, LONG lChannel, DWORD dwControlCode); BOOL NET_DVR_DecCtrlScreen(LONG lUserID, LONG lChannel, DWORD dwControl); BOOL NET_DVR_GetDecCurLinkStatus(LONG lUserID, LONG lChannel, LPNET_DVR_DECSTATUS lpDecStatus); BOOL NET_DVR_MatrixStartDynamic(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DYNAMIC_DEC lpDynamicInfo); BOOL NET_DVR_MatrixStopDynamic(LONG lUserID, DWORD dwDecChanNum); BOOL NET_DVR_MatrixGetDecChanInfo(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_INFO lpInter); BOOL NET_DVR_MatrixSetLoopDecChanInfo(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO lpInter); BOOL NET_DVR_MatrixGetLoopDecChanInfo(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO lpInter); BOOL NET_DVR_MatrixSetLoopDecChanEnable(LONG lUserID, DWORD dwDecChanNum, DWORD dwEnable); BOOL NET_DVR_MatrixGetLoopDecChanEnable(LONG lUserID, DWORD dwDecChanNum, LPDWORD lpdwEnable); BOOL NET_DVR_MatrixGetLoopDecEnable(LONG lUserID, LPDWORD lpdwEnable); BOOL NET_DVR_MatrixSetDecChanEnable(LONG lUserID, DWORD dwDecChanNum, DWORD dwEnable); BOOL NET_DVR_MatrixGetDecChanEnable(LONG lUserID, DWORD dwDecChanNum, LPDWORD lpdwEnable); BOOL NET_DVR_MatrixGetDecChanStatus(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_STATUS lpInter); BOOL NET_DVR_MatrixGetVideoStandard(LONG lUserID, DWORD dwDecChanNum, LPDWORD lpdwVideoStandard); BOOL NET_DVR_MatrixSetVideoStandard(LONG lUserID, DWORD dwDecChanNum, DWORD dwVideoStandard); BOOL NET_DVR_MatrixSetTranInfo(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG lpTranInfo); BOOL NET_DVR_MatrixGetTranInfo(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG lpTranInfo); BOOL NET_DVR_MatrixSetRemotePlay(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_REMOTE_PLAY lpInter); BOOL NET_DVR_MatrixSetRemotePlayControl(LONG lUserID, DWORD dwDecChanNum, DWORD dwControlCode, DWORD dwInValue, DWORD *LPOutValue); BOOL NET_DVR_MatrixGetRemotePlayStatus(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS lpOuter); BOOL NET_DVR_MatrixStartDynamic_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PU_STREAM_CFG lpDynamicInfo); BOOL NET_DVR_MatrixSetLoopDecChanInfo_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter); BOOL NET_DVR_MatrixGetLoopDecChanInfo_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V30 lpInter); BOOL NET_DVR_MatrixGetDecChanInfo_V30(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30 lpInter); BOOL NET_DVR_MatrixSetTranInfo_V30(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 lpTranInfo); BOOL NET_DVR_MatrixGetTranInfo_V30(LONG lUserID, LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30 lpTranInfo); BOOL NET_DVR_MatrixGetDisplayCfg(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG lpDisplayCfg); BOOL NET_DVR_MatrixSetDisplayCfg(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG lpDisplayCfg); LONG NET_DVR_MatrixStartPassiveDecode(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_PASSIVEMODE lpPassiveMode ); BOOL NET_DVR_MatrixSendData(LONG lPassiveHandle, char *pSendBuf, DWORD dwBufSize); BOOL NET_DVR_MatrixStopPassiveDecode(LONG lPassiveHandle); BOOL NET_DVR_UploadLogo(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_DISP_LOGOCFG lpDispLogoCfg, char *sLogoBuffer); #define NET_DVR_SHOWLOGO 1 #define NET_DVR_HIDELOGO 2 BOOL NET_DVR_LogoSwitch(LONG lUserID, DWORD dwDecChan, DWORD dwLogoSwitch); BOOL NET_DVR_MatrixGetDeviceStatus(LONG lUserID, LPNET_DVR_DECODER_WORK_STATUS lpDecoderCfg); #define DISP_CMD_ENLARGE_WINDOW 1 #define DISP_CMD_RENEW_WINDOW 2 #define DISP_CMD_OPENAUDIO 3 #define DISP_CMD_CLOSEAUDIO 4 BOOL NET_DVR_MatrixDiaplayControl(LONG lUserID, DWORD dwDispChanNum, DWORD dwDispChanCmd, DWORD dwCmdParam); BOOL NET_DVR_MatrixPassiveDecodeControl(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PASSIVEDECODE_CONTROL lpInter); LONG NET_DVR_MatrixGetPassiveDecodeStatus(LONG lPassiveHandle); BOOL NET_DVR_MatrixGetDecChanCfg(LONG lUserID, DWORD dwDecChan, LPNET_DVR_MATRIX_DECCHAN_CONTROL lpInter); BOOL NET_DVR_MatrixSetDecChanCfg(LONG lUserID, DWORD dwDecChan, LPNET_DVR_MATRIX_DECCHAN_CONTROL lpInter); BOOL NET_DVR_RefreshPlay(LONG lPlayHandle); BOOL NET_DVR_RestoreConfig(LONG lUserID); BOOL NET_DVR_SaveConfig(LONG lUserID); BOOL NET_DVR_RebootDVR(LONG lUserID); BOOL NET_DVR_ShutDownDVR(LONG lUserID); BOOL NET_DVR_GetDVRConfig(LONG lUserID, DWORD dwCommand,LONG lChannel, LPVOID lpOutBuffer, DWORD dwOutBufferSize, LPDWORD lpBytesReturned); BOOL NET_DVR_SetDVRConfig(LONG lUserID, DWORD dwCommand,LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize); BOOL NET_DVR_GetDVRWorkState_V30(LONG lUserID, LPNET_DVR_WORKSTATE_V30 lpWorkState); BOOL NET_DVR_GetDVRWorkState(LONG lUserID, LPNET_DVR_WORKSTATE lpWorkState); BOOL NET_DVR_SetVideoEffect(LONG lUserID, LONG lChannel, DWORD dwBrightValue, DWORD dwContrastValue, DWORD dwSaturationValue, DWORD dwHueValue); BOOL NET_DVR_GetVideoEffect(LONG lUserID, LONG lChannel, DWORD *pBrightValue, DWORD *pContrastValue, DWORD *pSaturationValue, DWORD *pHueValue); BOOL NET_DVR_ClientGetframeformat(LONG lUserID, LPNET_DVR_FRAMEFORMAT lpFrameFormat); BOOL NET_DVR_ClientSetframeformat(LONG lUserID, LPNET_DVR_FRAMEFORMAT lpFrameFormat); BOOL NET_DVR_GetAtmFrameFormat_V30(LONG lUserID, LONG lAtmChannel, LPNET_DVR_ATM_FRAMEFORMAT_V30 lpFrameFormat); BOOL NET_DVR_SetAtmFrameFormat_V30(LONG lUserID, LONG lAtmChannel, LPNET_DVR_ATM_FRAMEFORMAT_V30 lpFrameFormat); BOOL NET_DVR_GetAtmProtocol(LONG lUserID, LPNET_DVR_ATM_PROTOCOL lpAtmProtocol); BOOL NET_DVR_GetAlarmOut_V30(LONG lUserID, LPNET_DVR_ALARMOUTSTATUS_V30 lpAlarmOutState); BOOL NET_DVR_GetAlarmOut(LONG lUserID, LPNET_DVR_ALARMOUTSTATUS lpAlarmOutState); BOOL NET_DVR_SetAlarmOut(LONG lUserID, LONG lAlarmOutPort,LONG lAlarmOutStatic); BOOL NET_DVR_ClientSetVideoEffect(LONG lRealHandle,DWORD dwBrightValue,DWORD dwContrastValue, DWORD dwSaturationValue,DWORD dwHueValue); BOOL NET_DVR_ClientGetVideoEffect(LONG lRealHandle,DWORD *pBrightValue,DWORD *pContrastValue, DWORD *pSaturationValue,DWORD *pHueValue); BOOL NET_DVR_GetConfigFile(LONG lUserID, char *sFileName); BOOL NET_DVR_SetConfigFile(LONG lUserID, char *sFileName); BOOL NET_DVR_GetConfigFile_V30(LONG lUserID, char *sOutBuffer, DWORD dwOutSize, DWORD *pReturnSize); BOOL NET_DVR_GetConfigFile_EX(LONG lUserID, char *sOutBuffer, DWORD dwOutSize); BOOL NET_DVR_SetConfigFile_EX(LONG lUserID, char *sInBuffer, DWORD dwInSize); BOOL NET_DVR_SetLogToFile(DWORD nLogLevel, char * strLogDir, BOOL bAutoDel); BOOL NET_DVR_GetSDKState(LPNET_DVR_SDKSTATE pSDKState); BOOL NET_DVR_GetSDKAbility(LPNET_DVR_SDKABL pSDKAbl); BOOL NET_DVR_GetPTZProtocol(LONG lUserID, NET_DVR_PTZCFG *pPtzcfg); BOOL NET_DVR_LockPanel(LONG lUserID); BOOL NET_DVR_UnLockPanel(LONG lUserID); BOOL NET_DVR_SetRtspConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_RTSPCFG lpInBuffer, DWORD dwInBufferSize); BOOL NET_DVR_GetRtspConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_RTSPCFG lpOutBuffer, DWORD dwOutBufferSize); BOOL NET_DVR_GetDeviceAbility(LONG lUserID, DWORD dwAbilityType, char* pInBuf, DWORD dwInLength, char* pOutBuf, DWORD dwOutLength); BOOL NET_DVR_MatrixGetSubSystemInfo(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO lpInter); BOOL NET_DVR_MatrixSetSubSystemInfo(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO lpInter); BOOL NET_DVR_MatrixGetCodeSplitter(LONG lUserID, DWORD dwCodeChan, LPNET_DVR_CODESPLITTERINFO lpInter); BOOL NET_DVR_MatrixSetCodeSplitter(LONG lUserID, DWORD dwCodeChan, LPNET_DVR_CODESPLITTERINFO lpInter); BOOL NET_DVR_SetBehaviorParamKey(LONG lUserID, LONG lChannel, DWORD dwParameterKey,int nValue); BOOL NET_DVR_GetBehaviorParamKey(LONG lUserID, LONG lChannel, DWORD dwParameterKey,int *pValue); BOOL NET_DVR_GetVCADrawMode(LONG lUserID, LONG lChannel, LPNET_VCA_DRAW_MODE lpDrawMode); BOOL NET_DVR_SetVCADrawMode(LONG lUserID, LONG lChannel, LPNET_VCA_DRAW_MODE lpDrawMode); BOOL NET_DVR_SetTrackMode(LONG lUserID, LONG lChannel, LPNET_DVR_TRACK_MODE lpTrackMode); BOOL NET_DVR_GetTrackMode(LONG lUserID, LONG lChannel, LPNET_DVR_TRACK_MODE lpTrackMode); BOOL NET_VCA_RestartLib(LONG lUserID, LONG lChannel); BOOL NET_DVR_SaveRealData_V30(LONG lRealHandle, DWORD dwTransType, char *sFileName); #if (defined _WIN32) BOOL NET_DVR_EncodeG711Frame(DWORD iType, BYTE *pInBuffer, BYTE *pOutBuffer); BOOL NET_DVR_DecodeG711Frame(DWORD iType, BYTE *pInBuffer, BYTE *pOutBuffer); #elif (defined __linux__) BOOL NET_DVR_EncodeG711Frame(LPVOID handle, NET_DVR_AUDIOENC_PROCESS_PARAM *p_enc_proc_param); BOOL NET_DVR_DecodeG711Frame(LPVOID handle, NET_DVR_AUDIODEC_PROCESS_PARAM *p_dec_proc_param); LPVOID NET_DVR_InitG711Decoder(); LPVOID NET_DVR_InitG711Encoder(NET_DVR_AUDIOENC_INFO *enc_info); BOOL NET_DVR_ReleaseG711Encoder(LPVOID pEncodeHandle); BOOL NET_DVR_ReleaseG711Decoder(LPVOID pDecHandle); #endif LONG NET_DVR_FindFileByEvent(LONG lUserID, LPNET_DVR_SEARCH_EVENT_PARAM lpSearchEventParam); LONG NET_DVR_FindFileByEvent_V40(LONG lUserID, LPNET_DVR_SEARCH_EVENT_PARAM_V40 lpSearchEventParam); // LONG NET_DVR_FindFileByEvent_V50(LONG lUserID, LPNET_DVR_SEARCH_EVENT_PARAM_V50 lpSearchEventParam); LONG NET_DVR_FindNextEvent(LONG lSearchHandle, LPNET_DVR_SEARCH_EVENT_RET lpSearchEventRet); LONG NET_DVR_FindNextEvent_V40(LONG lSearchHandle, LPNET_DVR_SEARCH_EVENT_RET_V40 lpSearchEventRet); // LONG NET_DVR_FindNextEvent_V50(LONG lFindHandle, LPNET_DVR_SEARCH_EVENT_RET_V50 lpSearchEventRet); LONG NET_DVR_FindPDCInfo(LONG lUserID, LONG lChannel, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); LONG NET_DVR_FindNextPDCInfo(LONG lFindHandle,LPNET_DVR_PDC_QUERY lpFindData); BOOL NET_DVR_FindPDCClose(LONG lFindHandle); #define NET_DVR_PDC_VERIFY_CALIBRATION 1 #define NET_DVR_VERIFY_BEHAVIOR_CALIBRATION 2 #define NET_DVR_VERIFY_ITS_CALIBRATION 3 #define NET_DVR_VERIFY_BV_CALIBRATION 5 BOOL NET_DVR_VerifyCalibration(LONG lUserID, DWORD dwCommand, LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpOuterBuffer, DWORD dwOuterBufferSize); BOOL NET_DVR_ResetCounter(LONG lUserID,LONG lChannel); BOOL NET_DVR_GetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); BOOL NET_DVR_SetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); BOOL NET_DVR_SetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); BOOL NET_DVR_GetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); LONG NET_DVR_FindNextLog_MATRIX(LONG lLogHandle, LPNET_DVR_LOG_MATRIX lpLogData); LONG NET_DVR_FindDVRLog_Matrix(LONG lUserID, LONG lSelectMode, DWORD dwMajorType, DWORD dwMinorType, LPNET_DVR_VEDIOPLATLOG lpVedioPlatLog, LPNET_DVR_TIME lpStartTime, LPNET_DVR_TIME lpStopTime); BOOL NET_DVR_ManualSnap(LONG lUserID, NET_DVR_MANUALSNAP const* lpInter, LPNET_DVR_PLATE_RESULT lpOuter); BOOL NET_DVR_ContinuousShoot(LONG lUserID, LPNET_DVR_SNAPCFG lpInter); BOOL NET_DVR_GetPTZProtocol_Ex(LONG lUserID, LONG lChannel, NET_DVR_PTZCFG *pPtzcfg); LONG NET_DVR_StartEmailTest(LONG lUserID); BOOL NET_DVR_StopEmailTest(LONG lEmailTestHandle); BOOL NET_DVR_GetEmailTestProgress(LONG lEmailTestHandle, DWORD* pState); BOOL NET_DVR_GetIPCProtoList(LONG lUserID, LPNET_DVR_IPC_PROTO_LIST lpProtoList); BOOL NET_DVR_GetIPCProtoList_V41(LONG lUserID, LPNET_DVR_IPC_PROTO_LIST_V41 lpProtoList); LONG NET_DVR_SmartSearch(LONG lUserID, LPNET_DVR_SMART_SEARCH_PARAM lpSmartSearchParam); LONG NET_DVR_SmartSearch_V40(LONG lUserID, LPNET_DVR_SMART_SEARCH_PARAM_V40 lpSmartSearchParam); LONG NET_DVR_SearchNextInfo(LONG lSearchHandle, LPNET_DVR_SMART_SEARCH_RET lpSmartSearchRet); BOOL NET_DVR_StopSearch(LONG lSearchHandle); LONG NET_DVR_FindIpSanDirectory(LONG lUserID, LPNET_DVR_IPSAN_SERACH_PARAM lpIpsanSearchParam); LONG NET_DVR_FindNextDirectory(LONG lFindHandle, LPNET_DVR_IPSAN_SERACH_RET lpFindData); BOOL NET_DVR_FindDirectoryClose(LONG lFindHandle); typedef void(*REALDATACALLBACK) (LONG lPlayHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser); LONG NET_DVR_ZeroStartPlay(LONG lUserID, LPNET_DVR_CLIENTINFO lpClientInfo, REALDATACALLBACK fRealDataCallBack_V30, void* pUser, BOOL bBlocked); BOOL NET_DVR_ZeroStopPlay(LONG lPlayHandle); BOOL NET_DVR_ZeroMakeKeyFrame(LONG lUserID, LONG lZeroChan); BOOL NET_DVR_PlayBackControl_V40(LONG lPlayHandle,DWORD dwControlCode, LPVOID lpInBuffer, DWORD dwInLen, LPVOID lpOutBuffer, DWORD *lpOutLen); BOOL NET_DVR_ZeroTurnOver(LONG lUserID, LONG lChannel, BOOL bNextPreview); BOOL NET_DVR_GetDiskList(LONG lUserID, LPNET_DVR_DISKABILITY_LIST lpDiskList); LONG NET_DVR_Backup(LONG lUserID, DWORD dwBackupType, LPVOID lpBackupBuff, DWORD dwBackupBuffSize); LONG NET_DVR_BackupByName(LONG lUserID, LPNET_DVR_BACKUP_NAME_PARAM lpBackupByName); LONG NET_DVR_BackupByTime(LONG lUserID, LPNET_DVR_BACKUP_TIME_PARAM lpBackupBytime); BOOL NET_DVR_GetBackupProgress(LONG lHandle, DWORD* pState); BOOL NET_DVR_StopBackup(LONG lHandle); BOOL NET_DVR_GetSadpInfoList(LONG lUserID, LPNET_DVR_SADPINFO_LIST lpSadpInfoList); BOOL NET_DVR_UpdateSadpInfo(LONG lUserID, LPNET_DVR_SADP_VERIFY lpSadpVerify, LPNET_DVR_SADPINFO lpSadpInfo); BOOL NET_DVR_MatrixGetSubDecSystemJoinInfo(LONG lUserID, LPNET_DVR_ALLDECSUBSYSTEMJOININFO lpInter); BOOL NET_DVR_SetCodeSplitterAssociate(LONG lUserID, DWORD dwDecoderChan, DWORD dwSlotNum, LPNET_DVR_CODESPLITTERASSOCIATE lpInter); BOOL NET_DVR_GetCodeSplitterAssociate(LONG lUserID, DWORD dwDecoderChan, DWORD dwSlotNum, LPNET_DVR_CODESPLITTERASSOCIATE lpInter); BOOL NET_DVR_InquestGetCDRWScheme(LONG lUserID, LPNET_DVR_INQUEST_CDRW_CFG lpCDRWCfg); BOOL NET_DVR_InquestSetCDRWScheme(LONG lUserID, LPNET_DVR_INQUEST_CDRW_CFG lpCDRWCfg); BOOL NET_DVR_InquestDeleteFile(LONG lUserID, LPNET_DVR_INQUEST_FILES lpDeleteFile); BOOL NET_DVR_InquestCDWByFile(LONG lUserID, LPNET_DVR_INQUEST_FILES lpCdrwFile); LONG NET_DVR_InquestUploadFile(LONG lUserID, char *sFileName); BOOL NET_DVR_InquestUploadClose(LONG lUploadHandle); LONG NET_DVR_InquestGetUploadState(LONG lUploadHandle, LPDWORD pProgress); BOOL NET_DVR_InquestStartCDW( LONG lUserID, BOOL bPause); BOOL NET_DVR_InquestStopCDW(LONG lUserID, BOOL bCancelWrite); BOOL NET_DVR_InquestGetCDWState(LONG lUserID, LPNET_DVR_INQUEST_CDRW_STATUS pStatus); BOOL NET_DVR_InquestGetPIPStatus(LONG lUserID, LPNET_DVR_INQUEST_PIP_STATUS pStatus); BOOL NET_DVR_InquestSetPIPStatus(LONG lUserID, LPNET_DVR_INQUEST_PIP_STATUS pStatus); BOOL NET_DVR_InquestCheckSecretKey(LONG lUserID, BOOL *bSecretSet); BOOL NET_DVR_InquestSetSecretKey(LONG lUserID, LPNET_DVR_INQUEST_SECRET_INFO pSecretInfo); BOOL NET_DVR_InquestStreamEncrypt(LONG lUserID, LONG lChannel, BOOL bEncrypt); BOOL NET_DVR_InquestGetEncryptState(LONG lUserID, LONG lChannel, BOOL *bEncrypt); LONG NET_DVR_InquestFindFile(LONG lUserID); LONG NET_DVR_InquestFindNextFile(LONG lFindHandle, LPNET_DVR_INQUEST_FILEINFO lpFindData); BOOL NET_DVR_InquestFindClose(LONG lFindHandle); LONG NET_DVR_RaidFastConfig(LONG lUserID, char *sName); BOOL NET_DVR_FastConfigProcess(LONG lHandle, DWORD *pState); BOOL NET_DVR_CloseFastConfig(LONG lHandle); BOOL NET_DVR_GetArraySpaceAlloc(LONG lUserID, DWORD dwSlot, LPNET_DVR_ARRAY_SPACE_ALLOC_INFO lpOutBuf); BOOL NET_DVR_DelArray(LONG lUserID, DWORD dwID); BOOL NET_DVR_CreateArray(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam); BOOL NET_DVR_CalcArraySize(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam, UINT64* lpArraySize); BOOL NET_DVR_MigrateArray(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam); BOOL NET_DVR_RebuildArray(LONG lUserID, LPNET_DVR_OPERATE_ARRAY_PARAM lpArrayParam); BOOL NET_DVR_CreateVD(LONG lUserID, LPNET_DVR_OPERATE_VD_PARAM lpVDParam); BOOL NET_DVR_CreateVDEx(LONG lUserID, LPNET_DVR_OPERATE_VD_PARAM_EX lpVDParamEx); BOOL NET_DVR_DelVD(LONG lUserID, DWORD dwID); BOOL NET_DVR_RepairVD(LONG lUserID, DWORD dwID); BOOL NET_DVR_SetSpareDisk(LONG lUserID, LPNET_DVR_SPARE_DISK_PARAM lpSpareDisk); BOOL NET_DVR_GetPDList(LONG lUserID, LPNET_DVR_PHY_DISK_LIST lpPDList); BOOL NET_DVR_GetArrayList(LONG lUserID, LPNET_DVR_ARRAY_LIST lpArrayList); BOOL NET_DVR_GetVDList(LONG lUserID, LPNET_DVR_VD_LIST lpVDList); LONG NET_DVR_ExpandDisk(LONG lUserID,DWORD dwVDSLot); BOOL NET_DVR_GetExpandProgress(LONG lExpandHandle, DWORD* pState); BOOL NET_DVR_CloseExpandHandle(LONG lExpandHandle); LONG NET_DVR_AlgoDebugStart(LONG lUserID, LONG lCHannel, void(*fAlgoLibInfoCallBack)(LONG lHandle, LONG lChannel,char *pRecvDataBuffer, DWORD dwBufSize, void* pUser), void* pUser); BOOL NET_DVR_AlgoDebugSend(LONG lHandle, LONG lChannel, char *pSendBuf, DWORD dwBufSize); BOOL NET_DVR_AlgoDebugStop(LONG lHandle); BOOL NET_DVR_SetLogPrint(BOOL bLogPrint); BOOL NET_DVR_SetLogPrintAction(DWORD nLogLevel, DWORD nToDevice, BOOL bEnable, int Reserve1, int Reserve2); BOOL NET_DVR_GetPositionRule(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG lpPositionRule); BOOL NET_DVR_GetPositionRule_V41(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG_V41 lpPositionRule); BOOL NET_DVR_SetPositionRule(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG lpPositionRule); BOOL NET_DVR_SetPositionRule_V41(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_POSITION_RULE_CFG_V41 lpPositionRule); BOOL NET_DVR_SetPositionLimitAngle(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); BOOL NET_DVR_GetPositionLimitAngle(LONG lUserID, LONG lChannel, LONG lPositionIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); BOOL NET_DVR_GetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); BOOL NET_DVR_SetPtzPosition(LONG lUserID, LONG lChannel, LONG lPositionID, LPNET_DVR_PTZ_POSITION lpPtzPosition); BOOL NET_DVR_SetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); BOOL NET_DVR_GetPatrolTrack(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_PATROL_TRACKCFG lpPatrolTrack); BOOL NET_DVR_SetPatrolLimitAngle(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); BOOL NET_DVR_GetPatrolLimitAngle(LONG lUserID, LONG lChannel, LONG lPatrolIndex, LPNET_DVR_LIMIT_ANGLE lpLimitAngle); BOOL NET_DVR_SetSceneMode(LONG lUserID, LONG lChannel, DWORD dwSceneMode); BOOL NET_DVR_GetSceneMode(LONG lUserID, LONG lChannel, DWORD *pSceneMode); BOOL NET_DVR_GetVCAVersion(LONG lUserID, LONG lChannel, LPNET_DVR_VCA_VERSION lpVersion); BOOL NET_DVR_ContinuousShoot(LONG lUserID, LPNET_DVR_SNAPCFG lpInter); BOOL NET_DVR_MatrixPicAdjust(LONG lUserID, DWORD dwDispChan, DWORD dwPicAdjust, DWORD dwCmdParam); BOOL NET_DVR_AlarmJoinedRecord(LONG lUserID, DWORD dwChan, DWORD dwAlarmSeq, DWORD dwRecordTime, DWORD dwRes); BOOL NET_DVR_GetUnitedMatrixInfo(LONG lUserID, LPNET_DVR_UNITEDMATRIXINFO lpInter); typedef LONG(* REGCallBack)(LONG lUserID, LPNET_DVR_REGCALLBACKPARAM pRegCallbackParam, LPNET_DVR_LOGONREPONSEPARAM pInterParam, void *pUser); BOOL NET_DVR_SetRegisterCallBack(REGCallBack fRegCallBack, void* pUser); BOOL NET_DVR_PreviewRequest(LONG lUserID, LONG lChannel, LPNET_DVR_PREVIEWPARAM lpPreviewParam, LPNET_DVR_DEVICENATINFO lpOuter); typedef LONG(* PREVIEWRESPONSECallBack)(LONG lUserID, LONG lStreamHandle, LPNET_DVR_PREVIEWCALLBACKPARAM pPewviewCallbackParam,void *pUser); BOOL NET_DVR_SetPreviewResponseCallBack(PREVIEWRESPONSECallBack fPreviewResponseCallBack, void *pUser); BOOL NET_DVR_PlaybackRequest(LONG lUserID, LPNET_DVR_PLAYBACKREQUESTPARAM lpPlayBackRequestParam); typedef LONG(* PLAYBACKRESPONSECallBack)(LONG lUserID, LONG lPlaybackHandle, LPNET_DVR_PLAYBACKCALLBACKPARAM lpPlaybackParam,void *pUser); BOOL NET_DVR_SetPlaybackResponseCallBack(PLAYBACKRESPONSECallBack fPlaybackResponseCallBack, void *pUser); typedef LONG(* VOICERESPONSECallBack)(LONG lUserID, LONG lVoiceHandle, LONG lVoiceChannel, BYTE nAudioType, void *pUser); BOOL NET_DVR_SetVoiceResponseCallBack(VOICERESPONSECallBack fVoiceResponseCallBack, void *pUser); BOOL NET_DVR_VoiceRequest(LONG lUserID, LPNET_DVR_VOICEREQUESTPARAM lpVoiceParam); BOOL NET_DVR_AlarmSetupRequest(LONG lUserID, LPNET_DVR_ALARMSETUPREQUESTPARAM lpAlarmSetupParam); BOOL NET_DVR_GetDialParam(LONG lUserID, LPNET_DVR_DIALREQUEST lpDialRequest, LPNET_DVR_DIALPARAM lpDialParam); BOOL NET_DVR_SetDialParam(LONG lUserID, LPNET_DVR_DIALREQUEST lpDialRequest, LPNET_DVR_DIALPARAM lpDialParam); BOOL NET_DVR_GetSmsListInfo(LONG lUserID, LPNET_DVR_TIME_EX lpStartTime, LPNET_DVR_TIME_EX lpStopTime, LPNET_DVR_SMSLISTINFO lpSmsListInfo); BOOL NET_DVR_GetSmsContent(LONG lUserID, DWORD dwSmsIndex, LPNET_DVR_SMSCONTENT lpSmsContent); BOOL NET_DVR_SendSms(LONG lUserID, LPNET_DVR_SMSCONTENT lpSmsContent); LONG NET_DVR_StartServer(char *sLocalIP, WORD wLocalPort, BYTE byMode); BOOL NET_DVR_StopServer(LONG lServerHandle); LONG NET_DVR_StartRecvNakedDataListen(NAKED_DATA_TYPE type, LPNET_DVR_NAKED_DATA_PARAM pParams); BOOL NET_DVR_StopRecvNakedDataListen(LONG lNakedDataRecvHandle); typedef void(* NAKEDDAtACALLBACK)(DWORD typeInfo, char *pInfo, DWORD dwInfoLen,DWORD dwIPLen, void* pUser); BOOL NET_DVR_SetNakedDataRecvCallBack(LONG lNakedDataRecvHandle, void(*fNakedDataCallBack)(DWORD dwTypeInfo, NET_DVR_NAKED_DATA_INFO *pStruNakedDataInfo, char *pInfo, DWORD dwInfoLen, void* pUser), void* pUser); typedef LONG(* ALARMSETUPRESPONSECallBack)(LONG lUserID, LONG lAlarmHandle, void * pUser); BOOL NET_DVR_SetAlarmSetupResponseCallBack(ALARMSETUPRESPONSECallBack fAlarmSetupResponseCallBack, void * pUser); BOOL NET_DVR_SpringJPEGPicture(LONG lUserID, LONG lChannel, NET_DVR_PUSHJPEGPARA const *lpJpegPara); BOOL NET_DVR_SetPushModeParam(LPNET_DVR_PUSHMODEPARAM pPushParam); BOOL NET_DVR_AlarmHostSetupAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); BOOL NET_DVR_AlarmHostCloseAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); BOOL NET_DVR_BypassAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); BOOL NET_DVR_UnBypassAlarmChan(LONG lUserID, NET_DVR_ALARMIN_SETUP *lpInter); BOOL NET_DVR_AlarmHostAssistantControl(LONG lUserID, DWORD dwType, DWORD dwNumber, DWORD dwCmdParam); BOOL NET_DVR_SetAirCondition(LONG lUserID, LONG l485Index, NET_DVR_AIR_CONDITION_PARAM* lpAirConditionParam); // BOOL NET_DVR_GetAirCondition(LONG lUserID, LONG l485Index, NET_DVR_AIR_CONDITION_PARAM* lpAirConditionParam); BOOL NET_DVR_GetDeviceTypeList(LONG lUserID, NET_DVR_DEVICE_TYPE_LIST *lpDeviceTypeList); BOOL NET_DVR_GetDeviceProtoList(LONG lUserID, LONG lDeviceType, NET_DVR_DEVICE_PROTO_LIST *lpDeviceProtoList); BOOL NET_DVR_GetBatteryVoltage(LONG lUserID, float *pVoltage); BOOL NET_DVR_SetAlarmDeviceUser(LONG lUserID, LONG lUserIndex, NET_DVR_ALARM_DEVICE_USER* lpDeviceUser); BOOL NET_DVR_GetAlarmDeviceUser(LONG lUserID, LONG lUserIndex, NET_DVR_ALARM_DEVICE_USER* lpDeviceUser); BOOL NET_DVR_SetKeyboardUser(LONG lUserID, LONG lUserIndex, NET_DVR_KEYBOARD_USER* lpKeyboardUser); BOOL NET_DVR_GetKeyboardUser(LONG lUserID, LONG lUserIndex, NET_DVR_KEYBOARD_USER* lpKeyboardUser); BOOL NET_DVR_SetOperateUser(LONG lUserID, LONG lUserIndex, NET_DVR_OPERATE_USER* lpOperateUser); BOOL NET_DVR_GetOperateUser(LONG lUserID, LONG lUserIndex, NET_DVR_OPERATE_USER* lpOperateUser); BOOL NET_DVR_ControlGateway(LONG lUserID, LONG lGatewayIndex, DWORD dwStaic); BOOL NET_DVR_SetAlarmHostOut(LONG lUserID, LONG lAlarmOutPort, LONG lAlarmOutStatic); typedef void(*fAlarmHostSerialDataCallBack) (LONG lSerialHandle, LONG lPort, LONG lDateType, char *pRecvDataBuffer, DWORD dwBufSize,void *pUser); LONG NET_DVR_AlarmHostSerialStart(LONG lUserID, LONG lSerialType, fAlarmHostSerialDataCallBack cbSerialDataCallBack, void *pUser); BOOL NET_DVR_AlarmHostSerialSend(LONG lSerialHandle,LONG lPort,char *pSendBuf,DWORD dwBufSize); BOOL NET_DVR_AlarmHostSerialStop(LONG lSerialHandle); // BOOL NET_DVR_GetMatrixPuChan(LONG lUserID, LONG lChanType, NET_DVR_PU_CHAN_LIST* lpChanList); BOOL NET_DVR_MatrixAlarmOffMonitor(LONG lUserID, DWORD dwMonID, DWORD dwCamID); BOOL NET_DVR_GetCameraListInfo(LONG lUserID, DWORD dwCamNum, DWORD dwStartCam, LPNET_DVR_MATRIX_CAMERALIST lpCamListInfo); BOOL NET_DVR_GetMonitorListInfo(LONG lUserID, DWORD dwMonNum, DWORD dwStartMon, LPNET_DVR_MATRIX_MONITORLIST lpMonListInfo); BOOL NET_DVR_GetGlobalNum(LONG lUserID, DWORD *dwCamNum, DWORD *dwMonNum); BOOL NET_DVR_MatrixGetUnitedMatrixInfo(LONG lUserID, LPNET_DVR_ALLUNITEDMATRIXINFO lpInter); BOOL NET_DVR_MatrixSetUnitedMatrixInfo(LONG lUserID, LPNET_DVR_ALLUNITEDMATRIXINFO lpInter); BOOL NET_DVR_MatrixGetGatewayInfo(LONG lUserID, LPNET_DVR_MATRIXGATEWAYINFO lpInter); BOOL NET_DVR_MatrixSetGatewayInfo(LONG lUserID, LPNET_DVR_MATRIXGATEWAYINFO lpInter); BOOL NET_DVR_MatrixSpanSwitch(LONG lUserID, BYTE nSwitchMode, LPNET_DVR_MATRIXSWITCH lpInter); BOOL NET_DVR_MatrixStartSwitch(LONG lUserID, LPNET_DVR_MATRIXSWITCHCTRL lpInter); BOOL NET_DVR_MatrixSetConfigFile(LONG lUserID, LPNET_DVR_MATRIXDATABASE lpInter, char *sInBuffer, DWORD dwInSize); BOOL NET_DVR_MatrixGetConfigFile(LONG lUserID, LPNET_DVR_MATRIXDATABASE lpInter, char *sOutBuffer, DWORD dwOutSize, DWORD *pReturnSize); BOOL NET_DVR_MatrixGetSubSystemInfo_V40(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO_V40 lpInter); BOOL NET_DVR_MatrixSetSubSystemInfo_V40(LONG lUserID, LPNET_DVR_ALLSUBSYSTEMINFO_V40 lpInter); BOOL NET_DVR_MatrixGetSubDecSystemJoinInfo_V40(LONG lUserID, LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V40 lpInter); typedef void(*FLOWTESTCALLBACK)(LONG lFlowHandle, LPNET_DVR_FLOW_INFO pFlowInfo, void *pUser); LONG NET_DVR_StartNetworkFlowTest(LONG lUserID, NET_DVR_FLOW_TEST_PARAM* pFlowTest, FLOWTESTCALLBACK fFlowTestCallback, void *pUser); BOOL NET_DVR_StopNetworkFlowTest(LONG lHandle); LONG NET_DVR_FindRecordLabel(LONG lUserID, LPNET_DVR_FIND_LABEL lpFindLabel); LONG NET_DVR_FindNextLabel(LONG lFindHandle, LPNET_DVR_FINDLABEL_DATA lpFindData); BOOL NET_DVR_StopFindLabel(LONG lFindHandle); BOOL NET_DVR_InsertRecordLabel(LONG lPlayHandle, NET_DVR_RECORD_LABEL* lpRecordLabel, NET_DVR_LABEL_IDENTIFY *lpLableIdentify); BOOL NET_DVR_DelRecordLabel(LONG lUserID, NET_DVR_DEL_LABEL_PARAM* lpDelLabelParam); BOOL NET_DVR_ModifyRecordLabel(LONG lUserID, NET_DVR_MOD_LABEL_PARAM * lpModLabelParam); BOOL NET_DVR_CapturePlaybackPictureBlock(LONG lPlayHandle, char *sPicFileName, DWORD dwTimeOut); BOOL NET_DVR_CapturePlaybackPictureBlock_New(LONG lPlayHandle, char *pPicBuf, DWORD dwPicSize, DWORD *lpSizeReturned); LONG NET_DVR_FindPicture(LONG lUserID, NET_DVR_FIND_PICTURE_PARAM* pFindParam); LONG NET_DVR_FindNextPicture(LONG lFindHandle,LPNET_DVR_FIND_PICTURE lpFindData); LONG NET_DVR_FindNextPicture_V40(LONG lFindHandle,LPNET_DVR_FIND_PICTURE_V40 lpFindData); // LONG NET_DVR_FindNextPicture_V50(LONG lFindHandle, LPNET_DVR_FIND_PICTURE_V50 lpFindData); BOOL NET_DVR_CloseFindPicture(LONG lFindHandle); BOOL NET_DVR_GetPicture(LONG lUserID,char *sDVRFileName,const char *sSavedFileName); BOOL NET_DVR_GetPicture_V30(LONG lUserID, char *sDVRFileName, char *sSavedFileBuf, DWORD dwBufLen, DWORD *lpdwRetLen); // BOOL NET_DVR_GetPicture_V50(LONG lUserID, LPNET_DVR_PIC_PARAM lpPicParam); LONG NET_DVR_BackupPicture(LONG lUserID, NET_DVR_BACKUP_PICTURE_PARAM *lpBackupPicture); LONG NET_DVR_GetUpgradeStep(LONG lUpgradeHandle, LONG *pSubProgress); BOOL NET_DVR_MatrixGetEncodeJoint(LONG lUserID, LONG lChannel, LPNET_DVR_ENCODE_JOINT_PARAM lpEncodeJoint); BOOL NET_DVR_GetLocalIP(char strIP[16][16], DWORD *pValidNum, BOOL *pEnableBind); BOOL NET_DVR_SetValidIP(DWORD dwIPIndex, BOOL bEnableBind); BOOL NET_DVR_GetVcaDevWorkState(LONG lUserID, LPNET_DVR_VCA_DEV_WORKSTATUS lpWorkState); BOOL NET_DVR_SetRecvTimeOut(DWORD nRecvTimeOut); BOOL NET_DVR_MatrixGetDisplayCfg_V40(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG_V40 lpDisplayCfg); BOOL NET_DVR_MatrixSetDisplayCfg_V40(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_VGA_DISP_CHAN_CFG_V40 lpDisplayCfg); BOOL NET_DVR_ShutterCompensation(LONG lUserID); BOOL NET_DVR_CorrectDeadPixel(LONG lUserID, LONG lChannel, LPNET_DVR_CORRECT_DEADPIXEL_PARAM lpInParam); BOOL NET_DVR_CustomConfig(LONG lUserID, LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpOutBuffer, DWORD dwOutBufferSize, LPDWORD lpBytesReturned); BOOL NET_DVR_GetHistoricDataInfo(LONG lUserID, LONG lChannel, LPNET_DVR_HISTORICDATACFG lpHisData); BOOL NET_DVR_GetHistoricData(LONG lUserID, LONG lChannel, LPNET_DVR_PLATE_RESULT lpOuter); BOOL NET_DVR_ClearHistoricData(LONG lUserID, LONG lChannel); LONG NET_DVR_InquestUploadFile_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, char *sFileName); BOOL NET_DVR_InquestDeleteFile_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_FILES lpDeleteFile); BOOL NET_DVR_InquestGetPIPStatus_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS lpStatus); BOOL NET_DVR_InquestSetPIPStatus_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS lpStatus); BOOL NET_DVR_InquestGetPIPStatus_V40(LONG lUserID, NET_DVR_INQUEST_ROOM const *lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS_V40 lpStatus); BOOL NET_DVR_InquestSetPIPStatus_V40(LONG lUserID, NET_DVR_INQUEST_ROOM const *lpInquestRoom, LPNET_DVR_INQUEST_PIP_STATUS_V40 lpStatus); BOOL NET_DVR_InquestGetSystemInfo(LONG lUserID, LPNET_DVR_INQUEST_SYSTEM_INFO lpSystemInfo); BOOL NET_DVR_InquestSetSystemInfo(LONG lUserID, LPNET_DVR_INQUEST_SYSTEM_INFO lpSystemInfo); BOOL NET_DVR_InquestSendMessage(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_MESSAGE lpInquestMessage); BOOL NET_DVR_InquestStartCDW_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, BOOL bNotBurn); BOOL NET_DVR_InquestStopCDW_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, BOOL bCancelWrite); BOOL NET_DVR_InquestGetCDWState_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM lpInquestRoom, LPNET_DVR_INQUEST_CDRW_STATUS pStatus); LONG NET_DVR_InquestResumeEvent(LONG lUserID, LPNET_DVR_INQUEST_RESUME_EVENT lpResumeEvent); BOOL NET_DVR_InquestGetResumeProgress(LONG lHandle, DWORD* pState); BOOL NET_DVR_InquestStopResume(LONG lHandle); LONG NET_DVR_InquestFindFile_V30(LONG lUserID, LPNET_DVR_INQUEST_ROOM pInquestRoom); BOOL NET_DVR_InquestGetDeviceVersion(LONG lUserID, LPNET_DVR_INQUEST_DEVICE_VERSION lpVersionInfo); BOOL NET_DVR_SetSDKSecretKey(LONG lUserID, char *sSecretKey); BOOL NET_DVR_LockFileByTime(LONG lUserID, LPNET_DVR_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); BOOL NET_DVR_UnlockFileByTime(LONG lUserID, LPNET_DVR_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); BOOL NET_DVR_ScreenZoomIn(LONG lUserID, LPNET_DVR_SCREENZOOM pStruScreen); BOOL NET_DVR_MatrixGetAllCameraInfo(LONG lUserID, LPNET_DVR_MATRIX_CAMERALIST lpCamListInfo); BOOL NET_DVR_MatrixGetSingleCameraInfo(LONG lUserID, DWORD dwCameraId, LPNET_MATRIX_CAMERAINFO lpInter); BOOL NET_DVR_MatrixAddCamera(LONG lUserID, DWORD dwCameraNum, BYTE *pBuffer, DWORD dwBufLength); BOOL NET_DVR_MatrixModCameraInfo(LONG lUserID, LPNET_MATRIX_CAMERAINFO lpInter); BOOL NET_DVR_MatrixDelCamera(LONG lUserID, DWORD dwCameraId); BOOL NET_DVR_MatrixGetAllMonitorInfo(LONG lUserID, LPNET_DVR_MATRIX_MONITORLIST lpMonListInfo); BOOL NET_DVR_MatrixGetSingleMonitorInfo(LONG lUserID, DWORD dwMonitorId, LPNET_MATRIX_MONITORINFO lpInter); BOOL NET_DVR_MatrixAddMonitor(LONG lUserID, DWORD dwMonitorNum, BYTE *pBuffer, DWORD dwBufLength); BOOL NET_DVR_MatrixModMonitorInfo(LONG lUserID, LPNET_MATRIX_MONITORINFO lpInter); BOOL NET_DVR_MatrixDelMonitor(LONG lUserID, DWORD dwMonitorId); BOOL NET_DVR_MatrixGetAllMatrixInfo(LONG lUserID, LPNET_DVR_MATRIXLIST lpMatrixListInfo); BOOL NET_DVR_GetSingleMatrixInfo(LONG lUserID, DWORD dwMatrixId, LPNET_MATRIX_MATRIXINFO lpInter); BOOL NET_DVR_AddMatrix(LONG lUserID, LPNET_MATRIX_MATRIXINFO lpInter); BOOL NET_DVR_ModMatrixInfo(LONG lUserID, LPNET_MATRIX_MATRIXINFO lpInter); BOOL NET_DVR_DelMatrix(LONG lUserID, DWORD dwMatrixId); BOOL NET_DVR_MatrixGetUartParam(LONG lUserID, DWORD dwSerialChan, LPNET_MATRIX_UARTPARAM lpInter); BOOL NET_DVR_MatrixSetUartParam(LONG lUserID, DWORD dwSerialChan , LPNET_MATRIX_UARTPARAM lpInter); BOOL NET_DVR_MatrixGetUserInfo(LONG lUserID, DWORD dwUserNum, LPNET_MATRIX_USERPARAM lpInter); BOOL NET_DVR_MatrixAddUser(LONG lUserID, DWORD dwUserNum, LPNET_MATRIX_USERPARAM lpInter); BOOL NET_DVR_MatrixModUserInfo(LONG lUserID, DWORD dwUserNum, LPNET_MATRIX_USERPARAM lpInter); BOOL NET_DVR_MatrixDelUser(LONG lUserID, DWORD dwUserNum); BOOL NET_DVR_MatrixGetResourceInfo(LONG lUserID, DWORD dwResourceNum, LPNET_MATRIX_RESOURSEGROUPPARAM lpInter); BOOL NET_DVR_MatrixAddResourceInfo(LONG lUserID, DWORD dwResourceNum, LPNET_MATRIX_RESOURSEGROUPPARAM lpInter); BOOL NET_DVR_MatrixModResourceInfo(LONG lUserID, DWORD dwResourceNum, LPNET_MATRIX_RESOURSEGROUPPARAM lpInter); BOOL NET_DVR_MatrixDelResourceInfo(LONG lUserID, DWORD dwResourceNum); BOOL NET_DVR_MatrixGetUserGroupInfo(LONG lUserID, DWORD dwUserGroupNum, LPNET_MATRIX_USERGROUPPARAM lpInter); BOOL NET_DVR_MatrixAddUserGroupInfo(LONG lUserID, DWORD dwUserGroupNum, LPNET_MATRIX_USERGROUPPARAM lpInter); BOOL NET_DVR_MatrixModUserGroupInfo(LONG lUserID, DWORD dwUserGroupNum, LPNET_MATRIX_USERGROUPPARAM lpInter); BOOL NET_DVR_MatrixDelUserGroup (LONG lUserID, DWORD dwUserGroupNum); BOOL NET_DVR_MatrixGetAllTrunkInfo(LONG lUserID, LPNET_DVR_MATRIX_TRUNKLIST lpTrunkListInfo); BOOL NET_DVR_MatrixGetTrunkInfo(LONG lUserID, DWORD dwTrunkNum, LPNET_MATRIX_TRUNKPARAM lpInter); BOOL NET_DVR_MatrixAddTrunk(LONG lUserID, LPNET_MATRIX_TRUNKPARAM lpInter); BOOL NET_DVR_MatrixModTrunkInfo(LONG lUserID, LPNET_MATRIX_TRUNKPARAM lpInter); BOOL NET_DVR_MatrixTrunkCtrl(LONG lUserID, DWORD dwTrunkNum, BYTE byCtrlMode); BOOL NET_DVR_MatrixTrunkStatusQuery(LONG lUserID, DWORD dwTrunkNum, BYTE *byTrunkStatus); BOOL NET_DVR_FindBackgroundPic(LONG lUserID, DWORD dwPicID, BYTE *pPicBuffer, DWORD *lpPicLen); BOOL NET_DVR_DetectImage(LONG lUserID, LPNET_VCA_FD_PROCIMG_CFG lpFDProcImg,LPNET_VCA_FD_PROCIMG_RESULT lpOutBuf); BOOL NET_DVR_GetPictureModel(LONG lUserID, LPNET_VCA_REGISTER_PIC lpInBuf, LPNET_VCA_PICMODEL_RESULT lpOutBuf); BOOL NET_DVR_AddBlackList(LONG lUserID,LONG lChannel,LPNET_VCA_BLACKLIST_PARA lpInter); LONG NET_DVR_FindBlackList(LONG lUserID, LPNET_VCA_BLACKLIST_COND lpBlackListCond); LONG NET_DVR_FindNextBlackList(LONG lFindHandle,LPNET_VCA_BLACKLIST_INFO lpFindData); BOOL NET_DVR_FindBlackListClose(LONG lFindHandle); BOOL NET_DVR_GetBlackListPicture(LONG lUserID, DWORD dwRegisterID, LPNET_VCA_BLACKLIST_PIC lpOutBuffer); BOOL NET_DVR_UpdateBlackList(LONG lUserID,LONG lChannel, LPNET_VCA_BLACKLIST_PARA lpInter); BOOL NET_DVR_DelBlackList(LONG lUserID,LONG lChannel, DWORD dwRegisterID); LONG NET_DVR_FindSnapPicture(LONG lUserID, LPNET_VCA_FIND_PICTURECOND lpFindParam); LONG NET_DVR_FindNextSnapPic(LONG lFindHandle,LPNET_VCA_SUB_SNAPPIC_DATA lpFindData); BOOL NET_DVR_FindSnapPicClose(LONG lFindHandle); LONG NET_DVR_AdvanceFindSnapPicture(LONG lUserID, LPNET_VCA_FIND_PICTURECOND_ADVANCE lpFindParam); LONG NET_DVR_FindFaceMatchAlarm(LONG lUserID, LPNET_VCA_FIND_PICTURECOND lpFindParam); LONG NET_DVR_FindNextFaceMatchAlarm(LONG lFindHandle, LPNET_VCA_FACESNAP_MATCH_ALARM_LOG lpFaceMatchAlarmLog); BOOL NET_DVR_FindFaceMatchAlarmClose(LONG lFindHandle); BOOL NET_DVR_GetFaceMatchPic(LONG lUserID, LPNET_VCA_FACEMATCH_PICCOND lpMatchCond, LPNET_VCA_FACEMATCH_PICTURE lpMatchPic); BOOL NET_DVR_FastAddBlackList(LONG lUserID,LONG lChannel,LPNET_VCA_BLACKLIST_FASTREGISTER_PARA lpInter); BOOL NET_DVR_MatrixSetRemotePlay_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_V41 lpInter); BOOL NET_DVR_MatrixGetDisplayCfg_V41(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_MATRIX_VOUTCFG lpVoutCfg); BOOL NET_DVR_MatrixSetDisplayCfg_V41(LONG lUserID, DWORD dwDispChanNum, LPNET_DVR_MATRIX_VOUTCFG lpDisplayCfg); BOOL NET_DVR_MatrixGetDeviceStatus_V41(LONG lUserID, LPNET_DVR_DECODER_WORK_STATUS_V41 lpDecoderCfg); BOOL NET_DVR_MatrixGetSceneCfg(LONG lUserID, DWORD dwSceneNum, LPNET_DVR_MATRIX_SCENECFG lpSceneCfg); BOOL NET_DVR_MatrixSetSceneCfg(LONG lUserID, DWORD dwSceneNum, LPNET_DVR_MATRIX_SCENECFG lpSceneCfg); BOOL NET_DVR_MatrixSceneControl(LONG lUserID, DWORD dwSceneNum, DWORD dwCmd, DWORD dwCmdParam); BOOL NET_DVR_MatrixGetCurrentSceneMode(LONG lUserID, DWORD *dwSceneNum); BOOL NET_DVR_GetAllValidWinInfo(LONG lUserID, LPNET_DVR_WINLIST lpWinListInfo); BOOL NET_DVR_ScreenWinCtrl(LONG lUserID, DWORD dwWinIndex, DWORD dwCommand, LPNET_DVR_SCREEN_WINCFG lpInter); BOOL NET_DVR_GetScreenInputStatus(LONG lUserID, LPNET_DVR_SCREENINPUTSTATUS lpStatus); LONG NET_DVR_PicUpload(LONG lUserID, char const *sFileName, LPNET_DVR_PICTURECFG lpPictureCfg); LONG NET_DVR_GetPicUploadProgress(LONG lUploadHandle); BOOL NET_DVR_CloseUploadHandle(LONG lUploadHandle); BOOL NET_DVR_PicControl(LONG lUserID, BYTE byUseType, BYTE byPicIndex, BYTE byCtrlCmd); LONG NET_DVR_GetPicUploadState(LONG lUploadHandle); BOOL NET_DVR_ScreenCtrl(LONG lUserID, DWORD dwDeviceNum, LPNET_DVR_SCREEN_CONTROL lpStruScreenCtrl); typedef void(*SCREENPICDATACB)(LONG nScreenPicHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void *pUser); LONG NET_DVR_StartScreenPic(LONG nUserID, DWORD nInputNum, SCREENPICDATACB PicDataCallback, void *pUserData); BOOL NET_DVR_StopScreenPic(LONG nScreenPicHandle); BOOL NET_DVR_FocusOnePush(LONG lUserID, LONG lChannel); BOOL NET_DVR_ResetLens(LONG lUserID, LONG lChannel); typedef void(*fRemoteConfigCallback)(DWORD dwType, void* lpBuffer, DWORD dwBufLen, void* pUserData); LONG NET_DVR_StartRemoteConfig(LONG lUserID, DWORD dwCommand, LPVOID lpInBuffer, DWORD dwInBufferLen, fRemoteConfigCallback cbStateCallback, LPVOID pUserData); BOOL NET_DVR_StopRemoteConfig(LONG lHandle); LONG NET_DVR_GetNextRemoteConfig(LONG lHandle, void* lpOutBuff, DWORD dwOutBuffSize); BOOL NET_DVR_GetRemoteConfigState(LONG lHandle, void *pState); BOOL NET_DVR_SendRemoteConfig(LONG lHandle, DWORD dwDataType, char *pSendBuf, DWORD dwBufSize); typedef void(*fLongCfgStateCallback)(LONG lHandle, DWORD dwState, LPVOID pUserData); BOOL NET_DVR_CloseLongCfgHandle(LONG lHandle); LONG NET_DVR_RaidPullDiskStart(LONG lUserID, LONG lRaidID, fLongCfgStateCallback cbStateCallback, LPVOID pUserData); LONG NET_DVR_ScanRaidStart(LONG lUserID, fLongCfgStateCallback cbStateCallback, LPVOID pUserData); LONG NET_DVR_SetAccessCameraInfo(LONG lUserID, DWORD dwChannel, LPNET_DVR_ACCESS_CAMERA_INFO lpCameraInfo, fLongCfgStateCallback cbStateCallback, LPVOID pUserData); BOOL NET_DVR_InquiryRecordTimeSpan(LONG lUserID, DWORD dwChannel, NET_DVR_RECORD_TIME_SPAN_INQUIRY const *lpInquiry, LPNET_DVR_RECORD_TIME_SPAN lpResult); BOOL NET_DVR_UpdateRecordIndex(LONG lUserID, DWORD dwChannel); BOOL NET_DVR_GetUpnpNatState(LONG lUserID, LPNET_DVR_UPNP_NAT_STATE lpState); BOOL NET_DVR_MatrixSetLoopDecChanInfo_EX(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_EX lpInter); BOOL NET_DVR_MatrixGetLoopDecChanInfo_EX(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_EX lpInter); BOOL NET_DVR_MatrixStartDynamic_EX(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PU_STREAM_CFG_EX lpDynamicInfo); BOOL NET_DVR_GetTrunkListInfo(LONG lUserID, DWORD dwTrunkNum, DWORD dwStartTrunk, LPNET_DVR_MATRIX_TRUNKLIST lpTrunkListInfo, DWORD *pReturnSize); BOOL NET_DVR_MatrixGetSubDecSystemJoinInfo_V41(LONG lUserID, LPNET_DVR_ALLDECSUBSYSTEMJOININFO_V41 lpInter); BOOL NET_DVR_AlarmHostSubSystemSetupAlarmChan(LONG lUserID, DWORD dwSubSystemNum); BOOL NET_DVR_AlarmHostSubSystemCloseAlarmChan(LONG lUserID, DWORD dwSubSystemNum); BOOL NET_DVR_AlarmHostClearAlarm(LONG lUserID, DWORD dwSubSystemNum); BOOL NET_DVR_AlarmHostArrayBypass(LONG lUserID); BOOL NET_DVR_AlarmHostArrayBypassResume (LONG lUserID); BOOL NET_DVR_AlarmHostSetReportMode(LONG lUserID, LONG lCenterNum, LPVOID lpInputBuf, DWORD dwInputBufLen); BOOL NET_DVR_AlarmHostGetReportMode(LONG lUserID, LPVOID lpOutputBuf, DWORD dwOutputBufLen); LONG NET_DVR_StartUploadAudio(LONG lUserID, DWORD dwAudioNum, DWORD dwAudioType, char const *sAudioFileName); LONG NET_DVR_StartDownloadAudio(LONG lUserID, DWORD dwAudioNum, char const *sAudioFileName); BOOL NET_DVR_StopAudioOperate(LONG lAudioHandle); LONG NET_DVR_GetAudioProgress(LONG lAudioHandle); BOOL NET_DVR_AudioCtrl(LONG lUserID, DWORD dwAudioNum, DWORD dwCtrlParam); BOOL NET_DVR_GetDeviceConfig(LONG lUserID, DWORD dwCommand, DWORD dwCount, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpStatusList, LPVOID lpOutBuffer, DWORD dwOutBufferSize); BOOL NET_DVR_SetDeviceConfig(LONG lUserID, DWORD dwCommand, DWORD dwCount, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpStatusList, LPVOID lpInParamBuffer, DWORD dwInParamBufferSize); BOOL NET_DVR_LockStreamFileByTime(LONG lUserID, LPNET_DVR_STREAM_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); BOOL NET_DVR_UnlockStreamFileByTime(LONG lUserID, LPNET_DVR_STREAM_TIME_LOCK lpLockPara, LPNET_DVR_LOCK_RETURN lpLockReturn); BOOL NET_DVR_StartManualRecord(LONG lUserID, LPNET_DVR_MANUAL_RECORD_PARA lpManualRecPara); BOOL NET_DVR_StopManualRecord(LONG lUserID, LPNET_DVR_STREAM_INFO pIDInfo); LONG NET_DVR_PlayBackReverseByName(LONG lUserID, char *sPlayBackFileName, HWND hWnd); LONG NET_DVR_PlayBackByTime_V40(LONG lUserID, NET_DVR_VOD_PARA const* pVodPara); // LONG NET_DVR_PlayBackByTime_V50(LONG lUserID, NET_DVR_VOD_PARA_V50 const* pVodPara); LONG NET_DVR_PlayBackReverseByTime_V40(LONG lUserID, HWND hWnd, LPNET_DVR_PLAYCOND pPlayCond); LONG NET_DVR_GetFileByTime_V40(LONG lUserID, char *sSavedFileName, LPNET_DVR_PLAYCOND pDownloadCond); LONG NET_DVR_FindFile_V40(LONG lUserID, LPNET_DVR_FILECOND_V40 pFindCond); LONG NET_DVR_SetupAlarmChan_V41(LONG lUserID, LPNET_DVR_SETUPALARM_PARAM lpSetupParam); BOOL NET_DVR_AddDataBase(LONG lUserID, LPNET_VCA_DATABASE_PARAM lpInBuf); LONG NET_DVR_FindDataBase(LONG lUserID, LPNET_VCA_FIND_DATABASE_COND lpInBuf); LONG NET_DVR_FindNextDataBase(LONG lFindHandle, LPNET_VCA_DATABASE_PARAM lpOutBuf); BOOL NET_DVR_FindDataBaseClose(LONG lFindHandle); BOOL NET_DVR_UpdateDataBase(LONG lUserID, LPNET_VCA_DATABASE_PARAM lpInBuf); BOOL NET_DVR_DeleteDataBase(LONG lUserID, LPNET_VCA_DELETE_DATABASE_COND lpCond); typedef void(*fSearchDBCallBack)(LONG lHandle, DWORD dwType, DWORD dwResultNum, BYTE* pBuffer, DWORD dwBufSize,void *pUser); LONG NET_DVR_InquireSnapDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_INQUIRE_SNAPDB_COND lpInBuf, fSearchDBCallBack cbSearchDBCallBack, void *pUser); BOOL NET_DVR_GetInquireSnapDBProgress(LONG lInquireHandle, DWORD* pState); BOOL NET_DVR_DeleteSnapDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DELETE_SNAPRECORD_COND lpInBuf); LONG NET_DVR_SearchSnapDB(LONG lUserID, LPNET_VCA_SEARCH_SNAPDB_COND lpInBuf, fSearchDBCallBack cbSearchDBCallBack, void *pUser); BOOL NET_DVR_GetSearchSnapDBProgress(LONG lSearchHandle, DWORD* pState); BOOL NET_DVR_AddFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DATARECORD_INFO lpInBuf); BOOL NET_DVR_FastAddFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_FAST_DATARECORD_INFO lpInBuf); LONG NET_DVR_InquireFaceDBRecord(LONG lUserID, LPNET_VCA_DATARECORD_COND lpInBuf,fSearchDBCallBack cbInquireDBCallBack, void *pUser); BOOL NET_DVR_GetInquireFaceDBProgress(LONG lInquireHandle, DWORD* pState); BOOL NET_DVR_UpdateFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DATARECORD_INFO lpInBuf); BOOL NET_DVR_DeleteFaceDBRecord(LONG lUserID, DWORD dwDataBaseID, LPNET_VCA_DELETE_RECORD_COND lpInBuf); typedef void(*fSearchDBCallBack)(LONG lSearchHandle, DWORD dwType, DWORD dwResultNum, BYTE* pBuffer, DWORD dwBufSize,void *pUser); LONG NET_DVR_SearchFaceDB(LONG lUserID, LPNET_VCA_SEARCH_FACEDB_COND lpInBuf,fSearchDBCallBack cbSearchDBCallBack, void *pUser); BOOL NET_DVR_GetSearchFaceDBProgress(LONG lSearchHandle, DWORD* pState); BOOL NET_DVR_StopSearchDB(LONG lHandle); BOOL NET_DVR_FindMatchPicture(LONG lUserID, LPNET_VCA_FIND_MATCHPIC_COND lpFindCond, LPNET_VCA_FIND_MATCHPIC_RESULT lpFindResult); BOOL NET_DVR_RemoteControl(LONG lUserID, DWORD dwCommand, LPVOID lpInBuffer, DWORD dwInBufferSize); BOOL NET_DVR_PicViewRequest(LONG lUserID, NET_DVR_PIC_VIEW_PARAM *lpPicViewParam); typedef LONG(*PicViewCallBack)(LPNET_DVR_PICVIEW_CALLBACKPARAM pStruPicViewParam, void *pUser); BOOL NET_DVR_SetPicViewResponseCallBack(PicViewCallBack fPicViewResponseCallBack, void *pUser); BOOL NET_DVR_SetPicViewDataCallBack(LONG lPicViewHandle, SCREENPICDATACB fPicDataCallback, void *pUserData); BOOL NET_DVR_GetDevList(LONG lUserID, LPNET_DVR_DEVLIST lpDevListInfo); BOOL NET_DVR_GetScreenList(LONG lUserID, LPNET_DVR_SCREENLIST lpScreenListInfo); BOOL NET_DVR_SetScreenRelation(LONG lUserID, NET_DVR_DISP_SCREEN const* lpScreenInfo); BOOL NET_DVR_TextShowCtrl(LONG lUserID, DWORD dwDeviceIndex, LPNET_DVR_TEXTSHOW lpText); LONG NET_DVR_StartUpgrade(LONG lUserID, LPNET_DVR_OPERATE_DEVICE lpStruOperate, DVCS_UPGRADESTATE_CB UpgradeStateCallback, void *pUserData); BOOL NET_DVR_StopUpgrade(LONG lUserID, LPNET_DVR_OPERATE_DEVICE lpStruOperate, LONG lUpgradeHandle); BOOL NET_DVR_AddNetSignal(LONG lUserID, LPNET_DVR_NETSIGNAL_INFO lpStruSignal, void* lpOutBuf , DWORD dwBufLen); LONG NET_DVR_StartPicPreview(LONG lUserID, NET_DVR_START_PIC_VIEW_INFO const* lpStruStartPicView, SCREENPICDATACB PicDataCallback, void *pUserData); BOOL NET_DVR_GetDeviceStatus(LONG lUserID, DWORD dwCommand, DWORD dwCount, LPVOID lpInBuffer, DWORD dwInBufferSize, LPVOID lpStatusList, LPVOID lpOutBuffer, DWORD dwOutBufferSize); BOOL NET_DVR_GetPlanList(LONG lUserID, DWORD dwDevNum, LPNET_DVR_PLAN_LIST lpPlanList); BOOL NET_DVR_GetInputSignalList(LONG lUserID, DWORD dwDevNum, LPNET_DVR_INPUT_SIGNAL_LIST lpInputSignalList); BOOL NET_DVR_GetInputSignalList_V40(LONG lUserID, DWORD dwDevNum, LPNET_DVR_INPUT_SIGNAL_LIST lpInputSignalList); LONG NET_DVR_UploadFile(LONG lUserID, DWORD dwUploadType, LPVOID lpInBuffer, DWORD dwInBufferSize, char* sFileName); LONG NET_DVR_UploadFile_V40(LONG lUserID, DWORD dwUploadType, LPVOID lpInBuffer, DWORD dwInBufferSize, char const * sFileName, LPVOID lpOutBuffer, DWORD dwOutBufferSize); LONG NET_DVR_GetUploadState(LONG lUploadHandle, LPDWORD pProgress); BOOL NET_DVR_GetUploadResult(LONG lUploadHandle, LPVOID lpOutBuffer, DWORD dwOutBufferSize); BOOL NET_DVR_UploadClose(LONG lUploadHandle); LONG NET_DVR_StartUploadFile(LONG lUserID, LPNET_DVR_UPLOAD_PARAM lpStruUploadParam); LONG NET_DVR_GetUploadFileProgress(LONG lFileHandle); LONG NET_DVR_GetUploadFileState(LONG lFileHandle); BOOL NET_DVR_StopUploadFile (LONG lFileHandle); LONG NET_DVR_StartDownloadFile(LONG lUserID, LPNET_DVR_DOWNLOAD_PARAM lpStruDownloadParam); LONG NET_DVR_GetDownloadFileProgress(LONG lFileHandle); LONG NET_DVR_GetDownloadFileState(LONG lFileHandle); BOOL NET_DVR_StopDownloadFile (LONG lFileHandle); BOOL NET_DVR_DownloadControl(LONG lDownloadHandle, NET_SDK_DOWNLOAD_CONTROL_TYPE_ENUM enumDownloadType, void* lpInBuffer, DWORD dwInBufferLen, void* lpOutBuffer, DWORD dwOutBufferLen); LONG NET_DVR_UploadSend(LONG lUploadHandle, const NET_DVR_SEND_PARAM_IN *pstruSendParamIN, void* lpOutBuffer); BOOL NET_DVR_GetMobileDevStatus(LONG lUserID, DWORD dwStatusType, LPNET_DVR_MB_MOBILEDEV_STATUS lpstruMobileDevStatus); BOOL NET_DVR_SetVoiceDataCallBack(LONG lVoiceComHandle, BOOL bNeedCBNoEncData, void(*fVoiceDataCallBack)(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser), void* pUser); BOOL NET_DVR_SetTransparentParam(LONG lUserID, char *sInBuffer, DWORD dwInSize); BOOL NET_DVR_GetTransparentParam(LONG lUserID, char *sInBuffer, DWORD dwInSize, char *sOutBuffer, DWORD dwOutSize); BOOL NET_DVR_SetSDKLocalConfig(LPNET_DVR_SDKLOCAL_CFG lpSdkLocalCfg); BOOL NET_DVR_GetSDKLocalConfig(LPNET_DVR_SDKLOCAL_CFG lpSdkLocalCfg); BOOL NET_DVR_SetSDKLocalCfg(NET_SDK_LOCAL_CFG_TYPE enumType, const void *lpInBuff); BOOL NET_DVR_GetSDKLocalCfg(NET_SDK_LOCAL_CFG_TYPE enumType, void* lpOutBuff); LONG NET_DVR_OpticalUpgrade(LONG lUserID, char const *sFileName, LPNET_DVR_OPTICAL_INFO lpOpticalInfo); typedef void(*fGPSDataCallback)(LONG nHandle, DWORD dwState, void* lpBuffer, DWORD dwBufLen, void* pUserData); LONG NET_DVR_GetVehicleGpsInfo(LONG nUserID, LPNET_DVR_GET_GPS_DATA_PARAM lpGPSDataParam, fGPSDataCallback cbGPSDataCallback, void* pUser); BOOL NET_DVR_ClosePreview(LONG lUserID, DWORD nSessionID); BOOL NET_DVR_ClosePlayBack(LONG lUserID, DWORD nSessionID); LONG NET_DVR_RealPlay_V40(LONG lUserID, LPNET_DVR_PREVIEWINFO lpPreviewInfo, REALDATACALLBACK fRealDataCallBack_V30, void* pUser); // LONG NET_DVR_RealPlaySpecial(LONG lUserID, LPNET_DVR_PREVIEWINFO_SPECIAL lpPreviewInfo, REALDATACALLBACK fRealDataCallBack_V30, void* pUser); LONG NET_DVR_StartDownload(LONG lUserID, DWORD dwDownloadType, LPVOID lpInBuffer, DWORD dwInBufferSize, const char *sFileName); LONG NET_DVR_GetDownloadState(LONG lDownloadHandle, LPDWORD pProgress); int NET_DVR_GetDownloadStateInfo(LONG lDownloadHandle, void* pStatusInfo); BOOL NET_DVR_StopDownload(LONG lHandle); BOOL NET_DVR_MatrixStartDynamic_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_PU_STREAM_CFG_V41 lpDynamicInfo); BOOL NET_DVR_MatrixGetLoopDecChanInfo_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V41 lpOuter); BOOL NET_DVR_MatrixSetLoopDecChanInfo_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_LOOP_DECINFO_V41 lpInter); BOOL NET_DVR_MatrixGetDecChanInfo_V41(LONG lUserID, DWORD dwDecChanNum, LPNET_DVR_MATRIX_DEC_CHAN_INFO_V41 lpOuter); LONG NET_DVR_StartT1Test(LONG lUserID, LPNET_DVR_ALARMHOST_DOWNLOAD_PARAM lpStruDownloadParam); BOOL NET_DVR_StopTT1Test(BOOL lHandle); BOOL NET_DVR_GetT1TestStatus(LONG lHandle, LONG *pStatus); BOOL NET_DVR_SendT1TestData(LONG lHandle, DWORD dwDataType, char *pSendBuf, DWORD dwSendBufLen); BOOL NET_DVR_UploadLogo_NEW(LONG lUserID, DWORD dwLogoNo, LPNET_DVR_MATRIX_LOGO_INFO lpLogoInfo, char *sLogoBuffer); BOOL NET_DVR_DownloadLogo(LONG lUserID, DWORD dwLogoNo, LPNET_DVR_MATRIX_LOGO_INFO lpLogoInfo, char *sLogoBuffer, DWORD dwLogoBufferSize); LONG NET_DVR_StartPassiveTransCode(LONG lUserID, NET_DVR_STREAM_INFO const *pStreamInfo, NET_DVR_COMPRESSIONCFG_V30 const *pDstTransInfo, NET_DVR_PASSIVETRANSINFO const *pPassiveTransInfo, void(*fTransCodeDataCallBack) (LONG lPassiveHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser), void* pUser); BOOL NET_DVR_TransCodeInputData(LONG lPassiveHandle, BYTE *pBuffer, DWORD dwBufSize); BOOL NET_DVR_StopPassiveTransCode(LONG lPassiveHandle); LONG NET_DVR_GetPassiveTransChanNum(LONG lPassiveHandle); BOOL NET_DVR_SetDeviceConfigEx(LONG lUserID, DWORD dwCommand, DWORD dwCount, NET_DVR_IN_PARAM *lpInParam, NET_DVR_OUT_PARAM *lpOutParam); BOOL NET_DVR_GetSTDConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_STD_CONFIG lpConfigParam); BOOL NET_DVR_SetSTDConfig(LONG lUserID, DWORD dwCommand, LPNET_DVR_STD_CONFIG lpConfigParam); BOOL NET_DVR_GetSTDAbility(LONG lUserID, DWORD dwAbilityType, LPNET_DVR_STD_ABILITY lpAbilityParam); BOOL NET_DVR_STDControl(LONG lUserID, DWORD dwCommand, LPNET_DVR_STD_CONTROL lpControlParam); BOOL NET_DVR_STDXMLConfig(LONG lUserID, NET_DVR_XML_CONFIG_INPUT* lpInputParam, NET_DVR_XML_CONFIG_OUTPUT* lpOutputParam); LONG NET_DVR_Upgrade_V40(DWORD lUserID, DWORD dwUpgradeType, char const *sFileName, void *pInbuffer, DWORD dwBufferLen); // LONG NET_DVR_Upgrade_V50(DWORD lUserID, LPNET_DVR_UPGRADE_PARAM lpUpgradeParam); BOOL NET_DVR_DetectImage_V50(LONG lUserID, LPNET_VCA_FD_PROCIMG_CFG lpFDProcImg,LPNET_VCA_FD_PROCIMG_RESULT_V50 lpOutBuf); LONG NET_DVR_SmartSearchPicture(LONG lUserID, NET_DVR_SMART_SEARCH_PIC_PARA * pFindParam); LONG NET_DVR_FindNextSmartPicture(LONG lFindHandle,LPNET_DVR_SMART_SEARCH_PIC_RET lpFindData); BOOL NET_DVR_CloseSmartSearchPicture(LONG lFindHandle); BOOL NET_DVR_SetESCallBack(LONG iRealHandle, void (*fnESCallback)(LONG lPreviewHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* pUser), void* pUser); BOOL NET_DVR_SetESRealPlayCallBack(LONG iRealHandle, void(*fPlayESCallBack)(LONG lPreviewHandle, NET_DVR_PACKET_INFO_EX *pstruPackInfo, void* pUser), void* pUser); BOOL NET_DVR_ActivateDevice(char* sDVRIP, WORD wDVRPort, LPNET_DVR_ACTIVATECFG lpActivateCfg); BOOL NET_DVR_GetAddrInfoByServer(DWORD dwQueryType, void* pInBuf, DWORD dwInBufLen, void* pOutBuf, DWORD dwOutBufLen); BOOL NET_DVR_StartGetDevState(LPNET_DVR_CHECK_DEV_STATE pParams); BOOL NET_DVR_StopGetDevState(); BOOL NET_DVR_RigisterPlayBackDrawFun(LONG lPlayHandle, void (*fDrawFun)(LONG lPlayHandle, HDC hDc, DWORD dwUser), DWORD dwUser); BOOL NET_DVR_SetSDKInitCfg(NET_SDK_INIT_CFG_TYPE enumType, void* const lpInBuff); BOOL NET_DVR_ReleaseSDKMemPool(LPNET_DVR_SDKMEMPOOL_CFG lpSdkMemPoolCfg); BOOL NET_DVR_CapturePictureBlock(LONG iRealHandle, char const *sPicFileName, DWORD dwTimeOut); BOOL NET_DVR_CapturePictureBlock_New(LONG iRealHandle, char *pPicBuf, DWORD dwPicSize, DWORD *lpSizeReturned); BOOL NET_DVR_ChangeWndResolution(LONG iRealHandle); LONG NET_DVR_SDKChannelToISAPI(LONG lUserID, LONG lInChannel, BOOL bSDKToISAPI); BOOL NET_DVR_STDXMLConfig_Conv(LONG lUserID, NET_DVR_XML_CONFIG_INPUT* lpInputParam, NET_DVR_XML_CONFIG_OUTPUT* lpOutputParam); // LONG NET_DVR_SetupAlarmChan_V50(LONG iUserID, LPNET_DVR_SETUPALARM_PARAM_V50 lpSetupParam, char *pSub, DWORD dwSubSize); // BOOL NET_DVR_GetNPQStat(LONG lHandle, NET_SDK_NPQ_STATE* pStruStat); // BOOL NET_DVR_SetNPQNotifyParam(LONG lHandle, NET_SDK_NPQ_NOTIFY_PARAM* pNotifyParam); // BOOL NET_DVR_PlaybackGetNPQStat(LONG lHandle, NET_SDK_NPQ_STATE* pStruStat); // BOOL NET_DVR_RenderPrivateData(LONG lRealHandle, int iIntelType, BOOL bTrue); // BOOL NET_DVR_RenderPrivateDataEx(LONG lRealHandle, int iIntelType, int iSubType, BOOL bTrue); #endif