#ifndef DHNETSDK_H #define DHNETSDK_H #if (defined(_MSC_VER)) #include #ifdef NETSDK_EXPORTS #if(defined(_WIN64) || defined(WIN64)) #define CLIENT_NET_API #else #define CLIENT_NET_API __declspec(dllexport) #endif #else #define CLIENT_NET_API __declspec(dllimport) #endif #define CALLBACK __stdcall #define CALL_METHOD __stdcall ///__cdecl #define INT64 __int64 #define TP_U64 unsigned __int64 #ifndef LLONG #ifdef _WIN64 #define LLONG INT64 #else #define LLONG LONG #endif #endif #ifndef LDWORD #ifdef _WIN64 #define LDWORD INT64 #else #define LDWORD DWORD #endif #endif #else ///non-windows #define CLIENT_NET_API extern "C" #define CALL_METHOD #define CALLBACK #ifndef INTERNAL_COMPILE #define RELEASE_HEADER #endif #ifdef RELEASE_HEADER #define WORD unsigned short #define DWORD unsigned int #define LONG int #define LPDWORD DWORD* #ifdef __OBJC__ #include "objc/objc.h" #else #define BOOL int #endif #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif #define BYTE unsigned char #define UINT unsigned int #define HDC void* #define HWND void* #define LPVOID void* #ifndef NULL #define NULL 0 #endif #define LLONG long #define INT64 long long #define TP_U64 unsigned long long #define LDWORD long #ifndef MAX_PATH #define MAX_PATH 260 #endif #ifndef DEF_RECT ///@brief rect typedef struct tagRECT { LONG left; LONG top; LONG right; LONG bottom; } RECT; #define DEF_RECT #endif #else ///??????? #include "../../SRC/Platform/osIndependent.h" #define INT64 int64 #define TP_U64 uint64 #endif /// RELEASE_HEADER #endif /// linux #ifndef LDWORD #if (defined(WIN32) || defined(_WIN32) || defined(_WIN64)) #ifdef _WIN64 #define LDWORD __int64 #else ///WIN32 #define LDWORD DWORD #endif #else ///linux #define LDWORD long #endif #endif #ifdef __cplusplus extern "C" { #endif /************************************************************************ ** ???????? ***********************************************************************/ #define DH_SERIALNO_LEN 48 /// ???????????????? #define DH_MAX_DISKNUM 256 /// ????????? #define DH_MAX_SDCARDNUM 32 /// ???SD?????? #define DH_MAX_BURNING_DEV_NUM 32 /// ???????????? #define DH_BURNING_DEV_NAMELEN 32 /// ?????????????? #define DH_MAX_LINK 6 #define DH_MAX_CHANNUM 16 /// ?????????? #define DH_MAX_DECODER_CHANNUM 64 /// ?????????????? #define DH_MAX_ALARMIN 128 /// ??????????? #define DH_MAX_ALARMOUT 64 /// ??????????? #define DH_MAX_RIGHT_NUM 100 /// ????????????? #define DH_MAX_GROUP_NUM 20 /// ???????????? #define DH_MAX_USER_NUM 200 /// ??????????? #define DH_RIGHT_NAME_LENGTH 32 /// ????????? #define DH_USER_NAME_LENGTH 8 /// ????????? #define DH_USER_PSW_LENGTH 8 /// ????????? #define DH_CUSTOM_NAME_LENGTH 32 /// ???????????? #define DH_USER_NAME_LEN_EX 32 /// ?????????,??????????? #define DH_USER_PSW_LEN_EX 32 /// ?????????,??????????? #define DH_MEMO_LENGTH 32 /// ??????? #define DH_MAX_STRING_LEN 128 #define MAX_STRING_LINE_LEN 6 /// ??????? #define MAX_PER_STRING_LEN 20 /// ??????? #define DH_MAX_MAIL_NAME_LEN 64 /// ??????????????????????? #define DH_MAX_MAIL_PSW_LEN 64 /// ???????????????????? #define DH_SPEEDLIMIT_TYPE_LEN 32 /// ????????????????? #define DH_VEHICLE_TYPE_LEN 32 /// ????????????????????????? #define DH_VEHICLE_INFO_LEN 32 /// ????????????????????? #define DH_VEHICLE_DRIVERNO_LEN 32 /// ???????????????????????????? #define DH_MAX_CROSSING_NUM 128 /// ?????? #define DH_MAX_CROSSING_ID 32 /// ?????????????? #define DH_MAX_CARD_INFO_LEN 256 /// ??????????? #define DH_MAX_CHANNUM_EX 32 /// ??????????? #define DH_MAX_SAERCH_IP_NUM 256 /// ???????IP???? #define DH_MAX_HARDDISK_TYPE_LEN 32 /// ?????????? #define DH_MAX_HARDDISK_SERIAL_LEN 32 /// ????????????? #define DH_MAX_SIM_LEN 16 /// SIM??????????? #define DH_MAX_SIM_NUM 10 /// ????SIM???????? #define DH_GATEWAY_MAX_SIM_NUM 8 /// ????SIM???????? #define DH_MAX_VERSION_LEN 32 /// ????????????? #define DH_MAX_MDN_LEN 36 /// MDN????????? #define DH_MAX_NETINTERFACE_NUM 64 /// ???????????? #define DH_EVENT_NAME_LEN 128 /// ?????????? #define DH_STORAGE_NAME_LEN 128 /// ????????????? #define DH_MAX_CARPORTLIGHT_NUM 4 /// ?????????? #define DH_STATION_NAME_LEN 32 /// ????????????? #define PTZ_PRESET_NAME_LEN 64 /// ?????????????? #define DH_MAX_GUARD_DETECT_ID_COUNT 64 /// ?????????ID???? #define DH_MAX_VERSION_STR 64 /// ???????????? #define DH_MAX_AUDIO_MATRIX_OUTPUT 8 /// ????????????????????????? #define DH_MAX_CHANNEL_COUNT 16 /// ??????????????? #define DH_COMMON_STRING_4 4 /// ????????????4 #define DH_COMMON_STRING_8 8 /// ????????????8 #define DH_COMMON_STRING_16 16 /// ????????????16 #define DH_COMMON_STRING_32 32 /// ????????????32 #define DH_COMMON_STRING_36 36 /// ????????????36 #define DH_COMMON_STRING_64 64 /// ????????????64 #define DH_COMMON_STRING_128 128 /// ????????????128 #define DH_COMMON_STRING_256 256 /// ????????????256 #define DH_COMMON_STRING_512 512 /// ????????????512 #define DH_COMMON_STRING_1024 1024 /// ????????????1024 #define DH_COMMON_STRING_2048 2048 /// ????????????2048 #define DH_MAX_ACCESS_NAME_LEN 64 /// ?????????? #define DH_MAX_EXALARMCHANNEL_NAME_LEN 128 /// ??????l???????????? #define DH_MAX_ALARM_SUBSYSTEM_NUM 256 /// ???????????? #define DH_MAX_BELL_NUM 4 /// ??????? #define DH_MAX_KEYBOARD_NUM 256 /// ???????? #define MAX_GOURP_NUM 128 /// ?????????? #define MAX_PWD_MODIFIEDTIME_LEN 20 /// ?????????????? #define MAX_ONVIF_USER_NUM 20 /// Onvif?????????? #define DH_MAX_POS_EXCHANGE_INFO 64 /// ??????POS????????,???????????????? #define NET_INTERFACE_DEFAULT_TIMEOUT 3000 /// ??????????? #define DH_MAX_BUSCARD_NUM 64 /// ???????????? #define DH_MAX_POS_MAC_NUM 8 /// ?????Mac?????? #define DH_MAX_MARK_FILE_NAME_LEN 124 /// ??????????????? #define NET_MAX_ATTACHMENT_NUM 8 /// ???????????? #define NET_MAX_ANNUUALINSPECTION_NUM 8 /// ???????????? #define NET_MAX_EVENT_PIC_NUM 6 /// ??????????? #define NET_MAX_MONTH_NUM 31 /// ?????????? #define NET_IPADDRSTR_LEN 46 /// IP???????????? ??? ipv4-mapped-on-ipv6 #define NET_MAX_AP_NUM 3 /// ???AP???? #define MAX_WEP_KEY_NUM 4 /// ???WEP??????? #define MAX_CARNO_LEN 20 /// ?????????? #define MAX_COACHNO_LEN 12 /// ????????? #define MAX_WORKPATTERN_NUM 2 /// ??????????? #define MAX_NETPORT_NUM 5 /// ?????????? #define MAX_ANTIFLICKERMODE_COUNT 8 /// ??????????????? #define MAX_CATEGORY_LEN 64 /// ?????????????? #define MAX_DANGER_GRADE_NUM 8 /// ???????????????? #define MAX_INSIDE_OBJECT_TYPE_NUM 32 /// ?????????????????? #define MAX_PATH_LEN 260 /// ??????????? #define MAX_XRAY_CHANNEL_NUM 10 /// ???X???????????????????????????? #define MAX_HISTORY_TEMPERATURE_NUM 64 /// ??????????????? #define MAX_TEMPERATURE_POINT_NUM 8 /// ????????????? #define MAX_GROUP_LEN 128 /// ???????????? #define MAX_ILLEGAL_LOGIN_IP_LEN 40 /// ?????????IP???? #define DH_COMMON_STRING_20 20 /// ????????????20 #define MAX_EVENT_ID_LEN 52 /// ???????ID???? #define MAX_HUMANTRAIT_EVENT_LEN 36 /// ?????????????????????? #define DH_COMMON_STRING_24 24 /// ????????????24 #define MAX_TEMPERATUREEX_POINT_NUM 12 /// ????????????? #define MAX_PIRPARAM_NUM 10 /// ???pir???????????? #define MAX_ENCRYPT_SYSTEM_INFO_CONTENT_LEN 8192 /// ?????????????????? #define MAX_LOCAL_EXT_ALARM_NAME_LEN 64 /// ?????????????????????? #define MAX_TASK_ID_LEN 64 /// ????????ID???? #define MAX_FILE_PATH_LEN 256 /// ?????????????? #define MAX_IMAGE_INFO_NUM 8 /// ????????????? #define MAX_DIAL_RESULT_LEN 2048 /// ??????????????????? #define MAX_COUNTRY_CODE_LEN 4 /// ????????????? #define MAX_PROVINCE_CODE_LEN 64 /// ????????????? #define MAX_CITY_CODE_LEN 64 /// ?????????????? #define MAX_AREA_CODE_LEN 64 /// ?????????????? #define MAX_REQ_INFO_LEN 1600 /// ??????????????? #define MAX_SIP_SVR_ID_LEN 24 /// ????SIP??????ID???? #define MAX_SIP_DOMAIN_LEN 128 /// ????SIP??? #define MAX_SIP_SVR_IP_LEN 128 /// ????SIP??????IP???? #define MAX_SIP_SERVER_DEVICE_ID_LEN 24 /// ????????????? #define MAX_REG_PASSWORD_LEN 24 /// ????????????? #define MAX_CIVIL_CODE_LEN 24 /// ?????????????????? #define MAX_INTERVIDEO_ID_LEN 24 /// ????????????????? #define MAX_CHANNEL_ID_LEN 24 /// ????????????? #define MAX_SIP_SERVER_NUM 5 /// ????SIP????????????? #define MAX_GB28181_PROTOCOL_VERSION 16 /// ????GB28181?????????? #define DH_MAX_FACEDETECT_FEATURE_NUM 32 /// ????????????? #define MAX_ATTACHMENT_NUM 8 /// ???????????? #define MAX_ERRORCODE_NUM 512 /// ??????????? #define MAX_PUSH_STREAM_AUTH_SSID 80 /// ??????????ID???? #define DH_MAX_IPADDRV4_LEN 16 /// IPv4???????????? #define DH_MAX_IPADDRV6_LEN 64 /// IPv6???????????? /// ???????????????? #define DH_MAX_MAIL_ADDR_LEN 128 /// ?????(??)??????? #define DH_MAX_MAIL_SUBJECT_LEN 64 /// ??????????? #define DH_MAX_IPADDR_LEN 16 /// IP???????????? #define DH_MAX_IPADDR_LEN_EX 40 /// ???IP????????????, ???IPV6 #define DH_MACADDR_LEN 40 /// MAC???????????? #define DH_MAX_URL_LEN 128 /// URL????????? #define DH_MAX_DEV_ID_LEN 48 /// ??????????? #define DH_MAX_HOST_NAMELEN 64 /// ??????????, #define DH_MAX_HOST_PSWLEN 32 /// ?????? #define DH_MAX_NAME_LEN 16 /// ???????????????? #define DH_MAX_ETHERNET_NUM 2 /// ????????????? #define DH_MAX_ETHERNET_NUM_EX 10 /// ???????????????? #define DH_DEV_SERIALNO_LEN 48 /// ??????????????? #define DH_DEV_CLASS_LEN 16 /// ????????????????"IPC"?????? #define DH_DEV_TYPE_LEN 32 /// ???????????????"IPC-F725"?????? #define DH_N_WEEKS 7 /// ???????? #define DH_N_TSECT 6 /// ??????????? #define DH_N_REC_TSECT 6 /// ??????????? #define DH_N_COL_TSECT 2 /// ??????????? #define DH_CHAN_NAME_LEN 32 /// ?????????,DVR DSP????????,???32??? #define DH_N_ENCODE_AUX 3 /// ??????????? #define DH_N_TALK 1 /// ???????????? #define DH_N_COVERS 1 /// ?????????? #define DH_N_CHANNEL 16 /// ?????????? #define DH_N_ALARM_TSECT 2 /// ??????????????? #define DH_MAX_ALARMOUT_NUM 16 /// ???????????????? #define DH_MAX_AUDIO_IN_NUM 16 /// ??????????????? #define DH_MAX_VIDEO_IN_NUM 16 /// ??????????????? #define DH_MAX_ALARM_IN_NUM 16 /// ???????????????? #define DH_MAX_DISK_NUM 16 /// ??????????,????16 #define DH_MAX_DECODER_NUM 16 /// ??????(485)???????? #define DH_MAX_232FUNCS 10 /// 232?????????????? #define DH_MAX_232_NUM 2 /// 232??????????? #define DH_MAX_232_NUM_EX 16 /// ?????????????????? #define DH_MAX_DECPRO_LIST_SIZE 100 /// ?????????????????????? #define DH_FTP_MAXDIRLEN 240 /// FTP????????? #define DH_MATRIX_MAXOUT 16 /// ??????????????? #define DH_TOUR_GROUP_NUM 6 /// ??????????????? #define DH_MAX_DDNS_NUM 10 /// ???????ddns???????????? #define DH_MAX_SERVER_TYPE_LEN 32 /// ddns??????????,???????????? #define DH_MAX_DOMAIN_NAME_LEN 256 /// ddns????,???????????? #define DH_MAX_DDNS_ALIAS_LEN 32 /// ddns??????????,???????????? #define DH_MAX_DEFAULT_DOMAIN_LEN 60 /// ddns???????,???????????? #define DH_MOTION_ROW 32 /// ??????????????? #define DH_MOTION_COL 32 /// ??????????????? #define DH_STATIC_ROW 32 /// ??????????????? #define DH_STATIC_COL 32 /// ??????????????? #define DH_FTP_USERNAME_LEN 64 /// FTP????,????????? #define DH_FTP_PASSWORD_LEN 64 /// FTP????,???????? #define DH_TIME_SECTION 2 /// FTP????,??????????? #define DH_FTP_MAX_PATH 240 /// FTP????,????????????? #define DH_FTP_MAX_SUB_PATH 128 /// FTP????,????????????? #define DH_INTERVIDEO_UCOM_CHANID 32 /// ??????????,????ID #define DH_INTERVIDEO_UCOM_DEVID 32 /// ??????????,????ID #define DH_INTERVIDEO_UCOM_REGPSW 16 /// ??????????,???????? #define DH_INTERVIDEO_UCOM_USERNAME 32 /// ??????????,?????? #define DH_INTERVIDEO_UCOM_USERPSW 32 /// ??????????,????? #define DH_INTERVIDEO_NSS_IP 32 /// ??????????,IP #define DH_INTERVIDEO_NSS_SERIAL 32 /// ??????????,serial #define DH_INTERVIDEO_NSS_USER 32 /// ??????????,user #define DH_INTERVIDEO_NSS_PWD 50 /// ??????????,password #define DH_MAX_VIDEO_COVER_NUM 16 /// ????????????? #define DH_MAX_WATERMAKE_DATA 4096 /// ???????????? #define DH_MAX_WATERMAKE_LETTER 128 /// ?????????? #define DH_MAX_WLANDEVICE_NUM 10 /// ?????????????????????? #define DH_MAX_WLANDEVICE_NUM_EX 32 /// ?????????????????????? #define MAX_WLAN_DEVICE_NUM 128 /// ?????????????????????? #define DH_MAX_ALARM_NAME 64 /// ??????? #define DH_MAX_REGISTER_SERVER_NUM 10 /// ???????????????? #define DH_SNIFFER_FRAMEID_NUM 6 /// 6??FRAME ID ??? #define DH_SNIFFER_CONTENT_NUM 4 /// ???FRAME?????4????????? #define DH_SNIFFER_CONTENT_NUM_EX 8 /// ???FRAME?????8????????? #define DH_SNIFFER_PROTOCOL_SIZE 20 /// ??????????? #define DH_MAX_PROTOCOL_NAME_LENGTH 20 #define DH_SNIFFER_GROUP_NUM 4 /// 4????????? #define MAX_PATH_STOR 240 /// ?????????? #define DH_ALARM_OCCUR_TIME_LEN 40 /// ???????????????? #define DH_VIDEO_OSD_NAME_NUM 64 /// ????????????,?????32?????,16?????? #define DH_VIDEO_CUSTOM_OSD_NUM 8 /// ????????????????,????????????? #define DH_VIDEO_CUSTOM_OSD_NUM_EX 256 /// ????????????????,????????????? #define DH_CONTROL_AUTO_REGISTER_NUM 100 /// ??????????????????????? #define DH_MMS_RECEIVER_NUM 100 /// ??????????????? #define DH_MMS_SMSACTIVATION_NUM 100 /// ??????????????? #define DH_MMS_DIALINACTIVATION_NUM 100 /// ??????????????? #define DH_MAX_ALARMOUT_NUM_EX 32 /// ??????????????????? #define DH_MAX_VIDEO_IN_NUM_EX 32 /// ?????????????????? #define DH_MAX_ALARM_IN_NUM_EX 32 /// ???????????????? #define DH_MAX_IPADDR_OR_DOMAIN_LEN 64 /// IP???????????? #define DH_MAX_CALLID 32 /// ????ID #define DH_MAX_OBJECT_LIST 16 /// ???????????????????ID???????? #define DH_MAX_OBJECT_NUM 32 /// ???object???? #define DH_MAX_RULE_LIST 16 /// ????????????????????? #define DH_MAX_POLYGON_NUM 16 /// ???????????? #define DH_MAX_DETECT_LINE_NUM 20 /// ?????????????? #define DH_MAX_DETECT_REGION_NUM 20 /// ???????????????? #define MAX_CARGO_CHANNEL_NUM 8 /// ??????????? #define DH_MAX_TRACK_LINE_NUM 20 /// ??????????????? #define DH_MAX_CANDIDATE_NUM 50 /// ?????????????? #define DH_MAX_PERSON_IMAGE_NUM 48 /// ????????????????????? #define DH_MAX_FENCE_LINE_NUM 2 /// ????????????? #define MAX_SMART_VALUE_NUM 30 /// ????smart??????? #define DH_MACHINE_NAME_NUM 64 /// ??????????? #define DH_INTERVIDEO_AMP_DEVICESERIAL 48 /// ?????????? ?????????????????? #define DH_INTERVIDEO_AMP_DEVICENAME 16 /// ?????????? ???????????????? #define DH_INTERVIDEO_AMP_USER 32 /// ?????????? ????????????????? #define DH_INTERVIDEO_AMP_PWD 32 /// ?????????? ???????????????? #define MAX_SUBMODULE_NUM 32 /// ??????????????? #define DH_MAX_CARWAY_NUM 8 /// ??????,?????? #define DH_MAX_SNAP_SIGNAL_NUM 3 /// ??????????????????? #define DH_MAX_CARD_NUM 128 /// ??????????? #define DH_MAX_CARDINFO_LEN 32 /// ?????????????? #define MAX_COMPANION_CARD_NUM 6 /// ?????????????? #define DH_MAX_CONTROLER_NUM 64 /// ?????????????? #define DH_MAX_LIGHT_NUM 32 /// ??????????? #define DH_MAX_SNMP_COMMON_LEN 64 /// snmp ??????????? #define DH_MAX_DDNS_STATE_LEN 128 /// DDNS ????????? #define DH_MAX_PHONE_NO_LEN 16 /// ????????? #define DH_MAX_MSGTYPE_LEN 32 /// ???????????????????? #define DH_MAX_MSG_LEN 256 /// ?????????????? #define DH_MAX_DRIVINGDIRECTION 256 /// ???????????????? #define DH_MAX_GRAB_INTERVAL_NUM 4 /// ???????????? #define DH_MAX_FLASH_NUM 5 /// ?????????????? #define DH_MAX_LANE_NUM 8 /// ????????????????????????????? #define DH_MAX_ISCSI_PATH_NUM 64 /// ISCSI???????????? #define DH_MAX_WIRELESS_CHN_NUM 256 /// ???????????????? #define DH_PROTOCOL3_BASE 100 /// ?????????????? #define DH_PROTOCOL3_SUPPORT 11 /// ????3?????? #define DH_MAX_CHANMASK 64 /// ??????????? #define DH_MAX_STAFF_NUM 20 /// ???????????????????????? #define DH_MAX_CALIBRATEBOX_NUM 10 /// ??????????????????????????? #define DH_MAX_EXCLUDEREGION_NUM 10 /// ???????????????????????????? #define DH_MAX_POLYLINE_NUM 20 /// ?????????????????????? #define DH_MAX_COLOR_NUM 16 /// ????????? #define MAX_OBJFILTER_NUM 16 /// ????????????? #define DH_MAX_SYNOPSIS_STATE_NAME 64 /// ????????????????? #define DH_MAX_SYNOPSIS_QUERY_FILE_COUNT 10 /// ?????????????????????????????????????? #define DH_MAX_SSID_LEN 36 /// SSID???? #define DH_MAX_APPIN_LEN 16 /// PIN???? #define DH_NETINTERFACE_NAME_LEN 260 /// ??????????? #define DH_NETINTERFACE_TYPE_LEN 260 /// ??????????? #define DH_MAX_CONNECT_STATUS_LEN 260 /// ??????????????? #define DH_MAX_MODE_LEN 64 /// 3G?????????????? #define DH_MAX_MODE_NUM 64 /// 3G?????????????? #define DH_MAX_COMPRESSION_TYPES_NUM 16 /// ??????????????????? #define DH_MAX_CAPTURE_SIZE_NUM 64 /// ??????????? #define DH_NODE_NAME_LEN 64 /// ??????????????? #define MAX_CALIBPOINTS_NUM 256 /// ??????????? #define DH_MAX_ATTR_NUM 32 /// ????????????????? #define DH_MAX_CLOUDCONNECT_STATE_LEN 128 /// ?????????????????? #define DH_MAX_IPADDR_EX_LEN 128 /// ???IP??????? #define DH_MAX_PLATE_NUMBER_LEN 32 /// ????????????? #define DH_MAX_AUTHORITY_LIST_NUM 16 /// ????????????? #define DH_MAX_CITY_NAME_LEN 64 /// ???????????? #define DH_MAX_PROVINCE_NAME_LEN 64 /// ??????????? #define DH_MAX_PERSON_ID_LEN 32 /// ???id???? #define MAX_FACE_AREA_NUM 8 /// ????????????? #define MAX_FACE_DB_NUM 8 /// ?????????????? #define MAX_EVENT_NAME 128 /// ??????? #define DH_MAX_ETH_NAME 64 /// ????????? #define DH_MAX_PERSON_NAME_LEN 64 /// ??????????? #define DH_N_SCHEDULE_TSECT 8 /// ?????????? #define DH_MAX_URL_NUM 8 /// URL?????? #define DH_MAX_LOWER_MITRIX_NUM 16 /// ????????????? #define DH_MAX_BURN_CHANNEL_NUM 32 /// ?????????? #define DH_MAX_NET_STRORAGE_BLOCK_NUM 64 /// ???????????????? #define DH_MAX_CASE_PERSON_NUM 32 /// ?????????????? #define DH_MAX_MULTIPLAYBACK_CHANNEL_NUM 64 /// ?????????????????? #define DH_MAX_MULTIPLAYBACK_SPLIT_NUM 32 /// ??????????????????? #define DH_MAX_AUDIO_ENCODE_TYPE 64 /// ?????????????????? #define MAX_LOG_PATH_LEN 260 /// ????????????? #define MAX_CARD_RECORD_FIELD_NUM 16 /// ???????????????? #define DH_BATTERY_NUM_MAX 16 /// ????????? #define DH_POWER_NUM_MAX 16 /// ????????? #define DH_MAX_AUDIO_PATH 260 /// ??????????????? #define DH_MAX_DOORNAME_LEN 128 /// ????????????? #define DH_MAX_CARDPWD_LEN 64 /// ????????????? #define NET_MAX_FISHEYE_MOUNTMODE_NUM 4 /// ??????????????? #define NET_MAX_FISHEYE_CALIBRATEMODE_NUM 16 /// ???????????????? #define NET_MAX_FISHEYE_EPTZCMD_NUM 64 /// ????????????????????? #define POINT_NUM_IN_PAIR 2 /// ?????????????? #define MAX_POINT_PAIR_NUM 128 /// ??????????? #define CHANNEL_NUM_IN_POINT_GROUP 2 /// ???????????????? #define MAX_POINT_GROUP_NUM 32 /// ?????????????, ???????????????????????? #define MAX_LANE_INFO_NUM 32 /// ????????? #define MAX_LANE_DIRECTION_NUM 8 /// ???????????? #define DH_MAX_MONITORWALL_NUM 32 /// ???????????? #define DH_MAX_OPTIONAL_URL_NUM 8 /// ????url??????? #define DH_MAX_CAMERA_CHANNEL_NUM 1024 /// ????????????? #define MAX_SIMILARITY_COUNT 1024 /// ???????????????? #define MAX_FEATURESTATE_NUM 4 /// ????????n??????? #define MAX_FILE_SUMMARY_NUM 32 /// ?????????? #define MAX_AUDIO_ENCODE_NUM 64 /// ???????????????? #define MAX_MONITORWALL_NAME_LEN 64 /// ????????????? #define MAX_FLASH_LIGHT_NUM 8 /// ????????????(?????)???? #define MAX_STROBOSCOPIC_LIGHT_NUM 8 /// ??????????????? #define MAX_MOSAIC_NUM 8 /// ????????????????? #define MAX_MOSAIC_CHANNEL_NUM 256 /// ??????????????????????? #define MAX_FIREWARNING_INFO_NUM 4 /// ????????????????????? #define MAX_AXLE_NUM 8 /// ????????? #define DH_MAX_BULLET_HOLES 10 /// ????????? #define MAX_PLATE_NUM 64 /// ????????????????????? #define MAX_PREVIEW_CHANNEL_NUM 64 /// ???????????????? #define MAX_EVENT_RESTORE_UUID 36 /// ??????uuid??????? #define MAX_EVENT_RESTORE_CODE_NUM 8 /// ???????????????? #define MAX_EVENT_RESOTER_CODE_TYPE 32 /// ????????????????? #define MAX_SNAP_TYPE 3 /// ?????????? #define MAX_MAINFORMAT_NUM 4 /// ???????????????????? #define CUSTOM_TITLE_LEN 1024 /// ???????????????(????1024) #define MAX_CUSTOM_TITLE_NUM 8 /// ?????????????????????? #define FORMAT_TYPE_LEN 16 /// ?????????????? #define MAX_CHANNEL_NAME_LEN 256 /// ??????????? #define MAX_VIRTUALINFO_DOMAIN_LEN 64 /// ???????????????????? #define MAX_VIRTUALINFO_TITLE_LEN 64 /// ?????????????????? #define MAX_VIRTUALINFO_USERNAME_LEN 32 /// ????????????????? #define MAX_VIRTUALINFO_PASSWORD_LEN 32 /// ?????????????? #define MAX_VIRTUALINFO_PHONENUM_LEN 12 /// ???????????????? #define MAX_VIRTUALINFO_IMEI_LEN 16 /// ???????????????????????? #define MAX_VIRTUALINFO_IMSI_LEN 16 /// ???????????????????????? #define MAX_VIRTUALINFO_LATITUDE_LEN 16 /// ?????????????? #define MAX_VIRTUALINFO_LONGITUDE_LEN 16 /// ??????????????? #define MAX_VIRTUALINFO_NUM 1024 /// ?????????????????? #define MAX_CALL_ID_LEN 64 /// ????ID???? #define MAX_FACE_DATA_LEN 2048 /// ?????????????? #define MAX_FACE_DATA_NUM 20 /// ???????????? #define MAX_PHOTO_COUNT 5 /// ???????????? #define MAX_FINGERPRINT_NUM 10 /// ?????????? #define MAX_RINGFILE_NUM 64 /// ????????????????? #define MAX_VIDEOIN_CONFLICT_NUM 128 /// ????????????????????? #define MAX_COURSE_LOGIC_CHANNEL 64 /// ?????????????????? #define MAX_COMMON_STRING_8 8 /// ????????????8 #define MAX_COMMON_STRING_16 16 /// ????????????16 #define MAX_COMMON_STRING_32 32 /// ????????????32 #define MAX_COMMON_STRING_64 64 /// ????????????64 #define MAX_MAN_LIST_COUNT 64 /// ?????????????? #define MAX_COMMON_STRING_128 128 /// ????????????128 #define MAX_STREAM_NUM 4 /// ??????????? #define MAX_CELL_PHONE_NUMBER_LEN 32 /// ??????????? #define MAX_MAIL_LEN 64 /// ???????? #define MAX_USER_NAME_LEN 128 /// ???????????? #define MAX_PWD_LEN 128 /// ????????? #define MAX_SECURITY_CODE_LEN 16 /// ?????????????/??????????????? #define MAX_PWD_SPEC_CHARS_ARRAY_LEN 128 /// ?????Z????????????????????? #define MAX_PWD_BASIC_CHARS_ARRAY_LEN 128 /// ?????Z???????????????????????? #define MAX_COMMON_STRING_512 512 /// ????????????512 #define MAX_RFIDELETAG_CARDID_LEN 16 /// RFID ?????????????????????? #define MAX_RFIDELETAG_DATE_LEN 16 /// RFID ????????????????????? #define MAX_LINK_NAME_LEN 16 /// ??????????? #define MAX_SERVER_ADDRESS_LEN 64 /// ??????IP???? #define LINK_LAYER_VPN_NUM 64 /// ??????VPN??????? #define MAX_SERVER_IP_LEN 32 /// ??????IP???? #define MAX_SCENICSPOT_POINTS_NUM 256 /// ?????????????????? #define MAX_ACCESSSUBCONTROLLER_NUM 64 /// ??????????????? #define MAX_ACCESSDOOR_NUM 128 /// ????????? #define MAX_ACCESS_READER_NUM 32 /// ????????????????????? #define MAX_ACCESS_POINT_NUM 32 /// ??????????????? #define MAX_CONFIG_NAME_LEN 128 /// ?????????????? #define MAX_PLATE_NUMBER_LEN 64 /// ?????????? #define MAX_MASTER_OF_CAR_LEN 32 /// ????????????? #define MAX_USER_TYPE_LEN 32 /// ????????????? #define MAX_SUB_USER_TYPE_LEN 64 /// ??????????????? #define MAX_REMARKS_LEN 64 /// ??????????? #define MAX_PARK_CHARGE_LEN 32 /// ??????????? #define MAX_IN_TIME_LEN 32 /// ???????????? #define MAX_OUT_TIME_LEN 32 /// ?????????????? #define MAX_CUSTOM_LEN 128 /// ??????????????? #define MAX_DEAL_NUM_LEN 32 /// ?????????????? #define MAX_STORE_NO_LEN 32 /// ???????? #define MAX_STORE_NAME_LEN 32 /// ?????????? #define MAX_STORE_EMPLOYEE_ID_LEN 32 /// ??????????????? #define MAX_PRODUCT_NO_LEN 32 /// ???????????? #define MAX_PRODUCT_NAME_LEN 32 /// ????????????? #define MAX_PRODUCT_CATEGORY_LEN 32 /// ?????????? #define DH_MAX_FINGER_PRINT 10 /// ???ID???????? #define MAX_SUBCHANNEL_NUM 16 /// ????????(?????)?????? #define MAX_NAME_LENGTH 32 /// ??????????? #define MAX_SNAP_URL_LEN 128 /// ???????????? #define MAX_CODE_LEN 64 /// ???????????? #define MAX_PERSON_INFO_NUM 4 /// ????????????? #define MAX_GOOD_INFO_NUM 128 /// ????????????? #define MAX_SUB_TAG_NUM 20 /// ?????????? #define MAX_MANUFACTURER_LEN 32 /// ????Mac???????????????? #define MAX_MACHISTORY_SSID_LEN 24 /// ???????SSID???? #define MAX_MACHISTORY_SSID_NUM 5 /// ???SSID???????? #define MAX_ROUTE_NUM 16 /// ??????????? #define MAX_MCU_NUM 10 /// ????????????????? #define MAX_ALARM_CHANNEL_NAME_LEN 64 /// ??????????? #define MAX_INSIDEOBJECT_NUM 32 /// ??????????????? #define DH_PRETASK_CHANNEL 4 /// ??????????????? #define MAX_AGE_NUM 2 /// ?????????? #define MAX_EMOTION_NUM 8 /// ??????????????? #define MAX_CLASS_NUMBER_LEN 32 /// ???????? #define MAX_PHONENUMBER_LEN 16 /// ????????? #define MAX_NASFILE_NUM 8 /// ???NAS??????? #define MAX_CROWD_DETECTION_NAME_LEN 128 /// ????????????????????? #define MAX_CROWD_LIST_NUM 5 /// ??????????????????????? #define MAX_REGION_LIST_NUM 8 /// ???????????????????ID???????? #define MAX_RECORD_ENCRYPT_PASSWD_LEN 128 /// ???????????????? #define MAX_EVENT_NAME_LEN 128 /// ????????????? #define MAX_ABSTRACT_INFO_NUM 100 /// ???????????????????????? #define MAX_ACCESS_FLOOR_NUM 64 /// ?????????? #define MAX_TARGET_OBJECT_NUM 100 /// ????????????????? #define MAX_MACADDR_NUM 8 /// ?????????????? #define MAX_ADD_DEVICE_NUM 16 /// ?????????????? #define MAX_LINK_DEVICE_NUM 1024 /// ?????????????? #define MAX_DEVICE_CHANNEL_NUM 1024 /// ????????????? #define MAX_PLATE_TAILNUM 10 /// ????????? #define MAX_OBJECT_NUM_EX 100 /// ??????????? #define MAX_LOCAL_IP_LEN 64 /// ????IP???? #define MAX_LV_NAME_NUM 64 /// ?????????????? #define MAX_LV_NAME_LEN 128 /// ?????????????? #define MAX_KEY_LEN 64 /// ??????????? #define MAX_FILE_FINDER_PATH_NUM 10 /// ????????????????? #define MAX_FILE_FINDER_PATH_LEN 256 /// ????????????????? #define MAX_FILE_LIST_NUM 16 /// ????????????????? #define MAX_FILE_LIST_LEN 256 /// ????????????????? #define MAX_PARKINGLOCK_STATE_NUM 6 /// ????????????? #define MAX_COMMON_STRING_256 256 /// ????????????256 #define MAX_COMMON_STRING_2048 2048 /// ????????????2048 #define MAX_RESOURCE_LEN 64 /// ????????????? #define MAX_COMPANY_NAME_LEN 200 /// ???????????? #define MAX_CONTACT_LEN 16 /// ??????????????????? #define MAX_RADAR_SD_NUM 24 /// ??????????????????? #define MAX_FLEXION_INFO_NUM 512 /// ???????????? #define MAX_CALIBRATE_PLOYGON_AREA_NUM 20 /// ?????????????????? #define MAX_CALIBRATE_RECT_NUM 10 /// ?????????? #define MAX_SCENE_NUM 32 /// ???????? #define MAX_SNAP_SHOT_NUM 8 /// ?????????? #define MAX_AIRPORT_VEHICLE_OBJECT_NUM 16 /// ????????????????? #define MAX_UPGRADER_SERIAL_INFO 8 /// ?????????????????????? ///@brief MACRO_GROUP_DEVSTATE_4_BEGIN /// ???????,???CLIENT_QueryDevState??? #define DH_DEVSTATE_COMM_ALARM 0x0001 /// ????????????(??????????,??????,??????) #define DH_DEVSTATE_SHELTER_ALARM 0x0002 /// ???????????? #define DH_DEVSTATE_RECORDING 0x0003 /// ???????? #define DH_DEVSTATE_DISK 0x0004 /// ????????? #define DH_DEVSTATE_RESOURCE 0x0005 /// ?????????? #define DH_DEVSTATE_BITRATE 0x0006 /// ?????????? #define DH_DEVSTATE_CONN 0x0007 /// ???????????? #define DH_DEVSTATE_PROTOCAL_VER 0x0008 /// ???????????????,pBuf = int* #define DH_DEVSTATE_TALK_ECTYPE 0x0009 /// ????????????????????????,??????DHDEV_TALKFORMAT_LIST #define DH_DEVSTATE_SD_CARD 0x000A /// ???SD?????(IPC????) #define DH_DEVSTATE_BURNING_DEV 0x000B /// ??????????? #define DH_DEVSTATE_BURNING_PROGRESS 0x000C /// ?????????? #define DH_DEVSTATE_PLATFORM 0x000D /// ??????????????? #define DH_DEVSTATE_CAMERA 0x000E /// ???????????????(IPC????),pBuf = DHDEV_CAMERA_INFO *,????????????? #define DH_DEVSTATE_SOFTWARE 0x000F /// ???????????????? #define DH_DEVSTATE_LANGUAGE 0x0010 /// ?????????????????? #define DH_DEVSTATE_DSP 0x0011 /// ???DSP????????(???????DHDEV_DSP_ENCODECAP) #define DH_DEVSTATE_OEM 0x0012 /// ???OEM??? #define DH_DEVSTATE_NET 0x0013 /// ???????????????? #define DH_DEVSTATE_TYPE 0x0014 /// ?????????? #define DH_DEVSTATE_SNAP 0x0015 /// ???????????(IPC????) #define DH_DEVSTATE_RECORD_TIME 0x0016 /// ??????????????????????? #define DH_DEVSTATE_NET_RSSI 0x0017 /// ?????????????????,??????DHDEV_WIRELESS_RSS_INFO #define DH_DEVSTATE_BURNING_ATTACH 0x0018 /// ????????????? #define DH_DEVSTATE_BACKUP_DEV 0x0019 /// ?????????????? #define DH_DEVSTATE_BACKUP_DEV_INFO 0x001a /// ???????????????? #define DH_DEVSTATE_BACKUP_FEEDBACK 0x001b /// ?????????? #define DH_DEVSTATE_ATM_QUERY_TRADE 0x001c /// ???ATM???????? #define DH_DEVSTATE_SIP 0x001d /// ???sip?? #define DH_DEVSTATE_VICHILE_STATE 0x001e /// ???????wifi?? #define DH_DEVSTATE_TEST_EMAIL 0x001f /// ??????????????? #define DH_DEVSTATE_SMART_HARD_DISK 0x0020 /// ??????smart??? #define DH_DEVSTATE_TEST_SNAPPICTURE 0x0021 /// ?????????????? #define DH_DEVSTATE_STATIC_ALARM 0x0022 /// ???????????? #define DH_DEVSTATE_SUBMODULE_INFO 0x0023 /// ?????????????? #define DH_DEVSTATE_DISKDAMAGE 0x0024 /// ????????????? #define DH_DEVSTATE_IPC 0x0025 /// ??????????IPC????, ??????DH_DEV_IPC_INFO #define DH_DEVSTATE_ALARM_ARM_DISARM 0x0026 /// ??????????????? #define DH_DEVSTATE_ACC_POWEROFF_ALARM 0x0027 /// ???ACC???d????(???????DWORD, 1??????,0??????) #define DH_DEVSTATE_TEST_FTP_SERVER 0x0028 /// ????FTP?????????? #define DH_DEVSTATE_3GFLOW_EXCEED 0x0029 /// ???3G?????????????,(??????DHDEV_3GFLOW_EXCEED_STATE_INFO) #define DH_DEVSTATE_3GFLOW_INFO 0x002a /// ???3G???????????,??????DH_DEV_3GFLOW_INFO #define DH_DEVSTATE_VIHICLE_INFO_UPLOAD 0x002b /// ???????????????(??????ALARM_VEHICLE_INFO_UPLOAD) #define DH_DEVSTATE_SPEED_LIMIT 0x002c /// ????????????(?????? ALARM_SPEED_LIMIT) #define DH_DEVSTATE_DSP_EX 0x002d /// ???DSP???????????(???????DHDEV_DSP_ENCODECAP_EX) #define DH_DEVSTATE_3GMODULE_INFO 0x002e /// ???3G??????(???????DH_DEV_3GMODULE_INFO) #define DH_DEVSTATE_MULTI_DDNS 0x002f /// ?????DDNS?????(???????DH_DEV_MULTI_DDNS_INFO) #define DH_DEVSTATE_CONFIG_URL 0x0030 /// ??????????URL???(???????DH_DEV_URL_INFO) #define DH_DEVSTATE_HARDKEY 0x0031 /// ???HardKey???????????DHDEV_HARDKEY_STATE) #define DH_DEVSTATE_ISCSI_PATH 0x0032 /// ???ISCSI????????(???????DHDEV_ISCSI_PATHLIST) #define DH_DEVSTATE_DLPREVIEW_SLIPT_CAP 0x0033 /// ?????????????????????(???????DEVICE_LOCALPREVIEW_SLIPT_CAP) #define DH_DEVSTATE_WIFI_ROUTE_CAP 0x0034 /// ??????????????????(???????DHDEV_WIFI_ROUTE_CAP) #define DH_DEVSTATE_ONLINE 0x0035 /// ??????????????(???????DWORD, 1???????, 0???????) #define DH_DEVSTATE_PTZ_LOCATION 0x0036 /// ???????????(??????? DH_PTZ_LOCATION_INFO) #define DH_DEVSTATE_MONITOR_INFO 0x0037 /// ????????????(???????DHDEV_MONITOR_INFO) #define DH_DEVSTATE_SUBDEVICE 0x0300 /// ????????(???, ?????)??(???????CFG_DEVICESTATUS_INFO) #define DH_DEVSTATE_RAID_INFO 0x0038 /// ???RAID??(???????ALARM_RAID_INFO) #define DH_DEVSTATE_TEST_DDNSDOMAIN 0x0039 /// ????DDNS?????????? #define DH_DEVSTATE_VIRTUALCAMERA 0x003a /// ??????????????(??? DHDEV_VIRTUALCAMERA_STATE_INFO) #define DH_DEVSTATE_TRAFFICWORKSTATE 0x003b /// ?????????????/?????????(???DHDEV_TRAFFICWORKSTATE_INFO) #define DH_DEVSTATE_ALARM_CAMERA_MOVE 0x003c /// ?????????????????????(???ALARM_CAMERA_MOVE_INFO) #define DH_DEVSTATE_ALARM 0x003e /// ???????????(??? NET_CLIENT_ALARM_STATE) #define DH_DEVSTATE_VIDEOLOST 0x003f /// ???????????????(??? NET_CLIENT_VIDEOLOST_STATE) #define DH_DEVSTATE_MOTIONDETECT 0x0040 /// ?????????????(??? NET_CLIENT_MOTIONDETECT_STATE) #define DH_DEVSTATE_DETAILEDMOTION 0x0041 /// ?????????????????(??? NET_CLIENT_DETAILEDMOTION_STATE) #define DH_DEVSTATE_VEHICLE_INFO 0x0042 /// ?????????????????????(??? DHDEV_VEHICLE_INFO) #define DH_DEVSTATE_VIDEOBLIND 0x0043 /// ???????????????(??? NET_CLIENT_VIDEOBLIND_STATE) #define DH_DEVSTATE_3GSTATE_INFO 0x0044 /// ???3G?????????(???????DHDEV_VEHICLE_3GMODULE) #define DH_DEVSTATE_NETINTERFACE 0x0045 /// ????????????(??? DHDEV_NETINTERFACE_INFO) #define DH_DEVSTATE_PICINPIC_CHN 0x0046 /// ??????????????(???DWORD????) #define DH_DEVSTATE_COMPOSITE_CHN 0x0047 /// ??????????????(???DH_COMPOSITE_CHANNEL????) #define DH_DEVSTATE_WHOLE_RECORDING 0x0048 /// ???????????????(???BOOL), ???????????????,???????????????? #define DH_DEVSTATE_WHOLE_ENCODING 0x0049 /// ???????????????(???BOOL), ???????????????,????????????????? #define DH_DEVSTATE_DISK_RECORDE_TIME 0x004a /// ??????????????????(pBuf = DEV_DISK_RECORD_TIME*,?????????????) #define DH_DEVSTATE_BURNER_DOOR 0x004b /// ???????????????????(??????? NET_DEVSTATE_BURNERDOOR) #define DH_DEVSTATE_GET_DATA_CHECK 0x004c /// ??????????????????(??? NET_DEVSTATE_DATA_CHECK) #define DH_DEVSTATE_ALARM_IN_CHANNEL 0x004f /// ?????????????????(???NET_ALARM_IN_CHANNEL????) #define DH_DEVSTATE_ALARM_CHN_COUNT 0x0050 /// ????????????(???NET_ALARM_CHANNEL_COUNT) #define DH_DEVSTATE_PTZ_VIEW_RANGE 0x0051 /// ??????????????(??? DH_OUT_PTZ_VIEW_RANGE_STATUS ) #define DH_DEVSTATE_DEV_CHN_COUNT 0x0052 /// ????????????(???NET_DEV_CHN_COUNT_INFO) #define DH_DEVSTATE_RTSP_URL 0x0053 /// ??????????RTSP URL????,??????DEV_RTSPURL_LIST #define DH_DEVSTATE_LIMIT_LOGIN_TIME 0x0054 /// ????????????????????,???????BTYE,????????????? ,0?????????,??????????????????????? #define DH_DEVSTATE_GET_COMM_COUNT 0x0055 /// ????????? ??????NET_GET_COMM_COUNT #define DH_DEVSTATE_RECORDING_DETAIL 0x0056 /// ??????????????(pBuf = NET_RECORD_STATE_DETAIL*) #define DH_DEVSTATE_PTZ_PRESET_LIST 0x0057 /// ???????????????????(?????NET_PTZ_PRESET_LIST) #define DH_DEVSTATE_EXTERNAL_DEVICE 0x0058 /// ?????????(pBuf = NET_EXTERNAL_DEVICE*) #define DH_DEVSTATE_GET_UPGRADE_STATE 0x0059 /// ????????????(?????DHDEV_UPGRADE_STATE_INFO) #define DH_DEVSTATE_MULTIPLAYBACK_SPLIT_CAP 0x005a /// ??????????????????( ??????? NET_MULTIPLAYBACK_SPLIT_CAP ) #define DH_DEVSTATE_BURN_SESSION_NUM 0x005b /// ????????????(pBuf = int*) #define DH_DEVSTATE_PROTECTIVE_CAPSULE 0x005c /// ???????????(???????ALARM_PROTECTIVE_CAPSULE_INFO) #define DH_DEVSTATE_GET_DOORWORK_MODE 0x005d /// ?????????????( ??? NET_GET_DOORWORK_MODE) #define DH_DEVSTATE_PTZ_ZOOM_INFO 0x005e /// ?????????????????(??? DH_OUT_PTZ_ZOOM_INFO ) #define DH_DEVSTATE_POWER_STATE 0x0152 /// ????????(???????DH_POWER_STATUS) #define DH_DEVSTATE_ALL_ALARM_CHANNELS_STATE 0x153 /// ????????????(??????? NET_CLIENT_ALARM_CHANNELS_STATE) #define DH_DEVSTATE_ALARMKEYBOARD_COUNT 0x0154 /// ???????????????????????(???????NET_ALARMKEYBOARD_COUNT) #define DH_DEVSTATE_EXALARMCHANNELS 0x0155 /// ?????????????????????(??????? NET_EXALARMCHANNELS) #define DH_DEVSTATE_GET_BYPASS 0x0156 /// ????????????(??????? NET_DEVSTATE_GET_BYPASS) #define DH_DEVSTATE_ACTIVATEDDEFENCEAREA 0x0157 /// ??????????????(??????? NET_ACTIVATEDDEFENCEAREA) #define DH_DEVSTATE_DEV_RECORDSET 0x0158 /// ??????????????(??? NET_CTRL_RECORDSET_PARAM) #define DH_DEVSTATE_DOOR_STATE 0x0159 /// ????????(???NET_DOOR_STATUS_INFO) #define DH_DEVSTATE_ANALOGALARM_CHANNELS 0x1560 /// ?????????????????????(???NET_ANALOGALARM_CHANNELS) #define DH_DEVSTATE_GET_SENSORLIST 0x1561 /// ???????????????????(??? NET_SENSOR_LIST) #define DH_DEVSTATE_ALARM_CHANNELS 0x1562 /// ????????????????????????(??????? NET_ALARM_CHANNELS) /// ??????????????????????????,?????????????????????????????,??????????????????? #define DH_DEVSTATE_GET_ALARM_SUBSYSTEM_ACTIVATESTATUS 0x1563 /// ????????????????( ??? NET_GET_ALARM_SUBSYSTEM_ACTIVATE_STATUES) #define DH_DEVSTATE_AIRCONDITION_STATE 0x1564 /// ????????????(??? NET_GET_AIRCONDITION_STATE) #define DH_DEVSTATE_ALARMSUBSYSTEM_STATE 0x1565 /// ?????????(???NET_ALARM_SUBSYSTEM_STATE) #define DH_DEVSTATE_ALARM_FAULT_STATE 0x1566 /// ?????????(??? NET_ALARM_FAULT_STATE_INFO) #define DH_DEVSTATE_DEFENCE_STATE 0x1567 /// ?????????(??? NET_DEFENCE_STATE_INFO, ?????????????????????????????????????????????????????,???????,????????????) #define DH_DEVSTATE_CLUSTER_STATE 0x1568 /// ????????(??? NET_CLUSTER_STATE_INFO) #define DH_DEVSTATE_SCADA_POINT_LIST 0x1569 /// ????????????????(??? NET_SCADA_POINT_LIST_INFO) #define DH_DEVSTATE_SCADA_INFO 0x156a /// ????????????(??? NET_SCADA_INFO) #define DH_DEVSTATE_SCADA_CAPS 0x156b /// ???SCADA??????(??? NET_SCADA_CAPS) #define DH_DEVSTATE_GET_CODEID_COUNT 0x156c /// ?????????????????(??? NET_GET_CODEID_COUNT) #define DH_DEVSTATE_GET_CODEID_LIST 0x156d /// ??????????(??? NET_GET_CODEID_LIST) #define DH_DEVSTATE_ANALOGALARM_DATA 0x156e /// ???????????????(??? NET_GET_ANALOGALARM_DATA) #define DH_DEVSTATE_VTP_CALLSTATE 0x156f /// ???????????????(??? NET_GET_VTP_CALLSTATE) #define DH_DEVSTATE_SCADA_INFO_BY_ID 0x1570 /// ????????????????????(??? NET_SCADA_INFO_BY_ID) #define DH_DEVSTATE_SCADA_DEVICE_LIST 0x1571 /// ??????????????????????ID(??? NET_SCADA_DEVICE_LIST) #define DH_DEVSTATE_DEV_RECORDSET_EX 0x1572 /// ??????????????(????????????)(??? NET_CTRL_RECORDSET_PARAM) #define DH_DEVSTATE_ACCESS_LOCK_VER 0x1573 /// ????????????????(??? NET_ACCESS_LOCK_VER) #define DH_DEVSTATE_MONITORWALL_TVINFO 0x1574 /// ??????????????(??? NET_CTRL_MONITORWALL_TVINFO) #define DH_DEVSTATE_GET_ALL_POS 0x1575 /// ??????????????Pos??????????(??? NET_POS_ALL_INFO) #define DH_DEVSTATE_GET_ROAD_LIST 0x1576 /// ????????????????????(??? NET_ROAD_LIST_INFO) #define DH_DEVSTATE_GET_HEAT_MAP 0x1577 /// ????????????(??? NET_QUERY_HEAT_MAP) #define DH_DEVSTATE_GET_WORK_STATE 0x1578 /// ???????????????(??? NET_QUERY_WORK_STATE) #define DH_DEVSTATE_GET_WIRESSLESS_STATE 0x1579 /// ???????????????(??? NET_GET_WIRELESS_DEVICE_STATE) #define DH_DEVSTATE_GET_REDUNDANCE_POWER_INFO 0x157a /// ????????????(??? NET_GET_REDUNDANCE_POWER_INFO) #define DH_DEVSTATE_GET_ACCESSORY_STATUS 0x157b /// ????????(??? NET_GET_ACCESSORY_STATUS) #define DH_DEVSTATE_GET_PTZ_TOURS 0x157c /// ??????????????????????????? NET_GET_PTZ_TOURS_INFO?? #define DH_DEVSTATE_GET_DEVWIRELESSSIGNAL_LIST 0x157d /// ???????????????????? NET_GET_DEVWIRELESSSIGNAL_LIST ?? #define DH_DEVSTATE_GET_ACCESSORY_INFO 0x157e /// ?????????(??? NET_GET_ACCESSORY_INFO) #define DH_DEVSTATE_GET_UPNP_STATUS 0x157f /// ???UPnP?????(??? NET_GET_UPNPSTATUS_INFO) ///@brief MACRO_GROUP_DEVSTATE_4_END ////////////////////////////////////////////////////////////////////// /// ??????????? dwSize ?????? #define _setdwSize(stu) ((stu).dwSize = sizeof(stu)) #define POINTERSIZE sizeof(void*) ////////////////////////////////////////////////////////////////////// #define CFG_MAX_ACCESSCONTROL_NUM 8 /// ????????????????? #define CFG_MAX_SUMMARY_LEN 1024 /// ?????JPEG????????????? #define CFG_MAX_DBKEY_NUM 64 /// ????????????? #define CFG_MAX_CHANNELNAME_LEN 64 /// ????????????? #define CFG_MAX_VIDEO_CHANNEL_NUM 256 /// ????????256 #define CFG_MAX_CHANNEL_COUNT 16 #define CFG_MAX_PSTN_SERVER_NUM 8 /// ??????????????? ///@brief ??????????? typedef enum tagNET_THREE_STATUS_BOOL { BOOL_STATUS_FALSE = 0 , BOOL_STATUS_TRUE , BOOL_STATUS_UNKNOWN , ///??? }NET_THREE_STATUS_BOOL; ////////////////////////////////////////////////////////////////////// ///@brief ????????? typedef enum __EM_AIRCONDITION_MODE { AIRCONDITION_MODE_UNKNOWN = 0, AIRCONDITION_MODE_AUTO, /// ??? AIRCONDITION_MODE_HOT, /// ???? AIRCONDITION_MODE_COLD, /// ???? AIRCONDITION_MODE_WET, /// ??? AIRCONDITION_MODE_WIND, /// ??? } EM_AIRCONDITION_MODE; ///@brief ???????? typedef enum __EM_AIRCONDITION_WINDMODE { AIRCONDITION_WINDMODE_UNKNOWN = 0, AIRCONDITION_WINDMODE_STOP, /// ?? AIRCONDITION_WINDMODE_AUTO, /// ??? AIRCONDITION_WINDMODE_HIGH, /// ???? AIRCONDITION_WINDMODE_MIDDLE, /// ???? AIRCONDITION_WINDMODE_LOW, /// ???? } EM_AIRCONDITION_WINDMODE; ///@brief ??????????????????? typedef struct tagNET_AIRCONDITION_STATE_INFO { DWORD dwSize; BOOL bIsOnline; /// ??????? BOOL bIsON; /// ????? int nTemperature; /// ???????? EM_AIRCONDITION_MODE emAirconditionMode; /// ????????? EM_AIRCONDITION_WINDMODE emAirconditionWindMode; /// ???????? float fActualTemperature; /// ?????????? }NET_AIRCONDITION_STATE_INFO; ///@brief ????????????(???DH_DEVSTATE_AIRCONDITION_STATE????) typedef struct tagNET_GET_AIRCONDITION_STATE { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? NET_AIRCONDITION_STATE_INFO stuAirConditionState; /// ???????????? }NET_GET_AIRCONDITION_STATE; ///@brief ???????????????? typedef struct tagNET_ALARM_CHANNEL_INFO { DWORD dwSize; int nSlot; /// ?????, 0??????????, 1??????????????????????????, 2??3...??????? int nChannel; /// ???????????????????????????, ??0??? char szName[DH_COMMON_STRING_128]; /// ??????? }NET_ALARM_CHANNEL_INFO; ///@brief ????(?????)???????????????????????????? typedef struct tagNET_ALARM_CHANNELS { DWORD dwSize; int nMaxAlarmChannels; /// ???????? int nRetAlarmChannels; /// ?????????? NET_ALARM_CHANNEL_INFO* pstuChannelInfo; /// ??????,?????????? }NET_ALARM_CHANNELS; ///@brief ?????????????? typedef enum __EM_ALARM_SUBSYSTEM_STATE_TYPE { ALARM_SUBSYSTEM_STATE_UNKNOWN = 0, ALARM_SUBSYSTEM_STATE_ACTIVE, /// ????? ALARM_SUBSYSTEM_STATE_INACTIVE, /// ?????? ALARM_SUBSYSTEM_STATE_UNDISTRIBUTED, /// ?????? }EM_ALARM_SUBSYSTEM_STATE_TYPE; ///@brief ??????????, CLIENT_QueryDevState???????DH_DEVSTATE_ALARMSUBSYSTEM_STATE typedef struct tagNET_ALARM_SUBSYSTEM_STATE { DWORD dwSize; int nMaxAlarmSubSystem; /// ???????????? EM_ALARM_SUBSYSTEM_STATE_TYPE emState[DH_MAX_ALARM_SUBSYSTEM_NUM]; /// ????????? }NET_ALARM_SUBSYSTEM_STATE; ///@brief ???????? typedef enum __EM_ALARM_FAULT_STATE_TYPE { EM_ALARM_FAULT_STATE_ALL = 0, /// ???????? EM_ALARM_FAULT_STATE_CONNECTFAULT, /// ??????? EM_ALARM_FAULT_STATE_BELLFAULT, /// ??????? EM_ALARM_FAULT_STATE_KBFAULT, /// ??????? EM_ALARM_FAULT_STATE_KBTAMPER, /// ??????? EM_ALARM_FAULT_STATE_SENSORSHORTOUT, /// ?????????? EM_ALARM_FAULT_STATE_SENSORTAMPER, /// ?????????? }EM_ALARM_FAULT_STATE_TYPE; ///@brief ??????????, ??????? typedef struct tagNET_IN_ALARM_FAULT_STATE { DWORD dwSize; EM_ALARM_FAULT_STATE_TYPE emType; /// ??????????? }NET_IN_ALARM_FAULT_STATE; ///@brief ??????????, ??????? typedef struct tagNET_OUT_ALARM_FAULT_STATE { DWORD dwSize; int nConnectFaultState; /// 0: ???, 1: ????, 2:???? int nBell; /// ???????????? int anBellState[DH_MAX_BELL_NUM]; /// ???????????? 0: ???, 1: ????, 2:???? int nFaultKeyboard; /// ??????????????? int anFaultKeyboard[DH_MAX_KEYBOARD_NUM]; /// ?????????? 0: ???, 1: ????, 2:???? int nTamperKeyboard; /// ??????????????? int anTamperKeyboard[DH_MAX_KEYBOARD_NUM]; /// ?????????? 0: ???, 1: ????, 2:???? int nShortOutSensor; /// ?????????????????? int anShortOutSensor[DH_MAX_ALARMIN]; /// ????????????? 0: ???, 1: ????, 2:???? int nTamperSensor; /// ????????????????? int anTamperSensor[DH_MAX_ALARMIN]; /// ????????????? 0: ???, 1: ????, 2:???? }NET_OUT_ALARM_FAULT_STATE; ///@brief ??????????, CLIENT_QueryDevState???????DH_DEVSTATE_ALARM_FAULT_STATE typedef struct tagNET_ALARM_FAULT_STATE_INFO { DWORD dwSize; NET_IN_ALARM_FAULT_STATE stuIn; /// ??????? NET_OUT_ALARM_FAULT_STATE stuOut; /// ??????? }NET_ALARM_FAULT_STATE_INFO; ///@brief ?????????? typedef enum __EM_DEFENCE_STATE_TYPE { EM_DEFENCE_STATE_UNKNOWN = 0, EM_DEFENCE_STATE_BYPASS, /// ???? EM_DEFENCE_STATE_OPEN, /// ??, ?????????????????? EM_DEFENCE_STATE_CLOSE, /// ??? EM_DEFENCE_STATE_ALARMING, /// ????, ?????????????????? EM_DEFENCE_STATE_ISOLATED, ///???? EM_DEFENCE_STATE_SHORT, ///???? EM_DEFENCE_STATE_BREAK, ///???? EM_DEFENCE_STATE_INTRUDED, ///???? }EM_DEFENCE_STATE_TYPE; ///@brief ?????????????????? typedef struct tagNET_IN_DEFENCE_STATE_INFO { DWORD dwSize; int nDefenceNum; /// ????????????, -1?????????????? int anDefence[DH_MAX_ALARMIN]; /// ???????????? }NET_IN_DEFENCE_STATE_INFO; ///@brief ?????????????????? typedef struct tagNET_OUT_DEFENCE_STATE_INFO { DWORD dwSize; int nDefenceNum; /// ???????????? EM_DEFENCE_STATE_TYPE anDefenceState[DH_MAX_ALARMIN]; /// ????????? }NET_OUT_DEFENCE_STATE_INFO; ///@brief ????????????????????? typedef struct tagNET_IN_GET_DEFENCE_STATE_INFO { int nDefenceNum; /// ????????????, -1?????????????? int anDefence[512]; /// ???????????? BYTE byReserved[512]; ///??????? }NET_IN_GET_DEFENCE_STATE_INFO; ///@brief ????????????????????? typedef struct tagNET_OUT_GET_DEFENCE_STATE_INFO { int nDefenceNum; /// ???????????? EM_DEFENCE_STATE_TYPE anDefenceState[512]; /// ????????? BYTE byReserved[512]; ///??????? }NET_OUT_GET_DEFENCE_STATE_INFO; ///@brief ?????????, CLIENT_QueryDevState???????DH_DEVSTATE_DEFENCE_STATE typedef struct tagNET_DEFENCE_STATE_INFO { DWORD dwSize; /// ??????? NET_IN_DEFENCE_STATE_INFO stuIn; /// ??????? NET_OUT_DEFENCE_STATE_INFO stuOut; /// ??????? }NET_DEFENCE_STATE_INFO; ///@brief ?????????, CLIENT_QueryDevState???????DH_DEVSTATE_DEFENCE_STATE typedef struct tagNET_GET_DEFENCE_STATE_INFO { DWORD dwSize; NET_IN_GET_DEFENCE_STATE_INFO stuIn; /// ??????? NET_OUT_GET_DEFENCE_STATE_INFO stuOut; /// ??????? }NET_GET_DEFENCE_STATE_INFO; ///@brief ?????????????? typedef enum tagEM_NET_VTP_CALL_TYPE { EM_NET_VTP_CALL_TYPE_SIP = 0, /// SIP???? EM_NET_VTP_CALL_TYPE_GSM, /// GSM???? EM_NET_VTP_CALL_TYPE_PRIVATE, /// ?????????? }EM_NET_VTP_CALL_TYPE; ///@brief ???????????????? typedef enum tagEM_NET_VTP_CALL_STATE_TYPE { EM_NET_VTP_CALL_STATE_UNKNOWN = 0, EM_NET_VTP_CALL_STATE_IDLE, /// ????? EM_NET_VTP_CALL_STATE_CALLING, /// ??????????(????????) EM_NET_VTP_CALL_STATE_CALLED, /// ?????????? EM_NET_VTP_CALL_STATE_RINGING, /// ??????????(??????, ?????????) EM_NET_VTP_CALL_STATE_CONNECTING, /// ??????? EM_NET_VTP_CALL_STATE_CONNECTING2, /// ?????2??(??????????????????) EM_NET_VTP_CALL_STATE_DISCONNECT, /// ???????? }EM_NET_VTP_CALL_STATE_TYPE; ///@brief ??????????????? (??? DH_DEVSTATE_VTP_CALLSTATE) typedef struct tagNET_GET_VTP_CALLSTATE { DWORD dwSize; EM_NET_VTP_CALL_TYPE emCallType; /// ??????????????, ??????? char szCallID[DH_COMMON_STRING_128]; /// ???????????????, ??????? const char* szTargetID; /// ??????????ID, ?NULL????????, ??????? EM_NET_VTP_CALL_STATE_TYPE emCallState; /// ?????? }NET_GET_VTP_CALLSTATE; ///@brief MACRO_GROUP_REMOT_DEVSTATE_5_BEGIN /// ???????,???CLIENT_QueryRemotDevState??? #define DH_DEVSTATE_ALARM_REMOTE 0x1000 /// ???????????????(??? ALARM_REMOTE_ALARM_INFO) #define DH_DEVSTATE_ALARM_FRONTDISCONNECT 0x1001 /// ??????IPC????????(???????ALARM_FRONTDISCONNET_INFO) #define DH_DEVSTATE_GET_TRACKMOVESTATUS 0x1002 /// ?????????(??? PTZ_GET_TRACKMOVESTATUS_INFO) ///@brief MACRO_GROUP_REMOT_DEVSTATE_5_END ///@brief MACRO_GROUP_CONFIG_6_BEGIN /// ????????,???CLIENT_GetDevConfig??CLIENT_SetDevConfig??? #define DH_DEV_DEVICECFG 0x0001 /// ??????????? #define DH_DEV_NETCFG 0x0002 /// ???????? #define DH_DEV_CHANNELCFG 0x0003 /// ?????????? #define DH_DEV_PREVIEWCFG 0x0004 /// ??????????? #define DH_DEV_RECORDCFG 0x0005 /// ??????? #define DH_DEV_COMMCFG 0x0006 /// ???????????? #define DH_DEV_ALARMCFG 0x0007 /// ???????????? #define DH_DEV_TIMECFG 0x0008 /// DVR??????? #define DH_DEV_TALKCFG 0x0009 /// ??????????? #define DH_DEV_AUTOMTCFG 0x000A /// ?????????? #define DH_DEV_VEDIO_MARTIX 0x000B /// ?????????????????? #define DH_DEV_MULTI_DDNS 0x000C /// ??ddns?????????? #define DH_DEV_SNAP_CFG 0x000D /// ????????? #define DH_DEV_WEB_URL_CFG 0x000E /// HTTP???????? #define DH_DEV_FTP_PROTO_CFG 0x000F /// FTP??????? #define DH_DEV_INTERVIDEO_CFG 0x0010 /// ??????????,???channel??????????????, /// channel=4?? ?????????????????channel=10???????????channel=11??????U?????channel=51????????????? #define DH_DEV_VIDEO_COVER 0x0011 /// ??????????? #define DH_DEV_TRANS_STRATEGY 0x0012 /// ???????????,????????\?????????? #define DH_DEV_DOWNLOAD_STRATEGY 0x0013 /// ??????????????,????????\??????? #define DH_DEV_WATERMAKE_CFG 0x0014 /// ????????? #define DH_DEV_WLAN_CFG 0x0015 /// ???????????? #define DH_DEV_WLAN_DEVICE_CFG 0x0016 /// ??????????????? #define DH_DEV_REGISTER_CFG 0x0017 /// ?????????????? #define DH_DEV_CAMERA_CFG 0x0018 /// ????????????? #define DH_DEV_INFRARED_CFG 0x0019 /// ?????????? #define DH_DEV_SNIFFER_CFG 0x001A /// Sniffer??????? #define DH_DEV_MAIL_CFG 0x001B /// ??????? #define DH_DEV_DNS_CFG 0x001C /// DNS?????????? #define DH_DEV_NTP_CFG 0x001D /// NTP???? #define DH_DEV_AUDIO_DETECT_CFG 0x001E /// ?????????? #define DH_DEV_STORAGE_STATION_CFG 0x001F /// ??????????? #define DH_DEV_PTZ_OPT_CFG 0x0020 /// ???????????(??????,?????CLIENT_GetPtzOptAttr??????????????) #define DH_DEV_DST_CFG 0x0021 /// ????????? #define DH_DEV_ALARM_CENTER_CFG 0x0022 /// ???????????? #define DH_DEV_VIDEO_OSD_CFG 0x0023 /// ???OSD???????? #define DH_DEV_CDMAGPRS_CFG 0x0024 /// CDMA\GPRS???????? #define DH_DEV_IPFILTER_CFG 0x0025 /// IP???????? #define DH_DEV_TALK_ENCODE_CFG 0x0026 /// ??????????????? #define DH_DEV_RECORD_PACKET_CFG 0x0027 /// ????????????? #define DH_DEV_MMS_CFG 0x0028 /// ????MMS???? #define DH_DEV_SMSACTIVATION_CFG 0x0029 /// ??????????????????? #define DH_DEV_DIALINACTIVATION_CFG 0x002A /// ??????????????????? #define DH_DEV_SNIFFER_CFG_EX 0x0030 /// ??????????? #define DH_DEV_DOWNLOAD_RATE_CFG 0x0031 /// ??????????? #define DH_DEV_PANORAMA_SWITCH_CFG 0x0032 /// ??????????????? #define DH_DEV_LOST_FOCUS_CFG 0x0033 /// ???????????? #define DH_DEV_ALARM_DECODE_CFG 0x0034 /// ?????????????? #define DH_DEV_VIDEOOUT_CFG 0x0035 /// ?????????????? #define DH_DEV_POINT_CFG 0x0036 /// ??????????? #define DH_DEV_IP_COLLISION_CFG 0x0037 /// Ip???????????? #define DH_DEV_OSD_ENABLE_CFG 0x0038 /// OSD??????????? #define DH_DEV_LOCALALARM_CFG 0x0039 /// ???????????(????DH_ALARMIN_CFG_EX) #define DH_DEV_NETALARM_CFG 0x003A /// ????d??????(????DH_ALARMIN_CFG_EX) #define DH_DEV_MOTIONALARM_CFG 0x003B /// ??????????(????DH_MOTION_DETECT_CFG_EX) #define DH_DEV_VIDEOLOSTALARM_CFG 0x003C /// ??????????????(????DH_VIDEO_LOST_CFG_EX) #define DH_DEV_BLINDALARM_CFG 0x003D /// ??????????????(????DH_BLIND_CFG_EX) #define DH_DEV_DISKALARM_CFG 0x003E /// ??????????(????DH_DISK_ALARM_CFG_EX) #define DH_DEV_NETBROKENALARM_CFG 0x003F /// ???????????????(????DH_NETBROKEN_ALARM_CFG_EX) #define DH_DEV_ENCODER_CFG 0x0040 /// ?????????????????????????DVR???,????DEV_ENCODER_CFG?? #define DH_DEV_TV_ADJUST_CFG 0x0041 /// TV?????????channel????TV??(0???),???????? #define DH_DEV_ABOUT_VEHICLE_CFG 0x0042 /// ??????????? #define DH_DEV_ATM_OVERLAY_ABILITY 0x0043 /// ???atm?????????????? #define DH_DEV_ATM_OVERLAY_CFG 0x0044 /// atm????????,??atm???? #define DH_DEV_DECODER_TOUR_CFG 0x0045 /// ????????????????? #define DH_DEV_SIP_CFG 0x0046 /// SIP???? #define DH_DEV_VICHILE_WIFI_AP_CFG 0x0047 /// wifi ap???? #define DH_DEV_STATICALARM_CFG 0x0048 /// ??????????? #define DH_DEV_DECODE_POLICY_CFG 0x0049 /// ???????????????(????DHDEV_DECODEPOLICY_CFG,channel????????0???) #define DH_DEV_MACHINE_CFG 0x004A /// ????????????(????DHDEV_MACHINE_CFG) #define DH_DEV_MAC_COLLISION_CFG 0x004B /// MAC??????????(???? ALARM_MAC_COLLISION_CFG) #define DH_DEV_RTSP_CFG 0x004C /// RTSP????(???????DHDEV_RTSP_CFG) #define DH_DEV_232_COM_CARD_CFG 0x004E /// 232?????????????????(???????COM_CARD_SIGNAL_LINK_CFG) #define DH_DEV_485_COM_CARD_CFG 0x004F /// 485?????????????????(???????COM_CARD_SIGNAL_LINK_CFG) #define DH_DEV_FTP_PROTO_CFG_EX 0x0050 /// FTP??????????(???????DHDEV_FTP_PROTO_CFG_EX) #define DH_DEV_SYSLOG_REMOTE_SERVER 0x0051 /// SYSLOG ????????????(???????DHDEV_SYSLOG_REMOTE_SERVER) #define DH_DEV_COMMCFG_EX 0x0052 /// ???????????????(???????DHDEV_COMM_CFG_EX) #define DH_DEV_NETCARD_CFG 0x0053 /// ???????????(???????DHDEV_NETCARD_CFG) #define DH_DEV_BACKUP_VIDEO_FORMAT 0x0054 /// ?????????????(???????DHDEV_BACKUP_VIDEO_FORMAT) #define DH_DEV_STREAM_ENCRYPT_CFG 0x0055 /// ????????????(???????DHEDV_STREAM_ENCRYPT) #define DH_DEV_IPFILTER_CFG_EX 0x0056 /// IP???????????(???????DHDEV_IPIFILTER_CFG_EX) #define DH_DEV_CUSTOM_CFG 0x0057 /// ????????????(???????DHDEV_CUSTOM_CFG) #define DH_DEV_WLAN_DEVICE_CFG_EX 0x0058 /// ??????????????????(???????DHDEV_WLAN_DEVICE_LIST_EX) #define DH_DEV_ACC_POWEROFF_CFG 0x0059 /// ACC???????????(???????DHDEV_ACC_POWEROFF_CFG) #define DH_DEV_EXPLOSION_PROOF_CFG 0x005a /// ?????????????????(???????DHDEV_EXPLOSION_PROOF_CFG) #define DH_DEV_NETCFG_EX 0x005b /// ???????????(???????DHDEV_NET_CFG_EX) #define DH_DEV_LIGHTCONTROL_CFG 0x005c /// ??????????(???????DHDEV_LIGHTCONTROL_CFG) #define DH_DEV_3GFLOW_CFG 0x005d /// 3G???????????(???????DHDEV_3GFLOW_INFO_CFG) #define DH_DEV_IPV6_CFG 0x005e /// IPv6????(???????DHDEV_IPV6_CFG) #define DH_DEV_SNMP_CFG 0x005f /// Snmp????(???????DHDEV_NET_SNMP_CFG), ?????????????????? #define DH_DEV_SNAP_CONTROL_CFG 0x0060 /// ??????????(???????DHDEV_SNAP_CONTROL_CFG) #define DH_DEV_GPS_MODE_CFG 0x0061 /// GPS??????????(???????DHDEV_GPS_MODE_CFG) #define DH_DEV_SNAP_UPLOAD_CFG 0x0062 /// ????????????(??????? DHDEV_SNAP_UPLOAD_CFG) #define DH_DEV_SPEED_LIMIT_CFG 0x0063 /// ???????????(???????DHDEV_SPEED_LIMIT_CFG) #define DH_DEV_ISCSI_CFG 0x0064 /// iSCSI????(???????DHDEV_ISCSI_CFG), ?????????????????? #define DH_DEV_WIRELESS_ROUTING_CFG 0x0065 /// ????????????(???????DHDEV_WIRELESS_ROUTING_CFG) #define DH_DEV_ENCLOSURE_CFG 0x0066 /// ????????????(???????DHDEV_ENCLOSURE_CFG) #define DH_DEV_ENCLOSURE_VERSION_CFG 0x0067 /// ?????????????????(???????DHDEV_ENCLOSURE_VERSION_CFG) #define DH_DEV_RIAD_EVENT_CFG 0x0068 /// Raid???????(???????DHDEV_RAID_EVENT_CFG) #define DH_DEV_FIRE_ALARM_CFG 0x0069 /// ?????????(???????DHDEV_FIRE_ALARM_CFG) #define DH_DEV_LOCALALARM_NAME_CFG 0x006a /// ???????????????(???Name1&&name2&&name3...????????) #define DH_DEV_URGENCY_RECORD_CFG 0x0070 /// ???????????(???????DHDEV_URGENCY_RECORD_CFG) #define DH_DEV_ELEVATOR_ATTRI_CFG 0x0071 /// ????????????????(???????DHDEV_ELEVATOR_ATTRI_CFG) #define DH_DEV_ATM_OVERLAY_CFG_EX 0x0072 /// atm????????,??atm????,??????32????????(???????DHDEV_ATM_OVERLAY_CONFIG_EX) #define DH_DEV_MACFILTER_CFG 0x0073 /// MAC????????(???????DHDEV_MACFILTER_CFG) #define DH_DEV_MACIPFILTER_CFG 0x0074 /// MAC,IP????(???ip,mac?????????)????(???????DHDEV_MACIPFILTER_CFG) #define DH_DEV_STREAM_ENCRYPT_TIME_CFG 0x0075 /// ????????(??????)????(???????DHEDV_STREAM_ENCRYPT) #define DH_DEV_LIMIT_BIT_RATE_CFG 0x0076 /// ??????????(??????? DHDEV_LIMIT_BIT_RATE) #define DH_DEV_SNAP_CFG_EX 0x0077 /// ????????????(??????? DHDEV_SNAP_CFG_EX) #define DH_DEV_DECODER_URL_CFG 0x0078 /// ??????url????(???????DHDEV_DECODER_URL_CFG) #define DH_DEV_TOUR_ENABLE_CFG 0x0079 /// ??????????(???????DHDEV_TOUR_ENABLE_CFG) #define DH_DEV_VICHILE_WIFI_AP_CFG_EX 0x007a /// wifi ap???????(???????DHDEV_VEHICLE_WIFI_AP_CFG_EX) #define DH_DEV_ENCODER_CFG_EX 0x007b /// ???????????????????????,(??????? DEV_ENCODER_CFG_EX) /// ????u?????????????????????? #define DH_DEV_ITC_HWS000_RA_CFG 0x007c /// ?????????????????(??????int?) #define DH_DEV_ITC_HWS000_HS_CFG 0x007d /// ???????????????????(??????int?) #define DH_DEV_ITC_HWS000_LS_CFG 0x007e /// ???????????????????(??????int?) #define DH_DEV_ITC_HWS000_FL_CFG 0x007f /// ?????????????????????(??????int?) #define DH_DEV_ITC_HWS000_OC_CFG 0x0080 /// ????????????????????(??????int?) #define DH_DEV_ITC_HWS000_LC_CFG 0x0081 /// ????????????????????(??????int?) #define DH_DEV_ITC_HWS000_AC_CFG 0x0082 /// ?????????????????????(??????int?) #define DH_DEV_ITC_HWS000_FC_CFG 0x0083 /// ????????????????????????(??????int?) #define DH_DEV_ITC_HWS000_ALL_CFG 0x0084 /// ??????????????????????????(???DEV_ITC_HWS000_ALL_CFG) #define DH_DEV_ITC_HWS000_CLEAR_COUNT_CFG 0x0085 /// ????????????4?????????(OC,LC,AC,FC ??????int?) #define DH_DEV_IPV4_CFG 0x0086 /// IPV4????(??????? DEV_IPV4_CFG) #define DH_DEV_ENCODER_CFG_EX2 0x0087 /// ???????????????????????,(??????? DEV_ENCODER_CFG_EX2) #define DH_DEV_WLAN_DEVICE_CFG_EX2 0x0088 /// ??????????????????(???????DHDEV_WLAN_DEVICE_LIST_EX2) ///@brief MACRO_GROUP_CONFIG_6_END #define DH_DEV_USER_END_CFG 1000 #define DH_DEV_ITC_HWS000_CFG_ITEM_NUM 8 /// ?????????????????? ///@brief ?????????????????? typedef struct tagDEV_ITC_HWS000_ALL_CFG { DWORD dwSize; int nValue[DH_DEV_ITC_HWS000_CFG_ITEM_NUM]; /// ???????? /// ??????0??? ????????????????????????????????????????????????????????????????????????????????????? }DEV_ITC_HWS000_ALL_CFG; ///@brief MACRO_GROUP_ALARM_EX_1_BEGIN /// ????????,???CLIENT_StartListen??? #define DH_COMM_ALARM 0x1100 /// ???????(??????????,??????,??????) #define DH_SHELTER_ALARM 0x1101 /// ?????????? #define DH_DISK_FULL_ALARM 0x1102 /// ????????? #define DH_DISK_ERROR_ALARM 0x1103 /// ????????? #define DH_SOUND_DETECT_ALARM 0x1104 /// ???????? #define DH_ALARM_DECODER_ALARM 0x1105 /// ?????????????? /// ???????????,???CLIENT_StartListenEx??? #define DH_ALARM_ALARM_EX 0x2101 /// ?????????????????????????????????????????????????????????????????1?????????0???????? #define DH_MOTION_ALARM_EX 0x2102 /// ?????????????????????????????????????????????????????????????????????1?????????0???????? #define DH_VIDEOLOST_ALARM_EX 0x2103 /// ??????????????????????????????????????????????????????????????????????????1?????????0???????? #define DH_SHELTER_ALARM_EX 0x2104 /// ???????????????????????????????????????????????????????????????(????)????????1?????????0???????? #define DH_SOUND_DETECT_ALARM_EX 0x2105 /// ???????????????16?????????????????????????????????????1?????????0???????? #define DH_DISKFULL_ALARM_EX 0x2106 /// ????????????????1??????1??????????????0???????? #define DH_DISKERROR_ALARM_EX 0x2107 /// ???????????????32???????????????????????????????1?????????0???????? #define DH_ENCODER_ALARM_EX 0x210A /// ?????????????????16??????????????????????????????1?????????0???????? #define DH_URGENCY_ALARM_EX 0x210B /// ???????????????16??????????????????????????????1?????????0???????? #define DH_WIRELESS_ALARM_EX 0x210C /// ??????????????16??????????????????????????????1?????????0???????? #define DH_NEW_SOUND_DETECT_ALARM_EX 0x210D /// ??????????,?????????????DH_NEW_SOUND_ALARM_STATE?? #define DH_ALARM_DECODER_ALARM_EX 0x210E /// ????????????????????????????? ALARM_DECODER_ALARM #define DH_DECODER_DECODE_ABILITY 0x210F /// ??????????????????????????????????0???????????? 1??????????????????? #define DH_FDDI_DECODER_ABILITY 0x2110 /// ?????????????????????????????? ALARM_FDDI_ALARM #define DH_PANORAMA_SWITCH_ALARM_EX 0x2111 /// ???????????????????16??????????????????????????????1?????????0???????? #define DH_LOSTFOCUS_ALARM_EX 0x2112 /// ???????????????16??????????????????????????????1?????????0???????? #define DH_OEMSTATE_EX 0x2113 /// oem???????????? 1 BYTE?? #define DH_DSP_ALARM_EX 0x2114 /// DSP??????????????????? DSP_ALARM #define DH_ATMPOS_BROKEN_EX 0x2115 /// atm??pos?????????, ????? 1 BYTE??0???????? 1?????????? #define DH_RECORD_CHANGED_EX 0x2116 /// ?????????????????????? ALARM_RECORDING_CHANGED ???? #define DH_CONFIG_CHANGED_EX 0x2117 /// ????????????????????? ?? #define DH_DEVICE_REBOOT_EX 0x2118 /// ????????????????? ?? #define DH_WINGDING_ALARM_EX 0x2119 /// ???/?????????????(??????? ALARM_WINGDING_INFO) #define DH_TRAF_CONGESTION_ALARM_EX 0x211A /// ???????????(???????????????????)(??????? ALARM_TRAF_CONGESTION_INFO) #define DH_TRAF_EXCEPTION_ALARM_EX 0x211B /// ?????????(???????????0????????)(??????? ALARM_TRAF_EXCEPTION_INFO) #define DH_EQUIPMENT_FILL_ALARM_EX 0x211C /// ??????????????(??????? ALARM_EQUIPMENT_FILL_INFO) #define DH_ALARM_ARM_DISARM_STATE 0x211D /// ????????????(??????? ALARM_EQUIPMENT_FILL_INFO) #define DH_ALARM_ACC_POWEROFF 0x211E /// ACC???d????????? DWORD 0??ACC??? 1??ACC??? #define DH_ALARM_3GFLOW_EXCEED 0x211F /// 3G???????????????(??????? DHDEV_3GFLOW_EXCEED_STATE_INFO) #define DH_ALARM_SPEED_LIMIT 0x2120 /// ???????(??????? ALARM_SPEED_LIMIT) #define DH_ALARM_VEHICLE_INFO_UPLOAD 0x2121 /// ??????????????? (??????? ALARM_VEHICLE_INFO_UPLOAD) #define DH_STATIC_ALARM_EX 0x2122 /// ?????????????????????????????????????????????????????????????????????1?????????0???????? #define DH_PTZ_LOCATION_EX 0x2123 /// ??????????(??????? DH_PTZ_LOCATION_INFO) #define DH_ALARM_CARD_RECORD_UPLOAD 0x2124 /// ?????????????(??????? ALARM_CARD_RECORD_INFO_UPLOAD) #define DH_ALARM_ATM_INFO_UPLOAD 0x2125 /// ATM??????????(??????? ALARM_ATM_INFO_UPLOAD) #define DH_ALARM_ENCLOSURE 0x2126 /// ????????????(??????? ALARM_ENCLOSURE_INFO) #define DH_ALARM_SIP_STATE 0x2127 /// SIP??????(??????? ALARM_SIP_STATE) #define DH_ALARM_RAID_STATE 0x2128 /// RAID??????(??????? ALARM_RAID_INFO) #define DH_ALARM_CROSSING_SPEED_LIMIT 0x2129 /// ???????????(??????? ALARM_SPEED_LIMIT) #define DH_ALARM_OVER_LOADING 0x212A /// ???????(???????ALARM_OVER_LOADING) #define DH_ALARM_HARD_BRAKING 0x212B /// ?????????(?????????ALARM_HARD_BRAKING) #define DH_ALARM_SMOKE_SENSOR 0x212C /// ???????(???????ALARM_SMOKE_SENSOR) #define DH_ALARM_TRAFFIC_LIGHT_FAULT 0x212D /// ???????????(???????ALARM_TRAFFIC_LIGHT_FAULT) #define DH_ALARM_TRAFFIC_FLUX_STAT 0x212E /// ?????????????(???????ALARM_TRAFFIC_FLUX_LANE_INFO) #define DH_ALARM_CAMERA_MOVE 0x212F /// ????????????????(???????ALARM_CAMERA_MOVE_INFO) #define DH_ALARM_DETAILEDMOTION 0x2130 /// ???????????????(???????ALARM_DETAILEDMOTION_CHNL_INFO) #define DH_ALARM_STORAGE_FAILURE 0x2131 /// ?????????(??????? ALARM_STORAGE_FAILURE ????) #define DH_ALARM_FRONTDISCONNECT 0x2132 /// ???IPC????????(???????ALARM_FRONTDISCONNET_INFO) #define DH_ALARM_ALARM_EX_REMOTE 0x2133 /// ?????????(??????? ALARM_REMOTE_ALARM_INFO) #define DH_ALARM_BATTERYLOWPOWER 0x2134 /// ???????????(???????ALARM_BATTERYLOWPOWER_INFO) #define DH_ALARM_TEMPERATURE 0x2135 /// ?????????(??????? ALARM_TEMPERATURE_INFO) #define DH_ALARM_TIREDDRIVE 0x2136 /// ?????????(??????? ALARM_TIREDDRIVE_INFO) #define DH_ALARM_LOST_RECORD 0x2137 /// ????????????(???????ALARM_LOST_RECORD) #define DH_ALARM_HIGH_CPU 0x2138 /// CPU???????????????(??????? ALARM_HIGH_CPU) #define DH_ALARM_LOST_NETPACKET 0x2139 /// ?????????????????????(??????? ALARM_LOST_NETPACKET) #define DH_ALARM_HIGH_MEMORY 0x213A /// ??????????????????(???????ALARM_HIGH_MEMORY) #define DH_LONG_TIME_NO_OPERATION 0x213B /// WEB???????????????????????????? #define DH_BLACKLIST_SNAP 0x213C /// ?????????????????(???????DH_BLACKLIST_SNAP_INFO) #define DH_ALARM_DISK 0x213E /// ??????(??? ALARM_DISK_INFO ????) #define DH_ALARM_FILE_SYSTEM 0x213F /// ?????????(???ALARM_FILE_SYSTEM_INFO????) #define DH_ALARM_IVS 0x2140 /// ??????????(???????ALARM_IVS_INFO) #define DH_ALARM_GOODS_WEIGHT_UPLOAD 0x2141 /// ??????????(???ALARM_GOODS_WEIGHT_UPLOAD_INFO) #define DH_ALARM_GOODS_WEIGHT 0x2142 /// ???????????(???ALARM_GOODS_WEIGHT_INFO) #define DH_GPS_STATUS 0x2143 /// GPS???????(??? NET_GPS_STATUS_INFO) #define DH_ALARM_DISKBURNED_FULL 0x2144 /// ???????????(??? ALARM_DISKBURNED_FULL_INFO) #define DH_ALARM_STORAGE_LOW_SPACE 0x2145 /// ??????????????(??? ALARM_STORAGE_LOW_SPACE_INFO) #define DH_ALARM_DISK_FLUX 0x2160 /// ????????????(??? ALARM_DISK_FLUX) #define DH_ALARM_NET_FLUX 0x2161 /// ?????????????(??? ALARM_NET_FLUX) #define DH_ALARM_FAN_SPEED 0x2162 /// ????????????(??? ALARM_FAN_SPEED) #define DH_ALARM_STORAGE_FAILURE_EX 0x2163 /// ????????(???????ALARM_STORAGE_FAILURE_EX) #define DH_ALARM_RECORD_FAILED 0x2164 /// ?????????(???????ALARM_RECORD_FAILED_INFO) #define DH_ALARM_STORAGE_BREAK_DOWN 0x2165 /// ??????????(??????? ALARM_STORAGE_BREAK_DOWN_INFO) #define DH_ALARM_VIDEO_ININVALID 0x2166 /// ?????????????????????????????????????????,?????????????????ALARM_VIDEO_ININVALID_INFO #define DH_ALARM_VEHICLE_TURNOVER 0x2167 /// ?????????????(???????ALARM_VEHICEL_TURNOVER_EVENT_INFO) #define DH_ALARM_VEHICLE_COLLISION 0x2168 /// ??????????????(???????ALARM_VEHICEL_COLLISION_EVENT_INFO) #define DH_ALARM_VEHICLE_CONFIRM 0x2169 /// ?????????????(???????ALARM_VEHICEL_CONFIRM_INFO) #define DH_ALARM_VEHICLE_LARGE_ANGLE 0x2170 /// ??????????????????(???????ALARM_VEHICEL_LARGE_ANGLE) #define DH_ALARM_TALKING_INVITE 0x2171 /// ??????????????????(???????ALARM_TALKING_INVITE_INFO) #define DH_ALARM_ALARM_EX2 0x2175 /// ??????????(??????? ALARM_ALARM_INFO_EX2,??DH_ALARM_ALARM_EX????) #define DH_ALARM_VIDEO_TIMING 0x2176 /// ????????????(???????ALARM_VIDEO_TIMING) #define DH_ALARM_COMM_PORT 0x2177 /// ???????(???????ALARM_COMM_PORT_EVENT_INFO) #define DH_ALARM_AUDIO_ANOMALY 0x2178 /// ????????(???????ALARM_AUDIO_ANOMALY) #define DH_ALARM_AUDIO_MUTATION 0x2179 /// ?????????(???????ALARM_AUDIO_MUTATION) #define DH_EVENT_TYREINFO 0x2180 /// ????????????(???????EVENT_TYRE_INFO) #define DH_ALARM_POWER_ABNORMAL 0x2181 /// ????????????(???????ALARM_POWER_ABNORMAL_INFO) #define DH_EVENT_REGISTER_OFF 0x2182 /// ??????????????????(??????? EVENT_REGISTER_OFF_INFO) #define DH_ALARM_NO_DISK 0x2183 /// ????????(???????ALARM_NO_DISK_INFO) #define DH_ALARM_FALLING 0x2184 /// ???????????(???????ALARM_FALLING_INFO) #define DH_ALARM_PROTECTIVE_CAPSULE 0x2185 /// ?????????(???????ALARM_PROTECTIVE_CAPSULE_INFO) #define DH_ALARM_NO_RESPONSE 0x2186 /// ??????????(???????ALARM_NO_RESPONSE_INFO) #define DH_ALARM_CONFIG_ENABLE_CHANGE 0x2187 /// ???????????????(??????? ALARM_CONFIG_ENABLE_CHANGE_INFO) #define DH_EVENT_CROSSLINE_DETECTION 0x2188 /// ???????????( ??????? ALARM_EVENT_CROSSLINE_INFO ) #define DH_EVENT_CROSSREGION_DETECTION 0x2189 /// ???????????( ??????? ALARM_EVENT_CROSSREGION_INFO ) #define DH_EVENT_LEFT_DETECTION 0x218a /// ??????????( ??????? ALARM_EVENT_LEFT_INFO ) #define DH_EVENT_FACE_DETECTION 0x218b /// ????????( ??????? ALARM_EVENT_FACE_INFO ) #define DH_ALARM_IPC 0x218c /// IPC????,IPC???DVR??NVR???????????(??????? ALARM_IPC_INFO) #define DH_EVENT_TAKENAWAYDETECTION 0x218d /// ??????????(??????? ALARM_TAKENAWAY_DETECTION_INFO) #define DH_EVENT_VIDEOABNORMALDETECTION 0x218e /// ????????(??????? ALARM_VIDEOABNORMAL_DETECTION_INFO) #define DH_EVENT_MOTIONDETECT 0x218f /// ????????????(??????? ALARM_MOTIONDETECT_INFO) #define DH_ALARM_PIR 0x2190 /// PIR????(???BYTE*, pBuf????dwBufLen) #define DH_ALARM_STORAGE_HOT_PLUG 0x2191 /// ??????????(??????? ALARM_STORAGE_HOT_PLUG_INFO) #define DH_ALARM_FLOW_RATE 0x2192 /// ?????????????(??????? ALARM_FLOW_RATE_INFO) #define DH_ALARM_MOVEDETECTION 0x2193 /// ??????(???ALARM_MOVE_DETECTION_INFO) #define DH_ALARM_WANDERDETECTION 0x2194 /// ??????(???ALARM_WANDERDETECTION_INFO) #define DH_ALARM_CROSSFENCEDETECTION 0x2195 /// ??????????(???ALARM_CROSSFENCEDETECTION_INFO) #define DH_ALARM_PARKINGDETECTION 0x2196 /// ?????????(???ALARM_PARKINGDETECTION_INFO) #define DH_ALARM_RIOTERDETECTION 0x2197 /// ?????????(???ALARM_RIOTERDETECTION_INFO) #define DH_ALARM_FRONTDISCONNECT_V3 0x2198 /// ???IPC??????????????????(???????ALARM_FRONTDISCONNET_INFO) #define DH_ALARM_KEYPAD_TAMPER 0x2199 /// ??????????(??????? ALARM_KEYPAD_TAMPER_INFO) #define DH_ALARM_KEYPAD_FAILURE 0x219A /// ??????????(??????? ALARM_KEYPAD_FAILURE_INFO) #define DH_ALARM_NOT_CLEAR_CAR 0x219B /// ????t??????(??????? ALARM_NOT_CLEAR_CAR_INFO) #define DH_ALARM_WIRELESS_DEVBATTERY_LOSS 0x219C /// ?????????????(??????? ALARM_WIRELESS_DEVBATTERY_LOSS_INFO) #define DH_ALARM_SIREN_TAMPER 0x219D /// ??????????(??????? ALARM_SIREN_TAMPER_INFO) #define DH_ALARM_KEYPAD_LOCK 0x219E /// ???????????(??????? ALARM_KEYPAD_LOCK_INFO) #define DH_ALARM_ALARMNET 0x219F /// ????d?????(??????? ALARM_ALARMNET_INFO) #define DH_ALARM_PIC_UPLOAD_ALARM 0x21A0 /// ????????????????(??????? NET_ALARM_PIC_UPLOAD_ALARM_INFO) #define DH_ALARM_CHANG_BAI_VEHICLE_PROHIBITED 0x21A1 /// ?????????????????????(??????? NET_ALARM_CHANG_BAI_VEHICLE_PROHIBITED_INFO) #define DH_ALARM_USER_PASS_CONFIRM 0x21A2 /// ???????????????????(??????? NET_ALARM_USER_PASS_CONFIRM_INFO) #define DH_ALARM_INSUFFICIENT_QUOTA_SPACE 0x21A4 /// ??????????????(??????? NET_ALARM_INSUFFICIENT_QUOTA_SPACE_INFO) #define DH_ALARM_REID_CLUSTER_STATE 0x21A5 /// ????????(??????? NET_ALARM_REID_CLUSTER_STATE_INFO) #define DH_ALARM_SAMPO_USER_INFORMATION 0x21A6 /// ?????????????????????(??????? NET_ALARM_SAMPO_USER_INFORMATION_INFO) #define DH_ALARM_SAMPO_SERVICE_ALARM 0x21A7 /// ????????????????????????(??????? NET_ALARM_SAMPO_SERVICE_ALARM_INFO) #define DH_ALARM_SIA_EVENT 0x21A8 /// ???SIA?????????????(??????? NET_ALARM_SIA_EVENT_INFO) #define DH_ALARM_AP_CONNECT 0x21A9 /// ??????????????(??????? NET_ALARM_AP_CONNECT_INFO) #define DH_ALARM_DGS_ERROR_REPORT 0x21AA /// ??????????????(??????? NET_ALARM_DGS_ERROR_REPORT) #define DH_ALARM_RESIDENT_ALARM 0x21AB /// ???????(??????? NET_ALARM_RESIDENT_ALARM) #define DH_ALARM_ELEVATOR_WORK 0x21AC /// ??????????????????(??????? NET_ALARM_ELEVATOR_WORK_INFO) #define DH_ALARM_DISKMIX_MODE_ALARM 0x21AD /// ?????????????(??????? NET_ALARM_DISKMIX_MODE_ALARM_INFO) /// ??????? 0x3000 ~ 0x300c ??????? #define DH_CONFIG_RESULT_EVENT_EX 0x3000 /// ????????????????????DEV_SET_RESULT #define DH_REBOOT_EVENT_EX 0x3001 /// ?????????????????????????????,??????????????????????? #define DH_AUTO_TALK_START_EX 0x3002 /// ??????????????????? #define DH_AUTO_TALK_STOP_EX 0x3003 /// ???????????????? #define DH_CONFIG_CHANGE_EX 0x3004 /// ?????????????? #define DH_IPSEARCH_EVENT_EX 0x3005 /// IP???????, ????????????????:DevName::Manufacturer::MAC::IP::Port::DevType::POEPort::SubMask::GateWay&&DevName::Manufacturer::MAC::IP::Port::DevType::POEPort::SubMask::GateWay &&?? #define DH_AUTO_RECONNECT_FAILD 0x3006 /// ????????????? #define DH_REALPLAY_FAILD_EVENT 0x3007 /// ?????????,???????DEV_PLAY_RESULT #define DH_PLAYBACK_FAILD_EVENT 0x3008 /// ?????????,???????DEV_PLAY_RESULT #define DH_IVS_TRAFFIC_REALFLOWINFO 0x3009 /// ???????????????ALARM_IVS_TRAFFIC_REALFLOW_INFO #define DH_DEVICE_ABORT_EVENT 0x300a /// ?????????, ??????? DEV_CLIENT_ABORT_INFO #define DH_TALK_FAILD_EVENT 0x300b /// ??????????????, ??????? DEV_TALK_RESULT #define DH_START_LISTEN_FINISH_EVENT 0x300c /// ????????????????????, ???? START_LISTEN_FINISH_RESULT_INFO #define DH_YUEQINGLIGHTING_STATE_EVENT 0x300d /// ????????????????, ???????? DEV_YUEQINGLIGHTING_STATE_INFO #define DH_ALARM_VIOLATE_NO_FLY_TIME 0x300e /// ???????????, ??????? ALARM_VIOLATE_NO_FLY_TIME_INFO #define DH_ALARM_BOX_ALARM 0x300f /// ????????????????????? (??????? ALARM_BOX_ALARM_INFO ) #define DH_ALARM_SOSALERT 0x3010 /// SOS??????(???????ALARM_SOSALERT_INFO) #define DH_ALARM_GYROABNORMALATTITUDE 0x3011 /// ??????????????????????????????????????(??? ALARM_GYROABNORMALATTITUDE_INFO) #define DH_ALARM_ALARMOUTPUT 0x3012 /// ??????????????(???????ALARM_ALARMOUTPUT_INFO) #define DH_ALARM_PSTNREPORTFAILURE 0x3013 /// ???????????????(???????ALARM_PSTNREPORTFAILURE_INFO) #define DH_ALARM_NOGSMFIELD 0x3014 /// ????????????sim?????(???????ALARM_NOGSMFIELD_INFO) #define DH_ALARM_SMARTMOTION_HUMAN 0x3015 /// ????????????????(??) (??????? ALARM_SMARTMOTION_HUMAN_INFO) #define DH_ALARM_SMARTMOTION_VEHICLE 0x3016 /// ????????????????(??) (??????? ALARM_SMARTMOTION_VEHICLE_INFO) #define DH_ALARM_MOTION_RECORD_ALARM 0x3017 /// ????????(???????ALARM_MOTION_RECORD_INFO) #define DH_ALARM_SMARTHOME_GET_AUTHORIZED 0x3018 /// ??????????????????????????? ( ??????? ALARM_SMARTHOME_GET_AUTHORIZED ) #define DH_ALARM_SMARTHOME_UPDATE_SCENE 0x3019 /// ?????????????????????????????? ( ??????? ALARM_SMARTHOME_UPDATE_SCENE ) #define DH_ALARM_ASG 0x3020 /// ASG???? ( ??????? ALARM_ASG_INFO ) #define DH_ALARM_ASGSTAY 0x3021 /// ??????????????( ??????? ALARM_ASGSTAY_INFO ) #define DH_ALARM_ASGFOLLOWING 0x3022 /// ?????????????( ??????? ALARM_ASGFOLLOWING_INFO ) #define DH_ALARM_ASGCLIMBOVER 0x3023 /// ?????????????( ??????? ALARM_ASGCLIMBOVER_INFO ) #define DH_ALARM_ASGBREAKDOWN 0x3024 /// ??????????( ??????? ALARM_ASGBREAKDOWN_INFO ) #define DH_ALARM_LIFTCONTROL_REQUEST 0x3025 /// ?????????????????? ALARM_LIFTCONTROL_REQUEST_INFO?? #define DH_ALARM_REMOTE_DEVICE_GPS 0x3026 /// ??????GPS???????????? ALARM_REMOTE_DEVICE_GPS_INFO?? #define DH_ALARM_ENTRANCE_CAR_STAT_INFO 0x3027 /// ?????????????? ????????? ALARM_ENTRANCE_CAR_STAT_INFO?? #define DH_ALARM_ASG_INTRUDED 0x3028 /// ?????????????(??????? ALARM_ASG_INTRUDED_INFO) #define DH_ALARM_IDCARDINFO_CHECK 0x3029 /// ??????????????????????(??????? ALARM_IDCARDINFO_CHECK_INFO) #define DH_ALARM_REQUEST_APPOINTMENT_INFO 0x302a /// ????????? (??? ALARM_REQUEST_APPOINTMENT_INFO ) #define DH_ALARM_COURSE_RECORD_UPLOAD 0x302b /// ???????????????? (??? ALARM_COURSE_RECORD_UPLOAD_INFO) #define DH_ALARM_REQUEST_RECORD 0x302c /// ???????(??? ALARM_REQUEST_RECORD_INFO ) #define DH_ALARM_REQUEST_SNAP 0x302d /// ??????(??? ALARM_REQUEST_SNAP_INFO ) #define DH_ALARM_PARKING_OVERLOAD 0x302e /// ????????????(??????? ALARM_PARKING_OVERLOAD_INFO) #define DH_ALARM_VTS_CALLING_STATE 0x302f /// VTS?????????????(??????? ALARM_VTS_CALLING_STATE_INFO) #define DH_ALARM_DRUG_EXPLOSIVE_DETECTION 0x3030 /// ???????????(??????? ALARM_DRUG_EXPLOSIVE_DETECTION_INFO) #define DH_ALARM_LIQUID_DETECTION 0x3031 /// ?????????(??????? ALARM_LIQUID_DETECTION_INFO) #define DH_ALARM_ASG_ANTIPINCH 0x3032 /// ??????????????(??????? ALARM_ASG_ANTIPINCH_INFO) #define DH_ALARM_STORAGE_NOT_EXIST 0x3167 /// ?????????????(??????? ALARM_STORAGE_NOT_EXIST_INFO) #define DH_ALARM_NET_ABORT 0x3169 /// ??????????(??????? ALARM_NETABORT_INFO) #define DH_ALARM_IP_CONFLICT 0x3170 /// IP??????(??????? ALARM_IP_CONFLICT_INFO) #define DH_ALARM_MAC_CONFLICT 0x3171 /// MAC??????(??????? ALARM_MAC_CONFLICT_INFO) #define DH_ALARM_POWERFAULT 0x3172 /// ??????????(???????ALARM_POWERFAULT_INFO) #define DH_ALARM_CHASSISINTRUDED 0x3173 /// ????????(????)???????(???????ALARM_CHASSISINTRUDED_INFO) #define DH_ALARM_ALARMEXTENDED 0x3174 /// ??????????????(??????? ALARM_ALARMEXTENDED_INFO) #define DH_ALARM_ARMMODE_CHANGE_EVENT 0x3175 /// ??????????????(???????ALARM_ARMMODE_CHANGE_INFO) #define DH_ALARM_BYPASSMODE_CHANGE_EVENT 0x3176 /// ????????????(???????ALARM_BYPASSMODE_CHANGE_INFO) #define DH_ALARM_ACCESS_CTL_NOT_CLOSE 0x3177 /// ??????????(???????ALARM_ACCESS_CTL_NOT_CLOSE_INFO) #define DH_ALARM_ACCESS_CTL_BREAK_IN 0x3178 /// ???????(???????ALARM_ACCESS_CTL_BREAK_IN_INFO) #define DH_ALARM_ACCESS_CTL_REPEAT_ENTER 0x3179 /// ???????????(???????ALARM_ACCESS_CTL_REPEAT_ENTER_INFO) #define DH_ALARM_ACCESS_CTL_DURESS 0x3180 /// ???????????(???????ALARM_ACCESS_CTL_DURESS_INFO) #define DH_ALARM_ACCESS_CTL_EVENT 0x3181 /// ??????(??????? ALARM_ACCESS_CTL_EVENT_INFO) #define DH_URGENCY_ALARM_EX2 0x3182 /// ????????EX2(??DH_URGENCY_ALARM_EX??????,???????ALARM_URGENCY_ALARM_EX2, ???????????????, ?????????????????????????? #define DH_ALARM_INPUT_SOURCE_SIGNAL 0x3183 /// ???????????????(??????????????????, ??????????????,???????, ??? ALARM_INPUT_SOURCE_SIGNAL_INFO ) #define DH_ALARM_ANALOGALARM_EVENT 0x3184 /// ???????????????????(???????ALARM_ANALOGALARM_EVENT_INFO) #define DH_ALARM_ACCESS_CTL_STATUS 0x3185 /// ????????(???????ALARM_ACCESS_CTL_STATUS_INFO) #define DH_ALARM_ACCESS_SNAP 0x3186 /// ????????(???????ALARM_ACCESS_SNAP_INFO) #define DH_ALARM_ALARMCLEAR 0x3187 /// ???????(???????ALARM_ALARMCLEAR_INFO) #define DH_ALARM_CIDEVENT 0x3188 /// CID???(??????? ALARM_CIDEVENT_INFO) #define DH_ALARM_TALKING_HANGUP 0x3189 /// ???????????????(???????ALARM_TALKING_HANGUP_INFO) #define DH_ALARM_BANKCARDINSERT 0x318a /// ????????????(???????ALARM_BANKCARDINSERT_INFO) #define DH_ALARM_RCEMERGENCY_CALL 0x318b /// ???????????????(??????? ALARM_RCEMERGENCY_CALL_INFO) #define DH_ALARM_OPENDOORGROUP 0x318c /// ?????????????(???????ALARM_OPEN_DOOR_GROUP_INFO) #define DH_ALARM_FINGER_PRINT 0x318d /// ?????????(??????? ALARM_CAPTURE_FINGER_PRINT_INFO) #define DH_ALARM_CARD_RECORD 0x318e /// ??????????(??????? ALARM_CARD_RECORD_INFO) #define DH_ALARM_SUBSYSTEM_STATE_CHANGE 0x318f /// ????????????(???????ALARM_SUBSYSTEM_STATE_CHANGE_INFO) #define DH_ALARM_BATTERYPOWER_EVENT 0x3190 /// ??????????????(??????? ALARM_BATTERYPOWER_INFO ) #define DH_ALARM_BELLSTATUS_EVENT 0x3191 /// ?????????(???????ALARM_BELLSTATUS_INFO) #define DH_ALARM_DEFENCE_STATE_CHANGE_EVENT 0x3192 /// ????????????(???????ALARM_DEFENCE_STATUS_CHANGE_INFO), /// ???????????????????????????????????????I?, /// ???????CLIENT_QueryDevState()????DH_DEVSTATE_DEFENCE_STATE?????? #define DH_ALARM_TICKET_STATISTIC 0x3193 /// ????????????(??????? ALARM_TICKET_STATISTIC) #define DH_ALARM_LOGIN_FAILIUR 0x3194 /// ?????????(???????ALARM_LOGIN_FAILIUR_INFO) #define DH_ALARM_MODULE_LOST 0x3195 /// ????????????(??????? ALARM_MODULE_LOST_INFO) #define DH_ALARM_PSTN_BREAK_LINE 0x3196 /// PSTN???????(???????ALARM_PSTN_BREAK_LINE_INFO) #define DH_ALARM_ANALOG_PULSE 0x3197 /// ????????????(???????), ???????????????????(???????ALARM_ANALOGPULSE_INFO) #define DH_ALARM_MISSION_CONFIRM 0x3198 /// ??????????(??????? ALARM_MISSION_CONFIRM_INFO) #define DH_ALARM_DEVICE_MSG_NOTIFY 0x3199 /// ????????????????(??????? ALARM_DEVICE_MSG_NOTIFY_INFO) #define DH_ALARM_VEHICLE_STANDING_OVER_TIME 0x319A /// ??????????(??????? ALARM_VEHICLE_STANDING_OVER_TIME_INFO) #define DH_ALARM_ENCLOSURE_ALARM 0x319B /// ???????????(??????? ALARM_ENCLOSURE_ALARM_INFO) #define DH_ALARM_GUARD_DETECT 0x319C /// ?????????,?????????????????????start???,?????????????????stop ???(???????ALARM_GUARD_DETECT_INFO) #define DH_ALARM_GUARD_INFO_UPDATE 0x319D /// ?????????????,??????????????????(???????ALARM_GUARD_UPDATE_INFO) #define DH_ALARM_NODE_ACTIVE 0x319E /// ????????(???????ALARM_NODE_ACTIVE_INFO) #define DH_ALARM_VIDEO_STATIC 0x319F /// ????????????(??????? ALARM_VIDEO_STATIC_INFO) #define DH_ALARM_REGISTER_REONLINE 0x31a0 /// ???????????????????(???????ALARM_REGISTER_REONLINE_INFO) #define DH_ALARM_ISCSI_STATUS 0x31a1 /// ISCSI??????(??????? ALARM_ISCSI_STATUS_INFO) #define DH_ALARM_SCADA_DEV_ALARM 0x31a2 /// ???????????????(??????? ALARM_SCADA_DEV_INFO) #define DH_ALARM_AUXILIARY_DEV_STATE 0x31a3 /// ?????????(???????ALARM_AUXILIARY_DEV_STATE) #define DH_ALARM_PARKING_CARD 0x31a4 /// ?????????(???????ALARM_PARKING_CARD) #define DH_ALARM_PROFILE_ALARM_TRANSMIT 0x31a5 /// ???????????(???????ALARM_PROFILE_ALARM_TRANSMIT_INFO) #define DH_ALARM_VEHICLE_ACC 0x31a6 /// ????ACC???????(??????? ALARM_VEHICLE_ACC_INFO) #define DH_ALARM_TRAFFIC_SUSPICIOUSCAR 0x31a7 /// ?????????????(??????? ALARM_TRAFFIC_SUSPICIOUSCAR_INFO) #define DH_ALARM_ACCESS_LOCK_STATUS 0x31a8 /// ?????????(??????? ALARM_ACCESS_LOCK_STATUS_INFO) #define DH_ALARM_FINACE_SCHEME 0x31a9 /// ??????????(??????? ALARM_FINACE_SCHEME_INFO) #define DH_ALARM_HEATIMG_TEMPER 0x31aa /// ?????????????????????(??????? ALARM_HEATIMG_TEMPER_INFO) #define DH_ALARM_TALKING_IGNORE_INVITE 0x31ab /// ????????????????(???????ALARM_TALKING_IGNORE_INVITE_INFO) #define DH_ALARM_BUS_SHARP_TURN 0x31ac /// ??????????(???????ALARM_BUS_SHARP_TURN_INFO) #define DH_ALARM_BUS_SCRAM 0x31ad /// ??????????(???????ALARM_BUS_SCRAM_INFO) #define DH_ALARM_BUS_SHARP_ACCELERATE 0x31ae /// ?????????????(???????ALARM_BUS_SHARP_ACCELERATE_INFO) #define DH_ALARM_BUS_SHARP_DECELERATE 0x31af /// ?????????????(???????ALARM_BUS_SHARP_DECELERATE_INFO) #define DH_ALARM_ACCESS_CARD_OPERATE 0x31b0 /// ???????????????(???????ALARM_ACCESS_CARD_OPERATE_INFO) #define DH_ALARM_POLICE_CHECK 0x31b1 /// ?????????(???????ALARM_POLICE_CHECK_INFO) #define DH_ALARM_NET 0x31b2 /// ????d?????(??????? ALARM_NET_INFO) #define DH_ALARM_NEW_FILE 0x31b3 /// ????????(???????ALARM_NEW_FILE_INFO) #define DH_ALARM_FIREWARNING 0x31b5 /// ???????????? (??????? ALARM_FIREWARNING_INFO) #define DH_ALARM_RECORD_LOSS 0x31b6 /// ???????,?????????????,????????????????(???????ALARM_RECORD_LOSS_INFO) #define DH_ALARM_VIDEO_FRAME_LOSS 0x31b7 /// ?????????,??????????????????????????????(???????ALARM_VIDEO_FRAME_LOSS_INFO) #define DH_ALARM_RECORD_VOLUME_FAILURE 0x31b8 /// ???????????????????,??????????(??????? ALARM_RECORD_VOLUME_FAILURE_INFO) #define DH_EVENT_SNAP_UPLOAD 0x31b9 /// ??????????(???????EVENT_SNAP_UPLOAD_INFO) #define DH_ALARM_AUDIO_DETECT 0x31ba /// ?????????(??????? ALARM_AUDIO_DETECT ) #define DH_ALARM_UPLOADPIC_FAILCOUNT 0x31bb /// ??????????????????????????ALARM_UPLOADPIC_FAILCOUNT_INFO?? #define DH_ALARM_POS_MANAGE 0x31bc /// POS??????????(??????? ALARM_POS_MANAGE_INFO ) #define DH_ALARM_REMOTE_CTRL_STATUS 0x31bd /// ??????????????(??????? ALARM_REMOTE_CTRL_STATUS ) #define DH_ALARM_PASSENGER_CARD_CHECK 0x31be /// ????, ?????????(??????? ALARM_PASSENGER_CARD_CHECK ) #define DH_ALARM_SOUND 0x31bf /// ???????(??????? ALARM_SOUND ) #define DH_ALARM_LOCK_BREAK 0x31c0 /// ???????(??????? ALARM_LOCK_BREAK_INFO ) #define DH_ALARM_HUMAN_INSIDE 0x31c1 /// ???????????(???????ALARM_HUMAN_INSIDE_INFO) #define DH_ALARM_HUMAN_TUMBLE_INSIDE 0x31c2 /// ??????????????(???????ALARM_HUMAN_TUMBLE_INSIDE_INFO) #define DH_ALARM_DISABLE_LOCKIN 0x31c3 /// ?????????????????(???ALARM_DISABLE_LOCKIN_INFO) #define DH_ALARM_DISABLE_LOCKOUT 0x31c4 /// ?????????????????(???????ALARM_DISABLE_LOCKOUT_INFO) #define DH_ALARM_UPLOAD_PIC_FAILED 0x31c5 /// ?????????????????(??????? ALARM_UPLOAD_PIC_FAILED_INFO ) #define DH_ALARM_FLOW_METER 0x31c6 /// ?????????????????(??????? ALARM_FLOW_METER_INFO) #define DH_ALARM_WIFI_SEARCH 0x31c7 /// ???????????????WIFI?????????(??????? ALARM_WIFI_SEARCH_INFO) #define DH_ALARM_WIRELESSDEV_LOWPOWER 0x31C8 /// ?????????????????????(???????ALARM_WIRELESSDEV_LOWPOWER_INFO) #define DH_ALARM_PTZ_DIAGNOSES 0x31c9 /// ?????????(???????ALARM_PTZ_DIAGNOSES_INFO) #define DH_ALARM_FLASH_LIGHT_FAULT 0x31ca /// ??????(?????)??????? (??????? ALARM_FLASH_LIGHT_FAULT_INFO) #define DH_ALARM_STROBOSCOPIC_LIGTHT_FAULT 0x31cb /// ??????????? (??????? ALARM_STROBOSCOPIC_LIGTHT_FAULT_INFO) #define DH_ALARM_HUMAM_NUMBER_STATISTIC 0x31cc /// ??????/???????????? (??????? ALARM_HUMAN_NUMBER_STATISTIC_INFO) #define DH_ALARM_VIDEOUNFOCUS 0x31ce /// ??????????(??????? ALARM_VIDEOUNFOCUS_INFO) #define DH_ALARM_BUF_DROP_FRAME 0x31cd /// ????????????(??????? ALARM_BUF_DROP_FRAME_INFO) #define DH_ALARM_DOUBLE_DEV_VERSION_ABNORMAL 0x31cf /// ???????????????????????????????? (??????? ALARM_DOUBLE_DEV_VERSION_ABNORMAL_INFO) #define DH_ALARM_DCSSWITCH 0x31d0 /// ??????????? ??????????? (??????? ALARM_DCSSWITCH_INFO) #define DH_ALARM_RADAR_CONNECT_STATE 0x31d1 /// ????????(??????? ALARM_RADAR_CONNECT_STATE_INFO) #define DH_ALARM_DEFENCE_ARMMODE_CHANGE 0x31d2 /// ??????????????????(??????? ALARM_DEFENCE_ARMMODECHANGE_INFO) #define DH_ALARM_SUBSYSTEM_ARMMODE_CHANGE 0x31d3 /// ??????????????????(??????? ALARM_SUBSYSTEM_ARMMODECHANGE_INFO) #define DH_ALARM_RFID_INFO 0x31d4 /// ??????????????(??????? ALARM_RFID_INFO) #define DH_ALARM_SMOKE_DETECTION 0x31d5 /// ???????????(??????? ALARM_SMOKE_DETECTION_INFO) #define DH_ALARM_BETWEENRULE_TEMP_DIFF 0x31d6 /// ??????????????????(??????? ALARM_BETWEENRULE_DIFFTEMPER_INFO) #define DH_ALARM_TRAFFIC_PIC_ANALYSE 0x31d7 /// ?????????????(??? ALARM_PIC_ANALYSE_INFO) #define DH_ALARM_HOTSPOT_WARNING 0x31d8 /// ??????????????(??????? ALARM_HOTSPOT_WARNING_INFO) #define DH_ALARM_COLDSPOT_WARNING 0x31d9 /// ??????????????(??????? ALARM_COLDSPOT_WARNING_INFO) #define DH_ALARM_FIREWARNING_INFO 0x31da /// ?????????????????(??????? ALARM_FIREWARNING_INFO_DETAIL) #define DH_ALARM_FACE_OVERHEATING 0x31db /// ?????????????????(??????? ALARM_FACE_OVERHEATING_INFO) #define DH_ALARM_SENSOR_ABNORMAL 0x31dc /// ???????????(??????? ALARM_SENSOR_ABNORMAL_INFO) #define DH_ALARM_PATIENTDETECTION 0x31de /// ????????????????(??????? ALARM_PATIENTDETECTION_INFO) #define DH_ALARM_RADAR_HIGH_SPEED 0x31df /// ????????????? ?????????? (??????? ALARM_RADAR_HIGH_SPEED_INFO) #define DH_ALARM_POLLING_ALARM 0x31e0 /// ??????????? ?????????? (??????? ALARM_POLLING_ALARM_INFO) #define DH_ALARM_ITC_HWS000 0x31e1 /// ??????????????????(??????? ALARM_ITC_HWS000) #define DH_ALARM_TRAFFICSTROBESTATE 0x31e2 /// ??????????(??????? ALARM_TRAFFICSTROBESTATE_INFO) #define DH_ALARM_TELEPHONE_CHECK 0x31e3 /// ?????????????(??????? ALARM_TELEPHONE_CHECK_INFO) #define DH_ALARM_PASTE_DETECTION 0x31e4 /// ???????(??????? ALARM_PASTE_DETECTION_INFO ) #define DH_ALARM_SHOOTINGSCORERECOGNITION 0x31e5 /// ?????????(??????? ALARM_PIC_SHOOTINGSCORERECOGNITION_INFO) #define DH_ALARM_SWIPEOVERTIME 0x31e6 /// ???????????(??????? ALARM_SWIPE_OVERTIME_INFO) #define DH_ALARM_DRIVING_WITHOUTCARD 0x31e7 /// ?????????(??????? ALARM_DRIVING_WITHOUTCARD_INFO) #define DH_ALARM_TRAFFIC_PEDESTRIAN_RUN_REDLIGHT_DETECTION 0x31e8 ///????????(??????? ALARM_TRAFFIC_PEDESTRIAN_RUN_REDLIGHT_DETECTION_INFO ) #define DH_ALARM_FIGHTDETECTION 0x31e9 /// ??????(??????? NET_ALARM_FIGHTDETECTION) #define DH_ALARM_OIL_4G_OVERFLOW 0x31ea /// 4G???????????????????(??????? NET_ALARM_OIL_4G_OVERFLOW_INFO) #define DH_ALARM_ACCESSIDENTIFY 0x31eb /// VTO?????????(??????? NET_ALARM_ACCESSIDENTIFY) #define DH_ALARM_POWER_SWITCHER_ALARM 0x31ec /// ?????????????????????(??????? DEV_ALRAM_POWERSWITCHER_INFO) #define DH_ALARM_SCENNE_CHANGE_ALARM 0x31ed /// ??????????(??????? ALARM_PIC_SCENECHANGE_INFO)?????VideoAbnormalDetection??SceneChange??????????????????????????????? #define DH_ALARM_WIFI_VIRTUALINFO_SEARCH 0x31ef /// WIFI??????????????(??????? ALARM_WIFI_VIRTUALINFO_SEARCH_INFO) #define DH_ALARM_TRAFFIC_OVERSPEED 0x31f0 /// ???????(??????? ALARM_TRAFFIC_OVERSPEED_INFO) #define DH_ALARM_TRAFFIC_UNDERSPEED 0x31f1 /// ??????(??????? ALARM_TRAFFIC_UNDERSPEED_INFO) #define DH_ALARM_TRAFFIC_PEDESTRAIN 0x31f2 /// ??????????(??????? ALARM_TRAFFIC_PEDESTRAIN_INFO) #define DH_ALARM_TRAFFIC_JAM 0x31f3 /// ?????????(??????? ALARM_TRAFFIC_JAM) #define DH_ALARM_TRAFFIC_PARKING 0x31f4 /// ??????????(??????? ALARM_TRAFFIC_PARKING_INFO) #define DH_ALARM_TRAFFIC_THROW 0x31f5 /// ?????????????(??????? ALARM_TRAFFIC_THROW_INFO) #define DH_ALARM_TRAFFIC_RETROGRADE 0x31f6 /// ???????(??????? ALARM_TRAFFIC_RETROGRADE_INFO) #define DH_ALARM_VTSTATE_UPDATE 0x31f7 /// VTS?????(??????? ALARM_VTSTATE_UPDATE_INFO) #define DH_ALARM_CALL_NO_ANSWERED 0x31f8 /// ????????????????????(??????? NET_ALARM_CALL_NO_ANSWERED_INFO) #define DH_ALARM_USER_LOCK_EVENT 0x31f9 /// ?????????????? #define DH_ALARM_RETROGRADE_DETECTION 0x31fa /// ??????????(??????? ALARM_RETROGRADE_DETECTION_INFO) #define DH_ALARM_AIO_APP_CONFIG_EVENT 0x31fb /// AIO???????(??????? ALARM_AIO_APP_CONFIG_EVENT) #define DH_ALARM_RAID_STATE_EX 0x31fc /// RAID??????(??????? ALARM_RAID_INFO_EX) #define DH_ALARM_STORAGE_IPC_FAILURE 0x31fd /// IPC??????????????(IPC SD????)(??????? ALARM_STORAGE_IPC_FAILURE_INFO) #define DH_ALARM_DEVICE_STAY 0x31fe /// ???????,?????????????????????????????????????????(???????? ALARM_DEVICE_STAY_INFO) #define DH_ALARM_SUB_WAY_DOOR_STATE 0x31ff /// ????????????(??????? ALARM_SUB_WAY_DOOR_STATE_INFO) #define DH_ALARM_SUB_WAY_PECE_SWITCH 0x3200 /// ????PECE??????(??????? ALARM_SUB_WAY_PECE_SWITCH_INFO) #define DH_ALARM_SUB_WAY_FIRE_ALARM 0x3201 /// ?????????(??????? ALARM_SUB_WAY_FIRE_ALARM_INFO) #define DH_ALARM_SUB_WAY_EMER_HANDLE 0x3202 /// ?????????????????(??????? ALARM_SUB_WAY_EMER_HANDLE_INFO) #define DH_ALARM_SUB_WAY_CAB_COVER 0x3203 /// ?????????????(??????? ALARM_SUB_WAY_CAB_COVER_INFO) #define DH_ALARM_SUB_WAY_DERA_OBST 0x3204 /// ????????????????(??????? ALARM_SUB_WAY_DERA_OBST_INFO) #define DH_ALARM_SUB_WAY_PECU_CALL 0x3205 /// ???????????????(??????? ALARM_SUB_WAY_PECU_CALL_INFO) #define DH_ALARM_BOX 0x3206 /// ?????????????? (??????? ALARM_BOX_INFO) #define DH_ALARM_DOOR_CLOSEDMANUALLY 0x3207 /// ??????????(??????? ALARM_DOOR_CLOSEDMANUALLY_INFO) #define DH_ALARM_DOOR_NOTCLOSED_LONGTIME 0x3208 /// ??????????????????(??????? ALARM_DOOR_NOTCLOSED_LONGTIME_INFO) #define DH_ALARM_UNDER_VOLTAGE 0x3209 /// ???????9V, ?????????, ?????????OSD????????????? (??????? ALARM_UNDER_VOLTAGE_INFO ) #define DH_ALARM_OVER_VOLTAGE 0x320a /// ???????19V, ??????????, ?????????OSD????????????? (??????? ALARM_OVER_VOLTAGE_INFO ) #define DH_ALARM_CUT_LINE 0x320b /// ???????(???????ALARM_CUT_LINE_INFO) #define DH_ALARM_VIDEOMOTION_EVENT 0x320c /// ???????(??????? ALARM_VIDEOMOTION_EVENT_INFO) #define DH_ALARM_WIDE_VIEW_REGION_EVENT 0x320d /// WideViewRegions???(??????? ALARM_WIDE_VIEW_REGION_EVENT_INFO) A????????????????????????????B?? #define DH_ALARM_FIBRE_OPTIC_ABORT 0x320e /// ???????(??????? ALARM_FIBRE_OPTIC_ABORT) #define DH_ALARM_TAIL_DETECTION 0x320f /// ???????(??????? ALARM_TAIL_DETECTION_INFO) #define DH_ALARM_BITRATES_OVERLIMIT 0x3210 /// ?????????????????????(??????? ALARM_BITRATES_OVERLIMIT_INFO) #define DH_ALARM_RECORD_CHANGED_EX 0x3211 /// ????????????(??????? ALARM_RECORD_CHANGED_INFO_EX) #define DH_ALARM_HIGH_DECIBEL 0x3212 /// ?????????????(??????? ALARM_HIGH_DECIBEL_INFO) #define DH_ALARM_SHAKE_DETECTION 0x3213 /// ????????(??????? ALARM_SHAKE_DETECTION_INFO) #define DH_ALARM_TUMBLE_DETECTION 0x3214 /// ??????????(??????? ALARM_TUMBLE_DETECTION_INFO) #define DH_ALARM_ACCESS_CTL_MALICIOUS 0x3215 /// ?????????(??????? ALARM_ACCESS_CTL_MALICIOUS) #define DH_ALARM_ACCESS_CTL_USERID_REGISTER 0x3216 /// ???????????(??????? ALARM_ACCESS_CTL_USERID_REGISTER) #define DH_ALARM_ACCESS_CTL_REVERSELOCK 0x3217 /// ???????????????(??????? ALARM_ACCESS_CTL_REVERSELOCK) #define DH_ALARM_ACCESS_CTL_USERID_DELETE 0x3218 /// ?????????(??????? ALARM_ACCESS_CTL_USERID_DELETE) #define DH_ALARM_ACCESS_DOOR_BELL 0x3219 /// ???????(??????? ALARM_ACCESS_DOOR_BELL_INFO) #define DH_ALARM_ACCESS_FACTORY_RESET 0x321a /// ???????????(??????? ALARM_ACCESS_FACTORY_RESET) #define DH_ALARM_POLICE_RECORD_PROGRESS 0x321b /// MPT?????NVR????????(??????? ALARM_POLICE_RECORD_PROGRESS_INFO) #define DH_ALARM_POLICE_PLUGIN 0x321c /// MPT?????????????(??????? ALARM_POLICE_PLUGIN_INFO) #define DH_ALARM_GPS_NOT_ALIGNED 0x321d /// GPS??????????(??????? ALARM_GPS_NOT_ALIGNED_INFO) #define DH_ALARM_WIRELESS_NOT_CONNECTED 0x321e /// ?????????????(????wifi??3G/4G)(??????? ALARM_WIRELESS_NOT_CONNECTED_INFO) #define DH_ALARM_CABINET 0x321f /// ???????????????????????????????(??????? ALARM_CABINET_INFO) #define DH_SWITCH_SCREEN 0x3220 /// ?????????? #define DH_ALARM_NEAR_DISTANCE_DETECTION 0x3221 /// ????????????(???????ALARM_NEAR_DISTANCE_INFO) #define DH_ALARM_MAN_STAND_DETECTION 0x3222 /// ??????????????(???????ALARM_MAN_STAND_INFO) #define DH_ALARM_MAN_NUM_DETECTION 0x3223 /// ???????????????????????(???????ALARM_MAN_NUM_INFO) #define DH_MCS_GENERAL_CAPACITY_LOW 0x3224 /// ?????????????(???????ALARM_MCS_GENERAL_CAPACITY_LOW_INFO) #define DH_MCS_DATA_NODE_OFFLINE 0x3225 /// ???????????????(???????ALARM_MCS_DATA_NODE_OFFLINE_INFO) #define DH_MCS_DISK_OFFLINE 0x3226 /// ?????????????(???????ALARM_MCS_DISK_OFFLINE_INFO) #define DH_MCS_DISK_SLOW 0x3227 /// ????????????(???????ALARM_MCS_DISK_SLOW_INFO) #define DH_MCS_DISK_BROKEN 0x3228 /// ???????????(???????ALARM_MCS_DISK_BROKEN_INFO) #define DH_MCS_DISK_UNKNOW_ERROR 0x3229 /// ????????????????(???????ALARM_MCS_DISK_UNKNOW_ERROR_INFO) #define DH_MCS_METADATA_SERVER_ABNORMAL 0x322a /// ??????????????????(???????ALARM_MCS_METADATA_SERVER_ABNORMAL_INFO) #define DH_MCS_CATALOG_SERVER_ABNORMAL 0x322b /// ????????????????(???????ALARM_MCS_CATALOG_SERVER_ABNORMAL_INFO) #define DH_MCS_GENERAL_CAPACITY_RESUME 0x322c /// ????????????????(???????ALARM_MCS_GENERAL_CAPACITY_RESUME_INFO) #define DH_MCS_DATA_NODE_ONLINE 0x322d /// ???????????????(???????ALARM_MCS_DATA_NODE_ONLINE_INFO) #define DH_MCS_DISK_ONLINE 0x322e /// ?????????????(???????ALARM_MCS_DISK_ONLINE_INFO) #define DH_MCS_METADATA_SLAVE_ONLINE 0x322f /// ??????????????????(???????ALARM_MCS_METADATA_SLAVE_ONLINE_INFO) #define DH_MCS_CATALOG_SERVER_ONLINE 0x3230 /// ??????????????????(???????ALARM_MCS_CATALOG_SERVER_ONLINE_INFO) #define DH_ALARM_OFFLINE_LOGSYNC 0x3231 /// ?????????????(??????? ALARM_OFFLINE_LOGSYNC_INFO) #define DH_ALARM_UPGRADE_STATE 0x3232 /// ????????????(??????? ALARM_UPGRADE_STATE) #define DH_ALARM_LABELINFO 0x3233 /// IPC????(2017.4),RFID????????????(??????? ALARM_LABELINFO) #define DH_ALARM_TIRED_PHYSIOLOGICAL 0x3234 /// ??????????(??????? ALARM_TIRED_PHYSIOLOGICAL) #define DH_ALARM_CALLING_WHEN_DRIVING 0x3235 /// ???????????(??????? ALARM_CALLING_WHEN_DRIVING) #define DH_ALARM_TRAFFIC_DRIVER_SMOKING 0x3236 /// ???????????(??????? ALARM_TRAFFIC_DRIVER_SMOKING) #define DH_ALARM_TRAFFIC_DRIVER_LOWER_HEAD 0x3237 /// ??????????????(??????? ALARM_TRAFFIC_DRIVER_LOWER_HEAD) #define DH_ALARM_TRAFFIC_DRIVER_LOOK_AROUND 0x3238 /// ??????????????????(??????? ALARM_TRAFFIC_DRIVER_LOOK_AROUND) #define DH_ALARM_TRAFFIC_DRIVER_LEAVE_POST 0x3239 /// ?????????????(??????? ALARM_TRAFFIC_DRIVER_LEAVE_POST) #define DH_ALARM_TRAFFIC_DRIVER_YAWN 0x323a /// ???????????????(??????? ALARM_TRAFFIC_DRIVER_YAWN) #define DH_ALARM_AUTO_INSPECTION 0x323b /// ?????????(??????? ALARM_AUTO_INSPECTION) #define DH_ALARM_TRAFFIC_VEHICLE_POSITION 0x323c /// ???????????(???????? ALARM_TRAFFIC_VEHICLE_POSITION) #define DH_ALARM_FACE_VERIFICATION_ACCESS_SNAP 0x323d /// ??????????????????(??????? ALARM_FACE_VERIFICATION_ACCESS_SNAP_INFO) #define DH_ALARM_VIDEOBLIND 0x323e /// ?????????(???????ALARM_VIDEO_BLIND_INFO) #define DH_ALARM_DRIVER_NOTCONFIRM 0x323f /// ???????????????????(???????ALARM_DRIVER_NOTCONFIRM_INFO) #define DH_ALARM_FACEINFO_COLLECT 0x3240 /// ????????????(???ALARM_FACEINFO_COLLECT_INFO) #define DH_ALARM_HIGH_SPEED 0x3241 /// ??????????????(??? ALARM_HIGH_SPEED_INFO) #define DH_ALARM_VIDEO_LOSS 0x3242 /// ?????????(??? ALARM_VIDEO_LOSS_INFO) #define DH_ALARM_MPTBASE_CONNECT 0x3243 /// ?????????????????(???????ALARM_MPTBASE_CONNECT) #define DH_ALARM_LATEST_SHUTDOWN 0x3244 /// ??????????????(??????? ALARM_LATEST_SHUTDOWN) /// ------------- ???????????? ------------------ #define DH_ALARM_ROBOT_COLLISION 0x3245 /// ????????????(??????? ALARM_ROBOT_COLLISION) #define DH_ALARM_ROBOT_FALLENDOWN 0x3246 /// ????????????(??????? ALARM_ROBOT_FALLENDOWN) #define DH_ALARM_ROBOT_UNRECOGNIZED2DCODE 0x3247 /// ??????????????????????(??????? ALARM_ROBOT_UNRECOGNIZED2DCODE) #define DH_ALARM_ROBOT_WRONG2DCODE 0x3248 /// ?????????????????(???????? ALARM_ROBOT_WRONG2DCODE) #define DH_ALARM_ROBOT_ROADBLOCKED 0x3249 /// ?????????????(??????? ALARM_ROBOT_ROADBLOCKED) #define DH_ALARM_ROBOT_FAULT 0x324a /// ????????????(??????? ALARM_ROBOT_FAULT) #define DH_ALARM_ROBOT_OVERLOAD 0x324b /// ????????????(??????? ALARM_ROBOT_OVERLOAD) #define DH_ALARM_ROBOT_YAWEXCEPTION 0x324c /// ????????????????(??? ALARM_ROBOT_YAWEXCEPTION) #define DH_ALARM_ROBOT_LOADTIMEOUT 0x324e /// ????????????(??? ALARM_ROBOT_LOADTIMEOUT ) #define DH_ALARM_ROBOT_UNLOADTIMEOUT 0x324f /// ???????????????(??? ALARM_ROBOT_UNLOADTIMEOUT) #define DH_ALARM_ROBOT_MAPUPDATE 0x3250 /// ???????????????(??? ALARM_ROBOT_MAPUPDATE) #define DH_ALARM_ROBOT_BRAKE 0x3252 /// ???????????????(??? ALARM_ROBOT_BRAKE) #define DH_ALARM_ROBOT_MANUAL_INTERVENTION 0x3253 /// ???????????????(??? ALARM_ROBOT_MANUAL_INTERVENTION) ///??????????????0x3299 /// ----------------------------------------------- #define DH_ALARM_VIDEO_TALK_PATH 0x324d /// ??????????(??????? ALARM_VIDEO_TALK_PATH_INFO) #define DH_ALARM_CGIRECORD 0x3251 /// cgi??????????(??? ALARM_CGIRECORD) #define DH_ALARM_BATTERY_TEMPERATURE 0x3254 /// ????????????(??? ALARM_BATTERY_TEMPERATURE_INFO) #define DH_ALARM_TIRE_PRESSURE 0x3255 /// ????????(??? ALARM_TIRE_PRESSURE_INFO ) #define DH_ALARM_VTH_CONFLICT 0x3256 /// ????????????????(??? ALARM_VTH_CONFLICT_INFO) #define DH_ALARM_ACCESS_CTL_BLACKLIST 0x3257 /// ???????????????????(??? ALARM_ACCESS_CTL_BLACKLIST) #define DH_ALARM_ROBOT_EMERGENCY_STOP 0x3258 /// ??????????????????(??? ALARM_ROBOT_EMERFEBCY_STOP) #define DH_ALARM_ROBOT_PATH_PLAN_FAILED 0x3259 /// ???????????????????(??? ALARM_ROBOT_PATH_PLAN_FAILED) #define DH_ALARM_ROBOT_LOCAL_MAP_UPLOAD 0x325a /// ?????????????????(??? ALARM_ROBOT_LOCAL_MAP_UPLOAD) #define DH_ALARM_ROBOT_SHELF_ERROR 0x325b /// ??????????????(??? ALARM_ROBOT_SHELF_ERROR) #define DH_ALARM_ROBOT_SENSOR_ERROR 0x325c /// ????????????????(??? ALARM_ROBOT_SENSOR_ERROR) #define DH_ALARM_ROBOT_DERAILMENT 0x325d /// ????????????(??? ALARM_ROBOT_DERAILMENT) #define DH_ALARM_ROBOT_MOTOR_UNINIT 0x325e /// ???????????????????(??? ALARM_ROBOT_MOTOR_UNINIT) #define DH_ALARM_ROBOT_PREVENT_FALLING 0x325f /// ??????????????(??? ALARM_ROBOT_PREVENT_FALLING) #define DH_ALARM_ROBOT_LOCATION_EXCEPTION 0x3260 /// ??????????????(??? ALARM_ROBOT_LOCATION_EXCEPTION ) #define DH_ALARM_ROBOT_UPGRADER_FAIL 0x3261 /// ????????????????(??? ALARM_ROBOT_UPGRADER_FAIL) #define DH_ALARM_ROBOT_CHARGING_ERROR 0x3262 /// ?????????????(??? ALARM_ROBOT_CHARGING_ERROR) #define DH_ALARM_ROBOT_STATIONCHARGING_ERROR 0x3263 /// ?????????????????(??? ALARM_ROBOT_STATIONCHARGING_ERROR) #define DH_ALARM_ROBOT_CAMERA_ABNORMAL 0x3264 /// ??????????????(??? ALARM_ROBOT_CAMERA_ABNORMAL) #define DH_ALARM_ROBOT_ERROR_REPORT 0x3265 /// ????????????(??? ALARM_ROBOT_ERROR_REPORT) #define DH_ALARM_ROBOT_DOOR_CONTROL_REQUEST 0x3266 /// ??????????????????(??? ALARM_ROBOT_DOOR_CONTROL_REQUEST_INFO) #define DH_ALARM_ROBOT_FAILEDTO_CONTROLROOM 0x3267 /// ?????????D????????(??? ALARM_ROBOT_FAILEDTO_CONTROLROOM) #define DH_ALARM_ROBOT_ABNORMAL2DCODE 0x3268 /// ???????????????(??? ALARM_ROBOT_ABNORMAL2DCODE) #define DH_ALARM_ROBOT_SECURITYDOGINVALID 0x3269 /// ?????????????????(??? ALARM_ROBOT_SECURITYDOGINVALID) #define DH_ALARM_ROBOT_LOCKAREA_BLOCKED 0x326a /// ?????????????????????(??? ALARM_ROBOT_LOCKAREA_BLOCKED) #define DH_ALARM_ROBOT_REQUEST_CANCLE_TASK 0x326b /// ???????????????????????(??? ALARM_ROBOT_REQUEST_CANCLE_TASK) #define DH_ALARM_ROBOT_FORK_BLOCK 0x326c /// ????????????????(??? ALARM_ROBOT_FORK_BLOCK) #define DH_ALARM_ROBOT_SHUT_DOWN 0x326d /// ???????????(??? ALARM_ROBOT_SHUT_DOWN) #define DH_ALARM_ROBOT_LASER_HEAD_DIRTY 0x326e /// ???????????????(??? ALARM_ROBOT_LASER_HEAD_DIRTY) #define DH_ALARM_ROBOT_UNTRACK 0x326f /// ???????????????(??? ALARM_ROBOT_UNTRACK) #define DH_ALARM_ROBOT_IN_ELEVATOR 0x3270 /// ???????????????(??? ALARM_ROBOT_IN_ELEVATOR) #define DH_ALARM_ROBOT_CORRECT_LOACATION 0x3271 /// ??????????????(??? ALARM_ROBOT_CORRECT_LOACATION) #define DH_ALARM_ROBOT_SLIP 0x3272 /// ??????????(??? ALARM_ROBOT_SLIP) #define DH_ALARM_ROBOT_LOAD_HEIGHT_ALARM 0x3273 /// ???????????(??? ALARM_ROBOT_LOAD_HEIGHT_ALARM) #define DH_ALARM_ROBOT_EMERGENCY_STOP_EX 0x3274 /// ??????????????(??? ALARM_ROBOT_EMERGENCY_STOP_EX) ///?????????0x3300??? #define DH_ALARM_USERLOCK 0x3300 /// ??????????????(??? ALARM_USERLOCK_INFO) #define DH_ALARM_DOWNLOAD_REMOTE_FILE 0x3301 /// ?????????????(???ALARM_DOWNLOAD_REMOTE_FILE_INFO) #define DH_ALARM_NASFILE_STATUS 0x3302 /// NAS????????(??????? ALARM_NASFILE_STATUS_INFO) #define DH_ALARM_TALKING_CANCELCALL 0x3303 /// ???????????????????(??????? ALARM_TALKING_CANCELCALL_INFO) #define DH_ALARM_ACCESS_CTL_UNAUTHORIZED_MALICIOUSWIP 0x3304 /// ?????????????????(??????? ALARM_ACCESS_CTL_UNAUTHORIZED_MALICIOUSWIP)???????????DH_ALARM_ACCESS_CTL_MALICIOUS??? #define DH_ALARM_CROWD_DETECTION 0x3305 /// ???????????(??????? ALARM_CROWD_DETECTION_INFO) #define DH_ALARM_FACE_FEATURE_ABSTRACT 0x3306 /// ????????????????????(???????ALARM_FACE_FEATURE_ABSTRACT_INFO) #define DH_ALARM_RECORD_SCHEDULE_CHANGE 0x3307 /// ???????????(??????? ALARM_RECORD_SCHEDULE_CHANGE_INFO) #define DH_ALARM_NTP_CHANGE 0x3308 /// NTP??????????(??????? ALARM_NTP_CHANGE_INFO) #define DH_ALARM_HDD_TEMPERATUREALARM 0x3309 /// ????????????(??????? ALARM_HDD_TEMPERATUREALARM_INFO) #define DH_ALARM_HDD_HEALTHALARM 0x330a /// ????????????????(??????? ALARM_HDD_HEALTHALARM_INFO) #define DH_ALARM_HDD_SHAKEALARM 0x330b /// ???????????(??????? ALARM_HDD_SHAKEALARM_INFO) #define DH_ALARM_PATROL_STATUS 0x330c /// ????????????(??????? ALARM_PATROL_STATUS_INFO) #define DH_ALARM_CITIZEN_PICTURE_COMPARE 0x330d /// ?????????(??????? ALARM_CITIZEN_PICTURE_COMPARE_INFO) /* start ???????????,???58?????*/ #define DH_ALARM_AREAARM_MODECHANGE 0x330e /// ????????????(???????ALARM_AREAARM_MODECHANGE_INFO) #define DH_ALARM_ZONEMODULELOST 0x330f /// ??????????(???????ALARM_ZONEMODULE_LOST_INFO) #define DH_ALARM_AREAALARM 0x3310 /// ?????(???????ALARM_AREAALARM_INFO) #define DH_ALARM_ZONEOPEN 0x3311 /// ??????(???????ALARM_ZONEOPEN_INFO) #define DH_ALARM_SYSTEMTAMPER 0x3312 /// ???????(???????ALARM_SYSTEMTAMPER_INFO) #define DH_ALARM_ALARMREGION_MAXEVENTID 0x3348 /// ??????????????????,?????????? /* end ???????????,???58????? */ #define DH_ALARM_LAW_ENFORCEMENT_INFO 0x3349 /// ?????????????????????????????? ALARM_LAW_ENFORCEMENT_INFO?? #define DH_ALARM_CONGESTION_DETECTION 0x334A /// ??????????????????????????? ALARM_CONGESTION_DETECTION_INFO?? #define DH_ALARM_VEHICLELIMIT_DETECTION 0x334B /// ?????????????????????????????? ALARM_VEHICLELIMIT_DETECTION_INFO?? #define DH_ALARM_TRAFFIC_PARKING_TIMEOUT 0x334C /// ??????????????????????? ALARM_TRAFFIC_PARKING_TIMEOUT_INFO?? /* end ???????????,???64?????*/ #define DH_ALARM_DISTANCE_DETECTION 0x334e /// ????????(??? ALARM_DISTANCE_DETECTION_INFO) #define DH_ALARM_STAY_DETECTION 0x334f /// ??????(??? ALARM_STAY_DETECTION_INFO) #define DH_ALARM_DEVBOARDHOTPLUG 0x3350 /// ?????????????(??????? ALARM_DEVBOARDHOTPLUG_INFO) #define DH_ALARM_HOMESCENE_CHANGE 0x3351 /// ???????????????(???????ALARM_HOMESCENE_CHANGE_INFO) #define DH_ALARM_STORAGE_WORKDIRECTORY_SWITCH 0x3352 /// ????????????????(??????? ALARM_STORAGE_WORKDIRECTORY_SWITCH_INFO) #define DH_ALARM_TRAFFIC_LINKAGEALARM 0x3353 /// ?????????????????????????(??????? ALARM_TRAFFIC_LINKAGEALARM_INFO) #define DH_ALARM_COAXIAL_ALARM_LOCAL 0x3354 /// ??????????????(??????? ALARM_COAXIAL_ALARM_LOCAL_INFO) #define DH_ALARM_NAS_FILE_REMOVE_STATUS 0x3355 /// NAS???????????(??????? ALARM_NAS_FILE_REMOVE_STATUS_INFO) #define DH_ALARM_NAS_APK_INSTALL_REQUEST 0x3356 /// ??????????APK???(??????? ALARM_NAS_APK_INSTALL_REQUEST_INFO) #define DH_ALARM_NAS_APK_INSTALL_STATUS 0x3357 /// ??????APK?????(??????? ALARM__APK_INSTALL_STATUS_INFO) #define DH_ALARM_FILE_COMPRESS_STATUS 0x3358 /// ??????????????(??????? ALARM_FILE_COMPRESSS_STATUS_INFO) #define DH_ALARM_STRANGER_ALARM 0x3359 /// ???????????(??????? ALARM_STRANGER_ALARM_INFO) #define DH_ALARM_QR_CODE_CHECK 0x335a /// ???????????(??????? ALARM_QR_CODE_CHECK_INFO) #define DH_ALARM_ACCESS_CTL_LOCK_MODE 0x335b /// ?????????(??????? ALARM_ACCESS_CTL_LOCK_MODE_INFO) #define DH_ALARM_LOCK_ROOM_NUM_BIND 0x335c /// ?????????(??????? ALARM_LOCK_ROOM_NUM_BIND_INFO) #define DH_ALARM_LEAVE_DETECTION 0x335d /// ???????????? ALARM_LEAVE_DETECTION_INFO?? #define DH_ALARM_TRAFFICGZJJ_QUEUE_LEN 0x335e /// ????????????(??????? ALARM_TRAFFICGZJJ_QUEUE_LEN_INFO) #define DH_ALARM_TRAFFIC_XINKONG 0x335f /// ???????????????????? ALARM_TRAFFIC_XINKONG_INFO?? #define DH_ALARM_DEVICE_ABNORMAL 0x3360 /// ???????? (??????? ALARM_DEVICE_ABNORMAL_INFO ) /* start ???????????,???64?????*/ #define DH_ALARM_RADAR_REGIONDETECTION 0x3370 /// ????????????(??????? ALARM_RADAR_REGIONDETECTION_INFO) #define DH_ALARM_RADAR_LINEDETECTION 0x3371 /// ???????/?????????(???????ALARM_RADAR_LINEDETECTION_INFO) #define DH_ALARM_RADAR_MAXEVENTID 0x3433 /// ?????????????,?????????? /* end ???????????,???64?????*/ #define DH_ALARM_JABLOTRON_ALARM 0x3434 /// ??????????(??????? ALARM_JABLOTRONALARM_INFO) #define DH_ALARM_FACE_RECOGNITION 0x3435 /// ?????????(??????? ALARM_FACE_RECOGNITION_INFO) #define DH_ALARM_VEHICLE_OILLEVEL 0x3436 /// ?????????????(??????? ALARM_VEHICLE_OILLEVEL_INFO) #define DH_ALARM_VEHICLE_LOAD 0x3437 /// ??????????????(??????? ALARM_VEHICLE_LOAD_INFO) #define DH_ALARM_VEHICLE_STATE 0x3438 /// ?????????(??????? ALARM_VEHICLE_STATE_INFO) #define DH_ALARM_IMSI_CHECK 0x3439 /// IMSI???????(??????? ALARM_IMSI_CHECK_INFO) #define DH_ALARM_BLIND_ALARM 0x343A /// ??????????(??????? ALARM_BLIND_ALARM_INFO) #define DH_ALARM_VEHICLE_MAINTAINCE 0x343B /// ?????????????(??????? ALARM_VEHICLE_MAINTAINCE_INFO) #define DH_ALARM_PARKINGLOCK_STATE 0x343C /// ??????????????(??????? ALARM_PARKINGLOCK_STATE_INFO) #define DH_ALARM_FIRE_DETECTION 0x343D /// ??????????????? ALARM_FIRE_DETECTION_INFO?? #define DH_ALARM_NAS_SERVER_STATE 0x343E /// NAS???????????????????(??????? ALARM_NAS_SERVER_STATE_INFO ) #define DH_ALARM_VOLUME_GROUP_FAULT 0x343F /// ??????????????(??????? ALARM_VOLUME_GROUP_FAULT_INFO) #define DH_ALARM_DISK_CHECK 0x3440 /// ????????????(??????? ALARM_DISK_CHECK_INFO) #define DH_ALARM_PHONECALL_DETECT 0x3441 /// ??????????(??????? ALARM_PHONECALL_DETECT_INFO) #define DH_ALARM_FLOATINGOBJECT_DETECTION 0x3442 /// ??????????(??????? ALARM_FLOATINGOBJECT_DETECTION_INFO) #define DH_ALARM_WATER_LEVEL_DETECTION 0x3443 /// ?????????(??????? ALARM_WATER_LEVEL_DETECTION_INFO) #define DH_ALARM_LOW_SPEED 0x3444 /// ????????????????(??????? ALARM_LOW_SPEED_INFO) #define DH_ALARM_TRAFFIC_VEHICLEINOUT 0x3445 /// ????????????????(??????? ALARM_TRAFFIC_VEHICLEINOUT_INFO) #define DH_ALARM_TRAFFIC_JUNCTION 0x3446 /// ??????????(??????? ALARM_TAFFIC_JUNCTION_INFO) #define DH_ALARM_DOOR_CONTROL 0x3447 /// ?????????????????? (??????? ALARM_DOOR_CONTROL_INFO) #define DH_ALARM_ARMSTATE 0x3448 /// ????????? (??????? ALARM_ARMSTATE_INFO) #define DH_ALARM_TICKET_INFO_REPORT 0x3449 /// ???????????? (??? ALARM_TICKET_INFO_REPORT) #define DH_ALARM_TRAFFIC_LAMP_WORK_STATE 0x344E /// ?????????????????????????????????????? (??? ALARM_TRAFFIC_LAMP_WORK_STATE_INFO) #define DH_ALARM_ENGINE_FAILURE_STATUS 0x344F /// ???????????????(??? ALARM_ENGINE_FAILURE_STATUS_INFO) #define DH_ALARM_HIGH_TOSS_DETECT 0x3450 /// ????????????(??? ALARM_HIGH_TOSS_DETECT_INFO) #define DH_ALARM_PARKING_LOT_STATUS_DETECTION 0X3451 /// ????????????????? (??????? ALARM_PARKING_LOT_STATUS_DETECTION) #define DH_ALARM_STORAGE_HEALTH_ABNORMAL 0x3452 /// ?????????????(??? ALARM_STORAGE_HEALTH_ABNORMAL_INFO) #define DH_ALARM_CLEAR_CAR 0x3453 /// ??t???????(??? ALARM_CLEAR_CAR_INFO) #define DH_ALARM_ANATOMY_TEMP_DETECT 0x3454 /// ???????????????(??????? ALARM_ANATOMY_TEMP_DETECT_INFO) #define DH_ALARM_REGULATOR_ABNORMAL 0x3455 /// ?????????????????(??????? ALARM_REGULATOR_ABNORMAL_INFO) #define DH_ALARM_DHOP_CUSTOM 0x3456 /// Dhop????????(start/stop, ??? ALARM_DHOP_CUSTOM_INFO) #define DH_ALARM_DHOP_CUSTOM_ONCE 0x3457 /// Dhop????????(pulse, ??? ALARM_DHOP_CUSTOM_INFO) #define DH_ALARM_TRAFFIC_LIGHT_STATE 0x3458 /// ???????????(??? ALARM_TRAFFIC_LIGHT_STATE_INFO) #define DH_ALARM_SWIPCARD_STATUS 0x3459 /// ???????????(??? ALARM_SWIPCARD_STATUS_INFO) #define DH_ALARM_AUDIOHOST_STATE 0x345A /// ?????????????(??? ALARM_AUDIOHOST_STATE_INFO) #define DH_ALARM_PTZ_ABNORMAL 0x345B /// ???????????????????? ALARM_PTZ_ABNORMAL_INFO?? #define DH_ALARM_STORAGEFORMAT 0x345C /// ?????????? ????????? ALARM_STORAGEFORMAT_INFO ?? #define DH_ALARM_APPCMDSTATE 0x345D /// ???????Dhop??App??? ????????? ALARM_APPCMDSTATE_INFO ?? #define DH_ALARM_BLUE_TOOTH_HEADSET_ALARM 0x345E /// ????????"???????"???(??????? ALARM_BLUE_TOOTH_HEADSET_ALARM_INFO ) #define DH_ALARM_SOLARCELL_SYSTEM_INFO 0x345F /// ?????????????????????? ALARM_SOLARCELL_SYSTEM_INFO?? #define DH_ALARM_REGION_PARKING_TIMEOUT 0x3460 /// ????????????????????? ALARM_REGION_PARKING_TIMEOUT_INFO?? #define DH_ALARM_REGION_PARKING_NO_ENTRY_RECORD 0x3461 /// ????????????????????(??????? ALARM_REGION_PARKING_NO_ENTRY_RECORD_INFO) #define DH_ALARM_OVER_LOAD 0x3462 /// ????(???????? ALARM_OVER_LOAD_INFO) #define DH_ALARM_WIRELESS_LOG_INFO 0x3463 /// ????????????????????????(??????? ALARM_WIRELESS_LOG_INFO) #define DH_ALARM_TIME_TO_POWEROFF 0x3464 /// ????????????????????????????? (??????? ALARM_TIME_TO_POWEROFF_INFO ) #define DH_ALARM_TRAFFIC_LIGHT_FAULT_STATE 0x3465 /// ??????????????(??????? ALARM_TRAFFIC_LIGHT_FAULT_INFO) #define DH_ALARM_VEHICLE_PERIPHERAL 0x3466 /// ?????????????? (??????? ALARM_VEHICLE_PERIPHERAL_INFO ) #define DH_ALARM_FIRE_LANE_DETECTION 0x3467 /// ?????????????????? ALARM_FIRE_LANE_DETECTION_INFO ?? #define DH_ALARM_FIRE_LINE_DETECTION 0x3468 /// ?????????????? (??? ALARM_FIRE_LINE_DETECTION_INFO) #define DH_ALARM_DISK_HEALTH_FAILURE 0x3469 /// ??????????? (??? ALARM_DISK_HEALTH_FAILURE_INFO) #define DH_ALARM_VEHICLE_INOUT 0x346A /// ??????????? (??? ALARM_VEHICLE_INOUT_INFO) #define DH_ALARM_REFRIGE_SHUT_DOWN 0x346B /// ?????????????????????????(??? ALARM_REFRIGE_SHUT_DOWN_INFO) #define DH_ALARM_AROUD_4G_PROBE_SEARCH 0x346C /// ?????????????? (??? ALARM_AROUD_4G_PROBE_SEARCH_INFO ) #define DH_ALARM_DISS_ASSEMBLY 0x3471 /// ???????????? ????????? ALARM_DISS_ASSEMBLY_INFO #define DH_ALARM_SLEEP_CONTROL_STATUS 0x3472 /// ????????? (??????? ALARM_SLEEP_CONTROL_STATUS_INFO ) #define DH_ALARM_REMOTE_DISASSEMBLY 0x3473 /// ??????????????? ( ??????? ALARM_REMOTE_DISASSEMBLY_INFO ) #define DH_ALARM_NONMOTOR_ENTRYING 0x3474 /// ?????????????????(??? ALARM_NONMOTOR_ENTRYING_INFO) #define DH_ALARM_SCREENSAVER 0x3475 /// ????????????????(??????? ALARM_SCREENSAVER_INFO) #define DH_ALARM_ABN_POST_DETECTION 0x3476 /// ????????????????????IPC????? (??????? ALARM_ABN_POST_DETECTION_INFO) #define DH_ALARM_CITY_MOTORPARKING 0x3477 /// ????????????????(??????? ALARM_CITY_MOTORPARKING_INFO) #define DH_ALARM_RECORD_BACKUP_FAILURE 0x3478 /// ?????????? (??????? ALARM_RECORD_BACKUP_FAILURE_INFO ) #define DH_ALARM_EMERGENCY_FILE_UPLOAD 0x3479 /// MPT??????????????????????????(??????? ALARM_EMERGENCY_FILE_UPLOAD) #define DH_ALARM_COAXIAL_HIGH_TEMPERATURE 0x347A /// ???????????(??????? ALARM_COAXIAL_HIGH_TEMPERATURE_INFO) #define DH_ALARM_COAXIAL_LOW_TEMPERATURE 0x347B /// ??????????(??????? ALARM_COAXIAL_LOW_TEMPERATURE_INFO) #define DH_ALARM_BREED_DETECTION 0x347C /// ????????????(??????? ALARM_BREED_DETECTION_INFO) #define DH_ALARM_CHANNEL_RECSHORTAGE 0x347D /// ????????????????????(??????? ALARM_CHANNEL_RECSHORTAGE_INFO) #define DH_ALARM_EMERGENCY_FILE_UPLOAD_CANCEL 0x347E /// MPT??????????????????(??????? ALARM_EMERGENCY_FILE_UPLOAD_CANCEL_INFO) #define DH_ALARM_SECURITY_INSPECTOR_OVERTIME_ON_DUTY 0x347F /// ??????????????(??????? ALARM_SECURITY_INSPECTOR_OVERTIME_ON_DUTY_INFO) #define DH_ALARM_SECURITY_INSPECTOR_NOT_CONFIRM_PACKAGE 0x3480 /// ????????????????(??????? ALARM_SECURITY_INSPECTOR_NOT_CONFIRM_PACKAGE_INFO) #define DH_ALARM_WORKSUIT_FEATURE_ABSTRACT 0x3481 /// ???????????????????????(???????ALARM_WORKSUIT_FEATURE_ABSTRACT_INFO) #define DH_ALARM_RUN_DETECTION 0x3482 /// ?????????(??????? ALARM_RUN_DETECTION_INFO) #define DH_ALARM_ANATOMY_TEMPDETECT_TO_PHONE 0x3483 /// ???????????????????????(???????ALARM_ANATOMY_TEMPDETECT_TO_PHONE_INFO) #define DH_ALARM_CHANNEL_CAPS_CHANGE 0x3484 /// ?????????????????(???????ALARM_CHANNEL_CAPS_CHANGE_INFO) #define DH_ALARM_RAIN_FALL_MSG 0x3485 /// ??????????????(??????? ALARM_RAIN_FALL_MSG_INFO) #define DH_ALARM_VEHICLE_DETENTION 0x3486 /// ???????????(???????ALARM_VEHICLE_DETENTION_INFO) #define DH_ALARM_ANIMAL_DETECTION 0x3487 /// ?????????(???????ALARM_ANIMAL_DETECTION_INFO) #define DH_ALARM_ASG_SELFCHECK 0x3488 /// ?????????(???????ALARM_ASG_SELFCHECK_INFO) #define DH_ALARM_GPS_REPORTING_PLATFORM 0x3489 /// GPS????????(???????ALARM_GPS_REPORTING_PLATFORM) #define DH_ALARM_HOSPITAL_ALARM 0x348A /// ???????????????????????????????????????????(??????? ALARM_HOSPITAL_ALARM_INFO) #define DH_ALARM_CUTLINE 0x348B /// ???????????????(??????? ALARM_CUTLINE) #define DH_ALARM_VIDEOTALK 0x348C /// ?????????(??????? ALARM_VIDEOTALK_INFO) #define DH_ALARM_PREVENT_FREE_RIDE 0x348D /// ?????????????????????(??????? ALARM_PREVENT_FREE_RIDE_INFO) #define DH_ALARM_BLIND_SPOT_DETECTION 0x348E /// ??????????(??????? ALARM_BLIND_SPOT_DETECTION_INFO) #define DH_ALARM_WATER_SPEED_DETECTION 0x348F /// ??????????(??????? ALARM_WATER_SPEED_DETECTION_INFO) #define DH_ALARM_HUMIDITY_ALARM 0x3490 /// ?????????(??????? ALARM_HUMIDITY_ALARM_INFO) #define DH_ALARM_SIP_REGISTER_RESULT 0x3491 /// ????????(??????? ALARM_SIP_REGISTER_RESULT_INFO) #define DH_ALARM_GESTURE_DETECTION 0x3492 /// ?????????(??????? ALARM_GESTURE_DETECTION_INFO) #define DH_ALARM_DEFENSE_CHANGE 0x3493 /// ?????????(??????? ALARM_DEFENSE_CHANGE_INFO) #define DH_ALARM_ABNORMAL_RESTART 0x3494 /// ????????????????????(??????? ALARM_ABNORMAL_RESTART_INFO) #define DH_ALARM_DOUBLEDOOR 0x3495 /// ????????AB?????/?????? (??????? ALARM_DOUBLEDOOR_INFO) #define DH_ALARM_OPENOUT_TIMESECTION 0x3496 /// ?????????????? (??????? ALARM_OPENOUT_TIMESECTION_INFO) #define DH_ALARM_SERVICESTART 0x3497 /// ??????? (??????? ALARM_SERVICESTART_INFO) #define DH_ALARM_WIRELESSDEV_POWERLESS 0x3498 /// ?????????P???? (??????? ALARM_WIRELESSDEV_POWERLESS_INFO) #define DH_ALARM_PUBLISHINFO_CONFIRM 0x3499 /// ????????????????????????? (??????? ALARM_PUBLISHINFO_CONFIRM_INFO) #define DH_ALARM_LEFUNCTION_STATUS_SYNC 0x349A /// App??????????????????????????(??????? ALARM_LEFUNCTION_STATUS_SYNC_INFO) #define DH_ALARM_WATER_QUALITY_DETECTION 0x349B /// ???????????(??????? ALARM_WATER_QUALITY_DETECTION_INFO) #define DH_ALARM_TRAFFIC_FLOW_QUEUE 0x349C /// ?????????????(??????? ALARM_TRAFFIC_FLOW_QUEUE_INFO) #define DH_ALARM_TRAFFIC_FLOW_JUNTION 0x349D /// ?????????????(??????? ALARM_TRAFFIC_FLOW_JUNTION_INFO) #define DH_ALARM_TRAFFIC_FLOW_VEHICLE_STOP 0x349E /// ?????????????(??????? ALARM_TRAFFIC_FLOW_VEHICLE_STOP_INFO) #define DH_ALARM_TRAFFIC_FLOW_STAT 0x349F /// ????????????????(??????? ALARM_TRAFFIC_FLOW_STAT_INFO) #define DH_ALARM_TRAFFIC_FLOW_STAT_EX 0x34A0 /// ???????????????????(??????? ALARM_TRAFFIC_FLOW_STAT_EX_INFO) #define DH_ALARM_SCREEN_DISPLAY_ALARM 0x34A1 /// ????????????????????(??????? ALARM_SCREEN_DISPLAY_ALARM_INFO) #define DH_ALARM_YE_BAO_ALARM 0x34A2 /// ????????????????(???????ALARM_YE_BAO_ALARM_INFO) #define DH_ALARM_AI_PICKUP_WORK_STATE 0x34A3 /// ??????????????????(??????? ALARM_AI_PICKUP_WORK_STATE_INFO) #define DH_ALARM_INTELLI_TYPE_CHANGE 0x34A4 /// ????????????????????(??????? ALARM_INTELLI_TYPE_CHANGE_INFO) #define DH_ALARM_TRAFFIC_CAR_PASSING 0x34A5 /// ????????????????????(??????? ALARM_TRAFFIC_CAR_PASSING_INFO) #define DH_ALARM_HUMAN_ANIMAL_COEXISTENCE 0x34A6 /// ???????????(??????? ALARM_HUMAN_ANIMAL_COEXISTENCE_INFO) #define DH_ALARM_MINIINDOOR_RADAR_ALARM 0x34A7 /// Mini????????(??????? NET_ALARM_MINIINDOOR_RADAR_ALARM_INFO) #define DH_ALARM_MEMORY_OVER_LOAD 0x34A8 /// ??????????????(??????? NET_ALARM_MEMORY_OVER_LOAD_INFO) #define DH_ALARM_CPU_OVER_LOAD 0x34A9 /// CPU???????????(??????? NET_ALARM_CPU_OVER_LOAD_INFO) #define DH_ALARM_EAS_ANTITHEFT 0x34AA /// EAS???????????(??????? NET_ALARM_EAS_ANTITHEFT ) #define DH_ALARM_EAS_TRANSMIT_COIL 0x34AB /// EAS??????????????(??????? NET_ALARM_EAS_TRANSMIT_COIL) #define DH_ALARM_EAS_RECEIVE_COIL 0x34AC /// EAS???????????(??????? NET_ALARM_EAS_RECEIVE_COIL) #define DH_ALARM_EAS_TAG_RESIDENT 0x34AD /// EAS??????????(??????? NET_ALARM_EAS_TAG_RESIDENT) #define DH_ALARM_EAS_ANTENNA_POWER_FAULT 0x34AE /// EAS????????????????(??????? NET_ALARM_EAS_ANTENNA_POWER_FAULT) #define DH_ALARM_SAFETY_ABNORMAL 0x34AF /// ??????????(??????? NET_ALARM_SAFETY_ABNORMAL_INFO) #define DH_ALARM_PARKING_SPACE_DETECTOR_STATE 0x34B0 /// ?????????????(??????? NET_ALARM_PARKING_SPACE_DETECTOR_STATE_INFO) #define DH_ALARM_REQUEST_IDLE_MODE 0x34B1 /// ????????????????(??????? NET_ALARM_REQUEST_IDLE_MODE) #define DH_ALARM_FORCE_INTO_IDLE_MODE 0x34B2 /// ??????????????(??????? NET_ALARM_FORCE_INTO_IDLE_MODE) #define DH_ALARM_REMOTE_APPROVAL 0x34B3 /// ??????????????(??????? NET_ALARM_REMOTE_APPROVAL_INFO) #define DH_ALARM_DYNAMIC_PWDLOCK_FOR_INIT 0x34B4 /// ??????????????????????(??????? NET_ALARM_DYNAMIC_PWDLOCK_FOR_INIT_INFO) #define DH_ALARM_DYNAMIC_PWDLOCK_UPLOAD_RANDOMCODE 0x34B5 /// ?????????????????(??????? NET_ALARM_DYNAMIC_LOCK_UPLOAD_RANDOMCODE_INFO) #define DH_ALARM_DYNAMIC_PWDLOCK_FOR_OPEN 0x34B6 /// ?????????????????????(??????? NET_ALARM_DYNAMIC_PWDLOCK_FOR_OPEN_INFO) #define DH_ALARM_DYNAMIC_PWDLOCK_CLOSE 0x34B7 /// ?????????????(??????? NET_ALARM_DYNAMIC_PWDLOCK_CLOSE_INFO) #define DH_ALARM_SYNCUSER_INFO 0x34B8 /// ???????????????????????(??? NET_ALARM_SYNCUSER_INFO) #define DH_ALARM_GAS_TANK_DETECTION 0x34B9 /// ???????????(??????? NET_ALARM_GAS_TANK_DETECTION_INFO) #define DH_ALARM_LOSS_FRAME_ALARM 0x34BA /// ???????????(??????? NET_ALARM_LOSS_FRAME_ALARM_INFO) #define DH_ALARM_INTELLI_MODULE_HIGH_TEMP 0x34BB /// ???????????????(??????? NET_ALARM_INTELLI_MODULE_HIGH_TEMP_INFO) #define DH_ALARM_INTELLI_MODULE_OFFLINE 0x34BC /// ?????????????(??????? NET_ALARM_INTELLI_MODULE_OFFLINE_INFO) #define DH_ALARM_SSD_HEALTH_FAILURE 0x34BD /// SSD???????????(??????? NET_ALARM_SSD_HEALTH_FAILURE_INFO) #define DH_ALARM_ABNORMALLOGIN 0x34BE /// ????????(??????? NET_ALARM_ABNORMALLOGIN_INFO) #define DH_ALARM_INTELLITRACK_EVENT 0x34BF /// PTZ??????(??????? NET_ALARM_INTELLITRACK_EVENT_INFO) #define DH_ALARM_RF_JAMMING 0x34C0 /// RF???????(??????? NET_ALARM_RF_JAMMING_INFO) #define DH_ALARM_ARMING_FAILURE 0x34C1 /// ??????????(??????? NET_ALARM_ARMING_FAILURE_INFO) #define DH_ALARM_USER_MODIFIED 0x34C2 /// ???????????(?????????????)???(??????? NET_ALARM_USER_MODIFIED_INFO) #define DH_ALARM_MANUAL_TEST 0x34C3 /// ??????????(??????? NET_ALARM_MANUAL_TEST_INFO) #define DH_ALARM_DEVICE_MODIFIED 0x34C4 /// ?????????(?????????????)???(??????? NET_ALARM_DEVICE_MODIFIED_INFO) #define DH_ALARM_ATS_FAULT 0x34C5 /// ?????????????????(??????? NET_ALARM_ATS_FAULT_INFO) #define DH_ALARM_ARC_OFFLINE 0x34C6 /// ???????????????????(??????? NET_ALARM_ARC_OFFLINE_INFO) #define DH_ALARM_WIFI_FAILURE 0x34C7 /// wifi???????(??????? NET_ALARM_WIFI_FAILURE_INFO) #define DH_ALARM_OVER_TEMPERATURE 0x34C8 /// ???????????(??????? NET_ALARM_OVER_TEMPERATURE_INFO) #define DH_ALARM_TRAFFIC_ROADALERT 0x34C9 /// ?????????????(??????? NET_ALARM_TRAFFIC_ROADALERT_INFO) #define DH_ALARM_TRAFFIC_CROSSLANE 0x34CA /// ??????????(??????? NET_ALARM_TRAFFIC_CROSSLANE_INFO) #define DH_ALARM_TRAFFIC_OVERYELLOWLINE 0x34CB /// ??????(??????? NET_ALARM_TRAFFIC_OVERYELLOWLINE_INFO) #define DH_ALARM_TRAFFIC_ACCIDENT 0x34CC /// ?????????(??????? NET_ALARM_TRAFFIC_ACCIDENT_INFO) #define DH_ALARM_TRAFFIC_ROADBLOCK 0x34CD /// ????????????(??????? NET_ALARM_TRAFFIC_ROADBLOCK_INFO) #define DH_ALARM_TRAFFIC_ROADCONSTRUCTION 0x34CE /// ????????????????(??????? NET_ALARM_TRAFFIC_ROADCONSTRUCTION_INFO) #define DH_ALARM_TRAFFIC_CARDISTANCESHORT 0x34CF /// ???????????????(??????? NET_ALARM_TRAFFIC_CARDISTANCESHORT_INFO) #define DH_ALARM_TRAFFIC_VEHICLERACING 0x34D0 /// ?????(??????? NET_ALARM_TRAFFIC_VEHICLERACING_INFO) #define DH_ALARM_STORAGE_OVERLOAD 0x34D1 /// ??????????(??????? NET_ALARM_STORAGE_OVERLOAD_INFO) #define DH_ALARM_ZONE_MODE_CHANGE 0x34D2 /// ????????????(??????? NET_ALARM_ZONE_MODE_CHANGE_INFO) #define DH_ALARM_PSTN_PERIODIC_TEST 0x34D3 /// PSTN??????????(??????? NET_ALARM_PSTN_PERIODIC_TEST_INFO) #define DH_ALARM_TALKING_PHONE_CALLING 0x34D4 /// ??????????(???????NET_ALARM_TALKING_PHONE_CALLING_INFO) #define DH_ALARM_NO_PASSAGE 0x34D5 /// ??????????????(??????? NET_ALARM_NO_PASSAGE_INFO) #define DH_ALARM_HOSPITAL_TALK_CONTROL 0x34D6 /// ????????????(??????? NET_ALARM_HOSPITAL_TALK_CONTROL_INFO) #define DH_ALARM_BLUETOOTH_EVENT 0x34D7 /// ???????????????????(??????? NET_ALARM_BLUETOOTH_INFO) #define DH_ALARM_SENSITIVE_WORDS 0x34D8 /// ????????????(??????? NET_ALARM_SENSITIVE_WORDS_INFO) #define DH_ALARM_DISK_NUMBER_CHANGE 0x34D9 /// ?????????????????(??????? NET_ALARM_DISK_NUMBER_CHANGE_INFO) #define DH_ALARM_SMOKING_DETECT 0x34DA /// ???????????(??????? NET_ALARM_SMOKING_DETECT_INFO) #define DH_ALARM_SITE_OVERTIME_ALARM 0x34DB /// ????????(??????? NET_ALARM_SITE_OVERTIME_ALARM_INFO) #define DH_ALARM_SMART_SOUND_DETECT 0x34DC /// ??????????????(??? NET_ALARM_SMART_SOUND_DETECT_INFO) #define DH_ALARM_REQ_WORK_TIME_CALC 0x34DD /// ?????????????(??? NET_ALARM_REQ_WORK_TIME_CALC_INFO) #define DH_ALARM_XRAY_EMERGENCY_ALARM 0x34DE /// X?????????????(??? NET_ALARM_XRAY_EMERGENCY_ALARM_INFO) #define DH_ALARM_SPECIAL_FILE_DELAY_UPLOAD 0x34DF /// ????????????????(??? NET_ALARM_SPECIAL_FILE_DELAY_UPLOAD_INFO) #define DH_ALARM_DOOR_STATE_DETECTION 0x34E0 /// ???????????(??? NET_ALARM_DOOR_STATE_DETECTION_INFO) #define DH_ALARM_WORK_CHECK 0x34E1 /// ?????????(??? NET_ALARM_WORK_CHECK_INFO) #define DH_ALARM_PERSON_PECCANCY 0x34E2 /// ??????????(??? NET_ALARM_PERSON_PECCANCY_INFO) #define DH_ALARM_TRAPPED_IN_LIFT_DETECTION 0x34E3 /// ??????????(??? NET_ALARM_TRAPPED_IN_LIFT_DETECTION_INFO) #define DH_ALARM_SCHOOL_BUS_SWIPE_CARD 0x34E5 /// ??????????(??? NET_ALARM_SCHOOL_BUS_SWIPE_CARD_INFO) #define DH_ALARM_CHANNEL_INFO_CHANGE 0x34E6 /// ????????????(??????? NET_ALARM_CHANNEL_INFO_CHANGE_INFO) #define DH_ALARM_VEHICLE_TRIGGER_MODE 0x34E7 /// ?????????(??????? NET_ALARM_VEHICLE_TRIGGER_MODE_INFO) #define DH_ALARM_POLICE_VEHICLE_DATA_PUSH 0x34E8 /// ????app???????????(??????? NET_ALARM_POLICE_VEHICLE_DATA_PUSH_INFO) #define DH_ALARM_INSUFFICIENT_QUOTA_PERFORMANCE 0x34E9 /// ????????????????(??????? NET_ALARM_INSUFFICIENT_QUOTA_PERFORMANCE_INFO) #define DH_ALARM_STORAGE_HEALTH_ALARM 0x34EA /// SSD???????????(??????? NET_ALARM_STORAGE_HEALTH_ALARM_INFO) /// ??????? #define DH_ALARM_RTSC_PHASE_RUNING 0x5001 /// RTSC?????????(???ALARM_RTSC_PHASE_RUNNING_INFO) #define DH_ALARM_RTSC_LAMP_RUNING 0x5002 /// RTSC????????(???ALARM_RTSC_LAMP_RUNNING_INFO) #define DH_ALARM_RTSC_RUNING 0x5003 /// ???????????(???ALARM_RTSC_RUNNING_INFO) #define DH_ALARM_RTSC_TRAFFIC 0x5004 /// ?????????????(???ALARM_RTSC_TRAFFIC_INFO) /// ??????????? #define DH_ALARM_HY_FIRE_DETECTION 0x6001 /// ??????????????(???ALARM_HY_FIRE_DETECTION_INFO) #define DH_ALARM_HY_SMOG_DETECTION 0x6002 /// ????????????????(???ALARM_HY_SMOG_DETECTION_INFO) #define DH_ALARM_HY_INFIRE_PASSAGE_DETECTION 0x6003 /// ???????????????????(???ALARM_HY_INFIRE_PASSAGE_DETECTION_INFO) #define DH_ALARM_HY_OUTFIRE_PASSAGE_DETECTION 0x6004 /// ??????????????????/???????????????(???ALARM_HY_OUTFIRE_PASSAGE_DETECTION_INFO) #define DH_ALARM_HY_MAN_LEAVING_DETECTION 0x6005 /// ?????????????????????(???ALARM_HY_MAN_LEAVING_DETECTION_INFO) #define DH_ALARM_HY_FIRE_CONTROL_OFFLINE_FAULT 0x6006 /// ??????????????(???ALARM_HY_FIRE_CONTROL_OFFLINE_FAULT_INFO) #define DH_ALARM_HY_FIRE_CONTROL_SENSOR_FAULT 0x6007 /// ?????????????????(???ALARM_HY_FIRE_CONTROL_SENSOR_FAULT_INFO) #define DH_ALARM_HY_FIRE_CONTROL_DISMANTLE_FAULT 0x6008 /// ?????????????(???ALARM_HY_FIRE_CONTROL_DISMANTLE_FAULT_INFO) /// ??????????? #define DH_ALARM_XRAY_PIP_COMMUNICATION_ABNORMITY 0x7001 /// X????????????????(???????ALARM_XRAY_PIP_COMMUNICATION_ABNORMITY_INFO) #define DH_ALARM_XRAY_ACQUISITION_SYSTEM_ABNORMITY 0x7002 /// X??????????????????(???????ALARM_XRAY_ACQUISITION_SYSTEM_ABNORMITY_INFO) #define DH_ALARM_XRAY_EMERGENCY_STOP 0x7003 /// X????????????(???????ALARM_XRAY_EMERGENCY_STOP_INFO) #define DH_ALARM_XRAY_DETECTOR_PROTECTION_OPEN 0x7004 /// X??????????????????????(???????ALARM_XRAY_DETECTOR_PROTECTION_OPEN_INFO) #define DH_ALARM_XRAY_MACHINE_SHELL_OPEN 0x7005 /// X???????????(???????ALARM_XRAY_MACHINE_SHELL_OPEN_INFO) #define DH_ALARM_XRAY_KEYBOARD_ABNORMITY 0x7006 /// X???????????????????(???????ALARM_XRAY_KEYBOARD_ABNORMITY_INFO) #define DH_ALARM_XRAY_TRANSMISSION_BELT_ABNORMITY 0x7007 /// X????????????????(???????ALARM_XRAY_TRANSMISSION_BELT_ABNORMITY_INFO) #define DH_ALARM_POWER_GROUND_DETECTION_ABNORMAL 0x7008 /// X??????????????(???????ALARM_POWER_GROUND_DETECTION_ABNORMAL_INFO) #define DH_ALARM_XRAY_SOURCE_ABNORMITY 0x7009 /// X???X????????????????(???????ALARM_XRAY_SOURCE_ABNORMITY_INFO) ///@brief MACRO_GROUP_ALARM_EX_1_END ///@brief MACRO_GROUP_UPLOAD_ALARM_7_BEGIN /// ???????????????????,???CLIENT_StartService????NEW_ALARM_UPLOAD????. #define DH_UPLOAD_ALARM 0x4000 /// ?????? #define DH_UPLOAD_MOTION_ALARM 0x4001 /// ???????? #define DH_UPLOAD_VIDEOLOST_ALARM 0x4002 /// ?????????? #define DH_UPLOAD_SHELTER_ALARM 0x4003 /// ?????????? #define DH_UPLOAD_SOUND_DETECT_ALARM 0x4004 /// ???????? #define DH_UPLOAD_DISKFULL_ALARM 0x4005 /// ????????? #define DH_UPLOAD_DISKERROR_ALARM 0x4006 /// ???????? #define DH_UPLOAD_ENCODER_ALARM 0x4007 /// ?????????? #define DH_UPLOAD_DECODER_ALARM 0x400B /// ?????????????? #define DH_UPLOAD_EVENT 0x400C /// ???????? #define DH_UPLOAD_IVS 0x400D /// ???????, ???????ALARM_UPLOAD_IVS_INFO #define DH_UPLOAD_SMOKESENSOR_ALARM 0x400E /// ???????, ???????ALARM_UPLOAD_SMOKESENSOR_INFO #define DH_UPLOAD_ALARM_EX 0x400F /// ?????????,??????? ALARM_UPLOAD_ALARMEX_INFO #define DH_UPLOAD_REMOTE_LOGIN_FAILD_ALARM 0x4010 /// ???????????, ??????? ALARM_UPLOAD_LOGIN_FAILED_INFO #define DH_UPLOAD_CUSTOM 0x4011 /// ???????????????,pParam:??????????,dwParamLen:?????????? #define DH_UPLOAD_FRONTDISCONNECT_ALARM 0x4012 /// ??????????, ??????? NEW_ALARM_UPLOAD #define DH_UPLOAD_ALARM_IPC 0x4013 /// IPC??????, ??????? NEW_ALARM_UPLOAD #define DH_UPLOAD_NET_ALARM 0x4014 /// ????d??????(???????,??????????????????????), ??????? NEW_ALARM_UPLOAD #define DH_UPLOAD_ALARM_RAID 0x4015 /// Raid?????, ??????? NEW_ALARM_UPLOAD #define DH_UPLOAD_SCENE_CHANGE 0x4016 /// ???????, ??????? NEW_ALARM_UPLOAD #define DH_UPLOAD_PIRDETECTION 0x4017 /// pir ????????, ???????ALARM_UPLOAD_PIRDETECTION_INFO #define DH_UPLOAD_PIRTAMPER 0x4018 /// pir ????????, ???????ALARM_UPLOAD_PIRTAMPER_INFO #define DH_UPLOAD_PIRCLOAK 0x4019 /// pir ??????????????, ??????? ALARM_UPLOAD_PIRCLOAK_INFO #define DH_UPLOAD_PIRSHOCK 0x401A /// pir ????????, ???????ALARM_UPLOAD_PIRSHOCK_INFO #define DH_UPLOAD_PIRFAILURE 0x401B /// pir ????????????????, ???????ALARM_UPLOAD_PIRFAILURE_INFO #define DH_UPLOAD_PIRBATTERYLOW 0x401C /// pir ??????????????, ???????ALARM_UPLOAD_PIRBATTERYLOW_INFO #define DH_UPLOAD_PIRMISSINGCALL 0x401D /// pir ????????????, ???????ALARM_UPLOAD_PIRMISSINGCALL_INFO #define DH_UPLOAD_VIDEO_UNFOCUS 0x401E /// ?????????, ???????ALARM_UPLOAD_VIDEO_UNFOCUS_INFO #define DH_UPLOAD_ALARMPIR 0x401F /// PIR???????, ???????ALARM_UPLOAD_ALARMPIR_INFO #define DH_UPLOAD_ALARM_EX2 0x4020 /// ??????????, ??????? ALARM_ALARM_INFO_EX2 #define DH_UPLOAD_BYPASSMODE_CHANGE_EVENT 0x4021 /// ????????????, ???????ALARM_BYPASSMODE_CHANGE_INFO #define DH_UPLOAD_CHASSISINTRUDED 0x4022 /// ????????(????)???????, ???????ALARM_CHASSISINTRUDED_INFO #define DH_UPLOAD_RCEMERGENCY_CALL 0x4023 /// ???????????????, ??????? ALARM_RCEMERGENCY_CALL_INFO #define DH_UPLOAD_ARMMODE_CHANGE_EVENT 0x4024 /// ??????????????, ???????ALARM_ARMMODE_CHANGE_INFO #define DH_UPLOAD_SUBSYSTEM_ARMMODE_CHANGE 0x4025 /// ??????????????????, ??????? ALARM_SUBSYSTEM_ARMMODECHANGE_INFO #define DH_UPLOAD_DEFENCE_ARMMODE_CHANGE 0x4026 /// ??????????????????, ??????? ALARM_DEFENCE_ARMMODECHANGE_INFO #define DH_UPLOAD_POWERFAULT 0x4027 /// ??????????, ???????ALARM_POWERFAULT_INFO #define DH_UPLOAD_HEARTBEAT_ALARM 0x4028 /// ????????,???????ALARM_UPLOAD_HEARTBEAT_INFO #define DH_UPLOAD_ONLINE_ALARM 0x4029 /// ???????,???????ALARM_UPLOAD_ONLINE_INFO #define DH_UPLOAD_KEYPAD_TAMPER 0x402A /// ??????????,???????ALARM_UPLOAD_KEYPAD_TAMPER_INFO #define DH_UPLOAD_PROGRAM_MODE 0x402B /// ???????????/???????????,???????ALARM_UPLOAD_PROGRAM_MODE_INFO #define DH_UPLOAD_PSTN_PERIODIC_TEST 0x402C /// PSTN??????????,???????ALARM_UPLOAD_PSTN_PERIODIC_TEST_INFO #define DH_UPLOAD_PROFILE_ALARM_TRANSMIT 0x402D /// ???????????, ??????? ALARM_UPLOAD_PROFILE_ALARM_TRANSMIT_INFO #define DH_UPLOAD_USER_LOCK 0x402E /// ?????????????, ??????? ALARM_UPLOAD_USER_LOCK_INFO ///@brief MACRO_GROUP_UPLOAD_ALARM_7_END ///@brief MACRO_GROUP_ALARM_BUS_8_BEGIN /// ????Bus???????????(CLIENT_AttachBusState) #define DH_ALARM_BUS_DRIVER_CHECK 0x0001 /// ?????????(??????? ALARM_BUS_DRIVER_CHECK_INFO) #define DH_ALARM_BUS_IMPORT_SITE 0x0002 /// ??????(??????? ALARM_BUS_IMPORT_SITE_INFO) #define DH_ALARM_BUS_EXPORT_SITE 0x0003 /// ??????(??????? ALARM_BUS_EXPORT_SITE_INFO) #define DH_ALARM_BUS_ABNORMAL 0x0004 /// ?????????(??????? ALARM_BUS_ABNORMAL_INFO) #define DH_ALARM_BUS_DOOR_OPEN 0x0005 /// ????????(??????? ALARM_VEHICLE_DOOR_OPEN_INFO) #define DH_ALARM_BUS_CUR_MILEAGE 0x0006 /// ?????????(??????? ALARM_BUS_CUR_MILEAGE_INFO) #define DH_ALARM_BUS_CUR_OIL 0x0007 /// ????????????(??????? ALARM_BUS_CUR_OIL_INFO) #define DH_ALARM_BUS_LOW_OIL 0x0008 /// ?????????????(??????? ALARM_BUS_LOW_OIL_INFO) #define DH_ALARM_BUS_PASSENGER_CARD_CHECK 0x0009 /// ?????????(??????? ALARM_PASSENGER_CARD_CHECK ) #define DH_ALARM_BUS_VEHICLE_STANDING_OVER_TIME 0x000a /// ?????????(??????? ALARM_VEHICLE_STANDING_OVER_TIME_INFO ) #define DH_ALARM_BUS_DRIVE_AFTER_WORK 0x000b /// ???????????(??????? ALARM_DVRIVE_AFTER_WORK ) #define DH_ALARM_BUS_PAD_SHUTDOWN 0x000c /// PAD??????, DVR???PadShutdown???, PAD??????????????(??????? ALARM_BUS_PAD_SHUTDOWN_INFO) #define DH_ALARM_BUS_TIRED_DRIVE_CHECK 0x000d /// ????????(??????? ALARM_TIRED_DRIVE_CHECK_INFO ) #define DH_ALARM_BUS_STEAL_OIL 0x000e /// ??????(??????? ALARM_BUS_STEAL_OIL_INFO) #define DH_ALARM_BUS_CIRCUIT_SHIFT 0x000f /// ??????????(??????? ALARM_BUS_CIRCUIT_SHIFT_INFO) #define DH_ALARM_BUS_ROUTE_OVERTIME 0x0010 /// ??????????(??????? ALARM_BUS_ROUTE_OVERTIME_INFO) #define DH_ALARM_BUS_VEHICLE_CARRY_ALARM 0x0011 /// ??????????(??????? ALARM_BUS_VEHICLE_CARRY_ALARM_INFO) #define DH_ALARM_BUS_VEHICLE_PAULIN_ALARM 0x0012 /// ????????(??????? ALARM_BUS_VEHICLE_PAULIN_ALARM_INFO) #define DH_ALARM_BUS_VEHICLE_LIFT_ALARM 0x0013 /// ???????????(??????? ALARM_BUS_VEHICLE_LIFT_ALARM_INFO) #define DH_ALARM_BUS_FIRE_PRESSURE_ALARM 0x0014 /// ????????????????????(??????? ALARM_BUS_FIRE_PRESSURE_ALARM_INFO) #define DH_ALARM_BUS_ADD_OIL 0x0015 /// ?????????????(??? NET_ALARM_BUS_ADD_OIL_INFO) ///@brief MACRO_GROUP_ALARM_BUS_8_END ///@brief MACRO_GROUP_RESPONSE_ASYN_9_BEGIN /// ??????????? #define RESPONSE_DECODER_CTRL_TV 0x00000001 /// ???CLIENT_CtrlDecTVScreen??? #define RESPONSE_DECODER_SWITCH_TV 0x00000002 /// ???CLIENT_SwitchDecTVEncoder??? #define RESPONSE_DECODER_PLAYBACK 0x00000003 /// ???CLIENT_DecTVPlayback??? #define RESPONSE_EXCHANGE_DATA 0x00000004 /// ???CLIENT_ExchangeData??? #define RESPONSE_ASYN_QUERY_RECORDFILE 0x00000005 /// ???CLIENT_StartQueryRecordFile??? ///@brief MACRO_GROUP_RESPONSE_ASYN_9_END ///@brief MACRO_GROUP_FILE_TRANSMIT_10_BEGIN /// CLIENT_FileTransmit????????????? #define DH_DEV_UPGRADEFILETRANS_START 0x0000 /// ?????????????(??????? DHDEV_UPGRADE_FILE_INFO) #define DH_DEV_UPGRADEFILETRANS_SEND 0x0001 /// ??????????? #define DH_DEV_UPGRADEFILETRANS_STOP 0x0002 /// ????????????? #define DH_DEV_BLACKWHITETRANS_START 0x0003 /// ?????????/????????(??????? DHDEV_BLACKWHITE_LIST_INFO) #define DH_DEV_BLACKWHITETRANS_SEND 0x0004 /// ??????/???????? #define DH_DEV_BLACKWHITETRANS_STOP 0x0005 /// ????????/???????? #define DH_DEV_BLACKWHITE_LOAD 0x0006 /// ??????/????????(???????DHDEV_LOAD_BLACKWHITE_LIST_INFO) #define DH_DEV_BLACKWHITE_LOAD_STOP 0x0007 /// ????????/???????? #define DH_DEV_FILETRANS_STOP 0x002B /// ???????? #define DH_DEV_FILETRANS_BURN 0x002C /// ????????? ///@brief MACRO_GROUP_FILE_TRANSMIT_10_END ///@brief MACRO_GROUP_CAPTURE_SIZE_11_BEGIN /// ?????????,???????????????????????? #define DH_CAPTURE_SIZE_D1 0x00000001 #define DH_CAPTURE_SIZE_HD1 0x00000002 #define DH_CAPTURE_SIZE_BCIF 0x00000004 #define DH_CAPTURE_SIZE_CIF 0x00000008 #define DH_CAPTURE_SIZE_QCIF 0x00000010 #define DH_CAPTURE_SIZE_VGA 0x00000020 #define DH_CAPTURE_SIZE_QVGA 0x00000040 #define DH_CAPTURE_SIZE_SVCD 0x00000080 #define DH_CAPTURE_SIZE_QQVGA 0x00000100 #define DH_CAPTURE_SIZE_SVGA 0x00000200 #define DH_CAPTURE_SIZE_XVGA 0x00000400 #define DH_CAPTURE_SIZE_WXGA 0x00000800 #define DH_CAPTURE_SIZE_SXGA 0x00001000 #define DH_CAPTURE_SIZE_WSXGA 0x00002000 #define DH_CAPTURE_SIZE_UXGA 0x00004000 #define DH_CAPTURE_SIZE_WUXGA 0x00008000 #define DH_CAPTURE_SIZE_LFT 0x00010000 #define DH_CAPTURE_SIZE_720 0x00020000 #define DH_CAPTURE_SIZE_1080 0x00040000 #define DH_CAPTURE_SIZE_1_3M 0x00080000 #define DH_CAPTURE_SIZE_2M 0x00100000 #define DH_CAPTURE_SIZE_5M 0x00200000 #define DH_CAPTURE_SIZE_3M 0x00400000 #define DH_CAPTURE_SIZE_5_0M 0x00800000 #define DH_CPTRUTE_SIZE_1_2M 0x01000000 #define DH_CPTRUTE_SIZE_1408_1024 0x02000000 #define DH_CPTRUTE_SIZE_8M 0x04000000 #define DH_CPTRUTE_SIZE_2560_1920 0x08000000 #define DH_CAPTURE_SIZE_960H 0x10000000 #define DH_CAPTURE_SIZE_960_720 0x20000000 ///@brief MACRO_GROUP_CAPTURE_SIZE_11_END ///@brief MACRO_GROUP_CAPTURE_COMP_12_BEGIN /// ??????????,????????????????????????? #define DH_CAPTURE_COMP_DIVX_MPEG4 0x00000001 #define DH_CAPTURE_COMP_MS_MPEG4 0x00000002 #define DH_CAPTURE_COMP_MPEG2 0x00000004 #define DH_CAPTURE_COMP_MPEG1 0x00000008 #define DH_CAPTURE_COMP_H263 0x00000010 #define DH_CAPTURE_COMP_MJPG 0x00000020 #define DH_CAPTURE_COMP_FCC_MPEG4 0x00000040 #define DH_CAPTURE_COMP_H264 0x00000080 #define DH_CAPTURE_COMP_H265 0x00000100 #define DH_CAPTURE_COMP_SVAC 0x00000200 ///@brief MACRO_GROUP_CAPTURE_COMP_12_END ///@brief MACRO_GROUP_ALARM_LINKAGE_ACTION_13_BEGIN /// ????????????,?????????????????????????????? #define DH_ALARM_UPLOAD 0x00000001 #define DH_ALARM_RECORD 0x00000002 #define DH_ALARM_PTZ 0x00000004 #define DH_ALARM_MAIL 0x00000008 #define DH_ALARM_TOUR 0x00000010 #define DH_ALARM_TIP 0x00000020 #define DH_ALARM_OUT 0x00000040 #define DH_ALARM_FTP_UL 0x00000080 #define DH_ALARM_BEEP 0x00000100 #define DH_ALARM_VOICE 0x00000200 #define DH_ALARM_SNAP 0x00000400 ///@brief MACRO_GROUP_ALARM_LINKAGE_ACTION_13_END ///@brief MACRO_GROUP_ALARM_RESTORE_14_BEGIN /// "??????????"????,????????????, ???CLIENT_ControlDevice????DH_CTRL_RESTOREDEFAULT #define DH_RESTORE_COMMON 0x00000001 /// ??????? #define DH_RESTORE_CODING 0x00000002 /// ???????? #define DH_RESTORE_VIDEO 0x00000004 /// ??????? #define DH_RESTORE_COMM 0x00000008 /// ???????? #define DH_RESTORE_NETWORK 0x00000010 /// ???????? #define DH_RESTORE_ALARM 0x00000020 /// ???????? #define DH_RESTORE_VIDEODETECT 0x00000040 /// ?????? #define DH_RESTORE_PTZ 0x00000080 /// ??????? #define DH_RESTORE_OUTPUTMODE 0x00000100 /// ????? #define DH_RESTORE_CHANNELNAME 0x00000200 /// ??????? #define DH_RESTORE_VIDEOINOPTIONS 0x00000400 /// ????????? #define DH_RESTORE_CPS 0x00000800 /// ?????? #define DH_RESTORE_INTELLIGENT 0x00001000 /// ??????? #define DH_RESTORE_REMOTEDEVICE 0x00002000 /// ?????????? #define DH_RESTORE_DECODERVIDEOOUT 0x00004000 /// ??????? #define DH_RESTORE_LINKMODE 0x00008000 /// ?????? #define DH_RESTORE_COMPOSITE 0x00010000 /// ????? #define DH_RESTORE_ALL 0x80000000 /// ??????? ///@brief MACRO_GROUP_ALARM_RESTORE_14_END ///@brief MACRO_GROUP_PTZ_LOW_BYTE_15_BEGIN /// ???????????--???????????? #define PTZ_DIRECTION 0x00000001 /// ???? #define PTZ_ZOOM 0x00000002 /// ?? #define PTZ_FOCUS 0x00000004 /// ??? #define PTZ_IRIS 0x00000008 /// ??? #define PTZ_ALARM 0x00000010 /// ???????? #define PTZ_LIGHT 0x00000020 /// ??? #define PTZ_SETPRESET 0x00000040 /// ???????? #define PTZ_CLEARPRESET 0x00000080 /// ??????? #define PTZ_GOTOPRESET 0x00000100 /// ??????? #define PTZ_AUTOPANON 0x00000200 /// ????? #define PTZ_AUTOPANOFF 0x00000400 /// ?????? #define PTZ_SETLIMIT 0x00000800 /// ?????? #define PTZ_AUTOSCANON 0x00001000 /// ???????? #define PTZ_AUTOSCANOFF 0x00002000 /// ????????? #define PTZ_ADDTOUR 0x00004000 /// ????????? #define PTZ_DELETETOUR 0x00008000 /// ???????? #define PTZ_STARTTOUR 0x00010000 /// ?????? #define PTZ_STOPTOUR 0x00020000 /// ??????? #define PTZ_CLEARTOUR 0x00040000 /// ?????? #define PTZ_SETPATTERN 0x00080000 /// ?????? #define PTZ_STARTPATTERN 0x00100000 /// ????? #define PTZ_STOPPATTERN 0x00200000 /// ???? #define PTZ_CLEARPATTERN 0x00400000 /// ????? #define PTZ_POSITION 0x00800000 /// ??????? #define PTZ_AUX 0x01000000 /// ???????? #define PTZ_MENU 0x02000000 /// ?????? #define PTZ_EXIT 0x04000000 /// ????????? #define PTZ_ENTER 0x08000000 /// ??? #define PTZ_ESC 0x10000000 /// ??? #define PTZ_MENUUPDOWN 0x20000000 /// ?????????? #define PTZ_MENULEFTRIGHT 0x40000000 /// ?????????? #define PTZ_OPT_NUM 0x80000000 /// ????????? ///@brief MACRO_GROUP_PTZ_LOW_BYTE_15_END ///@brief MACRO_GROUP_PTZ_HIGH_BYTE_16_BEGIN /// ???????????? #define PTZ_DEV 0x00000001 /// ??????? #define PTZ_MATRIX 0x00000002 /// ??????? ///@brief MACRO_GROUP_PTZ_HIGH_BYTE_16_END ///@brief MACRO_GROUP_CODETYPE_17_BEGIN /// ????????????? #define CODETYPE_MPEG4 0 #define CODETYPE_H264 1 #define CODETYPE_JPG 2 ///@brief MACRO_GROUP_CODETYPE_17_END ///@brief MACRO_GROUP_CAPTURE_BRC_18_BEGIN /// ???????????? #define DH_CAPTURE_BRC_CBR 0 #define DH_CAPTURE_BRC_VBR 1 ///@brief MACRO_GROUP_CAPTURE_BRC_18_END ///@brief MACRO_GROUP_FRAME_TYPE_19_BEGIN /// ??????????? #define FRAME_TYPE_MOTION 0x00000001 /// ????? #define FRAME_TYPE_HUMAN 0x00000002 /// ?????(??) #define FRAME_TYPE_VEHICLE 0x00000004 /// ?????(??) ///@brief MACRO_GROUP_FRAME_TYPE_19_END ///@brief MACRO_GROUP_EVENT_IVS_2_BEGIN /// ?????????????? #define EVENT_IVS_ALL 0x00000001 /// ??????????? #define EVENT_IVS_CROSSLINEDETECTION 0x00000002 /// ???????????(??? DEV_EVENT_CROSSLINE_INFO) #define EVENT_IVS_CROSSREGIONDETECTION 0x00000003 /// ???????????(??? DEV_EVENT_CROSSREGION_INFO) #define EVENT_IVS_PASTEDETECTION 0x00000004 /// ???????(??? DEV_EVENT_PASTE_INFO) #define EVENT_IVS_LEFTDETECTION 0x00000005 /// ??????????(??? DEV_EVENT_LEFT_INFO) #define EVENT_IVS_STAYDETECTION 0x00000006 /// ??????(??? DEV_EVENT_STAY_INFO) #define EVENT_IVS_WANDERDETECTION 0x00000007 /// ??????(??? DEV_EVENT_WANDER_INFO) #define EVENT_IVS_PRESERVATION 0x00000008 /// ?????????(??? DEV_EVENT_PRESERVATION_INFO) #define EVENT_IVS_MOVEDETECTION 0x00000009 /// ??????(??? DEV_EVENT_MOVE_INFO) #define EVENT_IVS_TAILDETECTION 0x0000000A /// ???????(??? DEV_EVENT_TAIL_INFO) #define EVENT_IVS_RIOTERDETECTION 0x0000000B /// ???????(??? DEV_EVENT_RIOTERL_INFO) #define EVENT_IVS_FIREDETECTION 0x0000000C /// ?????(??? DEV_EVENT_FIRE_INFO) #define EVENT_IVS_SMOKEDETECTION 0x0000000D /// ???????????(??? DEV_EVENT_SMOKE_INFO) #define EVENT_IVS_FIGHTDETECTION 0x0000000E /// ??????(??? DEV_EVENT_FIGHT_INFO) #define EVENT_IVS_FLOWSTAT 0x0000000F /// ??????????(??? DEV_EVENT_FLOWSTAT_INFO) #define EVENT_IVS_NUMBERSTAT 0x00000010 /// ??????????(??? DEV_EVENT_NUMBERSTAT_INFO) #define EVENT_IVS_CAMERACOVERDDETECTION 0x00000011 /// ????????????(????) #define EVENT_IVS_CAMERAMOVEDDETECTION 0x00000012 /// ???????????(????) #define EVENT_IVS_VIDEOABNORMALDETECTION 0x00000013 /// ????????(??? DEV_EVENT_VIDEOABNORMALDETECTION_INFO) #define EVENT_IVS_VIDEOBADDETECTION 0x00000014 /// ????????(????) #define EVENT_IVS_TRAFFICCONTROL 0x00000015 /// ??????????(??? DEV_EVENT_TRAFFICCONTROL_INFO) #define EVENT_IVS_TRAFFICACCIDENT 0x00000016 /// ?????????(??? DEV_EVENT_TRAFFICACCIDENT_INFO) #define EVENT_IVS_TRAFFICJUNCTION 0x00000017 /// ??????????----?????(??? DEV_EVENT_TRAFFICJUNCTION_INFO) #define EVENT_IVS_TRAFFICGATE 0x00000018 /// ??????????----?????(??? DEV_EVENT_TRAFFICGATE_INFO) #define EVENT_TRAFFICSNAPSHOT 0x00000019 /// ?????????(??? DEV_EVENT_TRAFFICSNAPSHOT_INFO) #define EVENT_IVS_FACEDETECT 0x0000001A /// ???????? (??? DEV_EVENT_FACEDETECT_INFO) #define EVENT_IVS_TRAFFICJAM 0x0000001B /// ?????????(??? DEV_EVENT_TRAFFICJAM_INFO) #define EVENT_IVS_TRAFFIC_NONMOTORINMOTORROUTE 0x0000001C /// ?????????????????????(??? DEV_EVENT_TRAFFIC_NONMOTORINMOTORROUTE_INFO) #define EVENT_IVS_TRAFFIC_RUNREDLIGHT 0x00000100 /// ???????-????????(??? DEV_EVENT_TRAFFIC_RUNREDLIGHT_INFO) #define EVENT_IVS_TRAFFIC_OVERLINE 0x00000101 /// ???????-??????????(??? DEV_EVENT_TRAFFIC_OVERLINE_INFO) #define EVENT_IVS_TRAFFIC_RETROGRADE 0x00000102 /// ???????-???????(??? DEV_EVENT_TRAFFIC_RETROGRADE_INFO) #define EVENT_IVS_TRAFFIC_TURNLEFT 0x00000103 /// ???????-???????(??? DEV_EVENT_TRAFFIC_TURNLEFT_INFO) #define EVENT_IVS_TRAFFIC_TURNRIGHT 0x00000104 /// ???????-???????(??? DEV_EVENT_TRAFFIC_TURNRIGHT_INFO) #define EVENT_IVS_TRAFFIC_UTURN 0x00000105 /// ???????-??????(??? DEV_EVENT_TRAFFIC_UTURN_INFO) #define EVENT_IVS_TRAFFIC_OVERSPEED 0x00000106 /// ???????-????(??? DEV_EVENT_TRAFFIC_OVERSPEED_INFO) #define EVENT_IVS_TRAFFIC_UNDERSPEED 0x00000107 /// ???????-????(??? DEV_EVENT_TRAFFIC_UNDERSPEED_INFO) #define EVENT_IVS_TRAFFIC_PARKING 0x00000108 /// ???????-???????(??? DEV_EVENT_TRAFFIC_PARKING_INFO) #define EVENT_IVS_TRAFFIC_WRONGROUTE 0x00000109 /// ???????-???????????(??? DEV_EVENT_TRAFFIC_WRONGROUTE_INFO) #define EVENT_IVS_TRAFFIC_CROSSLANE 0x0000010A /// ???????-???????(??? DEV_EVENT_TRAFFIC_CROSSLANE_INFO) #define EVENT_IVS_TRAFFIC_OVERYELLOWLINE 0x0000010B /// ???????-????? (??? DEV_EVENT_TRAFFIC_OVERYELLOWLINE_INFO) #define EVENT_IVS_TRAFFIC_DRIVINGONSHOULDER 0x0000010C /// ???????-??????????(??? DEV_EVENT_TRAFFIC_DRIVINGONSHOULDER_INFO) #define EVENT_IVS_TRAFFIC_YELLOWPLATEINLANE 0x0000010E /// ???????-???????????(??? DEV_EVENT_TRAFFIC_YELLOWPLATEINLANE_INFO) #define EVENT_IVS_TRAFFIC_PEDESTRAINPRIORITY 0x0000010F /// ???????-????????/?????????????????(??? DEV_EVENT_TRAFFIC_PEDESTRAINPRIORITY_INFO) #define EVENT_IVS_ELECTROSPARKDETECTION 0x00000110 /// ??????(??? DEV_EVENT_ELECTROSPARK_INFO) #define EVENT_IVS_TRAFFIC_NOPASSING 0x00000111 /// ???????-?????????(??? DEV_EVENT_TRAFFIC_NOPASSING_INFO) #define EVENT_IVS_ABNORMALRUNDETECTION 0x00000112 /// ?????????(??? DEV_EVENT_ABNORMALRUNDETECTION_INFO) #define EVENT_IVS_RETROGRADEDETECTION 0x00000113 /// ??????????(??? DEV_EVENT_RETROGRADEDETECTION_INFO) #define EVENT_IVS_INREGIONDETECTION 0x00000114 /// ???????????(??? DEV_EVENT_INREGIONDETECTION_INFO) #define EVENT_IVS_TAKENAWAYDETECTION 0x00000115 /// ??????????(??? DEV_EVENT_TAKENAWAYDETECTION_INFO) #define EVENT_IVS_PARKINGDETECTION 0x00000116 /// ?????????(??? DEV_EVENT_PARKINGDETECTION_INFO) #define EVENT_IVS_FACERECOGNITION 0x00000117 /// ?????????(??? DEV_EVENT_FACERECOGNITION_INFO) #define EVENT_IVS_TRAFFIC_MANUALSNAP 0x00000118 /// ????????????(??? DEV_EVENT_TRAFFIC_MANUALSNAP_INFO) #define EVENT_IVS_TRAFFIC_FLOWSTATE 0x00000119 /// ?????????????(??? DEV_EVENT_TRAFFIC_FLOW_STATE) #define EVENT_IVS_TRAFFIC_STAY 0x0000011A /// ??????????(??? DEV_EVENT_TRAFFIC_STAY_INFO) #define EVENT_IVS_TRAFFIC_VEHICLEINROUTE 0x0000011B /// ??????????(??? DEV_EVENT_TRAFFIC_VEHICLEINROUTE_INFO) #define EVENT_ALARM_MOTIONDETECT 0x0000011C /// ????????????(??? DEV_EVENT_ALARM_INFO) #define EVENT_ALARM_LOCALALARM 0x0000011D /// ?????????(??? DEV_EVENT_ALARM_INFO) #define EVENT_IVS_PSRISEDETECTION 0x0000011E /// ???????????(??? DEV_EVENT_PSRISEDETECTION_INFO) #define EVENT_IVS_CROSSFENCEDETECTION 0x0000011F /// ??????????(??? DEV_EVENT_CROSSFENCEDETECTION_INFO) #define EVENT_IVS_TRAFFIC_TOLLGATE 0x00000120 /// ???????-???????----?????(??? DEV_EVENT_TRAFFICJUNCTION_INFO) #define EVENT_IVS_DENSITYDETECTION 0x00000121 /// ??????????(??? DEV_EVENT_DENSITYDETECTION_INFO) #define EVENT_IVS_VIDEODIAGNOSIS 0x00000122 /// ???????????(??? NET_VIDEODIAGNOSIS_COMMON_INFO ?? NET_REAL_DIAGNOSIS_RESULT) #define EVENT_IVS_QUEUEDETECTION 0x00000123 /// ??????????(??? DEV_EVENT_QUEUEDETECTION_INFO) #define EVENT_IVS_TRAFFIC_VEHICLEINBUSROUTE 0x00000124 /// ??????????????(??? DEV_EVENT_TRAFFIC_VEHICLEINBUSROUTE_INFO) #define EVENT_IVS_TRAFFIC_BACKING 0x00000125 /// ??????????(??? DEV_EVENT_IVS_TRAFFIC_BACKING_INFO) #define EVENT_IVS_AUDIO_ABNORMALDETECTION 0x00000126 /// ?????????(??? DEV_EVENT_IVS_AUDIO_ABNORMALDETECTION_INFO) #define EVENT_IVS_TRAFFIC_RUNYELLOWLIGHT 0x00000127 /// ???????-????????(??? DEV_EVENT_TRAFFIC_RUNYELLOWLIGHT_INFO) #define EVENT_IVS_CLIMBDETECTION 0x00000128 /// ????????(??? DEV_EVENT_IVS_CLIMB_INFO) #define EVENT_IVS_LEAVEDETECTION 0x00000129 /// ????????(??? DEV_EVENT_IVS_LEAVE_INFO) #define EVENT_IVS_TRAFFIC_PARKINGONYELLOWBOX 0x0000012A /// ??????????????(??? DEV_EVENT_TRAFFIC_PARKINGONYELLOWBOX_INFO) #define EVENT_IVS_TRAFFIC_PARKINGSPACEPARKING 0x0000012B /// ???????????(??? DEV_EVENT_TRAFFIC_PARKINGSPACEPARKING_INFO) #define EVENT_IVS_TRAFFIC_PARKINGSPACENOPARKING 0x0000012C /// ??????????(??? DEV_EVENT_TRAFFIC_PARKINGSPACENOPARKING_INFO) #define EVENT_IVS_TRAFFIC_PEDESTRAIN 0x0000012D /// ??????????(??? DEV_EVENT_TRAFFIC_PEDESTRAIN_INFO) #define EVENT_IVS_TRAFFIC_THROW 0x0000012E /// ?????????????(??? DEV_EVENT_TRAFFIC_THROW_INFO) #define EVENT_IVS_TRAFFIC_IDLE 0x0000012F /// ??????????(??? DEV_EVENT_TRAFFIC_IDLE_INFO) #define EVENT_ALARM_VEHICLEACC 0x00000130 /// ????ACC???d?????(??? DEV_EVENT_ALARM_VEHICLEACC_INFO) #define EVENT_ALARM_VEHICLE_TURNOVER 0x00000131 /// ?????????????(??? DEV_EVENT_VEHICEL_ALARM_INFO) #define EVENT_ALARM_VEHICLE_COLLISION 0x00000132 /// ??????????????(??? DEV_EVENT_VEHICEL_ALARM_INFO) #define EVENT_ALARM_VEHICLE_LARGE_ANGLE 0x00000133 /// ?????????????????? #define EVENT_IVS_TRAFFIC_PARKINGSPACEOVERLINE 0x00000134 /// ??????????(??? DEV_EVENT_TRAFFIC_PARKINGSPACEOVERLINE_INFO) #define EVENT_IVS_MULTISCENESWITCH 0x00000135 /// ???????????(??? DEV_EVENT_IVS_MULTI_SCENE_SWICH_INFO) #define EVENT_IVS_TRAFFIC_RESTRICTED_PLATE 0x00000136 /// ??????????(??? DEV_EVENT_TRAFFIC_RESTRICTED_PLATE) #define EVENT_IVS_TRAFFIC_OVERSTOPLINE 0x00000137 /// ????????(??? DEV_EVENT_TRAFFIC_OVERSTOPLINE) #define EVENT_IVS_TRAFFIC_WITHOUT_SAFEBELT 0x00000138 /// ??????????????(??? DEV_EVENT_TRAFFIC_WITHOUT_SAFEBELT) #define EVENT_IVS_TRAFFIC_DRIVER_SMOKING 0x00000139 /// ???????????(??? DEV_EVENT_TRAFFIC_DRIVER_SMOKING) #define EVENT_IVS_TRAFFIC_DRIVER_CALLING 0x0000013A /// ???????????(??? DEV_EVENT_TRAFFIC_DRIVER_CALLING) #define EVENT_IVS_TRAFFIC_PEDESTRAINRUNREDLIGHT 0x0000013B /// ???????????(??? DEV_EVENT_TRAFFIC_PEDESTRAINRUNREDLIGHT_INFO) #define EVENT_IVS_TRAFFIC_PASSNOTINORDER 0x0000013C /// ??????????????(??? DEV_EVENT_TRAFFIC_PASSNOTINORDER_INFO) #define EVENT_IVS_OBJECT_DETECTION 0x00000141 /// ?????????????? #define EVENT_ALARM_ANALOGALARM 0x00000150 /// ????????????????????(???DEV_EVENT_ALARM_ANALOGALRM_INFO) #define EVENT_IVS_CROSSLINEDETECTION_EX 0x00000151 /// ???????????? #define EVENT_ALARM_COMMON 0x00000152 /// ?????? #define EVENT_ALARM_VIDEOBLIND 0x00000153 /// ?????????(??? DEV_EVENT_ALARM_VIDEOBLIND) #define EVENT_ALARM_VIDEOLOSS 0x00000154 /// ????????? #define EVENT_IVS_GETOUTBEDDETECTION 0x00000155 /// ??????(??? DEV_EVENT_GETOUTBED_INFO) #define EVENT_IVS_PATROLDETECTION 0x00000156 /// ????????(??? DEV_EVENT_PATROL_INFO) #define EVENT_IVS_ONDUTYDETECTION 0x00000157 /// ????????(??? DEV_EVENT_ONDUTY_INFO) #define EVENT_IVS_NOANSWERCALL 0x00000158 /// ???????????????? #define EVENT_IVS_STORAGENOTEXIST 0x00000159 /// ????????????? #define EVENT_IVS_STORAGELOWSPACE 0x0000015A /// ???????????? #define EVENT_IVS_STORAGEFAILURE 0x0000015B /// ?????????? #define EVENT_IVS_PROFILEALARMTRANSMIT 0x0000015C /// ???????????(??? DEV_EVENT_PROFILE_ALARM_TRANSMIT_INFO) #define EVENT_IVS_VIDEOSTATIC 0x0000015D /// ????????????(??? DEV_EVENT_ALARM_VIDEOSTATIC_INFO) #define EVENT_IVS_VIDEOTIMING 0x0000015E /// ????????????(??? DEV_EVENT_ALARM_VIDEOTIMING_INFO) #define EVENT_IVS_HEATMAP 0x0000015F /// ????(??? CFG_IVS_HEATMAP_INFO) #define EVENT_IVS_CITIZENIDCARD 0x00000160 /// ????????????(??? DEV_EVENT_ALARM_CITIZENIDCARD_INFO) #define EVENT_IVS_PICINFO 0x00000161 /// ????????(??? DEV_EVENT_ALARM_PIC_INFO) #define EVENT_IVS_NETPLAYCHECK 0x00000162 /// ??????????(??? DEV_EVENT_ALARM_NETPLAYCHECK_INFO) #define EVENT_IVS_TRAFFIC_JAM_FORBID_INTO 0x00000163 /// ?????????????(??? DEV_EVENT_ALARM_JAMFORBIDINTO_INFO) #define EVENT_IVS_SNAPBYTIME 0x00000164 /// ????????(???DEV_EVENT_SNAPBYTIME) #define EVENT_IVS_PTZ_PRESET 0x00000165 /// ???????????????(??? DEV_EVENT_ALARM_PTZ_PRESET_INFO) #define EVENT_IVS_RFID_INFO 0x00000166 /// ??????????????(??? DEV_EVENT_ALARM_RFID_INFO) #define EVENT_IVS_STANDUPDETECTION 0x00000167 /// ???????????? #define EVENT_IVS_QSYTRAFFICCARWEIGHT 0x00000168 /// ?????????????(??? DEV_EVENT_QSYTRAFFICCARWEIGHT_INFO) #define EVENT_IVS_TRAFFIC_COMPAREPLATE 0x00000169 /// ??????????????(???DEV_EVENT_TRAFFIC_COMPAREPLATE_INFO) #define EVENT_IVS_SHOOTINGSCORERECOGNITION 0x0000016A /// ?????????(??? DEV_EVENT_SHOOTING_SCORE_RECOGNITION_INFO,CFG_IVS_SHOOTINGSCORERECOGNITION_INFO) #define EVENT_IVS_TRAFFIC_FCC 0x0000016B /// ????????????????(??? DEV_EVENT_TRAFFIC_FCC_INFO) #define EVENT_IVS_TRAFFIC_TRANSFINITE 0x0000016C /// ???????????????(??? DEV_EVENT_TRAFFIC_TRANSFINITE_INFO) #define EVENT_IVS_SCENE_CHANGE 0x0000016D /// ??????????(??? DEV_ALRAM_SCENECHANGE_INFO,CFG_VIDEOABNORMALDETECTION_INFO) #define EVENT_IVS_LETRACK 0x0000016E /// ????????(?????????????) #define EVENT_IVS_OBJECT_ACTION 0x0000016F /// ?????????(?????????????) #define EVENT_IVS_TRAFFIC_ANALYSE_PRESNAP 0x00000170 /// ?????????????(??? DEV_EVENT_TRAFFIC_ANALYSE_PRESNAP_INFO) #define EVENT_ALARM_EQSTATE 0x00000171 /// ????????????????(?????????????) #define EVENT_IVS_ALARM_IPC 0x00000172 /// DVR/NVR??????IPC????(??? DEV_EVENT_ALARM_IPC_INFO) #define EVENT_IVS_POS_RECORD 0x00000173 /// POS????????(?????????????) #define EVENT_IVS_NEAR_DISTANCE_DETECTION 0x00000174 /// ???????????(??? DEV_EVENT_NEAR_DISTANCE_DETECTION_INFO) #define EVENT_IVS_OBJECTSTRUCTLIZE_PERSON 0x00000175 /// ??????????????(??? DEV_EVENT_OBJECTSTRUCTLIZE_PERSON_INFO) #define EVENT_IVS_OBJECTSTRUCTLIZE_NONMOTOR 0x00000176 /// ?????????????????(??? DEV_EVENT_OBJECTSTRUCTLIZE_NONMOTOR_INFO) #define EVENT_IVS_TUMBLE_DETECTION 0x00000177 /// ??????????(??? DEV_EVENT_TUMBLE_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_ALL 0x000001FF /// ??????traffic????????,??????? /// EVENT_IVS_TRAFFICCONTROL -> EVENT_TRAFFICSNAPSHOT /// EVENT_IVS_TRAFFIC_RUNREDLIGHT -> EVENT_IVS_TRAFFIC_UNDERSPEED #define EVENT_IVS_VIDEOANALYSE 0x00000200 /// ?????????????? #define EVENT_IVS_LINKSD 0x00000201 /// LinkSD???(??? DEV_EVENT_LINK_SD) #define EVENT_IVS_VEHICLEANALYSE 0x00000202 /// ??????????????(???DEV_EVENT_VEHICLEANALYSE) #define EVENT_IVS_FLOWRATE 0x00000203 /// ?????????????(??? DEV_EVENT_FLOWRATE_INFO) #define EVENT_IVS_ACCESS_CTL 0x00000204 /// ?????? (??? DEV_EVENT_ACCESS_CTL_INFO) #define EVENT_IVS_SNAPMANUAL 0x00000205 /// SnapManual???(??? DEV_EVENT_SNAPMANUAL) #define EVENT_IVS_TRAFFIC_ELETAGINFO 0x00000206 /// RFID????????????(??? DEV_EVENT_TRAFFIC_ELETAGINFO_INFO) #define EVENT_IVS_TRAFFIC_TIREDPHYSIOLOGICAL 0x00000207 /// ????????????(??? DEV_EVENT_TIREDPHYSIOLOGICAL_INFO) #define EVENT_IVS_TRAFFIC_BUSSHARPTURN 0x00000208 /// ??????????????(???DEV_EVENT_BUSSHARPTURN_INFO) #define EVENT_IVS_CITIZEN_PICTURE_COMPARE 0x00000209 /// ?????????(??? DEV_EVENT_CITIZEN_PICTURE_COMPARE_INFO) #define EVENT_IVS_TRAFFIC_TIREDLOWERHEAD 0x0000020A /// ??????????????(???DEV_EVENT_TIREDLOWERHEAD_INFO) #define EVENT_IVS_TRAFFIC_DRIVERLOOKAROUND 0x0000020B /// ??????????????????(???DEV_EVENT_DRIVERLOOKAROUND_INFO) #define EVENT_IVS_TRAFFIC_DRIVERLEAVEPOST 0x0000020C /// ?????????????(???DEV_EVENT_DRIVERLEAVEPOST_INFO) #define EVENT_IVS_MAN_STAND_DETECTION 0x0000020D /// ?????????????(???DEV_EVENT_MANSTAND_DETECTION_INFO) #define EVENT_IVS_MAN_NUM_DETECTION 0x0000020E /// ???????????????????????(???DEV_EVENT_MANNUM_DETECTION_INFO) #define EVENT_IVS_STEREO_NUMBERSTAT 0x0000020F /// ????????????(?????????????) #define EVENT_IVS_TRAFFIC_DRIVERYAWN 0x00000210 /// ???????????(???DEV_EVENT_DRIVERYAWN_INFO) #define EVENT_IVS_NUMBERSTAT_PLAN 0x00000211 /// ???????????(?????????????,??????,?????????????? CFG_NUMBERSTAT_INFO) #define EVENT_IVS_HEATMAP_PLAN 0x00000212 /// ???????(?????????????,??????,?????????????? CFG_IVS_HEATMAP_INFO) #define EVENT_IVS_CALLNOANSWERED 0x00000213 /// ??????????? #define EVENT_IVS_IGNOREINVITE 0x00000214 /// ??????????? #define EVENT_IVS_HUMANTRAIT 0x00000215 /// ???????????(??? DEV_EVENT_HUMANTRAIT_INFO) #define EVENT_ALARM_LE_HEADDETECTION 0x00000216 /// ????????????(??? DEV_EVENT_LE_HEADDETECTION_INFO) #define EVENT_IVS_FACEANALYSIS 0x00000217 /// ????????? (?????????????) #define EVENT_IVS_TRAFFIC_TURNLEFTAFTERSTRAIGHT 0x00000218 /// ???????????????(??? DEV_EVENT_TURNLEFTAFTERSTRAIGHT_INFO) #define EVENT_IVS_TRAFFIC_BIGBENDSMALLTURN 0x00000219 /// ??????????(??? DEV_EVENT_BIGBENDSMALLTURN_INFO) #define EVENT_IVS_ROAD_CONSTRUCTION 0x0000021A /// ?????????????(???DEV_EVENT_ROAD_CONSTRUCTION_INFO) #define EVENT_IVS_ROAD_BLOCK 0x0000021B /// ?????????(???DEV_EVENT_ROAD_BLOCK_INFO) #define EVENT_IVS_TRAFFIC_QUEUEJUMP 0x0000021C /// ???????????(??? DEV_EVENT_TRAFFIC_QUEUEJUMP_INFO) #define EVENT_IVS_VEHICLE_SUSPICIOUSCAR 0x0000021D /// ??????????(??? DEV_EVENT_VEHICLE_SUSPICIOUSCAR_INFO) #define EVENT_IVS_TRAFFIC_TURNRIGHTAFTERSTRAIGHT 0x0000021E /// ???????????????(??? DEV_EVENT_TURNRIGHTAFTERSTRAIGHT_INFO) #define EVENT_IVS_TRAFFIC_TURNRIGHTAFTERPEOPLE 0x0000021F /// ????????????????(??? DEV_EVENT_TURNRIGHTAFTERPEOPLE_INFO) #define EVENT_IVS_INSTALL_CARDREADER 0x00000220 /// ????????????(??? DEV_EVENT_INSTALL_CARDREADER_INFO) #define EVENT_ALARM_YALE_DROPBOX_BADTOKEN 0x00000221 /// Yale token??????????????????????? #define EVENT_IVS_ACC_OFF_SNAP 0x00000222 /// ????????????????????(??? DEV_EVENT_ACC_OFF_SNAP_INFO) #define EVENI_IVS_XRAY_DETECTION 0x00000223 /// X??????? (??? DEV_EVENT_XRAY_DETECTION_INFO) #define EVENT_IVS_NOTCLEARCAR 0x00000224 /// ????t???(??? DEV_EVENT_NOTCLEARCAR_INFO) #define EVENT_IVS_SOSALEART 0x00000225 /// sos??????(??? DEV_EVENT_SOSALEART_INFO) #define EVENT_IVS_OVERLOAD 0x00000226 /// ??????(??? DEV_EVENT_OVERLOAD_INFO) #define EVENT_IVS_NONWORKINGTIME 0x00000227 /// ??????????(??? DEV_EVENT_NONWORKINGTIME_INFO) #define EVENT_IVS_TRAFFIC_HIGH_BEAM 0x00000228 /// ???????????(??? DEV_EVENT_TRAFFIC_HIGH_BEAM_INFO) #define EVENT_IVS_TRAFFIC_TRUCKFORBID 0x00000229 /// ??????????(??? DEV_EVENT_TRAFFICTRUCKFORBID_INFO) #define EVENT_IVS_DRIVINGWITHOUTCARD 0x0000022A /// ?????????????(??? DEV_EVENT_DRIVINGWITHOUTCARD_INFO) #define EVENT_IVS_HIGHSPEED 0x0000022B /// ??????????????(??? DEV_EVENT_HIGHSPEED_INFO) #define EVENT_IVS_CROWDDETECTION 0x0000022C /// ???????????(??????? DEV_EVENT_CROWD_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_CARDISTANCESHORT 0x0000022D /// ???????????????(??? DEV_EVENT_TRAFFIC_CARDISTANCESHORT_INFO) #define EVENT_IVS_PEDESTRIAN_JUNCTION 0x00000230 /// ??????????(??? DEV_EVENT_PEDESTRIAN_JUNCTION_INFO) #define EVENT_IVS_VEHICLE_RECOGNITION 0x00000231 /// ?????????(??? DEV_EVENT_VEHICLE_RECOGNITION_INFO) #define EVENT_IVS_PASS_CHANGE 0x00000232 /// ???????????? (??? DEV_EVENT_PASS_CHANGE_INFO) #define EVENT_IVS_TRAFFIC_PARKING_SPACEDETECTION 0x00000233 /// ????????????????????? #define EVENT_IVS_TRAFFIC_WAITINGAREA 0x00000234 /// ???????????????(??? DEV_EVENT_TRAFFIC_WAITINGAREA_INFO) #define EVENT_IVS_TRAFFIC_BAN 0x00000235 /// ???????????????????(??? DEV_EVENT_TRAFFIC_BAN_INFO) #define EVENT_IVS_POS_EXCHANGE 0x00000236 /// POS?????????(??? DEV_EVENT_POS_EXCHANGE_INFO) #define EVENT_IVS_STEREO_FIGHTDETECTION 0x00000237 /// ??????????????/?????????????(???????????????????? EVENT_IVS_FIGHTDETECTION) #define EVENT_IVS_STEREO_DISTANCE_DETECTION 0x00000238 /// ????????????????/??????????(????????????????????) #define EVENT_IVS_STEREO_STEREOFALLDETECTION 0x00000239 /// ?????????????????????(???????????????????? EVENT_IVS_TUMBLE_DETECTION) #define EVENT_IVS_STEREO_STAYDETECTION 0x0000023A /// ????????????????????????(???????????????????? EVENT_IVS_STAYDETECTION) #define EVENT_IVS_BANNER_DETECTION 0x0000023B /// ????????(??? DEV_EVENT_BANNER_DETECTION_INFO) #define EVENT_IVS_NORMAL_FIGHTDETECTION 0x0000023C /// ?????????(??????????????, ???????EVENT_IVS_FIGHTDETECTION) #define EVENT_IVS_ELEVATOR_ABNORMAL 0x0000023D /// ??T????????????? (???DEV_EVENT_ELEVATOR_ABNORMAL_INFO) #define EVENT_IVS_NONMOTORDETECT 0x0000023E /// ?????????? (??????? DEV_EVENT_NONMOTORDETECT_INFO) #define EVENT_IVS_VEHICLEDETECT 0x0000023F /// ????????? (????????????????????EVENT_IVS_TRAFFICJUNCTION) #define EVENT_IVS_TRAFFIC_PARKING_B 0x00000240 /// ???????-B?????????(??? DEV_EVENT_TRAFFIC_PARKING_B_INFO) #define EVENT_IVS_TRAFFIC_PARKING_C 0x00000241 /// ???????-C?????????(??? DEV_EVENT_TRAFFIC_PARKING_C_INFO) #define EVENT_IVS_TRAFFIC_PARKING_D 0x00000242 /// ???????-D?????????(??? DEV_EVENT_TRAFFIC_PARKING_D_INFO) #define EVENT_IVSS_FACEATTRIBUTE 0x00000243 /// IVSS???????? (?????????????) #define EVENT_IVSS_FACECOMPARE 0x00000244 /// IVSS????????? (?????????????) #define EVENT_IVS_FIREWARNING 0x00000245 /// ?????(??? DEV_EVENT_FIREWARNING_INFO) #define EVENT_IVS_SHOPPRESENCE 0x00000246 /// ?????????????(??? DEV_EVENT_SHOPPRESENCE_INFO) #define EVENT_IVS_WASTEDUMPED 0x00000247 /// ?????????????(??? DEV_EVENT_WASTEDUMPED_INFO) #define EVENT_IVS_SPILLEDMATERIAL_DETECTION 0x00000248 /// ???????????(??? DEV_EVENT_SPILLEDMATERIAL_DETECTION_INFO) #define EVENT_IVS_STEREO_MANNUM_DETECTION 0x00000249 /// ???????????????????? (???????????????????? EVENT_IVS_MAN_NUM_DETECTION) #define EVENT_IVS_DISTANCE_DETECTION 0x0000024A /// ???????? (??? DEV_EVENT_DISTANCE_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_NONMOTOR_OVERLOAD 0x0000024B /// ?????????????? (??? DEV_EVENT_TRAFFIC_NONMOTOR_OVERLOAD_INFO) #define EVENT_IVS_TRAFFIC_NONMOTOR_WITHOUTSAFEHAT 0x0000024C /// ?????????????????? (??? DEV_EVENT_TRAFFIC_NONMOTOR_WITHOUTSAFEHAT_INFO) #define EVENT_IVS_TRAFFIC_JAM_STOP_ON_ZEBRACROSSING 0x0000024D /// ???????????????? (??? DEV_EVENT_TRAFFIC_JAM_STOP_ON_ZEBRACROSSING_INFO) #define EVENT_IVS_FLOWBUSINESS 0x0000024E /// ?????????? (??? DEV_EVENT_FLOWBUSINESS_INFO) #define EVENT_IVS_CITY_MOTORPARKING 0x0000024F /// ???????????????? (??? DEV_EVENT_CITY_MOTORPARKING_INFO) #define EVENT_IVS_CITY_NONMOTORPARKING 0x00000250 /// ????????????????? (??? DEV_EVENT_CITY_NONMOTORPARKING_INFO) #define EVENT_IVS_LANEDEPARTURE_WARNNING 0X00000251 /// ??????????(??? DEV_EVENT_LANEDEPARTURE_WARNNING_INFO) #define EVENT_IVS_FORWARDCOLLISION_WARNNING 0x00000252 /// ?????????(??? DEV_EVENT_FORWARDCOLLISION_WARNNING_INFO) #define EVENT_IVS_MATERIALSSTAY 0x00000253 /// ?????????(??? DEV_EVENT_MATERIALSSTAY_INFO) #define EVENT_IVS_TRAFFIC_NONMOTOR_HOLDUMBRELLA 0x00000254 /// ??????????????(??? DEV_EVENT_TRAFFIC_NONMOTOR_HOLDUMBRELLA_INFO) #define EVENT_IVS_JABLOTRON_ALARM 0x00000255 /// ?????????? #define EVENT_IVS_VIDEOUNFOCUS_ALARM 0x00000256 /// ?????????(???DEV_EVENT_VIDEOUNFOCUS_INFO) #define EVENT_IVS_FLOATINGOBJECT_DETECTION 0x00000257 /// ?????????? (??? DEV_EVENT_FLOATINGOBJECT_DETECTION_INFO) #define EVENT_IVS_SHIP_DETECTION 0x00000258 /// ?????????? (??? DEV_EVENT_SHIP_DETECTION_INFO) #define EVENT_IVS_AIRPLANE_DETECTION 0x00000259 /// ????????????(??? DEV_EVENT_AIRPLANE_DETECTION_INFO) #define EVENT_IVS_PHONECALL_DETECT 0x0000025A /// ??????????(??? DEV_EVENT_PHONECALL_DETECT_INFO) #define EVENT_IVS_SMOKING_DETECT 0x0000025B /// ?????????(??? DEV_EVENT_SMOKING_DETECT_INFO) #define EVENT_IVS_RADAR_SPEED_LIMIT_ALARM 0x0000025C /// ?????????????(??? DEV_EVENT_RADAR_SPEED_LIMIT_ALARM_INFO) #define EVENT_IVS_WATER_LEVEL_DETECTION 0x0000025D /// ????????? (??? DEV_EVENT_WATER_LEVEL_DETECTION_INFO) #define EVENT_IVS_HOLD_UMBRELLA 0x0000025E /// ????????????? (??? DEV_EVENT_HOLD_UMBRELLA_INFO) #define EVENT_IVS_GARBAGE_EXPOSURE 0x0000025F /// ????????????? (??? DEV_EVENT_GARBAGE_EXPOSURE_INFO) #define EVENT_IVS_DUSTBIN_OVER_FLOW 0x00000260 /// ?????????????? (??? DEV_EVENT_DUSTBIN_OVER_FLOW_INFO) #define EVENT_IVS_DOOR_FRONT_DIRTY 0x00000261 /// ???????????? (??? DEV_EVENT_DOOR_FRONT_DIRTY_INFO) #define EVENT_IVS_QUEUESTAY_DETECTION 0X00000262 /// ??????????????? (??? DEV_EVENT_QUEUESTAY_DETECTION_INFO) #define EVENT_IVS_QUEUENUM_DETECTION 0X00000263 /// ????????????????????? DEV_EVENT_QUEUENUM_DETECTION_INFO?? #define EVENT_IVS_GENERATEGRAPH_DETECTION 0X00000264 /// ????????????????? DEV_EVENT_GENERATEGRAPH_DETECTION_INFO?? #define EVENT_IVS_TRAFFIC_PARKING_MANUAL 0x00000265 /// ???????-?????(??? DEV_EVENT_TRAFFIC_PARKING_MANUAL_INFO) #define EVENT_IVS_HELMET_DETECTION 0x00000266 /// ??????????(??? DEV_EVENT_HELMET_DETECTION_INFO) #define EVENT_IVS_DEPOSIT_DETECTION 0x00000267 /// ???????????????(??? DEV_EVENT_DEPOSIT_DETECTION_INFO) #define EVENT_IVS_HOTSPOT_WARNING 0x00000268 /// ????????????(??? DEV_EVENT_HOTSPOT_WARNING_INFO) #define EVENT_IVS_WEIGHING_PLATFORM_DETECTION 0x00000269 /// ????????????(??? DEV_EVENT_WEIGHING_PLATFORM_DETECTION_INFO) #define EVENT_IVS_CLASSROOM_BEHAVIOR 0x0000026A /// ??????????????(??? DEV_EVENT_CLASSROOM_BEHAVIOR_INFO) #define EVENT_IVS_VEHICLE_DISTANCE_NEAR 0x0000026B /// ????????????????????(??? DEV_EVENT_VEHICLE_DISTANCE_NEAR_INFO) #define EVENT_IVS_TRAFFIC_DRIVER_ABNORMAL 0x0000026C /// ?????????????(??? DEV_EVENT_TRAFFIC_DRIVER_ABNORMAL_INFO) #define EVENT_IVS_TRAFFIC_DRIVER_CHANGE 0x0000026D /// ??????????????(??? DEV_EVENT_TRAFFIC_DRIVER_CHANGE_INFO) #define EVENT_IVS_WORKCLOTHES_DETECT 0x0000026E /// ???(????/????????)??????(??? DEV_EVENT_WORKCLOTHES_DETECT_INFO) #define EVENT_IVS_SECURITYGATE_PERSONALARM 0x0000026F /// ????????????????(??? DEV_EVENT_SECURITYGATE_PERSONALARM_INFO) #define EVENT_IVS_STAY_ALONE_DETECTION 0x00000270 /// ??????????(??? DEV_EVENT_STAY_ALONE_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_ROAD_BLOCK 0x00000271 /// ????????????(??? DEV_EVENT_TRAFFIC_ROAD_BLOCK_INFO) #define EVENT_IVS_TRAFFIC_ROAD_CONSTRUCTION 0x00000272 /// ????????????????(??? DEV_EVENT_TRAFFIC_ROAD_CONSTRUCTION_INFO) #define EVENT_IVS_XRAY_DETECT_BYOBJECT 0x00000273 /// X???????????????, ?????? EVENI_IVS_XRAY_DETECTION #define EVENT_IVS_WORKSTATDETECTION 0x00000274 /// ?????????(??? DEV_EVENT_WORKSTATDETECTION_INFO) #define EVENT_IVS_INFRAREDBLOCK 0x00000275 /// ??????????(??? DEV_EVENT_INFRAREDBLOCK_INFO) #define EVENT_IVS_FEATURE_ABSTRACT 0x00000276 /// ??????????(??? DEV_EVENT_FEATURE_ABSTRACT_INFO) #define EVENT_IVS_INTELLI_SHELF 0x00000277 /// ??????????(??? DEV_EVENT_INTELLI_SHELF_INFO) #define EVENT_IVS_PANORAMA_SHOT 0x00000278 /// ?????????(??? DEV_EVENT_PANORAMA_SHOT_INFO) #define EVENT_ALARM_SMARTMOTION_HUMAN 0x00000279 /// ????????????????(??), (??? DEV_EVENT_SMARTMOTION_HUMAN_INFO) #define EVENT_ALARM_SMARTMOTION_VEHICLE 0x0000027A /// ????????????????(??), (??? DEV_EVENT_SMARTMOTION_VEHICLE_INFO) #define EVENT_IVS_CAR_DRIVING_IN_OUT 0x0000027B /// ???????????????(??? DEV_EVENT_CAR_DRIVING_IN_OUT_INFO) #define EVENT_IVS_PARKINGSPACE_STATUS 0x0000027C /// ??????????(??? DEV_EVENT_PARKINGSPACE_STATUS_INFO) #define EVENT_IVS_VIOLENT_THROW_DETECTION 0x0000027D /// ??????????(??? DEV_EVENT_VIOLENT_THROW_DETECTION_INFO) #define EVENT_IVS_TRAMCARSECTIONS_DETECTION 0x0000027E /// ???????????(??? DEV_EVENT_TRAMCARSECTIONS_DETECTION_INFO) #define EVENT_IVS_ALARM_BOX_ALARM 0x0000027F /// ?????????????????????, ????????????????? #define EVENT_IVS_FACE_COMPARISION 0x00000280 /// ????????, ??????????????????????, ????????????????? #define EVENT_IVS_FACEBODY_DETECT 0x00000281 /// ?????????????? DEV_EVENT_FACEBODY_DETECT_INFO?? #define EVENT_IVS_FACEBODY_ANALYSE 0x00000282 /// ??????????????? DEV_EVENT_FACEBODY_ANALYSE_INFO?? #define EVENT_IVS_GASSTATION_VEHICLE_DETECT 0x00000283 /// ??????????????? (??? DEV_EVENT_GASSTATION_VEHICLE_DETECT_INFO) #define EVENT_IVS_CONGESTION_DETECTION 0x00000284 /// ??????????????????????????? DEV_EVENT_CONGESTION_DETECTION_INFO?? #define EVENT_IVS_VEHICLELIMIT_DETECTION 0x00000285 /// ?????????????????????????????? DEV_EVENT_VEHICLELIMIT_DETECTION_INFO?? #define EVENT_IVS_ANIMAL_DETECTION 0x00000286 /// ?????????,(??? DEV_EVENT_ANIMAL_DETECTION_INFO) #define EVENT_IVS_SHOP_WINDOW_POST 0x00000287 /// ??????????? (??? DEV_EVENT_SHOP_WINDOW_POST_INFO) #define EVENT_IVS_SHOP_SIGN_ABNORMAL 0x00000288 /// ????????? (??? DEV_EVENT_SHOP_SIGN_ABNORMAL_INFO) #define EVENT_IVS_BREED_DETECTION 0x00000289 /// ???????????? (??? DEV_EVENT_BREED_DETECTION_INFO) #define EVENT_IVS_AIRPORT_VEHICLE_DETECT 0x0000028A /// ???????????????????? (??? DEV_EVENT_AIRPORT_VEHICLE_DETECT_INFO) #define EVENT_IVS_PIG_TEMPERATURE_DETECT 0x0000028B /// ?????????????? (????????????) #define EVENT_IVS_MAN_CAR_COEXISTANCE 0x0000028C /// ?????????? (??? DEV_EVENT_MAN_CAR_COEXISTANCE_INFO) #define EVENT_IVS_HIGH_TOSS_DETECT 0x0000028D /// ?????????(???DEV_EVENT_HIGH_TOSS_DETECT_INFO) #define EVENT_IVS_ELECTRIC_GLOVE_DETECT 0x0000028E /// ????????????????(???DEV_EVENT_ELECTRIC_GLOVE_DETECT_INFO) #define EVENT_IVS_ELECTRIC_LADDER_DETECT 0x0000028F /// ????????????????(???DEV_EVENT_ELECTRIC_LADDER_DETECT_INFO) #define EVENT_IVS_ELECTRIC_CURTAIN_DETECT 0x00000290 /// ?????????????(???DEV_EVENT_ELECTRIC_CURTAIN_DETECT_INFO) #define EVENT_IVS_ELECTRIC_FENCE_DETECT 0x00000291 /// ?????????????????(???DEV_EVENT_ELECTRIC_FENCE_DETECT_INFO) #define EVENT_IVS_ELECTRIC_SIGNBOARD_DETECT 0x00000292 /// ????????????????(???DEV_EVENT_ELECTRIC_SIGNBOARD_DETECT_INFO) #define EVENT_IVS_ELECTRIC_BELT_DETECT 0x00000293 /// ????????????????(???DEV_EVENT_ELECTRIC_BELT_DETECT_INFO) #define EVENT_IVS_RADAR_LINE_DETECTION 0x00000294 /// ???????/??????(???DEV_EVENT_RADAR_LINE_DETECTION_INFO) #define EVENT_IVS_RADAR_REGION_DETECTION 0x00000295 /// ?????????????(???DEV_EVENT_RADAR_REGION_DETECTION_INFO) #define EVENT_IVS_AUDIO_INTENSITY 0x00000296 /// ???????(??? DEV_EVENT_AUDIO_INTENSITY_INFO) #define EVENT_IVS_PARKING_LOT_STATUS_DETECTION 0x00000297 /// ?????????????? (??? DEV_EVENT_PARKING_LOT_STATUS_DETECTION_INFO) #define EVENT_IVS_VEHICLE_COMPARE 0x00000298 /// (????????????) #define EVENT_IVS_DREGS_UNCOVERED 0x00000299 /// ????????????????????(??? DEV_EVENT_DREGS_UNCOVERED_INFO) #define EVENT_IVS_WALK_DETECTION 0x0000029A /// ?????????(??? DEV_EVENT_WALK_DETECTION_INFO) #define EVENT_IVS_BACK_TO_DETECTION 0x0000029B /// ?????????(??? DEV_EVENT_BACK_TO_DETECTION_INFO) #define EVENT_IVS_WRITE_ON_THE_BOARD_DETECTION 0x0000029C /// ?????????(??? DEV_EVENT_WRITE_ON_THE_BOARD_DETECTION_INFO) #define EVENT_IVS_SMART_KITCHEN_CLOTHES_DETECTION 0x0000029D /// ?????????????????????????????????????????????????????????????????? DEV_EVENT_SMART_KITCHEN_CLOTHES_DETECTION_INFO?? #define EVENT_IVS_SLEEP_DETECT 0x0000029E /// ?????????(??? DEV_EVENT_SLEEP_DETECT_INFO) #define EVENT_IVS_WALK_AROUND_DETECT 0x0000029F /// ?????????????(??? DEV_EVENT_WALK_AROUND_DETECT_INFO) #define EVENT_IVS_PLAY_MOBILEPHONE 0x00000300 /// ????????(??? DEV_EVENT_PLAY_MOBILEPHONE_INFO) #define EVENT_IVS_FINANCE_CONTRABAND_DETECT 0x00000301 /// ???????????????????(??? DEV_EVENT_FINANCE_CONTRABAND_DETECT_INFO) #define EVENT_IVS_FINANCE_CASH_TRANSACTION 0x00000302 /// ????????????????(??? DEV_EVENT_FINANCE_CASH_TRANSACTION_INFO) #define EVENT_IVS_ANATOMY_TEMP_DETECT 0x00000303 /// ???????????????(??? DEV_EVENT_ANATOMY_TEMP_DETECT_INFO) #define EVENT_IVS_ACTIVITY_ANALYSE 0x00000304 /// ??????????? (????????????) #define EVENT_IVS_DOOR_STATUS 0x00000305 /// ???????(??? DEV_EVENT_DOOR_STATUS_INFO) #define EVENT_IVS_DHOP_CUSTOM 0x00000306 /// Dhop????????(start/stop, ??? DEV_EVENT_DHOP_CUSTOM_INFO) #define EVENT_IVS_DHOP_CUSTOM_ONCE 0x00000307 /// Dhop????????(Pulse, ??? DEV_EVENT_DHOP_CUSTOM_INFO) #define EVENT_IVS_FOG_DETECTION 0x00000308 /// ??????????(??? DEV_EVENT_FOG_DETECTION) #define EVENT_IVS_TRAFFIC_VEHICLE_BC 0x00000309 /// ?????????? DEV_EVENT_TRAFFIC_VEHICLE_BC ?? #define EVENT_IVS_TRAFFIC_MOTOR_OVERLOAD 0x0000030A /// ??????????(??? DEV_EVENT_TRAFFIC_MOTOR_OVERLOAD_INFO) #define EVENT_IVS_TRAFFIC_PLATE_OCCLUSION 0x0000030B /// ????????(??? DEV_EVENT_TRAFFIC_PLATE_OCCLUSION_INFO) #define EVENT_IVS_NONMOTOR_ENTRYING 0x0000030C /// ??????????????(??? DEV_EVENT_NONMOTOR_ENTRYING_INFO) #define EVENT_IVS_WATER_STAGE_MONITOR 0x0000030D /// ?????????, ????????????????????? (??? DEV_EVENT_WATER_STAGE_MONITOR_INFO) #define EVENT_IVS_TRAFFIC_ROAD_ALERT 0x0000030E /// ??????????(??? DEV_EVENT_TRAFFIC_ROAD_ALERT_INFO) #define EVENT_IVS_BREAK_RULE_BUILDING_DETECTION 0x0000030F /// ?????????????(??? DEV_EVENT_BREAK_RULE_BUILDIING_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_NONMOTOR_RUN_REDLIGHT 0x00000310 /// ???????????? (??? DEV_EVENT_TRAFFIC_NONMOTOR_RUN_REDLIGHT_INFO ) #define EVENT_IVS_TRAFFIC_VEHICLE_IN_EMERGENCY_LANE 0x00000311 /// ?????????????(??? DEV_EVENT_TRAFFIC_VEHICLE_IN_EMERGENCY_LANE_INFO ) #define EVENT_IVS_PRAM_DETECTION 0x00000312 /// ??????????? (??? DEV_EVENT_PRAM_DETECTION_INFO ) #define EVENT_IVS_STEREO_PRAM_DETECTION 0x00000313 /// ?????????????????? (????????????) #define EVENT_IVS_BIG_BAGGAGE_DETECTION 0x00000314 /// ?????????????? (??? DEV_EVENT_BIG_BAGGAGE_DETECTION_INFO ) #define EVENT_IVS_STEREO_BIG_BAGGAGE_DETECTION 0x00000315 /// ????????????????????? (????????????) #define EVENT_IVS_TICKET_EVADE_DETECTION 0x00000316 /// ????????? (??? DEV_EVENT_TICKET_EVADE_DETECTION_INFO ) #define EVENT_IVS_STEREO_TICKET_EVADE_DETECTION 0x00000317 /// ???????????????? (????????????) #define EVENT_IVS_POWERLINE_FOREIGN_DETECITON 0x00000318 /// ??????????? (??? DEV_EVENT_POWERLINE_FOREIGN_DETEC_INFO) #define EVENT_IVS_TRAFFIC_OVER_GUIDE_LINE 0x00000319 /// ??????? (??? DEV_EVENT_TRAFFIC_OVER_GUIDE_LINE_INFO) #define EVENT_IVS_TRAFFIC_CAR_MEASUREMENT 0x00000320 /// ??????????(??????????????????????)??? (??? DEV_EVENT_TRAFFIC_CAR_MEASUREMENT_INFO) #define EVENT_IVS_TRAFFIC_WRONG_TURN_LIGHT 0x00000321 /// ?????????????????????? DEV_EVENT_TRAFFIC_WRONG_TURN_LIGHT_INFO?? #define EVENT_IVS_TRAFFIC_REAREND_ACCIDENT 0x00000322 /// ?????????????? DEV_EVENT_TRAFFIC_REAREND_ACCIDENT_INFO?? #define EVENT_IVS_DO_TALK_ACTION 0x00000323 /// ??????????????? DEV_EVENT_DO_TALK_ACTION_INFO?? #define EVENT_IVS_FIRE_LANE_DETECTION 0x00000324 /// ?????????????????? DEV_EVENT_FIRE_LANE_DETECTION_INFO?? #define EVENT_IVS_PARKING_DETECTION_FOR_PRMA 0x00000325 /// ??????????? (????????????) #define EVENT_IVS_TRAFFIC_JAM_FOR_PRMA 0x00000326 /// ???????????? (????????????) #define EVENT_IVS_TRAFFIC_ACCIDENT_FOR_PRMA 0x00000327 /// ???????????? (????????????) #define EVENT_IVS_TRAFFIC_NON_MOTOR_RETROGRADE 0x00000328 /// ??????????????(??? DEV_EVENT_TRAFFIC_NON_MOTOR_RETROGRADE_INFO) #define EVENT_IVS_TRAFFIC_NON_MOTOR_OVER_STOP_LINE 0x00000329 /// ????????????????(??? DEV_EVENT_TRAFFIC_NON_MOTOR_OVER_STOP_LINE_INFO) #define EVENT_IVS_CAR_DRIVING_IN 0x00000330 /// ??????????(??? DEV_EVENT_CAR_DRIVING_IN_INFO) #define EVENT_IVS_CAR_DRIVING_OUT 0x00000331 /// ??????????(??? DEV_EVENT_CAR_DRIVING_OUT_INFO) #define EVENT_IVS_PORTRAIT_DETECTION 0x00000332 /// ?????? (????????????) #define EVENT_IVS_TRAFFIC_SPECIAL_VEHICLE_DETECT 0x00000333 /// ????????? (??? DEV_EVENT_TRAFFIC_SPECIAL_VEHICLE_INFO ) #define EVENT_IVS_TRAFFIC_HEAD_LAMP_OFF 0x00000334 /// ?????????????(??? DEV_EVENT_TRAFFIC_HEAD_LAMP_OFF_INFO) #define EVENT_IVS_TRAFFIC_NONMOTOR 0x00000335 /// ????????????????, ???????????? ( DEV_EVENT_TRAFFIC_NONMOTOR_INFO ) #define EVENT_IVS_TRAFFIC_BOARD 0x00000336 /// ?????????????????? (??? DEV_EVENT_TRAFFIC_BOARD_INFO ) #define EVENT_IVS_TRAFFIC_VISIBILITY 0x00000337 /// ?????????????? (??? DEV_EVENT_TRAFFIC_VISIBILITY_INFO ) #define EVENT_IVS_TRAFFIC_VEHICLE_CLEANLINESS 0x00000338 /// ??????????????????? (??? DEV_EVENT_TRAFFIC_VEHICLE_CLEANLINESS_INFO) #define EVENT_IVS_TRAFFICFLOW_FOR_PRMA 0x00000339 /// ?????????? (????????????) #define EVENT_IVS_TRUCKNOTCLEAN_FOR_PRMA 0x0000033A /// ?????????? ??? DEV_EVENT_TRUCKNOTCLEAN_FOR_PRMA_INFO #define EVENT_IVS_ROADOCCUPATION_BY_FOREIGNOBJECT 0x0000033B /// ?????????? ????? DEV_EVENT_ROADOCCUPATION_BY_FOREIGNOBJECT_INFO ?? #define EVENT_IVS_TRAFFICFLOW_OVER 0x0000033C /// ?????????????? ( ??? DEV_EVENT_TRAFFICFLOW_OVER_INFO ) #define EVENT_IVS_GOODS_DETECTION 0x0000033D /// ????????????? ( ??? DEV_EVENT_GOODS_DETECTION_INFO ) #define EVENT_IVS_CONVEYORBLOCK_DETECTION 0x0000033E /// ???????????????? ?????DEV_EVENT_CONVEYORBLOCK_DETECTION_INFO ?? #define EVENT_IVS_ANYTHING_DETECT 0x0000033F /// ?????????????? ( ??? DEV_EVENT_ANYTHING_DETECT_INFO ) #define EVENT_IVS_OBJECT_ABNORMAL 0x00000340 /// ????????(??? DEV_EVENT_OBJECT_ABNORMAL_INFO ) #define EVENT_IVS_DRIVE_ASSISTANT 0x00000341 /// ??????? (????????????) #define EVENT_IVS_DRIVE_ACTION_ANAYLSE 0x00000342 /// ?????????? (????????????) #define EVENT_IVS_DRIVE_HANDSOFF_STEERING_WHEEL 0x00000343 /// ?????????? ???????????? (??? DEV_EVENT_DRIVE_HANDSOFF_STEERING_WHEEL_INFO) #define EVENT_IVS_DRIVE_BLIND_SPOT 0x00000344 /// ?????????? ????? (??? DEV_EVENT_BLIND_SPOT_DETECTION_INFO) #define EVENT_IVS_ARTICLE_DETECTION 0x00000345 /// ??????(????????????), ?????? EVENT_IVS_LEFTDETECTION ???? EVENT_IVS_TAKENAWAYDETECTION #define EVENT_IVS_TRAFFIC_PARKINGSPACE_MANUALSNAP 0x00000346 /// ?????????????? (??? DEV_EVENT_PARKINGSPACE_MANUALSNAP_INFO ) #define EVENT_IVS_STREET_SUNCURE 0x00000347 /// ????????? ?????DEV_EVENT_STREET_SUNCURE_INFO ?? #define EVENT_IVS_OUTDOOR_ADVERTISEMENT 0x00000348 /// ????????? ?????DEV_EVENT_OUTDOOR_ADVERTISEMENT_INFO ?? #define EVENT_IVS_HUDDLE_MATERIAL 0x00000349 /// ???????????? ?????DEV_EVENT_HUDDLE_MATERIAL_INFO ?? #define EVENT_IVS_FIRE_LINE_DETECTION 0x0000034A /// ?????????????? (??? DEV_EVENT_FIRE_LINE_DETECTION_INFO) #define EVENT_IVS_OCCUPY_BUS_LANE 0x0000034B /// ???????????????????? DEV_EVENT_OCCUPY_BUS_LANE_INFO?? #define EVENT_IVS_DISTRESS_DETECTION 0x0000034C /// ???????? ( ??? DEV_EVENT_DISTRESS_DETECTION_INFO ) #define EVENT_IVS_TRAFFIC_ASSISTANT_WITHOUT_SAFEBELT 0x0000034D /// ??????????????????? (??? DEV_EVENT_TRAFFIC_ASSISTANT_WITHOUT_SAFEBELT ) #define EVENT_IVS_TRAFFIC_SPEED_CHANGE_DETECTION 0x0000034E /// ????????????(??? DEV_EVENT_TRAFFIC_SPEED_CHANGE_DETECTION_INFO ) #define EVENT_IVS_FOLLOW_CAR_ALARM 0x0000034F /// ????????(??? DEV_EVENT_FOLLOW_CAR_ALARM_INFO) #define EVENT_IVS_CONVEYER_BELT_DETECT 0x00000350 /// ????????, ?????????????, ??????????CFG_CONVEYER_BELT_DETECT_INFO, ?????? /// EVENT_IVS_CONVEYER_BELT_BULK/EVENT_IVS_CONVEYER_BELT_NONLOAD/EVENT_IVS_CONVEYER_BELT_RUNOFF/EVENT_IVS_CONVEYORBLOCK_DETECTION/EVENT_IVS_CONVEYER_BELT_COAL_RATIO #define EVENT_IVS_CONVEYER_BELT_BULK 0x00000351 /// ?????????????????(???DEV_EVENT_CONVEYER_BELT_BULK_INFO ) #define EVENT_IVS_CONVEYER_BELT_NONLOAD 0x00000352 /// ??????????????(???DEV_EVENT_CONVEYER_BELT_NONLOAD_INFO ) #define EVENT_IVS_CONVEYER_BELT_RUNOFF 0x00000353 /// ??????????????(??? DEV_EVENT_CONVEYER_BELT_RUNOFF_INFO ) #define EVENT_IVS_CONVEYER_BELT_COAL_RATIO 0x00000354 /// ????????????(???DEV_EVENT_CONVEYER_BELT_COAL_RATIO_INFO ) #define EVENT_IVS_PACKBROKEN_DETECTION 0x00000355 /// ????????????? ( ??? DEV_EVENT_PACKBROKEN_DETECTION_INFO ) #define EVENT_IVS_PACKLAND_DETECTION 0x00000356 /// ???????????? ( ??? DEV_EVENT_PACKLAND_DETECTION_INFO ) #define EVENT_IVS_PACKOPEN_DETECTION 0x00000357 /// ????????????? ( ??? DEV_EVENT_PACKOPEN_DETECTION_INFO ) #define EVENT_IVS_TRAFFIC_TURN_RIGHT_NO_STOP 0x00000358 /// ????????????? ( ??? DEV_EVENT_TRAFFIC_TURN_RIGHT_NO_STOP_INFO ) #define EVENT_IVS_TRAFFIC_CROSSING_GUARDRAIL 0x00000359 /// ?????????? ( ??? DEV_EVENT_TRAFFIC_CROSSING_GUARDRAIL_INFO ) #define EVENT_IVS_EMERGENCY 0x0000035A /// ??????????????????????????????????????????? (??? DEV_EVENT_EMERGENCY_INFO) #define EVENT_IVS_TRAFFIC_PARKING_STATISTICS 0x0000035B /// ??????????????? DEV_EVENT_TRAFFIC_PARKING_STATISTICS_INFO?? #define EVENT_IVS_HEAT_IMAGING_TEMPER 0x0000035C /// ?????????????????????(??????? DEV_EVENT_HEAT_IMAGING_TEMPER_INFO) #define EVENT_IVS_SCALPER_ALARM 0x0000035D /// ????????????? ????? DEV_EVENT_SCALPER_ALARM_INFO?? #define EVENT_IVS_ROAD_OBSTACLE_DETECTION 0x0000035E /// ??????????????(??? DEV_EVENT_ROAD_OBSTACLE_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_BRIGANDAGE_CAR 0x0000035F /// ???????????????? DEV_EVENT_TRAFFIC_BRIGANDAGE_CAR_INFO?? #define EVENT_IVS_TRAFFIC_COUNTERFEIT_PLATE_CAR 0x00000360 /// ??????????????? DEV_EVENT_TRAFFIC_COUNTERFEIT_PLATE_CAR_INFO?? #define EVENT_IVS_TRAFFIC_FAKE_PLATE_CAR 0x00000361 /// ??????????????? DEV_EVENT_TRAFFIC_FAKE_PLATE_CAR_INFO?? #define EVENT_IVS_SEWAGE_DETECTION 0x00000362 /// ?????????????? DEV_EVENT_SEWAGE_DETECTION_INFO) #define EVENT_IVS_WATERCOLOR_DETECTION 0x00000363 /// ?????????????? DEV_EVENT_WATERCOLOR_DETECTION_INFO?? #define EVENT_IVS_TRAFFIC_MOTORCYCLE_FORBID 0x00000364 /// ?????? (??? DEV_EVENT_TRAFFIC_MOTORCYCLE_FORBID) #define EVENT_IVS_VIDEO_NORMAL_DETECTION 0x00000365 /// ??????????,??????????????????,????????????????????????? DEV_EVENT_VIDEO_NORMAL_DETECTION_INFO #define EVENT_IVS_TRAFFIC_TURN_RIGHT_OVER_LINE 0x00000366 /// ???????????(??? DEV_EVENT_TRAFFIC_TURN_RIGHT_OVER_LINE_INFO) #define EVENT_IVS_MANUAL_ALARM 0x00000367 /// ?????????? (??? DEV_EVENT_MANUAL_ALARM_INFO ) #define EVENT_IVS_TRAFFIC_DRIVE_ON_LINE 0x00000368 /// ??????????(???DEV_EVENT_TRAFFIC_DRIVE_ON_LINE_INFO) #define EVENT_IVS_OBJECT_PLACEMENT_DETECTION 0x00000369 /// ?????????????(???DEV_EVENT_OBJECT_PLACEMENT_DETECTION_INFO) #define EVENT_IVS_OBJECT_REMOVAL_DETECTION 0x0000036A /// ????????????(???DEV_EVENT_OBJECT_REMOVAL_DETECTION_INFO) #define EVENT_IVS_FIRE_DOOR_DETECTION 0x0000036B /// ???????????(???DEV_EVENT_FIRE_DOOR_DETECTION_INFO) #define EVENT_IVS_FIRE_EXTINGUISHER_DETECTION 0x0000036C /// ???????????(???DEV_EVENT_FIRE_EXTINGUISHER_DETECTION_INFO) #define EVENT_IVS_DOOR_NOT_CLOSE 0x0000036D /// ?????????(???DEV_EVENT_DOOR_NOT_CLOSE_INFO) #define EVENT_IVS_VEHICLE_PERIPHERAL_ALARM 0x0000036E /// ?????????????????(???DEV_EVENT_VEHICLE_PERIPHERAL_ALARM_INFO) #define EVENT_IVS_PARKING_LIMIT_DETECTION 0x0000036F /// ??????????????(???DEV_EVENT_PARKING_LIMIT_DETECTION_INFO) #define EVENT_IVS_PARKING_STATUS_CHANGE_DETECTION 0x00000370 /// ?????????????(???DEV_EVENT_PARKING_STATUS_CHANGE_DETECTION_INFO) #define EVENT_IVS_DIALRECOGNITION 0x00000371 /// ?????????(?????????????, ???DEV_EVENT_DIALRECOGNITION_INFO) #define EVENT_IVS_ELECTRICFAULT_DETECT 0x00000372 /// ?????????????(???DEV_EVENT_ELECTRICFAULTDETECT_INFO) #define EVENT_IVS_TRASH_WITHOUT_COVER_DETECTION 0x00000373 /// ?????????????????(???DEV_EVENT_TRASH_WITHOUT_COVER_DETECTION_INFO) #define EVENT_IVS_SECURITY_INSPECTOR_LOOKAROUND 0x00000374 /// ???????????????????(???DEV_EVENT_SECURITY_INSPECTOR_LOOKAROUND_INFO) #define EVENT_IVS_SECURITY_INSPECTOR_LOWERHEAD 0x00000375 /// ???????????????(???DEV_EVENT_SECURITY_INSPECTOR_LOWERHEAD_INFO) #define EVENT_IVS_SECURITY_INSPECTOR_TIRED 0x00000376 /// ??????????????(???DEV_EVENT_SECURITY_INSPECTOR_TIRED_INFO) #define EVENT_IVS_SECURITY_INSPECTOR_YAWN 0x00000377 /// ????????????????(???DEV_EVENT_SECURITY_INSPECTOR_YAWN_INFO) #define EVENT_IVS_AIPICK_DETECT 0x00000378 /// ???????????????????(???DEV_EVENT_AIPICK_DETECT_INFO) #define EVENT_IVS_TRAFFIC_LIGHT_FAULT 0x00000379 /// ??????????????(???DEV_EVENT_TRAFFIC_LIGHT_FAULT_INFO) #define EVENT_IVS_TRAFFIC_LANE_INDICATOR_FAULT 0x0000037A /// ????????????????(???DEV_EVENT_TRAFFIC_LANE_INDICATOR_FAULT_INFO) #define EVENT_IVS_WATER_SPEED_DETECTION 0x0000037B /// ??????????(??? DEV_EVENT_WATER_SPEED_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_PARKING_BACKING 0x0000037C /// ??????????????(???DEV_EVENT_TRAFFIC_PARKING_BACKING_INFO) #define EVENT_IVS_VALVE_ABNORMAL 0x0000037D /// ????????????(??? DEV_EVENT_VALVE_ABNORMAL_INFO) #define EVENT_IVS_DISCHARGE_PORT_ABNORMAL 0x0000037E /// ?????????????(??? DEV_EVENT_DISCHARGE_PORT_ABNORMAL_INFO) #define EVENT_IVS_TRAFFIC_MOTOR_STRICTLY_PROHIBIT_MANNED 0x0000037F ///???????????(??? DEV_EVENT_TRAFFIC_MOTOR_STRICTLY_PROHIBIT_MANNED_INFO) #define EVENT_IVS_BARELAND_DETECTION 0x00000380 /// ??????????(DEV_EVENT_BARELAND_DETECTION_INFO) #define EVENT_IVS_CONSUMPTION_EVENT 0x00000381 /// ???????(??? DEV_EVENT_CONSUMPTION_EVENT_INFO) #define EVENT_IVS_TOUCH_ELECTROSTATIC_BALL 0x00000382 /// ?????????????(???DEV_EVENT_TOUCH_ELECTROSTATIC_BALL_INFO) #define EVENT_IVS_OXYGEN_CYLINDER_DETECTION 0x00000383 /// ???????????(???DEV_EVENT_OXYGEN_CYLINDER_DETECTION_INFO) #define EVENT_IVS_XRAY_UNPACKING_CHECK 0x00000384 /// X??????????(???DEV_EVENT_XRAY_UNPACKING_CHECK_INFO) #define EVENT_IVS_GENERAL_ATTITUDE_DETECTION 0x00000385 /// ?????????(??? DEV_EVENT_GENERAL_ATTITUDE_DETECTION_INFO) #define EVENT_IVS_SNAP_TASK 0x00000386 /// ???????????????(??? DEV_EVENT_SNAP_TASK_INFO) #define EVENT_IVS_TRAFFIC_CHANGE_LANE_CONTINUES 0x00000387 ///????????????????????(??? DEV_EVENT_TRAFFIC_CHANGE_LANE_CONTINUES_INFO) #define EVENT_IVS_SPRAY_DETECT 0x00000388 ///????????????(??? DEV_EVENT_SPRAY_DETECT_INFO) #define EVENT_IVS_SILICON_FIRE_DETECTION 0x00000389 /// ????????(??? DEV_EVENT_SILICON_FIRE_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_PARKING_ON_RIGHT_TURN_ROUTE 0x0000038A /// ????????(???DEV_EVENT_TRAFFIC_PARKING_ON_RIGHT_TURN_ROUTE_INFO) #define EVENT_IVS_PERSONNEL_COEXISTENCE 0x0000038B /// ??????????(??? DEV_EVENT_PERSONNEL_COEXISTENCE_INFO) #define EVENT_IVS_GENEAL_ATTITUDE 0x0000038C /// ????????????(??? DEV_EVENT_GENEAL_ATTITUDE_INFO) #define EVENT_IVS_CASH_BOX_STATE 0x0000038D /// ?????????(??? DEV_EVENT_CASH_BOX_STATE_INFO) #define EVENT_IVS_LEAKAGE_DETECTION 0x0000038E /// ?????????(??? DEV_EVENT_LEAKAGE_DETECTION_INFO) #define EVENT_IVS_LADLE_NO_DETECTION 0x0000038F /// ????????????(??? DEV_EVENT_LADLE_NO_DETECTION_INFO) #define EVENT_IVS_FISHING_DETECTION 0x00000390 /// ?????????(??? DEV_EVENT_FISHING_DETECTION_INFO ) #define EVENT_IVS_ALARM_ACCESSORY 0x00000391 /// ??????????(??? DEV_EVENT_ALARM_ACCESSORY_INFO) #define EVENT_IVS_WIRELESS_DEV_LOWPOWER 0x00000392 /// ???????????????(??? DEV_EVENT_WIRELESS_DEV_LOWPOWER_INFO) #define EVENT_IVS_SENSOR_ABNORMAL 0x00000393 /// ???????????(??? DEV_EVENT_SENSOR_ABNORMAL_INFO) #define EVENT_IVS_MODULE_LOST 0x00000394 /// ????????????(??? DEV_EVENT_MODULE_LOST_INFO) #define EVENT_IVS_CROWD_LEVEL_DETECTION 0x00000395 /// ???????????(??? DEV_EVENT_CROWD_LEVEL_DETECTION_INFO) #define EVENT_IVS_REGION_DEFENSE_DETECTION 0x00000396 /// ????????(??? DEV_EVENT_REGION_DEFENSE_DETECTION_INFO) #define EVENT_IVS_DUSTBIN_DETECTION 0x00000397 /// ???????????(??? DEV_EVENT_DUSTBIN_DETECTION_INFO) #define EVENT_IVS_DIALRECOGNITION_EX 0x00000398 /// ?????????(???DEV_EVENT_DIALRECOGNITION_INFO) #define EVENT_IVS_OCR_DETECTION 0x00000399 /// OCR??????(??? DEV_EVENT_OCR_DETECTION_INFO) #define EVENT_IVS_ROAD_CONDITIONS_DETECTION 0x0000039A /// ?????????(???DEV_EVENT_ROAD_CONDITIONS_DETECTION_INFO) #define EVENT_IVS_NEAR_OBJECT_DETECT 0x0000039B /// ???????????(???DEV_EVENT_NEAR_OBJECT_DETECT_INFO) #define EVENT_IVS_OBJECT_NUM_DETECTION 0x0000039C /// ????????????(??? DEV_EVENT_OBJECT_NUM_DETECTION_INFO, ?????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)????????????) #define EVENT_IVS_OPEN_INTELLI 0x0000039D /// ???????????(??? DEV_EVENT_OPEN_INTELLI_INFO) #define EVENT_IVS_CRANE_LOAD_STAY_DETECTION 0x0000039E /// ?????????????(??? DEV_EVENT_CRANE_LOAD_STAY_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_DRIVER_NO_BELT 0x00000400 /// ???????????????(???DEV_EVENT_TRAFFIC_DRIVER_NO_BELT_INFO) #define EVENT_IVS_RIDING_MOTOR_CYCLE 0x00000401 /// ?????????????(???DEV_EVENT_RIDING_MOTOR_CYCLE_INFO) #define EVENT_IVS_CONVEYOR_ARTICLE_TYPE 0x00000402 /// ??????????????(???DEV_EVENT_CONVEYOR_ARTICLE_TYPE_INFO) #define EVENT_IVS_BLIND_ALARM 0x00000403 /// ??????????(??? DEV_EVENT_BLIND_ALARM_INFO) #define EVENT_IVS_TRAFFIC_SPEED_DROP_SHARPLY 0x00000404 /// ????????????(??? DEV_EVENT_TRAFFIC_SPEED_DROP_SHARPLY_INFO) #define EVENT_IVS_GESTURE_DETECTION 0x00000405 /// ?????????(??? DEV_EVENT_GESTURE_DETECTION_INFO) #define EVENT_IVS_HEAD_LIFT_DETECTION 0x00000406 /// ????????(??? DEV_EVENT_HEAD_LIFT_DETECTION_INFO) #define EVENT_IVS_DRAINING_DETECTION 0x00000407 /// ????????????(??? DEV_EVENT_DRAINING_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_CROSSING_SPEEDY 0x00000408 /// ?????????????? (??? DEV_EVENT_TRAFFIC_CROSSING_SPEEDY_INFO) #define EVENT_IVS_TRAFFIC_LARGECAR_NO_STOP 0x00000409 /// ?????????????(??? DEV_EVENT_TRAFFIC_LARGECAR_NO_STOP_INFO) #define EVENT_IVS_TRAFFIC_OVERTAKE_ONRIGHT 0x0000040A /// ????????(??? DEV_EVENT_TRAFFIC_OVERTAKE_ONRIGHT_INFO) #define EVENT_IVS_TRAFFIC_TRUCK_OCCUPIED 0x0000040B /// ????????(??? DEV_EVENT_TRAFFIC_TRUCK_OCCUPIED_INFO) #define EVENT_IVS_TRAFFIC_SMALL_DISPLACEMENT 0x0000040C /// ???????????(??? DEV_EVENT_TRAFFIC_SMALL_DISPLACEMENT_INFO) #define EVENT_IVS_GREEN_BELT 0x0000040D /// ????????????(??? DEV_EVENT_GREEN_BELT_ALARM_INFO) #define EVENT_IVS_ROAD_DAMAGE 0x0000040E /// ????????????(??? DEV_EVENT_ROAD_DAMAGE_ALARM_INFO) #define EVENT_IVS_TRAFFIC_SERPENTINE_CHANGE_LANE 0x0000040F /// ??????????(??? DEV_EVENT_TRAFFIC_SERPENTINE_CHANGE_LANE_INFO) #define EVENT_IVS_PERSON_TRANS_DETECTION 0x00000410 /// ????????????(??? DEV_EVENT_IVS_PERSON_TRANS_DETECTION_INFO) #define EVENT_IVS_HUMAN_ANIMAL_COEXISTENCE 0x00000411 /// ???????????(??? DEV_EVENT_HUMAN_ANIMAL_COEXISTENCE_INFO) #define EVENT_IVS_TANK_CAPACITY_DETECTION 0x00000412 /// ????????????(??? DEV_EVENT_IVS_TANK_CAPACITY_DETECTION_INFO) #define EVENT_IVS_TANK_DUMPING_DETECTION 0x00000413 /// ?????????????????(??? DEV_EVENT_IVS_TANK_DUMPING_DETECTION_INFO) #define EVENT_IVS_TANK_OVERFLOW_DETECTION 0x00000414 /// ???????????????(??? DEV_EVENT_IVS_TANK_OVERFLOW_DETECTION_INFO) #define EVENT_IVS_DUSTBIN_RETREAT 0x00000416 /// ??????????????(??? NET_DEV_EVENT_DUSTBIN_RETREAT_INFO) #define EVENT_IVS_SCRAPSTEEL_DETECT 0x00000417 /// ????????(??? NET_DEV_EVENT_SCRAPSTEEL_DETECT_INFO) #define EVENT_IVS_SIGNAL_LIGHT_ON_DETECTION 0x00000418 /// ?????????????(??? NET_DEV_EVENT_SIGNAL_LIGHT_ON_DETECTION_INFO) #define EVENT_IVS_SIGNAL_LIGHT_FLASHYELLOW_DETECTION 0x00000419 /// ??????????????(??? NET_DEV_EVENT_SIGNAL_LIGHT_FLASHYELLOW_DETECTION_INFO) #define EVENT_IVS_SIGNAL_LIGHT_NOBRIGHT_DETECTION 0x0000041A /// ????????????????(??? NET_DEV_EVENT_SIGNAL_LIGHT_NOBRIGHT_DETECTION_INFO) #define EVENT_IVS_SIGNAL_LIGHT_BLOCKING_DETECTION 0x0000041B /// ?????????????(??? NET_DEV_EVENT_SIGNAL_LIGHT_BLOCKING_DETECTION_INFO) #define EVENT_IVS_SIGNAL_LIGHT_ALWAYSON_DETECTION 0x0000041C /// ??????????????(??? NET_DEV_EVENT_SIGNAL_LIGHT_ALWAYSON_DETECTION_INFO) #define EVENT_IVS_LEDSCREEN_NOTLIGHTUP_DETECTION 0x0000041D /// LED????????????(??? NET_DEV_EVENT_LEDSCREEN_NOTLIGHTUP_DETECTION_INFO) #define EVENT_IVS_SIGNAL_LIGHTOFF_DETECTION 0x0000041E /// ?????????????(??? NET_DEV_EVENT_SIGNAL_LIGHTOFF_DETECTION_INFO) #define EVENT_IVS_PIC_COMPARE_DETECTION 0x0000041F /// ??????????????(??? NET_DEV_EVENT_PIC_COMPARE_DETECTION_INFO) #define EVENT_IVS_CHANGE_DETECTION 0x00000420 /// ?????????(??? NET_DEV_EVENT_CHANGE_DETECTION_INFO) #define EVENT_IVS_LINK_AGE_RADAR_ALARM 0x00000421 /// ???????(???????????????????????)(??? NET_DEV_EVENT_LINK_AGE_RADAR_ALARM_INFO) #define EVENT_IVS_VEHICLE_STATE 0x00000422 /// ?????????(??? NET_DEV_EVENT_VEHICLE_STATE_INFO) #define EVENT_IVS_PASS_WINDOW_DELIVERY 0x00000423 /// ?????????????(??? NET_DEV_EVENT_PASS_WINDOW_DELIVERY_INFO) #define EVENT_IVS_DOOR_STATE_DETECTION 0x00000424 /// ???????????(??? NET_DEV_EVENT_DOOR_STATE_DETECTION_INFO) #define EVENT_IVS_WASTE_MIXED_INVEST 0x00000425 /// ??????????(??? NET_DEV_EVENT_WASTE_MIXED_INVEST_INFO) #define EVENT_IVS_UNBROKEN_TRASHBAG 0x00000426 /// ?????????????????(??? NET_DEV_EVENT_UNBROKEN_TRASHBAG_INFO) #define EVENT_IVS_PERSON_CARRY_TRASHBAG 0x00000427 /// ?????????????(??? NET_DEV_EVENT_PERSON_CARRY_TRASHBAG_INFO) #define EVENT_IVS_UNATTENDED_DETENTION 0x00000428 /// ????????????(??? NET_DEV_EVENT_UNATTENDED_DETENTION_INFO) #define EVENT_IVS_DROP_DETECTION 0x00000429 /// ?????????(??? NET_DEV_EVENT_DROP_DETECTION_INFO) #define EVENT_IVS_TEMPERATURE_ALARM 0x0000042A /// ?????????(??? NET_DEV_EVENT_TEMPERATURE_ALARM_INFO) #define EVENT_IVS_HUMIDITY_ALARM 0x0000042B /// ?????????(??? NET_DEV_EVENT_HUMIDITY_ALARM_INFO) #define EVENT_IVS_POWER_SWITCHER_ALARM 0x0000042C /// ???????????(??? NET_DEV_EVENT_POWER_SWITCHER_ALARM_INFO) #define EVENT_IVS_GAS_TANK_DETECTION 0x0000042D /// ???????????(??? NET_DEV_EVENT_GAS_TANK_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_OCCUPYING_THEPATH 0x0000042E /// ??????(??? NET_EVENT_TRAFFIC_OCCUPYING_THEPATH_INFO) #define EVENT_IVS_ILLEGAL_CARRIAGE 0x0000042F /// ??????????(??? NET_DEV_EVENT_ILLEGAL_CARRIAGE_INFO) #define EVENT_IVS_SILICON_FIREPUTTER_DETECTION 0x00000430 /// ???????????(??? NET_EVENT_SILICON_FIREPUTTER_DETECTION_INFO) #define EVENT_IVS_ALARM_METHANE_ALARM 0x00000431 /// ????l?????(??????? NET_DEV_EVENT_METHANE_ALARM_INFO) #define EVENT_IVS_ALARM_TORPEDO_DETECT 0x00000432 /// ???????????(??????? NET_DEV_EVENT_TORPEDO_DETECT_ALARM_INFO) #define EVENT_IVS_FINANCIAL_CABINET_ALARM_EVENT 0x00000433 /// ?????????????(??? NET_DEV_EVENT_FINANCIAL_CABINET_ALARM_EVENT_INFO) #define EVENT_IVS_SCRAPSTEEL_DANGER_DETECT 0x00000434 /// ???????????(??? NET_DEV_EVENT_SCRAPSTEEL_DANGER_DETECT_INFO) #define EVENT_IVS_TRAFFIC_RUNASTOP_SIGN 0x00000435 /// ?????????????(??? NET_DEV_EVENT_TRAFFIC_RUNASTOP_SIGN_INFO) #define EVENT_IVS_IRCUT_MODESWITCH_ALARM_EVENT 0x00000436 /// IRCUT?????????(??? NET_DEV_EVENT_IRCUT_MODESWITCH_ALARM_INFO) #define EVENT_IVS_TRAFFIC_VEHICLE_OVERLOAD 0x00000437 /// ?????????(??? NET_DEV_EVENT_TRAFFIC_VEHICLE_OVERLOAD_INFO) #define EVENT_IVS_REMOTE_APPROVAL_ALARM 0x00000438 /// ??????????????(??? NET_DEV_EVENT_REMOTE_APPROVAL_ALARM_INFO) #define EVENT_IVS_ANTI_COUNTERFEIT 0x00000439 /// ??????????(??? NET_DEV_EVENT_ANTI_COUNTERFEIT_INFO) #define EVENT_IVS_TRAFFIC_SPEED_DIFFPREWARNING 0x0000043A /// ??????????(??? NET_DEV_EVENT_TRAFFIC_SPEED_DIFFPREWARNING_INFO) #define EVENT_IVS_TRAFFIC_DRIVER_IDENTIFIED 0x0000043B /// ??????????????(??? NET_DEV_EVENT_TRAFFIC_DRIVER_IDENTIFIED_INFO) #define EVENT_IVS_TRAFFIC_QUEUE_OVERFLOW 0x0000043C /// ?????????(??? NET_DEV_EVENT_TRAFFIC_QUEUE_OVERFLOW_INFO) #define EVENT_IVS_TRAFFIC_QUEUE_TIMEOUT 0x0000043D /// ?????????(??? NET_DEV_EVENT_TRAFFIC_QUEUE_TIMEOUT_INFO) #define EVENT_IVS_RAILING_PASS_DETECTION 0x0000043E /// ???????????(??????? NET_DEV_EVENT_RAILING_PASS_DETECTION_INFO) #define EVENT_IVS_MULTI_MAN_NUM_DETECTION 0x0000043F /// ??????????????????(??? NET_DEV_EVENT_MULTI_MAN_NUM_DETECTION_INFO) #define EVENT_IVS_OBJECT_QUANTITY_DETECTION 0x00000440 /// ????????????????????(??? NET_DEV_EVENT_OBJECT_QUANTITY_DETECTION_INFO) #define EVENT_IVS_USERMANAGER_FOR_TWSDK 0x00000441 /// ????????????(??? NET_DEV_EVENT_USERMANAGER_FOR_TWSDK_INFO) #define EVENT_IVS_DRIVE_ASSISTANT_ALARM 0x00000442 /// ????????????(??? NET_DEV_EVENT_DRIVE_ASSISTANT_ALARM_INFO) #define EVENT_IVS_CROSSLINE_STAT 0x00000443 /// ??????????(??? NET_DEV_EVENT_CROSSLINE_STAT_INFO),(????????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)????????????)) #define EVENT_IVS_REGIONNUM_STAT 0x00000444 /// ??????????(??? NET_DEV_EVENT_REGIONNUM_STAT_INFO),(????????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)????????????)) #define EVENT_IVS_FISH_STATE_DETECTION 0x00000445 /// ???????????(??? NET_DEV_EVENT_FISH_STATE_DETECTION_INFO) #define EVENT_IVS_CONVEYOR_NTH_TO_STH_DETECTION 0x00000446 /// ???????????????????????(??? NET_DEV_EVENT_CONVEYOR_NTH_TO_STH_DETECTION_INFO) #define EVENT_IVS_POSITION_SNAP 0x00000447 /// ???????????(??? NET_DEV_EVENT_POSITION_SNAP_INFO) #define EVENT_IVS_DRIVER_MISMATCH_CERTIFICATE 0x00000448 /// ?????????????(??? NET_DEV_EVENT_DRIVER_MISMATCH_CERTIFICATE_INFO) #define EVENT_IVS_DRIVER_MISMATCH_VEHICLE 0x00000449 /// ?????????????(??? NET_DEV_EVENT_DRIVER_MISMATCH_VEHICLE_INFO) #define EVENT_IVS_CERTIFICATE_MISMATCH_VEHICLE 0x0000044A /// ?????????????(??? NET_DEV_EVENT_CERTIFICATE_MISMATCH_VEHICLE_INFO) #define EVENI_IVS_XRAY_DETECT_PACKAGE 0x0000044B /// X???????????? (??? NET_EVENT_XRAY_DETECT_PACKAGE_INFO) #define EVENT_IVS_CONVEYOR_STH_TO_NTH_DETECTION 0x0000044C /// ???????????????????????(??? NET_DEV_EVENT_CONVEYOR_STH_TO_NTH_DETECTION_INFO) #define EVENT_IVS_CO_LOW_ALARM 0x0000044D /// CO???????????(??? NET_DEV_EVENT_CO_LOW_ALARM_INFO) #define EVENT_IVS_CO_HIGH_ALARM 0x0000044E /// CO???????????(??? NET_DEV_EVENT_CO_HIGH_ALARM_INFO) #define EVENT_IVS_TIMECHANGE_FOR_TWSDK 0x0000044F /// ??????????????(??? NET_DEV_EVENT_TIMECHANGE_FOR_TWSDK_INFO) #define EVENT_IVS_CIGARETTE_CASE_DETECTION 0x00000450 /// ?????????(??? NET_DEV_EVENT_CIGARETTE_CASE_DETECTION_INFO) #define EVENT_IVS_CONVEYOR_BELT_STATUS 0x00000451 /// ??????????????????(??? NET_DEV_EVENT_CONVEYOR_BELT_STATUS_INFO) #define EVENT_IVS_HOSPITAL_TALK_CONTROL 0x00000452 /// ????????????(??? NET_DEV_EVENT_HOSPITAL_TALK_CONTROL_INFO) #define EVENT_IVS_PASSENGER_FLOW_ALARM 0x00000453 /// ????????????(??? NET_DEV_EVENT_PASSENGER_FLOW_ALARM_INFO) #define EVENT_IVS_SCHOOL_BUS_SWIPE_CARD 0x00000454 /// ?????????(??? NET_DEV_EVENT_SCHOOL_BUS_SWIPE_CARD_INFO) #define EVENT_IVS_COLD_SPOT_WARNING 0x00000455 /// ????? (??? NET_DEV_EVENT_COLD_SPOT_WARNING_INFO) #define EVENT_IVS_TRAFFIC_PLATE_ABNORMAL 0x00000456 /// ?????????(??? NET_DEV_EVENT_TRAFFIC_PLATE_ABNORMAL_INFO) #define EVENT_IVS_TRAFFIC_ACCELERATION_RAPID 0x00000457 /// ?????????(??? NET_DEV_EVENT_TRAFFIC_ACCELERATION_RAPID_INFO) #define EVENT_IVS_TRAFFIC_TURN_SHARP 0x00000458 /// ????????(??? NET_DEV_EVENT_TRAFFIC_TURN_SHARP_INFO) #define EVENT_IVS_GARBAGE_PLASTICBAG 0x00000459 /// ?????????????(??? NET_DEV_EVENT_GARBAGE_PLASTICBAG_INFO) #define EVENT_IVS_DOOR_STATUS_FOR_BOX 0x0000045A /// ???????????? (??? NET_DEV_EVENT_DOOR_STATUS_FOR_BOX_INFO) #define EVENT_IVS_COLLISION_CONFLICT 0x0000045B /// ?????????(??? NET_DEV_EVENT_COLLISION_CONFLICT_INFO) #define EVENT_IVS_PHOTOGRAPH_DETECTION 0x0000045C /// ?????????????(??? NET_DEV_EVENT_PHOTOGRAPH_DETECTION_INFO) #define EVENT_IVS_REFUELING_GUN_PERSON 0x0000045D /// ???????????(??? NET_DEV_EVENT_REFUELING_GUN_PERSON_INFO) #define EVENT_IVS_AUDIO_MUTATION 0x0000045E /// ?????????(??? NET_DEV_EVENT_AUDIO_MUTATION_INFO),(????????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)????????????)) #define EVENT_IVS_OBJECT_APPEAR_DETECTION 0x0000045F /// ?????????(??? NET_DEV_EVENT_OBJECT_APPEAR_DETECTION_INFO) #define EVENT_IVS_OBJECT_DISAPPEAR_DETECTION 0x00000460 /// ?????????(??? NET_DEV_EVENT_OBJECT_DISAPPEAR_DETECTION_INFO) #define EVENT_IVS_OBJECT_STATE_DETECTION 0x00000461 /// ????????(??? NET_DEV_EVENT_OBJECT_STATE_DETECTION_INFO) #define EVENT_IVS_TRAPPED_IN_LIFT_DETECTION 0x00000462 /// ??????????(??? NET_DEV_EVENT_TRAPPED_IN_LIFT_DETECTION_INFO) #define EVENT_IVS_LIGHT_DETECTION 0x00000463 /// ????????(??? NET_DEV_EVENT_LIGHT_DETECTION_INFO) #define EVENT_IVS_COVERING_DETECTION 0x00000464 /// ??????????(??? NET_DEV_EVENT_COVERING_DETECTION_INFO) #define EVENT_IVS_ATM_SMASH_DETECTION 0x00000465 /// ATM?????????(??? NET_DEV_EVENT_ATM_SMASH_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_ASSISTANT_DRIVER_SMOKING 0x00000466 /// ????????????(??? NET_DEV_EVENT_TRAFFIC_ASSISTANT_DRIVER_SMOKING_INFO) #define EVENT_IVS_TRAFFIC_ASSISTANT_DRIVER_CALLING 0x00000467 /// ????????????(??? NET_DEV_EVENT_TRAFFIC_ASSISTANT_DRIVER_CALLING_INFO) #define EVENT_IVS_TRAFFIC_VEHICLEIN_AREA 0x00000468 /// ???????????(??? NET_DEV_EVENT_TRAFFIC_VEHICLEIN_AREA_INFO) #define EVENT_IVS_TRAFFIC_NOT_AFTER_HORIZONTAL_PEOPLE 0x00000469 /// ?????????????(??? NET_DEV_EVENT_TRAFFIC_NOT_AFTER_HORIZONTAL_PEOPLE_INFO) #define EVENT_IVS_WATER_LOGGED_DETECTION 0x0000046A /// ?????????(??? NET_DEV_EVENT_WATER_LOGGED_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_DRIVER_SUN_VISOR 0x0000046B /// ???????????????(??? NET_DEV_EVENT_TRAFFIC_DRIVER_SUN_VISOR_INFO) #define EVENT_IVS_WORK_CHECK 0x0000046C /// ?????????(??? NET_DEV_EVENT_WORK_CHECK_INFO) #define EVENT_IVS_PERSON_PECCANCY 0x0000046D /// ??????????(??? NET_DEV_EVENT_PERSON_PECCANCY_INFO) #define EVENT_IVS_ACTION_COUNT 0x0000046E /// ??????????????????(??? NET_DEV_EVENT_ACTION_COUNT_INFO) #define EVENT_IVS_WADING_DETECTION 0x0000046F /// ????????????????(??? NET_DEV_EVENT_WADING_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_GO_STRAIGHT 0x00000470 /// ??????????????(??? NET_DEV_EVENT_TRAFFIC_GO_STRAIGHT_INFO) #define EVENT_IVS_PHONE_SECURITY_STICKER_DETECTION 0X00000471 /// ???????????????(??? NET_DEV_EVENT_PHONE_SECURITY_STICKER_DETECTION_INFO) #define EVENT_IVS_SAME_OBJECT_SEARCH_DETECT 0x00000472 /// ????????????????(??? NET_DEV_EVENT_SAME_OBJECT_SEARCH_DETECT_INFO) #define EVENT_IVS_TRAFFIC_PEOPLE_IN_MOTOR_ROUTE 0x00000473 /// ?????????????????(??? NET_DEV_EVENT_TRAFFIC_PEOPLE_IN_MOTOR_ROUTE_INFO) #define EVENT_IVS_TRAFFIC_PEOPLE_IN_NON_MOTOR_ROUTE 0x00000474 /// ?????????????????(??? NET_DEV_EVENT_TRAFFIC_PEOPLE_IN_NON_MOTOR_ROUTE_INFO) #define EVENT_IVS_ALL_INTELLIGENCE 0x00000475 /// ???????????(?????????????????????????????????) #define EVENT_IVS_GATA_HEIGHT_DETECTION 0x00000476 /// ?????????(??? NET_DEV_EVENT_GATA_HEIGHT_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_BRIGHT_LIGHT 0x00000477 /// ?????????????(??? NET_DEV_EVENT_TRAFFIC_BRIGHT_LIGHT_INFO) #define EVENT_IVS_FREQUENT_CHANGE_LANE 0x00000478 /// ????????????????????(??? NET_DEV_EVENT_FREQUENT_CHANGE_LANE_INFO) #define EVENT_IVS_PYROTECHNIC_DETECTION 0x00000479 /// ???????(??? NET_DEV_EVENT_PYROTECHNIC_DETECTION_INFO) #define EVENT_IVS_TRAFFIC_STRANGE_CAR 0x0000047A /// ??????????(???NET_DEV_EVENT_TRAFFIC_STRANGE_CAR_INFO ) #define EVENT_IVS_SAME_OBJECT_SEARCH_COUNT 0x00000480 /// ?????????????????(??? NET_DEV_EVENT_SAME_OBJECT_SEARCH_COUNT_INFO) #define EVENT_IVS_VIDEO_OUT_SNAP 0x00000481 /// ???????????(??? NET_DEV_EVENT_IVS_VIDEO_OUT_SNAP_INFO) #define EVENT_IVS_POSE_EXCEPTION_NUM_DETECTION 0x00000482 /// ??????????????????????????(??? NET_DEV_EVENT_IVS_POSE_EXCEPTION_NUM_DETECTION_INFO) #define EVENT_IVS_HOSPITAL_APPRAISE 0x00000483 /// ????????????????(??? NET_DEV_EVENT_HOSPITAL_APPRAISE_INFO) #define EVENT_IVS_GRANARY_TRANS_ACTION_DETECTION 0x00000484 /// ???????????????(??? NET_DEV_EVENT_GRANARY_TRANS_ACTION_DETECTION_INFO) #define EVENT_IVS_REGION_PROPORTION_DETECTION 0x00000485 /// ????????????(??? NET_DEV_EVENT_REGION_PROPORTION_DETECTION_INFO) /// ??????????? #define EVENT_HY_FIRE_DETECTION 0x01000001 /// ??????????????(???DEV_EVENT_HY_FIRE_DETECTION_INFO) #define EVENT_HY_SMOG_DETECTION 0x01000002 /// ????????????????(???DEV_EVENT_HY_SMOG_DETECTION_INFO) #define EVENT_HY_INFIRE_PASSAGE_DETECTION 0x01000003 /// ???????????????????(???DEV_EVENT_HY_INFIRE_PASSAGE_DETECTION_INFO) #define EVENT_HY_OUTFIRE_PASSAGE_DETECTION 0x01000004 /// ??????????????????/???????????????(???DEV_EVENT_HY_OUTFIRE_PASSAGE_DETECTION_INFO) #define EVENT_HY_MAN_LEAVING_DETECTION 0x01000005 /// ?????????????????????(???DEV_EVENT_HY_MAN_LEAVING_DETECTION_INFO) ///@brief MACRO_GROUP_EVENT_IVS_2_END ///@brief MACRO_GROUP_STOR_POINT_20_BEGIN ///????????????,???????????? #define STOR_POINT_READ_WRITE 0x00001001 /// ??????,????"ReadWrite*","ReadWrite*",??????????, ?????"*"???????,???????????? #define STOR_POINT_READ_ONLY 0x00001002 /// ????? #define STOR_POINT_REDUNDANT 0x00001003 /// ??????,??"ReadWirte"??????????? #define STOR_POINT_BACKUP 0x00001004 /// ??????,????????????,??????????? #define STOR_POINT_DRAW_FRAME 0x00001005 /// ????????,??????????????,???????????? #define STOR_POINT_NAS_FTP 0x00001006 /// ???????????(????????FTP),?????????? #define STOR_POINT_NAS_NFS 0x00001007 /// ???????????(????????NFS),?????????? #define STOR_POINT_NAS_SMB 0x00001008 /// ???????????(????????SMB),?????????? #define STOR_POINT_NAS_ISCSI 0x00001009 /// ???????????(????????ISCSI),?????????? #define STOR_POINT_NAS_CLOUD 0x0000100A /// ???????????(????????Cloud),?????????? ///@brief MACRO_GROUP_STOR_POINT_20_END ///??????????????? #define FLOWSTAT_ADDR_NAME 16 ///????????????? ///?????CLIENT_OperateTrafficList???????????????? #define DH_TARFFIC_NAME_LEN 16 #define DH_CREATE_TIME_LEN 32 #define DH_AUTHORITY_NUM 16 ///@brief MACRO_GROUP_ERROR_0_BEGIN /// ???????????,???CLIENT_GetLastError???????? #define _EC(x) (0x80000000|x) #define NET_NOERROR 0 /// ??????? #define NET_ERROR -1 /// ??????? #define NET_SYSTEM_ERROR _EC(1) /// ?????? #define NET_NETWORK_ERROR _EC(2) /// ???????,?????????????^? #define NET_DEV_VER_NOMATCH _EC(3) /// ??????????? #define NET_INVALID_HANDLE _EC(4) /// ??????? #define NET_OPEN_CHANNEL_ERROR _EC(5) /// ???????? #define NET_CLOSE_CHANNEL_ERROR _EC(6) /// ????????? #define NET_ILLEGAL_PARAM _EC(7) /// ???????????? #define NET_SDK_INIT_ERROR _EC(8) /// SDK????????? #define NET_SDK_UNINIT_ERROR _EC(9) /// SDK???????? #define NET_RENDER_OPEN_ERROR _EC(10) /// ????render??????? #define NET_DEC_OPEN_ERROR _EC(11) /// ????????? #define NET_DEC_CLOSE_ERROR _EC(12) /// ?????????? #define NET_MULTIPLAY_NOCHANNEL _EC(13) /// ??????????????????0 #define NET_TALK_INIT_ERROR _EC(14) /// ???????????? #define NET_TALK_NOT_INIT _EC(15) /// ?????????????? #define NET_TALK_SENDDATA_ERROR _EC(16) /// ?????????????? #define NET_REAL_ALREADY_SAVING _EC(17) /// ?????????????????? #define NET_NOT_SAVING _EC(18) /// ???????????? #define NET_OPEN_FILE_ERROR _EC(19) /// ????????? #define NET_PTZ_SET_TIMER_ERROR _EC(20) /// ?????????????????? #define NET_RETURN_DATA_ERROR _EC(21) /// ????????????????? #define NET_INSUFFICIENT_BUFFER _EC(22) /// ?????????? #define NET_NOT_SUPPORTED _EC(23) /// ???SDK?????????? #define NET_NO_RECORD_FOUND _EC(24) /// ?????????? #define NET_NOT_AUTHORIZED _EC(25) /// ???????? #define NET_NOT_NOW _EC(26) /// ????????? #define NET_NO_TALK_CHANNEL _EC(27) /// ??????????? #define NET_NO_AUDIO _EC(28) /// ????????? #define NET_NO_INIT _EC(29) /// ????SDK????????? #define NET_DOWNLOAD_END _EC(30) /// ????????? #define NET_EMPTY_LIST _EC(31) /// ????????? #define NET_ERROR_GETCFG_SYSATTR _EC(32) /// ???????????????? #define NET_ERROR_GETCFG_SERIAL _EC(33) /// ???????????? #define NET_ERROR_GETCFG_GENERAL _EC(34) /// ?????????????? #define NET_ERROR_GETCFG_DSPCAP _EC(35) /// ???DSP??????????? #define NET_ERROR_GETCFG_NETCFG _EC(36) /// ?????????????? #define NET_ERROR_GETCFG_CHANNAME _EC(37) /// ????????????? #define NET_ERROR_GETCFG_VIDEO _EC(38) /// ????????????? #define NET_ERROR_GETCFG_RECORD _EC(39) /// ????????????? #define NET_ERROR_GETCFG_PRONAME _EC(40) /// ???????????????????? #define NET_ERROR_GETCFG_FUNCNAME _EC(41) /// ???232?????????????? #define NET_ERROR_GETCFG_485DECODER _EC(42) /// ???????????????? #define NET_ERROR_GETCFG_232COM _EC(43) /// ???232??????????? #define NET_ERROR_GETCFG_ALARMIN _EC(44) /// ???????????????????? #define NET_ERROR_GETCFG_ALARMDET _EC(45) /// ?????????????? #define NET_ERROR_GETCFG_SYSTIME _EC(46) /// ???????????? #define NET_ERROR_GETCFG_PREVIEW _EC(47) /// ????????????? #define NET_ERROR_GETCFG_AUTOMT _EC(48) /// ???????????????? #define NET_ERROR_GETCFG_VIDEOMTRX _EC(49) /// ????????????????? #define NET_ERROR_GETCFG_COVER _EC(50) /// ????????????????? #define NET_ERROR_GETCFG_WATERMAKE _EC(51) /// ??????????????? #define NET_ERROR_GETCFG_MULTICAST _EC(52) /// ????????????????????????????? #define NET_ERROR_SETCFG_GENERAL _EC(55) /// ????????????? #define NET_ERROR_SETCFG_NETCFG _EC(56) /// ?????????????? #define NET_ERROR_SETCFG_CHANNAME _EC(57) /// ????????????? #define NET_ERROR_SETCFG_VIDEO _EC(58) /// ????????????? #define NET_ERROR_SETCFG_RECORD _EC(59) /// ????????????? #define NET_ERROR_SETCFG_485DECODER _EC(60) /// ??????????????? #define NET_ERROR_SETCFG_232COM _EC(61) /// ???232??????????? #define NET_ERROR_SETCFG_ALARMIN _EC(62) /// ?????????????????? #define NET_ERROR_SETCFG_ALARMDET _EC(63) /// ????????????????? #define NET_ERROR_SETCFG_SYSTIME _EC(64) /// ???????????? #define NET_ERROR_SETCFG_PREVIEW _EC(65) /// ????????????? #define NET_ERROR_SETCFG_AUTOMT _EC(66) /// ???????????????? #define NET_ERROR_SETCFG_VIDEOMTRX _EC(67) /// ????????????????? #define NET_ERROR_SETCFG_COVER _EC(68) /// ????????????????? #define NET_ERROR_SETCFG_WATERMAKE _EC(69) /// ??????????????? #define NET_ERROR_SETCFG_WLAN _EC(70) /// ????????????????? #define NET_ERROR_SETCFG_WLANDEV _EC(71) /// ????????????????? #define NET_ERROR_SETCFG_REGISTER _EC(72) /// ???????????????????? #define NET_ERROR_SETCFG_CAMERA _EC(73) /// ??????????????????? #define NET_ERROR_SETCFG_INFRARED _EC(74) /// ??????????????? #define NET_ERROR_SETCFG_SOUNDALARM _EC(75) /// ????????????????? #define NET_ERROR_SETCFG_STORAGE _EC(76) /// ???????????????? #define NET_AUDIOENCODE_NOTINIT _EC(77) /// ???????????????????? #define NET_DATA_TOOLONGH _EC(78) /// ??????? #define NET_UNSUPPORTED _EC(79) /// ????????????? #define NET_DEVICE_BUSY _EC(80) /// ?????????? #define NET_SERVER_STARTED _EC(81) /// ????????????? #define NET_SERVER_STOPPED _EC(82) /// ????????????????? #define NET_LISTER_INCORRECT_SERIAL _EC(83) /// ?????????????? #define NET_QUERY_DISKINFO_FAILED _EC(84) /// ???????????? #define NET_ERROR_GETCFG_SESSION _EC(85) /// ???????Session??? #define NET_USER_FLASEPWD_TRYTIME _EC(86) /// ??????????????????? #define NET_LOGIN_ERROR_PASSWORD_EXPIRED _EC(99) /// ??????? #define NET_LOGIN_ERROR_PASSWORD _EC(100) /// ??????? #define NET_LOGIN_ERROR_USER _EC(101) /// ????????? #define NET_LOGIN_ERROR_TIMEOUT _EC(102) /// ???????????? #define NET_LOGIN_ERROR_RELOGGIN _EC(103) /// ??????? #define NET_LOGIN_ERROR_LOCKED _EC(104) /// ?????????? #define NET_LOGIN_ERROR_BLACKLIST _EC(105) /// ???????????????? #define NET_LOGIN_ERROR_BUSY _EC(106) /// ???????,??? #define NET_LOGIN_ERROR_CONNECT _EC(107) /// ?????????,????????????? #define NET_LOGIN_ERROR_NETWORK _EC(108) /// ??????????? #define NET_LOGIN_ERROR_SUBCONNECT _EC(109) /// ?????????,???????????????,??????????? #define NET_LOGIN_ERROR_MAXCONNECT _EC(110) /// ????????????? #define NET_LOGIN_ERROR_PROTOCOL3_ONLY _EC(111) /// ????3?????? #define NET_LOGIN_ERROR_UKEY_LOST _EC(112) /// ??????U???U????????? #define NET_LOGIN_ERROR_NO_AUTHORIZED _EC(113) /// ?????IP???????????? #define NET_LOGIN_ERROR_USER_OR_PASSOWRD _EC(117) /// ??????????? #define NET_LOGIN_ERROR_DEVICE_NOT_INIT _EC(118) /// ????????????????????????????????? #define NET_LOGIN_ERROR_LIMITED _EC(119) /// ???????,??????IP???????????????????????? #define NET_RENDER_SOUND_ON_ERROR _EC(120) /// Render?????????? #define NET_RENDER_SOUND_OFF_ERROR _EC(121) /// Render??????????? #define NET_RENDER_SET_VOLUME_ERROR _EC(122) /// Render????????????? #define NET_RENDER_ADJUST_ERROR _EC(123) /// Render???????????????? #define NET_RENDER_PAUSE_ERROR _EC(124) /// Render???????????? #define NET_RENDER_SNAP_ERROR _EC(125) /// Render???????? #define NET_RENDER_STEP_ERROR _EC(126) /// Render???????? #define NET_RENDER_FRAMERATE_ERROR _EC(127) /// Render???????????? #define NET_RENDER_DISPLAYREGION_ERROR _EC(128) /// Render???????????????? #define NET_RENDER_GETOSDTIME_ERROR _EC(129) /// Render????????????????? #define NET_GROUP_EXIST _EC(140) /// ????????? #define NET_GROUP_NOEXIST _EC(141) /// ?????????? #define NET_GROUP_RIGHTOVER _EC(142) /// ???????????????????? #define NET_GROUP_HAVEUSER _EC(143) /// ?????????,??????? #define NET_GROUP_RIGHTUSE _EC(144) /// ????????????????,??????? #define NET_GROUP_SAMENAME _EC(145) /// ?????????????????? #define NET_USER_EXIST _EC(146) /// ???????? #define NET_USER_NOEXIST _EC(147) /// ????????? #define NET_USER_RIGHTOVER _EC(148) /// ?????????????? #define NET_USER_PWD _EC(149) /// ???????,????????????? #define NET_USER_FLASEPWD _EC(150) /// ??????? #define NET_USER_NOMATCHING _EC(151) /// ??????? #define NET_USER_INUSE _EC(152) /// ???????????? #define NET_ERROR_GETCFG_ETHERNET _EC(300) /// ?????????????? #define NET_ERROR_GETCFG_WLAN _EC(301) /// ????????????????? #define NET_ERROR_GETCFG_WLANDEV _EC(302) /// ????????????????? #define NET_ERROR_GETCFG_REGISTER _EC(303) /// ???????????????? #define NET_ERROR_GETCFG_CAMERA _EC(304) /// ??????????????? #define NET_ERROR_GETCFG_INFRARED _EC(305) /// ???????????????? #define NET_ERROR_GETCFG_SOUNDALARM _EC(306) /// ????????????????? #define NET_ERROR_GETCFG_STORAGE _EC(307) /// ????????????????? #define NET_ERROR_GETCFG_MAIL _EC(308) /// ????????????? #define NET_CONFIG_DEVBUSY _EC(309) /// ?????????? #define NET_CONFIG_DATAILLEGAL _EC(310) /// ???????????? #define NET_ERROR_GETCFG_DST _EC(311) /// ??????????????? #define NET_ERROR_SETCFG_DST _EC(312) /// ???????????????? #define NET_ERROR_GETCFG_VIDEO_OSD _EC(313) /// ??????OSD??????????? #define NET_ERROR_SETCFG_VIDEO_OSD _EC(314) /// ???????OSD??????????? #define NET_ERROR_GETCFG_GPRSCDMA _EC(315) /// ???CDMA\GPRS??????????? #define NET_ERROR_SETCFG_GPRSCDMA _EC(316) /// ????CDMA\GPRS??????????? #define NET_ERROR_GETCFG_IPFILTER _EC(317) /// ???IP??????????? #define NET_ERROR_SETCFG_IPFILTER _EC(318) /// ????IP??????????? #define NET_ERROR_GETCFG_TALKENCODE _EC(319) /// ????????????????????? #define NET_ERROR_SETCFG_TALKENCODE _EC(320) /// ?????????????????????? #define NET_ERROR_GETCFG_RECORDLEN _EC(321) /// ??????????????????? #define NET_ERROR_SETCFG_RECORDLEN _EC(322) /// ???????????????????? #define NET_DONT_SUPPORT_SUBAREA _EC(323) /// ??????????????? #define NET_ERROR_GET_AUTOREGSERVER _EC(324) /// ?????????????????????????? #define NET_ERROR_CONTROL_AUTOREGISTER _EC(325) /// ?????????????????? #define NET_ERROR_DISCONNECT_AUTOREGISTER _EC(326) /// ??????????????????? #define NET_ERROR_GETCFG_MMS _EC(327) /// ???mms??????? #define NET_ERROR_SETCFG_MMS _EC(328) /// ????mms??????? #define NET_ERROR_GETCFG_SMSACTIVATION _EC(329) /// ????????????????????????? #define NET_ERROR_SETCFG_SMSACTIVATION _EC(330) /// ????????????????????????? #define NET_ERROR_GETCFG_DIALINACTIVATION _EC(331) /// ????????????????????????? #define NET_ERROR_SETCFG_DIALINACTIVATION _EC(332) /// ?????????????????????????? #define NET_ERROR_GETCFG_VIDEOOUT _EC(333) /// ???????????????????? #define NET_ERROR_SETCFG_VIDEOOUT _EC(334) /// ????????????????????? #define NET_ERROR_GETCFG_OSDENABLE _EC(335) /// ???osd?????????????? #define NET_ERROR_SETCFG_OSDENABLE _EC(336) /// ????osd?????????????? #define NET_ERROR_SETCFG_ENCODERINFO _EC(337) /// ??????????????????????????? #define NET_ERROR_GETCFG_TVADJUST _EC(338) /// ???TV??????????? #define NET_ERROR_SETCFG_TVADJUST _EC(339) /// ????TV??????????? #define NET_ERROR_CONNECT_FAILED _EC(340) /// ????????????? #define NET_ERROR_SETCFG_BURNFILE _EC(341) /// ??????????????? #define NET_ERROR_SNIFFER_GETCFG _EC(342) /// ???????????????? #define NET_ERROR_SNIFFER_SETCFG _EC(343) /// ????????????????? #define NET_ERROR_DOWNLOADRATE_GETCFG _EC(344) /// ????????????????? #define NET_ERROR_DOWNLOADRATE_SETCFG _EC(345) /// ?????????????????? #define NET_ERROR_SEARCH_TRANSCOM _EC(346) /// ????????????? #define NET_ERROR_GETCFG_POINT _EC(347) /// ?????????????? #define NET_ERROR_SETCFG_POINT _EC(348) /// ??????????????? #define NET_SDK_LOGOUT_ERROR _EC(349) /// SDK????????????? #define NET_ERROR_GET_VEHICLE_CFG _EC(350) /// ?????????????? #define NET_ERROR_SET_VEHICLE_CFG _EC(351) /// ??????????????? #define NET_ERROR_GET_ATM_OVERLAY_CFG _EC(352) /// ???atm??????????? #define NET_ERROR_SET_ATM_OVERLAY_CFG _EC(353) /// ????atm??????????? #define NET_ERROR_GET_ATM_OVERLAY_ABILITY _EC(354) /// ???atm??????????? #define NET_ERROR_GET_DECODER_TOUR_CFG _EC(355) /// ??????????????????????? #define NET_ERROR_SET_DECODER_TOUR_CFG _EC(356) /// ??????????????????????? #define NET_ERROR_CTRL_DECODER_TOUR _EC(357) /// ??????????????????? #define NET_GROUP_OVERSUPPORTNUM _EC(358) /// ????????????????????? #define NET_USER_OVERSUPPORTNUM _EC(359) /// ??????????????????? #define NET_ERROR_GET_SIP_CFG _EC(368) /// ???SIP??????? #define NET_ERROR_SET_SIP_CFG _EC(369) /// ????SIP??????? #define NET_ERROR_GET_SIP_ABILITY _EC(370) /// ???SIP??????? #define NET_ERROR_GET_WIFI_AP_CFG _EC(371) /// ???WIFI ap??????? #define NET_ERROR_SET_WIFI_AP_CFG _EC(372) /// ????WIFI ap??????? #define NET_ERROR_GET_DECODE_POLICY _EC(373) /// ????????????????? #define NET_ERROR_SET_DECODE_POLICY _EC(374) /// ????????????????? #define NET_ERROR_TALK_REJECT _EC(375) /// ?????? #define NET_ERROR_TALK_OPENED _EC(376) /// ??????????????? #define NET_ERROR_TALK_RESOURCE_CONFLICIT _EC(377) /// ?????? #define NET_ERROR_TALK_UNSUPPORTED_ENCODE _EC(378) /// ???????????????? #define NET_ERROR_TALK_RIGHTLESS _EC(379) /// ????? #define NET_ERROR_TALK_FAILED _EC(380) /// ????????? #define NET_ERROR_GET_MACHINE_CFG _EC(381) /// ????????????????? #define NET_ERROR_SET_MACHINE_CFG _EC(382) /// ????????????????? #define NET_ERROR_GET_DATA_FAILED _EC(383) /// ???????????????????? #define NET_ERROR_MAC_VALIDATE_FAILED _EC(384) /// MAC????????? #define NET_ERROR_GET_INSTANCE _EC(385) /// ??????????????? #define NET_ERROR_JSON_REQUEST _EC(386) /// ?????json????????? #define NET_ERROR_JSON_RESPONSE _EC(387) /// ?????json????????? #define NET_ERROR_VERSION_HIGHER _EC(388) /// ?????????????????? #define NET_SPARE_NO_CAPACITY _EC(389) /// ??????????, ???????? #define NET_ERROR_SOURCE_IN_USE _EC(390) /// ???????????????? #define NET_ERROR_REAVE _EC(391) /// ?????????????????? #define NET_ERROR_NETFORBID _EC(392) /// ??????? #define NET_ERROR_GETCFG_MACFILTER _EC(393) /// ???MAC??????????? #define NET_ERROR_SETCFG_MACFILTER _EC(394) /// ????MAC??????????? #define NET_ERROR_GETCFG_IPMACFILTER _EC(395) /// ???IP/MAC??????????? #define NET_ERROR_SETCFG_IPMACFILTER _EC(396) /// ????IP/MAC??????????? #define NET_ERROR_OPERATION_OVERTIME _EC(397) /// ?????????? #define NET_ERROR_SENIOR_VALIDATE_FAILED _EC(398) /// ?????????? #define NET_ERROR_DEVICE_ID_NOT_EXIST _EC(399) /// ???ID?????? #define NET_ERROR_UNSUPPORTED _EC(400) /// ??????????? #define NET_ERROR_PROXY_DLLLOAD _EC(401) /// ???????????? #define NET_ERROR_PROXY_ILLEGAL_PARAM _EC(402) /// ???????????????? #define NET_ERROR_PROXY_INVALID_HANDLE _EC(403) /// ??????????? #define NET_ERROR_PROXY_LOGIN_DEVICE_ERROR _EC(404) /// ????????????????? #define NET_ERROR_PROXY_START_SERVER_ERROR _EC(405) /// ??????????????? #define NET_ERROR_SPEAK_FAILED _EC(406) /// ???????? #define NET_ERROR_NOT_SUPPORT_F6 _EC(407) /// ?????????F6?????? #define NET_ERROR_CD_UNREADY _EC(408) /// ?????????? #define NET_ERROR_DIR_NOT_EXIST _EC(409) /// ???????? #define NET_ERROR_UNSUPPORTED_SPLIT_MODE _EC(410) /// ????????????? #define NET_ERROR_OPEN_WND_PARAM _EC(411) /// ????????????? #define NET_ERROR_LIMITED_WND_COUNT _EC(412) /// ???????????????? #define NET_ERROR_UNMATCHED_REQUEST _EC(413) /// ?????????????????? #define NET_RENDER_ENABLELARGEPICADJUSTMENT_ERROR _EC(414) /// Render?????????????????????????? #define NET_ERROR_UPGRADE_FAILED _EC(415) /// ?????????? #define NET_ERROR_NO_TARGET_DEVICE _EC(416) /// ??????????? #define NET_ERROR_NO_VERIFY_DEVICE _EC(417) /// ??????????? #define NET_ERROR_CASCADE_RIGHTLESS _EC(418) /// ???????? #define NET_ERROR_LOW_PRIORITY _EC(419) /// ??????? #define NET_ERROR_REMOTE_REQUEST_TIMEOUT _EC(420) /// ??????????? #define NET_ERROR_LIMITED_INPUT_SOURCE _EC(421) /// ???????????????????? #define NET_ERROR_SET_LOG_PRINT_INFO _EC(422) /// ????????????? #define NET_ERROR_PARAM_DWSIZE_ERROR _EC(423) /// ?????dwsize??????? #define NET_ERROR_LIMITED_MONITORWALL_COUNT _EC(424) /// ????????????????? #define NET_ERROR_PART_PROCESS_FAILED _EC(425) /// ????????????? #define NET_ERROR_TARGET_NOT_SUPPORT _EC(426) /// ????????????? #define NET_ERROR_VISITE_FILE _EC(510) /// ?????????? #define NET_ERROR_DEVICE_STATUS_BUSY _EC(511) /// ???? #define NET_USER_PWD_NOT_AUTHORIZED _EC(512) /// ???????????? #define NET_USER_PWD_NOT_STRONG _EC(513) /// ?????????? #define NET_ERROR_NO_SUCH_CONFIG _EC(514) /// ???????????? #define NET_ERROR_AUDIO_RECORD_FAILED _EC(515) /// ?????? #define NET_ERROR_SEND_DATA_FAILED _EC(516) /// ?????????? #define NET_ERROR_OBSOLESCENT_INTERFACE _EC(517) /// ??????? #define NET_ERROR_INSUFFICIENT_INTERAL_BUF _EC(518) /// ???????I?? #define NET_ERROR_NEED_ENCRYPTION_PASSWORD _EC(519) /// ??????ip?,??????????? #define NET_ERROR_NOSUPPORT_RECORD _EC(520) /// ????????????? #define NET_ERROR_DEVICE_IN_UPGRADING _EC(521) /// ??????????? #define NET_ERROR_ANALYSE_TASK_NOT_EXIST _EC(522) /// ?????????????? #define NET_ERROR_ANALYSE_TASK_FULL _EC(523) /// ???????????????? #define NET_ERROR_DEVICE_RESTART _EC(524) /// ??????? #define NET_ERROR_DEVICE_SHUTDOWN _EC(525) /// ?????? #define NET_ERROR_FILE_SYSTEM_ERROR _EC(526) /// ????????? #define NET_ERROR_HARDDISK_WRITE_ERROR _EC(527) /// ????????? #define NET_ERROR_HARDDISK_READ_ERROR _EC(528) /// ???????? #define NET_ERROR_NO_HARDDISK_RECORD_LOG _EC(529) /// ?????????? #define NET_ERROR_NO_HARDDISK _EC(530) /// ???????(?????????) #define NET_ERROR_HARDDISK_OTHER_ERRORS _EC(531) /// ??????????? #define NET_ERROR_HARDDISK_BADSECTORS_MINOR_ERRORS _EC(532) /// ????????????? #define NET_ERROR_HARDDISK_BADSECTORS_CRITICAL_ERRORS _EC(533) /// ????????????? #define NET_ERROR_HARDDISK_PHYSICAL_BADSECTORS_SLIGHT _EC(534) /// ?????????????? #define NET_ERROR_HARDDISK_PHYSICAL_BADSECTORS_SERIOUS _EC(535) /// ??????????????? #define NET_ERROR_NETWORK_DISCONNECTION_ALARM _EC(536) /// ???????? #define NET_ERROR_NETWORK_DISCONNECTION _EC(537) /// ?????? #define NET_ERROR_SET_SOURCE_EXCEED _EC(538) /// ???????????????????? #define NET_ERROR_SIZE_EXCEED _EC(539) /// ?????????^??????(uploadFile????) #define NET_ERROR_LOGOPEN_DISABLE _EC(540) /// ??????????????????????????????????????????????? #define NET_ERROR_STREAM_PACKAGE_ERROR _EC(541) /// ?????????? #define NET_ERROR_READ_LIMIT _EC(542) /// ????????????? #define NET_ERROR_PREVIEWOPENED _EC(543) /// ??????????????????????????? #define NET_ERROR_COMPRESSOPENED _EC(544) /// ???????????????????? #define NET_ERROR_COMPRESSERROR_UNKNOWN _EC(545) /// ?????????????? #define NET_ERROR_COMPRESSERROR_OVERDECODE _EC(546) /// ???????????????????????? #define NET_ERROR_COMPRESSERROR_OVERENCODE _EC(547) /// ??????????????????????? #define NET_ERROR_COMPRESSERROR_NONESTREAM _EC(548) /// ???????????????????? #define NET_ERROR_COMPRESSERROR_CHIPOFFLINE _EC(549) /// ???????????????????????????? #define NET_ERROR_CHANNELNOTADD _EC(550) /// ????????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_GROUP_COUNT_EXCEED _EC(601) /// tip???????????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_GROUP_NAME_EXISTED _EC(602) /// tip??????????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_UNKNOW _EC(603) /// ?????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_SCHEME_OR_GROUP_IMPORT_OR_EXPORT _EC(604) /// tip??????????????????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_NAME_EMPTY _EC(605) /// ?????????????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_GROUP_NOT_EXIST _EC(606) /// ???????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_FORMAT_ERROR _EC(607) /// tip????????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_TIP_NOT_EXIST _EC(608) /// tip?????? #define NET_ERRPR_XRAY_TIP_PICTURE_MANAGER_DELETE_TIP_ERROR _EC(609) /// ???tip??????? #define NET_ERRPR_XRAY_TIP_SCHEME_MAX_COUNT _EC(701) /// tip?????????????? #define NET_ERRPR_XRAY_TIP_SCHEME_NAME_REPEAT _EC(702) /// tip??????????? #define NET_ERRPR_XRAY_TIP_SCHEME_NOEXIST _EC(703) /// tip?????????? #define NET_ERRPR_XRAY_TIP_SCHEME_UNKNOW _EC(704) /// ?????? #define NET_ERRPR_XRAY_TIP_SCHEME_GROUP_NO_EXIST _EC(705) /// ???????? #define NET_ERRPR_XRAY_TIP_SCHEME_GROUP_MAX_COUNT _EC(706) /// ????????????????? #define NET_ERRPR_XRAY_TIP_SCHEME_PICTURE_NO_EXIST _EC(707) /// ???????? #define NET_ERRPR_XRAY_TIP_SCHEME_NAME_EMPTY _EC(708) /// tip?????????????? #define NET_ERRPR_XRAY_TIP_SCHEME_GROUP_EXISTED _EC(709) /// tip??????????? #define NET_ERRPR_XRAY_TIP_SCHEME_TIP_GROUP_REPEAT _EC(710) /// tip??????????????? #define NET_ERRPR_XRAY_TIP_SCHEME_GROUP_NO_EXISTED _EC(711) /// tip?????????? #define NET_ERRPR_XRAY_TIP_SCHEME_GROUP_IMPORT_OR_EXPORT _EC(712) /// tip??????????????????? #define NET_ERROR_SERIALIZE_ERROR _EC(1010) /// ?????????????? #define NET_ERROR_DESERIALIZE_ERROR _EC(1011) /// ??????????????? #define NET_ERROR_LOWRATEWPAN_ID_EXISTED _EC(1012) /// ??????ID????? #define NET_ERROR_LOWRATEWPAN_ID_LIMIT _EC(1013) /// ????ID????????? #define NET_ERROR_LOWRATEWPAN_ID_ABNORMAL _EC(1014) /// ?????????? #define NET_ERROR_ENCRYPT _EC(1015) /// ??????????? #define NET_ERROR_PWD_ILLEGAL _EC(1016) /// ?????????Z #define NET_ERROR_DEVICE_ALREADY_INIT _EC(1017) /// ??????????? #define NET_ERROR_SECURITY_CODE _EC(1018) /// ???????? #define NET_ERROR_SECURITY_CODE_TIMEOUT _EC(1019) /// ????????????? #define NET_ERROR_GET_PWD_SPECI _EC(1020) /// ????????Z??? #define NET_ERROR_NO_AUTHORITY_OF_OPERATION _EC(1021) /// ????????????? #define NET_ERROR_DECRYPT _EC(1022) /// ??????????? #define NET_ERROR_2D_CODE _EC(1023) /// 2D code??????? #define NET_ERROR_INVALID_REQUEST _EC(1024) /// ?????RPC???? #define NET_ERROR_PWD_RESET_DISABLE _EC(1025) /// ???????????????? #define NET_ERROR_PLAY_PRIVATE_DATA _EC(1026) /// ??????????????????????? #define NET_ERROR_ROBOT_OPERATE_FAILED _EC(1027) /// ???????????? #define NET_ERROR_PHOTOSIZE_EXCEEDSLIMIT _EC(1028) /// ?????????? #define NET_ERROR_USERID_INVALID _EC(1029) /// ???ID?????? #define NET_ERROR_EXTRACTFEATURE_FAILED _EC(1030) /// ?????????????? #define NET_ERROR_PHOTO_EXIST _EC(1031) /// ???????? #define NET_ERROR_PHOTO_OVERFLOW _EC(1032) /// ??????????????? #define NET_ERROR_CHANNEL_ALREADY_OPENED _EC(1033) /// ???????? #define NET_ERROR_CREATE_SOCKET _EC(1034) /// ???????????? #define NET_ERROR_CHANNEL_NUM _EC(1035) /// ???????? #define NET_ERROR_PHOTO_FORMAT _EC(1036) /// ????????? #define NET_ERROR_DIGITAL_CERTIFICATE_INTERNAL_ERROR _EC(1037) /// ???????(????????????????????????????????????????????????) #define NET_ERROR_DIGITAL_CERTIFICATE_GET_ID_FAILED _EC(1038) /// ??????ID??? #define NET_ERROR_DIGITAL_CERTIFICATE_IMPORT_ILLEGAL _EC(1039) /// ?????????(????????????????????) #define NET_ERROR_DIGITAL_CERTIFICATE_SN_ERROR _EC(1040) /// ???sn??????????Z #define NET_ERROR_DIGITAL_CERTIFICATE_COMMON_NAME_ILLEGAL _EC(1041) /// ???commonName???(??????????????????????devid_cryptoID,???????????????(devid_crytoID)) #define NET_ERROR_DIGITAL_CERTIFICATE_NO_ROOT_CERT _EC(1042) /// ??????????????? #define NET_ERROR_DIGITAL_CERTIFICATE_CERT_REVOKED _EC(1043) /// ???????? #define NET_ERROR_DIGITAL_CERTIFICATE_CERT_INVALID _EC(1044) /// ?????????????????????? #define NET_ERROR_DIGITAL_CERTIFICATE_CERT_ERROR_SIGN _EC(1045) /// ??????????? #define NET_ERROR_DIGITAL_CERTIFICATE_COUNTS_UPPER_LIMIT _EC(1046) /// ???????y?????? #define NET_ERROR_DIGITAL_CERTIFICATE_CERT_NO_EXIST _EC(1047) /// ????????????(?????????????????????) #define NET_ERROR_DEFULAT_SEARCH_PORT _EC(1048) /// ?????????????????5050,37810?? #define NET_ERROR_FACE_RECOGNITION_SERVER_MULTI_APPEND_STOUP _EC(1049) /// ????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_MULTI_APPEND_ERROR _EC(1050) /// ?????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_ID_EXCEED _EC(1051) /// ??ID???????? #define NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_ID_NOT_IN_REGISTER_GROUP _EC(1052) /// ??ID?????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PICTURE_NOT_FOUND _EC(1053) /// ???????? #define NET_ERROR_FACE_RECOGNITION_SERVER_GENERATE_GROUP_ID_FAILED _EC(1054) /// ??????ID???????? #define NET_ERROR_FACE_RECOGNITION_SERVER_SET_CONFIG_FAILED _EC(1055) /// ??????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_FILE_OPEN_FAILED _EC(1056) /// ?????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_FILE_READ_FAILED _EC(1057) /// ??????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_FILE_WRITE_FAILED _EC(1058) /// ???????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PICTURE_DPI_ERROR _EC(1059) /// ????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PICTURE_PX_ERROR _EC(1060) /// ???????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PICTURE_SIZE_ERROR _EC(1061) /// ?????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_DATA_BASE_ERROR _EC(1062) /// ??????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_FACE_MAX_NUM _EC(1063) /// ??????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_BIRTH_DAY_FORMAT_ERROR _EC(1064) /// ?????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_UID_ERROR _EC(1065) /// ???UID?????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_TOKEN_ERROR _EC(1066) /// ????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_BEGIN_NUM_OVER_RUN _EC(1067) /// ???????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_ABSTRACT_NUM_ZERO _EC(1068) /// ?????????????0 #define NET_ERROR_FACE_RECOGNITION_SERVER_ABSTRACT_INIT_ERROR _EC(1069) /// ???????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_AUTO_ABSTRACT_STATE _EC(1070) /// ????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_ABSTRACT_STATE _EC(1071) /// ????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_IM_EX_STATE _EC(1072) /// ???????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PIC_WRITE_FAILED _EC(1073) /// ????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_SPACE_EXCEED _EC(1074) /// ????????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_PIC_COUNT_EXCEED _EC(1075) /// ?????????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_NOT_FOUND _EC(1076) /// ???????? #define NET_ERROR_FACE_RECOGNITION_SERVER_FIND_RECORDS_ERROR _EC(1077) /// ?????????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_DELETE_PERSON_ERROR _EC(1078) /// ??????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_DELETE_GROUP_ERROR _EC(900) /// ?????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_NAME_FORMAT_ERROR _EC(901) /// ??????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_FILEPATH_NOT_SET _EC(902) /// ???????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_AREAS_NAME_REPEAT _EC(903) /// ??????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_AREAS_ID_REPEAT _EC(904) /// ????????ID??? #define NET_ERROR_FACE_RECOGNITION_SERVER_AREAS_CHANNEL_REPEAT _EC(905) /// ?????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_EXPORT_TASK_COUNT_EXCEED _EC(906) /// ????????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PIC_SEARCH_NOT_SUPPORT _EC(907) /// ?????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_DETECT_MULTI_FACE_NOT_SUPPORT _EC(908) /// ???????????????????????? #define NET_ERROR_FACE_RECOGNITION_SERVER_PERSON_ALREADY_EXISTS _EC(909) /// ?????????? #define NET_ERROR_DEVICE_PARSE_PROTOCOL _EC(1079) /// ?????????????? #define NET_ERROR_DEVICE_INVALID_REQUEST _EC(1080) /// ??????????????? #define NET_ERROR_DEVICE_INTERNAL_ERROR _EC(1081) /// ?????????? #define NET_ERROR_DEVICE_REQUEST_TIMEOUT _EC(1082) /// ??????????? #define NET_ERROR_DEVICE_KEEPALIVE_FAIL _EC(1083) /// ?????????? #define NET_ERROR_DEVICE_NETWORK_ERROR _EC(1084) /// ?????????? #define NET_ERROR_DEVICE_UNKNOWN_ERROR _EC(1085) /// ????????????? #define NET_ERROR_DEVICE_COM_INTERFACE_NOTFOUND _EC(1086) /// ??????????????? #define NET_ERROR_DEVICE_COM_IMPLEMENT_NOTFOUND _EC(1087) /// ??????????????? #define NET_ERROR_DEVICE_COM_NOTFOUND _EC(1088) /// ???????????????? #define NET_ERROR_DEVICE_COM_INSTANCE_NOTEXIST _EC(1089) /// ??????????????????? #define NET_ERROR_DEVICE_CREATE_COM_FAIL _EC(1090) /// ???????????????????? #define NET_ERROR_DEVICE_GET_COM_FAIL _EC(1091) /// ?????????????????????? #define NET_ERROR_DEVICE_BAD_REQUEST _EC(1092) /// ??????????????? #define NET_ERROR_DEVICE_REQUEST_IN_PROGRESS _EC(1093) /// ??????????????????????????? #define NET_ERROR_DEVICE_LIMITED_RESOURCE _EC(1094) /// ?????????? #define NET_ERROR_DEVICE_BUSINESS_TIMEOUT _EC(1095) /// ??????? #define NET_ERROR_DEVICE_TOO_MANY_REQUESTS _EC(1096) /// ?????????????? #define NET_ERROR_DEVICE_NOT_ALREADY _EC(1097) /// ??????????????????????????? #define NET_ERROR_DEVICE_SEARCHRECORD_TIMEOUT _EC(1098) /// ??????????? #define NET_ERROR_DEVICE_SEARCHTIME_INVALID _EC(1099) /// ??????????????? #define NET_ERROR_DEVICE_SSID_INVALID _EC(1100) /// ???????SSID???? #define NET_ERROR_DEVICE_CHANNEL_STREAMTYPE_ERROR _EC(1101) /// ????????????????????????? #define NET_ERROR_DEVICE_STREAM_PACKINGFORMAT_UNSUPPORT _EC(1102) /// ??????????????????? #define NET_ERROR_DEVICE_AUDIO_ENCODINGFORMAT_UNSUPPORT _EC(1103) /// ??????????????????? #define NET_ERROR_SECURITY_ERROR_SUPPORT_GUI _EC(1104) /// ??????????????,????????GUI??????????? #define NET_ERROR_SECURITY_ERROR_SUPPORT_MULT _EC(1105) /// ??????????????,?????APP??configtool???????????? #define NET_ERROR_SECURITY_ERROR_SUPPORT_UNIQUE _EC(1106) /// ??????????????,????Web??????????? #define NET_ERROR_STREAMCONVERTOR_DEFECT _EC(1107) /// ?????? #define NET_ERROR_SECURITY_GENERATE_SAFE_CODE _EC(1108) /// ???????????????????? #define NET_ERROR_SECURITY_GET_CONTACT _EC(1109) /// ???????????? #define NET_ERROR_SECURITY_GET_QRCODE _EC(1110) /// ?????????????????????? #define NET_ERROR_SECURITY_CANNOT_RESET _EC(1111) /// ??????????,??????? #define NET_ERROR_SECURITY_NOT_SUPPORT_CONTACT_MODE _EC(1112) /// ??????????????????,????????????????????????????? #define NET_ERROR_SECURITY_RESPONSE_TIMEOUT _EC(1113) /// ????????? #define NET_ERROR_SECURITY_AUTHCODE_FORBIDDEN _EC(1114) /// ????????AuthCode??????????????? #define NET_ERROR_TRANCODE_LOGIN_REMOTE_DEV _EC(1115) /// (???????)???????????? #define NET_ERROR_TRANCODE_NOFREE_CHANNEL _EC(1116) /// (???????)?????????????? #define NET_ERROR_VK_INFO_DECRYPT_FAILED _EC(1117) /// VK?????????? #define NET_ERROR_VK_INFO_DESERIALIZE_FAILED _EC(1118) /// VK?????????? #define NET_ERROR_GDPR_ABILITY_NOT_ENABLE _EC(1119) /// SDK GDPR????????? /*??????????????????? start*/ #define NET_ERROR_FAST_CHECK_NO_AUTH _EC(1120) /// ??????????:????? #define NET_ERROR_FAST_CHECK_NO_FILE _EC(1121) /// ??????????:????????? #define NET_ERROR_FAST_CHECK_FILE_FAIL _EC(1122) /// ??????????:????????? #define NET_ERROR_FAST_CHECK_BUSY _EC(1123) /// ??????????:??? #define NET_ERROR_FAST_CHECK_NO_PASSWORD _EC(1124) /// ??????????:??????????, ?????????? #define NET_ERROR_IMPORT_ACCESS_SEND_FAILD _EC(1125) /// ??????????:?????????????? #define NET_ERROR_IMPORT_ACCESS_BUSY _EC(1126) /// ??????????:???, ????????????? #define NET_ERROR_IMPORT_ACCESS_DATAERROR _EC(1127) /// ??????????:???????????? #define NET_ERROR_IMPORT_ACCESS_DATAINVALID _EC(1128) /// ??????????:???????? #define NET_ERROR_IMPORT_ACCESS_SYNC_FALID _EC(1129) /// ??????????:??????,???????????? #define NET_ERROR_IMPORT_ACCESS_DBFULL _EC(1130) /// ??????????:?????????, ??????? #define NET_ERROR_IMPORT_ACCESS_SDFULL _EC(1131) /// ??????????:??????????, ??????? #define NET_ERROR_IMPORT_ACCESS_CIPHER_ERROR _EC(1132) /// ??????????:??????????????? /*??????????????????? end*/ #define NET_ERROR_INVALID_PARAM _EC(1133) /// ???????? #define NET_ERROR_INVALID_PASSWORD _EC(1134) /// ???????? #define NET_ERROR_INVALID_FINGERPRINT _EC(1135) /// ??????? #define NET_ERROR_INVALID_FACE _EC(1136) /// ??????? #define NET_ERROR_INVALID_CARD _EC(1137) /// ?????? #define NET_ERROR_INVALID_USER _EC(1138) /// ??????? #define NET_ERROR_GET_SUBSERVICE _EC(1139) /// ???????????????? #define NET_ERROR_GET_METHOD _EC(1140) /// ???????????????? #define NET_ERROR_GET_SUBCAPS _EC(1141) /// ?????????????????? #define NET_ERROR_UPTO_INSERT_LIMIT _EC(1142) /// ?????????? #define NET_ERROR_UPTO_MAX_INSERT_RATE _EC(1143) /// ???????????? #define NET_ERROR_ERASE_FINGERPRINT _EC(1144) /// ????????????? #define NET_ERROR_ERASE_FACE _EC(1145) /// ????????????? #define NET_ERROR_ERASE_CARD _EC(1146) /// ???????????? #define NET_ERROR_NO_RECORD _EC(1147) /// ?????? #define NET_ERROR_NOMORE_RECORDS _EC(1148) /// ????????????????? #define NET_ERROR_RECORD_ALREADY_EXISTS _EC(1149) /// ????????????????????? #define NET_ERROR_EXCEED_MAX_FINGERPRINT_PERUSER _EC(1150) /// ??????????????????? #define NET_ERROR_EXCEED_MAX_CARD_PERUSER _EC(1151) /// ????????????????? #define NET_ERROR_EXCEED_ADMINISTRATOR_LIMIT _EC(1152) /// ???????????????????? #define NET_LOGIN_ERROR_DEVICE_NOT_SUPPORT_HIGHLEVEL_SECURITY_LOGIN _EC(1153) /// ????????????????? #define NET_LOGIN_ERROR_DEVICE_ONLY_SUPPORT_HIGHLEVEL_SECURITY_LOGIN _EC(1154) /// ???????????????? #define NET_ERROR_VIDEO_CHANNEL_OFFLINE _EC(1155) /// ??????????????????????????? #define NET_ERROR_USERID_FORMAT_INCORRECT _EC(1156) /// ?????????Z #define NET_ERROR_CANNOT_FIND_CHANNEL_RELATE_TO_SN _EC(1157) /// ???????SN???????? #define NET_ERROR_TASK_QUEUE_OF_CHANNEL_IS_FULL _EC(1158) /// ???????????????? #define NET_ERROR_APPLY_USER_INFO_BLOCK_FAIL _EC(1159) /// ???????????????(???)?? #define NET_ERROR_EXCEED_MAX_PASSWD_PERUSER _EC(1160) /// ??????????????????? #define NET_ERROR_PARSE_PROTOCOL _EC(1161) /// ??????????????????????? #define NET_ERROR_CARD_NUM_EXIST _EC(1162) /// ????????? #define NET_ERROR_FINGERPRINT_EXIST _EC(1163) /// ???????? #define NET_ERROR_OPEN_PLAYGROUP_FAIL _EC(1164) /// ?????????? #define NET_ERROR_ALREADY_IN_PLAYGROUP _EC(1165) /// ????????????? #define NET_ERROR_QUERY_PLAYGROUP_TIME_FAIL _EC(1166) /// ??????????????? #define NET_ERROR_SET_PLAYGROUP_BASECHANNEL_FAIL _EC(1167) /// ?????????????????? #define NET_ERROR_SET_PLAYGROUP_DIRECTION_FAIL _EC(1168) /// ???????????????? #define NET_ERROR_SET_PLAYGROUP_SPEED_FAIL _EC(1169) /// ???????????????? #define NET_ERROR_ADD_PLAYGROUP_FAIL _EC(1170) /// ??????????? #define NET_ERROR_EXPORT_AOL_LOGFILE_NO_AUTH _EC(1171) /// ????AOL???:????? #define NET_ERROR_EXPORT_AOL_LOGFILE_NO_FILE _EC(1172) /// ????AOL???:????????? #define NET_ERROR_EXPORT_AOL_LOGFILE_FILE_FAIL _EC(1173) /// ????AOL???:????????? #define NET_ERROR_EXPORT_AOL_LOGFILE_BUSY _EC(1174) /// ????AOL???:??? /// ?????APP??????????? #define NET_ERROR_EMPTY_LICENSE _EC(1175) /// License??? #define NET_ERROR_UNSUPPORTED_MODE _EC(1176) /// ???????? #define NET_ERROR_URL_APP_NOT_MATCH _EC(1177) /// URL??APP????? #define NET_ERROR_READ_INFO_FAILED _EC(1178) /// ????????? #define NET_ERROR_WRITE_FAILED _EC(1179) /// ??????? #define NET_ERROR_NO_SUCH_APP _EC(1180) /// ?????APP #define NET_ERROR_VERIFIF_FAILED _EC(1181) /// ??????? #define NET_ERROR_LICENSE_OUT_DATE _EC(1182) /// License????? #define NET_ERROR_UPGRADE_PROGRAM_TOO_OLD _EC(1183) /// ?????????????? #define NET_ERROR_SECURE_TRANSMIT_BEEN_CUT _EC(1184) /// ??????????? #define NET_ERROR_DEVICE_NOT_SUPPORT_SECURE_TRANSMIT _EC(1185) /// ?????????????? #define NET_ERROR_EXTRA_STREAM_LOGIN_FAIL_CAUSE_BY_MAIN_STREAM _EC(1186) /// ????????????????????????????? #define NET_ERROR_EXTRA_STREAM_CLOSED_BY_REMOTE_DEVICE _EC(1187) /// ????????????? /*?????????????? start*/ #define NET_ERROR_IMPORT_FACEDB_SEND_FAILD _EC(1188) /// ??????:??????????????? #define NET_ERROR_IMPORT_FACEDB_BUSY _EC(1189) /// ??????:???, ????????????? #define NET_ERROR_IMPORT_FACEDB_DATAERROR _EC(1190) /// ??????:???????????? #define NET_ERROR_IMPORT_FACEDB_DATAINVALID _EC(1191) /// ??????:???????? #define NET_ERROR_IMPORT_FACEDB_UPGRADE_FAILD _EC(1192) /// ??????:?????? #define NET_ERROR_IMPORT_FACEDB_NO_AUTHORITY _EC(1193) /// ??????:???????? #define NET_ERROR_IMPORT_FACEDB_ABNORMAL_FILE _EC(1194) /// ??????:???????? #define NET_ERROR_IMPORT_FACEDB_SYNC_FALID _EC(1195) /// ??????:??????,???????????? #define NET_ERROR_IMPORT_FACEDB_DBFULL _EC(1196) /// ??????:?????????, ??????? #define NET_ERROR_IMPORT_FACEDB_SDFULL _EC(1197) /// ??????:??????????, ??????? #define NET_ERROR_IMPORT_FACEDB_CIPHER_ERROR _EC(1198) /// ??????:??????????????? #define NET_ERROR_EXPORT_FACEDB_NO_AUTH _EC(1199) /// ??????:????? #define NET_ERROR_EXPORT_FACEDB_NO_FILE _EC(1200) /// ??????:????????? #define NET_ERROR_EXPORT_FACEDB_FILE_FAIL _EC(1201) /// ??????:????????? #define NET_ERROR_EXPORT_FACEDB_BUSY _EC(1202) /// ??????:??? #define NET_ERROR_EXPORT_FACEDB_NO_PASSWORD _EC(1203) /// ??????:??????????, ?????????? /*?????????????? end*/ #define NET_ERROR_REQUESTED_TOO_MUCH_DATA _EC(1204) /// ???????????????????????? #define NET_ERROR_BATCH_PROCESS_ERROR _EC(1205) /// ?????????????????????????? #define NET_ERROR_OPERATION_CANCELLED _EC(1206) /// ??????????????? #define NET_ERROR_DEVICE_INVALID _EC(1207) /// ?????????????????????? #define NET_ERROR_DEVICE_UNAVAILABLE _EC(1208) /// ???????????????? #define NET_ERROR_FINGERPRINT_DOWNLOAD_FAIL _EC(1209) /// ??????URL????????????? #define NET_ERROR_ACCOUNT_IN_USE _EC(1210) /// ???????? #define NET_ERROR_IRIS_INFO_NOT_EXISTED _EC(1211) /// ??????????????,???????????? #define NET_ERROR_INVALID_IRIS_DATA _EC(1212) /// ?????????????????????????????? #define NET_ERROR_IRIS_ALREADY_EXIST _EC(1213) /// ??????????? #define NET_ERROR_ERASE_IRIS_FAILED _EC(1214) /// ???????????? #define NET_ERROR_EXCEED_MAX_IRIS_GROUP_COUNT_PER_USER _EC(1215) /// ???????????????????????????????????(??????)???? #define NET_ERROR_EXCEED_MAX_IRIS_COUNT_PER_GROUP _EC(1216) /// ???????????????????????????????? #define NET_ERROR_DOOR_IN_NORMALLY_OPEN_STATUS _EC(1217) /// ?????????? #define NET_ERROR_DOOR_IN_NORMALLY_CLOSED_STATUS _EC(1218) /// ?????????? #define NET_ERROR_DOOR_IN_INTERLOCK_STATUS _EC(1219) /// ?????????? /* ??????????????? ???? _EC(1300) ~ _EC(1400) */ #define NET_ERROR_FACEMANAGER_NO_FACE_DETECTED _EC(1300) /// ???????0????? #define NET_ERROR_FACEMANAGER_MULTI_FACE_DETECTED _EC(1301) /// ???????????????????????? #define NET_ERROR_FACEMANAGER_PICTURE_DECODING_ERROR _EC(1302) /// ????????? #define NET_ERROR_FACEMANAGER_LOW_PICTURE_QUALITY _EC(1303) /// ????????? #define NET_ERROR_FACEMANAGER_NOT_RECOMMENDED _EC(1304) /// ???????????????????????????????????????????????????????????? #define NET_ERROR_FACEMANAGER_FACE_FEATURE_ALREADY_EXIST _EC(1305) /// ???????????? #define NET_ERROR_FACEMANAGER_FACE_ANGLE_OVER_THRESHOLDS _EC(1307) /// ??????????????? #define NET_ERROR_FACEMANAGER_FACE_RADIO_EXCEEDS_RANGE _EC(1308) /// ????????????????????????:???????2/3;???????1/3 #define NET_ERROR_FACEMANAGER_FACE_OVER_EXPOSED _EC(1309) /// ?????? #define NET_ERROR_FACEMANAGER_FACE_UNDER_EXPOSED _EC(1310) /// ?????? #define NET_ERROR_FACEMANAGER_BRIGHTNESS_IMBALANCE _EC(1311) /// ???????????? ,?????????????? #define NET_ERROR_FACEMANAGER_FACE_LOWER_CONFIDENCE _EC(1312) /// ?????????? #define NET_ERROR_FACEMANAGER_FACE_LOW_ALIGN _EC(1313) /// ??????????? #define NET_ERROR_FACEMANAGER_FRAGMENTARY_FACE_DETECTED _EC(1314) /// ????????????????? #define NET_ERROR_FACEMANAGER_PUPIL_DISTANCE_NOT_ENOUGH _EC(1315) /// ????????????? #define NET_ERROR_FACEMANAGER_FACE_DATA_DOWNLOAD_FAILED _EC(1316) /// ?????????????? /// ????????????????? #define NET_ERROR_CITIZENMANAGER_ERROR_WORKINGMODE_ERROR _EC(1317) /// ?????????? #define NET_ERROR_CITIZENMANAGER_ERROR_CAPTURE_BUSY _EC(1318) /// ???????? #define NET_ERROR_CITIZENMANAGER_ERROR_CAPTURE_TYPE_ERROR _EC(1319) /// ???????????? #define NET_ERROR_NORMAL_USER_NOTSUPPORT _EC(1320) /// ??????????????? /// ????? #define NET_ERROR_THERMOGRAPHY_REF_SENSOR_OPEN_INVALID _EC(1321) /// ????????????????????????????????? #define NET_ERROR_THERMOGRAPHY_REF_DELAY_SHUT_DOWN_INVALID _EC(1322) /// ????????????????????????????? #define NET_ERROR_CITIZENID_EXIST _EC(1323) /// ?????????? #define NET_ERROR_FACEMANAGER_FACE_FFE_FAILED _EC(1324) /// ???????????????????????????? #define NET_ERROR_FACEMANAGER_PHOTO_FEATURE_FAILED_FOR_FA _EC(1325) /// ??????????????????????????????????????????????? #define NET_ERROR_FACEMANAGER_FACE_DATA_PHOTO_INCOMPLETE _EC(1326) /// ???????????? #define NET_ERROR_DATABASE_ERROR_INSERT_OVERFLOW _EC(1327) /// ????????????? /*?????????????? start*/ #define NET_ERROR_WORKSUIT_COMPARE_SERVER_GROUPID_EXCEED _EC(1328) /// ?????????:??ID???????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_ABSTRACT_INIT_ERROR _EC(1329) /// ?????????:???????????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_GROUPID_NOT_FOUND _EC(1330) /// ?????????:??ID?????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_DATABASE_ERROR _EC(1331) /// ?????????:?????????????????database?????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_TOKEN_ERROR _EC(1332) /// ?????????:????????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_BEGINNUM_OVERRUN _EC(1333) /// ?????????:???????????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_ABSTRACT_STATE _EC(1334) /// ?????????:????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_BIGPIC_MAXNUM _EC(1335) /// ?????????:???????????????????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_OBJECT_MAXNUM _EC(1336) /// ?????????:??????????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_GROUP_SPACE_EXCEED _EC(1337) /// ?????????:????????????????? #define NET_ERROR_WORKSUIT_COMPARE_SERVER_ABSTRACTNUM_ZERO _EC(1338) /// ?????????:?????????????0 #define NET_ERROR_WORKSUIT_COMPARE_SERVER_INVALID_PARAM _EC(1339) /// ?????????:???????? /*?????????????? end*/ #define NET_ERROR_CARD_NOT_EXIST _EC(1340) /// ????????? #define NET_ERROR_TEMPORARY_OUTDATED _EC(1341) /// ??????? /*???????????????????start, ????_EC(1401) ~ _EC(1500)*/ #define NET_SUBBIZ_INVALID_SOCKET _EC(1401) /// ?????????? #define NET_SUBBIZ_PAUSE_ERROR _EC(1402) /// ???????????????? #define NET_SUBBIZ_GET_PORT_ERROR _EC(1403) /// ???????????????????????? /*???????????????????End*/ ///@brief MACRO_GROUP_ERROR_0_END /************************************************************************ ** ?????? ***********************************************************************/ ///@brief ?????????????? CLIENT_QueryNetStat ?????? typedef enum tagEM_NET_QUERY_TYPE { NET_APP_DATA_STAT , /// ???????????????,(???????NET_IN_NETAPP_NET_DATA_STAT,???????NET_OUT_NETAPP_NET_DATA_STAT) NET_APP_LINK_STAT , /// ?????????????,(???????NET_IN_NETAPP_LINK_STATUS,???????NET_OUT_NETAPP_LINK_STATUS) }EM_NET_QUERY_TYPE; ///@brief ?????? CLIENT_CapturePictureEx ?????? typedef enum tagNET_CAPTURE_FORMATS { NET_CAPTURE_BMP, /// BMP NET_CAPTURE_JPEG, /// 100%??????JPEG NET_CAPTURE_JPEG_70, /// 70%??????JPEG NET_CAPTURE_JPEG_50, /// 50%??????JPEG NET_CAPTURE_JPEG_30, /// 30%??????JPEG NET_CAPTURE_JPEG_10 /// 10%??????JPEG }NET_CAPTURE_FORMATS; ///@brief ??????? typedef enum tagNET_DEVICE_TYPE { NET_PRODUCT_NONE = 0, NET_DVR_NONREALTIME_MACE, /// ????MACE NET_DVR_NONREALTIME, /// ???? NET_NVS_MPEG1, /// ????????????? NET_DVR_MPEG1_2, /// MPEG1???????? NET_DVR_MPEG1_8, /// MPEG1???????? NET_DVR_MPEG4_8, /// MPEG4???????? NET_DVR_MPEG4_16, /// MPEG4????????? NET_DVR_MPEG4_SX2, /// LB??????? NET_DVR_MEPG4_ST2, /// GB??????? NET_DVR_MEPG4_SH2, /// HB??????? 10 NET_DVR_MPEG4_GBE, /// GBE??????? NET_DVR_MPEG4_NVSII, /// II??????????????? NET_DVR_STD_NEW, /// ????????????? NET_DVR_DDNS, /// DDNS?????? NET_DVR_ATM, /// ATM?? NET_NB_SERIAL, /// ????????NB??????? NET_LN_SERIAL, /// LN?????? NET_BAV_SERIAL, /// BAV?????? NET_SDIP_SERIAL, /// SDIP?????? NET_IPC_SERIAL, /// IPC?????? 20 NET_NVS_B, /// NVS B??? NET_NVS_C, /// NVS H??? NET_NVS_S, /// NVS S??? NET_NVS_E, /// NVS E??? NET_DVR_NEW_PROTOCOL, /// ??QueryDevState????????????,?????????? NET_NVD_SERIAL, /// ?????? NET_DVR_N5, /// N5 NET_DVR_MIX_DVR, /// ???DVR NET_SVR_SERIAL, /// SVR??? NET_SVR_BS, /// SVR-BS 30 NET_NVR_SERIAL, /// NVR??? NET_DVR_N51, /// N51 NET_ITSE_SERIAL, /// ITSE ????????? NET_ITC_SERIAL, /// ???????????? NET_HWS_SERIAL, /// ????????HWS NET_PVR_SERIAL, /// ?????????????? NET_IVS_SERIAL, /// IVS???????????????????? NET_IVS_B, /// ?????????????????? NET_IVS_F, /// ??????????? NET_IVS_V, /// ??????????????? 40 NET_MATRIX_SERIAL, /// ???? NET_DVR_N52, /// N52 NET_DVR_N56, /// N56 NET_ESS_SERIAL, /// ESS NET_IVS_PC, /// ???????????? NET_PC_NVR, /// pc-nvr NET_DSCON, /// ?????????? NET_EVS, /// ???????????????? NET_EIVS, /// ???????????????? NET_DVR_N6, /// DVR-N6 50 NET_UDS, /// ????????? NET_AF6016, /// ???????????? NET_AS5008, /// ???????d?????? NET_AH2008, /// ????d?????? NET_A_SERIAL, /// ??????????? NET_BSC_SERIAL, /// ????????? NET_NVS_SERIAL, /// NVS?????? NET_VTO_SERIAL, /// VTO?????? NET_VTNC_SERIAL, /// VTNC?????? NET_TPC_SERIAL, /// TPC??????, ?????????? 60 NET_ASM_SERIAL, /// ??????????? NET_VTS_SERIAL, /// ?????? NET_ARC2016C, /// ????????ARC2016C NET_ASA, /// ????? NET_VTT_SERIAL, /// ????????? NET_VTA_SERIAL, /// ?????? NET_VTNS_SERIAL, /// SIP?????? NET_VTH_SERIAL, /// ????? NET_IVSS, /// IVSS??? NET_ASG, /// ????? NET_RADAR, /// ????? NET_RADAR_PTZ, /// ????? NET_RADAR_CAM, /// ??????? NET_ASE, /// ?????? NET_XRAY_SERVER, /// ????????? NET_XRAY_DEVICE, /// ???????? NET_SECURITY_GATE, /// ?????? NET_TS, /// ??????????? NET_GP, /// ??????? NET_EAS, ///??????????? NET_KVM_IN, /// KVM?????? NET_KVM_OUT, /// KVM?????? NET_LCS, /// LED?????? }NET_DEVICE_TYPE ; ///@brief ???????? typedef enum __LANGUAGE_TYPE { DH_LANGUAGE_ENGLISH, /// ??? DH_LANGUAGE_CHINESE_SIMPLIFIED, /// ???????? DH_LANGUAGE_CHINESE_TRADITIONAL, /// ???????? DH_LANGUAGE_ITALIAN, /// ??????? DH_LANGUAGE_SPANISH, /// ???????? DH_LANGUAGE_JAPANESE, /// ????? DH_LANGUAGE_RUSSIAN, /// ????? DH_LANGUAGE_FRENCH, /// ????? DH_LANGUAGE_GERMAN, /// ????? DH_LANGUAGE_PORTUGUESE, /// ???????? DH_LANGUAGE_TURKEY, /// ???????? DH_LANGUAGE_POLISH, /// ?????? DH_LANGUAGE_ROMANIAN, /// ???????? DH_LANGUAGE_HUNGARIAN, /// ???????? DH_LANGUAGE_FINNISH, /// ?????? DH_LANGUAGE_ESTONIAN, /// ????????? DH_LANGUAGE_KOREAN, /// ???? DH_LANGUAGE_FARSI, /// ????? DH_LANGUAGE_DANSK, /// ?????? DH_LANGUAGE_CZECHISH, /// ????? DH_LANGUAGE_BULGARIA, /// ?????????? DH_LANGUAGE_SLOVAKIAN, /// ???????? DH_LANGUAGE_SLOVENIA, /// ??????????? DH_LANGUAGE_CROATIAN, /// ????????? DH_LANGUAGE_DUTCH, /// ?????? DH_LANGUAGE_GREEK, /// ????? DH_LANGUAGE_UKRAINIAN, /// ??????? DH_LANGUAGE_SWEDISH, /// ????? DH_LANGUAGE_SERBIAN, /// ????????? DH_LANGUAGE_VIETNAMESE, /// ????? DH_LANGUAGE_LITHUANIAN, /// ???????? DH_LANGUAGE_FILIPINO, /// ??????? DH_LANGUAGE_ARABIC, /// ???????? DH_LANGUAGE_CATALAN, /// ??????????? DH_LANGUAGE_LATVIAN, /// ????????? DH_LANGUAGE_THAI, /// ??? DH_LANGUAGE_HEBREW, /// ??????? DH_LANGUAGE_Bosnian, /// ????????? } DH_LANGUAGE_TYPE; ///@brief ???????? typedef enum __EM_UPGRADE_TYPE { DH_UPGRADE_BIOS_TYPE = 1, /// BIOS???? DH_UPGRADE_WEB_TYPE, /// WEB???? DH_UPGRADE_BOOT_YPE, /// BOOT???? DH_UPGRADE_CHARACTER_TYPE, /// ????? DH_UPGRADE_LOGO_TYPE, /// LOGO DH_UPGRADE_EXE_TYPE, /// EXE,??????????? DH_UPGRADE_DEVCONSTINFO_TYPE, /// ??????????????(??????ID,MAC,??????) DH_UPGRADE_PERIPHERAL_TYPE, /// ?????????(??f??287???) DH_UPGRADE_GEOINFO_TYPE, /// ????????????? DH_UPGRADE_MENU, /// ????????????????????? DH_UPGRADE_ROUTE, /// ???????????M???????? DH_UPGRADE_ROUTE_STATE_AUTO, /// ?????????????????????????? DH_UPGRADE_SCREEN, /// ??????????M?????????? } EM_UPGRADE_TYPE; ///@brief ???????(???????????????) typedef enum __REC_TYPE { DH_REC_TYPE_TIM = 0, DH_REC_TYPE_MTD, DH_REC_TYPE_ALM, DH_REC_TYPE_NUM = 3, } REC_TYPE; ///@brief ???????? typedef enum __GPRSCDMA_NETWORK_TYPE { DH_TYPE_AUTOSEL = 0, /// ?????? DH_TYPE_TD_SCDMA, /// TD-SCDMA???? DH_TYPE_WCDMA, /// WCDMA???? DH_TYPE_CDMA_1x, /// CDMA 1.x???? DH_TYPE_EDGE, /// GPRS???? DH_TYPE_EVDO, /// EVDO???? DH_TYPE_WIFI, /// ???? } EM_GPRSCDMA_NETWORK_TYPE; ///@brief ???????,???CLIENT_SetSubconnCallBack??? typedef enum __EM_INTERFACE_TYPE { DH_INTERFACE_OTHER = 0x00000000, /// ?????? DH_INTERFACE_REALPLAY, /// ???????? DH_INTERFACE_PREVIEW, /// ?????????? DH_INTERFACE_PLAYBACK, /// ????? DH_INTERFACE_DOWNLOAD, /// ?????? DH_INTERFACE_REALLOADPIC, /// ????????????? } EM_INTERFACE_TYPE; ///@brief ???????????????? typedef enum _EM_REALPLAY_DISCONNECT_EVENT_TYPE { DISCONNECT_EVENT_REAVE, /// ????????????????????? DISCONNECT_EVENT_NETFORBID, /// ??????? DISCONNECT_EVENT_SUBCONNECT, /// ??????????? }EM_REALPLAY_DISCONNECT_EVENT_TYPE; ///@brief ?????????????????? typedef enum __EM_EVENT_FILETAG { DH_ATMBEFOREPASTE = 1, /// ATM????? DH_ATMAFTERPASTE, /// ATM?????? }EM_EVENT_FILETAG; ///@brief IPC???? typedef enum __EM_IPC_TYPE { DH_IPC_PRIVATE, /// ??? DH_IPC_AEBELL, /// AEBELL DH_IPC_PANASONIC, /// PANASONIC DH_IPC_SONY, /// SONY DH_IPC_DYNACOLOR, /// Dynacolor DH_IPC_TCWS = 5, /// TCWS DH_IPC_SAMSUNG, /// SAMSUNG DH_IPC_YOKO, /// YOKO DH_IPC_AXIS, /// AXIS DH_IPC_SANYO, /// SANYO DH_IPC_BOSH = 10, /// Bosch DH_IPC_PECLO, /// Peclo DH_IPC_PROVIDEO, /// Provideo DH_IPC_ACTI, /// ACTi DH_IPC_VIVOTEK, /// Vivotek DH_IPC_ARECONT = 15, /// Arecont DH_IPC_PRIVATEEH, /// PrivateEH DH_IPC_IMATEK, /// IMatek DH_IPC_SHANY, /// Shany DH_IPC_VIDEOTREC, /// VIDEOTREC DH_IPC_URA = 20, /// Ura DH_IPC_BITICINO, /// Bticino DH_IPC_ONVIF, /// Onvif???????? DH_IPC_SHEPHERD, /// SHEPHERD DH_IPC_YAAN, /// YAAN DH_IPC_AIRPOINT = 25, /// Airpop DH_IPC_TYCO, /// TYCO DH_IPC_XUNMEI, /// XUNMEI DH_IPC_HIKVISION, DH_IPC_LG, /// LG DH_IPC_AOQIMAN = 30, /// AOQIMAN DH_IPC_BAOKANG, /// BAOKANG DH_IPC_WATCHNET, /// Watchnet DH_IPC_XVISION, /// Xvision DH_IPC_FUSITSU, /// FUSITSU DH_IPC_CANON = 35, /// Canon DH_IPC_GE, /// GE DH_IPC_Basler, /// Basler DH_IPC_Patro, /// Patro DH_IPC_CPKNC, /// CPPLUS K??? DH_IPC_CPRNC = 40, /// CPPLUS R??? DH_IPC_CPUNC, /// CPPLUS U??? DH_IPC_CPPLUS, /// CPPLUS IPC DH_IPC_XunmeiS, /// XunmeiS,????????Onvif DH_IPC_GDDW, /// GDDW DH_IPC_PSIA = 45, /// PSIA DH_IPC_GB2818, /// GB2818 DH_IPC_GDYX, /// GDYX DH_IPC_OTHER, /// ?????????? DH_IPC_CPUNR, /// CPPLUS NVR DH_IPC_CPUAR = 50, /// CPPLUS DVR DH_IPC_AIRLIVE, /// Airlive DH_IPC_NPE, /// NPE DH_IPC_AXVIEW, /// AXVIEW DH_IPC_DFWL, /// DFWL DH_IPC_HYUNDAI = 56, /// HYUNDAI DVR DH_IPC_APHD, /// APHD DH_IPC_WELLTRANS , /// WELLTRANS DH_IPC_CDJF, /// CDJF DH_IPC_JVC = 60, /// JVC DH_IPC_INFINOVA, /// INFINOVA DH_IPC_ADT, /// ADT DH_IPC_SIVIDI, /// SIVIDI DH_IPC_CPUNP, /// CPPLUS ??? DH_IPC_HX = 65, /// HX DH_IPC_TJGS, /// TJGS DH_IPC_MULTICAST = 79, /// ??? DH_IPC_RVI = 84, /// RVi DH_IPC_HONEYWELL = 95, /// Honeywell DH_IPC_QNAP = 98, /// QNAP }EM_IPC_TYPE; ///@brief H264 ?????? typedef enum __EM_H264_PROFILE_RANK { DH_PROFILE_BASELINE = 1, /// ??I/P?,?????progressive(???????)??CAVLC DH_PROFILE_MAIN, /// ??I/P/B?,???progressiv??interlaced,??CAVLC??CABAC DH_PROFILE_EXTENDED, /// ??I/P/B/SP/SI?,?????progressive(???????)??CAVLC DH_PROFILE_HIGH = 4, /// ??FRExt,Main_Profile????????????8x8 intra prediction(8x8 ??????), custom /// quant(?????????), lossless video coding(???????????), ?????yuv??? }EM_H264_PROFILE_RANK; ///@brief ?????? typedef enum __EM_DISK_TYPE { DH_DISK_READ_WRITE, /// ?????????? DH_DISK_READ_ONLY, /// ????????? DH_DISK_BACKUP, /// ????????????????????? DH_DISK_REDUNDANT, /// ?????????? DH_DISK_SNAPSHOT, /// ?????????? }EM_DISK_TYPE; ///@brief ???????????????? typedef enum __EM_ENCRYPT_ALOG_WORKMODE { ENCRYPT_ALOG_WORKMODE_ECB, /// ECB?? ENCRYPT_ALOG_WORKMODE_CBC, /// CBC?? ENCRYPT_ALOG_WORKMODE_CFB, /// CFB?? ENCRYPT_ALOG_WORKMODE_OFB, /// OFB?? }EM_ENCRYPT_ALOG_WORKMODE; ///@brief PPP?????? typedef enum __EM_MOBILE_PPP_STATE { MOBILE_PPP_UP = 0, /// ??????????? MOBILE_PPP_DOWN, /// ppp?????? MOBILE_PPP_CONNECTING, /// ??????????? MOBILE_PPP_CLOSEING, /// ??????PPP???? } EM_MOBILE_PPP_STATE; ///@brief ?????????? typedef enum __EM_3GMOBILE_STATE { MOBILE_MODULE_OFF, /// ???3g????????? MOBILE_MODULE_STARTING, /// ???3g??????????????? MOBILE_MODULE_WORKING, /// ???3g???????????????? }EM_3GMOBILE_STATE; ///@brief ??????? typedef enum tagEM_LOGIN_SPAC_CAP_TYPE { EM_LOGIN_SPEC_CAP_TCP = 0, /// TCP???, ????? EM_LOGIN_SPEC_CAP_ANY = 1, /// ????????? EM_LOGIN_SPEC_CAP_SERVER_CONN = 2, /// ??????????? EM_LOGIN_SPEC_CAP_MULTICAST = 3, /// ?????? EM_LOGIN_SPEC_CAP_UDP = 4, /// UDP????????? EM_LOGIN_SPEC_CAP_MAIN_CONN_ONLY = 6, /// ??????????????? EM_LOGIN_SPEC_CAP_SSL = 7, /// SSL????????? EM_LOGIN_SPEC_CAP_INTELLIGENT_BOX = 9, /// ?????????????? EM_LOGIN_SPEC_CAP_NO_CONFIG = 10, /// ??????????????????? EM_LOGIN_SPEC_CAP_U_LOGIN = 11, /// ??U?????????? EM_LOGIN_SPEC_CAP_LDAP = 12, /// LDAP?????? EM_LOGIN_SPEC_CAP_AD = 13, /// AD??ActiveDirectory???????? EM_LOGIN_SPEC_CAP_RADIUS = 14, /// Radius ?????? EM_LOGIN_SPEC_CAP_SOCKET_5 = 15, /// Socks5?????? EM_LOGIN_SPEC_CAP_CLOUD = 16, /// ??????? EM_LOGIN_SPEC_CAP_AUTH_TWICE = 17, /// ????????????? EM_LOGIN_SPEC_CAP_TS = 18, /// TS?????????????? EM_LOGIN_SPEC_CAP_P2P = 19, /// ?P2P?????? EM_LOGIN_SPEC_CAP_MOBILE = 20, /// ?????????? EM_LOGIN_SPEC_CAP_TLS_ADAPTER = 21, /// ?????tls???? EM_LOGIN_SPEC_CAP_TLS_COMPEL = 22, /// ???tls???? EM_LOGIN_SPEC_CAP_TLS_MAIN_ONLY = 23, /// ????tls???? EM_LOGIN_SPEC_CAP_NTLS_VERIFY = 24, /// ????tls?????????-??????????TLS,?????????CLIENT_SetSDKLocalCfg???,????????TLS????????????????? EM_LOGIN_SPEC_CAP_INVALID /// ??????????? }EM_LOGIN_SPAC_CAP_TYPE; ///@brief ???????????????nSpecCap?EM_LOGIN_SPEC_CAP_NTLS_VERIFY???pCapParam???????????????????????????TLS??????? typedef struct tagNET_LOGIN_NTLS_PARAM { BOOL bUseHardEngine; /// ???????????????? BYTE byReserved[60]; /// ??????? }NET_LOGIN_NTLS_PARAM; //////////////////////////////??????///////////////////////////////// ///@brief ???????,???CLIENT_RealPlayEx??? typedef enum _RealPlayType { DH_RType_Realplay = 0, /// ????? DH_RType_Multiplay, /// ??????? DH_RType_Realplay_0, /// ?????-??????,?????DH_RType_Realplay DH_RType_Realplay_1, /// ?????-??????1 DH_RType_Realplay_2, /// ?????-??????2 DH_RType_Realplay_3, /// ?????-??????3 DH_RType_Multiplay_1, /// ?????????1???? DH_RType_Multiplay_4, /// ?????????4???? DH_RType_Multiplay_8, /// ?????????8???? DH_RType_Multiplay_9, /// ?????????9???? DH_RType_Multiplay_16, /// ?????????16???? DH_RType_Multiplay_6, /// ?????????6???? DH_RType_Multiplay_12, /// ?????????12???? DH_RType_Multiplay_25, /// ?????????25???? DH_RType_Multiplay_36, /// ?????????36???? DH_RType_Multiplay_64, /// ?????????64???? DH_RType_Multiplay_255, /// ??????????????? DH_RType_Realplay_Audio, /// ??????, ????? DH_RType_Realplay_Test = 255, /// ???????????? } DH_RealPlayType; //////////////////////////////??????///////////////////////////////// ///@brief ?????????????? typedef enum _PTZ_ControlType { DH_PTZ_UP_CONTROL = 0, /// ?? ?????parma2(1-8) DH_PTZ_DOWN_CONTROL, /// ?? ?????parma2(1-8) DH_PTZ_LEFT_CONTROL, /// ?? ?????parma2(1-8) DH_PTZ_RIGHT_CONTROL, /// ?? ?????parma2(1-8) DH_PTZ_ZOOM_ADD_CONTROL, /// ??+ ???param2 DH_PTZ_ZOOM_DEC_CONTROL, /// ??- ???param2 DH_PTZ_FOCUS_ADD_CONTROL, /// ????- ???param2 DH_PTZ_FOCUS_DEC_CONTROL, /// ????+ ???param2 DH_PTZ_APERTURE_ADD_CONTROL, /// ???+ ???param2 DH_PTZ_APERTURE_DEC_CONTROL, /// ???- ???param2 DH_PTZ_POINT_MOVE_CONTROL, /// ??????? param2???????? DH_PTZ_POINT_SET_CONTROL, /// ???? param2????????????????????????????????? param4???????????????????????????????63????param3?????bool???????param3?ture???????????????255????? DH_PTZ_POINT_DEL_CONTROL, /// ??? param2???????? DH_PTZ_POINT_LOOP_CONTROL, /// ?????? param1???????? DH_PTZ_LAMP_CONTROL /// ?????? ???param1(1-????,0-???) } DH_PTZ_ControlType; ///@brief ?????????????? typedef enum _EXTPTZ_ControlType { DH_EXTPTZ_LEFTTOP = 0x20, /// ???? DH_EXTPTZ_RIGHTTOP, /// ???? DH_EXTPTZ_LEFTDOWN, /// ???? DH_EXTPTZ_RIGHTDOWN, /// ???? DH_EXTPTZ_ADDTOLOOP, /// ??????????? ??????? ????? DH_EXTPTZ_DELFROMLOOP, /// ???????????? ??????? ????? DH_EXTPTZ_CLOSELOOP, /// ?????? ??????? DH_EXTPTZ_STARTPANCRUISE, /// ???????? DH_EXTPTZ_STOPPANCRUISE, /// ??????? DH_EXTPTZ_SETLEFTBORDER, /// ???????? DH_EXTPTZ_SETRIGHTBORDER, /// ???????? DH_EXTPTZ_STARTLINESCAN, /// ?????? DH_EXTPTZ_CLOSELINESCAN, /// ????? DH_EXTPTZ_SETMODESTART, /// ????????? ?????? DH_EXTPTZ_SETMODESTOP, /// ?????????? ?????? DH_EXTPTZ_RUNMODE, /// ?????? ?????? DH_EXTPTZ_STOPMODE, /// ???? ?????? DH_EXTPTZ_DELETEMODE, /// ????? ?????? DH_EXTPTZ_REVERSECOMM, /// ??????? DH_EXTPTZ_FASTGOTO, /// ??????? ??????(-8191~8191) ???????(-8191~8191) ??(-16~16) DH_EXTPTZ_AUXIOPEN, /// ????????? ??????(param4??? PTZ_CONTROL_AUXILIARY,param1??param2??param3????,dwStop?????FALSE) DH_EXTPTZ_AUXICLOSE, /// ????????? ??????(param4??? PTZ_CONTROL_AUXILIARY,param1??param2??param3????,dwStop?????FALSE) DH_EXTPTZ_OPENMENU = 0x36, /// ???????? DH_EXTPTZ_CLOSEMENU, /// ????? DH_EXTPTZ_MENUOK, /// ?????? DH_EXTPTZ_MENUCANCEL, /// ?????? DH_EXTPTZ_MENUUP, /// ????? DH_EXTPTZ_MENUDOWN, /// ????? DH_EXTPTZ_MENULEFT, /// ????? DH_EXTPTZ_MENURIGHT, /// ????? DH_EXTPTZ_ALARMHANDLE = 0x40, /// ??????????? parm1???????????????parm2??????????????1-????2-???3-?????parm3???????,??????? DH_EXTPTZ_MATRIXSWITCH = 0x41, /// ???????? parm1?????????(????????)??parm2???????????parm3??????? DH_EXTPTZ_LIGHTCONTROL, /// ???????? DH_EXTPTZ_EXACTGOTO, /// ?????????? parm1???????(0~3600)??parm2?????????(-1800-1800)??parm3????(1~128),???????,???????????? DH_EXTPTZ_RESETZERO, /// ??????????????? DH_EXTPTZ_MOVE_ABSOLUTELY, /// ???????????????,param4????? PTZ_CONTROL_ABSOLUTELY DH_EXTPTZ_MOVE_CONTINUOUSLY, /// ???????????????,param4????? PTZ_CONTROL_CONTINUOUSLY DH_EXTPTZ_GOTOPRESET, /// ???????????,??????????????????,parm4?????PTZ_CONTROL_GOTOPRESET DH_EXTPTZ_SET_VIEW_RANGE = 0x49, /// ?????????(param4????? PTZ_VIEW_RANGE_INFO) DH_EXTPTZ_FOCUS_ABSOLUTELY = 0x4A, /// ??????(param4?????PTZ_FOCUS_ABSOLUTELY) DH_EXTPTZ_HORSECTORSCAN = 0x4B, /// ?????(param4???PTZ_CONTROL_SECTORSCAN,param1??param2??param3????) DH_EXTPTZ_VERSECTORSCAN = 0x4C, /// ??????(param4???PTZ_CONTROL_SECTORSCAN,param1??param2??param3????) DH_EXTPTZ_SET_ABS_ZOOMFOCUS = 0x4D, /// ?????????????,param1?????,????:[0,255],param2????,????:[0,255],param3??param4???? DH_EXTPTZ_SET_FISHEYE_EPTZ = 0x4E, /// ??????????????,param4????? PTZ_CONTROL_SET_FISHEYE_EPTZ DH_EXTPTZ_SET_TRACK_START = 0x4F, /// ????????????(param4???????? PTZ_CONTROL_SET_TRACK_CONTROL,dwStop??FALSE, param1??param2??param3????) DH_EXTPTZ_SET_TRACK_STOP = 0x50, /// ???????????(param4???????? PTZ_CONTROL_SET_TRACK_CONTROL,dwStop??FALSE,param1??param2??param3????) DH_EXTPTZ_RESTART = 0x51, /// ???????????(param1??param2??param3 param4 ??????,dwStop?????FALSE) DH_EXTPTZ_INTELLI_TRACKMOVE = 0x52, /// ??????????,??????????,param4????? PTZ_CONTROL_INTELLI_TRACKMOVE DH_EXTPTZ_SET_FOCUS_REGION = 0x53, /// ??????????????(param4????????PTZ_CONTROL_SET_FOCUS_REGION,dwStop??FALSE,param1??param2??param3????) DH_EXTPTZ_PAUSELINESCAN = 0x54, /// ??????(param1??param2??param3param4????????dwStop?????FALSE) DH_EXTPTZ_INTELLI_SETLENSWISDOMSTATE = 0x55,/// ???????????????(param4????????PTZ_CONTROL_INTELLI_SETLENSWISDOMSTATE,dwStop??FALSE,param1??param2??param3????) DH_EXTPTZ_INTELLI_SETFOCUSAREA = 0x56, /// ??????????(param4????????PTZ_CONTROL_INTELLI_SETFOCUSAREA,dwStop??FALSE,param1??param2??param3????) /// ???????????????????????????????????????????????????????????????????????????????? DH_EXTPTZ_UP_TELE = 0x70, /// ?? + TELE param1=???(1-8),??? DH_EXTPTZ_DOWN_TELE, /// ?? + TELE DH_EXTPTZ_LEFT_TELE, /// ?? + TELE DH_EXTPTZ_RIGHT_TELE, /// ?? + TELE DH_EXTPTZ_LEFTUP_TELE, /// ???? + TELE DH_EXTPTZ_LEFTDOWN_TELE, /// ???? + TELE DH_EXTPTZ_TIGHTUP_TELE, /// ???? + TELE DH_EXTPTZ_RIGHTDOWN_TELE, /// ???? + TELE DH_EXTPTZ_UP_WIDE, /// ?? + WIDE param1=???(1-8),??? DH_EXTPTZ_DOWN_WIDE, /// ?? + WIDE DH_EXTPTZ_LEFT_WIDE, /// ?? + WIDE DH_EXTPTZ_RIGHT_WIDE, /// ?? + WIDE DH_EXTPTZ_LEFTUP_WIDE, /// ???? + WIDE DH_EXTPTZ_LEFTDOWN_WIDE, /// ???? + WIDE DH_EXTPTZ_TIGHTUP_WIDE, /// ???? + WIDE DH_EXTPTZ_RIGHTDOWN_WIDE, /// ???? + WIDE DH_EXTPTZ_GOTOPRESETSNAP = 0x80, /// ????????? DH_EXTPTZ_DIRECTIONCALIBRATION = 0x82, /// ???????????????????? DH_EXTPTZ_SINGLEDIRECTIONCALIBRATION = 0x83, /// ????????????????????,param4????? NET_IN_CALIBRATE_SINGLEDIRECTION DH_EXTPTZ_MOVE_RELATIVELY = 0x84, /// ?????????,param4????? NET_IN_MOVERELATIVELY_INFO DH_EXTPTZ_SET_DIRECTION = 0x85, /// ???????????, param4????? NET_IN_SET_DIRECTION_INFO DH_EXTPTZ_BASE_MOVE_ABSOLUTELY = 0x86, /// ??????????????????, param4????? NET_IN_PTZBASE_MOVEABSOLUTELY_INFO????? CFG_CAP_CMD_PTZ ???????????????( CFG_PTZ_PROTOCOL_CAPS_INFO )????bSupportReal?TRUE??????????????? DH_EXTPTZ_BASE_MOVE_CONTINUOUSLY, /// ??????????????????, param4 ????? NET_IN_PTZBASE_MOVE_CONTINUOUSLY_INFO. ??? CFG_CAP_CMD_PTZ ??????????????? /// ?? CFG_PTZ_PROTOCOL_CAPS_INFO ?? stuMoveContinuously ????? stuType.bSupportExtra ? TRUE, ?????????????? DH_EXTPTZ_BASE_SET_FOCUS_MAP_VALUE, /// ?????????????, param4??????? NET_IN_PTZBASE_SET_FOCUS_MAP_VALUE_INFO DH_EXTPTZ_BASE_MOVE_ABSOLUTELY_ONLYPT, /// ???????????????PT???????/???????????????, param4????? NET_IN_PTZBASE_MOVEABSOLUTELY_ONLYPT_INFO DH_EXTPTZ_BASE_MOVE_ABSOLUTELY_ONLYZOOM, /// ???????????????zoom?????????????, param4????? NET_IN_PTZBASE_MOVEABSOLUTELY_ONLYZOOM_INFO DH_EXTPTZ_STOP_MOVE, /// ????????,??????????,param4??????? NET_IN_STOP_MOVE_INFO DH_EXTPTZ_START, /// ??????????,param4??????? NET_IN_PTZ_START_INFO DH_EXTPTZ_STOP, /// ???????????,param4??????? NET_IN_PTZ_STOP_INFO DH_EXTPTZ_START_PATTERN_RECORD, /// ????????,param4??????? NET_IN_START_PATTERN_RECORD_INFO DH_EXTPTZ_STOP_PATTERN_RECORD, /// ???????,param4??????? NET_IN_STOP_PATTERN_RECORD_INFO DH_EXTPTZ_START_PATTERN_REPLAY, /// ????????,param4??????? NET_IN_START_PATTERN_REPLAY_INFO DH_EXTPTZ_STOP_PATTERN_REPLAY, /// ???????,param4??????? NET_IN_STOP_PATTERN_REPLAY_INFO DH_EXTPTZ_MOVE_DIRECTLY, /// ??????????, param4??????? NET_IN_MOVE_DIRECTLY_INFO DH_EXTPTZ_TOTAL, /// ???????? } DH_EXTPTZ_ControlType; ///@brief ?????????????????? typedef enum tagNET_FISHEYE_EPTZ_CMD { NET_FISHEYE_EPTZ_CMD_UNKOWN, /// ??????? NET_FISHEYE_EPTZ_CMD_ZOOMIN, /// ???,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_ZOOMOUT, /// ????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_UP, /// ???????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_DOWN, /// ???????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_LEFT, /// ???????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_RIGHT, /// ???????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_ROTATECLOCK, /// ??????????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_ROTATEANTICLOCK, /// ???????????,dwParam1???????,????1??8 NET_FISHEYE_EPTZ_CMD_STOP, /// ????????????? NET_FISHEYE_EPTZ_CMD_TAPVIEW, /// ??????????,??????,dwParam1???eptz?????????????????????,??????????????????????????,?????????????????????? /// dwParam2???eptz??????????????????????,???????????????????????????,?????????????????????? NET_FISHEYE_EPTZ_CMD_SHOEREGION, /// ??????,wParam1?????????????????????, /// dwParam2??????????????????????,dwParam3????????????? /// dwParam4????????????? }NET_FISHEYE_EPTZ_CMD; ///@brief ????????????? typedef enum tagNET_TRACK_CONTROL_CMD { NET_TRACK_CONTROL_CMD_UP, /// ???????,dwParam1???????,????1??8 NET_TRACK_CONTROL_CMD_DOWN, /// ???????,dwParam1???????,????1??8 NET_TRACK_CONTROL_CMD_LEFT, /// ???????,dwParam1???????,????1??8 NET_TRACK_CONTROL_CMD_RIGHT, /// ???????,dwParam1???????,????1??8 NET_TRACK_CONTROL_CMD_SETPRESET, /// ????????,dwParam1???????? NET_TRACK_CONTROL_CMD_CLEARPRESET, /// ???????,dwParam1???????? NET_TRACK_CONTROL_CMD_GOTOPRESET, /// ???????,dwParam1???????? } NET_TRACK_CONTROL_CMD; ///@brief ????????? typedef enum tagNET_CALIBRATE_MODE { NET_FISHEYE_CALIBRATE_MODE_UNKOWN, /// ????? NET_FISHEYE_CALIBRATE_MODE_ORIGIAL, /// ??????? NET_FISHEYE_CALIBRATE_MODE_CONFIG, /// ????? NET_FISHEYE_CALIBRATE_MODE_PANORAMA, /// ????? NET_FISHEYE_CALIBRATE_MODE_DOUBLEPANORAMA, /// ?????? NET_FISHEYE_CALIBRATE_MODE_ORIGIALPLUSTHREEEPTZREGION, /// 1+3?????????????????3??EPtz??? NET_FISHEYE_CALIBRATE_MODE_SINGLE, /// ??????EPtz??????????EPtz????? NET_FISHEYE_CALIBRATE_MODE_FOUREPTZREGION, /// 4????????4??EPtz???????? NET_FISHEYE_CALIBRATE_MODE_NORMAL, /// ????? }NET_FISHEYE_CALIBRATE_MODE; ///@brief ???????? typedef enum tagNET_FISHEYE_TYPE { NET_FISHEYE_UNKOWN =0 , ///??? NET_FISHEYE_CHIP , ///????????????????? NET_FISHEYE_PLUGIN , ///?????????????? NET_FISHEYE_CHIP_PLUGIN , ///???????? }NET_FISHEYE_TYPE; ///@brief ???????? typedef enum tagNET_FISHEYE_MOUNT_MODE { NET_FISHEYE_MOUNT_MODE_UNKOWN, /// ????? NET_FISHEYE_MOUNT_MODE_CEIL, /// ????? NET_FISHEYE_MOUNT_MODE_WALL, /// ????? NET_FISHEYE_MOUNT_MODE_FLOOR, /// ????? }NET_FISHEYE_MOUNT_MODE; //////////////////////////////??????///////////////////////////////// ///@brief ?????????? typedef enum _DH_LOG_QUERY_TYPE { DHLOG_ALL = 0, /// ??????? DHLOG_SYSTEM, /// ????? DHLOG_CONFIG, /// ??????? DHLOG_STORAGE, /// ?????? DHLOG_ALARM, /// ??????? DHLOG_RECORD, /// ?????? DHLOG_ACCOUNT, /// ?????? DHLOG_CLEAR, /// ?????? DHLOG_PLAYBACK, /// ?????? DHLOG_MANAGER /// ????????????? } DH_LOG_QUERY_TYPE; ///@brief ??????? typedef enum _DH_LOG_TYPE { DH_LOG_REBOOT = 0x0000, /// ??????? DH_LOG_SHUT, /// ?????? DH_LOG_REPORTSTOP, DH_LOG_REPORTSTART, DH_LOG_UPGRADE = 0x0004, /// ??????? DH_LOG_SYSTIME_UPDATE = 0x0005, /// ???????? DH_LOG_GPS_TIME_UPDATE = 0x0006, /// GPS?????? DH_LOG_AUDIO_TALKBACK, /// ???????, true????????,false??????? DH_LOG_COMM_ADAPTER, /// ???????, true????????,false??????? DH_LOG_NET_TIMING, /// ??????? DH_LOG_CONFSAVE = 0x0100, /// ???????? DH_LOG_CONFLOAD, /// ??????? DH_LOG_FSERROR = 0x0200, /// ????????? DH_LOG_HDD_WERR, /// ????????? DH_LOG_HDD_RERR, /// ???????? DH_LOG_HDD_TYPE, /// ??????????? DH_LOG_HDD_FORMAT, /// ???????? DH_LOG_HDD_NOSPACE, /// ????????????? DH_LOG_HDD_TYPE_RW, /// ?????????????????? DH_LOG_HDD_TYPE_RO, /// ????????????????? DH_LOG_HDD_TYPE_RE, /// ?????????????????? DH_LOG_HDD_TYPE_SS, /// ?????????????????? DH_LOG_HDD_NONE, /// ??????? DH_LOG_HDD_NOWORKHDD, /// ???????(?????????) DH_LOG_HDD_TYPE_BK, /// ?????????????????? DH_LOG_HDD_TYPE_REVERSE, /// ???????????????????? DH_LOG_HDD_START_INFO = 0x20e , /// ???????????????? DH_LOG_HDD_WORKING_DISK, /// ??????????????? DH_LOG_HDD_OTHER_ERROR, /// ?????????????? DH_LOG_HDD_SLIGHT_ERR, /// ????????????? DH_LOG_HDD_SERIOUS_ERR, /// ?????????????? DH_LOG_HDD_NOSPACE_END, /// ??????????????????? DH_LOG_HDD_TYPE_RAID_CONTROL, /// Raid???? DH_LOG_HDD_TEMPERATURE_HIGH, /// ?????? DH_LOG_HDD_TEMPERATURE_LOW, /// ?????? DH_LOG_HDD_ESATA_REMOVE, /// ???eSATA DH_LOG_ALM_IN = 0x0300, /// ??????????? DH_LOG_NETALM_IN, /// ????d?????? DH_LOG_ALM_END = 0x0302, /// ?????????? DH_LOG_LOSS_IN, /// ????????????? DH_LOG_LOSS_END, /// ?????????????? DH_LOG_MOTION_IN, /// ??????????? DH_LOG_MOTION_END, /// ???????????? DH_LOG_ALM_BOSHI, /// ?????????????? DH_LOG_NET_ABORT = 0x0308, /// ?????? DH_LOG_NET_ABORT_RESUME, /// ?????? DH_LOG_CODER_BREAKDOWN, /// ?????????? DH_LOG_CODER_BREAKDOWN_RESUME, /// ???????????? DH_LOG_BLIND_IN, /// ?????? DH_LOG_BLIND_END, /// ????????? DH_LOG_ALM_TEMP_HIGH, /// ?????? DH_LOG_ALM_VOLTAGE_LOW, /// ??????? DH_LOG_ALM_BATTERY_LOW, /// ??????????? DH_LOG_ALM_ACC_BREAK, /// ACC??? DH_LOG_ALM_ACC_RES, DH_LOG_GPS_SIGNAL_LOST, /// GPS????? DH_LOG_GPS_SIGNAL_RESUME, /// GPS????? DH_LOG_3G_SIGNAL_LOST, /// 3G????? DH_LOG_3G_SIGNAL_RESUME, /// 3G????? DH_LOG_ALM_IPC_IN, /// IPC?????? DH_LOG_ALM_IPC_END, /// IPC????????? DH_LOG_ALM_DIS_IN, /// ???????? DH_LOG_ALM_DIS_END, /// ??????????? DH_LOG_ALM_UPS_IN, /// UPS??? DH_LOG_ALM_UPS_END, /// UPS?????? DH_LOG_ALM_NAS_IN, /// NAS???????????? DH_LOG_ALM_NAS_END, /// NAS??????????????? DH_LOG_ALM_REDUNDANT_POWER_IN, /// ????????? DH_LOG_ALM_REDUNDANT_POWER_END, /// ???????????? DH_LOG_ALM_RECORD_FAILED_IN, /// ???????? DH_LOG_ALM_RECORD_FAILED_END, /// ??????????? DH_LOG_ALM_VGEXCEPT_IN, /// ??????????? DH_LOG_ALM_VGEXCEPT_END, /// ?????????????? DH_LOG_ALM_FANSPEED_IN, /// ?????????? DH_LOG_ALM_FANSPEED_END, /// ??????????? DH_LOG_ALM_DROP_FRAME_IN, /// ?????????? DH_LOG_ALM_DROP_FRAME_END, /// ??????????? DH_LOG_ALM_DISK_STATE_CHECK, /// ?????????????????????? DH_LOG_ALARM_COAXIAL_SMOKE, /// ????????????? DH_LOG_ALARM_COAXIAL_TEMP_HIGH, /// ???????????? DH_LOG_ALARM_COAXIAL_ALM_IN, /// ???????????? DH_LOG_INFRAREDALM_IN = 0x03a0, /// ?????????? DH_LOG_INFRAREDALM_END, /// ??????????? DH_LOG_IPCONFLICT, /// IP??? DH_LOG_IPCONFLICT_RESUME, /// IP??? DH_LOG_SDPLUG_IN, /// SD??????(DH_LOG_ITEM????reserved??3???U?????) DH_LOG_SDPLUG_OUT, /// SD??????(DH_LOG_ITEM????reserved??3???U?????) DH_LOG_NET_PORT_BIND_FAILED, /// ?????????? DH_LOG_HDD_BEEP_RESET, /// ??????????????? DH_LOG_MAC_CONFLICT, /// MAC??? DH_LOG_MAC_CONFLICT_RESUME, /// MAC?????? DH_LOG_ALARM_OUT, /// ????????? DH_LOG_ALM_RAID_STAT_EVENT, /// RAID???????? DH_LOG_ABLAZE_ON, /// ?????,???????? DH_LOG_ABLAZE_OFF, /// ????? ??? DH_LOG_INTELLI_ALARM_PLUSE, /// ????????????? DH_LOG_INTELLI_ALARM_IN, /// ?????????? DH_LOG_INTELLI_ALARM_END, /// ??????????? DH_LOG_3G_SIGNAL_SCAN, /// 3G????? DH_LOG_GPS_SIGNAL_SCAN, /// GPS????? DH_LOG_AUTOMATIC_RECORD = 0x0400, /// ?????? DH_LOG_MANUAL_RECORD = 0x0401, /// ?????? DH_LOG_CLOSED_RECORD, /// ????? DH_LOG_LOGIN = 0x0500, /// ??? DH_LOG_LOGOUT, /// ??? DH_LOG_ADD_USER, /// ??????? DH_LOG_DELETE_USER, /// ?????? DH_LOG_MODIFY_USER, /// ?????? DH_LOG_ADD_GROUP, /// ????????? DH_LOG_DELETE_GROUP, /// ???????? DH_LOG_MODIFY_GROUP, /// ???????? DH_LOG_NET_LOGIN = 0x0508, /// ?????????? DH_LOG_MODIFY_PASSWORD, /// ??????? DH_LOG_CLEAR = 0x0600, /// ?????? DH_LOG_SEARCHLOG, /// ?????? DH_LOG_SEARCH = 0x0700, /// ????? DH_LOG_DOWNLOAD, /// ??????? DH_LOG_PLAYBACK, /// ????? DH_LOG_BACKUP, /// ?????????? DH_LOG_BACKUPERROR, /// ????????????? DH_LOG_BACK_UPRT, /// ??????,???????? DH_LOG_BACKUPCLONE, /// ???????? DH_LOG_DISK_CHANGED, /// ??????? DH_LOG_IMAGEPLAYBACK, /// ????? DH_LOG_LOCKFILE, /// ??????? DH_LOG_UNLOCKFILE, /// ??????? DH_LOG_ATMPOS, /// ATM?????????????? DH_PLAY_PAUSE, /// ?????? DH_PLAY_START, /// ???? LOG_PLAY_STOP, /// ????? LOG_PLAY_BACK, /// ???? LOG_PLAY_FAST, /// ??? LOG_PLAY_SLOW, /// ???? LOG_SMART_SEARCH, /// ??????? LOG_RECORD_SNAP, /// ????? LOG_ADD_TAG, /// ?????? LOG_DEL_TAG, /// ?????? LOG_USB_IN, /// ????USB??? LOG_USB_OUT, /// USB?????????? LOG_BACKUP_FILE, /// ??????? LOG_BACKUP_LOG, /// ??????? LOG_BACKUP_CONFIG, /// ??????? DH_LOG_TIME_UPDATE = 0x0800, /// ?????? DH_LOG_REMOTE_STATE = 0x0850, /// ?????? DH_LOG_USER_DEFINE = 0x0900, DH_LOG_TYPE_NR = 10, } DH_LOG_TYPE; ///@brief ??????????,???CLIENT_QueryLogEx???,????(int nType = 1??????reserved = &nType) typedef enum _DH_NEWLOG_TYPE { DH_NEWLOG_REBOOT = 0x0000, /// ??????? DH_NEWLOG_SHUT, /// ?????? DH_NEWLOG_REPORTSTOP, DH_NEWLOG_REPORTSTART, DH_NEWLOG_UPGRADE = 0x0004, /// ??????? DH_NEWLOG_SYSTIME_UPDATE = 0x0005, /// ???????? DH_NEWLOG_GPS_TIME_UPDATE = 0x0006, /// GPS?????? DH_NEWLOG_AUDIO_TALKBACK, /// ???????, true????????,false??????? DH_NEWLOG_COMM_ADAPTER, /// ???????, true????????,false??????? DH_NEWLOG_NET_TIMING, /// ??????? DH_NEWLOG_CONFSAVE = 0x0100, /// ???????? DH_NEWLOG_CONFLOAD, /// ??????? DH_NEWLOG_FSERROR = 0x0200, /// ????????? DH_NEWLOG_HDD_WERR, /// ????????? DH_NEWLOG_HDD_RERR, /// ???????? DH_NEWLOG_HDD_TYPE, /// ??????????? DH_NEWLOG_HDD_FORMAT, /// ???????? DH_NEWLOG_HDD_NOSPACE, /// ????????????? DH_NEWLOG_HDD_TYPE_RW, /// ?????????????????? DH_NEWLOG_HDD_TYPE_RO, /// ????????????????? DH_NEWLOG_HDD_TYPE_RE, /// ?????????????????? DH_NEWLOG_HDD_TYPE_SS, /// ?????????????????? DH_NEWLOG_HDD_NONE, /// ?????????? DH_NEWLOG_HDD_NOWORKHDD, /// ???????(?????????) DH_NEWLOG_HDD_TYPE_BK, /// ?????????????????? DH_NEWLOG_HDD_TYPE_REVERSE, /// ???????????????????? DH_NEWLOG_HDD_START_INFO = 0x20e, /// ???????????????? DH_NEWLOG_HDD_WORKING_DISK, /// ??????????????? DH_NEWLOG_HDD_OTHER_ERROR, /// ?????????????? DH_NEWLOG_HDD_SLIGHT_ERR, /// ????????????? DH_NEWLOG_HDD_SERIOUS_ERR, /// ?????????????? DH_NEWLOG_HDD_NOSPACE_END, /// ??????????????????? DH_NEWLOG_HDD_TYPE_RAID_CONTROL, /// Raid???? DH_NEWLOG_HDD_TEMPERATURE_HIGH, /// ?????? DH_NEWLOG_HDD_TEMPERATURE_LOW, /// ?????? DH_NEWLOG_HDD_ESATA_REMOVE, /// ???eSATA DH_NEWLOG_ALM_IN = 0x0300, /// ??????????? DH_NEWLOG_NETALM_IN, /// ????d?? DH_NEWLOG_ALM_END = 0x0302, /// ?????????? DH_NEWLOG_LOSS_IN, /// ????????????? DH_NEWLOG_LOSS_END, /// ?????????????? DH_NEWLOG_MOTION_IN, /// ??????????? DH_NEWLOG_MOTION_END, /// ???????????? DH_NEWLOG_ALM_BOSHI, /// ?????????????? DH_NEWLOG_NET_ABORT = 0x0308, /// ?????? DH_NEWLOG_NET_ABORT_RESUME, /// ?????? DH_NEWLOG_CODER_BREAKDOWN, /// ?????????? DH_NEWLOG_CODER_BREAKDOWN_RESUME, /// ???????????? DH_NEWLOG_BLIND_IN, /// ?????? DH_NEWLOG_BLIND_END, /// ????????? DH_NEWLOG_ALM_TEMP_HIGH, /// ?????? DH_NEWLOG_ALM_VOLTAGE_LOW, /// ??????? DH_NEWLOG_ALM_BATTERY_LOW, /// ??????????? DH_NEWLOG_ALM_ACC_BREAK, /// ACC??? DH_NEWLOG_ALM_ACC_RES, DH_NEWLOG_GPS_SIGNAL_LOST, /// GPS????? DH_NEWLOG_GPS_SIGNAL_RESUME, /// GPS????? DH_NEWLOG_3G_SIGNAL_LOST, /// 3G????? DH_NEWLOG_3G_SIGNAL_RESUME, /// 3G????? DH_NEWLOG_ALM_IPC_IN, /// IPC?????? DH_NEWLOG_ALM_IPC_END, /// IPC????????? DH_NEWLOG_ALM_DIS_IN, /// ???????? DH_NEWLOG_ALM_DIS_END, /// ??????????? DH_NEWLOG_INFRAREDALM_IN = 0x03a0, /// ?????????? DH_NEWLOG_INFRAREDALM_END, /// ??????????? DH_NEWLOG_IPCONFLICT, /// IP??? DH_NEWLOG_IPCONFLICT_RESUME, /// IP??? DH_NEWLOG_SDPLUG_IN, /// SD?????? DH_NEWLOG_SDPLUG_OUT, /// SD?????? DH_NEWLOG_NET_PORT_BIND_FAILED, /// ?????????? DH_NEWLOG_HDD_BEEP_RESET, /// ??????????????? DH_NEWLOG_MAC_CONFLICT, /// MAC??? DH_NEWLOG_MAC_CONFLICT_RESUME, /// MAC?????? DH_NEWLOG_ALARM_OUT, /// ????????? DH_NEWLOG_ALM_RAID_STAT_EVENT, /// RAID???????? DH_NEWLOG_ABLAZE_ON, /// ?????,???????? DH_NEWLOG_ABLAZE_OFF, /// ????? ??? DH_NEWLOG_INTELLI_ALARM_PLUSE, /// ????????????? DH_NEWLOG_INTELLI_ALARM_IN, /// ?????????? DH_NEWLOG_INTELLI_ALARM_END, /// ??????????? DH_NEWLOG_3G_SIGNAL_SCAN, /// 3G????? DH_NEWLOG_GPS_SIGNAL_SCAN, /// GPS????? DH_NEWLOG_AUTOMATIC_RECORD = 0x0400, /// ?????? DH_NEWLOG_MANUAL_RECORD, /// ?????? DH_NEWLOG_CLOSED_RECORD, /// ????? DH_NEWLOG_LOGIN = 0x0500, /// ??? DH_NEWLOG_LOGOUT, /// ??? DH_NEWLOG_ADD_USER, /// ??????? DH_NEWLOG_DELETE_USER, /// ?????? DH_NEWLOG_MODIFY_USER, /// ?????? DH_NEWLOG_ADD_GROUP, /// ????????? DH_NEWLOG_DELETE_GROUP, /// ???????? DH_NEWLOG_MODIFY_GROUP, /// ???????? DH_NEWLOG_NET_LOGIN = 0x0508, /// ?????????? DH_NEWLOG_CLEAR = 0x0600, /// ?????? DH_NEWLOG_SEARCHLOG, /// ?????? DH_NEWLOG_SEARCH = 0x0700, /// ????? DH_NEWLOG_DOWNLOAD, /// ??????? DH_NEWLOG_PLAYBACK, /// ????? DH_NEWLOG_BACKUP, /// ?????????? DH_NEWLOG_BACKUPERROR, /// ????????????? DH_NEWLOG_BACK_UPRT, /// ??????,???????? DH_NEWLOG_BACKUPCLONE, /// ???????? DH_NEWLOG_DISK_CHANGED, /// ??????? DH_NEWLOG_IMAGEPLAYBACK, /// ????? DH_NEWLOG_LOCKFILE, /// ??????? DH_NEWLOG_UNLOCKFILE, /// ??????? DH_NEWLOG_ATMPOS, /// ATM?????????????? DH_NEWLOG_TIME_UPDATE = 0x0800, /// ?????? DH_NEWLOG_REMOTE_STATE = 0x0850, /// ?????? DH_NEWLOG_USER_DEFINE = 0x0900, DH_NEWLOG_TYPE_NR = 10, } DH_NEWLOG_TYPE; ///////////////////////////??????????/////////////////////////////// ///@brief ???????????? typedef enum __TALK_CODING_TYPE { DH_TALK_UNKNOWN = -1, /// ??? DH_TALK_DEFAULT = 0, /// ???PCM DH_TALK_PCM = 1, /// ???PCM DH_TALK_G711a, /// G711a DH_TALK_AMR, /// AMR DH_TALK_G711u, /// G711u DH_TALK_G726, /// G726 DH_TALK_G723_53, /// G723_53 DH_TALK_G723_63, /// G723_63 DH_TALK_AAC, /// AAC DH_TALK_OGG, /// OGG DH_TALK_G729 = 10, /// G729 DH_TALK_MPEG2, /// MPEG2 DH_TALK_MPEG2_Layer2, /// MPEG2-Layer2 DH_TALK_G722_1, /// G.722.1 DH_TALK_ADPCM = 21, /// ADPCM DH_TALK_MP3 = 22, /// MP3 } DH_TALK_CODING_TYPE; ///@brief ?????????? typedef enum __NET_RECORD_TYPE { NET_RECORD_TYPE_ALL, /// ??????? NET_RECORD_TYPE_NORMAL, /// ?????? NET_RECORD_TYPE_ALARM, /// ????????? NET_RECORD_TYPE_MOTION, /// ????????? }NET_RECORD_TYPE; ///@brief ?????? typedef enum __EM_USEDEV_MODE { DH_TALK_CLIENT_MODE, /// ????????????????????? DH_TALK_SERVER_MODE, /// ???????????????????????? DH_TALK_ENCODE_TYPE, /// ?????????????????(???DHDEV_TALKDECODE_INFO) DH_ALARM_LISTEN_MODE, /// ????????????? DH_CONFIG_AUTHORITY_MODE, /// ????????????????????? DH_TALK_TALK_CHANNEL, /// ?????????(0~MaxChannel-1) DH_RECORD_STREAM_TYPE, /// ?????????????????????????????(0-????????,1-??????,2-??????1,3-??????2,4-??????3,) DH_TALK_SPEAK_PARAM, /// ????????????,??????? NET_SPEAK_PARAM DH_RECORD_TYPE, /// ?????????????????????????????(???NET_RECORD_TYPE) DH_TALK_MODE3, /// ????????????????????????, ??????? NET_TALK_EX DH_PLAYBACK_REALTIME_MODE , /// ????????????(0-???,1????) DH_TALK_TRANSFER_MODE, /// ????????????????????, ??????? NET_TALK_TRANSFER_PARAM DH_TALK_VT_PARAM, /// ????VT???????, ??????? NET_VT_TALK_PARAM DH_TARGET_DEV_ID, /// ???????????????, ??????????????(??0-????????????) DH_AUDIO_RECORD_LENGTH = 15, /// ???????????, ???????int DH_MAIN_STREAM_PRIORITY, /// ??????????????????????????????????int(0-???,1????) DH_SUBCONNECT_MODE, /// ????????????????????????int, 0:??????? 1: TCP 2:UDP } EM_USEDEV_MODE; ///@brief ???????? typedef enum tagEM_SHOES_TYPE { EM_SHOES_UNKNOWN, /// ??? EM_SHOES_LEATHER, /// ??? EM_SHOES_BOOTS, /// ??? EM_SHOES_CASUAL, /// ?????? EM_SHOES_SANDALS, /// ???? EM_SHOES_SNEAKERS, /// ????? EM_SHOES_SLIPPER, /// ???? EM_SHOES_OTHERS , /// ???? EM_SHOES_SHOECOVER, /// ???? } EM_SHOES_TYPE; ///@brief ??????? typedef enum __EM_TALK_DATA_TYPE { NET_TALK_DATA_LOCAL_AUDIO = 0, /// ???????????????????? NET_TALK_DATA_RECV_AUDIO, /// ??????????????????????? NET_TALK_DATA_RESPOND, /// ?????????????? NET_TALK_DATA_RECV_VIDEO, /// ??????????????????????? }EM_TALK_DATA_TYPE; ///@brief ????????? typedef struct tagNET_TALK_VIDEO_FORMAT { DWORD dwSize; DWORD dwCompression; /// ????????? int nFrequency; /// ?????????? }NET_TALK_VIDEO_FORMAT; ///@brief ????????????????????,???CLIENT_SetDeviceMode()??DH_TALK_MODE3???? typedef struct tagNET_TALK_EX { DWORD dwSize; int nChannel; /// ????? int nAudioPort; /// ?????????????? int nWaitTime; /// ??????, ????ms,?0????????? HWND hVideoWnd; /// ???????????????? NET_TALK_VIDEO_FORMAT stuVideoFmt; /// ????????? char szMulticastAddr[DH_MAX_IPADDR_LEN_EX]; /// ?????? WORD wMulticastLocalPort; /// ????????? WORD wMulticastRemotePort; /// ???????? }NET_TALK_EX; ///@brief AMR???????? typedef enum __EM_ARM_ENCODE_MODE { DH_TALK_AMR_AMR475 = 1, /// AMR475???? DH_TALK_AMR_AMR515, /// AMR515???? DH_TALK_AMR_AMR59, /// AMR59???? DH_TALK_AMR_AMR67, /// AMR67???? DH_TALK_AMR_AMR74, /// AMR74???? DH_TALK_AMR_AMR795, /// AMR795???? DH_TALK_AMR_AMR102, /// AMR102???? DH_TALK_AMR_AMR122, /// AMR122???? } EM_ARM_ENCODE_MODE; ///@brief ???????? typedef struct __NET_SPEAK_PARAM { DWORD dwSize; /// ??????? int nMode; /// 0??????????????,1??????????????????????????????? /// 2: ???????????????????????????????? int nSpeakerChannel; /// ???????????,????????? BOOL bEnableWait; /// ?????????????????????,???????.TRUE:???;FALSE:????? /// ????????CLIENT_SetNetworkParam????,???NET_PARAM??nWaittime??? } NET_SPEAK_PARAM; ///@brief ??????????????????? typedef struct tagNET_TALK_TRANSFER_PARAM { DWORD dwSize; BOOL bTransfer; /// ?????????????????, TRUE: ???????, FALSE: ?????? }NET_TALK_TRANSFER_PARAM; //////////////////////////////???????///////////////////////////////// ///@brief ????????,??? CLIENT_ControlDevice ??? typedef enum _CtrlType { DH_CTRL_REBOOT = 0, /// ??????? DH_CTRL_SHUTDOWN, /// ?????? DH_CTRL_DISK, /// ?????? DH_KEYBOARD_POWER = 3, /// ??????? DH_KEYBOARD_ENTER, DH_KEYBOARD_ESC, DH_KEYBOARD_UP, DH_KEYBOARD_DOWN, DH_KEYBOARD_LEFT, DH_KEYBOARD_RIGHT, DH_KEYBOARD_BTN0, DH_KEYBOARD_BTN1, DH_KEYBOARD_BTN2, DH_KEYBOARD_BTN3, DH_KEYBOARD_BTN4, DH_KEYBOARD_BTN5, DH_KEYBOARD_BTN6, DH_KEYBOARD_BTN7, DH_KEYBOARD_BTN8, DH_KEYBOARD_BTN9, DH_KEYBOARD_BTN10, DH_KEYBOARD_BTN11, DH_KEYBOARD_BTN12, DH_KEYBOARD_BTN13, DH_KEYBOARD_BTN14, DH_KEYBOARD_BTN15, DH_KEYBOARD_BTN16, DH_KEYBOARD_SPLIT, DH_KEYBOARD_ONE, DH_KEYBOARD_NINE, DH_KEYBOARD_ADDR, DH_KEYBOARD_INFO, DH_KEYBOARD_REC, DH_KEYBOARD_FN1, DH_KEYBOARD_FN2, DH_KEYBOARD_PLAY, DH_KEYBOARD_STOP, DH_KEYBOARD_SLOW, DH_KEYBOARD_FAST, DH_KEYBOARD_PREW, DH_KEYBOARD_NEXT, DH_KEYBOARD_JMPDOWN, DH_KEYBOARD_JMPUP, DH_KEYBOARD_10PLUS, DH_KEYBOARD_SHIFT, DH_KEYBOARD_BACK, DH_KEYBOARD_LOGIN , /// ???????????? DH_KEYBOARD_CHNNEL , /// ?????????? DH_TRIGGER_ALARM_IN = 100, /// ???????????? DH_TRIGGER_ALARM_OUT, /// ??????????? DH_CTRL_MATRIX, /// ??????? DH_CTRL_SDCARD, /// SD??????(IPC???)??????????? DH_BURNING_START, /// ?????????,?????? DH_BURNING_STOP, /// ?????????,??????? DH_BURNING_ADDPWD, /// ?????????,????????(??'\0'????????????,????8??) DH_BURNING_ADDHEAD, /// ?????????,??????(??'\0'????????????,????1024???,??????,???????'\n') DH_BURNING_ADDSIGN, /// ?????????,????????????(??????) DH_BURNING_ADDCURSTOMINFO, /// ?????????,????????(??'\0'????????????,????1024???,??????,???????'\n') DH_CTRL_RESTOREDEFAULT, /// ??????????????? DH_CTRL_CAPTURE_START, /// ????????? DH_CTRL_CLEARLOG, /// ??????(???????????????) DH_TRIGGER_ALARM_WIRELESS = 200, /// ???????????(IPC???) DH_MARK_IMPORTANT_RECORD, /// ???????????? DH_CTRL_DISK_SUBAREA, /// ?????????? DH_BURNING_ATTACH, /// ?????????,???????. DH_BURNING_PAUSE, /// ?????? DH_BURNING_CONTINUE, /// ??????? DH_BURNING_POSTPONE, /// ?????? DH_CTRL_OEMCTRL, /// ??????? DH_BACKUP_START, /// ????????? DH_BACKUP_STOP, /// ????????? DH_VIHICLE_WIFI_ADD, /// ???????????WIFI???? DH_VIHICLE_WIFI_DEC, /// ??????????WIFI???? DH_BUZZER_START, /// ???????????? DH_BUZZER_STOP, /// ????????????? DH_REJECT_USER, /// ?????? DH_SHIELD_USER, /// ??????? DH_RAINBRUSH, /// ??????, ??????? DH_MANUAL_SNAP, /// ??????, ?????? (??????? MANUAL_SNAP_PARAMETER) DH_MANUAL_NTP_TIMEADJUST, /// ???NTP??? DH_NAVIGATION_SMS, /// ????????????? DH_CTRL_ROUTE_CROSSING, /// ?????????? DH_BACKUP_FORMAT, /// ???????????? DH_DEVICE_LOCALPREVIEW_SLIPT, /// ??????????????????(???????DEVICE_LOCALPREVIEW_SLIPT_PARAMETER) DH_CTRL_INIT_RAID, /// RAID????? DH_CTRL_RAID, /// RAID???? DH_CTRL_SAPREDISK, /// ???????? DH_WIFI_CONNECT, /// ???????WIFI????(???????WIFI_CONNECT) DH_WIFI_DISCONNECT, /// ??????WIFI????(???????WIFI_CONNECT) DH_CTRL_ARMED, /// ?????????? DH_CTRL_IP_MODIFY, /// ??????IP(???????DHCTRL_IPMODIFY_PARAM) DH_CTRL_WIFI_BY_WPS, /// wps????wifi(???????DHCTRL_CONNECT_WIFI_BYWPS) DH_CTRL_FORMAT_PATITION, /// ?????????(???????DH_FORMAT_PATITION) DH_CTRL_EJECT_STORAGE, /// ??????????(???????DH_EJECT_STORAGE_DEVICE) DH_CTRL_LOAD_STORAGE, /// ?????????(???????DH_LOAD_STORAGE_DEVICE) DH_CTRL_CLOSE_BURNER, /// ?????????????(??????? NET_CTRL_BURNERDOOR) ????????6?? DH_CTRL_EJECT_BURNER, /// ???????????????(??????? NET_CTRL_BURNERDOOR) ????????4?? DH_CTRL_CLEAR_ALARM, /// ????(??????? NET_CTRL_CLEAR_ALARM) DH_CTRL_MONITORWALL_TVINFO, /// ???????????(??????? NET_CTRL_MONITORWALL_TVINFO) DH_CTRL_START_VIDEO_ANALYSE, /// ?????????????(??????? NET_CTRL_START_VIDEO_ANALYSE) DH_CTRL_STOP_VIDEO_ANALYSE, /// ????????????(??????? NET_CTRL_STOP_VIDEO_ANALYSE) DH_CTRL_UPGRADE_DEVICE, /// ???????????????,????????????????????,???????????????? DH_CTRL_MULTIPLAYBACK_CHANNALES, /// ???????????????????(??????? NET_CTRL_MULTIPLAYBACK_CHANNALES) DH_CTRL_SEQPOWER_OPEN, /// ????????????????????(??? NET_CTRL_SEQPOWER_PARAM) DH_CTRL_SEQPOWER_CLOSE, /// ?????????????????????(??? NET_CTRL_SEQPOWER_PARAM) DH_CTRL_SEQPOWER_OPEN_ALL, /// ??????????????????????(??? NET_CTRL_SEQPOWER_PARAM) DH_CTRL_SEQPOWER_CLOSE_ALL, /// ???????????????????????(??? NET_CTRL_SEQPOWER_PARAM) DH_CTRL_PROJECTOR_RISE, /// ????????(??? NET_CTRL_PROJECTOR_PARAM) DH_CTRL_PROJECTOR_FALL, /// ???????(??? NET_CTRL_PROJECTOR_PARAM) DH_CTRL_PROJECTOR_STOP, /// ??????(??? NET_CTRL_PROJECTOR_PARAM) DH_CTRL_INFRARED_KEY, /// ??????(??? NET_CTRL_INFRARED_KEY_PARAM) DH_CTRL_START_PLAYAUDIO, /// ????????????????(??????? NET_CTRL_START_PLAYAUDIO) DH_CTRL_STOP_PLAYAUDIO, /// ??????????????? DH_CTRL_START_ALARMBELL, /// ????????(??????? NET_CTRL_ALARMBELL) DH_CTRL_STOP_ALARMBELL, /// ??????(??????? NET_CTRL_ALARMBELL) DH_CTRL_ACCESS_OPEN, /// ???????-????(??????? NET_CTRL_ACCESS_OPEN) DH_CTRL_SET_BYPASS, /// ????????????(??????? NET_CTRL_SET_BYPASS) DH_CTRL_RECORDSET_INSERT, /// ??????,???????????(??? NET_CTRL_RECORDSET_INSERT_PARAM) DH_CTRL_RECORDSET_UPDATE, /// ????????????????(???NET_CTRL_RECORDSET_PARAM) DH_CTRL_RECORDSET_REMOVE, /// ??????????????????(???NET_CTRL_RECORDSET_PARAM) DH_CTRL_RECORDSET_CLEAR, /// ???????????????(???NET_CTRL_RECORDSET_PARAM) DH_CTRL_ACCESS_CLOSE, /// ???????-????(??????? NET_CTRL_ACCESS_CLOSE) DH_CTRL_ALARM_SUBSYSTEM_ACTIVE_SET, /// ????????????????(???????NET_CTRL_ALARM_SUBSYSTEM_SETACTIVE) DH_CTRL_FORBID_OPEN_STROBE, /// ??????????(??????? NET_CTRL_FORBID_OPEN_STROBE) DH_CTRL_OPEN_STROBE, /// ???????(??????? NET_CTRL_OPEN_STROBE) DH_CTRL_TALKING_REFUSE, /// ??????????(??????? NET_CTRL_TALKING_REFUSE) DH_CTRL_ARMED_EX, /// ??????????(??????? CTRL_ARM_DISARM_PARAM_EX), ??CTRL_ARM_DISARM_PARAM ????,????????? DH_CTRL_REMOTE_TALK, /// ?????????(???????NET_CTRL_REMOTETALK_PARAM) DH_CTRL_NET_KEYBOARD = 400, /// ??????????(??????? DHCTRL_NET_KEYBOARD) DH_CTRL_AIRCONDITION_OPEN, /// ????(??????? NET_CTRL_OPEN_AIRCONDITION) DH_CTRL_AIRCONDITION_CLOSE, /// ?????(??????? NET_CTRL_CLOSE_AIRCONDITION) DH_CTRL_AIRCONDITION_SET_TEMPERATURE, /// ????????(??????? NET_CTRL_SET_TEMPERATURE) DH_CTRL_AIRCONDITION_ADJUST_TEMPERATURE, /// ?????????(??????? NET_CTRL_ADJUST_TEMPERATURE) DH_CTRL_AIRCONDITION_SETMODE, /// ????????????(??????? NET_CTRL_ADJUST_TEMPERATURE) DH_CTRL_AIRCONDITION_SETWINDMODE, /// ???????????(??????? NET_CTRL_AIRCONDITION_SETMODE) DH_CTRL_RESTOREDEFAULT_EX , /// ?????????????????????(???????NET_CTRL_RESTORE_DEFAULT) /// ??????????????????,?????????, /// ??CLIENT_GetLastError????NET_UNSUPPORTED,????????DH_CTRL_RESTOREDEFAULT??????? DH_CTRL_NOTIFY_EVENT, /// ????????????(??????? NET_NOTIFY_EVENT_DATA) DH_CTRL_SILENT_ALARM_SET, /// ???????????? DH_CTRL_START_PLAYAUDIOEX, /// ??????????????(??????? NET_CTRL_START_PLAYAUDIOEX) DH_CTRL_STOP_PLAYAUDIOEX, /// ????????????? DH_CTRL_CLOSE_STROBE, /// ?????(??????? NET_CTRL_CLOSE_STROBE) DH_CTRL_SET_ORDER_STATE, /// ?????????????(??????? NET_CTRL_SET_ORDER_STATE) DH_CTRL_RECORDSET_INSERTEX, /// ??????????,???????????(??? NET_CTRL_RECORDSET_INSERT_PARAM) DH_CTRL_RECORDSET_UPDATEEX, /// ??????????????????(???NET_CTRL_RECORDSET_PARAM) DH_CTRL_CAPTURE_FINGER_PRINT, /// ??????(??????? NET_CTRL_CAPTURE_FINGER_PRINT) DH_CTRL_ECK_LED_SET, /// ???????????????LED????(??????? NET_CTRL_ECK_LED_SET_PARAM) DH_CTRL_ECK_IC_CARD_IMPORT, /// ???????????????IC?????????(??????? NET_CTRL_ECK_IC_CARD_IMPORT_PARAM) DH_CTRL_ECK_SYNC_IC_CARD, /// ???????????????IC???????????,?????????,?????????IC?????(??????? NET_CTRL_ECK_SYNC_IC_CARD_PARAM) DH_CTRL_LOWRATEWPAN_REMOVE, /// ?????????????(??????? NET_CTRL_LOWRATEWPAN_REMOVE) DH_CTRL_LOWRATEWPAN_MODIFY, /// ?????????????(??????? NET_CTRL_LOWRATEWPAN_MODIFY) DH_CTRL_ECK_SET_PARK_INFO, /// ??????????????????????????(??????? NET_CTRL_ECK_SET_PARK_INFO_PARAM) DH_CTRL_VTP_DISCONNECT, /// ?????????(??????? NET_CTRL_VTP_DISCONNECT) DH_CTRL_UPDATE_FILES, /// ?????????????????(??????? NET_CTRL_UPDATE_FILES) DH_CTRL_MATRIX_SAVE_SWITCH, /// ????????????????????(??????? NET_CTRL_MATRIX_SAVE_SWITCH) DH_CTRL_MATRIX_RESTORE_SWITCH, /// ???????????????????(??????? NET_CTRL_MATRIX_RESTORE_SWITCH) DH_CTRL_VTP_DIVERTACK, /// ??????????(??????? NET_CTRL_VTP_DIVERTACK) DH_CTRL_RAINBRUSH_MOVEONCE, /// ???????????,????????????????????(??????? NET_CTRL_RAINBRUSH_MOVEONCE) DH_CTRL_RAINBRUSH_MOVECONTINUOUSLY, /// ???????????,????????????????????(??????? NET_CTRL_RAINBRUSH_MOVECONTINUOUSLY) DH_CTRL_RAINBRUSH_STOPMOVE, /// ??????,????????????????????(??????? NET_CTRL_RAINBRUSH_STOPMOVE) DH_CTRL_ALARM_ACK, /// ??????????(??????? NET_CTRL_ALARM_ACK) /// DH_CTRL_ALARM_ACK ??????????????????????????? DH_CTRL_RECORDSET_IMPORT, /// ???????????????(???NET_CTRL_RECORDSET_PARAM) DH_CTRL_DELIVERY_FILE, /// ???????????????????????, ?????????????????(???NET_CTRL_DELIVERY_FILE) DH_CTRL_FORCE_BREAKING, /// ??????????????(??? NET_CTRL_FORCE_BREAKING) DH_CTRL_RESTORE_EXCEPT, /// ???????????????????????????(??? NET_CTRL_RESTORE_EXCEPT) DH_CTRL_SET_PARK_INFO, /// ????????????????????????????????????????(??????? NET_CTRL_SET_PARK_INFO) DH_CTRL_CLEAR_SECTION_STAT, /// ??????????????????????, ?????0???????(???????NET_CTRL_CLEAR_SECTION_STAT_INFO) DH_CTRL_DELIVERY_FILE_BYCAR, /// ???????????????????????, ????????????????????(???NET_CTRL_DELIVERY_FILE_BYCAR) DH_CTRL_ECK_GUIDINGPANEL_CONTENT, /// ????????????????(??????? NET_CTRL_ECK_GUIDINGPANEL_CONTENT) DH_CTRL_SET_SAFE_LEVEL, /// ?????????????(????????pInBuf= NET_IN_SET_SAFE_LEVEL*, pOutBuf= NET_OUT_SET_SAFE_LEVEL * ) DH_CTRL_VTP_INVITEACK, /// ?????????(??????? NET_CTRL_VTP_INVITEACK) DH_CTRL_ACCESS_RESET_PASSWORD, /// ???????-????????(??????? NET_CTRL_ACCESS_RESET_PASSWORD) DH_CTRL_ACCESS_CALL_LIFT, /// ???????-????(??????? NET_CTRL_ACCESS_CALL_LIFT) DH_CTRL_RECORDSET_REMOVEEX, /// ??????????????????(???NET_CTRL_RECORDSET_PARAM) DH_CTRL_ADJUST_BRIGHT, /// ??????????(??????? NET_CTRL_ADJUST_BRIGHT) DH_CTRL_CLEARLOG_EX, /// ??????(?????????????, ??????? NET_CTRL_CLEARLOG_EX) /// ??????????? CLIENT_ControlDeviceEx ?????? DH_CTRL_THERMO_GRAPHY_ENSHUTTER = 0x10000, /// ????????????????/????, pInBuf= NET_IN_THERMO_EN_SHUTTER*, pOutBuf= NET_OUT_THERMO_EN_SHUTTER * DH_CTRL_RADIOMETRY_SETOSDMARK, /// ???????????osd?????, pInBuf= NET_IN_RADIOMETRY_SETOSDMARK*, pOutBuf= NET_OUT_RADIOMETRY_SETOSDMARK * DH_CTRL_AUDIO_REC_START_NAME, /// ????????????????????, pInBuf = NET_IN_AUDIO_REC_MNG_NAME *, pOutBuf = NET_OUT_AUDIO_REC_MNG_NAME * DH_CTRL_AUDIO_REC_STOP_NAME, /// ??????????????????????, pInBuf = NET_IN_AUDIO_REC_MNG_NAME *, pOutBuf = NET_OUT_AUDIO_REC_MNG_NAME * DH_CTRL_SNAP_MNG_SNAP_SHOT, /// ?????(?????????), pInBuf = NET_IN_SNAP_MNG_SHOT *, pOutBuf = NET_OUT_SNAP_MNG_SHOT * DH_CTRL_LOG_STOP, /// ????????????????????????????, pInBuf = NET_IN_LOG_MNG_CTRL *, pOutBuf = NET_OUT_LOG_MNG_CTRL * DH_CTRL_LOG_RESUME, /// ????????, pInBuf = NET_IN_LOG_MNG_CTRL *, pOutBuf = NET_OUT_LOG_MNG_CTRL * DH_CTRL_POS_ADD, /// ???????Pos???, pInBuf = NET_IN_POS_ADD *, pOutBuf = NET_OUT_POS_ADD * DH_CTRL_POS_REMOVE, /// ??????Pos???, pInBuf = NET_IN_POS_REMOVE *, pOutBuf = NET_OUT_POS_REMOVE * DH_CTRL_POS_REMOVE_MULTI, /// ???????Pos???, pInBuf = NET_IN_POS_REMOVE_MULTI *, pOutBuf = NET_OUT_POS_REMOVE_MULTI * DH_CTRL_POS_MODIFY, /// ??????Pos???, pInBuf = NET_IN_POS_ADD *, pOutBuf = NET_OUT_POS_ADD * DH_CTRL_SET_SOUND_ALARM, /// ????????????, pInBuf = NET_IN_SOUND_ALARM *, pOutBuf = NET_OUT_SOUND_ALARM * DH_CTRL_AUDIO_MATRIX_SILENCE, /// ?????????????????(???pInBuf = NET_IN_AUDIO_MATRIX_SILENCE, pOutBuf = NET_OUT_AUDIO_MATRIX_SILENCE) DH_CTRL_MANUAL_UPLOAD_PICTURE, /// ??????????, pInBuf = NET_IN_MANUAL_UPLOAD_PICTURE *, pOutBUf = NET_OUT_MANUAL_UPLOAD_PICTURE * DH_CTRL_REBOOT_NET_DECODING_DEV, /// ??????????????, pInBuf = NET_IN_REBOOT_NET_DECODING_DEV *, pOutBuf = NET_OUT_REBOOT_NET_DECODING_DEV * DH_CTRL_SET_IC_SENDER, /// ParkingControl ???????????, pInBuf = NET_IN_SET_IC_SENDER *, pOutBuf = NET_OUT_SET_IC_SENDER * DH_CTRL_SET_MEDIAKIND, /// ??????????????,??????,?????,????? pInBuf = NET_IN_SET_MEDIAKIND *, pOutBuf = NET_OUT_SET_MEDIAKIND * /// ???????????????????, EN_ENCODE_CHN,2-????????????????? DH_CTRL_LOWRATEWPAN_ADD, /// ??????????????(??????? pInBuf = NET_CTRL_LOWRATEWPAN_ADD *, pOutBUf = NULL) DH_CTRL_LOWRATEWPAN_REMOVEALL, /// ???????????????????(??????? pInBuf = NET_CTRL_LOWRATEWPAN_REMOVEALL *, pOutBUf = NULL) DH_CTRL_SET_DOOR_WORK_MODE, /// ??????????????(??????? pInBuf = NET_IN_CTRL_ACCESS_SET_DOOR_WORK_MODE *, pOutBUf = NULL) DH_CTRL_TEST_MAIL, /// ??????? pInBuf = NET_IN_TEST_MAIL *, pOutBUf = NET_OUT_TEST_MAIL * DH_CTRL_CONTROL_SMART_SWITCH, /// ??????????? pInBuf = NET_IN_CONTROL_SMART_SWITCH *, pOutBUf = NET_OUT_CONTROL_SMART_SWITCH * DH_CTRL_LOWRATEWPAN_SETWORKMODE, /// ????????????????(???????pInBuf = NET_IN_CTRL_LOWRATEWPAN_SETWORKMODE *, pOutBUf = NULL) DH_CTRL_COAXIAL_CONTROL_IO, /// ???????IO????????(???????pInBuf = NET_IN_CONTROL_COAXIAL_CONTROL_IO*, pOutBUf = NET_OUT_CONTROL_COAXIAL_CONTROL_IO*) DH_CTRL_START_REMOTELOWRATEWPAN_ALARMBELL, /// ??????????? (???????pInBuf = NET_IN_START_REMOTELOWRATEWPAN_ALARMBELL*, pOutBUf = NET_OUT_START_REMOTELOWRATEWPAN_ALARMBELL*) DH_CTRL_STOP_REMOTELOWRATEWPAN_ALARMBELL, /// ?????????? (???????pInBuf = NET_IN_STOP_REMOTELOWRATEWPAN_ALARMBELL*, pOutBUf = NET_OUT_STOP_REMOTELOWRATEWPAN_ALARMBELL*) DH_CTRL_THERMO_DO_FFC, /// ?????FFC???(??????? pInBuf = NET_IN_THERMO_DO_FFC *,pOutBuf = NET_OUT_THERMO_DO_FFC *) DH_CTRL_THERMO_FIX_FOCUS, /// ?????????????(??????? pInBuf = NET_IN_THERMO_FIX_FOCUS *,pOutBuf = NET_OUT_THERMO_FIX_FOCUS *) DH_CTRL_SET_THIRD_CALLSTATUS, /// ????????(???????pInBuf = NET_IN_VTP_THIRDCALL_STATUS*, pOutBuf = NET_OUT_VTP_THIRDCALL_STATUS*) DH_CTRL_ACCESS_CLEAR_STATUS, /// ???-?????????????? (???????pInBuf = NET_IN_ACCESS_CLEAR_STATUS*, pOutBuf = NET_OUT_ACCESS_CLEAR_STATUS *) DH_CTRL_ACCESS_DEAL_RECORD, /// ???-???/??????????????? (???????pInBuf = NET_IN_ACCESS_DEAL_RECORD*, pOutBuf = NET_OUT_ACCESS_DEAL_RECORD*) DH_CTRL_QUERY_DELIVERED_FILE, /// ??????????????????,????????,(???????pInBuf = NET_IN_CTRL_QUERY_DELIVERYE_FILE*, pOutBuf = NET_OUT_CTRL_QUERY_DELIVERYE_FILE*) DH_CTRL_SET_PARK_CONTROL_INFO, /// ??????????????(?????????????????????)(???????pInBuf = NET_IN_SET_PARK_CONTROL_INFO*, pOutBuf = NET_OUT_SET_PARK_CONTROL_INFO*) DH_CTRL_CHANGE_SUSTAIN, /// ???????????????????,(???????pInBuf = NET_IN_CTRL_CHANGE_SUSTAIN*, pOutBuf = NET_OUT_CTRL_CHANGE_SUSTAIN*) DH_CTRL_DEVVIDEOINPUT_LIGHT, /// ??????,(???????pInBuf = NET_IN_CTRL_DEVVIDEOINPUT_LIGHT*, pOutBuf = NET_OUT_CTRL_DEVVIDEOINPUT_LIGHT*) DH_CTRL_SNAP_TASK_ADD, /// ??????????(???????pInBuf = NET_IN_CTRL_SNAP_TASK_ADD*, pOutBuf = NET_OUT_CTRL_SNAP_TASK_ADD*) DH_CTRL_QUERY_DELIVERED_FILE_EX, /// ?????????????????????,????????,(???????pInBuf = NET_IN_CTRL_QUERY_DELIVERYE_FILE_EX*, pOutBuf = NET_OUT_CTRL_QUERY_DELIVERYE_FILE_EX*) /**********LowRateWPAN????(0x10100-0x10150)**********************************************************************************/ DH_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL = 0x10100, /// ????????????????(??????? pInBuf = NET_IN_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL *,pOutBuf = NET_OUT_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL *) DH_CTRL_LOWRATEWPAN_SET_ACCESSORY_PARAM, /// ??????????(???????pInBuf = NET_IN_CTRL_LOWRATEWPAN_ACCESSORY_PARAM *,pOutBuf = NULL) } CtrlType; #define DH_MAX_WIRELESS_DEV_NUM 80 ///?????????????? ///@brief ???????????????????(???DH_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL) typedef struct tagNET_IN_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL { DWORD dwSize; ///??????? int nStartIndex; ///??????????????0??? int nDevStateNum; ///??????????????????????????????????????MaxPageSize?????? }NET_IN_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL; ///@brief ????????????? typedef struct tagNET_WIRELESSDEVSIGNAL_INFO { char szDevSN[32]; ///????????? UINT unSignal; ///????????????? BYTE byReserver[512]; ///??????? }NET_WIRELESSDEVSIGNAL_INFO; ///@brief ???????????????????(???DH_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL) typedef struct tagNET_OUT_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL { DWORD dwSize; ///??????? int nWirelessDevNum; ///?????????????? NET_WIRELESSDEVSIGNAL_INFO stuDevSignal[DH_MAX_WIRELESS_DEV_NUM];///????????????? }NET_OUT_CTRL_LOWRATEWPAN_GETWIRELESSDEVSIGNAL; ///@brief ????????????????????????(???????DH_CTRL_MATRIX_SAVE_SWITCH) typedef struct tagNET_CTRL_MATRIX_SAVE_SWITCH { DWORD dwSize; const char* pszName; /// ???????????????????? } NET_CTRL_MATRIX_SAVE_SWITCH; ///@brief ???????????????????????(???????DH_CTRL_MATRIX_RESTORE_SWITCH) typedef struct tagNET_CTRL_MATRIX_RESTORE_SWITCH { DWORD dwSize; const char* pszName; /// ???????????????????? } NET_CTRL_MATRIX_RESTORE_SWITCH; ///@brief ??????????????????????? typedef struct tagNET_CTRL_RESTORE_DEFAULT { DWORD dwSize; const char* szCfgNames; /// ??????????'&&'????,??????????dhconfigsdk.h??CLIENT_GetNewDevConfig??CLIENT_SetNewDevConfig???????????? }NET_CTRL_RESTORE_DEFAULT; ///@brief ???????????????????? typedef struct tagNET_CTRL_RESTORE_EXCEPT { DWORD dwSize; char szCfgName[DH_MAX_STRING_LEN]; /// ??????????????????????????&&?????????????dhconfigsdk.h??CLIENT_GetNewDevConfig??CLIENT_SetNewDevConfig???????????? }NET_CTRL_RESTORE_EXCEPT; ///@brief ????????(???????DH_CTRL_AIRCONDITION_OPEN) typedef struct tagNET_CTRL_OPEN_AIRCONDITION { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? } NET_CTRL_OPEN_AIRCONDITION; ///@brief ?????????(???????DH_CTRL_AIRCONDITION_CLOSE) typedef struct tagNET_CTRL_CLOSE_AIRCONDITION { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? } NET_CTRL_CLOSE_AIRCONDITION; ///@brief ????????????(???????DH_CTRL_AIRCONDITION_SET_TEMPERATURE) typedef struct tagNET_CTRL_SET_TEMPERATURE { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? int nTemperature; /// ????(???????????) } NET_CTRL_SET_TEMPERATURE; ///@brief ????????????(???????DH_CTRL_AIRCONDITION_ADJUST_TEMPERATURE) typedef struct tagNET_CTRL_ADJUST_TEMPERATURE { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? int nTemperatureScale; /// ??????, ??-1????????????(???????????) } NET_CTRL_ADJUST_TEMPERATURE; ///@brief ????????????????(???????DH_CTRL_AIRCONDITION_SETMODE) typedef struct tagNET_CTRL_AIRCONDITION_SETMODE { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? EM_AIRCONDITION_MODE emAirconditionMode; /// ????????? int nTemperature; /// ??????(???????????) } NET_CTRL_AIRCONDITION_SETMODE; ///@brief ???????????????(???????DH_CTRL_AIRCONDITION_SETWINDMODE) typedef struct tagNET_CTRL_AIRCONDITION_SETWINDMODE { DWORD dwSize; char szDeviceID[DH_MAX_DEV_ID_LEN]; /// ??????????? EM_AIRCONDITION_WINDMODE emAirconditionWindMode; /// ???????? } NET_CTRL_AIRCONDITION_SETWINDMODE; ///@brief IO????????,???CLIENT_QueryIOControlState??? typedef enum _IOTYPE { DH_ALARMINPUT = 1, /// ???????????,????????ALARM_CONTROL DH_ALARMOUTPUT = 2, /// ????????????????????ALARM_CONTROL DH_DECODER_ALARMOUT = 3, /// ??????????????????????????DECODER_ALARM_CONTROL DH_WIRELESS_ALARMOUT = 5, /// ????????????????????????ALARM_CONTROL DH_ALARM_TRIGGER_MODE = 7, /// ????????????????,???,????,???TRIGGER_MODE_CONTROL???? } DH_IOTYPE; //////////////////////////////???????///////////////////////////////// ///@brief ????????,??DH_DSP_ENCODECAP??? typedef enum _CAPTURE_SIZE { CAPTURE_SIZE_D1, /// 704*576(PAL) 704*480(NTSC),????WWxHH,??? CAPTURE_SIZE_HD1, /// 352*576(PAL) 352*480(NTSC) CAPTURE_SIZE_BCIF, /// 704*288(PAL) 704*240(NTSC) CAPTURE_SIZE_CIF, /// 352*288(PAL) 352*240(NTSC) CAPTURE_SIZE_QCIF, /// 176*144(PAL) 176*120(NTSC) CAPTURE_SIZE_VGA, /// 640*480 CAPTURE_SIZE_QVGA, /// 320*240 CAPTURE_SIZE_SVCD, /// 480*480 CAPTURE_SIZE_QQVGA, /// 160*128 CAPTURE_SIZE_SVGA, /// 800*592 CAPTURE_SIZE_XVGA, /// 1024*768 CAPTURE_SIZE_WXGA, /// 1280*800 CAPTURE_SIZE_SXGA, /// 1280*1024 CAPTURE_SIZE_WSXGA, /// 1600*1024 CAPTURE_SIZE_UXGA, /// 1600*1200 CAPTURE_SIZE_WUXGA, /// 1920*1200 CAPTURE_SIZE_LTF, /// 240*192,ND1 CAPTURE_SIZE_720, /// 1280*720 CAPTURE_SIZE_1080, /// 1920*1080 CAPTURE_SIZE_1_3M, /// 1280*960 CAPTURE_SIZE_2M, /// 1872*1408,2_5M CAPTURE_SIZE_5M, /// 3744*1408 CAPTURE_SIZE_3M, /// 2048*1536 CAPTURE_SIZE_5_0M, /// 2432*2050 CPTRUTE_SIZE_1_2M, /// 1216*1024 CPTRUTE_SIZE_1408_1024, /// 1408*1024 CPTRUTE_SIZE_8M, /// 3296*2472 CPTRUTE_SIZE_2560_1920, /// 2560*1920(5_1M) CAPTURE_SIZE_960H, /// 960*576(PAL) 960*480(NTSC) CAPTURE_SIZE_960_720, /// 960*720 CAPTURE_SIZE_NHD, /// 640*360 CAPTURE_SIZE_QNHD, /// 320*180 CAPTURE_SIZE_QQNHD, /// 160*90 CAPTURE_SIZE_960_540, /// 960*540 CAPTURE_SIZE_640_352, /// 640*352 CAPTURE_SIZE_640_400, /// 640*400 CAPTURE_SIZE_320_192, /// 320*192 CAPTURE_SIZE_320_176, /// 320*176 CAPTURE_SIZE_SVGA1, /// 800*600 CAPTURE_SIZE_2560_1440, /// 2560*1440 CAPTURE_SIZE_2304_1296, /// 2304*1296 CAPTURE_SIZE_2592_1520, /// 2592*1520 CAPTURE_SIZE_4000_3000, /// 4000*3000 CAPTURE_SIZE_2880_2880, /// 2880*2880 CAPTURE_SIZE_2880_2160, /// 2880*2160 CAPTURE_SIZE_2688_1520, /// 2688*1520 CAPTURE_SIZE_2592_1944, /// 2592*1944 CAPTURE_SIZE_3072_1728, /// 3072*1728 CAPTURE_SIZE_3072_2048, /// 3072*2048 CAPTURE_SIZE_3840_2160, /// 3840*2160 CAPTURE_SIZE_NR=255 } CAPTURE_SIZE; ///@brief ????????,???????????? typedef enum tagEM_CAPTURE_SIZE_EX { EM_CAPTURE_SIZE_EX_D1, /// D1 704*576(PAL) 704*480(NTSC),????WWxHH,??? EM_CAPTURE_SIZE_EX_D1_PAL, /// 704*576(PAL) EM_CAPTURE_SIZE_EX_D1_NTSC, /// 704*480(NTSC) EM_CAPTURE_SIZE_EX_HD1, /// HD1 352*576(PAL) 352*480(NTSC) EM_CAPTURE_SIZE_EX_HD1_PAL, /// 352*576(PAL) EM_CAPTURE_SIZE_EX_HD1_NTSC, /// 352*480(NTSC) EM_CAPTURE_SIZE_EX_BCIF, /// BCIF 704*288(PAL) 704*240(NTSC) EM_CAPTURE_SIZE_EX_BCIF_PAL, /// 704*288(PAL) EM_CAPTURE_SIZE_EX_BCIF_NTSC, /// 704*240(NTSC) EM_CAPTURE_SIZE_EX_CIF, /// CIF 352*288(PAL) 352*240(NTSC) EM_CAPTURE_SIZE_EX_CIF_PAL, /// 352*288(PAL) EM_CAPTURE_SIZE_EX_CIF_NTSC, /// 352*240(NTSC) EM_CAPTURE_SIZE_EX_QCIF, /// QCIF 176*144(PAL) 176*120(NTSC) EM_CAPTURE_SIZE_EX_QCIF_PAL, /// 176*144(PAL) EM_CAPTURE_SIZE_EX_QCIF_NTSC, /// 176*120(NTSC) EM_CAPTURE_SIZE_EX_VGA, /// 640*480 EM_CAPTURE_SIZE_EX_QVGA, /// 320*240 EM_CAPTURE_SIZE_EX_SVCD, /// 480*480 EM_CAPTURE_SIZE_EX_QQVGA, /// 160*128 EM_CAPTURE_SIZE_EX_SVGA, /// 800*592 EM_CAPTURE_SIZE_EX_XVGA, /// 1024*768 EM_CAPTURE_SIZE_EX_WXGA, /// 1280*800 EM_CAPTURE_SIZE_EX_SXGA, /// 1280*1024 EM_CAPTURE_SIZE_EX_WSXGA, /// 1600*1024 EM_CAPTURE_SIZE_EX_UXGA, /// 1600*1200 EM_CAPTURE_SIZE_EX_WUXGA, /// 1920*1200 EM_CAPTURE_SIZE_EX_LTF, /// 240*192,ND1 EM_CAPTURE_SIZE_EX_720, /// 1280*720 EM_CAPTURE_SIZE_EX_1080, /// 1920*1080 EM_CAPTURE_SIZE_EX_1_3M, /// 1280*960 EM_CAPTURE_SIZE_EX_2M, /// 1872*1408,2_5M EM_CAPTURE_SIZE_EX_5M, /// 3744*1408 EM_CAPTURE_SIZE_EX_3M, /// 2048*1536 EM_CAPTURE_SIZE_EX_5_0M, /// 2432*2050 EM_CAPTURE_SIZE_EX_1_2M, /// 1216*1024 EM_CAPTURE_SIZE_EX_1408_1024, /// 1408*1024 EM_CAPTURE_SIZE_EX_8M, /// 3296*2472 EM_CAPTURE_SIZE_EX_2560_1920, /// 2560*1920(5_1M) EM_CAPTURE_SIZE_EX_960H, /// 960H 960*576(PAL) 960*480(NTSC) EM_CAPTURE_SIZE_EX_960H_PAL, /// 960*576(PAL) EM_CAPTURE_SIZE_EX_960H_NTSC, /// 960*480(NTSC) EM_CAPTURE_SIZE_EX_960_720, /// 960*720 EM_CAPTURE_SIZE_EX_NHD, /// 640*360 EM_CAPTURE_SIZE_EX_QNHD, /// 320*180 EM_CAPTURE_SIZE_EX_QQNHD, /// 160*90 EM_CAPTURE_SIZE_EX_960_540, /// 960*540 EM_CAPTURE_SIZE_EX_640_352, /// 640*352 EM_CAPTURE_SIZE_EX_640_400, /// 640*400 EM_CAPTURE_SIZE_EX_320_192, /// 320*192 EM_CAPTURE_SIZE_EX_320_176, /// 320*176 EM_CAPTURE_SIZE_EX_SVGA1, /// 800*600 EM_CAPTURE_SIZE_EX_2560_1440, /// 2560*1440 EM_CAPTURE_SIZE_EX_2304_1296, /// 2304*1296 EM_CAPTURE_SIZE_EX_2592_1520, /// 2592*1520 EM_CAPTURE_SIZE_EX_4000_3000, /// 4000*3000 EM_CAPTURE_SIZE_EX_2880_2880, /// 2880*2880 EM_CAPTURE_SIZE_EX_2880_2160, /// 2880*2160 EM_CAPTURE_SIZE_EX_2688_1520, /// 2688*1520 EM_CAPTURE_SIZE_EX_2592_1944, /// 2592*1944 EM_CAPTURE_SIZE_EX_3072_1728, /// 3072*1728 EM_CAPTURE_SIZE_EX_3072_2048, /// 3072*2048 EM_CAPTURE_SIZE_EX_3840_2160, /// 3840*2160 EM_CAPTURE_SIZE_EX_NR=255 } EM_CAPTURE_SIZE_EX; ///@brief ???????????,??CLIENT_ExportConfigFile?????? typedef enum __DH_CONFIG_FILE_TYPE { DH_CONFIGFILE_ALL = 0, /// ?????????? DH_CONFIGFILE_LOCAL, /// ??????????? DH_CONFIGFILE_NETWORK, /// ??????????? DH_CONFIGFILE_USER, /// ?????????? } DH_CONFIG_FILE_TYPE; ///@brief NTP typedef enum __DH_TIME_ZONE_TYPE { DH_TIME_ZONE_0, /// (0, 0*3600,"GMT+00:00") DH_TIME_ZONE_1, /// (1, 1*3600,"GMT+01:00") DH_TIME_ZONE_2, /// (2, 2*3600,"GMT+02:00") DH_TIME_ZONE_3, /// (3, 3*3600,"GMT+03:00") DH_TIME_ZONE_4, /// (4, 3*3600+1800,"GMT+03:30") DH_TIME_ZONE_5, /// (5, 4*3600,"GMT+04:00") DH_TIME_ZONE_6, /// (6, 4*3600+1800,"GMT+04:30") DH_TIME_ZONE_7, /// (7, 5*3600,"GMT+05:00") DH_TIME_ZONE_8, /// (8, 5*3600+1800,"GMT+05:30") DH_TIME_ZONE_9, /// (9, 5*3600+1800+900,"GMT+05:45") DH_TIME_ZONE_10, /// (10, 6*3600,"GMT+06:00") DH_TIME_ZONE_11, /// (11, 6*3600+1800,"GMT+06:30") DH_TIME_ZONE_12, /// (12, 7*3600,"GMT+07:00") DH_TIME_ZONE_13, /// (13, 8*3600,"GMT+08:00") DH_TIME_ZONE_14, /// (14, 9*3600,"GMT+09:00") DH_TIME_ZONE_15, /// (15, 9*3600+1800,"GMT+09:30") DH_TIME_ZONE_16, /// (16, 10*3600,"GMT+10:00") DH_TIME_ZONE_17, /// (17, 11*3600,"GMT+11:00") DH_TIME_ZONE_18, /// (18, 12*3600,"GMT+12:00") DH_TIME_ZONE_19, /// (19, 13*3600,"GMT+13:00") DH_TIME_ZONE_20, /// (20, -1*3600,"GMT-01:00") DH_TIME_ZONE_21, /// (21, -2*3600,"GMT-02:00") DH_TIME_ZONE_22, /// (22, -3*3600,"GMT-03:00") DH_TIME_ZONE_23, /// (23, -3*3600-1800,"GMT-03:30") DH_TIME_ZONE_24, /// (24, -4*3600,"GMT-04:00") DH_TIME_ZONE_25, /// (25, -5*3600,"GMT-05:00") DH_TIME_ZONE_26, /// (26, -6*3600,"GMT-06:00") DH_TIME_ZONE_27, /// (27, -7*3600,"GMT-07:00") DH_TIME_ZONE_28, /// (28, -8*3600,"GMT-08:00") DH_TIME_ZONE_29, /// (29, -9*3600,"GMT-09:00") DH_TIME_ZONE_30, /// (30, -10*3600,"GMT-10:00") DH_TIME_ZONE_31, /// (31, -11*3600,"GMT-11:00") DH_TIME_ZONE_32, /// (32, -12*3600,"GMT-12:00") } DH_TIME_ZONE_TYPE; ///@brief ?????? typedef enum _SNAP_TYPE { SNAP_TYP_TIMING = 0, SNAP_TYP_ALARM, SNAP_TYP_NUM = 2, } SNAP_TYPE; ///@brief ?????? typedef enum _CONNECT_STATE { CONNECT_STATE_UNCONNECT = 0, /// ???????? CONNECT_STATE_CONNECTING, /// ???????? CONNECT_STATE_CONNECTED, /// ?????? CONNECT_STATE_EMPTY, /// ??????????????? CONNECT_STATE_CHANGED, /// ???????????????? CONNECT_STATE_ERROR = 255, /// ???????? } CONNECT_STATE; ///@brief ????? typedef enum tagDH_TRAFFIC_SNAP_MODE { DH_TRAFFIC_SNAP_MODE_COIL = 1, /// ?????? DH_TRAFFIC_SNAP_MODE_COIL_PICANALYSIS, /// ??????, ?????? DH_TRAFFIC_SNAP_MODE_STREAM, /// ?????? DH_TRAFFIC_SNAP_MODE_STREAM_IDENTIFY, /// ??????, ??????? } DH_TRAFFIC_SNAP_MODE; ///@brief ?????????? typedef enum { NET_CARPORTLIGHT_TYPE_RED, /// ??? NET_CARPORTLIGHT_TYPE_GREEN, /// ??? }NET_CARPORTLIGHT_TYPE; ///@brief ???????????? typedef enum { NET_CARPORTLIGHT_MODE_OFF, /// ?? NET_CARPORTLIGHT_MODE_ON, /// ?? NET_CARPORTLIGHT_MODE_GLINT, /// ??? }NET_CARPORTLIGHT_MODE; //////////////////////////////?????????///////////////////////////////// ///@brief ???/???????????????? typedef enum _EM_OPERATE_TYPE { NET_TRAFFIC_LIST_INSERT, /// ??????????(??????? NET_INSERT_RECORD_INFO) NET_TRAFFIC_LIST_UPDATE, /// ??????????(??????? NET_UPDATE_RECORD_INFO) NET_TRAFFIC_LIST_REMOVE, /// ??????????(??????? NET_REMOVE_RECORD_INFO) NET_TRAFFIC_LIST_MAX, }EM_RECORD_OPERATE_TYPE ; ///@brief ???????? typedef enum _EM_NET_PLATE_TYPE { NET_PLATE_TYPE_UNKNOWN, NET_PLATE_TYPE_NORMAL, /// "Normal" ??????? NET_PLATE_TYPE_YELLOW, /// "Yellow" ???? NET_PLATE_TYPE_DOUBLEYELLOW, /// "DoubleYellow" ???????? NET_PLATE_TYPE_POLICE, /// "Police" ???? NET_PLATE_TYPE_WJ, NET_PLATE_TYPE_OUTERGUARD, NET_PLATE_TYPE_DOUBLEOUTERGUARD, NET_PLATE_TYPE_SAR, /// "SAR" ??????????? NET_PLATE_TYPE_TRAINNING, /// "Trainning" ?????????? NET_PLATE_TYPE_PERSONAL, /// "Personal" ??????? NET_PLATE_TYPE_AGRI, /// "Agri" ????? NET_PLATE_TYPE_EMBASSY, /// "Embassy" ?????? NET_PLATE_TYPE_MOTO, /// "Moto" ????????? NET_PLATE_TYPE_TRACTOR, /// "Tractor" ?????????? NET_PLATE_TYPE_OFFICIALCAR, /// "OfficialCar" ???? NET_PLATE_TYPE_PERSONALCAR, /// "PersonalCar" ???? NET_PLATE_TYPE_WARCAR, NET_PLATE_TYPE_OTHER, /// "Other" ???????? NET_PLATE_TYPE_CIVILAVIATION, /// "Civilaviation" ????? NET_PLATE_TYPE_BLACK, /// "Black" ???? NET_PLATE_TYPE_PURENEWENERGYMICROCAR, /// "PureNewEnergyMicroCar" ????T????????? NET_PLATE_TYPE_MIXEDNEWENERGYMICROCAR, /// "MixedNewEnergyMicroCar" ???????????? NET_PLATE_TYPE_PURENEWENERGYLARGECAR, /// "PureNewEnergyLargeCar" ????T??????? NET_PLATE_TYPE_MIXEDNEWENERGYLARGECAR, /// "MixedNewEnergyLargeCar" ?????????? NET_PLATE_TYPE_HONGKONG, /// "Hongkong" ?????? NET_PLATE_TYPE_MAKAO, /// "Makao" ??????? NET_PLATE_TYPE_NEWENERGY, /// "NewEnergy" ????????? NET_PLATE_TYPE_EMERGENCY, /// "Emergency" ??????? NET_PLATE_TYPE_RIGANG, /// "RiGang" ?????? NET_PLATE_TYPE_PRIVATE, /// "Private" ???????? NET_PLATE_TYPE_TRANSPORT, /// "Transport" ???????? NET_PLATE_TYPE_TAXI, /// "Taxi" ???? NET_PLATE_TYPE_GOV, /// "Government" ZF???? NET_PLATE_TYPE_ISF, /// "ISF" ??????ISF???? NET_PLATE_TYPE_EXPORT, /// "Export" ????????????? NET_PLATE_TYPE_TRAILER, /// "Trailer" ??????????? NET_PLATE_TYPE_UNDEREXPE, /// "UnderExpe" ????UNDER_EXPE???? NET_PLATE_TYPE_TEMPTRANSPORT, /// "TempTransport" ????Temp Transport???? NET_PLATE_TYPE_PUBLICTRANSPORT, /// "PublicTransport" ????Public Transport???? NET_PLATE_TYPE_ASKARI, /// "Askari" ????Askari???? NET_PLATE_TYPE_ENIRIGUARD, /// "EmiriGuard" ????Emiri Guard???? NET_PLATE_TYPE_UN, /// "UN" ????UN???? NET_PLATE_TYPE_LIMOUSINE, /// "Limousine" ????Limousine???? }EM_NET_PLATE_TYPE; ///@brief ??????? typedef enum _EM_NET_PLATE_COLOR_TYPE { NET_PLATE_COLOR_OTHER, /// ??????? NET_PLATE_COLOR_BLUE, /// ??? "Blue" NET_PLATE_COLOR_YELLOW, /// ??? "Yellow" NET_PLATE_COLOR_WHITE, /// ??? "White" NET_PLATE_COLOR_BLACK, /// ??? "Black" NET_PLATE_COLOR_YELLOW_BOTTOM_BLACK_TEXT, /// ?????? "YellowbottomBlackText" NET_PLATE_COLOR_BLUE_BOTTOM_WHITE_TEXT, /// ??????? "BluebottomWhiteText" NET_PLATE_COLOR_BLACK_BOTTOM_WHITE_TEXT, /// ?????? "BlackBottomWhiteText" NET_PLATE_COLOR_SHADOW_GREEN, /// ?????? "ShadowGreen" NET_PLATE_COLOR_YELLOW_GREEN, /// ?????? "YellowGreen" }EM_NET_PLATE_COLOR_TYPE; ///@brief ???????? typedef enum _EM_NET_VEHICLE_TYPE { NET_VEHICLE_TYPE_UNKNOW, /// ??????? NET_VEHICLE_TYPE_MOTOR, /// "Motor" ?????? NET_VEHICLE_TYPE_NON_MOTOR, /// "Non-Motor"??????? NET_VEHICLE_TYPE_BUS, /// "Bus"?????? NET_VEHICLE_TYPE_BICYCLE, /// "Bicycle" ?????? NET_VEHICLE_TYPE_MOTORCYCLE, /// "Motorcycle"????? NET_VEHICLE_TYPE_UNLICENSEDMOTOR, /// "UnlicensedMotor": ????????? NET_VEHICLE_TYPE_LARGECAR, /// "LargeCar" ???????? NET_VEHICLE_TYPE_MICROCAR, /// "MicroCar" ???????? NET_VEHICLE_TYPE_EMBASSYCAR, /// "EmbassyCar" ??????? NET_VEHICLE_TYPE_MARGINALCAR, /// "MarginalCar" ??????? NET_VEHICLE_TYPE_AREAOUTCAR, /// "AreaoutCar" ???????? NET_VEHICLE_TYPE_FOREIGNCAR, /// "ForeignCar" ?????? NET_VEHICLE_TYPE_DUALTRIWHEELMOTORCYCLE, /// "DualTriWheelMotorcycle"????????????? NET_VEHICLE_TYPE_LIGHTMOTORCYCLE, /// "LightMotorcycle" ???????? NET_VEHICLE_TYPE_EMBASSYMOTORCYCLE, /// "EmbassyMotorcycle "???????? NET_VEHICLE_TYPE_MARGINALMOTORCYCLE, /// "MarginalMotorcycle "???????? NET_VEHICLE_TYPE_AREAOUTMOTORCYCLE, /// "AreaoutMotorcycle "????????? NET_VEHICLE_TYPE_FOREIGNMOTORCYCLE, /// "ForeignMotorcycle "??????? NET_VEHICLE_TYPE_FARMTRANSMITCAR, /// "FarmTransmitCar" ??????? NET_VEHICLE_TYPE_TRACTOR, /// "Tractor" ?????? NET_VEHICLE_TYPE_TRAILER, /// "Trailer" ??? NET_VEHICLE_TYPE_COACHCAR, /// "CoachCar"???????? NET_VEHICLE_TYPE_COACHMOTORCYCLE, /// "CoachMotorcycle "????????? NET_VEHICLE_TYPE_TRIALCAR, /// "TrialCar" ???????? NET_VEHICLE_TYPE_TRIALMOTORCYCLE, /// "TrialMotorcycle "????????? NET_VEHICLE_TYPE_TEMPORARYENTRYCAR, /// "TemporaryEntryCar"????????? NET_VEHICLE_TYPE_TEMPORARYENTRYMOTORCYCLE, /// "TemporaryEntryMotorcycle"?????????? NET_VEHICLE_TYPE_TEMPORARYSTEERCAR, /// "TemporarySteerCar"???????? NET_VEHICLE_TYPE_PASSENGERCAR, /// "PassengerCar" ??? NET_VEHICLE_TYPE_LARGETRUCK, /// "LargeTruck" ????? NET_VEHICLE_TYPE_MIDTRUCK, /// "MidTruck" ?????? NET_VEHICLE_TYPE_SALOONCAR, /// "SaloonCar" ???? NET_VEHICLE_TYPE_MICROBUS, /// "Microbus"????? NET_VEHICLE_TYPE_MICROTRUCK, /// "MicroTruck"?????? NET_VEHICLE_TYPE_TRICYCLE, /// "Tricycle"????? NET_VEHICLE_TYPE_PASSERBY, /// "Passerby" ???? }EM_NET_VEHICLE_TYPE; ///@brief ??????? typedef enum _EM_NET_VEHICLE_COLOR_TYPE { NET_VEHICLE_COLOR_OTHER, ///??????? NET_VEHICLE_COLOR_WHITE, ///??? "White" NET_VEHICLE_COLOR_BLACK, ///??? "Black" NET_VEHICLE_COLOR_RED, ///??? "Red" NET_VEHICLE_COLOR_YELLOW, ///??? "Yellow" NET_VEHICLE_COLOR_GRAY, ///??? "Gray" NET_VEHICLE_COLOR_BLUE, ///??? "Blue" NET_VEHICLE_COLOR_GREEN, ///??? "Green" NET_VEHICLE_COLOR_PINK, ///???? "Pink" NET_VEHICLE_COLOR_PURPLE, ///??? "Purple" NET_VEHICLE_COLOR_BROWN, ///??? "Brown" }EM_NET_VEHICLE_COLOR_TYPE; ///@brief ???????? typedef enum _EM_NET_TRAFFIC_CAR_CONTROL_TYPE { NET_CAR_CONTROL_OTHER, /// ???? NET_CAR_CONTROL_OVERDUE_NO_CHECK, /// "OverdueNoCheck" NET_CAR_CONTROL_BRIGANDAGE_CAR, /// "BrigandageCar" NET_CAR_CONTROL_BREAKING, /// "Breaking" NET_CAR_CONTROL_CAUSETROUBLE_ESCAPE, /// "CausetroubleEscape" NET_CAR_CONTROL_CAUSETROUBLE_OVERDUEPARKING, /// "OverdueParking" NET_CAR_CONTROL_COUNTERFEI_PLATE_CAR, /// "CounterfeitPlateCar" NET_CAR_CONTROL_FAKE_PLATE_CAR, /// "FakePlateCar" NET_CAR_CONTROL_FOCAL_CAR, /// "FocalCar" NET_CAR_CONTROL_GUARANTEE_CAR, /// "GuaranteeCar" NET_CAR_CONTROL_FOLLOW_CAR, /// "FollowCar" }EM_NET_TRAFFIC_CAR_CONTROL_TYPE; ///@brief ??????? typedef enum _EM_NET_AUTHORITY_TYPE { NET_AUTHORITY_UNKNOW, NET_AUTHORITY_OPEN_GATE, ///?????? }EM_NET_AUTHORITY_TYPE; ///@brief ???????????? typedef enum _EM_NET_RECORD_TYPE { NET_RECORD_UNKNOWN, NET_RECORD_TRAFFICREDLIST, /// ????????????????? /// ?????????? FIND_RECORD_TRAFFICREDLIST_CONDITION ???? /// ????????? NET_TRAFFIC_LIST_RECORD ???? NET_RECORD_TRAFFICBLACKLIST, /// ??????????????? /// ?????????? FIND_RECORD_TRAFFICREDLIST_CONDITION ???? /// ????????? NET_TRAFFIC_LIST_RECORD ???? NET_RECORD_BURN_CASE, /// ?????????? /// ?????????? FIND_RECORD_BURN_CASE_CONDITION ???? /// ????????? NET_BURN_CASE_INFO ???? NET_RECORD_ACCESSCTLCARD, /// ????? /// ?????????? FIND_RECORD_ACCESSCTLCARD_CONDITION ???? /// ????????? NET_RECORDSET_ACCESS_CTL_CARD ???? NET_RECORD_ACCESSCTLPWD, /// ??????? /// ?????????? FIND_RECORD_ACCESSCTLPWD_CONDITION ???? /// ????????? NET_RECORDSET_ACCESS_CTL_PWD NET_RECORD_ACCESSCTLCARDREC, /// ???????????????????????????????,??????NET_RECORD_ACCESSCTLCARDREC_EX????? /// ?????????? FIND_RECORD_ACCESSCTLCARDREC_CONDITION ???? /// ????????? NET_RECORDSET_ACCESS_CTL_CARDREC ???? NET_RECORD_ACCESSCTLHOLIDAY, /// ???????? /// ?????????? FIND_RECORD_ACCESSCTLHOLIDAY_CONDITION ???? /// ????????? NET_RECORDSET_HOLIDAY ???? NET_RECORD_TRAFFICFLOW_STATE, /// ????????????? /// ?????????? FIND_RECORD_TRAFFICFLOW_CONDITION ???? /// ????????? NET_RECORD_TRAFFIC_FLOW_STATE ???? NET_RECORD_VIDEOTALKLOG, /// ?????? /// ?????????? FIND_RECORD_VIDEO_TALK_LOG_CONDITION ???? /// ????????? NET_RECORD_VIDEO_TALK_LOG ???? NET_RECORD_REGISTERUSERSTATE, /// ????? /// ?????????? FIND_RECORD_REGISTER_USER_STATE_CONDITION ???? /// ????????? NET_RECORD_REGISTER_USER_STATE ???? NET_RECORD_VIDEOTALKCONTACT, /// ??????? /// ?????????? FIND_RECORD_VIDEO_TALK_CONTACT_CONDITION ???? /// ????????? NET_RECORD_VIDEO_TALK_CONTACT ???? NET_RECORD_ANNOUNCEMENT, ///?????? ///?????????? FIND_RECORD_ANNOUNCEMENT_CONDITION ???? ///????????? NET_RECORD_ANNOUNCEMENT_INFO ???? NET_RECORD_ALARMRECORD, ///??????? ///?????????? FIND_RECORD_ALARMRECORD_CONDITION ???? ///????????? NET_RECORD_ALARMRECORD_INFO ???? NET_RECORD_COMMODITYNOTICE, /// ?????????? /// ?????????? FIND_RECORD_COMMODITY_NOTICE_CONDITION ???? /// ????????? NET_RECORD_COMMODITY_NOTICE ???? NET_RECORD_HEALTHCARENOTICE, /// ?????????? /// ?????????? FIND_RECORD_HEALTH_CARE_NOTICE_CONDITION ???? /// ????????? NET_RECORD_HEALTH_CARE_NOTICE ???? NET_RECORD_ACCESSCTLCARDREC_EX, /// ?????????(?????????????,???????NET_RECORD_ACCESSCTLCARDREC) /// ?????????? FIND_RECORD_ACCESSCTLCARDREC_CONDITION_EX ???? /// ????????? NET_RECORDSET_ACCESS_CTL_CARDREC ???? NET_RECORD_GPS_LOCATION, /// GPS??????????, ????import??clear /// ????????? NET_RECORD_GPS_LOCATION_INFO ???? NET_RECORD_RESIDENT, /// ????????? /// ?????????? FIND_RECORD_RESIDENT_CONDTION???? /// ????????? NET_RECORD_RESIDENT_INFO ???? NET_RECORD_SENSORRECORD, /// ??????????? /// ?????????? FIND_RECORD_SENSORRECORD_CONDITION ???? /// ????????? NET_RECORD_SENSOR_RECORD ???? NET_RECORD_ACCESSQRCODE, ///???????????? ///????????? NET_RECORD_ACCESSQRCODE_INFO ???? NET_RECORD_ELECTRONICSTAG, /// ????????? /// ??????????FIND_RECORD_ELECTRONICSTAG_CONDITION ???? /// ?????????NET_RECORD_ELECTRONICSTAG_INFO ???? NET_RECORD_ACCESS_BLUETOOTH, /// ???????????? /// ?????????? FIND_RECORD_ACCESS_BLUETOOTH_INFO_CONDITION ???? /// ????????? NET_RECORD_ACCESS_BLUETOOTH_INFO ???? NET_RECORD_ACCESS_ALARMRECORD, /// ???????????? /// ?????????? FIND_NET_RECORD_ACCESS_ALARMRECORD_INFO_CONDITION ???? /// ????????? NET_RECORD_ACCESS_ALARMRECORD_INFO ???? NET_RECORD_ACCESS_DOORSTATUS, /// ???????????? /// ?????????? FIND_RECORD_ACCESS_DOORSTATUS_INFO_CONDITION ???? /// ????????? NET_RECORD_ACCESS_DOORSTATUS_INFO ???? NET_RECORD_ACCESSCTL_COMMON_PASSWORD, /// ????????????? /// ?????????? FIND_RECORD_ACCESS_CTL_COMMONPASSWORD_INFO_CONDITION ???? /// ????????? NET_RECORD_ACCESS_CTL_COMMONPASSWORD_INFO ???? NET_RECORD_ACCESS_MOBILE_PUSH_RESULT, /// VTO????????????? /// ?????????? FIND_RECORD_ACCESS_MOBILE_PUSH_RESULT_INFO_CONDITION ???? /// ????????? NET_RECORD_ACCESS_MOBILE_PUSH_RESULT_INFO NET_RECORD_HOSPITAL_USER, /// ?????????? /// ?????????? FIND_RECORD_HOSPITAL_USER_CONDITION ???? /// ????????? NET_RECORD_HOSPITAL_USER_INFO ???? NET_RECORD_HOSPITAL_DEVICE, /// ?????????? /// ?????????? FIND_RECORD_HOSPITAL_DEVICE_CONDITION ???? /// ????????? NET_RECORD_HOSPITAL_DEVICE_INFO ???? NET_RECORD_ACCESS_CONSUMPTION, /// ?????? /// ?????????? FIND_RECORD_ACCESS_CTL_CONSUMPTION_INFO_CONDITION ???? /// ????????? NET_RECORD_ACCESS_CTL_CONSUMPTION_INFO ???? }EM_NET_RECORD_TYPE; ///@brief ??????? typedef enum { NET_TIME_TYPE_ABSLUTE, /// ??????? NET_TIME_TYPE_RELATIVE, /// ??????,????????????????????,???????UTC(0000-00-00 00:00:00) }EM_TIME_TYPE; ///@brief ??????? typedef enum { NET_COLOR_TYPE_RED, /// ??? NET_COLOR_TYPE_YELLOW, /// ??? NET_COLOR_TYPE_GREEN, /// ??? NET_COLOR_TYPE_CYAN, /// ??? NET_COLOR_TYPE_BLUE, /// ??? NET_COLOR_TYPE_PURPLE, /// ??? NET_COLOR_TYPE_BLACK, /// ??? NET_COLOR_TYPE_WHITE, /// ??? NET_COLOR_TYPE_MAX = 8, }EM_COLOR_TYPE; //////////////////////////////?????????///////////////////////////////// ///@brief ??????? typedef enum { PERSON_TYPE_UNKNOWN, PERSON_TYPE_NORMAL, PERSON_TYPE_SUSPICION, PERSON_TYPE_ARGXT, PERSON_TYPE_VIP, PERSON_TYPE_FATECHECK, PERSON_TYPE_STAFF, }EM_PERSON_TYPE; ///@brief ??????? typedef enum { CERTIFICATE_TYPE_UNKNOWN, CERTIFICATE_TYPE_IC, /// ??? CERTIFICATE_TYPE_PASSPORT, /// ???? CERTIFICATE_TYPE_OUTERGUARD, /// ????? CERTIFICATE_TYPE_STUDENT, /// ???? CERTIFICATE_TYPE_POLICE, /// ????? CERTIFICATE_TYPE_LAWYER, /// ??? }EM_CERTIFICATE_TYPE; ///@brief ?????????????? typedef enum { NET_FACERECONGNITIONDB_UNKOWN, NET_FACERECONGNITIONDB_ADD, /// ???????????????????,?????????????,?????????????????? NET_FACERECONGNITIONDB_DELETE, /// ?????????????????? NET_FACERECONGNITIONDB_MODIFY, /// ??????????????????,?????UID??????? NET_FACERECONGNITIONDB_DELETE_BY_UID, /// ???UID?????????????????? NET_FACERECONGNITIONDB_DELETE_BY_UUID, /// ???UUID?????????????????? }EM_OPERATE_FACERECONGNITIONDB_TYPE; ///@brief ??????? typedef enum { NET_FACE_COMPARE_MODE_UNKOWN, NET_FACE_COMPARE_MODE_NORMAL, /// ???? NET_FACE_COMPARE_MODE_AREA, /// ????????????????? NET_FACE_COMPARE_MODE_AUTO, /// ??????,??????????????????????????? }EM_FACE_COMPARE_MODE; ///@brief ??????? typedef enum { NET_FACE_AREA_TYPE_UNKOWN, NET_FACE_AREA_TYPE_EYEBROW, /// ??? NET_FACE_AREA_TYPE_EYE, /// ??? NET_FACE_AREA_TYPE_NOSE, /// ???? NET_FACE_AREA_TYPE_MOUTH, /// ??? NET_FACE_AREA_TYPE_CHEEK, /// ???? }EM_FACE_AREA_TYPE; ///@brief ??????????? typedef enum { NET_FACE_DB_TYPE_UNKOWN, NET_FACE_DB_TYPE_HISTORY, /// ????????,?????????????????,????????????????????? NET_FACE_DB_TYPE_BLACKLIST, /// ????????????(????????????) NET_FACE_DB_TYPE_WHITELIST, /// ?????????????,???? NET_FACE_DB_TYPE_ALARM , /// ??????, ???? NET_FACE_DB_TYPE_PASSERBY, /// ????? }EM_FACE_DB_TYPE; ///@brief ????????????? typedef enum { NET_FACERECOGNITION_ALARM_TYPE_UNKOWN, NET_FACERECOGNITION_ALARM_TYPE_ALL, /// ???/???????? NET_FACERECOGNITION_ALARM_TYPE_BLACKLIST, /// ??????? NET_FACERECOGNITION_ALARM_TYPE_WHITELIST, /// ???????? }EM_FACERECOGNITION_ALARM_TYPE; ///@brief ????????????? typedef enum { EM_FACERECOGNITION_FACE_TYPE_UNKOWN, EM_FACERECOGNITION_FACE_TYPE_ALL, /// ??????? EM_FACERECOGNITION_FACE_TYPE_REC_SUCCESS, /// ????? EM_FACERECOGNITION_FACE_TYPE_REC_FAIL, /// ?????? }EM_FACERECOGNITION_FACE_TYPE; ///@brief ????????? typedef enum __EM_FRAME_TYPE { EM_FRAME_UNKOWN, /// ??????? EM_FRAME_TYPE_MOTION, /// ?????,??????????? NET_MOTION_FRAME_INFO }EM_FRAME_TYPE; //////////////////////////////???????///////////////////////////////// ///@brief ????????,?????????????????,?????? typedef enum _CFG_INDEX { CFG_GENERAL = 0, /// ??? CFG_COMM, /// ???? CFG_NET, /// ???? CFG_RECORD, /// ??? CFG_CAPTURE, /// ??????? CFG_PTZ, /// ??? CFG_DETECT, /// ?????? CFG_ALARM, /// ???? CFG_DISPLAY, /// ??? CFG_RESERVED, /// ????,????????? CFG_TITLE = 10, /// ??????? CFG_MAIL = 11, /// ??????? CFG_EXCAPTURE = 12, /// ?????????? CFG_PPPOE = 13, /// pppoe???? CFG_DDNS = 14, /// DDNS???? CFG_SNIFFER = 15, /// ??????????????? CFG_DSPINFO = 16, /// ??????????? CFG_COLOR = 126, /// ?????????? CFG_ALL, /// ???? } CFG_INDEX; /************************************************************************ ** ????G?? ***********************************************************************/ ///@brief ????????????????????????? typedef struct { double dleft; ///??????????????????????????? double dright; ///??????????????????????????? double dtop; ///??????????????????????????? double dbottom; ///??????????????????????????? } DH_DISPLAYRREGION; ///@brief ?????? typedef struct tagNET_TIME { DWORD dwYear; /// ?? DWORD dwMonth; /// ?? DWORD dwDay; /// ?? DWORD dwHour; /// ? DWORD dwMinute; /// ?? DWORD dwSecond; /// ?? } NET_TIME,*LPNET_TIME; ///@brief ?????? typedef struct tagNET_TIME_EX { DWORD dwYear; /// ?? DWORD dwMonth; /// ?? DWORD dwDay; /// ?? DWORD dwHour; /// ? DWORD dwMinute; /// ?? DWORD dwSecond; /// ?? DWORD dwMillisecond; /// ???? DWORD dwUTC; /// utc???(????0???????????0???? ????????) DWORD dwReserved[1]; /// ?????? } NET_TIME_EX,*LPNET_TIME_EX; ///@brief ?????? typedef struct tagNET_TIME_EX1 { DWORD dwHour; /// ? DWORD dwMinute; /// ?? DWORD dwSecond; /// ?? } NET_TIME_EX1; ///@brief UTC??? typedef struct tagUTCTime { unsigned int utc; /// utc??? unsigned int tolerance; /// ??????????????????????????????????? (????????) char reserved[8]; /// ?????? }NET_UTCTIME, *LPNET_UTCTIME; ///@brief ?????????????? typedef struct _DHDEVTIME { DWORD second:6; /// ?? 1-60 DWORD minute:6; /// ?? 1-60 DWORD hour:5; /// ? 1-24 DWORD day:5; /// ?? 1-31 DWORD month:4; /// ?? 1-12 DWORD year:6; /// ?? 2000-2063 } DHDEVTIME, *LPDHDEVTIME; ///@brief ???? typedef struct tagRANGE { float fMax; /// ???? float fMin; /// ????? BOOL abStep; /// ??????????? float fStep; /// ???? BOOL abDefault; /// ??????????? float fDefault; /// ???? char reserved[16]; } RANGE; ///@brief ????????????????? typedef struct tagNET_FFCPERIOD_RANGE { int nMaxN; /// ????(NTSC???) int nMaxP; /// ????(PAL???) int nMin; /// ????? int nStep; /// ???? BYTE reserved[16]; } NET_FFCPERIOD_RANGE; ///@brief ???????(?????) typedef struct __NET_CALLBACK_DATA { int nResultCode; /// ??????0????? char *pBuf; /// ????????, ????????????????,????????????????nRetLen int nRetLen; /// ??????? LLONG lOperateHandle; /// ??????? void* userdata; /// ?????????????? char reserved[16]; } NET_CALLBACK_DATA, *LPNET_CALLBACK_DATA; ///@brief ?????????????????: ?????????? ??????????????(????????????????) ?? ??????????????(??????????????) ?????????????? typedef struct tagNET_EVENT_INFO_EXTEND { BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? stuRealUTC?????? stuRealUTC ???????(?????????????? ??????????/??????????(UTC) ???) char byReserved[4]; /// ???????????? NET_TIME_EX stuRealUTC; /// ????????????(???UTC???(???????????????)), ?????????UTC?????????????????????, ??????RealUTC??????UTC???, ???????????????????????RealUTC, ?????UTC. BOOL bIsEventsTypeValid; /// ?????????????? UINT szEventsType; /// ???????, bIsEventsTypeValid?TRUE?????, 0:?????????, 1:????????????(??????????????????????????????????????????) char szReserved[1012]; /// ??????? }NET_EVENT_INFO_EXTEND; ///////////////////////////?????????/////////////////////////////// ///@brief ?????????????????????? typedef struct _tagVideoFrameParam { BYTE encode; /// ?????????0,?????1??MPEG4??2?????H264??3?????JPEG??4????????H264??6?????JPEG2000??7?????AVS??8?????H264??9??MPEG2??10??VNC??11??SVAC??12????????H265?? BYTE frametype; /// I = 0, P = 1, B = 2... BYTE format; /// PAL - 0, NTSC - 1 BYTE size; /// CIF - 0, HD1 - 1, 2CIF - 2, D1 - 3, VGA - 4, QCIF - 5, QVGA - 6 , /// SVCD - 7,QQVGA - 8, SVGA - 9, XVGA - 10,WXGA - 11,SXGA - 12,WSXGA - 13,UXGA - 14,WUXGA - 15, LFT - 16, 720 - 17, 1080 - 18 ,1_3M-19 /// 2M-20, 5M-21;??size=255??????????width,height ???? DWORD fourcc; /// ?????H264?????????0????????*( DWORD*)"DIVX"????0x58564944 WORD width; /// ?????????????????size=255????? WORD height; /// ????????????????size=255????? NET_TIME struTime; /// ?????? } tagVideoFrameParam; ///@brief ?????????????????????? typedef struct _tagCBPCMDataParam { BYTE channels; /// ?????? BYTE samples; /// ???? 0 - 8000, 1 - 11025, 2 - 16000, 3 - 22050, 4 - 32000, 5 - 44100, 6 - 48000, 7-64000, 8-96000, 9-128000, 10-192000, 11-4000, 12-20000, 16-25600 BYTE depth; /// ??????? ??8????16???????? BYTE param1; /// 0 - ???????,1-???????? int encode; /// ?????????0,?????7??PCM8??8??G729??9??IMA??10??PCM MULAW??11??G721??12??PCM8_VWIS??13??MS_ADPCM??14??G711A??15??AMR??16??PCM16??22??G711U??25??G723??26??AAC??27??G726, 40kbps??28??G726, 32kbps??29??G726, 24kbps??30??G726, 16kbps??31??mp2??32??ogg vorbis??33??mp3??34??G722_1??38??OPUS?? } tagCBPCMDataParam; ///@brief ???????????? typedef enum tagEM_STREAMCONVERT_FRAMEDATA_TYPE { EM_STREAMCONVERT_FRAMEDATA_UNKNOWN, /// ??? EM_STREAMCONVERT_FRAMEDATA_VIDEO, /// ???? EM_STREAMCONVERT_FRAMEDATA_AUDIO, /// ???? } EM_STREAMCONVERT_FRAMEDATA_TYPE; ///@brief ???????????? typedef struct tagNET_STREAMCONVERT_INFO { EM_STREAMCONVERT_FRAMEDATA_TYPE emDataType; /// ???????????? void* pFrameInfo; /// ???? /// ??emDataType ? EM_STREAMCONVERT_FRAMEDATA_VIDEO ?????? tagVideoFrameParam ???? /// ??emDataType ? EM_STREAMCONVERT_FRAMEDATA_AUDIO ?????? tagCBPCMDataParam ???? }NET_STREAMCONVERT_INFO; ///@brief ???????????????????? typedef struct _DH_CHANNEL_OSDSTRING { BOOL bEnable; /// ??? DWORD dwPosition[MAX_STRING_LINE_LEN]; ///?????????????????1-9???????,?????????????? /// 7???? 8?? 9???? /// 4?? 5?? 6?? /// 1???? 2?? 3???? char szStrings[MAX_STRING_LINE_LEN][MAX_PER_STRING_LEN]; /// ??????????,??????20????? } DH_CHANNEL_OSDSTRING; ///@brief ???YUV???????????? typedef struct _tagCBYUVDataParam { long nWidth; /// ????? long nHeight; /// ????? NET_TIME stNetTime; /// ??????????? DWORD reserved[2]; /// ???? } tagCBYUVDataParam; ///////////////////////////?????????/////////////////////////////// ///@brief ????????? typedef enum tagEmQueryRecordType { EM_RECORD_TYPE_ALL = 0, /// ??????? EM_RECORD_TYPE_ALARM = 1, /// ????????? EM_RECORD_TYPE_MOTION_DETECT = 2, /// ??????????? EM_RECORD_TYPE_ALARM_ALL = 3, /// ??????????? EM_RECORD_TYPE_CARD = 4, /// ?????? EM_RECORD_TYPE_CONDITION = 5, /// ????????? EM_RECORD_TYPE_JOIN = 6, /// ????? EM_RECORD_TYPE_CARD_PICTURE = 8, /// ??????????,HB-U??NVS????? EM_RECORD_TYPE_PICTURE = 9, /// ?????,HB-U??NVS????? EM_RECORD_TYPE_FIELD = 10, /// ???????? EM_RECORD_TYPE_INTELLI_VIDEO = 11, /// ????????? EM_RECORD_TYPE_NET_DATA = 15, /// ???????????,???????????? EM_RECORD_TYPE_TRANS_DATA = 16, /// ????????????????? EM_RECORD_TYPE_IMPORTANT = 17, /// ????????? EM_RECORD_TYPE_TALK_DATA = 18, /// ????????? EM_RECORD_TYPE_POS = 19, /// POS??? EM_RECORD_TYPE_ALL_INTELLI_VIDEO = 20, /// ??????????? EM_RECORD_TYPE_INVALID = 256, /// ???????????? }EM_QUERY_RECORD_TYPE; ///@brief ????????? typedef struct tagNET_RECORDFILE_INFO { unsigned int ch; /// ????? char filename[124]; /// ????? unsigned int framenum; /// ???????? unsigned int size; /// ???????, ?????Kbyte NET_TIME starttime; /// ?????? NET_TIME endtime; /// ??????? unsigned int driveno; /// ?????(???????????????????????,0??127??????????,????64???????1,128??????????) unsigned int startcluster; /// ?????? BYTE nRecordFileType; /// ?????????? 0????????1?????????2????????3?????????4????, 5: ???????, 19: POS???, 255:??????? BYTE bImportantRecID; /// 0:?????? 1:?????? BYTE bHint; /// ???????????(nRecordFileType==4?,bImportantRecID<<8 +bHint ,????????????? ) BYTE bRecType; /// 0-????????? 1-????1????? 2-??????2 3-??????3??? } NET_RECORDFILE_INFO, *LPNET_RECORDFILE_INFO; ///@brief ???????????? typedef enum _EM_RECORD_SNAP_FLAG_TYPE { FLAG_TYPE_UNKNOW = -1 , ///??? FLAG_TYPE_TIMING , ///?????? FLAG_TYPE_MANUAL , ///?????? FLAG_TYPE_MARKED , ///?????? FLAG_TYPE_EVENT , ///?????? FLAG_TYPE_MOSAIC , ///????? FLAG_TYPE_CUTOUT , ///????? FLAG_TYPE_LEAVE_WORD , ///??????? FLAG_TYPE_TALKBACK_LOCAL_SIDE , ///??????????? FLAG_TYPE_TALKBACK_REMOTE_SIDE , ///?????????? FLAG_TYPE_SYNOPSIS_VIDEO , ///?????? FLAG_TYPE_ORIGINAL_VIDEO , ///????? FLAG_TYPE_PRE_ORIGINAL_VIDEO , ///??????????????? FLAG_TYPE_BLACK_PLATE , ///????????? FLAG_TYPE_ORIGINAL_PIC , ///???? FLAG_TYPE_CARD, ///??????? FLAG_TYPE_VECHILE_RIGGER_MODE, ///??????? FLAG_TYPE_MAX = 128, }EM_RECORD_SNAP_FLAG_TYPE; ///@brief ?????????(???) typedef struct tagNET_RECORDFILE_INFOEX { NET_RECORDFILE_INFO stuRecordFileInfo; /// ????????? BYTE bReserved1[4]; /// ?????? int nEventLists[256]; /// ?????????????,???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFlagsList[128]; /// ?????? int nFlagCount; /// ????????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuRecordFileInfo????starttime??endtime????(?????stuRecordFileInfo????starttime??endtime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? BYTE bReserved[452]; /// ?????? } NET_RECORDFILE_INFOEX, *LPNET_RECORDFILE_INFOEX; ///@brief ???????????? typedef struct tagNET_SynopsisFileInfo { DWORD dwSize; /// ???????? char szFileName[MAX_PATH]; /// ?????,????C:\a.dav NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? unsigned int nTaskID; /// ????????????,???????2?1??? BYTE bFileType; /// 1-????????????,2-?????????? BYTE byMode; /// ??????: 0-?????????, 1-?????????, 2-???????????? BYTE bReserved[2]; unsigned int nFileLength; /// ???????,????:KB unsigned int nStartFileOffset; /// ?????????, ????: KB unsigned int nEndFileOffset; /// ??????????, ????: KB int nChannel; /// ?????, NVR??????(???TaskID), ??????????????? int nCluster; /// ???, NVR??????(???TaskID), ??????????????? }NET_SYNOPSISFILE_INFO, *LPNET_SYNOPSISFILE_INFO; ///@brief ???????????????? /// pBuffer: ????????????????SDK?????????? /// ?????????????????????????,dwDataType:0-??????????????????? /// ???????????????????????,dwDataType: 0-?????????????(??????,2-??????????? typedef int (CALLBACK *fDataCallBack)(LLONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief ??????????????????? /// pBuffer: ????????????????SDK?????????? /// ???????????????????????????????????? typedef int (CALLBACK *fOriDataCallBack)(LLONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief ??????????????? /// dwDownLoadSize == -1 ?????????????????????? /// dwDownLoadSize ==- 2 ????????????????????????? typedef void (CALLBACK *fDownLoadPosCallBack)(LLONG lPlayHandle, DWORD dwTotalSize, DWORD dwDownLoadSize, LDWORD dwUser); ///@brief ??????????????? typedef struct __NET_MULTI_PLAYBACK_PARAM { DWORD dwSize; int nChannels[DH_MAX_MULTIPLAYBACK_CHANNEL_NUM]; /// ???????? int nChannelNum; /// ???????? int nType; /// ??????????,0????????1?????????2????????3?????????4???? NET_TIME stStartTime; /// ???????? NET_TIME stEndTime; /// ????????? int nFPS; /// ???,1~25 int nBitRate; /// ?????,192~1024 char szResolution[DH_MAX_CAPTURE_SIZE_NUM]; /// ?????,"D1"??"HD1"??"2CIF"??"CIF"??"QCIF" int nWaitTime; /// ????????? HWND hWnd; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ????????? LDWORD dwDataUser; /// ?????????????? fDownLoadPosCallBack cbDownLoadPos; /// ???????? LDWORD dwPosUser; /// ????????????? }NET_MULTI_PLAYBACK_PARAM; ///@brief ?????????????????????? typedef struct { BYTE flag[32]; ///?????????????????????????,0??????,1??????? BYTE Reserved[64]; ///???? }NET_RECORD_STATUS, *LPNET_RECORD_STATUS; ///@brief ??????????????????, /// nError = 0 ?????????; /// nError = 1 ?????????????; /// nError = 2 ??????, ????????????????????????????, pFileinfos,nFileNum???????z?????????; /// nError = 3 ??????????????????????; /// nError = 4 ????????????? /// nError = 5 ???????? /// nError = 6 ???????? /// nError = 7 ????? typedef void (CALLBACK *fQueryRecordFileCallBack)(LLONG lQueryHandle, LPNET_RECORDFILE_INFO pFileinfos, int nFileNum, int nError, void *pReserved, LDWORD dwUser); ///@brief ??????????????????(???), nError?????????????fQueryRecordFileCallBack ?????????? typedef void (CALLBACK *fQueryRecordFileCallBackEx)(LLONG lQueryHandle, LPNET_RECORDFILE_INFOEX pFileinfos, int nFileNum, int nError, void *pReserved, LDWORD dwUser); ///@brief ???????? typedef enum tagNET_EM_COMBINATION_MODE { EM_COMBINATION_MODE_DEFAULT = 0, /// ??????? EM_COMBINATION_MODE_YES, /// ??? EM_COMBINATION_MODE_NO, /// ????? }NET_EM_COMBINATION_MODE; ///@brief CLIENT_StartQueryRecordFile?????????? typedef struct tagNET_IN_START_QUERY_RECORDFILE { DWORD dwSize; /// ???????, ?????????????????? int nChannelId; /// ??????????, ??0??? int nRecordFileType; /// ????????????, ??? EM_QUERY_RECORD_TYPE ???? int nStreamType; /// ???????????,0-????????,1-??????,2-?????? NET_TIME stStartTime; /// ????????? NET_TIME stEndTime; /// ?????????? char* pchCardid; /// ????????????????????????????????????????? /// ???nRecordFileType = 4??5??10,????????????256??? /// ???nRecordFileType = 8,????????????20??? int nWaitTime; /// ?????????,????ms fQueryRecordFileCallBack cbFunc; /// ????????????? LDWORD dwUser; /// ?????? BOOL bByTime; /// ??????????? NET_EM_COMBINATION_MODE emCombination; /// ????????????????? fQueryRecordFileCallBackEx cbFuncEx; /// ?????????????(???), ?????????cbFunc ????dwUser BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stEndTime), ?FALSE?????????stStartTime, stEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stStartTime, stEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stStartTime, stEndTime)???? }NET_IN_START_QUERY_RECORDFILE; ///@brief CLIENT_StartQueryRecordFile?????????? typedef struct tagNET_OUT_START_QUERY_RECORDFILE { DWORD dwSize; /// ??????? LLONG lQueryHandle; /// ?????? }NET_OUT_START_QUERY_RECORDFILE; ///@brief ??????????? typedef enum tagEM_OBJECT_TYPE { EM_OBJECT_TYPE_UNKNOWN = -1, /// ??? EM_OBJECT_TYPE_FACE, /// ??? EM_OBJECT_TYPE_HUMAN, /// ???? EM_OBJECT_TYPE_VECHILE, /// ?????? EM_OBJECT_TYPE_NOMOTOR, /// ??????? EM_OBJECT_TYPE_ALL, /// ???????? } EM_OBJECT_TYPE; ///@brief ?????? typedef struct tagEVENT_INFO { int nEvent; /// ???????,?????????????????? EVENT_IVS_ALL EM_OBJECT_TYPE arrayObejctType[16]; /// ??????????????????? EM_OBJECT_TYPE_HUMAN, EM_OBJECT_TYPE_VECHILE, EM_OBJECT_TYPE_NOMOTOR, EM_OBJECT_TYPE_ALL int nObjectCount; /// szObejctType ???? BYTE byReserved[512]; /// ?????? }EVENT_INFO; ///@brief ????????? typedef enum tagEM_SUBCLASSID_TYPE { EM_SUBCLASSID_UNKNOWN, /// ??? EM_SUBCLASSID_ASSISTDEVICE, /// ??????? (ITSE???) }EM_SUBCLASSID_TYPE; ///@brief ?????????? typedef enum tagEM_ALGORITHM_TYPE { EM_ALGORITHM_TYPE_UNKNOWN, /// ????????? EM_ALGORITHM_TYPE_AES256_OFB, /// AES256-OFB?????? EM_ALGORITHM_TYPE_SM4_OFB, /// SM4-OFB?????? EM_ALGORITHM_TYPE_SM1_OFB, /// SM1-OFB?????? EM_ALGORITHM_TYPE_SM4_CTR, /// SM4-CTR?????? }EM_ALGORITHM_TYPE; ///@brief ?????? typedef enum tagEM_IS_ENCRYPT { EM_IS_ENCRYPT_UNKNOWN, /// ??? EM_IS_ENCRYPT_YES, /// ????? EM_IS_ENCRYPT_NO, /// ?????? }EM_IS_ENCRYPT; ///@brief ????vk typedef enum tagEM_IS_CURRENT_VK { EM_IS_CURRENT_VK_UNKNOWN, /// ??? EM_IS_CURRENT_VK_CURRENT, /// ??? EM_IS_CURRENT_VK_PRE, /// ?? }EM_IS_CURRENT_VK; ///@brief VK???????? typedef struct tagNET_VKINFO { char szVKID[128]; /// VKID char szVK[128]; /// VK EM_ALGORITHM_TYPE emAlgorithmType; /// ?????????? int nRetVKIDLen; /// ?????VKID??????????? int nRetVKLen; /// ?????VK?????? EM_IS_ENCRYPT emIsEncrypt; /// ?????? EM_IS_CURRENT_VK emIsCurrent; /// ???????VK 0 ???????1??????? 2???? char szMACKey[48]; /// ??????????HMAC??? int nRetMACKeyLen; /// ?????MACKey?????? UINT nScheme; /// ???????, 0:??????????, 1:???????????????? BYTE byReserved[436]; /// ??????? }NET_VKINFO; ///@brief VK??????(pBuffer?????SDK??????????),dwError?????dhnetsdk.h?????????????,????NET_NOERROR,NET_ERROR_VK_INFO_DECRYPT_FAILED?? typedef void (CALLBACK *fVKInfoCallBack)(LLONG lRealHandle, NET_VKINFO* pBuffer, DWORD dwError, LDWORD dwUser, void* pReserved); ///@brief ??????????? typedef struct tagNET_IN_PLAY_BACK_BY_TIME_INFO { NET_TIME stStartTime; /// ?????? NET_TIME stStopTime; /// ??????? HWND hWnd; /// ???????, ???NULL fDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? LDWORD dwDataUser; /// ???????????? int nPlayDirection; /// ???????, 0:????; 1:????; int nWaittime; /// ????????, ????????? EVENT_INFO* pstuEventInfo; /// ????????????????????????????NULL UINT nEventInfoCount; /// pstuEventInfo ?????????? 16 EM_SUBCLASSID_TYPE emSubClass; /// ????????? fVKInfoCallBack pVKInfoCallBack; /// VK?????? LDWORD dwVKInfoUser; /// VK???????????? fOriDataCallBack pOriDataCallBack; ///???????? LDWORD dwOriDataUser; ///?????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stStopTime), ?FALSE?????????stStartTime, stStopTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// ???????UTC???(???UTC???) NET_TIME stuEndTimeRealUTC; /// ???????UTC???(???UTC???) BOOL bWait; /// ??????????????? BYTE bReserved[936-2*POINTERSIZE]; /// ?????? }NET_IN_PLAY_BACK_BY_TIME_INFO; ///@brief ??????????? typedef struct tagNET_OUT_PLAY_BACK_BY_TIME_INFO { BYTE bReserved[1024]; /// ?????? }NET_OUT_PLAY_BACK_BY_TIME_INFO; ///@brief ???????? typedef enum tagEM_PLAY_BACK_SPEED { EM_PLAY_BACK_SPEED_SLOW_32 = -5, /// 1/32?????? EM_PLAY_BACK_SPEED_SLOW_16 = -4, /// 1/16?????? EM_PLAY_BACK_SPEED_SLOW_8, /// 1/8?????? EM_PLAY_BACK_SPEED_SLOW_4, /// 1/4?????? EM_PLAY_BACK_SPEED_SLOW_2, /// 1/2?????? EM_PLAY_BACK_SPEED_NORMAL = 0, /// ??????? EM_PLAY_BACK_SPEED_FAST_2, /// 2????? EM_PLAY_BACK_SPEED_FAST_4, /// 4????? EM_PLAY_BACK_SPEED_FAST_8, /// 8????? EM_PLAY_BACK_SPEED_FAST_16, /// 16????? EM_PLAY_BACK_SPEED_FAST_32, /// 32????? }EM_PLAY_BACK_SPEED; ///@brief ????????????? typedef struct { unsigned short left; /// 0~8191 unsigned short right; /// 0~8191 unsigned short top; /// 0~8191 unsigned short bottom; /// 0~8191 } MotionDetectRect; ///@brief ????????? typedef struct { MotionDetectRect motion_rect; /// ????????????? NET_TIME stime; /// ????????? NET_TIME etime; /// ?????????? BYTE bStart; /// ?????????: 1,???,2:?? BYTE reserved[116]; } IntelligentSearchPlay, *LPIntelligentSearchPlay; ///@brief ?????????? typedef struct { int nChnCount; /// ?????? NET_TIME stuFurthestTime[16]; /// ??????????,?????????0 ?? (nChnCount-1)??.???????????????,????????????0 DWORD dwFurthestTimeAllSize; /// ?????????????16?,????????????pStuFurthestTimeAll??????????? NET_TIME* pStuFurthestTimeAll; /// ?????????????16?,???????????????????????,????????(???????*sizeof(NET_TIME))?? BYTE bReserved[376]; /// ??????? } NET_FURTHEST_RECORD_TIME; ///@brief CLIENT_FindFrameInfo ?????????? typedef struct __NET_IN_FIND_FRAMEINFO_PRAM { DWORD dwSize; /// ??????? BOOL abFileName; /// ???????????????????????,???????????,???????????????stRecordInfo?? char szFileName[MAX_PATH]; /// ????? NET_RECORDFILE_INFO stuRecordInfo; /// ?????? DWORD dwFramTypeMask; /// ?????????,FRAME_TYPE_MOTION ?????; FRAME_TYPE_HUMAN?????(??); FRAME_TYPE_VEHICLE?????(??) BOOL bSendByUTCTime; /// ??????UTC??? NET_TIME stuStartTimeRealUTC; /// UTC?????? NET_TIME stuEndTimeRealUTC; /// UTC??????? }NET_IN_FIND_FRAMEINFO_PRAM; ///@brief CLIENT_FindFrameInfo ?????????? typedef struct __NET_OUT_FIND_FRAMEINFO_PRAM { DWORD dwSize; /// ??????? LLONG lFindHandle; /// ????????? }NET_OUT_FIND_FRAMEINFO_PRAM; ///@brief ???????? typedef struct __NET_MOTION_FRAME_INFO { DWORD dwSize; /// ??????? NET_TIME stuTime; /// ????,???? int nMotionRow; /// ??????????????? int nMotionCol; /// ??????????????? BYTE byRegion[DH_MOTION_ROW][DH_MOTION_COL];/// ???????,???32*32?????? int nHumanMotionRow; /// ???????????????? int nHumanMotionCol; /// ???????????????? BYTE byHumanRegion[DH_MOTION_ROW][DH_MOTION_COL]; /// ????????, ???32*32?????? int nVehicleMotionRow; /// ????????????????? int nVehicleMotionCol; /// ????????????????? BYTE byVehicleRegion[DH_MOTION_ROW][DH_MOTION_COL]; /// ?????????, ???32*32?????? NET_TIME stuPtsRealUTC; /// utc???? }NET_MOTION_FRAME_INFO; ///@brief ??????? typedef struct __NET_FILE_FRAME_INFO { DWORD dwSize; /// ??????? int nChannelId; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? WORD wRecType; /// 0-????????? 1-????1????? 2-??????2 3-??????3??? WORD wFameType; /// ?????,???EM_FRAME_TYPE void* pFramInfo; /// ???????????,????????????,???????????????sizeof(NET_MOTION_FRAME_INFO) NET_TIME stuStartTimeRealUTC; /// UTC?????? NET_TIME stuEndTimeRealUTC; /// UTC??????? }NET_FILE_FRAME_INFO; ///@brief CLIENT_FindNextFrameInfo ?????????? typedef struct __NET_IN_FINDNEXT_FRAMEINFO_PRAM { DWORD dwSize; /// ??????? int nFramCount; /// ??????????,0,?????????????????????????? }NET_IN_FINDNEXT_FRAMEINFO_PRAM; ///@brief CLIENT_FindNextFrameInfo ?????????? typedef struct __NET_OUT_FINDNEXT_FRAMEINFO_PRAM { DWORD dwSize; /// ??????? NET_FILE_FRAME_INFO* pFramInfos; /// ????,???????????,??????? sizeof(NET_FILE_FRAME_INFO) * nMaxFramCount int nMaxFramCount; /// ???????????????? int nRetFramCount; /// ??????????????? }NET_OUT_FINDNEXT_FRAMEINFO_PRAM; #define MAX_LABEL_ARRAY 1024 ///@brief ??????? typedef struct tagNET_FILE_STREAM_TAG_INFO { DWORD dwSize; /// ??????? NET_TIME stuTime; /// ?????? char szContext[DH_COMMON_STRING_64]; /// ??????????????????utf8???? char szUserName[DH_COMMON_STRING_32]; /// ?????????????????utf8????EVS???? char szChannelName[DH_COMMON_STRING_64]; /// ??????????????????utf8????EVS???? int nDuration; /// ??????????????????? } NET_FILE_STREAM_TAG_INFO; ///@brief ??????? typedef enum tagNET_FILE_STREAM_TYPE { NET_FILE_STREAM_TYPE_UNKNOWN = 0, /// ??? NET_FILE_STREAM_TYPE_NORMAL, /// ??? NET_FILE_STREAM_TYPE_ALARM, /// ???? NET_FILE_STREAM_TYPE_DETECTION, /// ???? } NET_FILE_STREAM_TYPE; ///@brief ???????????? typedef struct tagNET_FILE_STREAM_TAG_INFO_EX { DWORD dwSize; NET_TIME stuTime; /// ???????????????????????? int nMillisecond; /// ???? int nSequence; /// ????????? char szContext[DH_COMMON_STRING_64]; /// ??????????????????utf8???? NET_TIME stuStartTime; /// ???????????? NET_TIME stuEndTime; /// ????????????? NET_FILE_STREAM_TYPE emType; /// ??????? char szUserName[DH_COMMON_STRING_32]; /// ?????????????????utf8????EVS???? char szChannelName[DH_COMMON_STRING_64]; /// ??????????????????utf8????EVS???? int nDuration; /// ??????????????????? } NET_FILE_STREAM_TAG_INFO_EX; ///@brief CLIENT_FileStreamClearTags / CLIENT_FileStreamSetTags ?????????? typedef struct tagNET_IN_FILE_STREAM_TAGS_INFO { DWORD dwSize; /// ??????? int nArrayCount; /// ?????????? NET_FILE_STREAM_TAG_INFO* pstuTagInfo; /// ??????????????????"??", ??????????,?????sizeof(NET_FILE_STREAM_TAG_INFO)*nArrayCount } NET_IN_FILE_STREAM_TAGS_INFO; ///@brief CLIENT_FileStreamClearTags / CLIENT_FileStreamSetTags ?????????? typedef struct tagNET_OUT_FILE_STREAM_TAGS_INFO { DWORD dwSize; /// ??????? } NET_OUT_FILE_STREAM_TAGS_INFO; ///@brief CLIENT_FileStreamGetTags ?????????? typedef struct tagNET_IN_FILE_STREAM_GET_TAGS_INFO { DWORD dwSize; /// ??????? } NET_IN_FILE_STREAM_GET_TAGS_INFO; ///@brief CLIENT_FileStreamGetTags / CLIENT_FileStreamfilterTags ?????????? typedef struct tagNET_OUT_FILE_STREAM_GET_TAGS_INFO { DWORD dwSize; /// ??????? int nMaxNumber; /// ????????????? int nRetTagsNumber; /// ????????????????? NET_FILE_STREAM_TAG_INFO_EX* pstuTagInfo; /// ??????? } NET_OUT_FILE_STREAM_GET_TAGS_INFO; ///@brief CLIENT_FileStreamFilterTags ?????????? typedef struct tagNET_IN_FILE_STREAM_FILTER_TAGS_INFO { DWORD dwSize; /// ??????? char szContext[DH_COMMON_STRING_64]; /// ??????????????????utf8???? char szUserName[DH_COMMON_STRING_32]; /// ?????????????????utf8????EVS???? char szChannelName[DH_COMMON_STRING_64]; /// ??????????????????utf8????EVS???? } NET_IN_FILE_STREAM_FILTER_TAGS_INFO; ///@brief ??????? typedef struct tagNET_TAGMANAGER_SUB_TAG_INFO { NET_TIME stuTime; /// ??????? char szSubTagName[DH_COMMON_STRING_64]; /// ???????? BYTE byReserved[512]; /// ??????? }NET_TAGMANAGER_SUB_TAG_INFO; ///@brief ??????????????????????????? NET_FILE_STREAM_TAG_INFO_EX ??? typedef struct tagNET_TAGMANAGER_TAG_INFO { char szContext[DH_COMMON_STRING_64]; /// ??????? NET_TIME stuStartTime; /// ??????????? NET_TIME stuEndTime; /// ???????????? int nSubTagVaildNum; /// ???????????? NET_TAGMANAGER_SUB_TAG_INFO stuSubTag[MAX_SUB_TAG_NUM]; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_TAGMANAGER_TAG_INFO; ///@brief ??????????????? typedef struct tagNET_FINDTAGS_CONDITION_INFO { char szContext[DH_COMMON_STRING_64]; /// ??????? BYTE byReserved[1024]; /// ??????? }NET_FINDTAGS_CONDITION_INFO; ///@brief ?????????, CLIENT_FileStreamFindTags ??????? typedef struct tagNET_IN_FINDTAGS_INFO { DWORD dwSize; BOOL bConditionEnable; /// ?True?, stuCondition????, lToken????; ?False?, stuCondition????, lToken???? NET_FINDTAGS_CONDITION_INFO stuCondition; /// ????????????????????? UINT lToken; /// ???????????????????????????????? NET_OUT_FINDTAGS_INFO ??? int nOffset; /// ???????? int nCount; /// ???????????????????60 }NET_IN_FINDTAGS_INFO; ///@brief /// ?????????, CLIENT_FileStreamFindTags ??????? typedef struct tagNET_OUT_FINDTAGS_INFO { DWORD dwSize; UINT lToken; /// ???????????????????? int nTotal; /// ?????????????? int nMaxTagsNumber; /// ???????(pstuTagInfo)??????, ?????? NET_IN_FINDTAGS_INFO ??nCount??? int nRetTagsNumber; /// ???????(pstuTagInfo)?????????? NET_TAGMANAGER_TAG_INFO* pstuTagInfo; /// ??????????, ??????????, ?????sizeof(NET_TAGMANAGER_TAG_INFO)*nMaxTagsNumber }NET_OUT_FINDTAGS_INFO; ///@brief ????? typedef struct tagNET_TAGMANAGER_TAGSTATE_INFO { int nChannel; /// ????? char szContext[DH_COMMON_STRING_64]; /// ???????,????,?????szContextEx NET_TIME stuStartTime; /// ????????? int nSubTagVaildNum; /// ????(stuSubTag)???????? NET_TAGMANAGER_SUB_TAG_INFO stuSubTag[MAX_SUB_TAG_NUM]; /// ???????? char szContextEx[DH_COMMON_STRING_256]; /// ?????????? BYTE byReserved[768]; /// ??????? }NET_TAGMANAGER_TAGSTATE_INFO; ///@brief ????????????, CLIENT_TagManagerGetTagState ??????? typedef struct tagNET_IN_TAGMANAGER_GETTAGSTATE_INFO { DWORD dwSize; }NET_IN_TAGMANAGER_GETTAGSTATE_INFO; ///@brief ????????????, CLIENT_TagManagerGetTagState ??????? typedef struct tagNET_OUT_TAGMANAGER_GETTAGSTATE_INFO { DWORD dwSize; /// ??????? int nState; /// ??????, 0??????, 1??????? int nMaxTagStaeNumber; /// ???????(pstuTagStateInfo)???????? int nRetTagStaeNumber; /// ???????(pstuTagStateInfo)???????????? NET_TAGMANAGER_TAGSTATE_INFO* pstuTagStateInfo; /// ???????????, ??????????, ?????sizeof(NET_TAGMANAGER_TAGSTATE_INFO)*nMaxTagStaeNumber }NET_OUT_TAGMANAGER_GETTAGSTATE_INFO; ///@brief ???????, CLIENT_TagManagerStartTag ??????? typedef struct tagNET_IN_TAGMANAGER_STARTTAG_INFO { DWORD dwSize; /// ??????? int nChannel; /// ????? char szContext[DH_COMMON_STRING_64]; /// ??????? char szContextEx[DH_COMMON_STRING_256]; /// ?????????? bool bIsUsingContextEx; /// ????????????? }NET_IN_TAGMANAGER_STARTTAG_INFO; ///@brief ???????, CLIENT_TagManagerStartTag ??????? typedef struct tagNET_OUT_TAGMANAGER_STARTTAG_INFO { DWORD dwSize; }NET_OUT_TAGMANAGER_STARTTAG_INFO; ///@brief ??????, CLIENT_TagManagerSetSubTag ??????? typedef struct tagNET_IN_TAGMANAGER_SETSUBTAG_INFO { DWORD dwSize; int nChannel; /// ????? char szSubTagName[DH_COMMON_STRING_64]; /// ???????? }NET_IN_TAGMANAGER_SETSUBTAG_INFO; ///@brief ??????, CLIENT_TagManagerSetSubTag ??????? typedef struct tagNET_OUT_TAGMANAGER_SETSUBTAG_INFO { DWORD dwSize; }NET_OUT_TAGMANAGER_SETSUBTAG_INFO; ///@brief ??????, CLIENT_TagManagerStopTag ??????? typedef struct tagNET_IN_TAGMANAGER_STOPTAG_INFO { DWORD dwSize; int nChannel; /// ????? }NET_IN_TAGMANAGER_STOPTAG_INFO; ///@brief ??????, CLIENT_TagManagerStopTag ??????? typedef struct tagNET_OUT_TAGMANAGER_STOPTAG_INFO { DWORD dwSize; }NET_OUT_TAGMANAGER_STOPTAG_INFO; ///@brief ?????????????, CLIENT_TagManagerGetCaps ??????? typedef struct tagNET_IN_TAGMANAGER_GETCAPS_INFO { DWORD dwSize; /// ??????? }NET_IN_TAGMANAGER_GETCAPS_INFO; ///@brief ?????????????, CLIENT_TagManagerGetCaps ??????? typedef struct tagNET_OUT_TAGMANAGER_GETCAPS_INFO { DWORD dwSize; /// ??????? UINT nMaxCount; /// ???????????? }NET_OUT_TAGMANAGER_GETCAPS_INFO; ///@brief ????????????, CLIENT_TagManagerStartFind ??????? typedef struct tagNET_IN_TAGMANAGER_STARTFIND_INFO { DWORD dwSize; /// ??????? int nChannel; /// ??? char szContext[DH_COMMON_STRING_256]; /// ??????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? }NET_IN_TAGMANAGER_STARTFIND_INFO; ///@brief ????????????, CLIENT_TagManagerStartFind ??????? typedef struct tagNET_OUT_TAGMANAGER_STARTFIND_INFO { DWORD dwSize; /// ??????? int nTotalCount; /// ???????????? }NET_OUT_TAGMANAGER_STARTFIND_INFO; ///@brief ???????????????, CLIENT_TagManagerDoFind ??????? typedef struct tagNET_IN_TAGMANAGER_DOFIND_INFO { DWORD dwSize; /// ??????? int nBeginNumber; /// ????????? int nCount; /// ???????, ????????CLIENT_TagManagerGetCaps??????????????? }NET_IN_TAGMANAGER_DOFIND_INFO; ///@brief ??????? typedef struct tagNET_FINDSUBTAG_INFO { NET_TIME stuStartTime; /// ?????????? char szSubTagName[DH_COMMON_STRING_64]; /// ???????? BYTE byReserved[128]; /// ??????? }NET_FINDSUBTAG_INFO; ///@brief ???????? typedef struct tagNET_FINDTAG_INFO { char szContext[DH_COMMON_STRING_256]; /// ??????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nSubtagInfoCount; /// ??????????? NET_FINDSUBTAG_INFO stuSubTagInfo[20]; /// ??????? BYTE byReserved[1020]; /// ??????? }NET_FINDTAG_INFO; ///@brief ???????????????, CLIENT_TagManagerDoFind ??????? typedef struct tagNET_OUT_TAGMANAGER_DOFIND_INFO { DWORD dwSize; /// ??????? UINT nMaxTagInfoCount; /// ?????????????????????????????????????pstuTagInfo?????? UINT nRetTagInfoCount; /// ???????????????????????0????????CLIENT_TagManagerDoFind?????Count????????????? NET_FINDTAG_INFO* pstuTagInfo; /// ???????????????????????????? }NET_OUT_TAGMANAGER_DOFIND_INFO; ///////////////////////////??????????/////////////////////////////// ///@brief ?????????? typedef struct { int channelcount; int alarminputcount; unsigned char alarm[16]; /// ?????? unsigned char motiondection[16]; /// ?????? unsigned char videolost[16]; /// ?????? } NET_CLIENT_STATE; ///@brief ?????????? typedef struct { int channelcount; int alarminputcount; unsigned char alarm[32]; /// ?????? unsigned char motiondection[32]; /// ?????? unsigned char videolost[32]; /// ?????? BYTE bReserved[32]; } NET_CLIENT_STATE_EX; ///@brief ?????????????????? typedef struct { DWORD dwSize; int alarminputcount; DWORD dwAlarmState[DH_MAX_CHANMASK]; ///????DWORD???????32??????????, 0-????????, 1-????????? }NET_CLIENT_ALARM_STATE; ///@brief ?????????????????????? typedef struct { DWORD dwSize; int channelcount; DWORD dwAlarmState[DH_MAX_CHANMASK]; ///????DWORD???????32??????????, 0-????????, 1-????????? }NET_CLIENT_VIDEOLOST_STATE; ///@brief ???????????????????? typedef struct { DWORD dwSize; int channelcount; DWORD dwAlarmState[DH_MAX_CHANMASK]; ///????DWORD???????32??????????, 0-????????, 1-????????? }NET_CLIENT_MOTIONDETECT_STATE; ///@brief ?????????????????????? typedef struct { DWORD dwSize; int channelcount; DWORD dwAlarmState[DH_MAX_CHANMASK]; ///????DWORD???????32??????????, 0-????????, 1-????????? }NET_CLIENT_VIDEOBLIND_STATE; ///@brief ??? ??????????????????????? typedef struct { DWORD dwSize; int nChannelID; /// ????? BOOL bAlarm; /// ???? TRUE/FALSE int nLevel; /// ????????,????????,????????????????????????????? }NET_CLIENT_DETAILEDMOTION_STATE; ///@brief ????IO???? typedef struct { unsigned short index; /// ?????? unsigned short state; /// ???????0 - ????1 - ?? } ALARM_CONTROL; ///@brief ??????? typedef struct { unsigned short index; /// ?????? unsigned short mode; /// ???????(0???1???2???);??????????,sdk??????????????????? BYTE bReserved[28]; } TRIGGER_MODE_CONTROL; ///@brief ?????????????? typedef struct { int decoderNo; /// ????????????,??0??? unsigned short alarmChn; /// ?????????,??0??? unsigned short alarmState; /// ???????????1????,0????? } DECODER_ALARM_CONTROL; ///@brief ????????????? typedef struct __ALARM_NO_RESPONSE_INFO { DWORD dwSize; char szCallID[DH_MAX_CALLID]; ///Call ID }ALARM_NO_RESPONSE_INFO; ///@brief ?????????????????? typedef struct { DWORD dwAlarmType; /// ????????,dwAlarmType = DH_UPLOAD_EVENT???dwAlarmMask??bAlarmDecoderIndex???????? DWORD dwAlarmMask; /// ????????????????????????????? char szGlobalIP[DH_MAX_IPADDR_LEN]; /// ?????IP???,???????szGlobalIPEx char szDomainName[DH_MAX_DOMAIN_NAME_LEN]; /// ????????? int nPort; /// ???????????????????? char szAlarmOccurTime[DH_ALARM_OCCUR_TIME_LEN]; /// ????????????? BYTE bAlarmDecoderIndex; /// ????????????????????dwAlarmType = DH_UPLOAD_DECODER_ALARM ??????. BYTE bChannelIndex; /// ???????????(0,1,2...)????0????,?? dwHighAlarmMask ??????????32?????????? /// ?? bChannelIndex=1,???dwHighAlarmMask????33-64??????? BYTE bReserved[2]; DWORD dwHighAlarmMask; /// ????32???????????????,?????????????????? BYTE bReservedSpace[8]; char szGlobalIPEx[MAX_LOCAL_IP_LEN]; /// ?????IP???,???IPv6 } NEW_ALARM_UPLOAD; ///@brief ????????: pir ??????l?? typedef struct tagALARM_UPLOAD_PIRDETECTION_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRDETECTION_INFO; ///@brief ????????: pir ???????? typedef struct tagALARM_UPLOAD_PIRTAMPER_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRTAMPER_INFO; ///@brief ????????: pir ?????????????? typedef struct tagALARM_UPLOAD_PIRCLOAK_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRCLOAK_INFO; ///@brief ????????: pir ???????? typedef struct tagALARM_UPLOAD_PIRSHOCK_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRSHOCK_INFO; ///@brief ????????: pir ???????????????? typedef struct tagALARM_UPLOAD_PIRFAILURE_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRFAILURE_INFO; ///@brief ????????: pir ?????????????? typedef struct tagALARM_UPLOAD_PIRBATTERYLOW_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRBATTERYLOW_INFO; ///@brief ????????: pir ???????????? typedef struct tagALARM_UPLOAD_PIRMISSINGCALL_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_PIRMISSINGCALL_INFO; ///@brief ????????: ????????? typedef struct tagALARM_UPLOAD_VIDEO_UNFOCUS_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_VIDEO_UNFOCUS_INFO; ///@brief ????????: PIR??????? typedef struct tagALARM_UPLOAD_ALARMPIR_INFO { int nIndex; /// ?????? NET_TIME_EX UTC; /// ???????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????, 0??????????,1?????????,2??????????; BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? BYTE byReserved[984]; /// ???? } ALARM_UPLOAD_ALARMPIR_INFO; ///@brief ??????????????? typedef struct tagALARM_UPLOAD_HEARTBEAT_INFO { char szGlobalIP[DH_MAX_IPADDR_LEN]; /// ?????IP???,???????szGlobalIPEx char szMAC[DH_MACADDR_LEN]; /// MAC??? int nKeepAlive; /// ??????????????????????????????????? NET_TIME_EX stuTime; /// ?????????? char szGlobalIPEx[MAX_LOCAL_IP_LEN]; /// ?????IP???,???IPv6 BYTE byReserved[960]; /// ??????? }ALARM_UPLOAD_HEARTBEAT_INFO; ///@brief ????????????/??????? typedef struct tagALARM_UPLOAD_ONLINE_INFO { char szGlobalIP[DH_MAX_IPADDR_LEN]; /// ?????IP???,???????szGlobalIPEx int nPort; /// ??????? NET_TIME_EX stuTime; /// ?????????? BOOL bOnLine; /// ????:TRUE(????) FALSE(????) char szGlobalIPEx[MAX_LOCAL_IP_LEN]; /// ?????IP???,???IPv6 BYTE byReserved[956]; /// ??????? }ALARM_UPLOAD_ONLINE_INFO; ///@brief ?????????????????? typedef struct __ALARM_UPLOAD_SMOKESENSOR_INFO { DWORD dwSize; char szGlobalIP[DH_MAX_IPADDR_LEN]; /// ?????IP???,???????szGlobalIPEx char szDomainName[DH_MAX_DOMAIN_NAME_LEN]; /// ????????? int nPort; /// ???????????????????? char szAlarmOccurTime[DH_ALARM_OCCUR_TIME_LEN]; /// ????????????? int nChannel; /// ??????? ??0??? BYTE byHighTemperature; /// 1:????????????,0??????????????? BYTE bySmoke; /// 1:??????????,0????????????? char szGlobalIPEx[MAX_LOCAL_IP_LEN]; /// ?????IP???,???IPv6 BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? }ALARM_UPLOAD_SMOKESENSOR_INFO; ///@brief ????????????? typedef enum tagNET_CROSSREGION_DIRECTION_INFO { EM_CROSSREGION_DIRECTION_UNKNOW = 0 , EM_CROSSREGION_DIRECTION_ENTER , ///???? EM_CROSSREGION_DIRECTION_LEAVE , ///?? EM_CROSSREGION_DIRECTION_APPEAR , ///???? EM_CROSSREGION_DIRECTION_DISAPPEAR , ///??? }NET_CROSSREGION_DIRECTION_INFO; ///@brief ?????????????????? typedef struct __ALARM_UPLOAD_IVS_INFO { DWORD dwSize; NET_TIME stuTime; /// ?????????? char szDomainName[DH_MAX_DOMAIN_NAME_LEN]; /// ????????? int nChannelID; /// ?????,??0??? char szType[MAX_PATH]; /// ????????, ?????? /// "CrossLineDetection" ???????? /// "CrossFenceDetection" ??????? /// "CrossRegionDetection" ???????? /// "PasteDetection" ATM???? /// "LeftDetection" ??????? /// "Preservation" ?????? /// "TakenAwayDetection" ??????? /// "StayDetection" ???/???? /// "ParkingDetection" ?????? /// "WanderDetection" ??? /// "MoveDetection" ??? /// "TailDetection" ???? /// "RioterDetection" ??? /// "FightDetection" ??? /// "RetrogradeDetection" ???? /// "FireDetection" ???? /// "SmokeDetection" ???? /// "NumberStat" ??????? /// "VideoAbnormalDetection" ????? /// "FaceDetection" ????? /// "TargetRecognition" ?????? /// "DensityDetection" ??????? /// "QueueDetection" ????? int nState; /// ??????,0-????????,1-????????, 2-????????? char szRuleName[DH_COMMON_STRING_128]; /// ???????? char szIPAddress[DH_MAX_IPADDR_LEN_EX]; /// ???IP??? int nPort; /// ??????? char szMacAddress[DH_MACADDR_LEN]; /// ?????mac??? char szPicFilePath[MAX_PATH]; /// ?????????????? int nPicFileNum; /// ????????????????????? int nUploadPicFileNum; /// ?????FTP??????????? DWORD dwChannelMask; /// ??????????????,15????????????????1,2,3,4??? NET_CROSSREGION_DIRECTION_INFO emDirection; /// ?????????????, ????szType ?CrossRegionDetection ????? BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? } ALARM_UPLOAD_IVS_INFO; ///@brief ???????????????????? typedef struct _ALARM_UPLOAD_ALARMEX_INFO { DWORD dwSize; NET_TIME stuTime; /// ?????????? char szDomainName[DH_MAX_DOMAIN_NAME_LEN]; /// ????????? DWORD dwAlarmMask; /// ???????????,??????????????????, 7???1,2,3??????????? char szDevMac[DH_MACADDR_LEN]; /// ?????mac??? char szPicFilePath[MAX_PATH]; /// ?????????????? int nPicFileNum; /// ????????????????????? int nUploadPicFileNum; /// ?????FTP??????????? char szAreaName[DH_COMMON_STRING_128]; /// ???????? DWORD dwChannelMask; /// ??????????????,15????????????????1,2,3,4??? BOOL bTimeRealUTC; /// TimeRealUTC??????? NET_TIME_EX stuTimeRealUTC; /// ???????UTC??? }ALARM_UPLOAD_ALARMEX_INFO; ///@brief ?????????? typedef enum _EM_LOGIN_FAILED_TYPE { LOGIN_FAILED_UNKNOW = 0 , LOGIN_FAILED_PASSWORD , ///??????? LOGIN_FAILED_USER , ///???????? LOGIN_FAILED_TIMEOUT , ///???????????? LOGIN_FAILED_RELOGGIN , ///????????? LOGIN_FAILED_LOCKED , ///?????????? LOGIN_FAILED_BLACKLIST , ///?????????????? LOGIN_FAILED_ERROR_BUSY , ///???????,??? LOGIN_FAILED_VERSION , ///???????,?????? }EM_LOGIN_FAILED_TYPE; ///@brief ?????????????? typedef struct __ALARM_UPLOAD_LOGIN_FAILED_INFO { DWORD dwSize; EM_LOGIN_FAILED_TYPE emFailedType; ///?????????? char szDeviceIP[DH_COMMON_STRING_64]; ///???????IP DWORD nDevicePort; ///?????????? }ALARM_UPLOAD_LOGIN_FAILED_INFO; ///@brief ??????????????? typedef struct { int nChannel; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[12]; } ALARM_RECORDING_CHANGED; ///@brief ??????????? typedef enum tagNET_STREAM_TYPE { NET_EM_STREAM_ERR, /// ???? NET_EM_STREAM_MAIN, /// "Main"-?????? NET_EM_STREAM_EXTRA_1, /// "Extra1"-??????1 NET_EM_STREAM_EXTRA_2, /// "Extra2"-??????2 NET_EM_STREAM_EXTRA_3, /// "Extra3"-??????3 NET_EM_STREAM_SNAPSHOT, /// "Snapshot"-?????? NET_EM_STREAM_OBJECT, /// "Object"-?????? NET_EM_STREAM_AUTO, /// "Auto"-????????????? NET_EM_STREAM_PREVIEW, /// "Preview"-????????????? NET_EM_STREAM_NONE, /// ?????????(?????) }NET_STREAM_TYPE; ///@brief ????????????(DH_ALARM_RECORD_CHANGED_EX) typedef struct __ALARM_RECORD_CHANGED_INFO_EX { int nAction; /// 0:??? 1:?? int nChannel; /// ??? char szStoragePoint[DH_COMMON_STRING_64]; /// ??????? NET_STREAM_TYPE emStreamType; /// ??????? char szUser[DH_COMMON_STRING_128]; /// ??????? BYTE byReserved[828]; /// ???? } ALARM_RECORD_CHANGED_INFO_EX; ///@brief MPT?????NVR????????(DH_ALARM_POLICE_RECORD_PROGRESS) typedef struct tagALARM_POLICE_RECORD_PROGRESS_INFO { int nAction; /// 0:pulse,-1??? int nUsbSlot; /// MPT????USB?????? UINT nTotalSize; /// ??????????????KB UINT nTransferSize; /// ???????NVR???????????????KB BYTE byReserved[1024]; /// ???? }ALARM_POLICE_RECORD_PROGRESS_INFO; ///@brief MPT????? typedef enum tagEM_MPT_STATE { EM_MPT_STATE_UNKNOWN, /// ??? EM_MPT_STATE_PLUGIN_OUT, /// ??????? EM_MPT_STATE_PLUGIN_IN_WORKING_PROPERLY, /// ???????????????? EM_MPT_STATE_PLUGIN_IN_STORAGE_ERROR, /// ???????????????? }EM_MPT_STATE; ///@brief MPT?????????????(DH_ALARM_POLICE_PLUGIN) typedef struct tagALARM_POLICE_PLUGIN_INFO { int nAction; /// 0:pulse,-1??? int nUsbSlot; /// MPT????USB?????? EM_MPT_STATE eState; /// MPT?? char szSerialNumber[DH_COMMON_STRING_32]; /// MPT????????? BYTE byReserved[1024]; /// ???? }ALARM_POLICE_PLUGIN_INFO; ///@brief GPS??????????(DH_ALARM_GPS_NOT_ALIGNED) typedef struct tagALARM_GPS_NOT_ALIGNED_INFO { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? NET_TIME_EX stuStartTime; /// ??????,nAction?2????????? BYTE byReserved[988]; /// ??????? }ALARM_GPS_NOT_ALIGNED_INFO; ///@brief ?????????????(????wifi??3G/4G)(DH_ALARM_WIRELESS_NOT_CONNECTED) typedef struct tagALARM_WIRELESS_NOT_CONNECTED_INFO { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_WIRELESS_NOT_CONNECTED_INFO; ///@brief ???????????? typedef enum tagEM_OFFLINE_LOGSYNC_STATE { EM_OFFLINE_LOGSYNC_STATE_UNKNOWN, /// ??? EM_OFFLINE_LOGSYNC_STATE_SUCCEEDED, /// ??? EM_OFFLINE_LOGSYNC_STATE_FAILED, /// ??? }EM_OFFLINE_LOGSYNC_STATE; ///@brief ????????????? typedef struct tagALARM_OFFLINE_LOGSYNC_INFO { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? int nDevAddrs; /// ???????ID EM_OFFLINE_LOGSYNC_STATE emState; ///?????? BYTE byReserved[1024]; /// ??????? }ALARM_OFFLINE_LOGSYNC_INFO; #define NET_MAX_WINDINGID_NUM 8 ///@brief ???/?????????? typedef struct __ALARM_WINGDING_INFO { int nDriveWayID; /// ?????? int nWindingID; /// ???ID,????????,??nWindingIDs?? NET_TIME stuTime; /// ??????????? int nState; /// ?????,0?????????,1??????????? DWORD dwChannel; /// ??????????? char reserve[28]; int nWindingIDNum; /// ???ID???? int nWindingIDs[NET_MAX_WINDINGID_NUM]; /// ???????ID NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_WINGDING_INFO; ///@brief ?????????? typedef struct __ALARM_TRAF_CONGESTION_INFO { int nDriveWayID; /// ?????? int nCongestionLevel; /// ?????????:1,2,3,4,5,6;1???????? NET_TIME stuTime; /// ??????????? int nState; /// ?????,0?????????,1??????????? DWORD dwChannel; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserve[28]; } ALARM_TRAF_CONGESTION_INFO; ///@brief ????????? typedef struct __ALARM_TRAF_EXCEPTION_INFO { int nDriveWayID; /// ?????? NET_TIME stuTime; /// ??????????? int nState; /// ?????,0?????????,1??????????? DWORD dwChannel; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserve[28]; } ALARM_TRAF_EXCEPTION_INFO; ///@brief ?????????????? typedef struct __ALARM_EQUIPMENT_FILL_INFO { int nDriveWayID; /// ?????? NET_TIME stuTime; /// ??????????? int nState; /// ?????,0?????????,1??????????? DWORD dwChannel; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserve[28]; /// ??????? } ALARM_EQUIPMENT_FILL_INFO; ///@brief ??????????????? typedef struct __ALARM_ARM_DISARM_STATE_INFO { BYTE bState; /// ????????,0???????,1???????,2????????? char reserve1[3]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserve[32]; /// ??????? } ALARM_ARM_DISARM_STATE_INFO; ///@brief 3G???????????????? typedef struct __DHDEV_3GFLOW_EXCEED_STATE_INFO { BYTE bState; /// 3G?????????????,0????????????,1?????????? char reserve1[3]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserve[32]; /// ??????? } DHDEV_3GFLOW_EXCEED_STATE_INFO; ///@brief ???????????????????? (DH_DEVSTATE_SPEED_LIMIT) typedef struct __ALARM_SPEED_LIMIT { char szType[DH_SPEEDLIMIT_TYPE_LEN]; /// ??????????LowerSpeed, UpperSpeed int iSpeedLimit; /// ???? ????KM/H int iSpeed; /// ??? ????KM/H char szCrossingID[DH_MAX_CROSSING_ID]; /// ?????????? DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? DHDEVTIME stTime; /// ??????????? BYTE bOffline; /// 0-?? 1-???? char reserve1[3]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserve[24]; }ALARM_SPEED_LIMIT; ///@brief ??????? typedef struct __ALARM_OVER_LOADING { NET_TIME stuCurTime; /// ?????? DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? char szDriverNo[DH_VEHICLE_DRIVERNO_LEN];/// ????ID DWORD dwCurSpeed; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[128]; }ALARM_OVER_LOADING; ///@brief ????????? typedef struct __ALARM_HARD_BRAKING { NET_TIME stuCurTime; /// ?????? DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? char szDriverNo[DH_VEHICLE_DRIVERNO_LEN]; /// ????ID DWORD dwCurSpeed; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[128]; }ALARM_HARD_BRAKING; ///@brief ??????? typedef struct __ALARM_SMOKE_SENSOR { NET_TIME stuCurTime; /// ?????? int nChannel; /// ??????? BYTE byHighTemperature; /// 1:????????????,0??????????????? BYTE bySmoke; /// 1:??????????,0????????????? char reserve1[2]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReservrd[128]; }ALARM_SMOKE_SENSOR; ///@brief ??????????? typedef struct _LIGHT_INFO { BYTE byDirection; /// ????????: 1-????,2-????,3-???, 4-??? BYTE byState; /// ???????: 1-????,2-???? BYTE byReserved[62]; /// ??????? }LIGHT_INFO; ///@brief ??????????? typedef struct __ALARM_TRAFFIC_LIGHT_FAULT { NET_TIME stTime; /// ??????????? int nInfoNumber; /// ????????? LIGHT_INFO stLightInfo[8]; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[128]; /// ??????? }ALARM_TRAFFIC_LIGHT_FAULT; ///@brief ???????????????? typedef struct __ALARM_TRAFFIC_FLUX_LANE_INFO { NET_TIME stuCurTime; /// ?????? int nLane; /// ?????? int nState; /// ?????1-??????, 2-????????, 3-???????, 4-???????, 5-????????? int nFlow; /// ?????,????????/?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[124]; /// ???? }ALARM_TRAFFIC_FLUX_LANE_INFO; ///@brief SIP???????() typedef struct __ALARM_SIP_STATE { int nChannelID; BYTE byStatus; ///0:?????,1:?????,2:????,3:?????,4:????? char reserve1[3]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[64]; /// ???? }ALARM_SIP_STATE; ///@brief ???????????????(DH_DEVSTATE_VIHICLE_INFO_UPLOAD) typedef struct __ALARM_VEHICLE_INFO_UPLOAD { char szType[DH_VEHICLE_TYPE_LEN]; /// ??????: DriverCheck??????????? char szCheckInfo[DH_VEHICLE_INFO_LEN]; /// ???CheckIn???????CheckOut char szDirverNO[DH_VEHICLE_DRIVERNO_LEN]; /// ???????????? DHDEVTIME stTime; /// ??????????? BYTE bOffline; /// 0-?? 1-???? char reserve1[3]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[64]; }ALARM_VEHICLE_INFO_UPLOAD; ///@brief ????????????? typedef struct __ALARM_CARD_RECORD_INFO_UPLOAD { int nChannel; /// ????? BOOL bEnable; /// ????????????? char szCardInfo[DH_MAX_CARD_INFO_LEN]; /// ??????? NET_TIME stuTime; /// ??????????????? BOOL bPreviewOverlayEn; /// ?????????? BYTE byOverlayPos; /// ????????,1-????,2-????,3-????,4-???? char reserve1[3]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[64]; }ALARM_CARD_RECORD_INFO_UPLOAD; ///@brief ???????? typedef enum __ATMTradeTypes{ TRADE_TYPE_INC = 0, ///???INSERTCARD TRADE_TYPE_WDC, ///???WITHDRAWCARD TRADE_TYPE_CKT, ///???CHECKTIME TRADE_TYPE_INQ, ///??? TRADE_TYPE_CWD, ///??? TRADE_TYPE_PIN, ///???? TRADE_TYPE_TFR, ///??? TRADE_TYPE_DEP, ///??? TRADE_TYPE_NCINQ, ///?????? TRADE_TYPE_NCDEP, ///?????? TRADE_TYPE_OTHERS, ///???? TRADE_TYPE_ALL, ///?? }DH_eATMTradeTypes; ///@brief ??????? typedef struct __ALARM_ATM_INFO_UPLOAD_CHNL { int nChannel; /// ??????????ATM???????,????0-N-1??N?????????? char szATMID[32]; /// ATM???? char szCardNo[32]; /// ???? ????6222421541208230456 char szTradetime[32]; /// ??????? ????20111118112200???2011-11-18 11:22:00 DH_eATMTradeTypes emTradeType; /// ???????? ????: ATMTradeTypes int nAmount; /// ?????? 0-4294967296 BYTE byRerved[32]; /// ???? }ALARM_ATM_INFO_UPLOAD_CHNL; ///@brief ATM??????????(DH_ALARM_ATM_INFO_UPLOAD)?????????? typedef struct __ALARM_ATM_INFO_UPLOAD { int nCnt; ALARM_ATM_INFO_UPLOAD_CHNL m_stAtmInfo[DH_MAX_CHANNUM]; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_ATM_INFO_UPLOAD; ///@brief ???????????????? typedef struct __ALARM_CAMERA_MOVE_INFO { int nChannelNum; /// ????????????? unsigned char alarmChannels[DH_MAX_CHANNUM_EX]; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[128]; }ALARM_CAMERA_MOVE_INFO; ///@brief ???????????? typedef struct __ALARM_DETAILEDMOTION_CHNL_INFO { DWORD dwSize; int nChannelID; /// ????? BOOL bAlarm; /// ???? TRUE/FALSE int nLevel; /// ????????,????????,????????????????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_DETAILEDMOTION_CHNL_INFO; ///@brief ????????? typedef struct __ALARM_STORAGE_FAILURE { DWORD dwSize; /// ??????? UINT ActionType; /// 0????, 1????? char szProtocol[DH_MAX_STRING_LEN]; /// ????????,??????FTP char szServerAddr[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ??????IP??? DWORD dwPort; /// ???? NET_TIME stuTime; /// ?????????? int nChannel; /// ?????, ??1???, 0???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_STORAGE_FAILURE; ///@brief ??????? typedef enum tagEM_DATE_SOURCE { EM_DATE_SOURCE_GPS, /// GPS EM_DATE_SOURCE_INERTIALNAVIGATION, /// ??????????? }EM_DATE_SOURCE; ///@brief GPS????? typedef struct _NET_GPS_STATUS_INFO { NET_TIME revTime; /// ??????? char DvrSerial[50]; /// ????????? BYTE byRserved1[6]; /// ??????? double longitude; /// ????(?????????????,????0-360??) double latidude; /// ????(?????????????,????0-180??) double height; /// ???(??) double angle; /// ?????(????????????,???????) double speed; /// ???(????km/H) WORD starCount; /// ????????, emDateSource? EM_DATE_SOURCE_GPS????? BYTE byRserved2[2]; /// ??????? NET_THREE_STATUS_BOOL antennaState; /// ??????, emDateSource? EM_DATE_SOURCE_GPS????? NET_THREE_STATUS_BOOL orientationState; /// ?????? int workStae; /// ??????(0=??????,1=???????,2=??????,3=????PPS,6=??????? /// emDateSource? EM_DATE_SOURCE_GPS????? int nAlarmCount; /// ???????????????? int nAlarmState[128]; /// ?????????????,???????, emDateSource? EM_DATE_SOURCE_GPS????? BYTE bOffline; /// 0-?? 1-???? BYTE bSNR; /// GPS?????,???GPS??????,????,????? ??????0~100,0????????? BYTE byRserved3[2]; /// ??????? EM_DATE_SOURCE emDateSource; /// ??????? int nSignalStrength; /// ?????????????GPS????????????????? float fHdop; /// ????????????????????? float fPdop; /// ???????????,???????????? int nMileage; /// ?????? ???? ?? BYTE byRserved[96]; /// ??????? } NET_GPS_STATUS_INFO,*LPNET_GPS_STATUS_INFO; ///@brief ????????????? typedef struct __ALARM_FRONTDISCONNET_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? ??1??? int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ?????????? char szIpAddress[MAX_PATH]; /// ???IPC??IP??? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? ????????????????????????DH_ALARM_FRONTDISCONNECT?,??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_FRONTDISCONNET_INFO; ///@brief ???????DH_ALARM_KEYPAD_TAMPER (??????????)????????????????? typedef struct tagALARM_KEYPAD_TAMPER_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? } ALARM_KEYPAD_TAMPER_INFO; ///@brief ???????DH_ALARM_KEYPAD_FAILURE (??????????)????????????????? typedef struct tagALARM_KEYPAD_FAILURE_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? } ALARM_KEYPAD_FAILURE_INFO; ///@brief ???????DH_ALARM_NOT_CLEAR_CAR (????t??????)????????????????? typedef struct tagALARM_NOT_CLEAR_CAR_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char szReserved[1024]; /// ??????? } ALARM_NOT_CLEAR_CAR_INFO; ///@brief ???????DH_ALARM_WIRELESS_DEVBATTERY_LOSS (?????????????)????????????????? typedef struct tagALARM_WIRELESS_DEVBATTERY_LOSS_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char szAreaName[32]; /// ????????????????? char szModel[32]; /// ????????? char szName[32]; /// ????????? char szSN[32]; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? } ALARM_WIRELESS_DEVBATTERY_LOSS_INFO; ///@brief ???????DH_ALARM_SIREN_TAMPER (??????????)????????????????? typedef struct tagALARM_SIREN_TAMPER_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? } ALARM_SIREN_TAMPER_INFO; ///@brief ???????DH_ALARM_KEYPAD_LOCK (???????????)????????????????? typedef struct tagALARM_KEYPAD_LOCK_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? } ALARM_KEYPAD_LOCK_INFO; ///@brief ???????DH_ALARM_ALARMNET (????d?????)????????????????? typedef struct tagALARM_ALARMNET_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char byReserved[4]; /// ???????????? char szName[128]; /// ???????? char szTrigger[32]; /// ???????? char szDesc[128]; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? } ALARM_ALARMNET_INFO; ///@brief ???????DH_ALARM_PIC_UPLOAD_ALARM (????????????????)????????????????? typedef struct tagNET_ALARM_PIC_UPLOAD_ALARM_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char byReserved[4]; /// ???????????? char szProtocol[16]; /// ???????? char szPicDirectory[128]; /// ????????????,???????????,???IP,???????????? char szReserved[1024]; /// ??????? } NET_ALARM_PIC_UPLOAD_ALARM_INFO; ///@brief ???????DH_ALARM_CHANG_BAI_VEHICLE_PROHIBITED (?????????????????????)????????????????? typedef struct tagNET_ALARM_CHANG_BAI_VEHICLE_PROHIBITED_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char byReserved[4]; /// ???????????? NET_TIME stuVehicleProhibitedStartTime; /// ??????????(???????) NET_TIME stuVehicleProhibitedEndTime; /// ???????????(???????) NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? char szReserved[1024]; /// ??????? } NET_ALARM_CHANG_BAI_VEHICLE_PROHIBITED_INFO; ///@brief ???????? typedef enum tagEM_USER_PASS_TYPE { EM_USER_PASS_TYPE_UNKNOWN, EM_USER_PASS_TYPE_ENTRY, /// ???? EM_USER_PASS_TYPE_EXIT, /// ???? }EM_USER_PASS_TYPE; ///@brief ???????DH_ALARM_USER_PASS_CONFIRM (???????????????????)????????????????? typedef struct tagNET_ALARM_USER_PASS_CONFIRM_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? BOOL bRealUTC; /// stuRealUTC ?????????bRealUTC ? TRUE ????? stuRealUTC???????? stuTime ??? NET_TIME_EX stuRealUTC; /// ????????????(???UTC???) char byReserved[4]; /// ???????????? UINT nCount; /// ??????????? EM_USER_PASS_TYPE emType; /// ????????(???????) char szReserved[1024]; /// ??????? } NET_ALARM_USER_PASS_CONFIRM_INFO; ///@brief ???????DH_ALARM_INSUFFICIENT_QUOTA_SPACE (??????????????)????????????????? typedef struct tagNET_ALARM_INSUFFICIENT_QUOTA_SPACE_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char szReserved[1020]; /// ??????? } NET_ALARM_INSUFFICIENT_QUOTA_SPACE_INFO; ///@brief ???????DH_ALARM_REID_CLUSTER_STATE (????????)????????????????? typedef struct tagNET_ALARM_REID_CLUSTER_STATE_INFO { int nChannelID; /// ????? int nAction; /// ???????,1???????????????,2????????????????; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_TIME_EX stuUTC; /// ???????????? int nClusterState; /// ???????? 1.?????. 2.?????? 3.?????? int nClusterDate; /// ??????????????????????????????????????key??????????????????????.??20220530??????20220530?????????? int nClusterType; /// ??????????: 1.???????? 2.???????????? 3.?????????? 4.?????????????? NET_TIME_EX stuDealTime; /// ???????????????????????? int nClusterMessage; /// ???????????????????????, ????????????????0 int nRecordID; /// ??????ID???????ID??????????????????????? char szReserved[1012]; /// ??????? } NET_ALARM_REID_CLUSTER_STATE_INFO; ///@brief ?????? typedef struct tagNET_SAMPO_PARAMTER { char szName[128]; /// ???????? float fValue; /// ??????? char szReserved[512]; /// ??????? } NET_SAMPO_PARAMTER; ///@brief ???????DH_ALARM_SAMPO_USER_INFORMATION (?????????????????????)????????????????? typedef struct tagNET_ALARM_SAMPO_USER_INFORMATION_INFO { int nChannelID; /// ????? int nAction; /// ???????,1???????????????,2????????????????; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_TIME_EX stuUTC; /// ???????????? NET_SAMPO_PARAMTER stuParamter[6]; /// ?????? int nParamterCount; /// ?????????? char szReserved[1020]; /// ??????? } NET_ALARM_SAMPO_USER_INFORMATION_INFO; ///@brief ???????DH_ALARM_SAMPO_SERVICE_ALARM (????????????????????????)????????????????? typedef struct tagNET_ALARM_SAMPO_SERVICE_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????,0:??? 1:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_TIME_EX stuUTC; /// ???????????? char szServiceAlarm[128]; /// ???????????? char szReserved[1024]; /// ??????? } NET_ALARM_SAMPO_SERVICE_ALARM_INFO; ///@brief SIA??? typedef enum tagEM_SIA_EVENT_FORMAT { EM_SIA_EVENT_FORMAT_UNKNOWN, /// ??? EM_SIA_EVENT_FORMAT_SIA_DC_04, /// SIA DC-04 EM_SIA_EVENT_FORMAT_CONTACT_ID_DC_05, /// Contact ID DC-05 }EM_SIA_EVENT_FORMAT; ///@brief ???????DH_ALARM_SIA_EVENT (???SIA?????????????)????????????????? typedef struct tagNET_ALARM_SIA_EVENT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? EM_SIA_EVENT_FORMAT emSIAFormat; /// SIA??? char szMessageData[32]; /// ???SIA DC0-09??????????????????data???? char szURL[512]; /// ???, ??, ??????????????????????? char szAreaName[128]; /// Area????, ????"LivingRoom" char szUserID[32]; /// ??????ID char szUserName[128]; /// ??????? char szReserved[1024]; /// ?????? } NET_ALARM_SIA_EVENT_INFO; ///@brief ??????? DH_ALARM_AP_CONNECT (??????????????)????????????????? typedef struct tagNET_ALARM_AP_CONNECT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szMacAddress[32]; /// ????wifi??ap??mac??? char szReserved[1024]; /// ?????? } NET_ALARM_AP_CONNECT_INFO; ///@brief ??????? DH_ALARM_DGS_ERROR_REPORT (??????????????)????????????????? typedef struct tagNET_ALARM_DGS_ERROR_REPORT { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? UINT nErrorCode; /// ????????????, ????????????????? char szReserved[1024]; /// ?????? } NET_ALARM_DGS_ERROR_REPORT; ///@brief ??????? DH_ALARM_RESIDENT_ALARM (???????)????????????????? typedef struct tagNET_ALARM_RESIDENT_ALARM { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? UINT nTime; /// ???????????? int nTriggerType; /// ???????? -1: ??? 0: ?????? 1: ??? 2: ??? char szMac[32]; /// ??????????Mac??? char szReserved[988]; /// ?????? } NET_ALARM_RESIDENT_ALARM; ///@brief ??????? DH_ALARM_ELEVATOR_WORK (??????????????????)????????????????? typedef struct tagNET_ALARM_ELEVATOR_WORK_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? UINT nCurrentNumber; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? double dbPTS; /// ??????????,???????? char szElevatorFloor[32]; /// ????????????,????255 UINT nElevatorWorkState; /// ??????????,0 ?????1??????,2 ????????,3 ???????? UINT nElevatorWorkSpeed; /// ????????????????mm/s?????????65535mm/s BOOL bIsCheckFloor; /// ?????????????????????????????????????? UINT nDoorState; /// ???????????0?????, 1???????? ,2??????? , 3??????? char szReserved[1024]; /// ?????? } NET_ALARM_ELEVATOR_WORK_INFO; ///@brief ???????????? typedef struct __ALARM_BATTERYLOWPOWER_INFO { DWORD dwSize; /// ??????? int nAction; /// 0:??? 1:?? int nBatteryLeft; /// ??????????,????% NET_TIME stTime; /// ?????????? int nChannelID; /// ?????, ???????????, ??0??? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_BATTERYLOWPOWER_INFO; ///@brief ????????? typedef struct __ALARM_TEMPERATURE_INFO { DWORD dwSize; /// ??????? char szSensorName[DH_MACHINE_NAME_NUM];/// ???????????? int nChannelID; /// ????? int nAction; /// 0:??? 1:?? float fTemperature; /// ???????, ????????? NET_TIME stTime; /// ?????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_TEMPERATURE_INFO; ///@brief ????????? typedef struct __ALARM_TIREDDRIVE_INFO { DWORD dwSize; /// ??????? int nAction; /// 0:??? 1:?? int nDriveTime; /// ??????????,???????? NET_TIME stTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_TIREDDRIVE_INFO; ///@brief ???????????? typedef struct __ALARM_LOST_RECORD { DWORD dwSize; ///??????? UINT ActionType; /// 0????, 1????? UINT nChannelID; /// ?????,??1??? UINT nStreamType; /// ????????,0??????????1????????1??2????????2??3????????3??4???????? NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_LOST_RECORD; ///@brief CPU???????????????,???????95%?? typedef struct __ALARM_HIGH_CPU { DWORD dwSize; ///??????? UINT ActionType; /// 0????, 1????? UINT nUsed; /// CPU??????1000?? NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_HIGH_CPU; ///@brief ????????????????????? typedef struct __ALARM_LOST_NETPACKET { DWORD dwSize; ///??????? UINT ActionType; /// 0????, 1????? UINT nChannelID; /// ?????,??1??? UINT nStreamType; /// ????????,0??????????1????????1??2????????2??3????????3??4???????? char szRemoteIP[DH_MAX_IPADDR_LEN]; /// ?????IP??? DWORD dwRemotePort; /// ?????????? NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_LOST_NETPACKET; ///@brief ??????????????????,???????95%?? typedef struct __ALARM_HIGH_MEMORY { DWORD dwSize; ///??????? UINT ActionType; /// 0????, 1????? UINT nUsed; /// ?????????1000?? NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_HIGH_MEMORY; ///@brief ????????????????? typedef struct __DH_BLACKLIST_SNAP_INFO { DWORD dwSize; char szPlateNumber[32]; /// ????? NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }DH_BLACKLIST_SNAP_INFO; ///@brief ???????????? typedef struct __ALARM_DISK_FLUX { DWORD dwSize; DWORD dwAction; /// 0-???, 1-?? DWORD dwDataFlux; /// ???????????, KB NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_DISK_FLUX; ///@brief ????????????? typedef struct __ALARM_NET_FLUX { DWORD dwSize; DWORD dwAction; /// 0-???, 1-?? DWORD dwDataFlux; /// ???????????, KB NET_TIME stuTime; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_NET_FLUX; ///@brief ???????????? typedef struct __ALARM_FAN_SPEED { DWORD dwSize; DWORD dwAction; /// 0-???, 1-?? DWORD dwIndex; /// ??????? char szName[DH_MACHINE_NAME_NUM]; /// ?????????? NET_TIME stuTime; /// ?????????? DWORD dwCurrent; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_FAN_SPEED; ///@brief ?????? typedef struct __ALARM_DISK_INFO { DWORD dwSize; DWORD nChannel; /// ???????? DWORD nHDDNumber; /// ?????????, 0: ????,1: ?????1, 2: ?????2 DWORD nHDDState; /// ?????, 0: Unknown, 1: Running, 2: Offline, 3: Warning, 4: Failed NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_DISK_INFO; ///@brief ???????? typedef struct __ALARM_FILE_SYSTEM_INFO { DWORD dwSize; char szMountDir[MAX_PATH]; /// ??????????? DWORD nState; /// ???????, 0: Unkown, 1: Normal, 2: Error NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_FILE_SYSTEM_INFO; ///@brief ???????????? typedef struct __ALARM_REMOTE_ALARM_INFO { DWORD dwSize; int nChannelID; /// ?????,??1??? int nState; /// ??????,0-????????,1-???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_REMOTE_ALARM_INFO; ///@brief ?????????? typedef struct __ALARM_IVS_INFO { DWORD dwSize; NET_TIME stuTime; /// ?????????? int nChannelID; /// ?????,??0??? char szType[MAX_PATH]; /// ???????? int nState; /// ??????,0-????????,1-????????, 2-????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_IVS_INFO; ///@brief ?????????? typedef struct __ALARM_GOODS_WEIGHT_INFO { DWORD dwSize; int nAction; /// 0-???, 1-?? int nAlarmType; /// 0-??????????, 1-????????????, 2-????????????????? DWORD dwGoodsWeight; /// ???????(kg) DWORD dwSelfWeight; /// ????(kg) DWORD dwTotalWeight; /// ????(kg) DWORD dwStandardWeight; /// ???????(kg) DWORD dwWeightScale; /// ??????? DWORD dwMaxGoodsWeight; /// ??????(kg) DWORD dwMinGoodsWeight; /// ????????(kg) DWORD dwAlarmWeight; /// ???????(kg) int nWeightChange; /// ???????????????(kg) int nCheckTime; /// ?????????(s) } ALARM_GOODS_WEIGHT_INFO; ///@brief ????????????? typedef struct __ALARM_GOODS_WEIGHT_UPLOAD_INFO { DWORD dwSize; DWORD dwGoodsWeight; /// ???????(kg) DWORD dwSelfWeight; /// ????(kg) DWORD dwTotalWeight; /// ????(kg) DWORD dwStandardWeight; /// ???????(kg) DWORD dwWeightScale; /// ??????? char szCardNO[DH_MAX_CARDINFO_LEN]; /// ???? } ALARM_GOODS_WEIGHT_UPLOAD_INFO; ///@brief ?????????????? typedef struct __ALARM_DISKBURNED_FULL_INFO { DWORD dwSize; int nIndex; ///????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_DISKBURNED_FULL_INFO; ///@brief ?????????????? typedef struct tagALARM_STORAGE_LOW_SPACE_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szDevice[DH_STORAGE_NAME_LEN]; /// ?????????? char szGroup[DH_STORAGE_NAME_LEN]; /// ????????? INT64 nTotalSpace; /// ??????, byte INT64 nFreeSpace; /// ???????, byte int nPercent; /// ?????????? NET_TIME_EX stuTime; /// ?????????? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_STORAGE_LOW_SPACE_INFO; ///@brief ??????????? typedef enum __EM_STORAGE_ERROR { STORAGE_ERROR_NONE, /// ?? STORAGE_ERROR_PATITION, /// ???????? STORAGE_ERROR_INIT_FS, /// ?????????????? STORAGE_ERROR_READ_DATA, /// ????????? STORAGE_ERROR_WRITE_DATA, /// ????????? STORAGE_ERROR_RAID_FAILED, /// RAID???? STORAGE_ERROR_RAID_DEGRADED, /// RAID???? STORAGE_ERROR_ISCSI_FAILED, /// iSCSI???? STORAGE_ERROR_POOL_FAILED, /// ???????? STORAGE_ERROR_DISK_FAILED, /// ?????? STORAGE_ERROR_FS_ABNORMAL, /// ??????? STORAGE_ERROR_RECOGNITION_FAILED, /// ???????????? STORAGE_ERROR_CAPACITY_FAILED, /// ?????????? STORAGE_ERROR_PREDICT_DISK_FAILED, /// ?????????????? STORAGE_ERROR_IO_ERROR, /// I/O???? STORAGE_ERROR_IO_HUNG, /// I/O???? STORAGE_ERROR_IO_SLOW, /// I/O?? STORAGE_ERROR_CONTROL_OR_OTHER_ERROR, /// ?????????????????? } EM_STORAGE_ERROR; ///@brief ???????? typedef struct __ALARM_STORAGE_FAILURE_EX { DWORD dwSize; int nAction; /// 0:??? 1:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szDevice[DH_STORAGE_NAME_LEN]; /// ?????????? char szGroup[DH_STORAGE_NAME_LEN]; /// ????????? char szPath[MAX_PATH]; /// ???? EM_STORAGE_ERROR emError; /// ???????? int nPhysicNo; /// ???????????, ??1??? NET_TIME_EX stuTime; /// ???????????? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_STORAGE_FAILURE_EX; ///@brief ????????? typedef struct __ALARM_RECORD_FAILED_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? int nIndex; /// ????? } ALARM_RECORD_FAILED_INFO; ///@brief ?????????? typedef struct __ALARM_STORAGE_BREAK_DOWN_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? } ALARM_STORAGE_BREAK_DOWN_INFO; ///@brief ???????????? typedef enum tagEM_STORAGE_HOT_PLUG_ACTION { HOT_PLUG_ACTION_UNKNOW = 0 , HOT_PLUG_ACTION_ADD , ///??????? HOT_PLUG_ACTION_REMOVE , ///??????? }EM_STORAGE_HOT_PLUG_ACTION; ///@brief ??????????(?????? DH_ALARM_STORAGE_HOT_PLUG) typedef struct __ALARM_STORAGE_HOT_PLUG_INFO { int nAction; /// 0:??? 1:?? EM_STORAGE_HOT_PLUG_ACTION emHotPLugAction; /// ???????????? char szDevice[DH_STORAGE_NAME_LEN]; /// ?????????? char szMediaType[DH_COMMON_STRING_32]; /// ???????? char szBusType[DH_COMMON_STRING_32]; /// ???????? char szMountOn[DH_COMMON_STRING_128]; /// ???????? /// ??????,???????????????? /// ?????????????????????? int nPhysicNo; /// ???????,??1??? int nLogicNo; /// ?????? BYTE bReserved[256]; /// ???????,???????. }ALARM_STORAGE_HOT_PLUG_INFO; ///@brief ?????????????(??????DH_ALARM_FLOW_RATE) typedef struct tagALARM_FLOW_RATE_INFO { int nAction; /// 0:???, 1:???, 2:?? int nChannelID; /// ????? UINT nFlowRate; /// ??????????(????:MB) BYTE bReserved[512]; /// ??????? } ALARM_FLOW_RATE_INFO; ///@brief ???????? typedef enum tagEM_NET_UPS_STATUS { EM_NET_UPS_SYS_SIGN=0, ///????????????. 1:???????; 0:???????? EM_NET_UPS_SYS_SHUTDOWN, ///?????. 1:???????????? EM_NET_UPS_SYS_TEST, ///????????. 1:????????? EM_NET_UPS_SYS_TYPE, ///UPS ????. 1:?????? ; 0:???????? EM_NET_UPS_SYS_FAULT, ///UPS ????. 1:???UPS??????? ; 0:???? EM_NET_UPS_ELE_SUPPLY, ///????/?????. 1:AC???? ; 0:?????? EM_NET_UPS_VOL_LOW, ///???????. 1:?????????? ; 0:?????????? EM_NET_UPS_BYPASS_STATUS, ///???????. 1:?????????? ; 0:??????????? EM_NET_UPS_MAX = 64, /// }EM_NET_UPS_STATUS; ///@brief UPS??????? typedef struct tagNET_UPS_INFO { DWORD dwSize; float fInputVoltage; ///?????? ??????? ??????????????????(V1.2) float fInputAbnormalVoltage; ///????????? float fOutputVoltage; ///?????? float fOutputCurrent; ///???????????,????(%) float fInputFrequency; ///??????? float fVoltage; ///??? float fTemp; ///??? BYTE bStatusInfo[EM_NET_UPS_MAX]; ///UPS????,????NET_UPS_STATUS??? char szVersionInfo[DH_MAX_VERSION_STR]; ///??? }NET_UPS_INFO; ///@brief UPS??????? typedef struct tagALARM_COMM_PORT_EVENT_INFO { DWORD dwSize; UINT nEventAction; /// ???????,0??????????,1???????????????,2????????????????; NET_UPS_INFO stUPSInfo; /// UPS??????? }ALARM_COMM_PORT_EVENT_INFO; ///@brief ?????????????????????????????????????????,?????????????????DH_ALARM_VIDEO_ININVALID typedef struct __ALARM_VIDEO_ININVALID_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ?????,??0??? } ALARM_VIDEO_ININVALID_INFO; ///@brief ???????????????? typedef struct tagALARM_STORAGE_NOT_EXIST_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? char szGroup[DH_STORAGE_NAME_LEN]; /// ????????????????????????????? NET_TIME stuTime; /// ?????????? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? }ALARM_STORAGE_NOT_EXIST_INFO; ///@brief ?????????????? typedef enum __EM_NETABORT_EVENT_TYPE { EM_NETABORT_EVENT_TYPE_WIRE = 0, /// ?????????????? EM_NETABORT_EVENT_TYPE_WIRELESS, /// ?????????????? EM_NETABORT_EVENT_TYPE_3G, /// 3G?????????? }EM_NETABORT_EVENT_TYPE; ///@brief ?????????? typedef struct tagALARM_NETABORT_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? EM_NETABORT_EVENT_TYPE emNetAbortType; /// ??????? NET_TIME stuTime; /// ?????????? char szInterface[DH_MAX_ETH_NAME]; ///????????? }ALARM_NETABORT_INFO; ///@brief IP?????? typedef struct tagALARM_IP_CONFLICT_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ?????????? char szInterface[8]; /// IP????????? int nMacNum; /// ????Mac??????? char szMac[8][18]; /// ??Interface????IP????????????Mac??????? }ALARM_IP_CONFLICT_INFO; ///@brief MAC?????? typedef struct tagALARM_MAC_CONFLICT_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ?????????? char szInterface[8]; /// IP????????? }ALARM_MAC_CONFLICT_INFO; ///@brief ??????? typedef enum __EM_POWER_TYPE { EM_POWER_TYPE_MAIN = 0, /// ????? EM_POWER_TYPE_BACKUP, /// ?????? }EM_POWER_TYPE; ///@brief ?????????????? typedef enum __EM_POWERFAULT_EVENT_TYPE { EM_POWERFAULT_EVENT_UNKNOWN = -1, /// ??? EM_POWERFAULT_EVENT_LOST = 0, /// ????????????? EM_POWERFAULT_EVENT_LOST_ADAPTER, /// ???????????? EM_POWERFAULT_EVENT_LOW_BATTERY, /// ????? EM_POWERFAULT_EVENT_LOW_ADAPTER, /// ???????? EM_POWERFAULT_EVENT_LOW_ADAPTER_LOST_BATTERY, /// ????????,?????? EM_POWERFAULT_EVENT_LESS_ADAPTER_LOW_BATTERY, /// ?????????????,????? EM_POWERFAULT_EVENT_LESS_ADAPTER_LOST_BATTERY, /// ?????????????,?????? EM_POWERFAULT_EVENT_LOST_ADAPTER_LOST_BATTERY, /// ??????????????? EM_POWERFAULT_EVENT_LOW_ADAPTER_LOW_BATTERY, /// ????????????? EM_POWERFAULT_EVENT_LESS_ADAPTER, /// ????????????? EM_POWERFAULT_EVENT_LOST_ADAPTER_LOW_BATTERY, /// ??????????,????? }EM_POWERFAULT_EVENT_TYPE; ///@brief ?????????? typedef struct tagALARM_POWERFAULT_INFO { DWORD dwSize; EM_POWER_TYPE emPowerType; /// ??????? EM_POWERFAULT_EVENT_TYPE emPowerFaultEvent; /// ?????????? NET_TIME stuTime; /// ???????????????? int nAction; /// 0:??? 1:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_POWERFAULT_INFO; ///@brief ?????????? typedef struct tagALARM_UPLOAD_KEYPAD_TAMPER_INFO { DWORD dwSize; NET_TIME stuTime; /// ???????????????? int nAction; /// 0:??? 1:?? }ALARM_UPLOAD_KEYPAD_TAMPER_INFO; ///@brief ???????????/??????????? typedef struct tagALARM_UPLOAD_PROGRAM_MODE_INFO { DWORD dwSize; NET_TIME stuTime; /// ???????????????? int nAction; /// 0:??? 1:?? }ALARM_UPLOAD_PROGRAM_MODE_INFO; ///@brief PSTN?????????? typedef struct tagALARM_UPLOAD_PSTN_PERIODIC_TEST_INFO { DWORD dwSize; NET_TIME stuTime; /// ???????????????? int nAction; /// 0?????? 1:??? 2:?? }ALARM_UPLOAD_PSTN_PERIODIC_TEST_INFO; ///@brief ??????????????????? typedef enum tagNET_SENSE_METHOD { NET_SENSE_UNKNOWN = -1, ///??????? NET_SENSE_DOOR=0, ///??? NET_SENSE_PASSIVEINFRA, ///???????? NET_SENSE_GAS, ///???? NET_SENSE_SMOKING, ///??? NET_SENSE_WATER, ///??? NET_SENSE_ACTIVEFRA, ///???????? NET_SENSE_GLASS, ///???????? NET_SENSE_EMERGENCYSWITCH, ///???????? NET_SENSE_SHOCK, ///?? NET_SENSE_DOUBLEMETHOD, ///???(????+???) NET_SENSE_THREEMETHOD, ///?????? NET_SENSE_TEMP, ///??? NET_SENSE_HUMIDITY, ///??? NET_SENSE_WIND, ///???? NET_SENSE_CALLBUTTON, ///??????? NET_SENSE_GASPRESSURE, ///??????? NET_SENSE_GASCONCENTRATION, ///?????? NET_SENSE_GASFLOW, ///???????? NET_SENSE_OTHER, ///???? NET_SENSE_OIL, /// ???????,??????????????????? NET_SENSE_MILEAGE, /// ???????? NET_SENSE_URGENCYBUTTON, ///??????? NET_SENSE_STEAL, ///???? NET_SENSE_PERIMETER, ///??? NET_SENSE_PREVENTREMOVE, ///???? NET_SENSE_DOORBELL, ///???? NET_SENSE_ALTERVOLT, ///????????????? NET_SENSE_DIRECTVOLT, ///???????????? NET_SENSE_ALTERCUR, ///?????????????? NET_SENSE_DIRECTCUR, ///????????????? NET_SENSE_RSUGENERAL, ///???????? 4~20mA??0~5V NET_SENSE_RSUDOOR, ///?????? NET_SENSE_RSUPOWEROFF, ///????? NET_SENSE_TEMP1500 , ///1500???????? NET_SENSE_TEMPDS18B20 , ///DS18B20???????? NET_SENSE_HUMIDITY1500, ///1500???????? NET_SENSE_INFRARED, ///?????? NET_SENSE_FIREALARM, ///?? NET_SENSE_CO2, ///CO2?????,?????:0~5000ppm NET_SNESE_SOUND, ///???????,?????:30~130dB NET_SENSE_PM25, ///PM2.5???,?????:0~1000ug/m3 NET_SENSE_SF6, ///SF6?????,?????:0~3000ppm NET_SENSE_O3, ///?????????,?????:0~100ppm NET_SENSE_AMBIENTLIGHT, ///??????????,?????:0~20000Lux NET_SENSE_SIGNINBUTTON, ///???? NET_SENSE_LIQUIDLEVEL, ///??? NET_SENSE_DISTANCE, ///??? NET_SENSE_WATERFLOW, ///????? NET_SENSE_KEYPRESSS, ///?????????? NET_SENSE_TEMP_AND_HUMI_SM7820B, ///SM7820B?????????? NET_SENSE_WATT_HUR_DDSU666, ///DSU666?????????????D NET_SENSE_CURTAIN_SENSOR, /// ????????? NET_SENSE_CASEPREVENTREMOVE, ///??????? NET_SENSE_EMERGENCYHELP, ///???????????? NET_SENSE_NUM ///??????????? }NET_SENSE_METHOD; ///@brief ?????????????? typedef enum tagEM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE { EM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE_UNKNOWN, /// ??? EM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE_DIGIT, /// ???? EM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE_ANALOG, /// ??? EM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE_SMARTLOCK, /// ?????? }EM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE; ///@brief ???????? typedef enum tagEM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE { EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_UNKNOWN, /// ??? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_PREVENTREMOVE, /// "PreventRemove" ???? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_LOWERPOWER, /// "LowerPower" ???? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_KEY, /// "Key" ??? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_DURESS, /// "Duress" ???? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_BATTERY_LOST, /// "BatteryLost":???????? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_PSTNB_BREAKLINE, /// "PSTNBreakLine":??????? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_EMERGENCY_HELP, /// "EmergencyHelp":???????? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE_ALARMIN, /// "AlarmIn":???????? }EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE; ///@brief ??????????? typedef struct tagNET_PROFILE_ALARM_TRANSMIT_LOWERPOWER { int nPercent; /// ??????? char szReserved[64]; /// ?????? }NET_PROFILE_ALARM_TRANSMIT_LOWERPOWER; ///@brief ????????????? typedef struct tagNET_PROFILE_ALARM_TRANSMIT_ALARMIN { int nChannel; /// ????????????? char szReserved[64]; /// ?????? }NET_PROFILE_ALARM_TRANSMIT_ALARMIN; ///@brief ??????????paas?????????????????? typedef struct tagNET_PROFILE_ALARM_TRANSMIT_CLOUDINFO { int nVideoLinkChannel; /// ????????????? char szReserved[64]; /// ?????? }NET_PROFILE_ALARM_TRANSMIT_CLOUDINFO; ///@brief AlarmType??????????????????????? typedef struct tagNET_PROFILE_ALARM_TRANSMIT_ALARM_INFO { NET_PROFILE_ALARM_TRANSMIT_LOWERPOWER stuLowerPower; /// ??????????? NET_PROFILE_ALARM_TRANSMIT_ALARMIN stuAlarmIn; /// ????????????? NET_PROFILE_ALARM_TRANSMIT_CLOUDINFO stuCloudInfo; /// ??????????paas?????????????????? char szReserved[64]; /// ?????? }NET_PROFILE_ALARM_TRANSMIT_ALARM_INFO; ///@brief ??????????? typedef struct tagALARM_UPLOAD_PROFILE_ALARM_TRANSMIT_INFO { DWORD dwSize; /// ??????? int nAction; /// 0?????? 1:??? 2:?? NET_TIME_EX stuTime; /// ???????????????? UINT nRealUTC; /// ???UTC?????????????????? char szUserID[32]; /// ?????????????????????????????????????? NET_SENSE_METHOD emSenseMethod; /// ?????????? EM_PROFILE_ALARM_TRANSMIT_DEVSRC_TYPE emDevSrcType; /// ?????????????? EM_PROFILE_ALARM_TRANSMIT_ALARM_TYPE emAlarmType; /// ???????? NET_PROFILE_ALARM_TRANSMIT_ALARM_INFO stuAlarmInfo; /// AlarmType??????????????????????? char szSN[32]; /// ?????? char szSnapURL[128]; /// ???????????? }ALARM_UPLOAD_PROFILE_ALARM_TRANSMIT_INFO; ///@brief ????????????? typedef struct tagALARM_UPLOAD_USER_LOCK_INFO { DWORD dwSize; /// ??????? int nAction; ///1:??? ?????????????????SDK??????????????? NET_TIME_EX stuTime; /// ???????????? char szDeviceIP[40]; /// ???IP??? char szDeviceMac[24]; /// ???Mac??? char szUserName[128]; /// ????? char szGroup[128]; /// ???? char szIllegalLoginIP[40]; /// ????????IP }ALARM_UPLOAD_USER_LOCK_INFO; ///@brief ??????? typedef enum tagEM_ALARM_CHASSISINTRUDED_DEV_TYPE { EM_ALARM_CHASSISINTRUDED_DEV_UNKNOWN, /// ??? EM_ALARM_CHASSISINTRUDED_DEV_CONTROLLER, /// ????????????????????? EM_ALARM_CHASSISINTRUDED_DEV_RS485EXPANSIONMODULE, /// RS485???????????/?????? EM_ALARM_CHASSISINTRUDED_DEV_MBUSEXPANSIONMODULE, /// MBUS???????????/?????? EM_ALARM_CHASSISINTRUDED_DEV_KEYBOARD, /// ???? EM_ALARM_CHASSISINTRUDED_DEV_SIREN, /// ???? }EM_ALARM_CHASSISINTRUDED_DEV_TYPE; ///@brief ???????? typedef struct tagALARM_CHASSISINTRUDED_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ???????????????? int nChannelID; /// ????? char szReaderID[DH_COMMON_STRING_32]; /// ??????ID UINT nEventID; /// ???ID char szSN[32]; /// ????????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? EM_ALARM_CHASSISINTRUDED_DEV_TYPE emDevType; /// ??????? }ALARM_CHASSISINTRUDED_INFO; ///@brief ??????l????? typedef struct tagALARM_ALARMEXTENDED_INFO { DWORD dwSize; int nChannelID; /// ????? int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ???????????????? }ALARM_ALARMEXTENDED_INFO; ///@brief ??????? typedef enum __EM_TALKING_CALLER { EM_TALKING_CALLER_UNKNOWN = 0, /// ??????? EM_TALKING_CALLER_PLATFORM, /// ?????????? EM_TALKING_CALLER_LEADER, /// ?????? EM_TALKING_CALLER_SECURITY, /// ?????? }EM_TALKING_CALLER; ///@brief Invite????????????? typedef enum tagTALKINGINVITE_REMOTEDEVICE_PROTOCOL { EM_TALKINGINVITE_REMOTEDEVICE_PROTOCOL_UNKNOWN = 0, EM_TALKINGINVITE_REMOTEDEVICE_PROTOCOL_HIKVISION }EM_TALKINGINVITE_REMOTEDEVICE_PROTOCOL; #define MAX_REMOTEDEVICEINFO_IPADDR_LEN 128 /// ??????IP??????? #define MAX_REMOTEDEVICEINFO_USERNAME_LEN 128 /// ??????????????? #define MAX_REMOTEDEVICEINFO_USERPSW_LENGTH 128 /// ?????????????? ///@brief Invite???????????? typedef struct tagTALKINGINVITE_REMOTEDEVICEINFO { char szIP[MAX_REMOTEDEVICEINFO_IPADDR_LEN]; /// ???IP int nPort; /// ??? EM_TALKINGINVITE_REMOTEDEVICE_PROTOCOL emProtocol; /// ???????? char szUser[MAX_REMOTEDEVICEINFO_USERNAME_LEN]; /// ????? char szPassword[MAX_REMOTEDEVICEINFO_USERPSW_LENGTH];/// ???? char szReverse[1024]; /// ??????? }TALKINGINVITE_REMOTEDEVICEINFO; ///@brief ???????????DH_ALARM_TALKING_INVITE(??????????????????)???????????????? typedef struct tagALARM_TALKING_INVITE_INFO { DWORD dwSize; EM_TALKING_CALLER emCaller; /// ?????????????? NET_TIME stuTime; /// ?????????? char szCallID[DH_COMMON_STRING_64]; /// ???????????? int nLevel; /// ?????????????????? TALKINGINVITE_REMOTEDEVICEINFO stuRemoteDeviceInfo; /// ????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? }ALARM_TALKING_INVITE_INFO; ///@brief ???????????DH_ALARM_TALKING_IGNORE_INVITE(????????????????)???????????????? typedef struct tagALARM_TALKING_IGNORE_INVITE_INFO { DWORD dwSize; NET_TIME_EX UTC; /// ?????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? UTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? } ALARM_TALKING_IGNORE_INVITE_INFO; ///@brief ???????????DH_ALARM_TALKING_HANGUP???????????????? typedef struct tagALARM_TALKING_HANGUP_INFO { DWORD dwSize; NET_TIME stuTime; /// ?????????? char szRoomNo[128]; /// ???????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szCaller[32]; /// ?????????? }ALARM_TALKING_HANGUP_INFO; ///@brief ???????????DH_ALARM_TALKING_PHONE_CALLING???????????????? typedef struct tagNET_ALARM_TALKING_PHONE_CALLING_INFO { DWORD dwSize; int nChannelID; /// ????? int nAction; /// 1 ???; 2 ?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventinfo; /// ???????????????? char szNetcardName[16]; /// ??????????????? char szPhonenum[32]; /// ?????????? }NET_ALARM_TALKING_PHONE_CALLING_INFO; ///@brief ???????????DH_ALARM_NO_PASSAGE ???????????????? typedef struct tagNET_ALARM_NO_PASSAGE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? int nAction; /// 1 ???; 2 ?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventinfo; /// ???????????????? }NET_ALARM_NO_PASSAGE_INFO; ///@brief ?????? typedef enum tagEM_USERMANAGER_IMAGE_TYPE { EM_USERMANAGER_IMAGE_TYPE_UNKNOWN = -1, /// ??? EM_USERMANAGER_IMAGE_TYPE_LOCAL, /// ????????? EM_USERMANAGER_IMAGE_TYPE_SCENE, /// ??????? EM_USERMANAGER_IMAGE_TYPE_FACE, /// ????? EM_USERMANAGER_IMAGE_TYPE_INFRARED, /// ?????? EM_USERMANAGER_IMAGE_TYPE_ENTOURAGE, /// ???????? EM_USERMANAGER_IMAGE_TYPE_THERMOGRAM, /// ??? } EM_USERMANAGER_IMAGE_TYPE; ///@brief ??????????? typedef struct tagNET_USERMANAGER_IMAGE_INFO { unsigned int nOffset; /// ???????????????????,????:??? unsigned int nLength; /// ??????,????:??? unsigned short nWidth; /// ?????? unsigned short nHeight; /// ????? EM_USERMANAGER_IMAGE_TYPE emImageType; /// ?????? char szReserved[64]; /// ??????? } NET_USERMANAGER_IMAGE_INFO; ///@brief ???????????DH_ALARM_HOSPITAL_TALK_CONTROL ???????????????? typedef struct tagNET_ALARM_HOSPITAL_TALK_CONTROL_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szCitizenIDNo[20]; /// ??????? char szCitizenName[128]; /// ?????????????_???????????????? char szPatientIdentity[20]; /// ??????? UINT nMode; /// ????? 0:???????,1????????? UINT nStatus; /// ????????? 0: ???,1: ????,2: ???,3: ???? UINT nImageInfoNum; /// ???????????? NET_USERMANAGER_IMAGE_INFO stuImageInfo[6]; /// ????????? UINT nCardType; /// ??????? 1:???,2????_?? }NET_ALARM_HOSPITAL_TALK_CONTROL_INFO; ///@brief ???????????DH_ALARM_BLUETOOTH_EVENT ???????????????? typedef struct tagNET_ALARM_BLUETOOTH_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nStatus; /// ?????? -1:??? 0:???? ????:?????? int nPower; /// ???? int nResult; /// ?????? -1:??? 0:??? ????:??? BYTE byReserved[1024]; /// ??????? }NET_ALARM_BLUETOOTH_INFO; ///@brief ????????????DH_ALARM_SENSITIVE_WORDS ???????????????? typedef struct tagNET_ALARM_SENSITIVE_WORDS_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nAlarmType; /// ?????????????? BYTE byReserved[1024]; /// ??????? }NET_ALARM_SENSITIVE_WORDS_INFO; ///@brief ?????????????? typedef enum tagEM_DISK_NUMBER_CHANGE_TYPE { EM_DISK_CHANGE_TYPE_UNKNOW, ///??? EM_DISK_CHANGE_TYPE_ADD, ///???? EM_DISK_CHANGE_TYPE_DEL, ///??? }EM_DISK_NUMBER_CHANGE_TYPE; ///@brief ?????????????????DH_ALARM_DISK_NUMBER_CHANGE ???????????????? typedef struct tagNET_ALARM_DISK_NUMBER_CHANGE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nPreDiskNumber; /// ??????????????? UINT nCurDiskNumber; /// ?????????? EM_DISK_NUMBER_CHANGE_TYPE emType; /// ?????????????? BYTE byReserved[1020]; /// ??????? }NET_ALARM_DISK_NUMBER_CHANGE_INFO; ///@brief ???????????? typedef enum tagEM_GUARD_EVENT_STATE { EM_GUARD_EVENT_STATE_UNKNOWN = 0, /// ????? EM_GUARD_EVNET_STATE_ONGUARD, /// ???? EM_GUARD_EVENT_STATE_OFFGUARD /// ??? }EM_GUARD_EVENT_STATE; ///@brief ?????????????,DH_ALARM_GUARD_INFO_UNPDATE???????????????? typedef struct tagALARM_GUARD_UPDATE_INFO { DWORD dwSize; EM_GUARD_EVENT_STATE emEventState; /// ???????????? int nIDCount; /// ???????????????ID???? int nIDArray[DH_MAX_GUARD_DETECT_ID_COUNT];/// ???ID???? NET_TIME stuTime; /// ?????????? }ALARM_GUARD_UPDATE_INFO; ///@brief ?????????,DH_ALARM_GUARD_DETECT???????????????? typedef struct tagALARM_GUARD_DETECT_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? int nIndex; /// ?????????????? int nIDCount; /// ???????????????ID???? int nIDArray[DH_MAX_GUARD_DETECT_ID_COUNT]; /// ???ID???? NET_TIME stuTime; /// ?????????? }ALARM_GUARD_DETECT_INFO; ///@brief ????????????DH_ALARM_BANKCARDINSERT???????????????? typedef struct tagALARM_BANKCARDINSERT_INFO { DWORD dwSize; int nAction; /// -1:??? 0:??? 1:?? }ALARM_BANKCARDINSERT_INFO; ///@brief ??????????,stop????????? typedef enum tagNET_RECORD_SAVEFLAG { NET_RECORD_SAVEFLAG_UNKNOWN = 0, ///??????? NET_RECORD_SAVEFLAG_MARK, ///???????????? NET_RECORD_SAVEFLAG_SAVE, ///????????? }NET_RECORD_SAVEFLAG; ///@brief ?????????? DH_ALARM_CARD_RECORD ???????????????? typedef struct tagALARM_CARD_RECORD_INFO { DWORD dwSize; int nAction; /// -1:??? 0:??? 1:?? int nChannelID; /// ?????,??0??? unsigned int nFieldCount; /// ?????? char szFields[MAX_CARD_RECORD_FIELD_NUM][DH_COMMON_STRING_256]; /// ????? NET_RECORD_SAVEFLAG emRecordSaveFlag; /// ??????????,stop?????????,?????? NET_RECORD_SAVEFLAG }ALARM_CARD_RECORD_INFO; ///@brief ????d????? DH_ALARM_CARD_RECORD ???????????????? typedef struct tagALARM_NET_INFO { DWORD dwSize; int nAction; /// -1:??? 0:??? 1:?? int nChannelID; /// ?????,??0??? } ALARM_NET_INFO; ///@brief ?????????? DH_ALARM_VIDEOMOTION_EVENT typedef struct tagALARM_VIDEOMOTION_EVENT_INFO { DWORD dwSize; int nAction; /// -1:??? 0:??? 1:?? int nChannelID; /// ?????,??0??? }ALARM_VIDEOMOTION_EVENT_INFO; ///@brief WideViewRegions??? ??? DH_ALARM_WIDE_VIEW_REGION_EVENT typedef struct tagALARM_WIDE_VIEW_REGION_EVENT_INFO { DWORD dwSize; int nAction; /// -1:??? 0:????(Pusle) }ALARM_WIDE_VIEW_REGION_EVENT_INFO; ///@brief CLIENT_ControlDevice???? DH_CTRL_NOTIFY_EVNENT ???????(????????????) typedef struct tagNET_NOTIFY_EVENT_DATA { DWORD dwSize; LONG lCommand; /// ??????? void* pEventData; /// ???????,??lCommand??????????? }NET_NOTIFY_EVENT_DATA; ///@brief ???????????????????????????? typedef enum tagEM_SENSE_METHOD_UNIT { EM_SENSE_UNIT_UNKOWN =-1, /// ??????? EM_SENSE_TEMP_CENTIGRADE = 0, /// ??????: Centigrade EM_SENSE_TEMP_FAHRENHEIT, /// ????????Fahrenheit EM_SENSE_WIND_SPEED, /// ?????????m/s EM_SENSE_HUMIDITY_PERCENT, /// ??????: Percent }EM_SENSE_METHOD_UNIT; ///@brief ???????? typedef enum tagNET_ALARM_MODE { NET_ALARM_MODE_UNKNOWN = -1, /// ??? NET_ALARM_MODE_DISARMING, /// ???? NET_ALARM_MODE_ARMING, /// ???? NET_ALARM_MODE_FORCEON, /// ?????? NET_ALARM_MODE_PARTARMING, /// ??????? }NET_ALARM_MODE; ///@brief ???????????? typedef enum tagNET_SCENE_MODE { NET_SCENE_MODE_UNKNOWN, /// ??????? NET_SCENE_MODE_OUTDOOR, /// ????? NET_SCENE_MODE_INDOOR, /// ?????? NET_SCENE_MODE_WHOLE, /// ????? NET_SCENE_MODE_RIGHTNOW, /// ?????? NET_SCENE_MODE_SLEEPING, /// ?????? NET_SCENE_MODE_CUSTOM, /// ??????? }NET_SCENE_MODE; ///@brief ??????? typedef enum tagNET_EM_TRIGGER_MODE { NET_EM_TRIGGER_MODE_UNKNOWN = 0, NET_EM_TRIGGER_MODE_NET, /// ???????(????Web) NET_EM_TRIGGER_MODE_KEYBOARD, /// ???? NET_EM_TRIGGER_MODE_REMOTECONTROL, /// ????? }NET_EM_TRIGGER_MODE; ///@brief ??????????????????? typedef struct tagALARM_ARMMODE_CHANGE_INFO { DWORD dwSize; NET_TIME stuTime; /// ???????????????? NET_ALARM_MODE bArm; /// ???????? NET_SCENE_MODE emSceneMode; /// ???? DWORD dwID; /// ID??, ??????????????, emTriggerMode?NET_EM_TRIGGER_MODE_NET??????0 NET_EM_TRIGGER_MODE emTriggerMode; /// ??????? char szNetClientAddr[64]; ///???????IP??????????? UINT nUserCode; ///???ID??0:???????1~20??????????21????????22????????? }ALARM_ARMMODE_CHANGE_INFO; ///@brief ???????? typedef enum { NET_DEFENCEAREA_TYPE_UNKNOWN, /// ?????????? NET_DEFENCEAREA_TYPE_ALARM, /// ?????????? NET_DEFENCEAREA_TYPE_ANALOGALARM, /// ????? }NET_DEFENCEAREA_TYPE; ///@brief ?????????? typedef enum { NET_BYPASS_MODE_UNKNOW, ///????? NET_BYPASS_MODE_BYPASS, ///???? NET_BYPASS_MODE_NORMAL, ///???? NET_BYPASS_MODE_ISOLATED, ///???? }NET_BYPASS_MODE; ///@brief ????????????????? typedef struct tagALARM_BYPASSMODE_CHANGE_INFO { DWORD dwSize; int nChannelID; /// ????? NET_TIME stuTime; /// ???????????????? NET_DEFENCEAREA_TYPE emDefenceType; /// ???????? int nIsExtend; /// ???????(???)????, 1:??????, 0: ???????? NET_BYPASS_MODE emMode; /// ???????? DWORD dwID; /// ID??, ??????????????, emTriggerMode?NET_EM_TRIGGER_MODE_NET??????0 NET_EM_TRIGGER_MODE emTriggerMode; /// ??????? }ALARM_BYPASSMODE_CHANGE_INFO; ///@brief ???????(???DH_URGENCY_ALARM_EX2, ???????DH_URGENCY_ALARM_EX?????????, ????????????????, ??????????????????????????) typedef struct tagALARM_URGENCY_ALARM_EX2 { DWORD dwSize; NET_TIME stuTime; /// ???????????? DWORD nID; /// ????????????????? int nAction; /// 0:???? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szImei[16]; /// ???????????????15???????? UINT nDistance; /// ????????????GPS???????, ????0.1Km char szPlateNumber[64]; /// ??????? char szReplyNumber[16]; /// ?????? char szLine[64]; /// ??????? }ALARM_URGENCY_ALARM_EX2; ///@brief ????????????????(??????????????????,??????????????,???????) typedef struct tagALARM_INPUT_SOURCE_SIGNAL_INFO { DWORD dwSize; int nChannelID; /// ????? int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_INPUT_SOURCE_SIGNAL_INFO; ///@brief ?????? typedef enum tagNET_TEMPERATURE_UNIT { NET_TEMPERATURE_UNIT_UNKNOWN, NET_TEMPERATURE_UNIT_CENTIGRADE, /// ????? NET_TEMPERATURE_UNIT_FAHRENHEIT, /// ????? } NET_TEMPERATURE_UNIT; ///@brief ??????????????????????(???DH_ALARM_ANALOGALARM_EVENT) typedef struct tagALARM_ANALOGALARM_EVENT_INFO { DWORD dwSize; int nChannelID; /// ????? int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ???????????????? NET_SENSE_METHOD emSensorType; /// ?????????? char szName[DH_COMMON_STRING_128]; /// ??????? int nIsValid; /// ???????????,-1:???,0:????,1:???? int nStatus; /// ??????, -1:???,0:????,1:????????(????????), /// 2:???????1,3:???????2,4:???????3,5:???????4, /// 6:???????1,7:???????2,8:???????3,9:???????4 float fValue; /// ???????? NET_TIME stuCollectTime; /// ?????????(UTC) NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? NET_TEMPERATURE_UNIT emTemperatureUnit; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_ANALOGALARM_EVENT_INFO; ///@brief ????????? typedef enum tagNET_ACCESS_CTL_STATUS_TYPE { NET_ACCESS_CTL_STATUS_TYPE_UNKNOWN = 0, NET_ACCESS_CTL_STATUS_TYPE_OPEN, /// ???? NET_ACCESS_CTL_STATUS_TYPE_CLOSE, /// ???? NET_ACCESS_CTL_STATUS_TYPE_ABNORMAL, /// ?? NET_ACCESS_CTL_STATUS_TYPE_FAKELOCKED, /// ???? NET_ACCESS_CTL_STATUS_TYPE_CLOSEALWAYS, /// ???? NET_ACCESS_CTL_STATUS_TYPE_OPENALWAYS, /// ???? NET_ACCESS_CTL_STATUS_TYPE_NORMAL, /// ???? }NET_ACCESS_CTL_STATUS_TYPE; ///@brief ???????? typedef struct tagALARM_ACCESS_CTL_STATUS_INFO { DWORD dwSize; int nDoor; /// ??????? NET_TIME stuTime; /// ???????????? NET_ACCESS_CTL_STATUS_TYPE emStatus; /// ????? char szSerialNumber[256]; /// ?????????????(??????) BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? }ALARM_ACCESS_CTL_STATUS_INFO; ///@brief ????????? typedef enum tagNET_ACCESS_SNAP_TYPE { NET_ACCESS_SNAP_TYPE_UNKNOWN = 0, NET_ACCESS_SNAP_TYPE_CARD, /// ??? NET_ACCESS_SNAP_TYPE_PASSWORD, /// ???? NET_ACCESS_SNAP_TYPE_REMOTE, /// ?????? NET_ACCESS_SNAP_TYPE_BUTTON, /// ?????? NET_ACCESS_SNAP_TYPE_FINGERPRINT, /// ??? NET_ACCESS_SNAP_TYPE_QRCODE, /// ????? NET_ACCESS_SNAP_TYPE_BLUETOOTH, /// ???? NET_ACCESS_SNAP_TYPE_FACE, /// ??? }NET_ACCESS_SNAP_TYPE; ///@brief ???????? typedef struct tagALARM_ACCESS_SNAP_INFO { DWORD dwSize; NET_ACCESS_SNAP_TYPE emType; /// ???? char szCardNO[DH_COMMON_STRING_32]; /// ????, ???????????? char szPassword[DH_COMMON_STRING_64]; /// ????, ????????????? char szFtpUrl[MAX_PATH]; /// ftp??????, ?????? int nImageNum; /// ?????? NET_TIME stuTime; /// ???????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? }ALARM_ACCESS_SNAP_INFO; ///@brief ???????? typedef enum tagEM_ALARM_CLEAR_TYPE { EM_ALARM_CLEAR_TYPE_UNKNOWN = 0, /// ??? EM_ALARM_CLEAR_TYPE_ALL, /// ????? EM_ALARM_CLEAR_TYPE_ALARM_AREA, /// ???????? EM_ALARM_CLEAR_TYPE_ALARM_LOCAL, /// ?????????? } EM_ALARM_CLEAR_TYPE; ///@brief ??????? typedef struct tagALARM_ALARMCLEAR_INFO { DWORD dwSize; int nChannelID; /// ????? NET_TIME stuTime; /// ???????????????? int bEventAction; /// ?????????0??????????,1???????????????,2????????????????; EM_ALARM_CLEAR_TYPE emType; /// ???????? int nAreasCount; /// ???????????? UINT nAreas[64]; /// ????????, ??emType?EM_ALARM_CLEAR_TYPE_ALARM_AREA????? int nZonesCount; /// ???????????? UINT nZones[256]; /// ????????, ??emType?EM_ALARM_CLEAR_TYPE_ALARM_LOCAL????? }ALARM_ALARMCLEAR_INFO; ///@brief CID??? typedef struct tagALARM_CIDEVENT_INFO { DWORD dwSize; NET_TIME stuTime; /// ???????????????? char szCID[DH_COMMON_STRING_32]; /// CID??,????????? ??????????16,???????0~F /// 4??????? + 2??????? + 1?????????? + 3??????? + 2?????? + 3???????? + 1??????? }ALARM_CIDEVENT_INFO; ///@brief ??????????????? typedef enum tagEM_RCEMERGENCY_CALL_TYPE { EM_RCEMERGENCY_CALL_UNKNOWN = 0, EM_RCEMERGENCY_CALL_FIRE, /// ?? EM_RCEMERGENCY_CALL_DURESS, /// ???? EM_RCEMERGENCY_CALL_ROBBER, /// ??? EM_RCEMERGENCY_CALL_MEDICAL, /// ??? EM_RCEMERGENCY_CALL_EMERGENCY, /// ???? EM_RCEMERGENCY_CALL_PANIC, /// ??? }EM_RCEMERGENCY_CALL_TYPE; ///@brief ??????? typedef enum tagEM_RCEMERGENCY_MODE_TYPE { EM_RCEMERGENCY_MODE_UNKNOWN = 0, EM_RCEMERGENCY_MODE_KEYBOARD, /// ???? EM_RCEMERGENCY_MODE_WIRELESS_CONTROL, /// ????? }EM_RCEMERGENCY_MODE_TYPE; ///@brief ??????????????? typedef struct tagALARM_RCEMERGENCY_CALL_INFO { DWORD dwSize; int nAction; /// -1:??? 0:??? 1:?? EM_RCEMERGENCY_CALL_TYPE emType; /// ???????? NET_TIME stuTime; /// ?????????? EM_RCEMERGENCY_MODE_TYPE emMode; /// ??????? DWORD dwID; /// ?????????????????(???emMode????????????????, ????????????, 0???????ID) NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szDelayUploadSeq[128]; /// ????????? char szResvered[1020]; /// ??????? }ALARM_RCEMERGENCY_CALL_INFO; ///@brief ?????????????(???DH_ALARM_OPENDOORGROUP????) typedef struct tagALARM_OPEN_DOOR_GROUP_INFO { DWORD dwSize; int nChannelID; /// ???????(??0???) NET_TIME stuTime; /// ?????? }ALARM_OPEN_DOOR_GROUP_INFO; ///@brief ?????????(???DH_ALARM_FINGER_PRINT????) typedef struct tagALARM_CAPTURE_FINGER_PRINT_INFO { DWORD dwSize; int nChannelID; /// ???????(??0???) NET_TIME stuTime; /// ?????? char szReaderID[DH_COMMON_STRING_32]; /// ???????ID int nPacketLen; /// ???????????????? int nPacketNum; /// ???????????? char* szFingerPrintInfo; /// ???????(??????????nPacketLen*nPacketNum) BOOL bCollectResult; /// ?????? char szCardNo[32]; /// ?????????????? char szUserID[32]; /// ??????????ID }ALARM_CAPTURE_FINGER_PRINT_INFO; ///@brief ?????????? typedef enum __EM_SUBSYSTEM_STATE_TYPE { EM_SUBSYSTEM_STATE_UNKNOWN = 0, /// ??? EM_SUBSYSTEM_STATE_ACTIVE, /// ????? EM_SUBSYSTEM_STATE_INACTIVE, /// ?????? }EM_SUBSYSTEM_STATE_TYPE; ///@brief ???????????? typedef struct tagALARM_SUBSYSTEM_STATE_CHANGE_INFO { DWORD dwSize; int nChannelID; /// ???????(??0???) NET_TIME stuTime; /// ???????????? EM_SUBSYSTEM_STATE_TYPE emState; /// ???????? }ALARM_SUBSYSTEM_STATE_CHANGE_INFO; ///@brief ?????????????? typedef struct tagALARM_BATTERYPOWER_INFO { DWORD dwSize; int nChannel; /// ?????? NET_TIME stuTime; /// ?????? int nPercent; /// ?????????? float fVoltage; /// ???,????:?? BOOL bCharging; /// ????????? true:?????? false:?????? }ALARM_BATTERYPOWER_INFO; ///@brief ????????? typedef struct tagALARM_BELLSTATUS_INFO { DWORD dwSize; int nChannel; /// ????????? NET_TIME stuTime; /// ?????? int nAction; /// 0:??? 1:?? }ALARM_BELLSTATUS_INFO; ///@brief ????????????, ??????????DH_ALARM_DEFENCE_STATE_CHANGE_EVENT typedef struct tagALARM_DEFENCE_STATUS_CHANGE_INFO { DWORD dwSize; int nChannelID; /// ????ID,???????????????(??0???) NET_TIME stuTime; /// ???????????? EM_DEFENCE_STATE_TYPE emStatus; /// ???????????? }ALARM_DEFENCE_STATUS_CHANGE_INFO; ///@brief ????????? typedef struct tagALARM_LOGIN_FAILIUR_INFO { DWORD dwSize; int nAction; /// 0:??? 1:?? unsigned int nSequence; /// ??? char szName[DH_EVENT_NAME_LEN]; /// ?????,????????? char szType[DH_COMMON_STRING_128]; /// ??????? char szAddr[DH_MAX_IPADDR_EX_LEN]; /// ???IP??? int nError; /// ?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_LOGIN_FAILIUR_INFO; ///@brief ???????????? ?????????? DH_ALARM_TICKET_STATISTIC typedef struct tagALARM_TICKET_STATISTIC { DWORD dwSize; NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME stuTime; /// ????????? int nNormalCount; /// ???????? int nDiscountCount; /// ???????? int nSubsidyCount; /// ???????????? int nDriverCount; /// ???????? int nNormalPrice; /// ??????? int nDiscountPrice; /// ??????? int nSubsidyPrice; /// ??????????? }ALARM_TICKET_STATISTIC; #define MAX_ALARMEXT_MODULE_NUM 256 /// ???????????? ///@brief ???????? typedef enum tagNET_BUS_TYPE { NET_BUS_TYPE_UNKNOWN = 0, NET_BUS_TYPE_MBUS, /// M-BUS???? NET_BUS_TYPE_RS485, /// RS-485???? NET_BUS_TYPE_CAN, /// CAN???? NET_BUS_TYPE_NET, /// ??????? }NET_BUS_TYPE; ///@brief ???????????? ?????????? DH_ALARM_MODULE_LOST typedef struct tagALARM_MODULE_LOST_INFO { DWORD dwSize; NET_TIME stuTime; /// ????????? int nSequence; /// ????????????????(??0???) NET_BUS_TYPE emBusType; /// ???????? int nAddr; /// ?????????????? int anAddr[MAX_ALARMEXT_MODULE_NUM];/// ???????????????(??0???) char szDevType[DH_COMMON_STRING_64]; /// ??????? "SmartLock",????????;?????????"AlarmDefence"?????????????? /// "LiftController":?????? BOOL bOnline; /// ???????,???FALSE. false:???????true:???? char szSN[32]; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_MODULE_LOST_INFO; ///@brief PSTN??????? typedef struct tagALARM_PSTN_BREAK_LINE_INFO { DWORD dwSize; int nChannelID; /// ????????(??0???) int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_PSTN_BREAK_LINE_INFO; ///@brief ????????????(???????), ??????????????(??^???????????)????? typedef struct tagALARM_ANALOGPULSE_INFO { DWORD dwSize; int nChannelID; /// ?????????????? NET_TIME stuEventTime; /// ???????????????? NET_SENSE_METHOD emSense; /// ?????????? char szName[DH_COMMON_STRING_128]; /// ?????????? int nStatus; /// ??????, -1:???,0:????,1:????????(????????), /// 2:???????1,3:???????2,4:???????3,5:???????4, /// 6:???????1,7:???????2,8:???????3,9:???????4 float fValue; /// ????????? NET_TIME stuCollectTime; /// ?????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? float fTempture; /// ??? float fHumidity; /// ??? float fVoltage; /// ???????????V?? float fCurrent; /// ????????????A?? float fActivePower; /// ???????????????KW?? float fElmp; /// ???????????????????kWh?? float fEExp; /// ???????????????????kWh?? float fComEp; /// ??????????????????kWh?? float fComEq; /// ?????????????????kWh?? }ALARM_ANALOGPULSE_INFO; ///@brief ????????????????? typedef enum tagNET_MISSION_CONFIRM_TYPE { NET_MISSION_CONFIRM_UNKNOWN = 0 , ///??? NET_MISSION_CONFIRM_YES , ///?????? NET_MISSION_CONFIRM_NO , ///?????? }NET_MISSION_CONFIRM_TYPE; ///@brief ??????????(???????DH_ALARM_MISSION_CONFIRM) typedef struct tagALARM_MISSION_CONFIRM_INFO { DWORD dwSize; char szTitle[DH_COMMON_STRING_256]; /// ???????? char szMissionID[DH_COMMON_STRING_256];/// ????ID char szComment[DH_COMMON_STRING_256]; /// ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_MISSION_CONFIRM_TYPE emConfirmType; ///????????????????? }ALARM_MISSION_CONFIRM_INFO; ///@brief ????????????? typedef enum tagNET_CLUSTER_GROUP_TYPE { NET_CLUSTER_GROUP_UNKNOWN, /// ??? NET_CLUSTER_GROUP_IDLE, /// ???? NET_CLUSTER_GROUP_MASTER, /// ???? NET_CLUSTER_GROUP_SLAVE, /// ???? }NET_CLUSTER_GROUP_TYPE; ///@brief ????????, ?????????? DH_ALARM_NODE_ACTIVE typedef struct tagALARM_NODE_ACTIVE_INFO { DWORD dwSize; int nChannelID; /// ?????????? NET_TIME stuTime; /// ?????????? NET_CLUSTER_GROUP_TYPE emGroup; /// ???????????? }ALARM_NODE_ACTIVE_INFO; ///@brief ???????? typedef struct tagNET_CLUSTER_STATE_INFO { DWORD dwSize; NET_CLUSTER_GROUP_TYPE emGroup; /// ???????????? }NET_CLUSTER_STATE_INFO; ///@brief ??????????? typedef enum tagEM_ALARM_VIDEO_STATIC_MODE { EM_ALARM_VIDEO_STATIC_MODE_UNKNOWN, /// ??? EM_ALARM_VIDEO_STATIC_MODE_INDOOR, /// ?????? "Indoor" EM_ALARM_VIDEO_STATIC_MODE_OUTDOOR, /// ?????? "Outdoor" }EM_ALARM_VIDEO_STATIC_MODE; ///@brief ????????????, ?????????? DH_ALARM_VIDEO_STATIC typedef struct tagALARM_VIDEO_STATIC_INFO { DWORD dwSize; DWORD dwAction; /// ???????, 0:Start, 1:Stop EM_ALARM_VIDEO_STATIC_MODE emMode; /// ??????????? int nChannelID; /// ???????????????? }ALARM_VIDEO_STATIC_INFO; ///@brief ???????????????????, ?????????? DH_ALARM_REGISTER_REONLINE typedef struct tagALARM_REGISTER_REONLINE_INFO { DWORD dwSize; }ALARM_REGISTER_REONLINE_INFO; ///@brief ?????? typedef enum tagEM_ALARM_ISCSI_STATUS { EM_ALARM_ISCSI_STATUS_UNKNOWN, /// ??? EM_ALARM_ISCSI_STATUS_CONNECTED, /// ?????? EM_ALARM_ISCSI_STATUS_NOT_CONNECTED, /// ?????? EM_ALARM_ISCSI_STATUS_CONNECT_FAILED, /// ??????? EM_ALARM_ISCSI_STATUS_AUTHENTICATION_FAILED, /// ?????? EM_ALARM_ISCSI_STATUS_CONNECT_TIMEOUT, /// ?????? EM_ALARM_ISCSI_STATUS_NOT_EXIST, /// ????????? }EM_ALARM_ISCSI_STATUS; ///@brief ISCSI??????, ?????????? DH_ALARM_ISCSI_STATUS typedef struct tagALARM_ISCSI_STATUS_INFO { DWORD dwSize; int nIndex; /// ???ISCSI????????? char szAddress[DH_COMMON_STRING_32]; /// ????????? char szName[DH_COMMON_STRING_64]; /// Target???? char szUserName[DH_COMMON_STRING_64]; /// ????? EM_ALARM_ISCSI_STATUS emStatus; /// ?????? }ALARM_ISCSI_STATUS_INFO; ///@brief SCADA???? typedef enum tagEM_ALARM_SCADA_DEV_TYPE { EM_ALARM_SCADA_DEV_UNKNOWN, /// ??? EM_ALARM_SCADA_DEV_LEAKAGE, /// ????? EM_ALARM_SCADA_DEV_THCONTROLLER, /// ???? EM_ALARM_SCADA_DEV_UPS, /// UPS EM_ALARM_SCADA_DEV_SWITCH, /// ?????? EM_ALARM_SCADA_DEV_ELECTRICMETER, /// ?????? EM_ALARM_SCADA_DEV_COMMERCIALPOWER, /// ?????? EM_ALARM_SCADA_DEV_BATTERY, /// ???? EM_ALARM_SCADA_DEV_AIRCONDITION, /// ??? EM_ALARM_SCADA_DEV_ACCESS, /// ??? EM_ALARM_SCADA_DEV_SMOKINGSENSOR, /// ??? EM_ALARM_SCADA_DEV_INFRARED, /// ???? EM_ALARM_SCADA_DEV_CHEMICAL, /// ???? EM_ALARM_SCADA_DEV_PERIMETER, /// ??? EM_ALARM_SCADA_DEV_DOORMAGNETISM, /// ??? EM_ALARM_SCADA_DEV_DISTANCE, /// ??? EM_ALARM_SCADA_DEV_WINDSENSOR, /// ???? EM_ALARM_SCADA_DEV_LOCATION, /// ???? EM_ALARM_SCADA_DEV_ATMOSPHERE, /// ???? EM_ALARM_SCADA_DEV_SOLARPOWER, /// ????? }EM_ALARM_SCADA_DEV_TYPE; ///@brief ????? typedef enum tagEM_SCADA_DEVICE_STATUS { EM_SCADA_DEVICE_STATUS_KNOWN = -1, /// ??? EM_SCADA_DEVICE_STATUS_NORMAL, /// ???? EM_SCADA_DEVICE_STATUS_ALARM, /// ???? EM_SCADA_DEVICE_STATUS_OFFLINE, /// ???? }EM_SCADA_DEVICE_STATUS; ///@brief ???????????????, ?????????? DH_ALARM_SCADA_DEV_ALARM typedef struct tagALARM_SCADA_DEV_INFO { DWORD dwSize; int nChannel; /// ????? NET_TIME stuTime; /// ???????????? char szDevName[DH_COMMON_STRING_64]; /// ??????????? char szDesc[DH_COMMON_STRING_256]; /// ???????? int nAction; /// -1:??? 0:???? 1:??? 2:?? char szID[DH_COMMON_STRING_32]; /// ????ID, ?????16??? char szSensorID[DH_COMMON_STRING_32]; /// ???ID, ?????16??? char szDevID[DH_COMMON_STRING_32]; /// ????????ID, ?????16??? char szPointName[DH_COMMON_STRING_64]; /// ??????,??????? int nAlarmFlag; /// 0:???, 1:???? EM_ALARM_SCADA_DEV_TYPE emDevType; /// ??????? EM_SCADA_DEVICE_STATUS emDevStatus; /// ????? }ALARM_SCADA_DEV_INFO; ///@brief ????ACC???????, ?????????? DH_ALARM_VEHICLE_ACC typedef struct tagALARM_VEHICLE_ACC_INFO { DWORD dwSize; int nACCStatus; /// ACC??, 0:????, 1:????, 2:??? int nAction; /// ???????, 0:Start, 1:Stop NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? int nConstantElectricStatus; /// ??????, 0:???, 1:????, 2:??? NET_TIME_EX stuTime; /// ???????????? unsigned int nTotalMileage; /// ????????,????:??,??nACCStatus?2?,??ntotalMileage??????? NET_TIME_EX stuStartTime; /// nACCStatus?1??????? NET_GPS_STATUS_INFO stuStartGPS; /// nACCStatus?1????GPS??? }ALARM_VEHICLE_ACC_INFO; typedef NET_ACCESS_CTL_STATUS_TYPE NET_ACCESS_LOCK_STATUS_TYPE; ///@brief ?????????, ?????????? DH_ALARM_ACCESS_LOCK_STATUS typedef struct tagALARM_ACCESS_LOCK_STATUS_INFO { DWORD dwSize; int nChannel; /// ???????(??0???) NET_TIME stuTime; /// ???????????? NET_ACCESS_LOCK_STATUS_TYPE emLockStatus; /// ?????? }ALARM_ACCESS_LOCK_STATUS_INFO; ///@brief ??????? typedef enum tagEM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE { EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE_UNKNOWN, /// ??? EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE_ORGANIZATION, /// ?????????? EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE_SEAL, /// ???????? EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE_EXCLUSIVE, /// ??????? EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE_GATHER, /// ?????????? EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE_EVEN, /// ???????? }EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE; ///@brief ??????????, ?????????? DH_ALARM_FINACE_SCHEME typedef struct tagALARM_FINACE_SCHEME_INFO { DWORD dwSize; int nChannel; /// ???????? char szBusinessSeverID[DH_COMMON_STRING_64]; /// ???? EM_ALARM_FINACE_SCHEME_BUSINESS_SEVER_TYPE emBusinessSeverType; /// ??????? NET_TIME stuFinaceSchemeTime; /// ?????????? NET_TIME stuSchemeStartTime; /// ??????????? NET_TIME stuSchemeEndTime; /// ?????????? char szProductName[DH_COMMON_STRING_128]; /// ?????????? char szCardNo[DH_COMMON_STRING_64]; /// ???????? char szPersonID[DH_COMMON_STRING_64]; /// ?????? char szPersonName[DH_COMMON_STRING_64]; /// ??????? char szOrgNo[DH_COMMON_STRING_64]; /// ????????? char szStuffID[DH_COMMON_STRING_64]; /// ??????????? NET_TIME stuRecStartTime; /// ??????? NET_TIME stuRecEndTime; /// ????????? }ALARM_FINACE_SCHEME_INFO; ////////////////////////////////////////////////////////////////////// ///@brief ?????????????(insert)??????? typedef struct tagNET_CTRL_RECORDSET_IN { DWORD dwSize; EM_NET_RECORD_TYPE emType; /// ???????????? void* pBuf; /// ????????????,???EM_NET_RECORD_TYPE????????????????. int nBufLen; /// ???????????????,?????????????????????????? }NET_CTRL_RECORDSET_INSERT_IN; ///@brief ?????????????(insert)??????? typedef struct tagNET_CTRL_RECORDSET_OUT { DWORD dwSize; int nRecNo; /// ??????(????insert????????) }NET_CTRL_RECORDSET_INSERT_OUT; ///@brief ?????????????(insert)???? typedef struct tagNET_CTRL_RECORDSET_INSERT_PARAM { DWORD dwSize; NET_CTRL_RECORDSET_INSERT_IN stuCtrlRecordSetInfo; /// ????????(???????) NET_CTRL_RECORDSET_INSERT_OUT stuCtrlRecordSetResult; /// ????????(???????) }NET_CTRL_RECORDSET_INSERT_PARAM; ///@brief ???????????????? typedef struct tagNET_CTRL_RECORDSET_REMOVEEX_PARAM { DWORD dwSize; /// ??????? BOOL bTimeEnable; /// ??????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? } NET_CTRL_RECORDSET_REMOVEEX_PARAM; ///@brief ????????????? typedef struct tagNET_CTRL_RECORDSET_PARAM { DWORD dwSize; EM_NET_RECORD_TYPE emType; /// ???????????? void* pBuf; /// ????\????\???\?????,?????????????,??? EM_NET_RECORD_TYPE ???,??????????????????nBufLen /// ????,?????????????????(?????int*), ???????????NET_CTRL_RECORDSET_REMOVEEX_PARAM, ????????????, ?????nBufLen int nBufLen; /// ???????????????,?????????????????????????? }NET_CTRL_RECORDSET_PARAM; ///@brief ?????? typedef struct tagDH_TSECT { int bEnable; /// ?????????????,?????????????,????????????????????????????????????????????????????? /// ????????????????, ?????? /// ??????????????, ???????1???????0???????? int iBeginHour; int iBeginMin; int iBeginSec; int iEndHour; int iEndMin; int iEndSec; } DH_TSECT, *LPDH_TSECT, NET_TSECT; ///@brief ??????? typedef struct tagNET_CFG_TIME_SCHEDULE { BOOL bEnableHoliday; /// ???????????????????????????????????????TRUE??????????????? DH_TSECT stuTimeSection[DH_N_SCHEDULE_TSECT][DH_N_REC_TSECT]; /// ?????7??????????7????8???????????????????6?????? } NET_CFG_TIME_SCHEDULE; ///@brief ????????? typedef enum tagEM_VIDEO_PLAY_MODE_TYPE { EM_VIDEO_PLAY_MODE_TYPE_UNKNOWN, /// ??? EM_VIDEO_PLAY_MODE_TYPE_ONCE, /// ??????? EM_VIDEO_PLAY_MODE_TYPE_REPEAT, /// ??????? EM_VIDEO_PLAY_MODE_TYPE_ALONE, /// ?????????????? }EM_VIDEO_PLAY_MODE_TYPE; #define MAX_DELIVERY_FILE_NUM 128 /// ????????????? #define DELIVERY_FILE_URL_LEN 128 /// ????????URL???? #define MAX_VIDEO_FILE_LIST_NUM 20 /// ?????????? ///@brief ??????????? typedef enum tagEM_DELIVERY_FILE_TYPE { EM_DELIVERY_FILE_TYPE_UNKNOWN, /// ??? EM_DELIVERY_FILE_TYPE_VIDEO, /// ??? EM_DELIVERY_FILE_TYPE_IMAGE, /// ?? EM_DELIVERY_FILE_TYPE_AUDIO, /// ??? EM_DELIVERY_FILE_TYPE_TXT, /// ??? }EM_DELIVERY_FILE_TYPE; ///@brief ??????????? typedef enum tagEM_PLAY_WITH_MODE { EM_PLAY_WITH_MODE_UNKNOWN, /// ??? EM_PLAY_WITH_MODE_RECOGNITION, /// ????? EM_PLAY_WITH_MODE_INFORMATION_RELEASE, /// ????????? EM_PLAY_WITH_MODE_MAIN_INTERFACE, /// ???????? } EM_PLAY_WITH_MODE; ///@brief ????????? typedef struct tagNET_DELIVERY_FILE_INFO { EM_DELIVERY_FILE_TYPE emFileType; /// ??????? char szFileURL[DELIVERY_FILE_URL_LEN]; /// ??????????? int nImageSustain; /// ??????????????????? (emFileType?EM_DELIVERY_FILE_TYPE_IMAGE??????????) EM_PLAY_WITH_MODE emPlayWithMode; /// ??????????? char szFileURLEx[512]; /// NET_OUT_GET_ADVERTIMENT_CAPS??bSupport?true????????????????szFileURL??? BYTE byReserved[508]; /// ??????? }NET_DELIVERY_FILE_INFO; ///@brief ????????? typedef struct tagNET_DELIVERY_FILE_INFOEX { EM_DELIVERY_FILE_TYPE emFileType; /// ??????? char szFileURL[DELIVERY_FILE_URL_LEN]; /// ??????????? int nImageSustain; /// ??????????????????? (emFileType?EM_DELIVERY_FILE_TYPE_IMAGE??????????) EM_PLAY_WITH_MODE emPlayWithMode; /// ??????????? char szFileURLEx[512]; /// NET_OUT_GET_ADVERTIMENT_CAPS??bSupport?true????????????????szFileURL??? NET_CFG_TIME_SCHEDULE stuTimeSection; ///?????????? int nSize; /// ??????? int nID; /// ?????? char szTXTContents[1024]; /// ?????? }NET_DELIVERY_FILE_INFOEX; ///@brief ???????? typedef enum tagEM_VIDEO_PLAY_OPERATE_TYPE { EM_VIDEO_PLAY_OPERATE_TYPE_UNKNOWN, /// ??? EM_VIDEO_PLAY_OPERATE_TYPE_REPLACE, /// ??I EM_VIDEO_PLAY_OPERATE_TYPE_ADD, /// ???? EM_VIDEO_PLAY_OPERATE_TYPE_REMOVE, /// ??? EM_VIDEO_PLAY_OPERATE_TYPE_CLEAR, /// ??? }EM_VIDEO_PLAY_OPERATE_TYPE; ///@brief ??????????????????????? typedef struct tagNET_CTRL_DELIVERY_FILE { DWORD dwSize; /// ??????? int nPort; /// ???????? EM_VIDEO_PLAY_MODE_TYPE emPlayMode; /// ???????? NET_TIME stuStartPlayTime; /// ??????????? NET_TIME stuStopPlayTime; /// ????????????emPlayMode?EM_VIDEO_PLAY_MODE_TYPE_REPEAT?????????? int nFileCount; /// ??????????? NET_DELIVERY_FILE_INFO stuFileInfo[MAX_DELIVERY_FILE_NUM]; /// ??????????(??????stuFileInfoEx?????????) /// ???nFileCountEx???0????????stuFileInfoEx??stuFileInfo????? EM_VIDEO_PLAY_OPERATE_TYPE emOperateType; /// ???????????????????????EM_VIDEO_PLAY_OPERATE_TYPE_REPLACE int nFileCountEx; /// ??????????? NET_DELIVERY_FILE_INFOEX stuFileInfoEx[MAX_DELIVERY_FILE_NUM]; /// ?????????? int nNumber; /// ???????????,?????????????????????????????? NET_CFG_TIME_SCHEDULE stuTimeSection; /// ???????? BOOL bEnable; /// ??????? char szName[128]; /// ??????? }NET_CTRL_DELIVERY_FILE; ///@brief ????????? typedef struct tagNET_DELIVERY_FILE_BYCAR_INFO { EM_DELIVERY_FILE_TYPE emFileType; /// ??????? char szFileURL[DELIVERY_FILE_URL_LEN]; /// ??????????? int nImageSustain; /// ??????????????????? (emFileType?EM_DELIVERY_FILE_TYPE_IMAGE??????????) NET_TIME stuStartPlayTime; /// ??????????? NET_TIME stuStopPlayTime; /// ????????????emPlayMode?EM_VIDEO_PLAY_MODE_TYPE_REPEAT?????????? BYTE byReserved[1024]; /// ??????? }NET_DELIVERY_FILE_BYCAR_INFO; ///@brief ???????????????????????, ???????????????????? typedef struct tagNET_CTRL_DELIVERY_FILE_BYCAR { DWORD dwSize; /// ??????? int nPort; /// ???????? EM_VIDEO_PLAY_MODE_TYPE emPlayMode; /// ???????? int nFileCount; /// ??????????? NET_DELIVERY_FILE_BYCAR_INFO stuFileInfo[MAX_DELIVERY_FILE_NUM]; /// ?????????? }NET_CTRL_DELIVERY_FILE_BYCAR; ///@brief ???? typedef enum tagNET_ACCESSCTLCARD_STATE { NET_ACCESSCTLCARD_STATE_UNKNOWN = -1, NET_ACCESSCTLCARD_STATE_NORMAL = 0, /// ???? NET_ACCESSCTLCARD_STATE_LOSE = 0x01, /// ??? NET_ACCESSCTLCARD_STATE_LOGOFF = 0x02, /// ??? NET_ACCESSCTLCARD_STATE_FREEZE = 0x04, /// ???? NET_ACCESSCTLCARD_STATE_ARREARAGE = 0x08, /// ??? NET_ACCESSCTLCARD_STATE_OVERDUE = 0x10, /// ???? NET_ACCESSCTLCARD_STATE_PREARREARAGE = 0x20, /// ????(??????????,???????????) }NET_ACCESSCTLCARD_STATE; ///@brief ?????? typedef enum tagNET_ACCESSCTLCARD_TYPE { NET_ACCESSCTLCARD_TYPE_UNKNOWN = -1, NET_ACCESSCTLCARD_TYPE_GENERAL, /// ??? NET_ACCESSCTLCARD_TYPE_VIP, /// VIP?? NET_ACCESSCTLCARD_TYPE_GUEST, /// ?????? NET_ACCESSCTLCARD_TYPE_PATROL, /// ???? NET_ACCESSCTLCARD_TYPE_BLACKLIST, /// ????????? NET_ACCESSCTLCARD_TYPE_CORCE, /// ????? NET_ACCESSCTLCARD_TYPE_POLLING, /// ??? NET_ACCESSCTLCARD_TYPE_GB_CUSTOM1, /// ?????????1??,????????? NET_ACCESSCTLCARD_TYPE_GB_CUSTOM2, /// ?????????2??,????????? NET_ACCESSCTLCARD_TYPE_TEMPORARY_PERSON = 0x09, /// ????????????????? NET_ACCESSCTLCARD_TYPE_INVENTORY_PERSON, /// ????????????????? NET_ACCESSCTLCARD_TYPE_INVENTORY_DIRECTOR, /// ????????????????? NET_ACCESSCTLCARD_TYPE_SECURITY_GUARD, /// ?????????????????? NET_ACCESSCTLCARD_TYPE_SECURITYGUARD_DIRECTOR, /// ?????????????????? NET_ACCESSCTLCARD_TYPE_STORE_KEEPER, /// ??????????????? NET_ACCESSCTLCARD_TYPE_STORE_DIRECTOR, /// ???????????????? NET_ACCESSCTLCARD_TYPE_ESCORT_PERSON, /// ????????????????? NET_ACCESSCTLCARD_TYPE_REPAIR_PERSON, /// ????????????????? NET_ACCESSCTLCARD_TYPE_INSPECTOR = 0x12, /// ????????????????? NET_ACCESSCTLCARD_TYPE_SHENZHENLINK = 0x13, /// ????????? NET_ACCESSCTLCARD_TYPE_MOTHERCARD = 0xff, /// ??? }NET_ACCESSCTLCARD_TYPE; #define DH_MAX_DOOR_NUM 32 /// ?????????????? #define DH_MAX_TIMESECTION_NUM 32 /// ?????????????? #define DH_MAX_CARDNAME_LEN 64 /// ????????????? #define DH_MAX_CARDNO_LEN 32 /// ??????????? #define DH_MAX_USERID_LEN 32 /// ????????ID???? #define DH_MAX_IC_LEN 32 /// ??????? #define DH_MAX_QRCODE_LEN 128 /// QRCode ???? ///@brief ???????????????????? typedef struct tagNET_ACCESSCTLCARD_FINGERPRINT_PACKET { DWORD dwSize; int nLength; /// ?????????????,??????? int nCount; /// ?????? char* pPacketData; /// ????????????????????????g???????? nLength*nCount }NET_ACCESSCTLCARD_FINGERPRINT_PACKET; ///@brief ????????????????????????????? typedef struct tagNET_ACCESSCTLCARD_FINGERPRINT_PACKET_EX { int nLength; /// ?????????????,??????? int nCount; /// ?????? char* pPacketData; /// ????????????, ??????????,?????????nLength * nCount int nPacketLen; /// pPacketData ?????????????????????? int nRealPacketLen; /// ??????????????????? int nDuressIndex; /// ???????????????1~nCount BYTE byReverseed[1020]; ///???????? }NET_ACCESSCTLCARD_FINGERPRINT_PACKET_EX; #define MAX_REPEATENTERROUTE_NUM 12 ///??????????? ///@brief ????? typedef enum tagEM_HAT_STYLE { EM_HAT_UNKNOWN, /// ??? EM_HAT_ORDINARY, /// ?????? EM_HAT_HELMET, /// ??? EM_HAT_SAFETYHAT, /// ???? EM_HAT_EAVELESS, /// ????? EM_HAT_PEAKEDCAP, /// ???? EM_HAT_FISHERMANHAT, /// ???? EM_HAT_NONE, /// ????? } EM_HAT_STYLE; ///@brief ??????????? typedef enum tagEM_UNIFIED_COLOR_TYPE { EM_UNIFIED_COLOR_TRANSPARENT = -1, /// ??? EM_UNIFIED_COLOR_UNKNOWN, /// ??? EM_UNIFIED_COLOR_WHITE, /// ??? EM_UNIFIED_COLOR_ORANGE, /// ??? EM_UNIFIED_COLOR_PINK, /// ??? EM_UNIFIED_COLOR_BLACK, /// ??? EM_UNIFIED_COLOR_RED, /// ??? EM_UNIFIED_COLOR_YELLOW, /// ??? EM_UNIFIED_COLOR_GRAY, /// ??? EM_UNIFIED_COLOR_BLUE, /// ??? EM_UNIFIED_COLOR_GREEN, /// ??? EM_UNIFIED_COLOR_PURPLE, /// ??? EM_UNIFIED_COLOR_BROWN, /// ??? }EM_UNIFIED_COLOR_TYPE; ///@brief ??? typedef enum tagNET_ACCESSCTLCARD_SEX { NET_ACCESSCTLCARD_SEX_UNKNOWN, NET_ACCESSCTLCARD_SEX_MALE, /// ?? NET_ACCESSCTLCARD_SEX_FEMALE, /// ? }NET_ACCESSCTLCARD_SEX; ///@brief ?????? typedef enum tagNET_ACCESSCTLCARD_AUTHORITY { NET_ACCESSCTLCARD_AUTHORITY_UNKNOWN, /// ??? NET_ACCESSCTLCARD_AUTHORITY_ADMINISTRATORS, /// ????? NET_ACCESSCTLCARD_AUTHORITY_CUSTOMER, /// ?????? }NET_ACCESSCTLCARD_AUTHORITY; ///@brief ???????????? typedef struct tagNET_FLOORS_INFO { int nFloorNumEx2; /// ??????????????????? char szFloorEx[256][8]; /// ????(???????)???????256?????????????999 BYTE byReserved[512]; /// ??????? }NET_FLOORS_INFO; ///@brief ??????? typedef enum tagEM_TEST_ITEMS { EM_TEST_ITEMS_UNKNOWN = -1, /// ??? EM_TEST_ITEMS_OTHER, /// ??????? EM_TEST_ITEMS_HAND_TEST, /// ????????????? EM_TEST_ITEMS_TWOFEET_TEST, /// ???????????? EM_TEST_ITEMS_HANDTWOFEET_TEST, /// ????????????????? EM_TEST_ITEMS_NONE /// ??????? }EM_TEST_ITEMS; ///@brief ?????? typedef enum tagEM_ESD_RESULT { EM_ESD_RESULT_UNKNOWN = -1, /// ??? EM_ESD_RESULT_OTHER_ABERRANT, /// ?????? EM_ESD_RESULT_TEST_PASS, /// ??????? EM_ESD_RESULT_HAND_TEST_FAIL, /// ?????????? EM_ESD_RESULT_LEFTFOOT_TEST_FAIL, /// ??????????? EM_ESD_RESULT_RIGHTFOOT_TEST_FAIL, /// ??????????? EM_ESD_RESULT_FOOT_TEST_FAIL, /// ??????????? EM_ESD_RESULT_TEST_FAIL /// ???????????? }EM_ESD_RESULT; ///@brief ESD????????? typedef struct tagNET_TEST_RESULT { UINT nHandValue; /// k????????????? UINT nLeftFootValue; /// k????????????? UINT nRightFootValue; /// k????????????? EM_ESD_RESULT emEsdResult; /// ?????? BYTE bReserved[128]; /// ?????? }NET_TEST_RESULT; ///@brief ????????? typedef enum tagEM_GREENCNHEALTH_STATUS { EM_GREENCNHEALTH_STATUS_UNKNOWN = 0, /// ??? EM_GREENCNHEALTH_STATUS_GREEN, /// ???? EM_GREENCNHEALTH_STATUS_YELLOW, /// ???? EM_GREENCNHEALTH_STATUS_RED, /// ???? EM_GREENCNHEALTH_STATUS_INVALID, /// ???? }EM_GREENCNHEALTH_STATUS; ///@brief ?????????? typedef enum tagEM_ALLOW_PERMIT_FLAG { EM_ALLOW_PERMIT_FLAG_UNKNOWN = 0, /// ??? EM_ALLOW_PERMIT_FLAG_NO, /// ??????????? EM_ALLOW_PERMIT_FLAG_EFFECTIVE, /// ???????????? EM_ALLOW_PERMIT_FLAG_INVALID, /// ???????????? }EM_ALLOW_PERMIT_FLAG; ///@brief ?????????????? typedef enum tagEM_RENT_STATE { EM_RENT_STATE_UNKNOWN = 0, /// ??? EM_RENT_STATE_NORMAL_PAYMENT, /// ??????? EM_RENT_STATE_0_TO_3_MONTHS_IN_ARREARS, /// ???0~3???? EM_RENT_STATE_3_TO_6_MONTHS_IN_ARREARS, /// ???3~6???? EM_RENT_STATE_6_TO_12_MONTHS_IN_ARREARS, /// ???6~12???? EM_RENT_STATE_MORE_THAN_12_MONTHS_IN_ARREARS, /// ???12???????? EM_RENT_STATE_TEMPORARY_VISITOR, /// ?????? } EM_RENT_STATE; ///@brief ????????????? typedef struct tagNET_RECORDSET_ACCESS_CTL_CARD { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? char szUserID[DH_MAX_USERID_LEN]; /// ???ID, ????????? NET_ACCESSCTLCARD_STATE emStatus; /// ???? NET_ACCESSCTLCARD_TYPE emType; /// ?????? char szPsw[DH_MAX_CARDPWD_LEN]; /// ?????? int nDoorNum; /// ???????????; int sznDoors[DH_MAX_DOOR_NUM]; /// ???????????,??CFG_CMD_ACCESS_EVENT????????????? int nTimeSectionNum; /// ????????????????? int sznTimeSectionNo[DH_MAX_TIMESECTION_NUM]; /// ????????????,??CFG_ACCESS_TIMESCHEDULE_INFO?????????? int nUserTime; /// ??????,??????????????? NET_TIME stuValidStartTime; /// ?????????, ?????????????? NET_TIME stuValidEndTime; /// ??????????, ?????????????? BOOL bIsValid; /// ???????,TRUE????;FALSE???? NET_ACCESSCTLCARD_FINGERPRINT_PACKET stuFingerPrintInfo;/// ???????????????????????????????? stuFingerPrintInfoEx BOOL bFirstEnter; /// ???????????? char szCardName[DH_MAX_CARDNAME_LEN]; /// ?????? char szVTOPosition[DH_COMMON_STRING_64]; /// ???????????? BOOL bHandicap; /// ????????????? BOOL bEnableExtended; /// ??????? stuFingerPrintInfoEx NET_ACCESSCTLCARD_FINGERPRINT_PACKET_EX stuFingerPrintInfoEx; /// ??????? int nFaceDataNum; /// ????????????????20 char szFaceData[MAX_FACE_DATA_NUM][MAX_FACE_DATA_LEN]; /// ?????????? char szDynamicCheckCode[MAX_COMMON_STRING_16]; /// ????????? /// VTO????????????????????????????????????????????????????IC????????????VTO?????????????????????????????????????????? /// ????????????????????????? int nRepeatEnterRouteNum; /// ??????????? int arRepeatEnterRoute[MAX_REPEATENTERROUTE_NUM]; /// ??????? int nRepeatEnterRouteTimeout; /// ????????? BOOL bNewDoor; /// ????????????????????TRUE??????nNewDoorNum??nNewDoors?????????????? int nNewDoorNum; /// ???????????; int nNewDoors[MAX_ACCESSDOOR_NUM]; /// ???????????,??CFG_CMD_ACCESS_EVENT????????????? int nNewTimeSectionNum; /// ????????????????? int nNewTimeSectionNo[MAX_ACCESSDOOR_NUM]; /// ????????????,??CFG_ACCESS_TIMESCHEDULE_INFO?????????? char szCitizenIDNo[MAX_COMMON_STRING_32]; /// ??????? int nSpecialDaysScheduleNum; /// ????????????? int arSpecialDaysSchedule[MAX_ACCESSDOOR_NUM]; /// ????????? UINT nUserType; /// ???????, 0 ??????, 1 ?????????? int nFloorNum; /// ????????????? char szFloorNo[MAX_ACCESS_FLOOR_NUM][DH_COMMON_STRING_4]; /// ???? char szSection[MAX_COMMON_STRING_64]; /// ???????? int nScore; /// ??????? char szCompanyName[MAX_COMPANY_NAME_LEN]; /// ???????? UINT nSectionID; /// ????ID NET_ACCESSCTLCARD_SEX emSex; /// ??? char szRole[MAX_COMMON_STRING_32]; /// ??? char szProjectNo[MAX_COMMON_STRING_32]; /// ???ID char szProjectName[MAX_COMMON_STRING_64]; /// ??????? char szBuilderName[MAX_COMMON_STRING_64]; /// ?????????? char szBuilderID[MAX_COMMON_STRING_32]; /// ???????ID char szBuilderType[MAX_COMMON_STRING_32]; /// ??????????? char szBuilderTypeID[MAX_COMMON_STRING_8]; /// ??????????ID char szPictureID[MAX_COMMON_STRING_64]; /// ??????ID char szContractID[MAX_COMMON_STRING_16]; /// ???????????? char szWorkerTypeID[MAX_COMMON_STRING_8]; /// ????ID char szWorkerTypeName[MAX_COMMON_STRING_32]; /// ???????? BOOL bPersonStatus; /// ?????, TRUE:????, FALSE:???? NET_ACCESSCTLCARD_AUTHORITY emAuthority; /// ?????? char szCompanionName[120]; /// ????????? char szCompanionCompany[200]; /// ???????? NET_TIME stuTmpAuthBeginTime; /// ????????????,??????????????????????????????????????? NET_TIME stuTmpAuthEndTime; /// ?????????????,??????????????????????????????????????? BOOL bFloorNoExValid; /// ??????? szFloorNoEx ??????? int nFloorNumEx; /// ???????????????? char szFloorNoEx[512][DH_COMMON_STRING_4]; /// ??????? char szSubUserID[32]; /// ???ID char szPhoneNumber[32]; /// ?????????? char szPhotoPath[256]; /// ???????????ftp??????? char szCause[64]; /// ??????? char szCompanionCard[32]; /// ??????????? char szCitizenAddress[128]; /// ?????? NET_TIME stuBirthDay; /// ????????????????????? BOOL bFloorNoEx2Valid; /// stuFloors2 ??????? NET_FLOORS_INFO* pstuFloorsEx2; /// ????????????? char szDefaultFloor[8]; /// ???????????????) int nUserTimeSectionNum; /// ??????????????? char szUserTimeSections[6][20]; /// ?????????????????????????????6?????? char szWorkClass[256]; /// ??????? NET_TIME stuStartTimeInPeriodOfValidity; /// ????????????????? EM_TEST_ITEMS emTestItems; /// ??????? UINT nAuthOverdueTime; /// ??????????????????: ??? EM_GREENCNHEALTH_STATUS emGreenCNHealthStatus; /// ????????? EM_ALLOW_PERMIT_FLAG emAllowPermitFlag; /// ?????????? EM_RENT_STATE emRentState; /// ?????????????? int nConsumptionTimeSectionsNum; /// ??????????? char szConsumptionTimeSections[42][34]; /// ????????.??????6?????????6?????????????7??; /// ??????????"???? ?:??:??-?:??:?? ???????? ????????? ????????" }NET_RECORDSET_ACCESS_CTL_CARD; ///@brief ?????????????? typedef struct tagNET_RECORDSET_ACCESS_CTL_PWD { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? char szUserID[DH_MAX_USERID_LEN]; /// ???ID, ????????? char szDoorOpenPwd[DH_MAX_CARDPWD_LEN]; /// ???????? char szAlarmPwd[DH_MAX_CARDPWD_LEN]; /// ???????? int nDoorNum; /// ???????????? int sznDoors[DH_MAX_DOOR_NUM]; /// ???????????,??CFG_CMD_ACCESS_EVENT????CFG_ACCESS_EVENT_INFO?????????? char szVTOPosition[DH_COMMON_STRING_64]; /// ???????????? int nTimeSectionNum; /// ???????????? int nTimeSectionIndex[DH_MAX_TIMESECTION_NUM]; /// ????????????,???????????????sznDoors???????? BOOL bNewDoor; /// ????????????????????TRUE??????nNewDoorNum??nNewDoors?????????????? int nNewDoorNum; /// ???????????; int nNewDoors[MAX_ACCESSDOOR_NUM]; /// ???????????,??CFG_CMD_ACCESS_EVENT????????????? int nNewTimeSectionNum; /// ????????????????? int nNewTimeSectionNo[MAX_ACCESSDOOR_NUM]; /// ????????????,??CFG_ACCESS_TIMESCHEDULE_INFO?????????? NET_TIME stuValidStartTime; /// ????????? NET_TIME stuValidEndTime; /// ?????????? int nValidCounts; /// ???????? char szCitizenIDNo[20]; /// ??????? }NET_RECORDSET_ACCESS_CTL_PWD; ///@brief ??????(???????,???????????) typedef enum tagNET_DOOR_OPEN_METHOD { NET_DOOR_OPEN_METHOD_UNKNOWN = 0, NET_DOOR_OPEN_METHOD_PWD_ONLY, /// ??????????? NET_DOOR_OPEN_METHOD_CARD, /// ???????????? NET_DOOR_OPEN_METHOD_PWD_OR_CARD, /// ???????????? NET_DOOR_OPEN_METHOD_CARD_FIRST, /// ????????????? NET_DOOR_OPEN_METHOD_PWD_FIRST, /// ?????????????? NET_DOOR_OPEN_METHOD_SECTION, /// ????????? }NET_DOOR_OPEN_METHOD; ///@brief ??????(??????,?????????,?????????) typedef enum tagNET_ACCESS_DOOROPEN_METHOD { NET_ACCESS_DOOROPEN_METHOD_UNKNOWN = 0, NET_ACCESS_DOOROPEN_METHOD_PWD_ONLY, /// ?????? NET_ACCESS_DOOROPEN_METHOD_CARD, /// ??????? NET_ACCESS_DOOROPEN_METHOD_CARD_FIRST, /// ????????????? NET_ACCESS_DOOROPEN_METHOD_PWD_FIRST, /// ?????????????? NET_ACCESS_DOOROPEN_METHOD_REMOTE, /// ??????,?????????????????????????? NET_ACCESS_DOOROPEN_METHOD_BUTTON, /// ??????????????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT, /// ??????? NET_ACCESS_DOOROPEN_METHOD_PWD_CARD_FINGERPRINT, /// ????+???+????????? NET_ACCESS_DOOROPEN_METHOD_PWD_FINGERPRINT = 10, /// ????+????????? NET_ACCESS_DOOROPEN_METHOD_CARD_FINGERPRINT = 11, /// ???+????????? NET_ACCESS_DOOROPEN_METHOD_PERSONS = 12, /// ??????? NET_ACCESS_DOOROPEN_METHOD_KEY = 13, /// ?????? NET_ACCESS_DOOROPEN_METHOD_COERCE_PWD = 14, /// ?????????? NET_ACCESS_DOOROPEN_METHOD_QRCODE = 15, /// ??????? NET_ACCESS_DOOROPEN_METHOD_FACE_RECOGNITION = 16, /// ???????? NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD = 18, /// ?????? NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_AND_IDCARD = 19, /// ???+ ?????? NET_ACCESS_DOOROPEN_METHOD_BLUETOOTH = 20, ///???????? NET_ACCESS_DOOROPEN_METHOD_CUSTOM_PASSWORD = 21, /// ??????????? NET_ACCESS_DOOROPEN_METHOD_USERID_AND_PWD = 22, /// UserID+???? NET_ACCESS_DOOROPEN_METHOD_FACE_AND_PWD = 23, /// ???+?????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_PWD = 24, /// ???+?????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE = 25, /// ???+????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE = 26, /// ???+????? NET_ACCESS_DOOROPEN_METHOD_FACE_OR_PWD = 27, /// ?????????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_PWD = 28, /// ??????????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE = 29, /// ??????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE = 30, /// ?????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT = 31, /// ???????????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE_AND_PWD = 32, /// ???+???+?????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_PWD = 33, /// ???+???+?????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_PWD = 34, /// ???+???+?????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_PWD_AND_FACE = 35, /// ??+???+????????? NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE_OR_PWD = 36, /// ????????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_PWD = 37, /// ?????????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE = 38, /// ?????????????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_FACE_AND_PWD = 39, /// ??+???+???+?????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE_OR_PWD = 40, /// ??????????????????? NET_ACCESS_DOOROPEN_METHOD_FACEIPCARDANDIDCARD_OR_CARD_OR_FACE = 41, ///(???+??????)?? ??? ?? ??? NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_OR_CARD_OR_FACE = 42, /// ?????? ?? ???(?????) ?? ??? NET_ACCESS_DOOROPEN_METHOD_DTMF = 43, ///DTMF????(????SIPINFO,RFC2833,INBAND) NET_ACCESS_DOOROPEN_METHOD_REMOTE_QRCODE = 44, /// ????????? NET_ACCESS_DOOROPEN_METHOD_REMOTE_FACE = 45, /// ???????? NET_ACCESS_DOOROPEN_METHOD_CITIZEN_FINGERPRINT = 46, /// ?????????(???) NET_ACCESS_DOOROPEN_METHOD_TEMPORARY_PASSWORD = 47, /// ????????? NET_ACCESS_DOOROPEN_METHOD_HEALTHCODE = 48, /// ???????? NET_ACCESS_DOOROPEN_METHOD_IRIS = 49, /// ???????? NET_ACCESS_DOOROPEN_METHOD_IRIS_AND_PASSWORD = 50, /// ???+?????????? NET_ACCESS_DOOROPEN_METHOD_FACE_AND_IRIS = 51, /// ???+????????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_IRIS = 52, /// ??+????????? NET_ACCESS_DOOROPEN_METHOD_IRIS_OR_PASSWORD = 53, /// ??????????? NET_ACCESS_DOOROPEN_METHOD_FACE_OR_IRIS = 54, /// ??????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_IRIS = 55, /// ??????????? NET_ACCESS_DOOROPEN_METHOD_FACE_AND_IRIS_AND_PASSWORD = 56, /// ???+???+?????????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_IRIS = 57, /// ??+???+????????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_IRIS_AND_PASSWORD = 58, /// ??+???+?????????? NET_ACCESS_DOOROPEN_METHOD_FACE_OR_IRIS_OR_PASSWORD = 59, /// ??????????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_IRIS = 60, /// ??????????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_IRIS_OR_PASSWORD = 61, /// ??????????????? NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_IRIS_AND_PASSWORD = 62,/// ??+???+???+?????????? NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_IRIS_OR_PASSWORD = 63, /// ??????????????????? }NET_ACCESS_DOOROPEN_METHOD; ///@brief ?????? typedef enum tagNET_ATTENDANCESTATE { NET_ATTENDANCESTATE_UNKNOWN, NET_ATTENDANCESTATE_SIGNIN, ///??? NET_ATTENDANCESTATE_GOOUT, ///??? NET_ATTENDANCESTATE_GOOUT_AND_RETRUN, ///??????? NET_ATTENDANCESTATE_SIGNOUT, /// ??? NET_ATTENDANCESTATE_WORK_OVERTIME_SIGNIN, /// ?????? NET_ATTENDANCESTATE_WORK_OVERTIME_SIGNOUT, /// ?????? }NET_ATTENDANCESTATE; ///@brief ??????? typedef enum tagNET_ENUM_DIRECTION_ACCESS_CTL { NET_ENUM_DIRECTION_UNKNOWN, NET_ENUM_DIRECTION_ENTRY, /// ???? NET_ENUM_DIRECTION_EXIT, /// ???? }NET_ENUM_DIRECTION_ACCESS_CTL; ///@brief ???? typedef enum tagEM_CITIZENIDCARD_EC_TYPE { EM_CITIZENIDCARD_EC_Unknown = 0, /// ??? EM_CITIZENIDCARD_EC_Han, /// ???? EM_CITIZENIDCARD_EC_Mongolian, /// ????? EM_CITIZENIDCARD_EC_Hui, /// ???? EM_CITIZENIDCARD_EC_Tibetan, /// ???? EM_CITIZENIDCARD_EC_Uygur, /// ?????? EM_CITIZENIDCARD_EC_Miao, /// ???? EM_CITIZENIDCARD_EC_Yi, /// ???? EM_CITIZENIDCARD_EC_Zhuang, /// ??? EM_CITIZENIDCARD_EC_Bouyei, /// ?????? EM_CITIZENIDCARD_EC_Korean, /// ?????? EM_CITIZENIDCARD_EC_Manchu, /// ???? EM_CITIZENIDCARD_EC_Dong, /// ???? EM_CITIZENIDCARD_EC_Yao, /// ???? EM_CITIZENIDCARD_EC_Bai, /// ???? EM_CITIZENIDCARD_EC_Tujia, /// ?????? EM_CITIZENIDCARD_EC_Hani, /// ?????? EM_CITIZENIDCARD_EC_Kazak, /// ???????? EM_CITIZENIDCARD_EC_Dai, /// ???? EM_CITIZENIDCARD_EC_Li, /// ???? EM_CITIZENIDCARD_EC_Lisu, /// ?????? EM_CITIZENIDCARD_EC_Va, /// ???? EM_CITIZENIDCARD_EC_She, /// ??? EM_CITIZENIDCARD_EC_Gaoshan, /// ????? EM_CITIZENIDCARD_EC_Lahu, /// ?????? EM_CITIZENIDCARD_EC_Shui, /// ??? EM_CITIZENIDCARD_EC_Dongxiang, /// ?????? EM_CITIZENIDCARD_EC_Naxi, /// ?????? EM_CITIZENIDCARD_EC_Jingpo, /// ?????? EM_CITIZENIDCARD_EC_Kirgiz, /// ????????? EM_CITIZENIDCARD_EC_Tu, /// ???? EM_CITIZENIDCARD_EC_Daur, /// ??????? EM_CITIZENIDCARD_EC_Mulam, /// ?????? EM_CITIZENIDCARD_EC_Qoiang, /// ??? EM_CITIZENIDCARD_EC_Blang, /// ?????? EM_CITIZENIDCARD_EC_Salar, /// ?????? EM_CITIZENIDCARD_EC_Maonan, /// ????? EM_CITIZENIDCARD_EC_Gelo, /// ?????? EM_CITIZENIDCARD_EC_Xibe, /// ?????? EM_CITIZENIDCARD_EC_Achang, /// ?????? EM_CITIZENIDCARD_EC_Pumi, /// ?????? EM_CITIZENIDCARD_EC_Tajik, /// ???????? EM_CITIZENIDCARD_EC_Nu, /// ??? EM_CITIZENIDCARD_EC_Ozbek, /// ????????? EM_CITIZENIDCARD_EC_Russian, /// ??????? EM_CITIZENIDCARD_EC_Ewenkl, /// ??????? EM_CITIZENIDCARD_EC_Deang, /// ?????? EM_CITIZENIDCARD_EC_Bonan, /// ?????? EM_CITIZENIDCARD_EC_Yugur, /// ????? EM_CITIZENIDCARD_EC_Jing, /// ???? EM_CITIZENIDCARD_EC_Tatar, /// ???????? EM_CITIZENIDCARD_EC_Drung, /// ?????? EM_CITIZENIDCARD_EC_Oroqen, /// ??????? EM_CITIZENIDCARD_EC_Hezhen, /// ?????? EM_CITIZENIDCARD_EC_Moinba, /// ????? EM_CITIZENIDCARD_EC_Lhoba, /// ????? EM_CITIZENIDCARD_EC_Jino /// ????? }EM_CITIZENIDCARD_EC_TYPE; ///@brief ??? typedef enum tagEM_CITIZENIDCARD_SEX_TYPE { EM_CITIZENIDCARD_SEX_TYPE_UNKNOWN, /// ??? EM_CITIZENIDCARD_SEX_TYPE_MALE, /// ?? EM_CITIZENIDCARD_SEX_TYPE_FEMALE, /// ? EM_CITIZENIDCARD_SEX_TYPE_UNTOLD, /// ????? }EM_CITIZENIDCARD_SEX_TYPE; ///@brief ????????????? typedef enum tagEM_HUMAN_TEMPERATURE_UNIT { EM_HUMAN_TEMPERATURE_UNKNOWN = -1, /// ??? EM_HUMAN_TEMPERATURE_CENTIGRADE, /// ????? EM_HUMAN_TEMPERATURE_FAHRENHEIT, /// ????? EM_HUMAN_TEMPERATURE_KELVIN, /// ?????? } EM_HUMAN_TEMPERATURE_UNIT; ///@brief ????????? typedef enum tagEM_HUMAN_TEMPERATURE_STATUS { EM_HUMAN_TEMPERATURE_STATUS_UNKNOWN = -1, /// ??? EM_HUMAN_TEMPERATURE_STATUS_LOW, /// ????? EM_HUMAN_TEMPERATURE_STATUS_NORMAL, /// ???? EM_HUMAN_TEMPERATURE_STATUS_HIGH, /// ????? }EM_HUMAN_TEMPERATURE_STATUS; ///@brief ????????? typedef struct tagNET_MAN_TEMPERATURE_INFO { float fCurrentTemperature; /// ??????? EM_HUMAN_TEMPERATURE_UNIT emTemperatureUnit; /// ?????? BOOL bIsOverTemperature; /// ????? EM_HUMAN_TEMPERATURE_STATUS emTemperatureStatus; /// ????????? BYTE byReserved[256]; /// ?????? } NET_MAN_TEMPERATURE_INFO; ///@brief ????????? typedef struct tagNET_COMPANION_INFO { char szCompanionCard[32]; /// ???????? char szCompanionUserID[32]; /// ?????ID char szCompanionName[120]; /// ????????? char szCompanionCompany[200]; /// ???????? BYTE byReserved[56]; /// ?????? }NET_COMPANION_INFO; ///@brief ?????? typedef enum tagEM_MASK_STATE_TYPE { EM_MASK_STATE_UNKNOWN, /// ??? EM_MASK_STATE_NODISTI, /// ????? EM_MASK_STATE_NOMASK, /// ??????? EM_MASK_STATE_WEAR, /// ?????? } EM_MASK_STATE_TYPE; ///@brief ?????????????????????????????????? typedef enum tagEM_FACE_CHECK { EM_FACE_CHECK_UNKNOWN = -1, /// ??? EM_FACE_CHECK_NODATA, /// ?????????????? EM_FACE_CHECK_CONSISTENT, /// ?????????????? EM_FACE_CHECK_NOT_CONSISTENT /// ???????????????? }EM_FACE_CHECK; ///@brief ??????????? typedef enum tagEM_QRCODE_IS_EXPIRED { EM_QRCODE_EXPIRED_UNKNOWN, /// ??? EM_QRCODE_NO_EXPIRED, /// ?????? EM_QRCODE_EXPIRED, /// ???? }EM_QRCODE_IS_EXPIRED; ///@brief ??????? typedef enum tagEM_QRCODE_STATE { EM_QRCODE_STATE_UNKNOWN, /// ??? EM_QRCODE_STATE_CLEARED, /// ????? EM_QRCODE_STATE_NOCLEARED, /// ????? }EM_QRCODE_STATE; ///@brief ??????????? typedef enum tagEM_LIFT_CALLER_TYPE { EM_LIFT_CALLER_TYPE_UNKNOWN = 0, /// ??? EM_LIFT_CALLER_TYPE_VTO, /// VTO ???? EM_LIFT_CALLER_TYPE_PLATFORM, /// ?????? EM_LIFT_CALLER_TYPE_LOCAL_AUTH, /// ??????????? EM_LIFT_CALLER_TYPE_ACCESS_CONTROL, /// ??????????????? }EM_LIFT_CALLER_TYPE; ///@brief ???????? typedef enum tagEM_TRAVEL_CODE_COLOR { EM_TRAVEL_CODE_COLOR_UNKNOWN, /// ??? EM_TRAVEL_CODE_COLOR_RED, /// ?? EM_TRAVEL_CODE_COLOR_GREEN, /// ?? EM_TRAVEL_CODE_COLOR_YELLOW, /// ?? EM_TRAVEL_CODE_COLOR_ORANGE, /// ?? } EM_TRAVEL_CODE_COLOR; ///@brief ????????????????? typedef struct tagNET_RECORDSET_ACCESS_CTL_CARDREC { DWORD dwSize; int nRecNo; /// ????????,??? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? char szPwd[DH_MAX_CARDPWD_LEN]; /// ???? NET_TIME stuTime; /// ?????? BOOL bStatus; /// ??????,TRUE??????,FALSE?????? NET_ACCESS_DOOROPEN_METHOD emMethod; /// ?????? int nDoor; /// ???,??CFG_CMD_ACCESS_EVENT????CFG_ACCESS_EVENT_INFO?????????? char szUserID[DH_MAX_USERID_LEN]; /// ???ID int nReaderID; /// ??????ID (????,???????) char szSnapFtpUrl[MAX_PATH]; /// ????????????FTP??? char szReaderID[DH_COMMON_STRING_32]; /// ??????ID /// ??????????????,???????????????,??????? NET_ACCESSCTLCARD_TYPE emCardType; /// ?????? int nErrorCode; /// ???????????,????bStatus?FALSE????? /// 0x00 ??????? /// 0x10 ????? /// 0x11 ?????????? /// 0x12 ?????????? /// 0x13 ?????????? /// 0x14 ????????? /// 0x15 ??????? /// 0x16 ??????????? /// 0x17 ??????? /// 0x18 AB?????? /// 0x19 ???? /// 0x1A ?????????????? /// 0x20 ???????? /// 0x21 ????????????????? /// 0x23 ?????? /// 0x30 ??????????????????? /// 0x40 ??????,??????????? /// 0x41 ??????,????????? /// 0x42 ??????,??????????? /// 0x43 ??????,?????????? /// 0x44 ??????,??????????? /// 0x45 ??????,????????? /// 0x50 ???????????? /// 0x51 ???????????????? /// 0x60 ??????,?????????? /// 0x61 ??????,?????? /// 0x62 ??????,???? /// 0x63 ??????? /// 0x64 ?????,??????????? /// 0x65 ??????? /// 0x66 ???????? /// 0x67 ??????????? /// 0x68 ????????? /// 0x69 ????????? /// 0x6a ?????????? /// 0x6b ?????????? /// 0x6c ????,??????? /// 0x6d ????,?????? /// 0x6f ????,?????? /// 0x70 ???????????? char szRecordURL[MAX_COMMON_STRING_128]; /// ????????? int nNumbers; /// ???????? NET_ATTENDANCESTATE emAttendanceState; /// ?????? NET_ENUM_DIRECTION_ACCESS_CTL emDirection; /// ??????? char szClassNumber[MAX_CLASS_NUMBER_LEN]; /// ????????? char szPhoneNumber[MAX_PHONENUMBER_LEN]; /// ?????????? char szCardName[DH_MAX_CARDNAME_LEN]; /// ?????? char szSN[DH_COMMON_STRING_32]; /// ????????????,??????????????? BOOL bCitizenIDResult; /// ???????? char szCitizenIDName[30]; /// ???? BYTE nRedScarfResult; /// ?????????? 0:??? 1:????? 2:???????255:?????????? BYTE byReserved1[1]; /// ?????? EM_CITIZENIDCARD_SEX_TYPE emCitizenIDSex; /// ??? EM_CITIZENIDCARD_EC_TYPE emCitizenIDEC; /// ???? NET_TIME stuCitizenIDBirth; /// ????????(?????????) char szCitizenIDAddress[108]; /// ?? char szCitizenIDAuthority[48]; /// ??????? NET_TIME stuCitizenIDStart; /// ???????????(?????????) NET_TIME stuCitizenIDEnd; /// ???????????(?????????, ???????????????????) BOOL bIsEndless; /// ????????? char szSnapFaceURL[DH_COMMON_STRING_128]; /// ??????????? char szCitizenPictureURL[DH_COMMON_STRING_128]; /// ??????????? char szCitizenIDNo[20]; /// ??????? NET_ACCESSCTLCARD_SEX emSex; /// ??? char szRole[MAX_COMMON_STRING_32]; /// ??? char szProjectNo[MAX_COMMON_STRING_32]; /// ???ID char szProjectName[MAX_COMMON_STRING_64]; /// ??????? char szBuilderName[MAX_COMMON_STRING_64]; /// ?????????? char szBuilderID[MAX_COMMON_STRING_32]; /// ???????ID char szBuilderType[MAX_COMMON_STRING_32]; /// ??????????? char szBuilderTypeID[MAX_COMMON_STRING_8]; /// ??????????ID char szPictureID[MAX_COMMON_STRING_64]; /// ??????ID char szContractID[MAX_COMMON_STRING_16]; /// ???????????? char szWorkerTypeID[MAX_COMMON_STRING_8]; /// ????ID char szWorkerTypeName[MAX_COMMON_STRING_32]; /// ???????? BOOL bPersonStatus; /// ?????, TRUE:????, FALSE:???? EM_HAT_STYLE emHatStyle; /// ??????? EM_UNIFIED_COLOR_TYPE emHatColor; /// ?????? NET_MAN_TEMPERATURE_INFO stuManTemperatureInfo; /// ????????? int nCompanionInfo; /// ?????? stuCompanionInfo ???? NET_COMPANION_INFO stuCompanionInfo[12]; /// ???????????????????????????? EM_MASK_STATE_TYPE emMask; /// ????????EM_MASK_STATE_UNKNOWN??EM_MASK_STATE_NOMASK??EM_MASK_STATE_WEAR ?????? UINT nFaceIndex; /// ?????????????? int nScore; /// ??????????? int nLiftNo; /// ?????? char szQRCode[512]; /// ????? EM_FACE_CHECK emFaceCheck; /// ?????????????????????????????????? EM_QRCODE_IS_EXPIRED emQRCodeIsExpired; /// ????????????????0 EM_QRCODE_STATE emQRCodeState; /// ??????? NET_TIME stuQRCodeValidTo; /// ??????????? EM_LIFT_CALLER_TYPE emLiftCallerType; /// ??????????? UINT nBlockId; /// ?????????????????1??????? char szSection[64]; /// ???????? char szWorkClass[256]; /// ?????? EM_TEST_ITEMS emTestItems; /// ??????? NET_TEST_RESULT stuTestResult; /// ESD????????? BOOL bUseCardNameEx; /// ?????????????? char szCardNameEx[128]; /// ????????? int nHSJCResult; ///?????????? -1: ??? 0: ?? 1: ???? 2: ????? 3: ???? int nVaccinateFlag; ///???????????????0:??1:??? char szVaccineName[128]; ///??????????? int nDateCount; ///????????????????? char szVaccinateDate[8][32]; ///??????????? ??????????? (yyyy-MM-dd)?? ??0000-00-00????????????????????????? EM_TRAVEL_CODE_COLOR emTravelCodeColor; ///??????????????? int nCityCount; ///???14????????????????? char szPassingCity[16][128]; ///???14?????????????????????????????????|??????????????? char szTrafficPlate[32]; ///???? char szRecordLocalUrl[128]; /// ????????? char szHSJCReportDate[32]; /// ????????????(???: yyyy-MM-dd) int nHSJCExpiresIn; /// ??????????????(????:??) char szAntigenReportDate[32]; /// ????????????(???: yyyy-MM-dd) int nAntigenStatus; /// ??????????: -1:??? 0: ?? 1: ???? 2: ????? 3: ???? int nAntigenExpiresIn; /// ??????????????(????:??) char szCheckOutType[32]; /// ??????? char szCheckOutCause[512]; /// ?????? UINT nCreateTimeRealUTC; /// ?????????UTC???? char szReserved[20]; /// ?????? char szLocationName[256]; /// ?????????? char szLocationAddress[256]; /// ???????????? char szLocationType[256]; /// ?????????? }NET_RECORDSET_ACCESS_CTL_CARDREC; ///@brief ??????????? typedef struct tagNET_RECORDSET_HOLIDAY { DWORD dwSize; int nRecNo; /// ????????,??? int nDoorNum; /// ???????????? int sznDoors[DH_MAX_DOOR_NUM]; /// ???????????,??CFG_CMD_ACCESS_EVENT????CFG_ACCESS_EVENT_INFO?????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? BOOL bEnable; /// ??????? char szHolidayNo[DH_COMMON_STRING_32]; /// ?????? char szHolidayName[DH_COMMON_STRING_128]; /// ???????? }NET_RECORDSET_HOLIDAY; ///@brief ??????? typedef enum tagEM_CARD_PROVINCE { EM_CARD_UNKNOWN = 10, /// ???????????????? EM_CARD_BEIJING = 11, /// ???? EM_CARD_TIANJIN = 12, /// ??? EM_CARD_HEBEI = 13, /// ??? EM_CARD_SHANXI_TAIYUAN = 14, /// ??? EM_CARD_NEIMENGGU = 15, /// ????? EM_CARD_LIAONING = 21, /// ???? EM_CARD_JILIN = 22, /// ???? EM_CARD_HEILONGJIANG = 23, /// ?????? EM_CARD_SHANGHAI = 31, /// ??? EM_CARD_JIANGSU = 32, /// ???? EM_CARD_ZHEJIANG = 33, /// ?? EM_CARD_ANHUI = 34, /// ???? EM_CARD_FUJIAN = 35, /// ???? EM_CARD_JIANGXI = 36, /// ???? EM_CARD_SHANDONG = 37, /// ??? EM_CARD_HENAN = 41, /// ???? EM_CARD_HUBEI = 42, /// ???? EM_CARD_HUNAN = 43, /// ???? EM_CARD_GUANGDONG = 44, /// ?? EM_CARD_GUANGXI = 45, /// ???? EM_CARD_HAINAN = 46, /// ???? EM_CARD_CHONGQING = 50, /// ???? EM_CARD_SICHUAN = 51, /// ??? EM_CARD_GUIZHOU = 52, /// ???? EM_CARD_YUNNAN = 53, /// ???? EM_CARD_XIZANG = 54, /// ???? EM_CARD_SHANXI_XIAN = 61, /// ???? EM_CARD_GANSU = 62, /// ???? EM_CARD_QINGHAI = 63, /// ?? EM_CARD_NINGXIA = 64, /// ???? EM_CARD_XINJIANG = 65, /// ??? EM_CARD_XIANGGANG = 71, /// ??? EM_CARD_AOMEN = 82, /// ???? EM_CARD_TAIWAN = 83, /// ??? } EM_CARD_PROVINCE; ///@brief ???????? typedef enum tagEM_CAR_TYPE { EM_CAR_0, ///???????? EM_CAR_1, ///?????????? EM_CAR_2, ///????????? EM_CAR_3, ///?????????? EM_CAR_4, ///???????? EM_CAR_5, ///????????? EM_CAR_6, ///??????? EM_CAR_7, ///????????? EM_CAR_8, ///??????????? EM_CAR_9, ///?????????? EM_CAR_10, ///????????? EM_CAR_11, ///?????????? EM_CAR_12, ///???????? EM_CAR_13, ///????????? EM_CAR_14, ///??????? EM_CAR_15, ///????????? EM_CAR_16, ///??????????? EM_CAR_17, ///?????????? EM_CAR_18, ///????????? EM_CAR_19, ///??????? EM_CAR_20, ///????????? EM_CAR_21, ///??????????? EM_CAR_22, ///????????? EM_CAR_23, ///????????? EM_CAR_24, ///???????? EM_CAR_25, ///?????? EM_CAR_26, ///???????? EM_CAR_27, ///??????????? EM_CAR_28, ///???????????? EM_CAR_29, ///??????????? EM_CAR_30, ///???????????? EM_CAR_31, ///??????????? EM_CAR_32, ///???????????? EM_CAR_33, ///???????????????? EM_CAR_34, ///??????????????? EM_CAR_35, ///???????????????? EM_CAR_36, ///??????????????? EM_CAR_37, ///???????????????? EM_CAR_38, ///??????????????? EM_CAR_39, ///??????????????? EM_CAR_40, ///?????????????? EM_CAR_41, ///???????????????? EM_CAR_42, ///??????????????? EM_CAR_43, ///???????????????? EM_CAR_44, ///??????????????? EM_CAR_45, ///?????????????? EM_CAR_46, ///?????????????? EM_CAR_47, ///?????????????? EM_CAR_48, ///?????????????? EM_CAR_49, ///??????????? EM_CAR_50, ///???????????? EM_CAR_51, ///??????????? EM_CAR_52, ///????f EM_CAR_53, ///?????f EM_CAR_54, ///???????? EM_CAR_55, ///????????? EM_CAR_56, ///????????? EM_CAR_57, ///????????? EM_CAR_58, ///??????????? EM_CAR_59, ///??????????? EM_CAR_60, ///????????? EM_CAR_61, ///?????????? EM_CAR_62, ///?????????? EM_CAR_63, ///???????? EM_CAR_64, ///???????????? EM_CAR_65, ///????????????? EM_CAR_66, ///??????????? EM_CAR_67, ///??????????? EM_CAR_68, ///??????????????? EM_CAR_69, ///?????????????? EM_CAR_70, ///??????????????? EM_CAR_71, ///???????????????? EM_CAR_72, ///????????????????? EM_CAR_73, ///??????????????? EM_CAR_74, ///??????????? EM_CAR_75, ///??????????? EM_CAR_76, ///????????? EM_CAR_77, ///?????????? EM_CAR_78, ///?????????? EM_CAR_79, ///???????? EM_CAR_80, ///???????????? EM_CAR_81, ///????????????? EM_CAR_82, ///??????????? EM_CAR_83, ///??????????? EM_CAR_84, ///??????????????? EM_CAR_85, ///?????????????? EM_CAR_86, ///??????????????? EM_CAR_87, ///???????????????? EM_CAR_88, ///????????????????? EM_CAR_89, ///??????????????? EM_CAR_90, ///??????????? EM_CAR_91, ///??????????? EM_CAR_92, ///????????? EM_CAR_93, ///?????????? EM_CAR_94, ///?????????? EM_CAR_95, ///???????????? EM_CAR_96, ///????????????? EM_CAR_97, ///??????????? EM_CAR_98, ///??????????? EM_CAR_99, ///??????????????? EM_CAR_100, ///?????????????? EM_CAR_101, ///??????????????? EM_CAR_102, ///????????????????? EM_CAR_103, ///??????????????? EM_CAR_104, ///?????????? EM_CAR_105, ///?????????? EM_CAR_106, ///???????? EM_CAR_107, ///????????? EM_CAR_108, ///??????????? EM_CAR_109, ///???????????? EM_CAR_110, ///?????????? EM_CAR_111, ///?????????? EM_CAR_112, ///?????????????? EM_CAR_113, ///????????????? EM_CAR_114, ///???????????????? EM_CAR_115, ///?????????????? EM_CAR_116, ///?????????? EM_CAR_117, ///?????????? EM_CAR_118, ///?????????? EM_CAR_119, ///??????????? EM_CAR_120, ///??????????? EM_CAR_121, ///?????????????? EM_CAR_122, ///?????????????? EM_CAR_123, ///??????????? EM_CAR_124, ///??????????? EM_CAR_125, ///?????????? EM_CAR_126, ///??????????? EM_CAR_127, ///???????????? EM_CAR_128, ///???????????? EM_CAR_129, ///??????????? EM_CAR_130, ///??????????? EM_CAR_131, ///?????????????? EM_CAR_132, ///??????????????? EM_CAR_133, ///?????????????? EM_CAR_134, ///??????????????? EM_CAR_135, ///???????????????? EM_CAR_136, ///??????????????? EM_CAR_137, ///?????????????????? EM_CAR_138, ///??????????? EM_CAR_139, ///??????????? EM_CAR_140, ///?????????? EM_CAR_141, ///??????????? EM_CAR_142, ///???????????? EM_CAR_143, ///???????????? EM_CAR_144, ///??????????? EM_CAR_145, ///??????????? EM_CAR_146, ///?????????????? EM_CAR_147, ///??????????????? EM_CAR_148, ///?????????????? EM_CAR_149, ///??????????????? EM_CAR_150, ///???????????????? EM_CAR_151, ///??????????????? EM_CAR_152, ///?????????????????? EM_CAR_153, ///??????????? EM_CAR_154, ///??????????? EM_CAR_155, ///?????????? EM_CAR_156, ///??????????? EM_CAR_157, ///???????????? EM_CAR_158, ///??????????? EM_CAR_159, ///??????????? EM_CAR_160, ///?????????????? EM_CAR_161, ///??????????????? EM_CAR_162, ///?????????????? EM_CAR_163, ///??????????????? EM_CAR_164, ///???????????????? EM_CAR_165, ///??????????????? EM_CAR_166, ///?????????????????? EM_CAR_167, ///??????????? EM_CAR_168, ///??????????? EM_CAR_169, ///?????????? EM_CAR_170, ///?????????? EM_CAR_171, ///??????????? EM_CAR_172, ///???????????? EM_CAR_173, ///????????????? EM_CAR_174, ///??????????? EM_CAR_175, ///?????????? EM_CAR_176, ///?????????????? EM_CAR_177, ///??????????? EM_CAR_178, ///?????????????? EM_CAR_179, ///?????????????? EM_CAR_180, ///??????????????? EM_CAR_181, ///???????????????? EM_CAR_182, ///????????????????? EM_CAR_183, ///??????????????? EM_CAR_184, ///?????????????????? EM_CAR_185, ///???????????????? EM_CAR_186, ///??????????????? EM_CAR_187, ///???????????????? EM_CAR_188, ///???????????????? EM_CAR_189, ///??????????? EM_CAR_190, ///??????????? EM_CAR_191, ///?????????? EM_CAR_192, ///?????????? EM_CAR_193, ///??????????? EM_CAR_194, ///???????????? EM_CAR_195, ///????????????? EM_CAR_196, ///??????????? EM_CAR_197, ///?????????? EM_CAR_198, ///?????????????? EM_CAR_199, ///??????????? EM_CAR_200, ///?????????????? EM_CAR_201, ///?????????????? EM_CAR_202, ///??????????????? EM_CAR_203, ///???????????????? EM_CAR_204, ///???????????????? EM_CAR_205, ///??????????????? EM_CAR_206, ///?????????????????? EM_CAR_207, ///???????????????? EM_CAR_208, ///??????????????? EM_CAR_209, ///???????????????? EM_CAR_210, ///???????????????? EM_CAR_211, ///??????????? EM_CAR_212, ///??????????? EM_CAR_213, ///?????????? EM_CAR_214, ///?????????? EM_CAR_215, ///???????????? EM_CAR_216, ///??????????? EM_CAR_217, ///?????????? EM_CAR_218, ///?????????????? EM_CAR_219, ///??????????? EM_CAR_220, ///?????????????? EM_CAR_221, ///?????????????? EM_CAR_222, ///??????????????? EM_CAR_223, ///???????????????? EM_CAR_224, ///???????????????? EM_CAR_225, ///??????????????? EM_CAR_226, ///?????????????????? EM_CAR_227, ///???????????????? EM_CAR_228, ///??????????????? EM_CAR_229, ///???????????????? EM_CAR_230, ///???????????????? } EM_CAR_TYPE; ///@brief ???????? typedef enum tagEM_PLATE_TYPE { EM_PLATE_OTHER, /// ?????? EM_PLATE_BIG_CAR, /// ???????? EM_PLATE_SMALL_CAR, /// ???????? EM_PLATE_EMBASSY_CAR, /// ??????? EM_PLATE_CONSULATE_CAR, /// ??????? EM_PLATE_ABROAD_CAR, /// ???????? EM_PLATE_FOREIGN_CAR, /// ?????? EM_PLATE_LOW_SPEED_CAR, /// ????? EM_PLATE_COACH_CAR, /// ?????? EM_PLATE_MOTORCYCLE, /// ????? EM_PLATE_NEW_POWER_CAR, /// ??????? EM_PLATE_POLICE_CAR, /// ?????? EM_PLATE_HONGKONG_MACAO_CAR, /// ???????? EM_PLATE_WJPOLICE_CAR, EM_PLATE_OUTERGUARD_CAR, EM_PLATE_TEMPORARY_LICENSE_FOR_NON_MOTOR_VEHICLES, /// ?????????????? EM_PLATE_OFFICIAL_LICENSE_PLATE_FOR_NON_MOTOR_VEHICLE, /// ???????????????? } EM_PLATE_TYPE; ///@brief ??????? typedef enum tagEM_CAR_COLOR_TYPE { EM_CAR_COLOR_WHITE, /// ??? EM_CAR_COLOR_BLACK, /// ??? EM_CAR_COLOR_RED, /// ??? EM_CAR_COLOR_YELLOW, /// ??? EM_CAR_COLOR_GRAY, /// ??? EM_CAR_COLOR_BLUE, /// ??? EM_CAR_COLOR_GREEN, /// ??? EM_CAR_COLOR_PINK, /// ??? EM_CAR_COLOR_PURPLE, /// ??? EM_CAR_COLOR_DARK_PURPLE, /// ????? EM_CAR_COLOR_BROWN, /// ??? EM_CAR_COLOR_MAROON, /// ??? EM_CAR_COLOR_SILVER_GRAY, /// ????? EM_CAR_COLOR_DARK_GRAY, /// ????? EM_CAR_COLOR_WHITE_SMOKE, /// ????? EM_CAR_COLOR_DEEP_ORANGE, /// ???? EM_CAR_COLOR_LIGHT_ROSE, /// ????? EM_CAR_COLOR_TOMATO_RED, /// ?????? EM_CAR_COLOR_OLIVE, /// ???? EM_CAR_COLOR_GOLDEN, /// ??? EM_CAR_COLOR_DARK_OLIVE, /// ?????? EM_CAR_COLOR_YELLOW_GREEN, /// ????? EM_CAR_COLOR_GREEN_YELLOW, /// ???? EM_CAR_COLOR_FOREST_GREEN, /// ????? EM_CAR_COLOR_OCEAN_BLUE, /// ?????? EM_CAR_COLOR_DEEP_SKYBLUE, /// ?????? EM_CAR_COLOR_CYAN, /// ??? EM_CAR_COLOR_DEEP_BLUE, /// ????? EM_CAR_COLOR_DEEP_RED, /// ???? EM_CAR_COLOR_DEEP_GREEN, /// ????? EM_CAR_COLOR_DEEP_YELLOW, /// ???? EM_CAR_COLOR_DEEP_PINK, /// ???? EM_CAR_COLOR_DEEP_PURPLE, /// ????? EM_CAR_COLOR_DEEP_BROWN, /// ????? EM_CAR_COLOR_DEEP_CYAN, /// ????? EM_CAR_COLOR_ORANGE, /// ??? EM_CAR_COLOR_DEEP_GOLDEN, /// ???? EM_CAR_COLOR_OTHER = 255, /// ????????? } EM_CAR_COLOR_TYPE; ///@brief ??????? typedef enum tagEM_USE_PROPERTY_TYPE { EM_USE_PROPERTY_NONOPERATING, /// ????? EM_USE_PROPERTY_HIGWAY, /// ????????,???????? EM_USE_PROPERTY_BUS, /// ???????? EM_USE_PROPERTY_TAXI, /// ??????? EM_USE_PROPERTY_FREIGHT, /// ???? EM_USE_PROPERTY_LEASE, /// ???? EM_USE_PROPERTY_SECURITY, /// ????,????,???,??????? EM_USE_PROPERTY_COACH, /// ???? EM_USE_PROPERTY_SCHOOLBUS, /// ???????,?????????,???????? EM_USE_PROPERTY_FOR_DANGE_VEHICLE, /// ????????? EM_USE_PROPERTY_OTHER, /// ???? EM_USE_PROPERTY_ONLINE_CAR_HAILING, /// ????? EM_USE_PROPERTY_NON_MOTORIZED_TAKE_OUT_VEHICLE, /// ??????????? EM_USE_PROPERTY_NON_MOTORIZED_EXPRESS_CAR, /// ????????? } EM_USE_PROPERTY_TYPE; ///@brief RFID ???????????? typedef struct tagNET_RFIDELETAG_INFO { BYTE szCardID[MAX_RFIDELETAG_CARDID_LEN]; /// ???? int nCardType; /// ????????, 0:????????????????, 1:??????????? EM_CARD_PROVINCE emCardPrivince; /// ??????? char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? char szProductionDate[MAX_RFIDELETAG_DATE_LEN]; /// ???????? EM_CAR_TYPE emCarType; /// ???????? int nPower; /// ????,?????????????????????0~254??255????????????????????????? int nDisplacement; /// ????,??????????????????????0~254??255???????????????????????????? int nAntennaID; /// ????ID????????:1~4 EM_PLATE_TYPE emPlateType; /// ???????? char szInspectionValidity[MAX_RFIDELETAG_DATE_LEN]; /// ?????????????-?? int nInspectionFlag; /// ???????????, 0:?????, 1:????????? int nMandatoryRetirement; /// ????????????????????????????????????????? EM_CAR_COLOR_TYPE emCarColor; /// ??????? int nApprovedCapacity; /// ?????????????<0????????????????????????????? int nApprovedTotalQuality; /// ????????????????????????????<0???????????????????????0~0x3FF??0x3FF??1023????????????????????????? NET_TIME_EX stuThroughTime; /// ??????? EM_USE_PROPERTY_TYPE emUseProperty; /// ??????? char szPlateCode[MAX_COMMON_STRING_8]; /// ????????UTF-8???? char szPlateSN[MAX_COMMON_STRING_16]; /// ???????????UTF-8???? char szTID[MAX_COMMON_STRING_64]; /// ???(??????), UTF-8???? BYTE bReserved[40]; /// ???????,???????. } NET_RFIDELETAG_INFO; ///@brief ???????????? typedef struct tagNET_RECORD_ELECTRONICSTAG_INFO { DWORD dwSize; int nRecNo; /// ????????,??? BOOL bMatch; /// ?????????? UINT unDevID; /// ????????????0??? NET_RFIDELETAG_INFO stuEleTagInfo; /// ???????????? } NET_RECORD_ELECTRONICSTAG_INFO; ///@brief GPS???????????? typedef struct tagNET_RECORD_GPS_LOCATION_INFO { DWORD dwSize; /// ??????? int nRecNo; /// ????????,??? double dLongitude; /// GPS???????, ?????? double dLatitude; /// GPS?????????, ?????? char szPlaceName[128]; /// GPS??????????? char szRadius[16]; /// ?? } NET_RECORD_GPS_LOCATION_INFO; ///@brief ?????????????? typedef struct tagNET_RECORD_RESIDENT_INFO { DWORD dwSize; /// ??????? int nRecNo; /// ????????,??? char szResidentName[DH_MAX_USERID_LEN]; /// ??????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? NET_TIME stuStartTime; /// ??????????? NET_TIME stuEndTime; /// ??????????? char szICNum[DH_MAX_IC_LEN]; /// ??? }NET_RECORD_RESIDENT_INFO; ///@brief ?????????????? typedef struct tagNET_RECORD_SENSOR_RECORD { DWORD dwSize; /// ??????? UINT uRecNo; /// ????????,??? NET_TIME stuTime; /// ??????, ????"time" UINT uDeviceID; /// ??????ID??, ??8???????????????24????????????????????????????0-?????? 1-????????? BYTE byStatus; /// ??????, 0:????,1:?? BYTE byExceptionCode; /// ??????????????????????????Status =1??????? /// ??????????????????????:Bit0-??,Bit1-???,Bit2-???,Bit3-????,Bit4-?????????????????????????? BYTE bySwitchOn; /// ??????,0?????1:?? BYTE byReserved; /// ??????? int nPowerVoltage; /// ???,??????mV int nPowerCurrent; /// ????,??????mA int nPowerValue; /// ????,??????mW BYTE byReservedSpace[4]; /// ??????? double dActualValue; /// ?????????????????????????????????? char szName[128]; /// ??????? NET_SENSE_METHOD emSenseMethod; /// SenseMethod, ??????,?????????????? EM_SENSE_METHOD_UNIT emUnit; /// ????, ????????emSenseMethod???????? } NET_RECORD_SENSOR_RECORD; ///@brief ??????????????? typedef struct tagNET_RECORD_ACCESSQRCODE_INFO { DWORD dwSize; /// ??????? int nRecNo; /// ????????,??? char szQRCode[DH_MAX_QRCODE_LEN]; /// ????? UINT nLeftTimes; /// ???????????? NET_TIME stuStartTime; /// ??????????? NET_TIME stuEndTime; /// ??????????? char szRoomNumber[16]; /// ????? char szUserID[32]; /// ???ID }NET_RECORD_ACCESSQRCODE_INFO; ///@brief ??????????????? typedef struct tagNET_RECORD_ACCESS_BLUETOOTH_INFO { DWORD dwSize; /// ??????? int nRecNo; /// ????????,??? char szUserName[DH_COMMON_STRING_128]; /// ????? char szPassword[DH_COMMON_STRING_128]; /// ???? char szMac[DH_COMMON_STRING_32]; /// mac??? char szNote[DH_COMMON_STRING_128]; /// ????????? }NET_RECORD_ACCESS_BLUETOOTH_INFO; ///@brief ?????????????????????? typedef struct tagFIND_RECORD_ACCESS_BLUETOOTH_INFO_CONDITION { DWORD dwSize; char szUserName[DH_COMMON_STRING_128]; /// ????? } FIND_RECORD_ACCESS_BLUETOOTH_INFO_CONDITION; ///@brief ???????? typedef enum tagEM_RECORD_ACCESS_ALARM_TYPE { EM_RECORD_ACCESS_ALARM_TYPE_UNKNOWN, /// ??? EM_RECORD_ACCESS_ALARM_TYPE_DOOR_NOTCLOSE, /// ?????? EM_RECORD_ACCESS_ALARM_TYPE_BREAK_IN, /// ???? EM_RECORD_ACCESS_ALARM_TYPE_REPEAT_ENTER, /// ??? EM_RECORD_ACCESS_ALARM_TYPE_DURESS, /// ???? EM_RECORD_ACCESS_ALARM_TYPE_ALARMLOCAL, /// ???? EM_RECORD_ACCESS_ALARM_TYPE_CHASSIS_INTRUDED, /// ???? EM_RECORD_ACCESS_ALARM_TYPE_MALICIOUS, /// ?????? EM_RECORD_ACCESS_ALARM_TYPE_BLACKLIST, /// ??????? }EM_RECORD_ACCESS_ALARM_TYPE; ///@brief ?????????????? typedef enum tagEM_RECORD_ACCESS_ALARM_OPEN_METHOD { EM_RECORD_ACCESS_ALARM_OPEN_METHOD_UNKNOWN, /// ??? EM_RECORD_ACCESS_ALARM_OPEN_METHOD_PWD, /// ????? EM_RECORD_ACCESS_ALARM_OPEN_METHOD_FINGERPRINT, /// ?????? EM_RECORD_ACCESS_ALARM_OPEN_METHOD_CARD, /// ????? }EM_RECORD_ACCESS_ALARM_OPEN_METHOD; ///@brief ??????????????? typedef struct tagNET_RECORD_ACCESS_ALARMRECORD_INFO { DWORD dwSize; /// ??????? int nRecNo; /// ????????,??? char szUserID[DH_COMMON_STRING_128]; /// ???ID EM_RECORD_ACCESS_ALARM_TYPE emAlarmType; /// ???????? int nDevAddress; /// ?????ID,0 ??????????????????????????? ????0 ?????????? int nChannel; /// ????? EM_RECORD_ACCESS_ALARM_OPEN_METHOD emAlarmOpenMethod; /// ??????,??EventCode? MaliciousAccessControl??????????????. NET_TIME stuTime; /// ???????????? char szReaderID[32]; /// ???????ID NET_TIME_EX stuCreateTimeRealUTC; /// ???????????????UTC??? }NET_RECORD_ACCESS_ALARMRECORD_INFO; ///@brief ???????????? typedef struct tagFIND_NET_RECORD_ACCESS_ALARMRECORD_INFO_CONDITION { DWORD dwSize; char szUserID[DH_COMMON_STRING_128]; /// ???ID NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? UINT nCreateTimeRealUTC[2]; /// ???????????????????UTC????????stStartTime??stEndTime????????????????????? BOOL bIsUsingCreateTimeRealUTC; /// ??????nCreateTimeRealUTC????????TRUE??stStartTime??stEndTime???? char szReserved[44]; /// ?????? }FIND_NET_RECORD_ACCESS_ALARMRECORD_INFO_CONDITION; ///@brief ????? typedef enum tagEM_DOOR_STATUS { EM_DOOR_STATUS_UNKNOWN, /// ??? EM_DOOR_STATUS_OPEN, /// ???? EM_DOOR_STATUS_CLOSE, /// ???? EM_DOOR_STATUS_CLOSE_ALWAYS, /// ???? EM_DOOR_STATUS_OPEN_ALWAYS, /// ???? } EM_DOOR_STATUS; ///@brief ??????????????? typedef struct tagNET_RECORD_ACCESS_DOORSTATUS_INFO { DWORD dwSize; /// ??????? UINT nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? EM_DOOR_STATUS emDoorStatus; /// ???????? char szURL[256]; /// ???????????????????? UINT nDoorIndex; /// ????? }NET_RECORD_ACCESS_DOORSTATUS_INFO; ///@brief ?????????????????????? typedef struct tagFIND_RECORD_ACCESS_DOORSTATUS_INFO_CONDITION { DWORD dwSize; /// ??????? EM_DOOR_STATUS emDoorStatus; /// ????, unknown ???????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? }FIND_RECORD_ACCESS_DOORSTATUS_INFO_CONDITION; ///@brief ?????????????????? typedef struct tagNET_RECORD_ACCESS_CTL_COMMONPASSWORD_INFO { DWORD dwSize; /// ??????? UINT nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? char szUserID[256]; /// ???ID char szCommonPassword[128]; /// ???????????? char szVTONo[16]; /// ???????? UINT nDoors; /// nDoorsAuth ???? UINT nDoorsAuth[128]; /// ????????????AccessControl?????? NET_TIME stuValidFrom; /// ????????? NET_TIME stuValidTo; /// ????????? UINT nUseTimes; /// ?????????????0??????????? UINT nLeftTimes; /// ?????????? }NET_RECORD_ACCESS_CTL_COMMONPASSWORD_INFO; ///@brief ?????????????????????? typedef struct tagFIND_RECORD_ACCESS_CTL_COMMONPASSWORD_INFO_CONDITION { DWORD dwSize; /// ??????? char szVTONo[16]; /// ???????? char szUserID[256]; /// ???ID }FIND_RECORD_ACCESS_CTL_COMMONPASSWORD_INFO_CONDITION; ///@brief ?????? typedef enum tagEM_CONSUMPTION_STATUS { EM_CONSUMPTION_STATUS_UNKNOWN = -1, /// ??? EM_CONSUMPTION_STATUS_FAIL, /// ??? EM_CONSUMPTION_STATUS_SUCC, /// ??? } EM_CONSUMPTION_STATUS; ///@brief ?????????? typedef enum tagEM_CONSUMPTION_RECORD_TYPE { EM_CONSUMPTION_RECORD_TYPE_UNKNOWN = -1, /// ??? EM_CONSUMPTION_RECORD_TYPE_QUOTA, /// ?????????? EM_CONSUMPTION_RECORD_TYPE_NONQUOTA, /// ??????????? EM_CONSUMPTION_RECORD_TYPE_DEPOSIT, /// ?????? } EM_CONSUMPTION_RECORD_TYPE; ///@brief ????????? typedef struct tagNET_RECORD_ACCESS_CTL_CONSUMPTION_INFO { DWORD dwSize; /// ??????? UINT nRecNo; /// ????????,??? UINT nBlockId; /// ?????????????????1??????? NET_TIME stuCreateTime; /// ?????? char szCardNo[16]; /// ???? char szCardName[128]; /// ?????? NET_ACCESSCTLCARD_TYPE emCardType; /// ?????? char szUserID[12]; /// ???ID NET_ENUM_DIRECTION_ACCESS_CTL emType; /// ??????? EM_CONSUMPTION_STATUS emStatus; /// ?????? NET_ACCESS_DOOROPEN_METHOD emMethod; /// ?????? UINT nDoor; /// ??? char szReaderID[32]; /// ??????ID UINT nErrorCode; /// ???????????,??? emStatus ??? /// 0x00 ??????? /// 0x10 ????? /// 0x11 ?????????? /// 0x12 ?????????? /// 0x13 ?????????? /// 0x14 ????????? /// 0x15 ??????? /// 0x16 ??????????? /// 0x17 ??????? /// 0x18 AB?????? /// 0x19 ???? /// 0x1A ?????????????? /// 0x20 ???????? /// 0x21 ????????????????? /// 0x30 ??????????????????? /// 0x40 ??????,??????????? /// 0x41 ??????,????????? /// 0x42 ??????,??????????? /// 0x43 ??????,?????????? /// 0x44 ??????,??????????? /// 0x45 ??????,????????? /// 0x50 ???????????? /// 0x51 ???????????????? /// 0x60 ??????,?????????? /// 0x61 ??????,?????? /// 0x62 ??????,???? /// 0x63 ??????? /// 0x64 ?????,??????????? /// 0x65 ??????? /// 0x66 ???????? /// 0x67 ??????????? /// 0x68 ????????? /// 0x69 ????????? /// 0x6a ?????????? /// 0x6b ?????????? /// 0x70 ???????????? /// 0x71 ??????????????????????????????????? UINT nSimilarity; /// ???????????,????????????????? char szSnapFaceURL[128]; /// ????????????????? EM_CONSUMPTION_RECORD_TYPE emRecordType; /// ??????? UINT nConsumptionAmount; /// ???????????????101 = 1.01 ? UINT nRechargeAmount; /// ???????????????101 = 1.01 ? char szTransactionSerialNumber[128]; /// ????????? }NET_RECORD_ACCESS_CTL_CONSUMPTION_INFO; ///@brief ????????????? typedef struct tagFIND_RECORD_ACCESS_CTL_CONSUMPTION_INFO_CONDITION { DWORD dwSize; /// ??????? BOOL bUserIDEnable; /// ?????????? char szUserID[256]; /// ???ID BOOL bCardNoEnable; /// ????????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? BOOL bTimeEnable; /// ??????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? }FIND_RECORD_ACCESS_CTL_CONSUMPTION_INFO_CONDITION; ///@brief VTO????????????????? typedef enum tagEM_VTO_PUSH_TO_SERVER_TYPE { EM_VTO_PUSH_TO_SERVER_TYPE_UNKNOWN, /// ??? EM_VTO_PUSH_TO_SERVER_TYPE_IOS, /// IOS EM_VTO_PUSH_TO_SERVER_TYPE_ANDROID, /// Android EM_VTO_PUSH_TO_SERVER_TYPE_DAHUA_CLOUD, /// ?? }EM_VTO_PUSH_TO_SERVER_TYPE; ///@brief VTO??????????????? typedef enum tagEM_VTO_PUSH_RESULT_TYPE { EM_VTO_PUSH_RESULT_TYPE_UNKNOWN, /// ??? EM_VTO_PUSH_RESULT_TYPE_SUCCESS, /// ?????? EM_VTO_PUSH_RESULT_TYPE_TCP_CONNECT_ERROR, /// ???????TCP???????, ?????????? EM_VTO_PUSH_RESULT_TYPE_SSL_WRITE_TIME_OUT_ERROR, /// ???????????Ssl???????? EM_VTO_PUSH_RESULT_TYPE_SSL_ERROR, /// ???????????Ssl??????? EM_VTO_PUSH_RESULT_TYPE_SSL_READ_TIME_OUT_ERROR, /// ???????????SSL?????? EM_VTO_PUSH_RESULT_TYPE_SSL_SEND_ERROR, /// ???SSL??????????? EM_VTO_PUSH_RESULT_TYPE_DNS_ERROR, /// ???DNS??????? EM_VTO_PUSH_RESULT_TYPE_MSG_TIME_OUT, /// ???????????????? EM_VTO_PUSH_RESULT_TYPE_CERT_ERROR, /// ??????????????? EM_VTO_PUSH_RESULT_TYPE_SSL_RECV_ERROR, /// ???SSL??????? EM_VTO_PUSH_RESULT_TYPE_TOO_LONG_ERROR, /// ???????????? EM_VTO_PUSH_RESULT_TYPE_FCM_INVALID_REGISTRATION_ERROR, /// ??FCM???????????ID EM_VTO_PUSH_RESULT_TYPE_FCM_NOT_REGISTERED_ERROR, /// ????FCM???????? EM_VTO_PUSH_RESULT_TYPE_FCM_MSG_RATE_EXCEEDED_ERROR, /// ????FCM???????????? EM_VTO_PUSH_RESULT_TYPE_FCM_AUTH_ERROR, /// FCM?????? EM_VTO_PUSH_RESULT_TYPE_FCM_JSON_ERROR, /// FCM Json ??????? EM_VTO_PUSH_RESULT_TYPE_FCM_UNAVAILABLE_ERROR, /// FCM ??????? EM_VTO_PUSH_RESULT_TYPE_FCM_OTHER_ERROR, /// FCM???????? EM_VTO_PUSH_RESULT_TYPE_NORMAL_FULL_ERROR, /// ???????????????? EM_VTO_PUSH_RESULT_TYPE_HIGH_FULL_ERROR, /// ????????????????? EM_VTO_PUSH_RESULT_TYPE_DNS_CHECK_ERROR, /// ??????????????????IP EM_VTO_PUSH_RESULT_TYPE_ATTTACH_ERROR, /// ???attach???? EM_VTO_PUSH_RESULT_TYPE_TIME_NOT_IN_SCHEDULE, /// ??????????????? EM_VTO_PUSH_RESULT_TYPE_EVENT_CUSTOM_FILERED, /// ???????????????? EM_VTO_PUSH_RESULT_TYPE_OTHER_ERROR, /// ??????????? }EM_VTO_PUSH_RESULT_TYPE; ///@brief VTO?????????????(NET_RECORD_ACCESS_MOBILE_PUSH_RESULT) typedef struct tagNET_RECORD_ACCESS_MOBILE_PUSH_RESULT_INFO { DWORD dwSize; /// ??????? UINT nRecNo; /// ?????? UINT nCreateTime; /// ????????????UTC??? EM_VTO_PUSH_TO_SERVER_TYPE emPushToServerType; /// ?????? char szEventName[30]; /// ??????? char byReserved[2]; /// ?????? EM_VTO_PUSH_RESULT_TYPE emPushResult; /// ?????? int nChannel; /// APP??????? char szAppRegisterID[256]; /// App???ID char szAppID[256]; /// AppID char szDevName[64]; /// ?????????????????????? }NET_RECORD_ACCESS_MOBILE_PUSH_RESULT_INFO; ///@brief ???VTO????????????? typedef enum tagEM_FIND_VTO_PUSH_RESULT_TYPE { EM_FIND_VTO_PUSH_RESULT_TYPE_UNKNOWN, /// ??? EM_FIND_VTO_PUSH_RESULT_TYPE_ALL, /// ??? EM_FIND_VTO_PUSH_RESULT_TYPE_SUCCESS, /// ??? EM_FIND_VTO_PUSH_RESULT_TYPE_FAILD, /// ??? }EM_FIND_VTO_PUSH_RESULT_TYPE; ///@brief VTO???????????????????(NET_RECORD_ACCESS_MOBILE_PUSH_RESULT) typedef struct tagFIND_RECORD_ACCESS_MOBILE_PUSH_RESULT_INFO_CONDITION { DWORD dwSize; /// ??????? BOOL bValidChannel; /// ?????????????????????TRUE:???????????FALSE:?????????? int nChannel; /// App??????? BOOL bValidTime; /// ????????????????????TRUE:????????????FALSE:?????????? UINT nStartTime; /// ??????(UTC???) UINT nStopTime; /// ???????(UTC???) EM_FIND_VTO_PUSH_RESULT_TYPE emFindPushResultType; /// ??????? }FIND_RECORD_ACCESS_MOBILE_PUSH_RESULT_INFO_CONDITION; ///@brief ???????? typedef enum tagEM_VIDEO_TALK_LOG_CALLTYPE { EM_VIDEO_TALK_LOG_CALLTYPE_UNKNOWN = 0, /// ??? EM_VIDEO_TALK_LOG_CALLTYPE_INCOMING, /// ???? EM_VIDEO_TALK_LOG_CALLTYPE_OUTGOING, /// ???? EM_VIDEO_TALK_LOG_CALLTYPE_MAX, /// }EM_VIDEO_TALK_LOG_CALLTYPE; ///@brief ?????? typedef enum tagEM_VIDEO_TALK_LOG_ENDSTATE { EM_VIDEO_TALK_LOG_ENDSTATE_UNKNOWN = 0, /// ??? EM_VIDEO_TALK_LOG_ENDSTATE_MISSED, /// ???? EM_VIDEO_TALK_LOG_ENDSTATE_RECEIVED, /// ??? EM_VIDEO_TALK_LOG_ENDSTATE_MAX, /// }EM_VIDEO_TALK_LOG_ENDSTATE; ///@brief ??????? typedef enum tagEM_VIDEO_TALK_LOG_PEERTYPE { EM_VIDEO_TALK_LOG_PEERTYPE_UNKNOWN = 0, /// ??? EM_VIDEO_TALK_LOG_PEERTYPE_VTO, /// ???? EM_VIDEO_TALK_LOG_PEERTYPE_VTH, /// ????? EM_VIDEO_TALK_LOG_PEERTYPE_VTS, /// ???????? }EM_VIDEO_TALK_LOG_PEERTYPE; ///@brief ???????????? typedef enum tagNET_RECORD_READFLAG { NET_RECORD_READFLAG_UNREADED = 0, ///???? NET_RECORD_READFLAG_READED, ///??? NET_RECORD_READFLAG_UNKNOWN, ///??? }NET_RECORD_READFLAG; ///@brief ?????????? typedef enum tagNET_EM_OFFLINE_CALL_TYPE { NET_EM_OFFLINE_CALL_UNKNOWN = -1, /// ??? NET_EM_OFFLINE_CALL_ONLINECALL, /// ??????? NET_EM_OFFLINE_CALL_OFFLINECALL, /// ??????? NET_EM_OFFLINE_CALL_NONE = 255, /// ???? }NET_EM_OFFLINE_CALL_TYPE; ///@brief ?????????????? typedef struct tagNET_RECORD_VIDEO_TALK_LOG { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ?????? EM_VIDEO_TALK_LOG_CALLTYPE emCallType; /// ???????? EM_VIDEO_TALK_LOG_ENDSTATE emEndState; /// ?????? char szPeerNumber[DH_COMMON_STRING_64]; /// ??????? ????????,?????? EM_VIDEO_TALK_LOG_PEERTYPE emPeerType; /// ??????? char szLocalNumber[DH_COMMON_STRING_64]; /// ???????? ????????,?????? int nTalkTime; /// ?????? ?????? int nMessageTime; /// ??????? ?????? char szPicturePath[DH_COMMON_STRING_128];/// ??????? NET_EM_OFFLINE_CALL_TYPE emOfflineCall; /// ???????????? NET_TIME_EX stuCreateTimeRealUTC; /// ???UTC?????? }NET_RECORD_VIDEO_TALK_LOG; ///@brief ????????? typedef enum tagEM_REGISTER_USER_STATE { EM_REGISTER_USER_STATE_UNKNOWN = 0, /// ??? EM_REGISTER_USER_STATE_IDLE, /// ????? EM_REGISTER_USER_STATE_CALLING, /// ?????????????????? EM_REGISTER_USER_STATE_RINGING, /// ??????????????,??????????? EM_REGISTER_USER_STATE_PREVIEWING, /// ??????? EM_REGISTER_USER_STATE_LEAVINGMESSAGE, /// ???????? EM_REGISTER_USER_STATE_TALKING, /// ????? EM_REGISTER_USER_STATE_MAX, /// }EM_REGISTER_USER_STATE; ///@brief ??????? typedef enum tagEM_REGISTER_USER_STATE_DEV_TYPE { EM_REGISTER_USER_STATE_DEV_TYPE_UNKNOWN = 0, /// ??? EM_REGISTER_USER_STATE_DEV_TYPE_DIGIT_VTH, /// ????VTH EM_REGISTER_USER_STATE_DEV_TYPE_ANALOG_VTH, /// ???VTH EM_REGISTER_USER_STATE_DEV_TYPE_DIGIT_VTO, /// ????VTO EM_REGISTER_USER_STATE_DEV_TYPE_ANALOG_VTO, /// ???VTO EM_REGISTER_USER_STATE_DEV_TYPE_MAX, /// }EM_REGISTER_USER_STATE_DEV_TYPE; ///@brief ???????? typedef enum tagEM_REGISTER_USER_STATE_SUPPORTLOCK_TYPE { EM_REGISTER_USER_STATE_SUPPORTLOCK_TYPE_UNKNOWN = 0, /// ??? EM_REGISTER_USER_STATE_SUPPORTLOCK_TYPE_SUPPORTLOCK, /// ??? EM_REGISTER_USER_STATE_SUPPORTLOCK_TYPE_NOT_SUPPORTLOCK, /// ????? }EM_REGISTER_USER_STATE_SUPPORTLOCK_TYPE; ///@brief ????? typedef enum tagNET_MONITORSTATE_TYPE { NET_MONITORSTATE_TYPE_UNMONITORED = 0, /// 0 ?????????????? NET_MONITORSTATE_TYPE_MONITORREQUEST, /// 1 ?????????? NET_MONITORSTATE_TYPE_MONITORED, /// 2 ??????? NET_MONITORSTATE_TYPE_UNKNOWN, /// ????? }NET_MONITORSTATE_TYPE; ///@brief ????????????? typedef struct tagNET_RECORD_REGISTER_USER_STATE { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? char szUserID[DH_MAX_USERID_LEN]; /// ???ID BOOL bOnline; /// ??????? char szAddress[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ?????? int nPort; /// ???? EM_REGISTER_USER_STATE emVideoTalkState; /// ????????? NET_TIME stuOnlineTime; /// ??????? NET_TIME stuOfflineTime; /// ??????? EM_REGISTER_USER_STATE_DEV_TYPE emDevType; /// ??????? EM_REGISTER_USER_STATE_SUPPORTLOCK_TYPE emSupportLock; /// ???????? NET_MONITORSTATE_TYPE emMonitorState; /// ????? }NET_RECORD_REGISTER_USER_STATE; ///@brief ??????????????????????? typedef enum tagEM_VIDEO_TALK_CONTACT_VTSLAVEBINDMODE { EM_VIDEO_TALK_CONTACT_VTSLAVEBINDMODE_UNKNOWN, /// ??? EM_VIDEO_TALK_CONTACT_VTSLAVEBINDMODE_SLAVEADDRESS, /// ???SlaveAddress EM_VIDEO_TALK_CONTACT_VTSLAVEBINDMODE_SLAVEID_SLAVEPORT, /// ???SlaveID+SlavePort }EM_VIDEO_TALK_CONTACT_VTSLAVEBINDMODE; ///@brief ??????? typedef enum tagEM_VIDEO_TALK_CONTACT_TYPE { EM_VIDEO_TALK_CONTACT_TYPE_UNKNOWN, /// ??? EM_VIDEO_TALK_CONTACT_TYPE_VTH, /// "VTH" ????? EM_VIDEO_TALK_CONTACT_TYPE_VTO, /// "VTO" ???? }EM_VIDEO_TALK_CONTACT_TYPE; ///@brief ???? typedef enum tagEM_VIDEO_TALK_CONTACT_REGISTER_TYPE { EM_VIDEO_TALK_CONTACT_REGISTER_TYPE_UNKNOWN, /// ??? EM_VIDEO_TALK_CONTACT_REGISTER_TYPE_PUBLIC, /// "public" EM_VIDEO_TALK_CONTACT_REGISTER_TYPE_LOCAL, /// "local" }EM_VIDEO_TALK_CONTACT_REGISTER_TYPE; ///@brief ??????????????? typedef struct tagNET_RECORD_VIDEO_TALK_CONTACT { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? char szFirstName[DH_COMMON_STRING_32]; /// ???? char szFamilyName[DH_COMMON_STRING_32]; /// ?? char szVTShortNumber[DH_COMMON_STRING_16]; /// ????????? char szVTMiddleNumber[DH_COMMON_STRING_32]; /// ?????????? char szVTLongNumber[DH_COMMON_STRING_64]; /// ??????????,??VTH???????????????? char szVTNetAddress[DH_MAX_IPADDR_LEN_EX]; /// ???????????? char szVTOPosition[DH_COMMON_STRING_64]; /// ??????????????????? EM_VIDEO_TALK_CONTACT_VTSLAVEBINDMODE emVTSlaveBindMode; /// ??????????????????????? char szVTSlaveId[DH_COMMON_STRING_32]; /// ??????????,??? nVTSlaveId char szVTSlavePort[DH_COMMON_STRING_32]; /// ??????????,??? nVTSlavePort char szVTSlaveAddress[DH_COMMON_STRING_64]; /// ?????????????????? char szNickname[DH_COMMON_STRING_64]; /// ??? char szNotes[DH_COMMON_STRING_64]; /// ??? EM_VIDEO_TALK_CONTACT_TYPE emType; /// ??????? EM_VIDEO_TALK_CONTACT_REGISTER_TYPE emRegisterType; /// ???? char szVTHPassword[DH_COMMON_STRING_64]; /// ??????? char szVTOBuilding[DH_COMMON_STRING_64]; /// ???????? char szVTOUnit[DH_COMMON_STRING_64]; /// ????????? char szGroupNumber[DH_COMMON_STRING_64]; /// ??????? int nVTSlaveId; /// ????????????????????????????? int nVTSlavePort; /// ????????????????????????????? int nMemberNames; /// ????????????????? char szMemberNames[10][15]; /// ????????????? char szReserved[6]; /// ?????????? BOOL bUseNicknameEx; /// ??????????????? char szNicknameEx[256]; /// ?????? }NET_RECORD_VIDEO_TALK_CONTACT; ///@brief ??? typedef enum tagEM_SEX_TYPE { EM_SEX_TYPE_UNKNOWN, ///??? EM_SEX_TYPE_MALE, ///???? EM_SEX_TYPE_FEMALE, ///??? }EM_SEX_TYPE; ///@brief ??????? typedef enum tagEM_HOSPITAL_USER_TYPE { EM_HOSPITAL_USER_TYPE_UNKNOWN, /// ??? EM_HOSPITAL_USER_TYPE_PATIENT, /// ???? EM_HOSPITAL_USER_TYPE_ATTENDING_PHYSICIAN, /// ?????? EM_HOSPITAL_USER_TYPE_RESPONSIBLE_NURSE, /// ??????? EM_HOSPITAL_USER_TYPE_RESPONSIBLE_DIRECTOR, /// ???? EM_HOSPITAL_USER_TYPE_RESPONSIBLE_HEAD_NURSE, /// ????? }EM_HOSPITAL_USER_TYPE; ///@brief ??????? typedef enum tagEM_HOSPITAL_CARE_LEVEL { EM_HOSPITAL_CARE_LEVEL_UNKNOWN, /// ??? EM_HOSPITAL_CARE_LEVEL_PREMIUM, /// ??????? EM_HOSPITAL_CARE_LEVEL_ONE, /// ??????? EM_HOSPITAL_CARE_LEVEL_TWO, /// ???????? EM_HOSPITAL_CARE_LEVEL_THREE, /// ???????? }EM_HOSPITAL_CARE_LEVEL; ///@brief ??????????????? typedef struct tagNET_RECORD_HOSPITAL_USER_INFO { DWORD dwSize; int nRecNo; /// ?????? char szID[32]; /// ?????? int nDoctorCount; /// ????????????ID???? char szDoctorID[5][32]; /// ????????????ID???? char szCitizenID[64]; /// ???????? char szName[64]; /// ??????? EM_SEX_TYPE emSex; /// ??? UINT nAge; /// ???? EM_HOSPITAL_USER_TYPE emType; /// ??????? char szRoomNumber[16]; /// ?????? char szBedNumber[8]; /// ?????? EM_HOSPITAL_CARE_LEVEL emLevel; /// ??????? NET_TIME_EX stuInUTC; /// ?????? NET_TIME_EX stuOutUTC; /// ?????? char szAdviceInfo[4096]; /// ?????? char szExpenseInfo[4096]; /// ??????? char szSurgeryInfo[4096]; /// ??????? char szDeviceCode[64]; /// ??????????????????? char szIntro[4096]; /// ?????????? int nCareLabelsNum; /// ??????????? char szCareLabels[50][64]; /// ??????? char szRoomNumberEx[64]; /// ??????(????????szRoomNumber???) BOOL bIsUsingRoomNumberEx; /// ??????szRoomNumberEx UINT nDietLabelsNum; /// ?????????? char szDietLabels[10][64]; /// ?????? char szDiagnosisInfo[512]; /// ?????? char szAllergyInfo[512]; /// ??????? char szUserLabelColor[32]; /// ????????? char szUserTypeName[64]; /// ??????????? }NET_RECORD_HOSPITAL_USER_INFO; ///@brief ?????????? typedef enum tagEM_HOSPITAL_DEVICE_TYPE { EM_HOSPITAL_DEVICE_TYPE_UNKNOWN, /// ??? EM_HOSPITAL_DEVICE_TYPE_MEDICAL_HOST, /// ??????? EM_HOSPITAL_DEVICE_TYPE_MEDICAL_EXTENSION, /// ?????? EM_HOSPITAL_DEVICE_TYPE_WARD_DOOR_MACHINE, /// ???????? EM_HOSPITAL_DEVICE_TYPE_WARD_EXTENSION, /// ??????? EM_HOSPITAL_DEVICE_TYPE_AREA_DOOR_MACHINE, /// ???????? }EM_HOSPITAL_DEVICE_TYPE; ///@brief ?????????? typedef struct tagNET_RECORD_HOSPITAL_DEVICE_INFO { DWORD dwSize; /// ??????? int nRecNo; /// ?????? char szDeviceCode[64]; /// ?????? char szDeviceName[128]; /// ??????? char szCallNumber[32]; /// ???????????? char szRoomNumber[16]; /// ??????????????szRoomNumberEx char szBedNumber[8]; /// ?????? EM_HOSPITAL_DEVICE_TYPE emDeviceType; /// ?????????? char szAddress[24]; /// ?????IP??? char szUserName[33]; /// ????? char szReserved1[3]; /// ?????? char szPassword[33]; /// ???? char szReserved2[3]; /// ?????? int nHostCodeCount; /// ?????????????? char szHostCode[10][64]; /// ??????????????, ??????????????????????????????? int nOnlineStatus; /// ?????????????????????????0????????????, 1????????????????2??????????????? BOOL bIsUsingRoomNumberEx; /// ??????szRoomNumberEx????????????????????? char szRoomNumberEx[64]; /// ?????? char szDeviceOrder[128]; /// ????????????????????????????????? char szDeviceColorLabel[128]; /// ?????????????????????????????????????????? }NET_RECORD_HOSPITAL_DEVICE_INFO; ///@brief ??????? typedef enum tagNET_ANNOUNCE_STATE { NET_ANNOUNCE_STATE_UNSENDED = 0, ///?????(??????) NET_ANNOUNCE_STATE_SENDED, ///??????? NET_ANNOUNCE_STATE_EXPIRED, ///??????? NET_ANNOUNCE_STATE_UNKNOWN, ///??? }NET_ANNOUNCE_STATE; ///@brief ????????????? typedef enum tagNET_ANNOUNCE_READFLAG { NET_ANNOUNCE_READFLAG_UNREADED = 0, ///???? NET_ANNOUNCE_READFLAG_READED, ///??? NET_ANNOUNCE_READFLAG_UNKNOWN, ///??? }NET_ANNOUNCE_READFLAG; ///@brief ????????? typedef struct tagNET_RECORD_ANNOUNCEMENT_INFO { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ??????? NET_TIME stuIssueTime; /// ????M????? char szAnnounceTitle[DH_COMMON_STRING_64]; /// ??????? char szAnnounceContent[DH_COMMON_STRING_256]; ///???????? char szAnnounceDoor[DH_COMMON_STRING_16]; ///?????????????? NET_TIME stuExpireTime; ///??????????? NET_ANNOUNCE_STATE emAnnounceState; ///??????? NET_ANNOUNCE_READFLAG emAnnounceReadFlag; ///????????????? UINT nBackgroundPicture; /// ????????????????(??????????????)?? 0 : ??1 , 1????2 , 2 ?? ??3 BOOL bUseEx; /// ??????szAnnounceTitleEx/szAnnounceContentEx??? char szAnnounceTitleEx[256]; /// ??????? char szAnnounceContentEx[1024]; /// ???????? NET_TIME_EX stuCreateTimeRealUTC; /// ??UTC??????? NET_TIME stuIssueTimeRealUTC; /// ??UTC????M????? NET_TIME stuExpirTimeRealUTC; /// ??UTC??????????? }NET_RECORD_ANNOUNCEMENT_INFO; ///@brief ???????????????? typedef struct tagFIND_RECORD_ANNOUNCEMENT_CONDITION { DWORD dwSize; BOOL bTimeEnable; /// ??????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? }FIND_RECORD_ANNOUNCEMENT_CONDITION; ///@brief ?????????? typedef struct tagNET_RECORD_ALARMRECORD_INFO { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuCreateTime; /// ???????,UTC????,??? int nChannelID; /// ????????? NET_SENSE_METHOD emSenseMethod; /// ???????????? char szRoomNumber[DH_MAX_DOOR_NUM]; /// ????????? NET_ANNOUNCE_READFLAG emReadFlag; /// 0????,1??? char szNotes[128]; /// ??? }NET_RECORD_ALARMRECORD_INFO; ///@brief ????????????????? typedef struct tagFIND_RECORD_ALARMRECORD_CONDITION { DWORD dwSize; BOOL bTimeEnable; /// ??????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? }FIND_RECORD_ALARMRECORD_CONDITION; ///@brief ???????????????? typedef struct tagALARM_ACCESS_CTL_NOT_CLOSE_INFO { DWORD dwSize; int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? NET_TIME stuTime; /// ???????????????? int nAction; /// 0:??? 1:?? UINT nEventID; ///???ID BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? }ALARM_ACCESS_CTL_NOT_CLOSE_INFO; ///@brief ????? typedef enum tagEM_BREAK_IN_METHOD { EM_BREAK_IN_METHOD_UNKNOWN, /// ??? EM_BREAK_IN_METHOD_ILLEGAL, /// ???????:???????????? EM_BREAK_IN_METHOD_REVERSE, /// ??????:????????,??????????? } EM_BREAK_IN_METHOD; ///@brief ????????????? typedef struct tagALARM_ACCESS_CTL_BREAK_IN_INFO { DWORD dwSize; int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? NET_TIME stuTime; /// ???????????????? UINT nEventID; /// ???ID EM_BREAK_IN_METHOD emMethod; /// ????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? BYTE reserved[4]; /// ?????? }ALARM_ACCESS_CTL_BREAK_IN_INFO; ///@brief ????????????????? typedef struct tagALARM_ACCESS_CTL_REPEAT_ENTER_INFO { DWORD dwSize; int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? NET_TIME stuTime; /// ???????????????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? UINT nEventID; ///???ID }ALARM_ACCESS_CTL_REPEAT_ENTER_INFO; ///@brief ????????????????? typedef struct tagALARM_ACCESS_CTL_DURESS_INFO { DWORD dwSize; int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ??????? NET_TIME stuTime; /// ???????????????? UINT nEventID; /// ???ID char szSN[32]; /// ????????????? char szUserID[12]; /// ???ID BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szUserIDEx[32]; /// ???ID??? }ALARM_ACCESS_CTL_DURESS_INFO; ///@brief ?????????? typedef enum tagNET_ACCESS_CTL_EVENT_TYPE { NET_ACCESS_CTL_EVENT_UNKNOWN = 0, NET_ACCESS_CTL_EVENT_ENTRY, /// ???? NET_ACCESS_CTL_EVENT_EXIT, /// ???? }NET_ACCESS_CTL_EVENT_TYPE; ///@brief ????????? typedef enum tagEM_CARD_STATE { EM_CARD_STATE_UNKNOWN = -1, /// ??? EM_CARD_STATE_SWIPE, /// ?????? EM_CARD_STATE_COLLECTION, /// ???????? }EM_CARD_STATE; ///@brief ??????? typedef enum tagEM_USER_TYPE { EM_USER_TYPE_UNKNOWN=-1, EM_USER_TYPE_ORDINARY, EM_USER_TYPE_BLACKLIST, EM_USER_TYPE_VIP, EM_USER_TYPE_GUEST, EM_USER_TYPE_PATROL, EM_USER_TYPE_DISABLED, EM_USER_TYPE_FROZEN, EM_USER_TYPE_LOGOUT, EM_USER_TYPE_LOSSCARD }EM_USER_TYPE; ///@brief ????????????? typedef struct tagNET_VACCINE_INFO { int nVaccinateFlag; /// ???????????????, 0: ??, 1: ?? 2: ????? char szVaccineName[128]; /// ??????????? int nDateCount; /// ??????????????????? char szVaccinateDate[8][32]; /// ??????????? (yyyy-MM-dd). ???????????, ????"0000-00-00", ???????? int nVaccineIntensifyFlag; /// ???????????????????, 0: ???, 1:?? 2: ?? char szReserved[1020]; /// ??????? } NET_VACCINE_INFO; ///@brief ????????? typedef struct tagNET_TRAVEL_INFO { EM_TRAVEL_CODE_COLOR emTravelCodeColor; /// ???????? int nCityCount; /// ???14????????????? char szPassingCity[16][128]; /// ???14???????????. ????????????, ????|????????????? char szReserved[1024]; /// ??????? }NET_TRAVEL_INFO; ///@brief ????????? typedef struct tagNET_HSJC_INFO { char szHSJCReportDate[32]; /// ???????????? (yyyy-MM-dd) int nHSJCExpiresIn; /// ??????????????(??) int nHSJCResult; /// ??????????, -1:???, 0: ??, 1: ????, 2: ?????, 3: ???? char szHSJCInstitution[256]; /// ????????? char szReserved[768]; /// ??????? } NET_HSJC_INFO; ///@brief ????????? typedef struct tagNET_ANTIGEN_INFO { char szAntigenReportDate[32]; /// ???????????? int nAntigenStatus; /// ??????????: 0:?? 1:???? 2:????? 3:???? int nAntigenExpiresIn; /// ??????????????(????:??) char szResvered[256]; /// ??????? }NET_ANTIGEN_INFO; ///@brief ????????????????? typedef struct tagNET_ACCESS_CTL_OBJECT_PROPERTIES { UINT nRedScarfResult; /// ?????????? 0:??? 1:????? 2:???????255:?????????? char szReserved[60]; /// ??????? }NET_ACCESS_CTL_OBJECT_PROPERTIES; ///@brief ???????????? typedef struct tagNET_BUTTON_CONTROL_INFO { int nOperate; /// ????????????0-?????, 1-?????2-?????3-???? UINT nDoorIndex; /// ????????????0x00-???, 0x01-??1, 0x02-??2, 0x03-??1+??2 char szReserved[56]; /// ??????? }NET_BUTTON_CONTROL_INFO; ///@brief ?????? typedef struct tagALARM_ACCESS_CTL_EVENT_INFO { DWORD dwSize; int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? NET_TIME stuTime; /// ???????????????? NET_ACCESS_CTL_EVENT_TYPE emEventType; /// ?????????? BOOL bStatus; /// ??????,TRUE??????,FALSE?????? NET_ACCESSCTLCARD_TYPE emCardType; /// ?????? NET_ACCESS_DOOROPEN_METHOD emOpenMethod; /// ?????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? char szPwd[DH_MAX_CARDPWD_LEN]; /// ???? char szReaderID[DH_COMMON_STRING_32]; /// ???????ID char szUserID[DH_COMMON_STRING_64]; /// ??????? char szSnapURL[DH_COMMON_STRING_256]; /// ???????????? int nErrorCode; /// ???????????? bStatus ??? /// 0x00 ??????? /// 0x10 ????? /// 0x11 ?????????? /// 0x12 ?????????? /// 0x13 ?????????? /// 0x14 ????????? /// 0x15 ??????? /// 0x16 ??????????? /// 0x17 ??????? /// 0x18 AB?????? /// 0x19 ???? /// 0x1A ?????????????? /// 0x20 ???????? /// 0x21 ????????????????? /// 0x23 ?????? /// 0x30 ??????????????????? /// 0x40 ??????,??????????? /// 0x41 ??????,????????? /// 0x42 ??????,??????????? /// 0x43 ??????,?????????? /// 0x44 ??????,??????????? /// 0x45 ??????,????????? /// 0x50 ???????????? /// 0x51 ???????????????? /// 0x60 ??????,?????????? /// 0x61 ??????,?????? /// 0x62 ??????,???? /// 0x63 ??????? /// 0x64 ?????,??????????? /// 0x65 ??????? /// 0x66 ???????? /// 0x67 ??????????? /// 0x68 ????????? /// 0x69 ????????? /// 0x6a ?????????? /// 0x6b ?????????? /// 0x6e ????,??????????? /// 0x6f ?????????? /// 0x70 ???????????? /// 0x71 ??????????????????????????????????? /// 0xA8 ????????? /// 0xB1 ???????????????? /// 0xB2 ????????? int nPunchingRecNo; /// ????????????????? int nNumbers; /// ?????? NET_ACCESSCTLCARD_STATE emStatus; /// ???? char szSN[32]; /// ???????????? NET_ATTENDANCESTATE emAttendanceState; /// ?????? char szQRCode[512]; /// ????? char szCallLiftFloor[16]; /// ???????? EM_CARD_STATE emCardState; /// ?????????? char szCitizenIDNo[20]; /// ????? char szCompanionCards[MAX_COMPANION_CARD_NUM][DH_MAX_CARDINFO_LEN]; /// ??????????? int nCompanionCardCount; /// ??????????? EM_HAT_STYLE emHatStyle; /// ??????? EM_UNIFIED_COLOR_TYPE emHatColor; /// ?????? EM_LIFT_CALLER_TYPE emLiftCallerType; /// ??????????? BOOL bManTemperature; /// ???????????????? NET_MAN_TEMPERATURE_INFO stuManTemperatureInfo; /// ?????????, bManTemperature ?TRUE ????? char szCitizenName[256]; /// ??????? EM_MASK_STATE_TYPE emMask; /// ????????EM_MASK_STATE_UNKNOWN??EM_MASK_STATE_NOMASK??EM_MASK_STATE_WEAR ?????? char szCardName[DH_MAX_CARDNAME_LEN]; /// ?????? UINT nFaceIndex; /// ????????????? EM_USER_TYPE emUserType; /// ???????( EM_USER_TYPE_ORDINARY ?? EM_USER_TYPE_DISABLED ???? ) BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szCompanyName[200]; /// ??????? int nScore; /// ??????????? int nLiftNo; /// ?????? EM_QRCODE_IS_EXPIRED emQRCodeIsExpired; /// ????????????????0 EM_QRCODE_STATE emQRCodeState; /// ??????? NET_TIME stuQRCodeValidTo; /// ??????????? char szDynPWD[32]; /// ???????????????????????????????????????????APP????????????????? UINT nBlockId; /// ?????????????????1??????? char szSection[64]; /// ???????? char szWorkClass[256]; /// ?????? EM_TEST_ITEMS emTestItems; /// ??????? NET_TEST_RESULT stuTestResult; /// ESD????????? char szDeviceID[128]; /// ????????? char szUserUniqueID[128]; /// ?????????ID BOOL bUseCardNameEx; /// ?????????????? char szCardNameEx[128]; /// ????????? char szTempPassword[64]; /// ??????? char szNote[512]; /// ????? int nHSJCResult; ///?????????? -1: ??? 0: ?? 1: ???? 2: ????? 3: ???? NET_VACCINE_INFO stuVaccineInfo; /// ????????????? NET_TRAVEL_INFO stuTravelInfo; /// ????????? char szQRCodeEx[2048]; ///????????????????? NET_HSJC_INFO stuHSJCInfo; /// ??????? NET_ANTIGEN_INFO stuAntigenInfo; /// ????????? char szHealthGreenStatus[20]; /// ????????? ????:"Green" ????:"Red" ????:"Yellow" ??:"Orange" ???:"None" int nAge; /// ???? char szCheckOutType[32]; /// ??????? char szCheckOutCause[512]; /// ?????? int nTargetCheck; /// ???????????????????????????????? /// 0???????????????? /// 1???????????????? /// 2?????????????????? NET_ACCESS_CTL_OBJECT_PROPERTIES stuObjectProperties; ///????????????????? NET_BUTTON_CONTROL_INFO stuButtonControlInfo; /// ???????????? char szReserved[1368]; /// ?????? }ALARM_ACCESS_CTL_EVENT_INFO; ///@brief ??????? typedef enum tagEM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE { EM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE_UNKNOWN, /// ??? EM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE_SUPERMARKET, /// ???? EM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE_RESTAURANT, /// ???? EM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE_FRUITSTORE, /// ????? }EM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE; ///@brief ????????? typedef enum tagEM_NET_RECORD_COMMODITY_NOTICE_BARGAIN_TYPE { EM_NET_RECORD_COMMODITY_NOTICE_BARGAIN_TYPE_UNKNOWN, /// ??? EM_NET_RECORD_COMMODITY_NOTICE_BARGAIN_TYPE_YES, /// ??? EM_NET_RECORD_COMMODITY_NOTICE_BARGAIN_TYPE_NO, /// ??????? }EM_NET_RECORD_COMMODITY_NOTICE_BARGAIN_TYPE; ///@brief ?????????????????? typedef struct tagNET_RECORD_COMMODITY_NOTICE { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuSaleTime; /// ????????? char szName[DH_COMMON_STRING_128]; /// ??????? EM_NET_RECORD_COMMODITY_NOTICE_SOURCE_TYPE emSource; /// ??????? char szURL[DH_COMMON_STRING_256]; /// ?????????, ftp ???? float fPrice; /// ??????, ??????? float char szID[DH_COMMON_STRING_64]; /// ID??,?????????? ????????????ID??? EM_NET_RECORD_COMMODITY_NOTICE_BARGAIN_TYPE emBargain; /// ????????? }NET_RECORD_COMMODITY_NOTICE; ///@brief ???????? typedef enum tagEM_NET_RECORD_HEALTH_CARE_NOTICE_OFFICE_TYPE { EM_NET_RECORD_HEALTH_CARE_NOTICE_OFFICE_TYPE_UNKNOWN, /// ??? EM_NET_RECORD_HEALTH_CARE_NOTICE_OFFICE_TYPE_DIGEST, /// ?????? EM_NET_RECORD_HEALTH_CARE_NOTICE_OFFICE_TYPE_STOMATOLOGY, /// ????? }EM_NET_RECORD_HEALTH_CARE_NOTICE_OFFICE_TYPE; ///@brief ?????????????????? typedef struct tagNET_RECORD_HEALTH_CARE_NOTICE { DWORD dwSize; int nRecNo; /// ????????,??? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szHospital[DH_COMMON_STRING_128]; /// ?????? EM_NET_RECORD_HEALTH_CARE_NOTICE_OFFICE_TYPE emOffice; /// ???? char szOfficeNumber[DH_COMMON_STRING_64]; /// ????? char szDoctorName[DH_COMMON_STRING_128]; /// ??????? char szID[DH_COMMON_STRING_64]; /// ID??,?????????? ????????????ID??? }NET_RECORD_HEALTH_CARE_NOTICE; ///////////////////// ?????????????[CLIENT_StartListenEx] ///////////////////////////////////// ///@brief ??????? DH_IVS_TRAFFIC_REALFLOWINFO(???????????????)????????????????? typedef struct tagALARM_IVS_TRAFFIC_REALFLOW_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID unsigned int nSequence; /// ??? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[3]; int nLane; /// ????????? int nCount; /// ???????? int nSpeed; /// ????,km/h int nOverPercent; /// ?????????? int nMetersUints; /// ??????,0??????,1????? BYTE bReserved[1024]; /// ???????,???????. }ALARM_IVS_TRAFFIC_REALFLOW_INFO; ///@brief ??????? DH_YUEQINGLIGHTING_STATE_EVENT(????????????????)????????????????? typedef struct tagDEV_YUEQINGLIGHTING_STATE_INFO { DWORD dwAction; /// ???????, 0:???, 1:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? BYTE bReserved[1024]; /// ???????,???????. }DEV_YUEQINGLIGHTING_STATE_INFO; ///@brief ??????????? DH_ALARM_VEHICLE_TURNOVER(?????????)???????????????? typedef struct tagALARM_VEHICEL_TURNOVER_EVENT_INFO { NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byRserved[3]; /// ???? NET_TIME_EX UTC; /// ???????????? BYTE bReserved[984]; /// ???????,???????. }ALARM_VEHICEL_TURNOVER_EVENT_INFO; ///@brief ???????????DH_ALARM_VEHICLE_COLLISION(??????????)???????????????? typedef struct tagALARM_VEHICEL_COLLISION_EVENT_INFO { NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byRserved[3]; /// ???? NET_TIME_EX UTC; /// ???????????? BYTE bReserved[984]; /// ???????,???????. }ALARM_VEHICEL_COLLISION_EVENT_INFO; ///@brief ???????????DH_ALARM_VEHICLE_CONFIRM(?????????????)???????????????? typedef struct tagALARM_VEHICEL_CONFIRM_INFO { DWORD dwStructSize; /// ??????? NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byRserved[3]; /// ???? char szInfo[128]; /// ?????????????? }ALARM_VEHICEL_CONFIRM_INFO; ///@brief ???????DH_EVENT_REGISTER_OFF(??????????????????)???????????????? typedef struct tagEVENT_REGISTER_OFF_INFO { DWORD dwStructSize; /// ??????? NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byRserved[3]; /// ???? }EVENT_REGISTER_OFF_INFO; ///@brief ???????????DH_ALARM_VIDEO_TIMING(????????????)???????????????? typedef struct tagALARM_VIDEO_TIMING { DWORD dwStructSize; /// ??????? DWORD dwAction; /// ???????, 0:Pause, 1:Start, 2:Stop DWORD dwChannelID; /// ???????? }ALARM_VIDEO_TIMING; ///@brief ???????????DH_ALARM_VEHICLE_LARGE_ANGLE(??????????????????)???????????????? typedef struct tagALARM_VEHICEL_LARGE_ANGLE { DWORD dwStructSize; /// ??????? NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byRserved[3]; /// ???? unsigned int nSequence; /// ??? }ALARM_VEHICEL_LARGE_ANGLE; ///@brief ???????????DH_ALARM_AUDIO_ANOMALY(????????)???????????????? typedef struct tagALARM_AUDIO_ANOMALY { DWORD dwStructSize; /// ??????? DWORD dwAction; /// ???????, 0:Start, 1:Stop DWORD dwChannelID; /// ???????? int nDecibel; /// ??????? int nFrequency; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_AUDIO_ANOMALY; ///@brief ??????????? typedef enum tagEM_AUDIO_MUTATION_ALARM_TYPE { AUDIO_MUTATION_UNKNOW, AUDIO_MUTATION_CRY, AUDIO_MUTATION_ALARM, AUDIO_MUTATION_GUNSHOT, AUDIO_MUTATION_EXPLOSION, AUDIO_MUTATION_SCREAM, AUDIO_MUTATION_CRASHINGGLASS, }EM_AUDIO_MUTATION_ALARM_TYPE; ///@brief ???????????DH_ALARM_AUDIO_MUTATION(?????????)???????????????? typedef struct tagALARM_AUDIO_MUTATION { DWORD dwStructSize; /// ??????? DWORD dwAction; /// ???????, 0:Start, 1:Stop DWORD dwChannelID; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? EM_AUDIO_MUTATION_ALARM_TYPE emAudioType; /// ???????? char reserved[512]; /// ??????? }ALARM_AUDIO_MUTATION; ///@brief ??????????? DH_ALARM_AUDIO_DETECT (?????????)???????????????? typedef struct tagALARM_AUDIO_DETECT { DWORD dwAction; /// ???????, 1:Start, 2:Stop DWORD dwChannelID; /// ???????? char reserved[512]; /// ???? } ALARM_AUDIO_DETECT; #define MAX_SENSORID_NUMBER 20 /// ???????????? #define MAX_TYRE_NUM 128 /// ?????????? ///@brief ????????????????? typedef enum tagAlarmTyreFlag { ALARM_TYRE_FLAG_NONE, /// ?????????? ALARM_TYRE_FLAG_NORMAL, /// ???? ALARM_TYRE_FLAG_HIGHPRESSURE, /// ??? ALARM_TYRE_FLAG_LOWERPRESSURE, /// ??? ALARM_TYRE_FLAG_HIGHTEMP, /// ????? ALARM_TYRE_FLAG_HIGHTEMP_HIGHPRESSURE, /// ?????????? ALARM_TYRE_FLAG_HIGHTEMP_LOWERPRESSURE, /// ?????????? ALARM_TYRE_FLAG_INVALID, /// ????????????? }EM_ALARM_TYER_FALG; ///@brief ???????? typedef struct tagTYRE_INFO_UNIT { DWORD dwStructSize; /// ??????? DWORD dwSensorIDNum; /// ?????????? DWORD dwSensorID[MAX_SENSORID_NUMBER]; /// ??????ID??? DWORD dwTyreNum; /// ?????? DWORD dwTyrePlace; /// ??????????? EM_ALARM_TYER_FALG emAlarmFlag; /// ??????????? int nTemp; /// ???,?????? int nTempLimit; /// ???,?????? float fPressure; /// ???,????Kpa float fUpperLimit; /// ?????????????,????Kpa float fLowerLimit; /// ?????????????,????Kpa float fVoltage; /// ?????????????,???? V }TYRE_INFO_UNIT; ///@brief ???????????DH_EVENT_TYREINFO(????????????)???????????????? typedef struct tagEVENT_TYRE_INFO { DWORD dwStructSize; /// ??????? DWORD dwAction; /// ???????, 0:Pause, 1:Stop DWORD dwTyreNum; /// ??????? TYRE_INFO_UNIT *pstuTyre; /// ?????? }EVENT_TYRE_INFO; /////////////////////////?????????????////////////////////////////// ///@brief ????????? typedef struct { BYTE byFormatTag; /// ????????,??0??PCM WORD nChannels; /// ?????? WORD wBitsPerSample; /// ??????? DWORD nSamplesPerSec; /// ?????? } DH_AUDIO_FORMAT, *LPDH_AUDIO_FORMAT; /////////////////////////?????????????////////////////////////////// ///@brief ?????????????8???????,???CLIENT_QueryUserInfo??CLIENT_OperateUserInfo??? ///@brief ?????? typedef struct _OPR_RIGHT { DWORD dwID; char name[DH_RIGHT_NAME_LENGTH]; char memo[DH_MEMO_LENGTH]; } OPR_RIGHT; ///@brief ?????? typedef struct _USER_INFO { DWORD dwID; DWORD dwGroupID; char name[DH_USER_NAME_LENGTH]; char passWord[DH_USER_PSW_LENGTH]; DWORD dwRightNum; DWORD rights[DH_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; DWORD dwReusable; /// ??????1??????,0???????? } USER_INFO; ///@brief ???????? typedef struct _USER_GROUP_INFO { DWORD dwID; char name[DH_USER_NAME_LENGTH]; DWORD dwRightNum; DWORD rights[DH_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; } USER_GROUP_INFO; ///@brief ???????? typedef struct _USER_MANAGE_INFO { DWORD dwRightNum; /// ?????? OPR_RIGHT rightList[DH_MAX_RIGHT_NUM]; DWORD dwGroupNum; /// ???????? USER_GROUP_INFO groupList[DH_MAX_GROUP_NUM]; DWORD dwUserNum; /// ?????? USER_INFO userList[DH_MAX_USER_NUM]; DWORD dwSpecial; /// ?????????????1????????????,0?????????????? } USER_MANAGE_INFO; /// ?????????????8????16???????,?????????CLIENT_QueryUserInfoEx??CLIENT_OperateUserInfoEx #define DH_USER_NAME_LENGTH_EX 16 /// ????????? #define DH_USER_PSW_LENGTH_EX 16 /// ???? ///@brief ?????? typedef struct _OPR_RIGHT_EX { DWORD dwID; char name[DH_RIGHT_NAME_LENGTH]; char memo[DH_MEMO_LENGTH]; } OPR_RIGHT_EX; ///@brief ?????? typedef struct _USER_INFO_EX { DWORD dwID; DWORD dwGroupID; char name[DH_USER_NAME_LENGTH_EX]; char passWord[DH_USER_PSW_LENGTH_EX]; DWORD dwRightNum; DWORD rights[DH_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; DWORD dwFouctionMask; /// ????,0x00000001 - ?????????? BYTE byReserve[32]; } USER_INFO_EX; ///@brief ???????? typedef struct _USER_GROUP_INFO_EX { DWORD dwID; char name[DH_USER_NAME_LENGTH_EX]; DWORD dwRightNum; DWORD rights[DH_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; } USER_GROUP_INFO_EX; ///@brief ???????? typedef struct _USER_MANAGE_INFO_EX { DWORD dwRightNum; /// ?????? OPR_RIGHT_EX rightList[DH_MAX_RIGHT_NUM]; DWORD dwGroupNum; /// ???????? USER_GROUP_INFO_EX groupList[DH_MAX_GROUP_NUM]; DWORD dwUserNum; /// ?????? USER_INFO_EX userList[DH_MAX_USER_NUM]; DWORD dwFouctionMask; /// ????0x00000001 - ??????????,0x00000002 - ?????????????? BYTE byNameMaxLength; /// ????????????? BYTE byPSWMaxLength; /// ???????????? BYTE byReserve[254]; } USER_MANAGE_INFO_EX; /// ??????64????????,?????????CLIENT_QueryUserInfoNew??CLIENT_OperateUserInfoNew #define DH_NEW_MAX_RIGHT_NUM 1024 #define DH_NEW_USER_NAME_LENGTH 128 /// ????????? #define DH_NEW_USER_PSW_LENGTH 128 /// ???? ///@brief ?????? typedef struct _OPR_RIGHT_NEW { DWORD dwSize; DWORD dwID; char name[DH_RIGHT_NAME_LENGTH]; char memo[DH_MEMO_LENGTH]; } OPR_RIGHT_NEW; ///@brief ?????? typedef struct _USER_INFO_NEW { DWORD dwSize; DWORD dwID; DWORD dwGroupID; char name[DH_NEW_USER_NAME_LENGTH]; char passWord[DH_NEW_USER_PSW_LENGTH]; DWORD dwRightNum; DWORD rights[DH_NEW_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; DWORD dwFouctionMask; /// ????,0x00000001 - ?????????? NET_TIME stuTime; /// ????????? BYTE byIsAnonymous; /// ?????????????, 0:???????????, 1: ??????????? BYTE byReserve[7]; } USER_INFO_NEW; ///@brief ?????????,??????????? typedef struct tagNET_USER_INFO_NEW_EX { DWORD dwSize; DWORD dwID; /// ???ID DWORD dwGroupID; /// ??????????????ID char szName[128]; /// ??????? char szPassWord[128]; /// ??????? DWORD dwRightNum; /// ????????? DWORD dwRights[3072]; /// ?????????? char szMemo[32]; /// ????????? DWORD dwFouctionMask; /// ????,0x00000001 - ?????????? NET_TIME stuTime; /// ????????? BYTE byIsAnonymous; /// ?????????????, 0:???????????, 1: ??????????? BYTE byReserve[3]; } NET_USER_INFO_NEW_EX; ///@brief ?????????????????????????? typedef struct tagREMAIN_MODIFY_TIME_AND_LOCK_SECOND { DWORD dwSize; /// ??????? int nRemainModifytimes; /// ?????????????????????? int nRemainLockSecond; /// ??????????????????????????????????????? }REMAIN_MODIFY_TIME_AND_LOCK_SECOND; ///@brief ???????? typedef struct _USER_GROUP_INFO_NEW { DWORD dwSize; DWORD dwID; char name[DH_USER_NAME_LENGTH_EX]; DWORD dwRightNum; DWORD rights[DH_NEW_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; } USER_GROUP_INFO_NEW; ///@brief ???????????,?????????? typedef struct _USER_GROUP_INFO_EX2 { DWORD dwSize; DWORD dwID; char name[DH_NEW_USER_NAME_LENGTH]; DWORD dwRightNum; DWORD rights[DH_NEW_MAX_RIGHT_NUM]; char memo[DH_MEMO_LENGTH]; } USER_GROUP_INFO_EX2; ///@brief ???????????3,??????????? typedef struct tagNET_USER_GROUP_INFO_EX3 { DWORD dwSize; DWORD dwID; /// ?????ID char szName[128]; /// ????????? DWORD dwRightNum; /// ?????? DWORD dwRights[3072]; /// ??????? char szMemo[32]; /// ?????? BYTE byReserve[4]; } NET_USER_GROUP_INFO_EX3; ///@brief ???????? typedef struct _USER_MANAGE_INFO_NEW { DWORD dwSize; DWORD dwRightNum; /// ?????? OPR_RIGHT_NEW rightList[DH_NEW_MAX_RIGHT_NUM]; DWORD dwGroupNum; /// ??????? USER_GROUP_INFO_NEW groupList[DH_MAX_GROUP_NUM]; /// ????????,?????????,?????groupListEx DWORD dwUserNum; /// ?????? USER_INFO_NEW userList[DH_MAX_USER_NUM]; DWORD dwFouctionMask; /// ????0x00000001 - ??????????,0x00000002 - ?????????????? BYTE byNameMaxLength; /// ????????????? BYTE byPSWMaxLength; /// ???????????? BYTE byReserve[254]; USER_GROUP_INFO_EX2 groupListEx[DH_MAX_GROUP_NUM]; /// ??????????? } USER_MANAGE_INFO_NEW; ///@brief ??????????? typedef struct tagNET_USER_MANAGE_INFO_NEW_EX { DWORD dwSize; BYTE byRightListFlag; /// ???????,????0?,??????????????pstuRightList????????????????????????, /// 0:??????, [1,254]:????????, 255:???????????254 BYTE byGroupListFlag; /// ???????,????0?,??????????????pstuGroupList????????????????????????, /// 0:??????, [1,254]:????????, 255:???????????254 BYTE byUserListFlag; /// ???????,????0?,??????????????pstuUserList????????????????????????, /// 0:??????, [1,254]:????????, 255:???????????254 BYTE byReserved1[9]; DWORD dwMaxRightNum; /// ?????????????????????A??,??????3*1024 DWORD dwRetRightNum; /// ??????????????????,??????? OPR_RIGHT_NEW* pstuRightList; /// ??????????,????????????? DWORD dwMaxGroupNum; /// ??????????????????????????A??,??????64 DWORD dwRetGroupNum; /// ???????????????????????,??????? NET_USER_GROUP_INFO_EX3* pstuGroupList; /// ???????????????,????????????? DWORD dwMaxUserNum; /// ?????????????????????A??,??????200 DWORD dwRetUserNum; /// ???????????????????,??????? NET_USER_INFO_NEW_EX* pstuUserList; /// ??????????,????????????? DWORD dwFouctionMask; /// ????;0x00000001 - ??????????,0x00000002 - ?????????????? BYTE byNameMaxLength; /// ????????????? BYTE byPSWMaxLength; /// ???????????? BYTE byReserved[2]; } NET_USER_MANAGE_INFO_NEW_EX; ///@brief CLIENT_OperateUserInfoNew?????? nOperateType ?????????? typedef enum tagEM_OPERATE_USERINFO_TYPE { /// ??????????? 1024 EM_OPERATE_USERINFO_TYPE_ADD_USER = 3, /// ???????,opParam??????? USER_INFO_NEW EM_OPERATE_USERINFO_TYPE_DEL_USER, /// ??????,opParam??????? USER_INFO_NEW EM_OPERATE_USERINFO_TYPE_MODIFY_USER, /// ??????,opParam???????????? ??????? USER_INFO_NEW, subParam????????? ??????? USER_INFO_NEW EM_OPERATE_USERINFO_TYPE_MODIFY_PWD, /// ???????,opParam?????????? ??????? USER_INFO_NEW, subParam??????? ??????? USER_INFO_NEW EM_OPERATE_USERINFO_TYPE_ADD_GROUP, /// ?????????,opParam??????? USER_GROUP_INFO_EX2 EM_OPERATE_USERINFO_TYPE_DEL_GROUP, /// ????????,opParam??????? USER_GROUP_INFO_EX2 EM_OPERATE_USERINFO_TYPE_MODIFY_GROUP, /// ????????,opParam?????????????? ??????? USER_GROUP_INFO_EX2,subParam??????????? ??????? USER_GROUP_INFO_EX2 /// ??????????? 3072 EM_OPERATE_USERINFO_TYPE_ADD_USER_EX = 10, /// ??????????,opParam??????? NET_USER_INFO_NEW_EX EM_OPERATE_USERINFO_TYPE_DEL_USER_EX, /// ?????????,opParam??????? NET_USER_INFO_NEW_EX EM_OPERATE_USERINFO_TYPE_MODIFY_USER_EX, /// ?????????,opParam???????????? ??????? NET_USER_INFO_NEW_EX, subParam????????? ??????? NET_USER_INFO_NEW_EX EM_OPERATE_USERINFO_TYPE_MODIFY_PWD_EX, /// ??????????,opParam?????????? ??????? NET_USER_INFO_NEW_EX, subParam??????? ??????? NET_USER_INFO_NEW_EX EM_OPERATE_USERINFO_TYPE_ADD_GROUP_EX, /// ????????????,opParam??????? NET_USER_GROUP_INFO_EX3 EM_OPERATE_USERINFO_TYPE_DEL_GROUP_EX, /// ???????????,opParam??????? NET_USER_GROUP_INFO_EX3 EM_OPERATE_USERINFO_TYPE_MODIFY_GROUP_EX, /// ???????????,opParam?????????????? ??????? NET_USER_GROUP_INFO_EX3,subParam??????????? ??????? NET_USER_GROUP_INFO_EX3 }EM_OPERATE_USERINFO_TYPE; ///////////////////////////?????????/////////////////////////////// ///@brief ?????????????? typedef struct _DH_LANGUAGE_DEVINFO { DWORD dwLanguageNum; /// ?????????? BYTE byLanguageType[252]; /// ????,???DH_LANGUAGE_TYPE } DH_DEV_LANGUAGE_INFO, *LPDH_DEV_LANGUAGE_INFO; ///@brief ??????????IPC??????? typedef struct { int nTypeCount; /// ????IPC???? BYTE bSupportTypes[128]; /// ????,???EM_IPC_TYPE }DH_DEV_IPC_INFO; ///@brief 3G??????????? typedef struct { int nStrategy; /// ???????,0-??????????,1-???????? int nUplimit; /// ????????, ???????, ??????, ????MB; ?????,?????? int nUsed; /// ?????????,??????nUplimit??? BYTE bReserved[64]; /// ??????? }DH_DEV_3GFLOW_INFO; ///@brief 3G?????? typedef struct { BYTE byEthNum; /// 3G????? BYTE byReserved[255]; /// ??????? }DH_DEV_3GMODULE_INFO; ///@brief DDNS??? typedef struct { DWORD dwId; /// ddns ??????id?? char szState[DH_MAX_DDNS_STATE_LEN]; /// ddns ?? BYTE bReserved[512]; /// ??????? }DH_DEV_DNS_INFO; ///@brief ?????DDNS????? typedef struct { DWORD dwDdnsServerNum; DH_DEV_DNS_INFO stDdns[DH_MAX_DDNS_NUM]; }DH_DEV_MULTI_DDNS_INFO; ///@brief ???URL??? typedef struct { char szURLInfo[512]; ///???URL???, ?????????? BYTE bReserved[512]; }DH_DEV_URL_INFO; ///@brief ?????? typedef struct { DWORD dwVolume; /// ????????, ????MB(B??????) DWORD dwFreeSpace; /// ?????????, ????MB(B??????) BYTE dwStatus; /// ???????????????????,????????????EM_DISK_TYPE????????????????????,0-????,1-??,2-????????DWORD??????BYTE BYTE bDiskNum; /// ???? BYTE bSubareaNum; /// ?????? BYTE bSignal; /// ???,0????? 1???? } NET_DEV_DISKSTATE,*LPNET_DEV_DISKSTATE; ///@brief ????????? typedef struct _DH_HARDDISK_STATE { DWORD dwDiskNum; /// ???? NET_DEV_DISKSTATE stDisks[DH_MAX_DISKNUM]; /// ?????????? } DH_HARDDISK_STATE, *LPDH_HARDDISK_STATE; typedef DH_HARDDISK_STATE DH_SDCARD_STATE; /// SD??,???????????? ///@brief ??????????? typedef struct { DH_TALK_CODING_TYPE encodeType; /// ???????? int nAudioBit; /// ????,??8??16?? DWORD dwSampleRate; /// ??????,??8000??16000?? int nPacketPeriod; /// ???????, ????ms char reserved[60]; } DHDEV_TALKDECODE_INFO; ///@brief ?????????????????? typedef struct { int nSupportNum; /// ???? DHDEV_TALKDECODE_INFO type[64]; /// ???????? char reserved[64]; } DHDEV_TALKFORMAT_LIST; #define NAME_MAX_LEN 16 ///@brief ?????????? typedef struct { DWORD dwHighMask; /// ????????????? DWORD dwLowMask; /// ????????????? char szName[NAME_MAX_LEN]; /// ???????????? WORD wCamAddrMin; /// ????????????? WORD wCamAddrMax; /// ???????????? WORD wMonAddrMin; /// ????????????? WORD wMonAddrMax; /// ???????????? BYTE bPresetMin; /// ?????????? BYTE bPresetMax; /// ????????? BYTE bTourMin; /// ????????????????? BYTE bTourMax; /// ???????????????? BYTE bPatternMin; /// ????????????? BYTE bPatternMax; /// ???????????? BYTE bTileSpeedMin; /// ???????????? BYTE bTileSpeedMax; /// ??????????? BYTE bPanSpeedMin; /// ??????????? BYTE bPanSpeedMax; /// ?????????? BYTE bAuxMin; /// ?????????????? BYTE bAuxMax; /// ????????????? int nInternal; /// ?????????????? char cType; /// ????????? BYTE bReserved_1; /// ???? BYTE bFuncMask; /// ???????????,???????,?????????,???????????????????,??????????????? BYTE bReserved_2; char Reserved[4]; } PTZ_OPT_ATTR; ///@brief ?????????? typedef enum tagEM_NET_BURN_DEV_TRAY_TYPE { EM_NET_BURN_DEV_TRAY_TYPE_UNKNOWN, /// ??? EM_NET_BURN_DEV_TRAY_TYPE_READY, /// ??????? EM_NET_BURN_DEV_TRAY_TYPE_OPEN, /// ??????? EM_NET_BURN_DEV_TRAY_TYPE_NODISK, /// ???? EM_NET_BURN_DEV_TRAY_TYPE_NOT_READY, /// ?????????? }EM_NET_BURN_DEV_TRAY_TYPE; ///@brief ????????? typedef enum tagEM_NET_BURN_DEV_OPERATE_TYPE { EM_NET_BURN_DEV_OPERATE_TYPE_UNKNOWN, /// ??? EM_NET_BURN_DEV_OPERATE_TYPE_WRITE, /// ????? EM_NET_BURN_DEV_OPERATE_TYPE_READ, /// ????? EM_NET_BURN_DEV_OPERATE_TYPE_IDLE, /// ???? }EM_NET_BURN_DEV_OPERATE_TYPE; ///@brief ???????? typedef struct _NET_DEV_BURNING { DWORD dwDriverType; /// ??????????????0??DHFS,1??DISK,2??CDRW DWORD dwBusType; /// ?????????0??USB,1??1394,2??IDE, 3: SATA, 4: ESATA DWORD dwTotalSpace; /// ??????(KB) DWORD dwRemainSpace; /// ???????(KB) BYTE dwDriverName[DH_BURNING_DEV_NAMELEN]; /// ????????????? EM_NET_BURN_DEV_TRAY_TYPE emTrayType; /// ?????????? EM_NET_BURN_DEV_OPERATE_TYPE emOperateType; /// ????????? } NET_DEV_BURNING, *LPNET_DEV_BURNING; ///@brief ??????????? typedef struct _DH_BURNING_DEVINFO { DWORD dwDevNum; /// ?????????? NET_DEV_BURNING stDevs[DH_MAX_BURNING_DEV_NUM]; /// ??????????? } DH_BURNING_DEVINFO, *LPDH_BURNING_DEVINFO; ///@brief ??????? typedef struct _DH_BURNING_PROGRESS { BYTE bBurning; /// ?????????0????????,1??????????????,?????????????, /// 2????????????(????????0),3????????????????,4?????????????????,????????????????? BYTE bRomType; /// ????????0??????????,1?????????U??,2?????? BYTE bOperateType; /// ?????????0??????,1???????????,2??????????,3???????????????, 4: ?????? BYTE bType; /// ???????????????0-?? 1-??? 2-???? 3-?? 4-???? 5-???????? 6-??? 7-??????? NET_TIME stTimeStart; /// ?????? DWORD dwTimeElapse; /// ???????(??) DWORD dwTotalSpace; /// ?????????? DWORD dwRemainSpace; /// ??????????? DWORD dwBurned; /// ???????? WORD dwStatus; /// ???? WORD wChannelMask; /// ??????????????? } DH_BURNING_PROGRESS, *LPDH_BURNING_PROGRESS; ///@brief ??????,??????CLIENT_QueryLog??? typedef struct _DH_LOG_ITEM { DHDEVTIME time; /// ???? unsigned short type; /// ??????????????? DH_LOG_TYPE unsigned char reserved; /// ???? unsigned char data; /// ???? unsigned char context[8]; /// ???? } DH_LOG_ITEM, *LPDH_LOG_ITEM; ///@brief ??????,?????????CLIENT_QueryLogEx,????reserved(int nType=1;reserved=&nType;) typedef struct _DH_NEWLOG_ITEM { DHDEVTIME time; /// ???? WORD type; /// ?????????????????? DH_NEWLOG_TYPE WORD data; /// ???? char szOperator[8]; /// ????? BYTE context[16]; /// ???? } DH_NEWLOG_ITEM, *LPDH_NEWLOG_ITEM; ///@brief ??????,??????CLIENT_QueryDeviceLog??? typedef struct _DH_DEVICE_LOG_ITEM { int nLogType; /// ??????? DHDEVTIME stuOperateTime; /// ???? char szOperator[16]; /// ?????? BYTE bReserved[3]; BYTE bUnionType; /// union??????,0:szLogContext??1:stuOldLog?? union { char szLogContext[64]; /// ????????? struct { DH_LOG_ITEM stuLog; /// ?????????? BYTE bReserved[48]; /// ???? }stuOldLog; }; char reserved[16]; } DH_DEVICE_LOG_ITEM, *LPDH_DEVICE_LOG_ITEM; ///@brief ??????????,??????CLIENT_QueryDeviceLog??? typedef struct _DH_DEVICE_LOG_ITEM_EX { int nLogType; /// ??????? DHDEVTIME stuOperateTime; /// ???? char szOperator[16]; /// ?????? BYTE bReserved[3]; BYTE bUnionType; /// union??????,0:szLogContext??1:stuOldLog?? union { char szLogContext[64]; /// ????????? struct { DH_LOG_ITEM stuLog; /// ?????????? BYTE bReserved[48]; /// ???? }stuOldLog; }; char szOperation[32]; /// ???????????? char szDetailContext[4*1024]; /// ????????????? } DH_DEVICE_LOG_ITEM_EX, *LPDH_DEVICE_LOG_ITEM_EX; ///@brief ?????????,?????????????context typedef struct _LOG_ITEM_RECORD { DHDEVTIME time; /// ??? BYTE channel; /// ??? BYTE type; /// ??????? BYTE reserved[2]; } LOG_ITEM_RECORD, *LPLOG_ITEM_RECORD; ///@brief ???????????? typedef struct _QUERY_DEVICE_LOG_PARAM { DH_LOG_QUERY_TYPE emLogType; /// ?????????? NET_TIME stuStartTime; /// ????????????? NET_TIME stuEndTime; /// ?????????????? int nStartNum; /// ???????????????????????,????????????????0 int nEndNum; /// ??????????????????????,??????????????????1024 BYTE nLogStuType; /// ??????????????,0:???DH_DEVICE_LOG_ITEM??1:???DH_DEVICE_LOG_ITEM_EX BYTE reserved[3]; /// ???? ???? unsigned int nChannelID; /// ?????,0:??????????????????,??????????1???; 1:???????? BYTE bReserved[40]; } QUERY_DEVICE_LOG_PARAM; ///@brief ?????????????? typedef enum tagNET_EM_LOG_QUERY_TYPE { EM_LOG_QUERY_TYPE_UNKNOWN, EM_LOG_QUERY_TYPE_TEXT = 1, ///?????????? }NET_EM_LOG_QUERY_TYPE; ///@brief ??????????????? typedef struct __DEV_DISK_RECORD_INFO { NET_TIME stuBeginTime; /// ?????????? NET_TIME stuEndTime; /// ????????? char reserved[128]; } DEV_DISK_RECORD_INFO; ///@brief ??????????????? typedef struct __DEV_DISK_RECORD_TIME { NET_TIME stuStartTime1; /// ???????1?????? NET_TIME stuEndTime1; /// ???????1??????? BOOL bTwoPart; /// ?????????? NET_TIME stuStartTime2; /// ???????2?????? NET_TIME stuEndTime2; /// ???????2??????? BYTE bDiskNum; /// ???? BYTE bSubareaNum; /// ?????? BYTE byReserved[62]; /// ??????? }DEV_DISK_RECORD_TIME; ///////////////////////////??????????/////////////////////////////// ///@brief ???????????? typedef struct _NKB_PARAM { BYTE bAddressCode; /// ?DVR????????????????,0xFF?????? BYTE bKeyStatus; /// ???? 0/1 0??????????? 1?????????? BYTE bExtern1; /// ??????1 BYTE bExtern2; /// ??????2 BYTE bReserved[60]; }NKB_PARAM; ///@brief ?????? typedef struct _DISKCTRL_PARAM { DWORD dwSize; /// ???????,????????? int nIndex; /// ???????????DH_HARDDISK_STATE???????stDisks????,??0??? int ctrlType; /// ????????, /// 0 - ???????, 1 - ?????????, 2 - ???????? /// 3 - ?????????, 4 - ???????, 5 - ?????????,7 - ????SD??????SD???????????? NET_DEV_DISKSTATE stuDisk; /// ???????, ??????????????????????, ???????????? } DISKCTRL_PARAM; ///@brief ?????? typedef struct { BYTE bSubareaNum; /// ?????????? BYTE bIndex; /// ???????????DH_HARDDISK_STATE???????stDisks????,??0??? BYTE bSubareaSize[32]; /// ??????????????? BYTE bReserved[30]; /// ???? } DISKCTRL_SUBAREA; ///@brief ?????? typedef struct _ALARMCTRL_PARAM { DWORD dwSize; int nAlarmNo; /// ?????????,??0??? int nAction; /// 1??????????,0???????? } ALARMCTRL_PARAM; ///@brief ??????? typedef struct _MATRIXCTRL_PARAM { DWORD dwSize; int nChannelNo; /// ????????,??0??? int nMatrixNo; /// ?????????,??0??? } MATRIXCTRL_PARAM; ///@brief ??????? typedef struct _BURNING_PARM { int channelMask; /// ???????,???????????????? BYTE devMask; /// ?????????,??????????????????,??????? BYTE bySpicalChannel; /// ?????????(?????+31,???????4??????,?????35) BYTE byReserved[2]; /// ??????? } BURNNG_PARM; ///@brief ??????? typedef struct _BURNING_PARM_ATTACH { BOOL bAttachBurn; /// ???????????,0:????; 1:?? BYTE bReserved[12]; /// ??????? } BURNING_PARM_ATTACH; ///@brief ????????? typedef struct _MANUAL_SNAP_PARAMETER{ int nChannel; /// ?????,??0??? BYTE bySequence[64]; /// ????????????? ?????????????????????#n?????????n??????????????123#3??????????3?????????????????123?? BYTE byReserved[60]; /// ??????? }MANUAL_SNAP_PARAMETER; ///@brief ????????????????????? typedef struct _DEVICE_LOCALPREVIEW_SLIPT_PARAMETER { int nSliptMode; /// ?????,????????????????????? int nSubSliptNum; /// ?????????????,??1??? BYTE byReserved[64]; /// ??????? }DEVICE_LOCALPREVIEW_SLIPT_PARAMETER; ///@brief ??????????????????? typedef struct _DEVICE_LOCALPREVIEW_SLIPT_CAP { int nModeNumber; int nSliptMode[36]; /// ????????, BYTE byReserved[64]; /// ??????? }DEVICE_LOCALPREVIEW_SLIPT_CAP; ///@brief ??????? typedef struct _CROSSING_INFO { char szCrossingID[DH_MAX_CROSSING_ID]; /// ?????????? DWORD dwLatitude; /// ????(?????????????,????0-180??)??m??30??.??183382?????120183382) DWORD dwLongitude; /// ????(?????????????,????0-360??) ??Q??100??.??178274?????280178274?? /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? WORD wSpeedLimit; /// ?????????,????Km/h 0?????????,???????????????? BYTE byReserved[22]; }CROSSING_INFO; ///@brief ?????????? typedef struct _ROUTE_CROSSING_INFO { BYTE byCrossingNum; /// ????????????????1~DH_MAX_CROSSING_NUM BYTE byReserved1; WORD wCrossingRange; /// ???????????????m CROSSING_INFO stCrossingInfo[DH_MAX_CROSSING_NUM];/// ?????????????128?????? BYTE byReserved2[2044]; }ROUTE_CROSSING_INFO; ///@brief raid???? typedef struct _CTRL_RAID_INFO { char szAction[16]; /// Add????,Delete??? char szName[16]; /// Raid???? int nType; /// ???? 1:Jbod 2:Raid0 3:Raid1 4:Raid5 int nStatus; /// ?? 0:unknown ,1:active,2:degraded,3:inactive,4:recovering int nCntMem; /// nMember???????????????? int nMember[32]; /// 1,2,3,... ?????????,??????? int nCapacity; /// ????,????G int nRemainSpace; /// ???????,????M int nTank; /// ????? 0:????,1:?????1,2:?????2,???? char reserved[128]; }CTRL_RAID_INFO; ///@brief ??????? typedef struct _CTRL_SPARE_DISK_INFO { char szAction[16]; /// Enable,???,Unable,????? char szScope[16]; /// Global,??????,Local,???????? char szName[16]; /// ???????,??Scope?Global,?????????????,??????Raid??????? unsigned int nIndex; /// ??????? const char* pszDevName; /// ??????????,???????????? char reserved[124]; }CTRL_SPARE_DISK_INFO; ///@brief ????????????? typedef struct _CTRL_SPARE_DISK_INFO_A { int nCnt; /// ????????? CTRL_SPARE_DISK_INFO stSpaceDiskInfo[32]; }CTRL_SPARE_DISK_INFO_A; ///@brief ?????????????? typedef struct __CTRL_ARM_DISARM_PARAM { BYTE bState; /// ????????,0???????,1???????,2????????? char reserve[3]; const char* szDevPwd; /// ??????? NET_SCENE_MODE emSceneMode; /// ???? const char* szDevID; /// ?????????ID,?NULL???????? char reserve1[16]; } CTRL_ARM_DISARM_PARAM; ///@brief ???????????????????????? typedef struct tagCTRL_ARM_DISARM_PARAM_EX_IN { DWORD dwSize; NET_ALARM_MODE emState; /// ???????? const char* szDevPwd; /// ??????? NET_SCENE_MODE emSceneMode; /// ???? const char* szDevID; /// ?????????ID,?NULL???????? } CTRL_ARM_DISARM_PARAM_EX_IN; #define ARM_DISARM_ZONE_MAX (256) /// ?????????? ///@brief ???????????????????????? typedef struct tagCTRL_ARM_DISARM_PARAM_EX_OUT { DWORD dwSize; DWORD dwSourceNum; /// ???????????????????????? int nSource[ARM_DISARM_ZONE_MAX]; /// ????????????????????, ???????0??? DWORD dwLinkNum; /// ????????????????????????? int nLink[ARM_DISARM_ZONE_MAX]; /// ???????????????????, ???????0??? } CTRL_ARM_DISARM_PARAM_EX_OUT; ///@brief ?????????????????(???DH_CTRL_ARMED_EX) typedef struct tagCTRL_ARM_DISARM_PARAM_EX { DWORD dwSize; CTRL_ARM_DISARM_PARAM_EX_IN stuIn; /// ?????????????????? CTRL_ARM_DISARM_PARAM_EX_OUT stuOut; /// ????????????????? } CTRL_ARM_DISARM_PARAM_EX; ///@brief ??????? typedef struct tagDHCTRL_CONNECT_WIFI_BYWPS_IN { DWORD dwSize; int nType; /// WPS????????,0:????????; 1:(?????)pin???; 2:(wifi????)pin??? char szSSID[DH_MAX_SSID_LEN]; /// SSID,nType?1??2?????,??????32?? char szApPin[DH_MAX_APPIN_LEN]; /// APPIN??, nType?2?????,PIN???8??????,???pin?????wifi????????? char szWLanPin[DH_MAX_APPIN_LEN]; /// ???pin??,nType?1?????:?????????????;??????????????????,??????8??????,???pin?????WIFI???????? }DHCTRL_CONNECT_WIFI_BYWPS_IN; ///@brief ???????? typedef struct tagDHCTRL_CONNECT_WIFI_BYWPS_OUT { DWORD dwSize; char szRetWLanPin[DH_MAX_APPIN_LEN];/// ???????PIN??,??WPS?????????(?????)pin????????????????? }DHCTRL_CONNECT_WIFI_BYWPS_OUT; ///@brief CLIENT_ControlDevice????DH_CTRL_WIFI_BY_WPS???????(WPS????????WIFI) typedef struct tagDHCTRL_CONNECT_WIFI_BYWPS { DWORD dwSize; DHCTRL_CONNECT_WIFI_BYWPS_IN stuWpsInfo; /// ???????(?????????) DHCTRL_CONNECT_WIFI_BYWPS_OUT stuWpsResult; /// ????????(?????????) } DHCTRL_CONNECT_WIFI_BYWPS; ///@brief CLIENT_ControlDevice???? DH_CTRL_CLOSE_BURNER ?? ??????? typedef struct tagNET_CTRL_BURNERDOOR { DWORD dwSize; const char* szBurnerName; /// ????????,???/dev/sda?? BOOL bResult; /// ??????? BOOL bSafeEject; /// ????????????, TRUE-??????????????, FALSE-?????? }NET_CTRL_BURNERDOOR; ///@brief CLIENT_ControlDevice???? DH_CTRL_START_PLAYAUDIO ??????? typedef struct tagNET_CTRL_START_PLAYAUDIO { DWORD dwSize; char szAudioPath[DH_MAX_AUDIO_PATH]; }NET_CTRL_START_PLAYAUDIO; ///@brief ??????????? typedef enum tagNET_PLAYAUDIO_TYPE { NET_PLAYAUDIO_TYPE_UNKNOWN = 0, NET_PLAYAUDIO_TYPE_PHRASE, /// ????????,??????????,???????????,????????????????? NET_PLAYAUDIO_TYPE_FILE, /// ????????????????????(?????????????) NET_PLAYAUDIO_TYPE_PLATERNUM, /// ???????????,??????????????? NET_PLAYAUDIO_TYPE_MONEY, /// ???????,???????????? NET_PLAYAUDIO_TYPE_DATE, /// ????????,????????????? NET_PLAYAUDIO_TYPE_TIME, /// ???????,???????????? NET_PLAYAUDIO_TYPE_EMPTY, /// ??????,???????????? }NET_PLAYAUDIO_TYPE; ///@brief ????????????? typedef enum EM_PLAYAUDIO_PRIORITY { EM_PLAYAUDIO_PRIORITY_UNKNOWN, /// ??? EM_PLAYAUDIO_PRIORITY_FRONT, /// ???????????????????????????????????? EM_PLAYAUDIO_PRIORITY_BACK, /// ???????????????????????????????????? EM_PLAYAUDIO_PRIORITY_EMERGENCY, /// ?????? EM_PLAYAUDIO_PRIORITY_FRONT??????????????????????? }EM_PLAYAUDIO_PRIORITY; ///@brief ???????????? typedef struct tagNET_CTRL_PLAYAUDIO_INFO { DWORD dwSize; NET_PLAYAUDIO_TYPE emPlayAudioType; /// ???????????,???NET_PLAYAUDIO_TYPE char szDetail[DH_COMMON_STRING_128]; /// ???????????????????? /// Phrase????:"???" /// File????: "/home/???.pcm" /// PlateNumbe????: "??A12345" /// Money????: "80.12?" /// Date????: "2014??4??10??" /// Time????: "1??10???20??5?? int nRepeatTimes; /// ??????????? EM_PLAYAUDIO_PRIORITY emPriority; /// ????????? }NET_CTRL_PLAYAUDIO_INFO; #define DH_MAX_PLAYAUDIO_COUNT 16 /// ??????????? ///@brief CLIENT_ControlDevice???? DH_CTRL_START_PLAYAUDIOEX ??????? typedef struct tagNET_CTRL_START_PLAYAUDIOEX { DWORD dwSize; unsigned int nAudioCount; /// ??????????? NET_CTRL_PLAYAUDIO_INFO stuAudioInfos[DH_MAX_PLAYAUDIO_COUNT]; /// ???????????? UINT nListRepeatTimes; /// ???????????????????, ??????????????? }NET_CTRL_START_PLAYAUDIOEX; ///@brief CLIENT_ControlDevice???? DH_CTRL_START_ALARMBELL??DH_CTRL_STOP_ALARMBELL??????? typedef struct tagNET_CTRL_ALARMBELL { DWORD dwSize; int nChannelID; /// ?????(0???) }NET_CTRL_ALARMBELL; ///@brief ???????--?????? typedef enum tagEM_OPEN_DOOR_TYPE { EM_OPEN_DOOR_TYPE_UNKNOWN = 0, EM_OPEN_DOOR_TYPE_REMOTE, /// ?????? EM_OPEN_DOOR_TYPE_LOCAL_PASSWORD, /// ?????????? EM_OPEN_DOOR_TYPE_LOCAL_CARD, /// ??????????? EM_OPEN_DOOR_TYPE_LOCAL_BUTTON, /// ?????????? }EM_OPEN_DOOR_TYPE; ///@brief ??????? typedef enum tagEM_OPEN_DOOR_DIRECTION { EM_OPEN_DOOR_DIRECTION_UNKNOWN, /// ???????????????? EM_OPEN_DOOR_DIRECTION_FROM_ENTER, /// ??????????? EM_OPEN_DOOR_DIRECTION_FROM_LEAVE, /// ??????????? }EM_OPEN_DOOR_DIRECTION; ///@brief ???????????? typedef enum tagEM_REMOTE_CHECK_CODE { EM_REMOTE_CHECK_CODE_UNKNOWN = -1, /// ??? EM_REMOTE_CHECK_CODE_SUCCESS, /// ??? EM_REMOTE_CHECK_CODE_FAIL, /// ??? }EM_REMOTE_CHECK_CODE; ///@brief CLIENT_ControlDevice???? DH_CTRL_ACCESS_OPEN ??????? typedef struct tagNET_CTRL_ACCESS_OPEN { DWORD dwSize; int nChannelID; /// ?????(0???) const char* szTargetID; /// ?????????ID,?NULL???????? char szUserID[MAX_COMMON_STRING_32]; /// ??????ID EM_OPEN_DOOR_TYPE emOpenDoorType; /// ?????? EM_OPEN_DOOR_DIRECTION emOpenDoorDirection; /// ??????? EM_REMOTE_CHECK_CODE emRemoteCheckCode; /// ???????????? char szShortNumber[16]; /// ??????? }NET_CTRL_ACCESS_OPEN; ///@brief ????????????? typedef enum tagEM_NET_DOOR_WORK_MODE_TYPE { NET_DOOR_WORK_MODE_UNKNOWN, /// ??? NET_DOOR_WORK_MODE_NORMAL, /// ?????? NET_DOOR_WORK_MODE_SHUTDOWN, /// ??? NET_DOOR_WORK_MODE_UNUSED, /// ??? NET_DOOR_WORK_MODE_OPEN_DOOR_CONTINUE, /// ?????? }EM_NET_DOOR_WORK_MODE_TYPE; ///@brief ???????????????????? typedef struct tagNET_IN_CTRL_ACCESS_SET_DOOR_WORK_MODE { DWORD dwSize; EM_NET_DOOR_WORK_MODE_TYPE emWorkMode; /// ?????????? int nChannelID; /// ???ID }NET_IN_CTRL_ACCESS_SET_DOOR_WORK_MODE; ///@brief ????????????????????? typedef struct tagNET_OUT_CTRL_ACCESS_SET_DOOR_WORK_MODE { DWORD dwSize; }NET_OUT_CTRL_ACCESS_SET_DOOR_WORK_MODE; ///@brief ?????????LED?????????? typedef struct tagNET_IN_CTRL_SYNC_CABINLED_TIME { DWORD dwSize; }NET_IN_CTRL_SYNC_CABINLED_TIME; ///@brief ?????????LED??????????? typedef struct tagNET_OUT_CTRL_SYNC_CABINLED_TIME { DWORD dwSize; }NET_OUT_CTRL_SYNC_CABINLED_TIME; ///@brief ??????LED??????????? typedef enum tagEM_NET_CABIN_LED_PLAY_CONTROL_MODE { NET_CABIN_LED_PLAY_CONTROL_MODE_UNKNOWN, /// ??? NET_CABIN_LED_PLAY_CONTROL_MODE_NORMAL_TURN_ON, /// ???????? ( ???? ) NET_CABIN_LED_PLAY_CONTROL_MODE_NEXT_PROGRAM, /// ?????? NET_CABIN_LED_PLAY_CONTROL_MODE_PREVIOUS_PROGRAM, /// ????? NET_CABIN_LED_PLAY_CONTROL_MODE_PAUSE, /// ??????? NET_CABIN_LED_PLAY_CONTROL_MODE_PAUSE_TURN_OFF, /// ??????? ( ???? ) NET_CABIN_LED_PLAY_CONTROL_MODE_PLAY_GO_ON, /// ???????? NET_CABIN_LED_PLAY_CONTROL_MODE_GO_TO_TEST_ITSELF,/// ??????? NET_CABIN_LED_PLAY_CONTROL_MODE_EXIT_TEST_ITSELF, /// ?????? NET_CABIN_LED_PLAY_CONTROL_MODE_SYSTEM_RESET, /// ?????? }EM_NET_CABIN_LED_PLAY_CONTROL_MODE; ///@brief ??????LED????????????? typedef struct tagNET_IN_CTRL_CABINLED_PLAYCONTROL { DWORD dwSize; EM_NET_CABIN_LED_PLAY_CONTROL_MODE emAction; /// ???????? }NET_IN_CTRL_CABINLED_PLAYCONTROL; ///@brief ??????LED?????????????? typedef struct tagNET_OUT_CTRL_CABINLED_PLAYCONTROL { DWORD dwSize; }NET_OUT_CTRL_CABINLED_PLAYCONTROL; ///@brief ??????LED????????????????? typedef enum tagEM_NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE { NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE_UNKNOWN = -1, /// ??? NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE_ADD = 0, /// ???? NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE_MODIFY = 1, /// ??? NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE_DELETE = 2, /// ??? }EM_NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE; ///@brief ??????LED??????????? typedef enum tagEM_NET_CABIN_LED_MODIFY_CONTENT_EFFECT_TYPE { NET_MODIFY_CONTENT_EFFECT_TYPE_UNKNOWN = -1, NET_MODIFY_CONTENT_EFFECT_TYPE_SHOW = 0, /// ??????? NET_MODIFY_CONTENT_EFFECT_TYPE_MOVE_LEFT, /// ???? NET_MODIFY_CONTENT_EFFECT_TYPE_MOVE_RIGHT, /// ???? NET_MODIFY_CONTENT_EFFECT_TYPE_MOVE_UP, /// ???? NET_MODIFY_CONTENT_EFFECT_TYPE_MOVE_DOWN, /// ???? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_LEFT, /// ????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_RIGHT, /// ????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_UP, /// ????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_DOWN, /// ????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_UP_LEFT, /// ?????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_DOWN_LEFT, /// ?????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_UP_RIGHT, /// ?????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_DOWN_RIGHT, /// ?????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_LEFT_RIGHT_TO_CENTER, /// ????????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_CENTER_TO_LEFT_RIGHT, /// ????????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_UP_DOWN_TO_CENTER, /// ????????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_CENTER_TO_UP_DOWN, /// ????????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_LEFT_CROSS_RIGHT, /// ?????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_UP_CROSS_DOWN, /// ?????????? NET_MODIFY_CONTENT_EFFECT_TYPE_VERTICAL_BLINDS, /// ???????? NET_MODIFY_CONTENT_EFFECT_TYPE_HORIZONTAL_BLINDS, /// ??????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_CENTER_TO_SIDES, /// ???????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_SIDES_TO_CENTER, /// ???????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_CENTER_TO_CORNER, /// ???????????? NET_MODIFY_CONTENT_EFFECT_TYPE_FILL_UP_CORNER_TO_CENTER, /// ???????????? NET_MODIFY_CONTENT_EFFECT_TYPE_ROTATE_360, /// ???360?? NET_MODIFY_CONTENT_EFFECT_TYPE_ROTATE_180, /// ???180?? }EM_NET_CABIN_LED_MODIFY_CONTENT_EFFECT_TYPE; ///@brief ??????LED????????????? typedef struct tagNET_IN_CTRL_CABINLED_MODIFY_CONTENT { DWORD dwSize; EM_NET_CABIN_LED_MODIFY_CONTENT_CMD_TYPE emCmd; /// ??????? int nMsgID; /// ???ID ??1-5 EM_NET_CABIN_LED_MODIFY_CONTENT_EFFECT_TYPE emEffect; /// ???????? int nSpeed; /// ?????? ???0??15 int nDuration; /// ?????? ??????? char szText[512]; /// ????????? }NET_IN_CTRL_CABINLED_MODIFY_CONTENT; ///@brief ??????LED?????????????? typedef struct tagNET_OUT_CTRL_CABINLED_MODIFY_CONTENT { DWORD dwSize; }NET_OUT_CTRL_CABINLED_MODIFY_CONTENT; ///@brief ?????????LED?????????? typedef struct tagNET_IN_CTRL_CABINLED_GET_CONTENT { DWORD dwSize; int nMsgID; /// ???ID ??1-5 }NET_IN_CTRL_CABINLED_GET_CONTENT; ///@brief ?????????LED??????????? typedef struct tagNET_OUT_CTRL_CABINLED_GET_CONTENT { DWORD dwSize; int nMsgID; /// ???ID ??1-5 EM_NET_CABIN_LED_MODIFY_CONTENT_EFFECT_TYPE emEffect; /// ???????? int nSpeed; /// ?????? ???0??15 int nDuration; /// ?????? ??????? char szText[512]; /// ????????? }NET_OUT_CTRL_CABINLED_GET_CONTENT; #define NET_CABINLED_SCHEDULE_TIME_SECTION_NUM 8 /// ??????LED?????????????????? ///@brief ??????????LED????????????????? typedef struct tagNET_IN_CTRL_CABINLED_SET_SCHEDULE { DWORD dwSize; int nIndex; /// ????????? 0 ??????? 1~6 ???????????? DH_TSECT stuTimeSection[NET_CABINLED_SCHEDULE_TIME_SECTION_NUM]; /// ???????????? DH_TSECT???????bEnable ?0???????????????????? }NET_IN_CTRL_CABINLED_SET_SCHEDULE; ///@brief ??????????LED?????????????????? typedef struct tagNET_OUT_CTRL_CABINLED_SET_SCHEDULE { DWORD dwSize; }NET_OUT_CTRL_CABINLED_SET_SCHEDULE; ///@brief ?????????LED????????????????? typedef struct tagNET_IN_CTRL_CABINLED_GET_SCHEDULE { DWORD dwSize; int nIndex; /// ????????? 0 ??????? 1~6 ???????????? }NET_IN_CTRL_CABINLED_GET_SCHEDULE; ///@brief ?????????LED?????????????????? typedef struct tagNET_OUT_CTRL_CABINLED_GET_SCHEDULE { DWORD dwSize; DH_TSECT stuTimeSection[NET_CABINLED_SCHEDULE_TIME_SECTION_NUM]; /// ???????????? DH_TSECT???????bEnable ?0???????????????????? }NET_OUT_CTRL_CABINLED_GET_SCHEDULE; ///@brief ?????????LED?????????????????? typedef struct tagNET_IN_CTRL_CABINLED_GET_CHAR_ENCODING { DWORD dwSize; /// ??????? }NET_IN_CTRL_CABINLED_GET_CHAR_ENCODING; ///@brief ?????????LED??????????????????? typedef struct tagNET_OUT_CTRL_CABINLED_GET_CHAR_ENCODING { DWORD dwSize; /// ??????? int nCharacterEncoding; /// ???????? 0-GB2312 1-Unicode }NET_OUT_CTRL_CABINLED_GET_CHAR_ENCODING; ///@brief ??????LED???????? typedef enum tagEM_CABIN_LED_CONTROL_TYPE { DH_CABIN_LED_CONTROL_UNKNOWN, /// ??? DH_CABIN_LED_CONTROL_SYNC_TIME, /// ?????????LED?????(pInParam???????NET_IN_CTRL_SYNC_CABINLED_TIME,pOutParam???????NET_OUT_CTRL_SYNC_CABINLED_TIME) DH_CABIN_LED_CONTROL_PLAY_CONTROL, /// ??????LED???????(pInParam???????NET_IN_CTRL_CABINLED_PLAYCONTROL,pOutParam???????NET_OUT_CTRL_CABINLED_PLAYCONTROL) DH_CABIN_LED_CONTROL_MODIFY_CONTENT, /// ??????LED????????(pInParam???????NET_IN_CTRL_CABINLED_MODIFY_CONTENT,pOutParam???????NET_OUT_CTRL_CABINLED_MODIFY_CONTENT) DH_CABIN_LED_CONTROL_GET_CONTENT, /// ?????????LED????(pInParam???????NET_IN_CTRL_CABINLED_GET_CONTENT,pOutParam???????NET_OUT_CTRL_CABINLED_GET_CONTENT) DH_CABIN_LED_CONTROL_SET_SCHEDULE, /// ??????????LED??????(pInParam???????NET_IN_CTRL_CABINLED_SET_SCHEDULE,pOutParam???????NET_OUT_CTRL_CABINLED_SET_SCHEDULE) DH_CABIN_LED_CONTROL_GET_SCHEDULE, /// ?????????LED??????(pInParam???????NET_IN_CTRL_CABINLED_GET_SCHEDULE,pOutParam???????NET_OUT_CTRL_CABINLED_GET_SCHEDULE) DH_CABIN_LED_CONTROL_GET_CHAR_ENCODING, /// ?????????LED???????????(pInParam???????NET_IN_CTRL_CABINLED_GET_CHAR_ENCODING,pOutParam???????NET_OUT_CTRL_CABINLED_GET_CHAR_ENCODING) }EM_CABIN_LED_CONTROL_TYPE; ///@brief CLIENT_ControlDevice???? DH_CTRL_ACCESS_CLOSE ??????? typedef struct tagNET_CTRL_ACCESS_CLOSE { DWORD dwSize; /// ??????? int nChannelID; /// ?????(0???) }NET_CTRL_ACCESS_CLOSE; ///@brief ??????? typedef enum tagNET_ALARM_TYPE { NET_ALARM_LOCAL = 0, ///??????????????????(??? DH_ALARM_ALARM_EX2 ???) NET_ALARM_ALARMEXTENDED, ///??????l?????(??? DH_ALARM_ALARMEXTENDED ???) NET_ALARM_TEMP, ///?????????(??? DH_ALARM_TEMPERATURE ???) NET_ALARM_URGENCY, ///???????????(??? DH_URGENCY_ALARM_EX ???) NET_ALARM_RCEMERGENCYCALL, ///???????????????(??? DH_ALARM_RCEMERGENCY_CALL ???) NET_ALARM_ALL, ///??????????? }NET_ALARM_TYPE; ///@brief CLIENT_ControlDevice???? DH_CTRL_CLEAR_ALARM ??????? typedef struct tagNET_CTRL_CLEAR_ALARM { DWORD dwSize; int nChannelID; /// ?????????, -1 ?????????? NET_ALARM_TYPE emAlarmType; /// ???????(???????????,??????nEventType???) const char* szDevPwd; /// ????????????,??????????????,??????NULL BOOL bEventType; /// ??????????nEventType???, TRUE:nEventType????emAlarmType???, FALSE:????emAlarmType???,????nEventType??? int nEventType; /// ???????, ??? fMessCallBack ????????lCommand???, ??CLIENT_StartListenEx???????????? /// ????DH_ALARM_ALARM_EX2????????????? char szName[128]; /// ??????? BOOL bIsUsingName; /// ????????????????? }NET_CTRL_CLEAR_ALARM; ///@brief ?????????????????? typedef struct tagNET_CTRL_MONITORWALL_TVINFO { DWORD dwSize; int nMonitorWallID; /// ?????ID, DH_CTRL_MONITORWALL_TVINFO ?? DH_DEVSTATE_MONITORWALL_TVINFO????????? BOOL bDecodeChannel; /// ?????????????, DH_CTRL_MONITORWALL_TVINFO ???? BOOL bControlID; /// ??????????ID, DH_CTRL_MONITORWALL_TVINFO ???? BOOL bCameraID; /// ??????????????????ID, DH_CTRL_MONITORWALL_TVINFO ???? } NET_CTRL_MONITORWALL_TVINFO; ///@brief CLIENT_ControlDevice???? DH_CTRL_START_VIDEO_ANALYSE ??????? typedef struct tagNET_CTRL_START_VIDEO_ANALYSE { DWORD dwSize; int nChannelId; /// ????? }NET_CTRL_START_VIDEO_ANALYSE; ///@brief CLIENT_ControlDevice???? DH_CTRL_STOP_VIDEO_ANALYSE ??????? typedef struct tagNET_CTRL_STOP_VIDEO_ANALYSE { DWORD dwSize; int nChannelId; /// ????? }NET_CTRL_STOP_VIDEO_ANALYSE; ///@brief CLIENT_ControlDevice???? DH_CTRL_MULTIPLAYBACK_CHANNALES ??????? typedef struct tagNET_CTRL_MULTIPLAYBACK_CHANNALES { DWORD dwSize; LLONG lPlayBackHandle; /// ?????,CLIENT_MultiPlayBack??????? int nChannels[DH_MAX_MULTIPLAYBACK_CHANNEL_NUM];/// ???????? int nChannelNum; /// ???????? }NET_CTRL_MULTIPLAYBACK_CHANNALES; ///@brief CLIENT_ControlDevice???? DH_CTRL_SET_BYPASS ??????? typedef struct tagNET_CTRL_SET_BYPASS { DWORD dwSize; const char* szDevPwd; /// ????????????? NET_BYPASS_MODE emMode; /// ????? int nLocalCount; /// ?????????????????? int* pnLocal; /// ???????????????? int nExtendedCount; /// ??????l????????????? int* pnExtended; /// ??????l??????????? }NET_CTRL_SET_BYPASS; ///@brief CLIENT_ControlDevice???? DH_CTRL_SET_MEDIAKIND ??????? typedef struct tagNET_CTRL_SET_MEDIAKIND { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_CTRL_SET_MEDIAKIND) int nMediaKind; /// ???????,0:????????????,1:????????,2:???????? DWORD dwChannelCount; /// ????????? int nChannels[256]; /// ????????(??0???) } NET_IN_SET_MEDIAKIND; ///@brief CLIENT_ControlDevice???? DH_CTRL_SET_MEDIAKIND ??????? typedef struct tagNET_OUT_SET_MEDIAKIND { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_SET_MEDIAKIND) } NET_OUT_SET_MEDIAKIND; /////////////////////////////////////////////////////////////////////////////////////////////////// ///@brief CLIENT_QueryDevState???? DH_DEVSTATE_GET_BYPASS ??????? typedef struct tagNET_DEVSTATE_GET_BYPASS { DWORD dwSize; int nLocalCount; /// ?????????????????? int* pnLocal; /// ???????????????? int nExtendedCount; /// ??????l????????????? int* pnExtended; /// ??????l??????????? NET_BYPASS_MODE* pemLocal; /// ???????????????? NET_BYPASS_MODE* pemExtended; /// ??????l??????????? }NET_DEVSTATE_GET_BYPASS; ///@brief CLIENT_QueryDevState???? DH_DEVSTATE_BURNERDOOR ??????? typedef struct tagNET_DEVSTATE_BURNERDOOR { DWORD dwSize; const char* szBurnerName; /// ????????,???/dev/sda?? bool bEjected; /// ?????????? BYTE Reserved[3]; /// ???? }NET_DEVSTATE_BURNERDOOR; ///@brief CLIENT_QueryDevState???? DH_DEVSTATE_GET_DATA_CHECK ??????? typedef struct tagNET_DEVSTATE_DATA_CHECK { DWORD dwSize; /// ??????? const char* szBurnerName; /// ????????,???/dev/s",???????????,???????????????? char szState[DH_MAX_STRING_LEN]; /// "NotStart":???????,"Verifying":??????,"Failed":???,"Successed":??? int nPercent; /// ???????:0-100,state??Verifying??????? }NET_DEVSTATE_DATA_CHECK; ///@brief ?????? typedef enum { DH_DVR_DISCONNECT=-1, /// ??????????????? DH_DVR_SERIAL_RETURN=1, /// ???????????????? ??? char* szDevSerial NET_DEV_AUTOREGISTER_RETURN, /// ????????????????????? ???NET_CB_AUTOREGISTER NET_DEV_NOTIFY_IP_RETURN, /// ????????IP, ??????????????, ??????ip????????????????????????????????? }EM_DEV_INFO; ///@brief CLIENT_ListenServer ?????fServiceCallBack???????????????? typedef struct tagNET_CB_AUTOREGISTER { DWORD dwSize; /// ??????? char szDevSerial[DH_DEV_SERIALNO_LEN];/// ?????? char szToken[MAX_PATH]; /// ???? }NET_CB_AUTOREGISTER; ///@brief ????????????????? typedef struct tagCLOUDSERVICE_CONNECT_PARAM { DWORD dwSize; char szDstIp[DH_MAX_IPADDR_EX_LEN]; /// ??????IP int nDstPort; /// ?????????? DWORD dwConnectType; /// ?????????0?????????,1???????????,2????????, 3????????????????0xb4??? char szToken[MAX_PATH]; /// ???????????????????ID???? }NET_CLOUDSERVICE_CONNECT_PARAM; ///@brief ??????????? typedef struct tagCLOUDSERVICE_CONNECT_RESULT { DWORD dwSize; DWORD dwConnectState; /// ???????????1???,0??? char szMessage[DH_MAX_CLOUDCONNECT_STATE_LEN]; /// ?????????,"Success","Password Error","Network Error","Timeout" }NET_CLOUDSERVICE_CONNECT_RESULT; ///////////////////////////??????????/////////////////////////////// ///@brief ?????? typedef struct tagNET_DEVICEINFO { BYTE sSerialNumber[DH_SERIALNO_LEN]; /// ?????? BYTE byAlarmInPortNum; /// DVR??????????? BYTE byAlarmOutPortNum; /// DVR??????????? BYTE byDiskNum; /// DVR?????? BYTE byDVRType; /// DVR????,????? NET_DEVICE_TYPE union { BYTE byChanNum; /// DVR???????,??????????? BYTE byLeftLogTimes; /// ????????????????????,?????????????,?????????,?0????????????? }; } NET_DEVICEINFO, *LPNET_DEVICEINFO; ///@brief ????????? typedef struct { BYTE sSerialNumber[DH_SERIALNO_LEN]; /// ?????? int nAlarmInPortNum; /// DVR??????????? int nAlarmOutPortNum; /// DVR??????????? int nDiskNum; /// DVR?????? int nDVRType; /// DVR????,????? NET_DEVICE_TYPE int nChanNum; /// DVR??????? BYTE byLimitLoginTime; /// ?????????,?0???????????,??0????????????? BYTE byLeftLogTimes; /// ????????????????????,?????????????,?????????,?0????????????? BYTE bReserved[2]; /// ???????,,???????? int nLockLeftTime; /// ????????,???????????????????, -1????????????????? char Reserved[4]; /// ????,???????? int nNTlsPort; /// ????TLS??????,????????????24????? char Reserved2[16]; /// ???? } NET_DEVICEINFO_Ex, *LPNET_DEVICEINFO_Ex; ///@brief ?????????????,??16????????????,??16??????????? typedef struct { DWORD dwSoftwareVersion; DWORD dwSoftwareBuildDate; DWORD dwDspSoftwareVersion; DWORD dwDspSoftwareBuildDate; DWORD dwPanelVersion; DWORD dwPanelSoftwareBuildDate; DWORD dwHardwareVersion; DWORD dwHardwareDate; DWORD dwWebVersion; DWORD dwWebBuildDate; } DH_VERSION_INFO, *LPDH_VERSION_INFO; ///@brief ?????????????,???CLIENT_QueryDevState??? typedef struct { char szDevSerialNo[DH_DEV_SERIALNO_LEN]; /// ?????? char byDevType; /// ???????,?????NET_DEVICE_TYPE char szDevType[DH_DEV_TYPE_LEN]; /// ?????????,????????,??????? int nProtocalVer; /// ???????? char szSoftWareVersion[DH_MAX_URL_LEN]; DWORD dwSoftwareBuildDate; char szPeripheralSoftwareVersion[DH_MAX_URL_LEN];/// ?????????,????????,??????? DWORD dwPeripheralSoftwareBuildDate; char szGeographySoftwareVersion[DH_MAX_URL_LEN]; /// ???????????????????,????????,??????? DWORD dwGeographySoftwareBuildDate; char szHardwareVersion[DH_MAX_URL_LEN]; DWORD dwHardwareDate; char szWebVersion[DH_MAX_URL_LEN]; DWORD dwWebBuildDate; char szDetailType[MAX_COMMON_STRING_64]; /// ?????????,????????,??????? char reserved[192]; } DHDEV_VERSION_INFO; ///@brief DSP????????,???CLIENT_GetDevConfig??? typedef struct { DWORD dwVideoStandardMask; /// ??????????,??????????????????????? DWORD dwImageSizeMask; /// ?????????,????????????????????????? DWORD dwEncodeModeMask; /// ??????????,?????????????????????????? DWORD dwStreamCap; /// ?????????????????????, /// ????????????????? /// ????????????????1 /// ?????????????????2 /// ????????????jpg?? DWORD dwImageSizeMask_Assi[8]; /// ??????????????????,?????????????????? DWORD dwMaxEncodePower; /// DSP?????????????? WORD wMaxSupportChannel; /// ???DSP?????????????????? WORD wChannelMaxSetSync; /// DSP????????????????????????0???????,1????? } DH_DSP_ENCODECAP, *LPDH_DSP_ENCODECAP; ///@brief DSP????????,???????,???CLIENT_QueryDevState??? typedef struct { DWORD dwVideoStandardMask; /// ??????????,??????????????????????? DWORD dwImageSizeMask; /// ?????????,????????????????????? DWORD dwEncodeModeMask; /// ??????????,?????????????????????? DWORD dwStreamCap; /// ?????????????????????, /// ????????????????? /// ????????????????1 /// ?????????????????2 /// ????????????jpg?? DWORD dwImageSizeMask_Assi[32]; /// ??????????????????,?????????????????? DWORD dwMaxEncodePower; /// DSP?????????????? WORD wMaxSupportChannel; /// ???DSP?????????????????? WORD wChannelMaxSetSync; /// DSP????????????????????????0???????,1????? BYTE bMaxFrameOfImageSize[32]; /// ???????????????????,??dwVideoStandardMask??????? BYTE bEncodeCap; /// ???,???????????????????,?????????????????? /// 0?????????????????+??????????????? <= ????????????, /// 1?????????????????+??????????????? <= ????????????, /// ??????????????? <= ???????????????, /// ???????????? <= ????????????, /// ?????????????????? <= ???????????? /// 2??N5??????? /// ???????????? <= ???????????? /// ????????????????????? char reserved[95]; } DHDEV_DSP_ENCODECAP, *LPDHDEV_DSP_ENCODECAP; ///@brief DSP???????????,???CLIENT_QueryDevState??? typedef struct { DWORD dwVideoStandardMask; /// ??????????,??????????????????????? DWORD dwImageSizeMask; /// ?????????,????????????????????? DWORD dwEncodeModeMask; /// ??????????,?????????????????????? DWORD dwStreamCap; /// ?????????????????????, /// ????????????????? /// ????????????????1 /// ?????????????????2 /// ?????????????????3 /// ????????????jpg?? DWORD dwImageSizeMask_Assi[3][64];/// ??????????????????,??????????????????, ????????0,1,2??????????????1,2,3 DWORD dwMaxEncodePower; /// DSP?????????????? WORD wMaxSupportChannel; /// ???DSP?????????????????? WORD wChannelMaxSetSync; /// DSP????????????????????????0???????,1????? BYTE bMaxFrameOfImageSize[32]; /// ???????????????????,??dwVideoStandardMask??????? BYTE bEncodeCap; /// ???,???????????????????,?????????????????? /// 0?????????????????+??????????????? <= ????????????, /// 1?????????????????+??????????????? <= ????????????, /// ??????????????? <= ???????????????, /// ???????????? <= ????????????, /// ?????????????????? <= ???????????? /// 2??N5??????? /// ???????????? <= ???????????? /// ????????????????????? BYTE btReserve1[3]; /// ?????? DWORD dwExtraStream; /// ??0???????????, ?????????????????????, ???????????????1,?????????????2 DWORD dwCompression[3]; /// ??????????????????????????? char reserved[108]; } DHDEV_DSP_ENCODECAP_EX, *LPDHDEV_DSP_ENCODECAP_EX; ///@brief ????? typedef struct { DWORD dwSize; /* ?????????????????? */ DH_VERSION_INFO stVersion; DH_DSP_ENCODECAP stDspEncodeCap; /// DSP???????? BYTE szDevSerialNo[DH_DEV_SERIALNO_LEN]; /// ?????? BYTE byDevType; /// ???????,?????NET_DEVICE_TYPE BYTE szDevType[DH_DEV_TYPE_LEN]; /// ?????????,????????,??????? BYTE byVideoCaptureNum; /// ????????? BYTE byAudioCaptureNum; /// ????????? BYTE byTalkInChanNum; /// ????????????? BYTE byTalkOutChanNum; /// ????????????? BYTE byDecodeChanNum; /// NSP BYTE byAlarmInNum; /// ??????????? BYTE byAlarmOutNum; /// ??????????? BYTE byNetIONum; /// ??????? BYTE byUsbIONum; /// USB?????? BYTE byIdeIONum; /// IDE???? BYTE byComIONum; /// ???????? BYTE byLPTIONum; /// ???????? BYTE byVgaIONum; /// NSP BYTE byIdeControlNum; /// NSP BYTE byIdeControlType; /// NSP BYTE byCapability; /// NSP,??????? BYTE byMatrixOutNum; /// ?????????????? /* ?????????????????? */ BYTE byOverWrite; /// ????????????(???????) BYTE byRecordLen; /// ????????? BYTE byDSTEnable; /// ??????????? 1-??? 0-????? WORD wDevNo; /// ??????,??????? BYTE byVideoStandard; /// ??????:0-PAL,1-NTSC BYTE byDateFormat; /// ?????? BYTE byDateSprtr; /// ???????(0??".",1??"-",2??"/") BYTE byTimeFmt; /// ????? (0-24???,1??12???) BYTE byLanguage; /// ???????DH_LANGUAGE_TYPE } DHDEV_SYSTEM_ATTR_CFG, *LPDHDEV_SYSTEM_ATTR_CFG; ///@brief ????????????????? typedef struct { DWORD dwType; /// ????(??GetDevConfig??SetDevConfig??????) WORD wResultCode; /// ??????0?????,1?????,2??????????,3????????????,4???????? WORD wRebootSign; /// ?????????0???????????,1??????????????? DWORD dwReserved[2]; /// ???? } DEV_SET_RESULT; /// ??????????????????? #define DYNAMIC_RESPONSE_ERROR_CODE_BEGIN 1000 ///@brief ??????????????????? typedef struct { DWORD dwResultCode; /// ??????? /// 1:?????,2:????????????,3:???????, 4:???????????????????? /// 11:????????????????????? /// 12:??????? /// 13:????????????? /// 14: ??????????,???????,????????? /// 15: ????????????,??????? /// 16: ??????????????????????????? /// 21: ??????????????, /// 22: ???????????????????????? /// 23: ??????????????????????? /// 24: ???????????????????? /// 25: ???????????????????????????? /// 26: ???????????????????????????????? /// 27: ????????????? /// 28: KMS?????????????????????????????????? /// ??????????????????????1000??? /// DYNAMIC_RESPONSE_ERROR_CODE_BEGIN + 1(1001): ????????? LLONG lPlayHandle; /// ??????? BYTE byReserved[32]; /// ??????? }DEV_PLAY_RESULT; ///@brief ???????????????????? typedef struct { DWORD dwResultCode; /// ??????? CLIENT_GetLastError???????? /// NET_ERROR_TALK_REJECT _EC(375) /// ?????? /// NET_ERROR_TALK_RESOURCE_CONFLICIT _EC(377) /// ?????? /// NET_ERROR_TALK_UNSUPPORTED_ENCODE _EC(378) /// ???????????????? /// NET_ERROR_TALK_RIGHTLESS _EC(379) /// ????? LLONG lTalkHandle; /// ??????? BYTE byReserved[32]; /// ??????? }DEV_TALK_RESULT; ///@brief DST(?????)???? typedef struct tagDH_DST_POINT { int nYear; /// ??[200 - 2037] int nMonth; /// ??[1 - 12] int nHour; /// ??? [0 - 23] int nMinute; /// ???? [0 - 59] int nWeekOrDay; /// [-1 - 4]0:?????????????????? /// 1: ???????: ?????,2: ?????,3: ??????,4: ??????,-1: ?????? union { int iWeekDay; /// ??[0 - 6](nWeekOrDay??????????)0:??????, 1:?????, 2:?????,3:??????,4:??????,5:??????,6:?????? int iDay; /// ????[1 - 31] (nWeekOrDay???????????) }; DWORD dwReserved[8]; /// ???? }DH_DST_POINT; ///@brief DST(?????)???? typedef struct { DWORD dwSize; int nDSTType; /// ???????????? 0:????????????, 1:?????????? DH_DST_POINT stDSTStart; /// ???????? DH_DST_POINT stDSTEnd; /// ????????? DWORD dwReserved[16]; /// ???? }DHDEV_DST_CFG; ///@brief ?????????? typedef struct { DWORD dwSize; BYTE byAutoRebootDay; /// ?????????0?????, 1?????,2?????????,3????????,...... BYTE byAutoRebootTime; /// 0??0:00,1??1:00,......23??23:00 BYTE byAutoDeleteFilesTime; /// ???????????0?????,1??24H,2??48H,3??72H,4??96H,5??ONE WEEK,6??ONE MONTH BYTE reserved[13]; /// ?????? } DHDEV_AUTOMT_CFG; ///@brief ???????????? typedef struct { DWORD dwSize; /// ???????,????????????? DWORD dwVolume; /// ??????? DWORD dwFreeSpace; /// ?????????, ????MB(B??????) BYTE byModle[DH_MAX_HARDDISK_TYPE_LEN]; /// ?????? BYTE bySerialNumber[DH_MAX_HARDDISK_SERIAL_LEN]; /// ????????? }DHDEV_VEHICLE_DISK; ///@brief ????????3G??????,??????DH_MAX_SIM_NUM????? typedef struct { DWORD dwSize; /// ???????,????????????? BYTE szIMSI[DH_MAX_SIM_LEN]; /// SIM?????????460012002778636 ,?3??????????MCC,4-6??????????MNC,??????????????????MSIN,?????????15????? BYTE szMDN[DH_MAX_MDN_LEN]; /// SIM??MDN? }DHDEV_VEHICLE_3GMODULE; ///@brief ??????????? typedef struct { DWORD dwSize; /// ???????,????????????? DWORD dwSoftwareBuildDate; /// ???????????? char szVersion[DH_MAX_VERSION_LEN]; /// ??????? char szDevSerialNo[DH_DEV_SERIALNO_LEN]; /// ?????????? char szDevType[DH_DEV_TYPE_LEN]; /// ?????????,????????,??????? DWORD dwDiskNum; /// ?????? DHDEV_VEHICLE_DISK stuHarddiskInfo[DH_MAX_DISKNUM]; /// ????????? DWORD dw3GModuleNum; /// 3G?????? DHDEV_VEHICLE_3GMODULE stu3GModuleInfo[DH_MAX_SIM_NUM]; /// 3G????????? }DHDEV_VEHICLE_INFO; ///@brief ??????,??????DH_MAX_NETINTERFACE_NUM?????? typedef struct tagDHDEV_NETINTERFACE_INFO { int dwSize; BOOL bValid; /// ??????? BOOL bVirtual; /// ??????????? int nSpeed; /// ???????????(Mbps) int nDHCPState; /// 0-?????, 1-??????, 2-?????? char szName[DH_NETINTERFACE_NAME_LEN]; /// ???????? char szType[DH_NETINTERFACE_TYPE_LEN]; /// ???????? char szMAC[DH_MACADDR_LEN]; /// MAC??? char szSSID[DH_MAX_SSID_LEN]; /// SSID, ???????????????(szType == "Wireless") char szConnStatus[DH_MAX_CONNECT_STATUS_LEN]; /// Wifi??3G????????,"Inexistence" : ????????? "Down"????? "Disconn"???????? "Connecting"???????? "Connected"?? ?????? int nSupportedModeNum; /// ???3G?????????????? char szSupportedModes[DH_MAX_MODE_NUM][DH_MAX_MODE_LEN];/// 3G?????????? "TD-SCDMA", "WCDMA", "CDMA1x", "EDGE", "EVDO" BOOL bSupportLongPoE; /// ???????????POE????????????????????????????????? char szNetCardName[8]; /// ????????? char szModuleName[32]; /// ??????? char szIMEI[16]; /// ??????????????? char szICCID[24]; /// ??????????????SIM??????,20????????? } DHDEV_NETINTERFACE_INFO; ///@brief ????????????8192????? typedef struct { long left; long top; long right; long bottom; } DH_RECT, *LPDH_RECT; ///@brief ????????????8192????? typedef struct tagNET_RECT { int nLeft; int nTop; int nRight; int nBottom; } NET_RECT; ///@brief ????????????8192????? typedef struct tagNET_RECT_EX { unsigned short nLeft; unsigned short nTop; unsigned short nRight; unsigned short nBottom; } NET_RECT_EX; ///@brief ??????? typedef struct { short nx; short ny; } DH_POINT, *LPDH_POINT, NET_POINT, *LPNET_POINT; ///@brief ??????? typedef struct { unsigned short nx; unsigned short ny; } DH_POINT_EX, NET_POINT_EX; ///@brief ??????????????? typedef struct { int nPointNum; /// ?????? DH_POINT stuPoints[DH_MAX_DETECT_REGION_NUM]; /// ??????? }DH_POLY_POINTS; ///@brief OSD????? typedef struct tagENCODE_WIDGET { DWORD rgbaFrontground; /// ?????????????????,?????????????????? DWORD rgbaBackground; /// ?????????????????,?????????????????? DH_RECT rcRect; /// ???? BYTE bShow; /// ?????? BYTE bExtFuncMask; /// ?????? ,???? /// bit0 ??????????????,0-????? 1-??? BYTE byReserved[2]; } DH_ENCODE_WIDGET, *LPDH_ENCODE_WIDGET; ///@brief ???????????? typedef struct { /// ??????? BYTE byVideoEnable; /// ???????1????,0????? BYTE byBitRateControl; /// ????????????????"????????"???? BYTE byFramesPerSec; /// ??? BYTE byEncodeMode; /// ???????????????"??????"???? BYTE byImageSize; /// ?????????????"?????"???? BYTE byImageQlty:7; /// ??byImageQlty???????,??byImageQlty?0,???????ImgQlty?10/30/50/60/80/100?????,?????????ImgQlty??1-6,????????1-6????,??///ImgQltyType?1,??ImgQlty?????0~100 BYTE byImageQltyType:1; WORD wLimitStream; /// ?????????? /* ??????? */ BYTE byAudioEnable; /// ???????1????,0????? BYTE wFormatTag; /// ???????????: 0:G711A,1:PCM,2:G711U,3:AMR,4:AAC WORD nChannels; /// ?????? WORD wBitsPerSample; /// ??????? BYTE bAudioOverlay; /// ?????????? BYTE bH264ProfileRank; /// H.264 Profile???(?????????H264???????????),???????????EM_H264_PROFILE_RANK,??0,???????,????????????,???????????? DWORD nSamplesPerSec; /// ?????? BYTE bIFrameInterval; /// I?????????,????????I?????P?????,0-149 BYTE bScanMode; /// NSP BYTE bReserved_3; BYTE bReserved_4; } DH_VIDEOENC_OPT, *LPDH_VIDEOENC_OPT; ///@brief ??????????? typedef struct { DH_TSECT stSect; BYTE byBrightness; /// ?????0-100 BYTE byContrast; /// ?????0-100 BYTE bySaturation; /// ??????0-100 BYTE byHue; /// ????0-100 BYTE byGainEn; /// ??????? BYTE byGain; /// ?????0-100 BYTE byGamma; /// ???? 0-100 BYTE byReserved[1]; } DH_COLOR_CFG, *LPDH_COLOR_CFG; ///@brief ????????????? typedef struct { WORD dwSize; BYTE bNoise; BYTE bMode; /// (????????????)???(????????):??????????4??D1,???2fps,????128kbps(????225MB) /// ????(????????):??????????4??CIF,???12fps,????256kbps(????550MB) /// ????(?????)????????????????????,???????????4CIF/25fps char szChannelName[DH_CHAN_NAME_LEN]; DH_VIDEOENC_OPT stMainVideoEncOpt[DH_REC_TYPE_NUM]; DH_VIDEOENC_OPT stAssiVideoEncOpt[DH_N_ENCODE_AUX]; DH_COLOR_CFG stColorCfg[DH_N_COL_TSECT]; DH_ENCODE_WIDGET stTimeOSD; DH_ENCODE_WIDGET stChannelOSD; DH_ENCODE_WIDGET stBlindCover[DH_N_COVERS]; /// ????????? BYTE byBlindEnable; /// ???????????0x00??????????,0x01?????????????????,0x10?????????????????,0x11??????? BYTE byBlindMask; /// ????????????????????????????????????????(?????????) */ BYTE bVolume; /// ???????(0~100???) BYTE bVolumeEnable; /// ?????????? } DHDEV_CHANNEL_CFG, *LPDHDEV_CHANNEL_CFG; ///@brief ????????? typedef struct { DWORD dwSize; DH_VIDEOENC_OPT stPreView; DH_COLOR_CFG stColorCfg[DH_N_COL_TSECT]; }DHDEV_PREVIEW_CFG; ///@brief ?????????? typedef struct _config_snap_control { BYTE bySnapState[32]; /// ??????????????? 0:???(?????????,???????????????????); 1:??????; 2:????? BYTE byReserved[480]; }DHDEV_SNAP_CONTROL_CFG; ///@brief GPS?? typedef enum _gps_mode { GPS_OR_GLONASS_MODE, /// GPS??GLONASS?????(???E???????GPS??GLONASS?????????,???????????????????????,?????????????????) GLONASS_MODE, /// GLONASS??(????????????????????GLONASS???????????) GPS_MODE, /// GPS??(????????????????????GPS???????) }_gps_mode; ///@brief DH_DEV_GPS_MODE_CFG ????? typedef struct tagDHDEV_GPS_MODE_CFG { BYTE byGPSMode; /// GPS??????,?? BYTE byRev[255]; }DHDEV_GPS_MODE_CFG; ///@brief ???????????? DH_DEV_SNAP_UPLOAD_CFG ????? typedef struct tagDHDEV_SNAP_UPLOAD_CFG { int nUploadInterval; ///?????????????,?????? BYTE byReserved[252]; }DHDEV_SNAP_UPLOAD_CFG; ///@brief DHDEV_SPEED_LIMIT_CFG ????? typedef struct tagDHDEV_SPEED_LIMIT_CFG { BYTE byEnable; /// ???????1??????0???????? BYTE byReserved1; /// ??????? WORD wMaxSpeed; /// ??????????????KM/H 0?????????,????0??????? WORD wMinSpeed; /// ??????????????KM/H 0?????????,????0??????? BYTE byReserved2[122]; /// ??????? }DHDEV_SPEED_LIMIT_CFG; ///@brief ???????????? typedef struct { BOOL bEnable; /// ??? char szSSID[36]; /// SSID???? BOOL bHideSSID; /// ???????SSID char szIP[DH_MAX_IPADDR_LEN]; /// IP char szSubMark[DH_MAX_IPADDR_LEN]; /// ???????? char szGateWay[DH_MAX_IPADDR_LEN]; /// ???? char szCountry[32]; /// ????, Default???????????????????????????????????????? int nSafeType; /// ?????: 1-??????; 2-WEP??; 2-WPA-PSK??; 3-WPA2-PSK?? int nEncryption; /// ??????: WEP??(1-??? 2-???? 3-????); WPA-PSK??/WPA2-PSK??(4-TKIP 5-AES) char szKey[32]; /// ??????? int nChannel; /// ???, ?????????????????????????????? BOOL bAutoChannelSelect; /// ????????? }DHDEV_WIRELESS_ROUTING_CFG; ///-------------------------------????????--------------------------------- ///@brief ??????????? typedef struct { BYTE byDataBit; /// ????????0??5,1??6,2??7,3??8 BYTE byStopBit; /// ??????0??1??,1??1.5??,2??2?? BYTE byParity; /// ????????0????????,1????????2???????; 3:???????; 4:?????? BYTE byBaudRate; /// ???????0??300,1??600,2??1200,3??2400,4??4800, /// 5??9600,6??19200,7??38400,8??57600,9??115200 } DH_COMM_PROP; ///@brief 485?????????? typedef struct { DH_COMM_PROP struComm; BYTE wProtocol; /// ????????,???"??????????"???? BYTE bPTZType; /// 0-????,??????? 1-??????????,??????????(??DEV_ENCODER_CFG)?? BYTE wDecoderAddress; /// ???????????0 - 255 BYTE byMartixID; /// ????? } DH_485_CFG; ///@brief 232???????? typedef struct { DH_COMM_PROP struComm; BYTE byFunction; /// ???????,???"??????????"???? BYTE byReserved[3]; } DH_RS232_CFG; ///@brief ??????????? typedef struct { DWORD dwSize; DWORD dwDecProListNum; /// ????????????? char DecProName[DH_MAX_DECPRO_LIST_SIZE][DH_MAX_NAME_LEN]; /// ?????????? DH_485_CFG stDecoder[DH_MAX_DECODER_NUM]; /// ??????????????? DWORD dw232FuncNameNum; /// 232??????? char s232FuncName[DH_MAX_232FUNCS][DH_MAX_NAME_LEN]; /// ?????????? DH_RS232_CFG st232[DH_MAX_232_NUM]; /// ??232?????????? } DHDEV_COMM_CFG; ///@brief ?????????????? typedef struct { DWORD dwSize; DWORD dwDecProListNum; /// ????????????? char DecProName[DH_MAX_DECPRO_LIST_SIZE][DH_MAX_NAME_LEN]; /// ?????????? DH_485_CFG stDecoder[DH_MAX_DECODER_NUM]; /// ??????????????? DWORD dw232FuncNameNum; /// 232??????? char s232FuncName[DH_MAX_232FUNCS][DH_MAX_NAME_LEN]; /// ?????????? DWORD dw232ComNum; /// 232??????? DH_RS232_CFG st232[DH_MAX_232_NUM_EX]; /// ??232?????????? } DHDEV_COMM_CFG_EX; ///@brief ?????? typedef struct { unsigned int uBeOpened; unsigned int uBaudRate; unsigned int uDataBites; unsigned int uStopBits; unsigned int uParity; BYTE bReserved[32]; } DH_COMM_STATE; ///@brief ?????? typedef struct { DWORD dwSize; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; BYTE byPreRecordLen; /// ?????,??????s,0??????? BYTE byRedundancyEn; /// ????????? BYTE byRecordType; /// ????????????0-?????? 1-??????1 2-??????2 3-??????3 BYTE byReserved; } DHDEV_RECORD_CFG, *LPDH_RECORD_CFG; ///@brief NTP???? typedef struct { BOOL bEnable; /// ??????? int nHostPort; /// NTP????????????123 char szHostIp[32]; /// ????IP char szDomainName[128]; /// ???? int nType; /// ????????,0?????IP,1?????????,2?????IP?????? int nUpdateInterval; /// ???????(????) int nTimeZone; /// ??DH_TIME_ZONE_TYPE char reserved[128]; } DHDEV_NTP_CFG; ///@brief ???? typedef struct tagNET_PERIOD { DH_TSECT struSect; /// ??????????????????,????? BOOL bMdEn; /// ???????????? BOOL bAlarmEn; /// ???????????? BOOL bTimerEn; /// ???????????? DWORD dwRev[4]; } NET_PERIOD; ///@brief FTP??????? typedef struct { NET_PERIOD struPeriod[DH_TIME_SECTION]; } DH_FTP_UPLOAD_CFG; ///@brief FTP???????,???????? typedef struct { DWORD dwSize; BOOL bEnable; /// ??????? char szHostIp[DH_MAX_IPADDR_LEN]; /// ????IP WORD wHostPort; /// ??????? char szDirName[DH_FTP_MAX_PATH]; /// FTP?????? char szUserName[DH_FTP_USERNAME_LEN]; /// ????? char szPassword[DH_FTP_PASSWORD_LEN]; /// ???? int iFileLen; /// ??????? int iInterval; /// ????????????(1~600),?????? DH_FTP_UPLOAD_CFG struUploadCfg[DH_MAX_CHANNUM][DH_N_WEEKS]; char protocol; /// 0-FTP 1-SMB 2-NFS,3-ISCSI char NASVer; /// ???????????????0=???FTP(?????????????),1=NAS???(??????????????) DWORD dwFunctionMask; /// ????????????,???????,??16??(??????)???????FTP,SMB,NFS,ISCSI, ??16??(??????)?????DISK,U BYTE bDataType; /// ????????, 0-????????, 1-???, 2-?? BYTE reserved[123]; } DHDEV_FTP_PROTO_CFG; ///@brief FTP??????????(??????????????FTP???????,???????????) typedef struct { int nMaxPictures; /// ????????,??????????????????????????????, /// ??????????????????,0:?????????,?????? char szPreChannelName[DH_FTP_MAX_SUB_PATH]; /// ??????? char szFTPChannelPath[DH_FTP_MAX_SUB_PATH]; /// ftp???????(???????) char szRev[128]; /// ??????? }DHDEV_FTP_CHANNEL_CFG; ///@brief FTP?????????? typedef struct { DHDEV_FTP_PROTO_CFG stuFtpNormalSet; /// FTP???????,???????? DHDEV_FTP_CHANNEL_CFG stuFtpChannelSet[DH_MAX_CHANNUM]; /// FTP??????? char szRev[128]; /// ??????? }DHDEV_FTP_PROTO_CFG_EX; ///@brief ????????? typedef struct { char sDevIPAddr[DH_MAX_IPADDR_LEN]; /// DVR IP ??? char sDevIPMask[DH_MAX_IPADDR_LEN]; /// DVR IP ??????? char sGatewayIP[DH_MAX_IPADDR_LEN]; /// ?????? /* * 1??10Mbps ???? * 2??10Mbps ????? * 3??10Mbps ????? * 4??100Mbps ???? * 5??100Mbps ????? * 6??100Mbps ????? * 7??????? */ /// ????????DWORD?????? BYTE dwNetInterface; /// NSP BYTE bTranMedia; /// 0??????,1?????? BYTE bValid; /// ???????,???????1?????? 0???????????????0??DHCP??? 1??DHCP????????????0???????DHCP 1?????DHCP BYTE bDefaultEth; /// ?????????????? 1????? 0??????? char byMACAddr[DH_MACADDR_LEN]; /// MAC???,??? } DH_ETHERNET; ///@brief ??????????? typedef struct { BYTE byEnable; /// ??????? BYTE byAssistant; /// ???????PPPoE??????????,0?????????????????1????????????????? WORD wHostPort; /// ??????? ??? char sHostIPAddr[DH_MAX_IPADDR_LEN]; /// ??????? IP ??? char sHostUser[DH_MAX_HOST_NAMELEN]; /// ??????? ????? char sHostPassword[DH_MAX_HOST_PSWLEN]; /// ??????? ???? } DH_REMOTE_HOST; ///@brief ??????? typedef struct { char sMailIPAddr[DH_MAX_IPADDR_LEN]; /// ?????????IP??? WORD wMailPort; /// ???????????? WORD wReserved; /// ???? char sSenderAddr[DH_MAX_MAIL_ADDR_LEN]; /// ?????? char sUserName[DH_MAX_NAME_LEN]; /// ????? char sUserPsw[DH_MAX_NAME_LEN]; /// ??????? char sDestAddr[DH_MAX_MAIL_ADDR_LEN]; /// ????? char sCcAddr[DH_MAX_MAIL_ADDR_LEN]; /// ?????? char sBccAddr[DH_MAX_MAIL_ADDR_LEN]; /// ??????? char sSubject[DH_MAX_MAIL_SUBJECT_LEN]; /// ???? } DH_MAIL_CFG; ///@brief ??????????? typedef struct { DWORD dwSize; char sDevName[DH_MAX_NAME_LEN]; /// ????????? WORD wTcpMaxConnectNum; /// TCP????????? WORD wTcpPort; /// TCP?????? WORD wUdpPort; /// UDP??????? WORD wHttpPort; /// HTTP???? WORD wHttpsPort; /// HTTPS???? WORD wSslPort; /// SSL???? DH_ETHERNET stEtherNet[DH_MAX_ETHERNET_NUM]; /// ??????? DH_REMOTE_HOST struAlarmHost; /// ?????????? DH_REMOTE_HOST struLogHost; /// ????????? DH_REMOTE_HOST struSmtpHost; /// SMTP?????? DH_REMOTE_HOST struMultiCast; /// ???? DH_REMOTE_HOST struNfs; /// NFS?????? DH_REMOTE_HOST struPppoe; /// PPPoE?????? char sPppoeIP[DH_MAX_IPADDR_LEN]; /// PPPoE??????IP DH_REMOTE_HOST struDdns; /// DDNS?????? char sDdnsHostName[DH_MAX_HOST_NAMELEN]; /// DDNS?????? DH_REMOTE_HOST struDns; /// DNS?????? DH_MAIL_CFG struMail; /// ??????? } DHDEV_NET_CFG; ///@brief ???????????? typedef struct { char sDevIPAddr[DH_MAX_IPADDR_LEN]; /// DVR IP ??? char sDevIPMask[DH_MAX_IPADDR_LEN]; /// DVR IP ??????? char sGatewayIP[DH_MAX_IPADDR_LEN]; /// ?????? /* * 1??10Mbps ???? * 2??10Mbps ????? * 3??10Mbps ????? * 4??100Mbps ???? * 5??100Mbps ????? * 6??100Mbps ????? * 7??????? */ /// ????????DWORD?????? BYTE dwNetInterface; /// NSP BYTE bTranMedia; /// 0??????,1?????? BYTE bValid; /// ???????,???????1?????? 0???????????????0??DHCP??? 1??DHCP????????????0???????DHCP 1?????DHCP BYTE bDefaultEth; /// ?????????????? 1????? 0??????? char byMACAddr[DH_MACADDR_LEN]; /// MAC???,??? BYTE bMode; /// ??????????, 0:????, 1:?????????, 2:?????, 3:????? BYTE bReserved1[3]; /// ?????? char szEthernetName[DH_MAX_NAME_LEN]; /// ??????,??? BYTE bReserved[12]; /// ??????? } DH_ETHERNET_EX; ///@brief ?????????????? typedef struct { DWORD dwSize; char sDevName[DH_MAX_NAME_LEN]; /// ????????? WORD wTcpMaxConnectNum; /// TCP????????? WORD wTcpPort; /// TCP?????? WORD wUdpPort; /// UDP??????? WORD wHttpPort; /// HTTP???? WORD wHttpsPort; /// HTTPS???? WORD wSslPort; /// SSL???? int nEtherNetNum; /// ????????? DH_ETHERNET_EX stEtherNet[DH_MAX_ETHERNET_NUM_EX]; /// ??????? DH_REMOTE_HOST struAlarmHost; /// ?????????? DH_REMOTE_HOST struLogHost; /// ????????? DH_REMOTE_HOST struSmtpHost; /// SMTP?????? DH_REMOTE_HOST struMultiCast; /// ???? DH_REMOTE_HOST struNfs; /// NFS?????? DH_REMOTE_HOST struPppoe; /// PPPoE?????? char sPppoeIP[DH_MAX_IPADDR_LEN]; /// PPPoE??????IP DH_REMOTE_HOST struDdns; /// DDNS?????? char sDdnsHostName[DH_MAX_HOST_NAMELEN]; /// DDNS?????? DH_REMOTE_HOST struDns; /// DNS?????? DH_MAIL_CFG struMail; /// ??????? BYTE bReserved[128]; /// ??????? } DHDEV_NET_CFG_EX; ///@brief IPV4???? typedef struct tagDEV_IPV4_CFG { DWORD dwSize; /// ??????? char szDevName[DH_MAX_NAME_LEN]; /// ????????? WORD wTcpMaxConnectNum; /// TCP????????? WORD wTcpPort; /// TCP?????? WORD wUdpPort; /// UDP??????? WORD wHttpPort; /// HTTP???? WORD wHttpsPort; /// HTTPS???? WORD wSslPort; /// SSL???? DH_ETHERNET_EX stuEtherNet[DH_MAX_ETHERNET_NUM_EX];/// ??????? int nEtherNetNum; /// stuEtherNet ???? }DEV_IPV4_CFG; ///@brief ??ddns??????? typedef struct { DWORD dwId; /// ddns??????id?? BOOL bEnable; /// ???,?????????????ddns??????????????? char szServerType[DH_MAX_SERVER_TYPE_LEN]; /// ??????????,???.. char szServerIp[DH_MAX_DOMAIN_NAME_LEN]; /// ??????ip???????? DWORD dwServerPort; /// ????????? char szDomainName[DH_MAX_DOMAIN_NAME_LEN]; /// dvr????,??jeckean.3322.org char szUserName[DH_MAX_HOST_NAMELEN]; /// ????? char szUserPsw[DH_MAX_HOST_PSWLEN]; /// ???? char szAlias[DH_MAX_DDNS_ALIAS_LEN]; /// ?????????? DWORD dwAlivePeriod; /// DDNS ??????? BYTE ByMode; /// ??????:0-???????????,szDomainName????; 1-???????szDefaultDomainName?????? char szDefaultDomainName[DH_MAX_DEFAULT_DOMAIN_LEN]; /// ???????,??? BYTE bReserved[3]; /// ?????? char szEmailUserName[DH_MAX_MAIL_NAME_LEN]; /// ????????? char reserved[128]; } DH_DDNS_SERVER_CFG; ///@brief DDNS??????? typedef struct { DWORD dwSize; DWORD dwDdnsServerNum; DH_DDNS_SERVER_CFG struDdnsServer[DH_MAX_DDNS_NUM]; } DHDEV_MULTI_DDNS_CFG; ///@brief ?????????? typedef struct { char sMailIPAddr[DH_MAX_DOMAIN_NAME_LEN]; /// ????????????(IP????????) char sSubMailIPAddr[DH_MAX_DOMAIN_NAME_LEN]; WORD wMailPort; /// ???????????? WORD wSubMailPort; WORD wReserved; /// ???? char sSenderAddr[DH_MAX_MAIL_ADDR_LEN]; /// ?????? char sUserName[DH_MAX_MAIL_NAME_LEN]; /// ????? char sUserPsw[DH_MAX_MAIL_NAME_LEN]; /// ??????? char sDestAddr[DH_MAX_MAIL_ADDR_LEN]; /// ????? char sCcAddr[DH_MAX_MAIL_ADDR_LEN]; /// ?????? char sBccAddr[DH_MAX_MAIL_ADDR_LEN]; /// ??????? char sSubject[DH_MAX_MAIL_SUBJECT_LEN]; /// ???? BYTE bEnable; /// ???0:false, 1:true BYTE bSSLEnable; /// SSL??? WORD wSendInterval; /// ?????????,[0,3600]?? BYTE bAnonymous; /// ???????[0,1], 0???FALSE,1???TRUE. BYTE bAttachEnable; /// ???????[0,1], 0???FALSE,1???TRUE. char reserved[154]; } DHDEV_MAIL_CFG; ///@brief DNS?????????? typedef struct { char szPrimaryIp[DH_MAX_IPADDR_LEN]; char szSecondaryIp[DH_MAX_IPADDR_LEN]; char reserved[256]; } DHDEV_DNS_CFG; ///@brief ?????????????? typedef struct { DWORD dwSize; BOOL bEnable; /// TRUE??????????,FALSE????????? }DHDEV_DOWNLOAD_STRATEGY_CFG; ///@brief ?????????????? typedef struct { DWORD dwSize; BOOL bEnable; int iStrategy; /// 0??????????,1????????????,2????? }DHDEV_TRANSFER_STRATEGY_CFG; ///@brief ???????????????? typedef struct { int nWaittime; /// ?????????(?????????),?0???5000ms int nConnectTime; /// ?????????(?????????),?0???1500ms int nConnectTryNum; /// ??????????,?0???1?? int nSubConnectSpaceTime; /// ???????????????(?????????),?0???10ms int nGetDevInfoTime; /// ???????????????,?0???1000ms int nConnectBufSize; /// ????????????????????(????????),?0???250*1024 int nGetConnInfoTime; /// ??????????????????(?????????),?0???3000ms int nSearchRecordTime; /// ????????????????????(?????????),?0????3000ms int nsubDisconnetTime; /// ?????????????????(?????????),?0????60000ms BYTE byNetType; /// ????????, 0-LAN, 1-WAN BYTE byPlaybackBufSize; /// ??????????????????M???????,?0????4M BYTE bDetectDisconnTime; /// ?????????????(???????),?0????60s,????????2s BYTE bKeepLifeInterval; /// ????????????(???????),?0????10s,????????2s int nPicBufSize; /// ??????????????????????????,?0????2*1024*1024 BYTE bReserved[4]; /// ?????????? } NET_PARAM; ///@brief UDP????????? typedef struct tagNET_UDP_OPTION { unsigned int nPacketArriveTimeout; /// ????????????????, ?????ms, ????50ms, ?????200ms, ?0???????????? unsigned int nRetransmitPacketArriveTimeout; /// ???????????????, ?????ms, ????100ms, ?????400ms, ?0???????????? unsigned int nMaxLostNumOfMulitcastSeqNo; /// ????????????????????, ????1000, ?????2000, ?0???????????? unsigned int nMaxWaitNumOfUdpSeqNo; /// ??????UDP???????????, ????30, ?????1000, ?0???????????? unsigned int nMultiSocketSendBufferSize; /// ?????????????????, ??????Byte, ???64K, ????8K, ???1M, ?0???????????? unsigned int nMultiSocketRecvBufferSize; /// ?????????????????, ??????Byte, ???1M, ????8K, ???1M, ?0???????????? unsigned int nUdpSocketSendBufferSize; /// UDP??????????????, ??????Byte, ???64K, ????8K, ???1M, ?0???????????? unsigned int nUdpSocketRecvBufferSize; /// UDP??????????????, ??????Byte, ???1M, ????8K, ???1M, ?0???????????? unsigned int nUdpLocalPort; /// ???UDP??????, 0????????? BYTE bReserved[124]; /// ?????????? }NET_UDP_OPTION; ///@brief ???CLIENT_SearchDevices??? typedef struct { char szIP[DH_MAX_IPADDR_LEN]; /// IP int nPort; /// tcp??? char szSubmask[DH_MAX_IPADDR_LEN]; /// ???????? char szGateway[DH_MAX_IPADDR_LEN]; /// ???? char szMac[DH_MACADDR_LEN]; /// MAC??? char szDeviceType[DH_DEV_TYPE_LEN]; /// ??????? BYTE byManuFactory; /// ??????????????,???????EM_IPC_TYPE?? BYTE byIPVersion; /// 4: IPv4, szXXX????????????; 6:IPv6, szXXX?128??(16???)?????? BYTE byInitStatus; /// ?????????????????????????? /// bit0~1??0-??????????????????? 1-?????????? 2-????????? /// bit2~3??0-??????????? 1-????????????? 2-????????????? /// bit4~5??0-??????????? 1-??????????? 2-????????? BYTE byPwdResetWay; /// ??????????????????????????????????????????????????????????? /// bit0-??????????? bit1-?????????? bit2-?????????? BYTE bySpecialAbility; /// ????????????????????????????,bit0-2D Code???IP: 0 ????? 1 ???,bit1-PN??:0 ????? 1 ??? BYTE byAbroadInfo; /// ???????????????????????0 ?????1 ?????2 ???? BYTE bReserved[26]; /// ??????? } DEVICE_NET_INFO; #define DH_DEV_CUSTOM_DEVICEID_LEN 24 /// ID???? ///@brief IP???? typedef enum tagEM_IPVERSION { EM_IPVERSION_IPV4, /// IPv4 EM_IPVERSION_IPV6, /// IPv6 } EM_IPVERSION; ///@brief ???CLIENT_StartSearchDevices??? typedef struct { int iIPVersion; /// 4 for IPV4, 6 for IPV6 char szIP[64]; /// IP IPV4????"192.168.0.1" IPV6????"2008::1/64" int nPort; /// tcp??? char szSubmask[64]; /// ???????? IPV6?????????? char szGateway[64]; /// ???? char szMac[DH_MACADDR_LEN]; /// MAC??? char szDeviceType[DH_DEV_TYPE_LEN]; /// ??????? BYTE byManuFactory; /// ??????????????,???????EM_IPC_TYPE?? BYTE byDefinition; /// 1-???? 2-???? bool bDhcpEn; /// Dhcp?????, true-??, false-?? BYTE byReserved1; /// ?????? char verifyData[88]; /// ???????? ???????????????(????????IP?????????????????) char szSerialNo[DH_DEV_SERIALNO_LEN]; /// ?????? char szDevSoftVersion[DH_MAX_URL_LEN]; /// ???????????? char szDetailType[DH_DEV_TYPE_LEN]; /// ?????? char szVendor[DH_MAX_STRING_LEN]; /// OEM??????? char szDevName[DH_MACHINE_NAME_NUM]; /// ??????? char szUserName[DH_USER_NAME_LENGTH_EX]; /// ?????????????????????IP?????????? char szPassWord[DH_USER_NAME_LENGTH_EX]; /// ??????????????????IP?????????? unsigned short nHttpPort; /// HTTP??????? WORD wVideoInputCh; /// ???????????? WORD wRemoteVideoInputCh; /// ??????????????? WORD wVideoOutputCh; /// ??????????? WORD wAlarmInputCh; /// ????????????? WORD wAlarmOutputCh; /// ?????????????? BOOL bNewWordLen; /// TRUE????????????szNewPassWord char szNewPassWord[DH_COMMON_STRING_64]; /// ??????????????????IP?????????? BYTE byInitStatus; /// ?????????????????????????? /// bit0~1??0-??????????????????? 1-?????????? 2-????????? /// bit2~3??0-??????????? 1-????????????? 2-????????????? /// bit4~5??0-??????????? 1-??????????? 2-????????? /// bit6~7: 0- ??? 1-????????????? 2-??????????? BYTE byPwdResetWay; /// ??????????????????????????????????????????????????????????? /// bit0-??????????? bit1-?????????? bit2-?????????? bit3-?????????? bit4-??????????? BYTE bySpecialAbility; /// ??????????????????????????????,????? bit0-2D Code???IP: 0 ????? 1 ???, bit1-PN??:0 ????? 1??? char szNewDetailType[DH_COMMON_STRING_64]; /// ?????? BOOL bNewUserName; /// TRUE?????????????(szNewUserName)??? char szNewUserName[DH_COMMON_STRING_64]; /// ?????????????????????IP?????????? BYTE byPwdFindVersion; /// ????????????,???????????????????; /// 0-??????????????????????????;1-????????????????????????????; /// 2-????????????????????????????; char szDeviceID[DH_DEV_CUSTOM_DEVICEID_LEN]; /// ???????????????????????? DWORD dwUnLoginFuncMask; /// ????????????? /// Bit0-Wifi???????WLan???? /// Bit1-???????????????? /// Bit2-???????????????????????????????? char szMachineGroup[64]; /// ??????? EM_IPVERSION emIPVersionFrom; /// ??????????????????????????;0:??IPv4????????????? 1:??IPv6????????????? char szCountryCode[3]; /// ???wifi?????? BYTE byAbroadInfo; /// ???????????????????????0 ?????1 ?????2 ???? char cReserved[4]; /// ?????? }DEVICE_NET_INFO_EX; ///@brief ???CLIENT_StartSearchDevicesEx??? typedef struct { DEVICE_NET_INFO_EX stuDevInfo; /// ?????????? char szLocalIP[MAX_LOCAL_IP_LEN]; /// ??????????????IP??? char cReserved[2048]; /// ?????? }DEVICE_NET_INFO_EX2; ///@brief ???CLIENT_SearchDevicesByIPs??? typedef struct { DWORD dwSize; /// ??????? int nIpNum; /// ?????????IP???? char szIP[DH_MAX_SAERCH_IP_NUM][64]; /// ???????????IP??? }DEVICE_IP_SEARCH_INFO; ///@brief ??????????? typedef struct tagNET_DEVICE_SEARCH_PARAM { DWORD dwSize; /// ??????? BOOL bUseDefault; /// ?????????????,????TRUE WORD wBroadcastLocalPort; /// ????????, ???5050, ??0?????????????? WORD wBroadcastRemotePort; /// ???????, ???5050, ??0?????????????? WORD wMulticastRemotePort; /// ????????, ???37810, ??0?????????????? BOOL bMulticastModifyRespond; /// ???????????????????????,???FALSE??????????????? WORD wMulticastLocalPort; /// ?????????, ???37810, ??0?????????????? int iAutoUpdatePortTimes; /// ?????????????????????,???50????????[0-65534] WORD wAOLMulticastRemotePort; /// AOL ????????, ???8087, ??0?????????????? WORD wAOLMulticastLocalPort; /// AOL ?????????, ???37811, ??0?????????????? }NET_DEVICE_SEARCH_PARAM; ///@brief struct SNMP????? typedef struct { BOOL bEnable; /// SNMP??? int iSNMPPort; /// SNMP??? char szReadCommon[DH_MAX_SNMP_COMMON_LEN]; /// ??????? char szWriteCommon[DH_MAX_SNMP_COMMON_LEN]; /// ??????? char szTrapServer[64]; /// trap??? int iTrapPort; /// trap??? BYTE bSNMPV1; /// ?????????????1???,0??????1??? BYTE bSNMPV2; /// ?????????????2???,0??????1??? BYTE bSNMPV3; /// ?????????????3???,0??????1??? char szReserve[125]; }DHDEV_NET_SNMP_CFG; ///@brief ISCSI???????????? typedef struct tagDHDEV_ISCSI_SERVER { char szServerName[32]; /// ???? union { BYTE c[4]; WORD s[2]; DWORD l; } stuIP; /// IP??? int nPort; /// ???? char szUserName[32]; /// ????? char szPassword[32]; /// ???? BOOL bAnonymous; /// ?????????? }DHDEV_ISCSI_SERVER; ///@brief ISCSI????? typedef struct { BOOL bEnable; /// ??? DHDEV_ISCSI_SERVER stuServer; /// ?????? char szRemotePath[240]; /// ????? BYTE reserved[256]; }DHDEV_ISCSI_CFG; ///@brief ??????? typedef struct { int iType; /// 0-None,1-Preset,2-Tour,3-Pattern int iValue; } DH_PTZ_LINK, *LPDH_PTZ_LINK; ///@brief ???????????? typedef struct { /* ??????????,????????????????,???? * 0x00000001 - ??????? * 0x00000002 - ??????? * 0x00000004 - ??????? * 0x00000008 - ??????? * 0x00000010 - ??????? * 0x00000020 - ??????? * 0x00000040 - ??????? * 0x00000080 - Ftp??? * 0x00000100 - ???? * 0x00000200 - ??????? * 0x00000400 - ?? */ DWORD dwActionMask; /// ???????????????????,?????????? DWORD dwActionFlag; /// ????????,??????????,????N???????????????????????????? BYTE byRelAlarmOut[DH_MAX_ALARMOUT_NUM]; /// ????????????????,?????????????,?1???????????? DWORD dwDuration; /// ??????????? BYTE byRecordChannel[DH_MAX_VIDEO_IN_NUM]; /// ????????????????,?1???????????? DWORD dwRecLatch; /// ????????? BYTE bySnap[DH_MAX_VIDEO_IN_NUM]; /// ????? BYTE byTour[DH_MAX_VIDEO_IN_NUM]; /// ?????? DH_PTZ_LINK struPtzLink[DH_MAX_VIDEO_IN_NUM]; /// ??????? DWORD dwEventLatch; /// ?????????????,s?????,??????0~15,??????0 BYTE byRelWIAlarmOut[DH_MAX_ALARMOUT_NUM]; /// ????????????????????,?????????????,?1???????????? BYTE bMessageToNet; BYTE bMMSEn; /// ?????????? BYTE bySnapshotTimes; /// ????????????? BYTE bMatrixEn; /// ??????? DWORD dwMatrix; /// ???????? BYTE bLog; /// ??????,???????WTN??????????? BYTE bSnapshotPeriod; /// ??????,??????????????,??????????????????????????????0????????,??????? BYTE byEmailType; /// 0,??????,1,???? BYTE byEmailMaxLength; /// ??????????????,????MB BYTE byEmailMaxTime; /// ??????????????????,?????? BYTE byReserved[99]; } DH_MSG_HANDLE; ///@brief ?????? typedef struct { BYTE byAlarmType; /// ??????????,0??????,1?????? BYTE byAlarmEn; /// ??????? BYTE byReserved[2]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE struHandle; /// ??????? } DH_ALARMIN_CFG, *LPDHDEV_ALARMIN_CFG; ///@brief ???????? typedef struct { BYTE byMotionEn; /// ??????????? BYTE byReserved; WORD wSenseLevel; /// ?????? WORD wMotionRow; /// ??????????????? WORD wMotionCol; /// ??????????????? BYTE byDetected[DH_MOTION_ROW][DH_MOTION_COL]; /// ???????,???32*32?????? DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE struHandle; ///??????? } DH_MOTION_DETECT_CFG; ///@brief ?????????? typedef struct { BYTE byAlarmEn; /// ????????????? BYTE byReserved[3]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE struHandle; /// ??????? } DH_VIDEO_LOST_CFG; ///@brief ?????????? typedef struct { BYTE byBlindEnable; /// ??? BYTE byBlindLevel; /// ??????1-6 BYTE byReserved[2]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; /// NSP DH_MSG_HANDLE struHandle; /// ??????? } DH_BLIND_CFG; ///@brief ??????(???????) typedef struct { BYTE byNoDiskEn; /// ?????????? BYTE byReserved_1[3]; DH_TSECT stNDSect[DH_N_WEEKS][DH_N_REC_TSECT]; /// NSP DH_MSG_HANDLE struNDHandle; /// ??????? BYTE byLowCapEn; /// ????????????? BYTE byLowerLimit; /// ???????,0-99 BYTE byReserved_2[2]; DH_TSECT stLCSect[DH_N_WEEKS][DH_N_REC_TSECT]; /// NSP DH_MSG_HANDLE struLCHandle; /// ??????? BYTE byDiskErrEn; /// ????????? BYTE bDiskNum; BYTE byReserved_3[2]; DH_TSECT stEDSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE struEDHandle; /// ??????? } DH_DISK_ALARM_CFG; ///@brief ??????????????? typedef struct { BYTE byEnable; BYTE byReserved[3]; DH_MSG_HANDLE struHandle; } DH_NETBROKEN_ALARM_CFG; ///@brief ???????? typedef struct { DWORD dwSize; DH_ALARMIN_CFG struLocalAlmIn[DH_MAX_ALARM_IN_NUM]; DH_ALARMIN_CFG struNetAlmIn[DH_MAX_ALARM_IN_NUM]; DH_MOTION_DETECT_CFG struMotion[DH_MAX_VIDEO_IN_NUM]; DH_VIDEO_LOST_CFG struVideoLost[DH_MAX_VIDEO_IN_NUM]; DH_BLIND_CFG struBlind[DH_MAX_VIDEO_IN_NUM]; DH_DISK_ALARM_CFG struDiskAlarm; DH_NETBROKEN_ALARM_CFG struNetBrokenAlarm; } DHDEV_ALARM_SCHEDULE; #define DECODER_OUT_SLOTS_MAX_NUM 16 #define DECODER_IN_SLOTS_MAX_NUM 16 ///@brief ?????????????? typedef struct { DWORD dwAddr; /// ????????????? BOOL bEnable; /// ????????????? DWORD dwOutSlots[DECODER_OUT_SLOTS_MAX_NUM]; /// ????????8??. int nOutSlotNum; /// dwOutSlots??????????????. DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; DH_MSG_HANDLE struHandle[DECODER_IN_SLOTS_MAX_NUM]; /// ????????8??. int nMsgHandleNum; /// stuHandle??????????????. BYTE bReserved[120]; } DH_ALARMDEC_CFG; ///@brief ????????????? typedef struct { BYTE byEnable; /// ?????? BYTE bReserverd; /// ???? WORD wHostPort; /// ??????????????? char sHostIPAddr[DH_MAX_IPADDR_LEN]; /// ????????IP int nByTimeEn; /// ?????????,?????????????????IP???????? int nUploadDay; /// ??????????? /// "Never = 0", "Everyday = 1", "Sunday = 2", /// "Monday = 3", Tuesday = 4", "Wednesday = 5", /// "Thursday = 6", "Friday = 7", "Saturday = 8" int nUploadHour; /// ?????????? ,[0~23]?? DWORD dwReserved[300]; /// ??????????? } ALARMCENTER_UP_CFG; ///@brief ??????????????? typedef struct __DH_PANORAMA_SWITCH_CFG { BOOL bEnable; /// ??? int nReserved[5]; /// ???? DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; DH_MSG_HANDLE struHandle; /// ???????? } DH_PANORAMA_SWITCH_CFG; ///@brief ?????? typedef struct __ALARM_PANORAMA_SWITCH_CFG { int nAlarmChnNum; /// ??????????? DH_PANORAMA_SWITCH_CFG stuPanoramaSwitch[DH_MAX_VIDEO_IN_NUM]; } ALARM_PANORAMA_SWITCH_CFG; ///@brief ???????????? typedef struct __DH_LOST_FOCUS_CFG { BOOL bEnable; /// ??? int nReserved[5]; /// ???? DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; DH_MSG_HANDLE struHandle; /// ???????? } DH_LOST_FOCUS_CFG; ///@brief ?????? typedef struct __ALARM_LOST_FOCUS_CFG { int nAlarmChnNum; /// ??????????? DH_LOST_FOCUS_CFG stuLostFocus[DH_MAX_VIDEO_IN_NUM]; } ALARM_LOST_FOCUS_CFG; ///@brief IP???????????? typedef struct __ALARM_IP_COLLISION_CFG { BOOL bEnable; /// ??? DH_MSG_HANDLE struHandle; /// ???????? int nReserved[300]; /// ???? } ALARM_IP_COLLISION_CFG; ///@brief MAC?????????? typedef struct __ALARM_MAC_COLLISION_CFG { BOOL bEnable; /// ??? DH_MSG_HANDLE struHandle; /// ???????? int nReserved[300]; /// ???? } ALARM_MAC_COLLISION_CFG; ///@brief 232???????????485????????????????? typedef struct __COM_CARD_SIGNAL_INFO { WORD wCardStartPose; /// ????????? WORD wCardLenth; /// ??????? char cStartCharacter[32]; /// ????? char cEndCharacter[32]; /// ?????? BYTE byReserved[28]; /// ??????? }COM_CARD_SIGNAL_INFO; ///@brief 232???????????485??????????????????(???????????????????????????????????,???????????) typedef struct __COM_CARD_SIGNAL_LINK_CFG { COM_CARD_SIGNAL_INFO struCardInfo; /// ??????? DH_MSG_HANDLE struHandle; /// ??????? BYTE byReserved[24]; /// ??????? }COM_CARD_SIGNAL_LINK_CFG; ///@brief ?????? typedef struct __VIDEO_COVER_ATTR { DH_RECT rcBlock; /// ????????????? int nColor; /// ???????? BYTE bBlockType; /// ????????0?????,1???????? BYTE bEncode; /// ?????????1??????,0???????? BYTE bPriview; /// ???????? 1??????,0???????? char reserved[29]; /// ???? } VIDEO_COVER_ATTR; ///@brief ????????????? typedef struct __DHDEV_VIDEOCOVER_CFG { DWORD dwSize; char szChannelName[DH_CHAN_NAME_LEN]; /// ??? BYTE bTotalBlocks; /// ??????????? BYTE bCoverCount; /// ?????????????? VIDEO_COVER_ATTR CoverBlock[DH_MAX_VIDEO_COVER_NUM]; /// ????????? char reserved[30]; /// ???? }DHDEV_VIDEOCOVER_CFG; ///@brief ??????????????? typedef struct __DHDEV_DECODEPOLICY_CFG { int nMinTime; /// ?????????(???)?????????????(??????ms) int nMaxTime; /// ?????????(???)?????????(??????ms) int nDeocdeBufTime; /// ???????????????(??????ms) char reserved[128]; /// ???? }DHDEV_DECODEPOLICY_CFG; ///@brief ???????????? typedef struct __DHDEV_MACHINE_CFG { char szMachineName[DH_MACHINE_NAME_NUM]; /// ??????????? char szMachineAddress[DH_MACHINE_NAME_NUM]; /// ?????????? char reserved[128]; /// ???? }DHDEV_MACHINE_CFG; ////////////////////////////IPC??????///////////////////////////////// ///@brief ??????????????? typedef struct tagDHDEV_WLAN_INFO { int nEnable; /// ???????, 0: ???, 1: ??? char szSSID[36]; /// SSID int nLinkMode; /// ????????0??auto,1??adhoc,2??Infrastructure int nEncryption; /// ???? 0??off,2??WEP64bit,3??WEP128bit, 4:WPA-PSK-TKIP, 5: WPA-PSK-CCMP(AES), 6:WPA2-PSK-TKIP 7:WPA2-PSK-AES 8:WPA-TKIP 9:WPA-AES /// 10:WPA2-TKIP 11:WPA2-AES 12:AUTO 13:WEP-OPEN 14:WEP-SHARED int nKeyType; /// 0??Hex,1??ASCII int nKeyID; /// ??? union { char szKeys[4][32]; /// ???????? WEP????????nEncryption?2??3??13??14???? char szWPAKeys[128]; /// nEncryption?WPA?????????,??128????,??????????? }; int nKeyFlag; BYTE byConnectedFlag; /// 0: ??????, 1: ???? char reserved[11]; } DHDEV_WLAN_INFO; ///@brief ???????????????? typedef struct { char szSSID[36]; int nLinkMode; /// ????????0??adhoc,1??Infrastructure int nEncryption; /// ?????0??off,2??WEP64bit,3??WEP128bit char reserved[48]; } DHDEV_WLAN_DEVICE; ///@brief ??????????????????? typedef struct { DWORD dwSize; BYTE bWlanDevCount; /// ??????????????????? DHDEV_WLAN_DEVICE lstWlanDev[DH_MAX_WLANDEVICE_NUM]; char reserved[255]; } DHDEV_WLAN_DEVICE_LIST; ///@brief ?????????????? typedef struct { char szSSID[36]; /// ???????? char szMacAddr[18]; /// mac??? BYTE byApConnected; /// ????????? 0:???,1: ?????? BYTE byLinkMode; /// ?????? 0:adhoc 1:Infrastructure; int nRSSIQuality; /// ??????(dbm) unsigned int unApMaxBitRate; /// ????????????? BYTE byAuthMode; /// ?????0:OPEN;1:SHARED;2:WPA;3:WPA-PSK;4:WPA2;5:WPA2-PSK; /// 6:WPA-NONE(????adhoc??????), /// 7-11??????,?????????????????????????? /// 7:WPA-PSK | WPA2-PSK; 8:WPA | WPA2; 9:WPA | WPA-PSK; /// 10:WPA2 | WPA2-PSK; 11:WPA | WPA-PSK |WPA2 |WPA2-PSK ///12: UnKnown /// 13:WPA3-SAE; 14:WPA3-SAE/PSK BYTE byEncrAlgr; /// ??????0:off; 2:WEP64bit; 3:WEP128bit; 4:WEP; 5:TKIP; 6:AES(CCMP); 7:TKIP+AES(?????) 8:UnKnown BYTE byLinkQuality; /// ??????? 0~100(%) BYTE byWifiType; /// WIFI??????? 0 : 2.4G(???) ; 1 : 5G BYTE byReserved[128]; /// Reserved }DHDEV_WLAN_DEVICE_EX; ///@brief ?????????????????????????? typedef struct { DWORD dwSize; BYTE bWlanDevCount; /// ??????????????????? DHDEV_WLAN_DEVICE_EX lstWlanDev[DH_MAX_WLANDEVICE_NUM_EX]; char reserved[255]; } DHDEV_WLAN_DEVICE_LIST_EX; ///@brief ?????????????????????????? typedef struct { DWORD dwSize; BYTE bWlanDevCount; /// ??????????????????? DHDEV_WLAN_DEVICE_EX lstWlanDev[MAX_WLAN_DEVICE_NUM]; } DHDEV_WLAN_DEVICE_LIST_EX2; ///@brief ?????????????? typedef struct { int nResult; /// 0????????????,1???????????? BYTE reserved[32]; } DHDEV_FUNC_TEST; ///@brief FTP????????? typedef struct { char szServerName[32]; /// ???????? char szIp[16]; /// IP??? int nPort; /// ???? char szUserName[32]; /// ????? char szPassword[32]; /// ???? BOOL bAnonymity; /// ?????????? BYTE byReserved[256]; /// ??????? }FTP_SERVER_CFG; ///@brief ftp????????????? typedef struct { FTP_SERVER_CFG stuFtpServerInfo; /// ftp?????????????????????? DHDEV_FUNC_TEST stuTestResult; /// ftp????????????(?????????) BYTE byReserved[64]; }DHDEV_FTP_SERVER_TEST; ///@brief DDNS??????? typedef struct { char szServerType[DH_MAX_SERVER_TYPE_LEN]; /// ??????????,???.. char szServerIp[DH_MAX_DOMAIN_NAME_LEN]; /// ??????ip???????? DWORD dwServerPort; /// ????????? char szDomainName[DH_MAX_DOMAIN_NAME_LEN]; /// dvr????,??jeckean.3322.org char szUserName[DH_MAX_HOST_NAMELEN]; /// ????? char szUserPsw[DH_MAX_HOST_PSWLEN]; /// ???? BYTE byReserved[256]; /// ??????? }DDNS_DOMAIN_INFO; ///@brief DDNS?????????????? typedef struct { DDNS_DOMAIN_INFO stuDomainInfo; /// DDNS???????????????????? DHDEV_FUNC_TEST stuTestResult; /// ?????? char szMemo[128]; /// ?????????? BYTE byReserved[64]; }DHDEV_DDNS_DOMAIN_TEST; ///@brief ????????????? typedef struct { BYTE byModle[32]; /// ??? BYTE bySerialNumber[32]; /// ?????? BYTE byFirmWare[32]; /// ????? int nAtaVersion; /// ATA???????? int nSmartNum ; /// smart ????? INT64 Sectors; int nStatus; /// ?????? 0-???? 1-?? int nReserved[33]; /// ??????? } DHDEV_DEVICE_INFO; ///@brief ????smart???,????????????,???????30?????? typedef struct { BYTE byId; /// ID BYTE byCurrent; /// ????? BYTE byWorst; /// ??????? BYTE byThreshold; /// ??? char szName[64]; /// ?????? char szRaw[8]; /// ???? int nPredict; /// ?? char reserved[128]; } DHDEV_SMART_VALUE; ///@brief ???smart?????? typedef struct { BYTE nDiskNum; /// ???? BYTE byRaidNO; /// Raid????,0??????? BYTE byReserved[2]; /// ??????? DHDEV_DEVICE_INFO deviceInfo; DHDEV_SMART_VALUE smartValue[MAX_SMART_VALUE_NUM]; } DHDEV_SMART_HARDDISK; ///@brief ?????????? typedef struct { char szModuleName[64]; /// ????????? char szHardWareVersion[32]; /// ????????????? char szSoftwareVersion[32]; /// ?????????????? BYTE reserved[128]; } DHDEV_SUBMODELE_VALUE; ///@brief ?????????????? typedef struct { int nSubModuleNum; /// ????????????? DHDEV_SUBMODELE_VALUE stuSubmoduleValue[MAX_SUBMODULE_NUM]; /// ??????????? BYTE bReserved[256]; } DHDEV_SUBMODULE_INFO; ///@brief ????????????? typedef struct { BYTE bDiskDamageLevel[DH_MAX_DISK_NUM]; ///???????????? BYTE bReserved[128]; } DHDEV_DISKDAMAGE_INFO; ///@brief syslog?????????????? typedef struct { char szServerIp[DH_MAX_IPADDR_OR_DOMAIN_LEN]; ///????????? int nServerPort; ///????????? BYTE bEnable; ///????????? BYTE bReserved[255]; ///??????? }DHDEV_SYSLOG_REMOTE_SERVER; ///@brief ??????????? typedef struct { BYTE backupVideoFormat; /// ???????????, 0:dav, 1:asf BYTE password[6]; /// ???????? BYTE reversed[505]; }DHDEV_BACKUP_VIDEO_FORMAT; ///@brief ?????????????? typedef struct { char szServerIp[32]; /// ????????IP int nServerPort; /// ???? BYTE byReserved[3]; /// ???? BYTE bServerIpExEn; /// ????????IP??????,0-???????, 1-??????? char szServerIpEx[60]; /// ????????IP???,???ipv4,ipv6,???????????IP } DHDEV_SERVER_INFO; ///@brief ?????????? typedef struct { DWORD dwSize; BYTE bServerNum; /// ???????ip?? DHDEV_SERVER_INFO lstServer[DH_MAX_REGISTER_SERVER_NUM]; BYTE bEnable; /// ??? char szDeviceID[32]; /// ???id char reserved[94]; } DHDEV_REGISTER_SERVER; ///@brief ????????? typedef struct __DHDEV_CAMERA_INFO { BYTE bBrightnessEn; /// ????????1????,0?????? BYTE bContrastEn; /// ?????? BYTE bColorEn; /// ????? BYTE bGainEn; /// ?????? BYTE bSaturationEn; /// ??????? BYTE bBacklightEn; /// ?????? 0?????????????,1?????????????????,???,2??????????????????,??,???,3??????????????????,??,??,??? BYTE bExposureEn; /// ??????: 0:?????????????? 1:????????????? n:????????(1???????????? 2~n????????????????????) BYTE bColorConvEn; /// ???????????? BYTE bAttrEn; /// ???????1????,0?????? BYTE bMirrorEn; /// ????1?????,0??????? BYTE bFlipEn; /// ?????1?????,0??????? BYTE iWhiteBalance; /// ????? 0-?????????,1-???????????,2-?????????????????? 3-???????????? BYTE iSignalFormatMask; /// ?????????,??????????????????0-Inside(???????) 1- BT656 2-720p 3-1080i 4-1080p 5-1080sF BYTE bRotate90; /// 90????? 0-????? 1-??? BYTE bLimitedAutoExposure; /// ??????????????????????? BYTE bCustomManualExposure; /// ??????????????????????? BYTE bFlashAdjustEn; /// ?????????????? BYTE bNightOptions; /// ???????????? BYTE iReferenceLevel; /// ???????????????? BYTE bExternalSyncInput; /// ??????????????????,0-?????,1-??? unsigned short usMaxExposureTime; /// ?????????????????????,???????? unsigned short usMinExposureTime; /// ??????????????????????,???????? BYTE bWideDynamicRange; /// ?????????????,0-????????,2~n??????????? BYTE bDoubleShutter; /// ?????0?????,1-????????????,??????????????????????,2-????????????,???????????????????????????,3-????????????????? BYTE byExposureCompensation; /// 1???, 0 ????? BYTE bRev[109]; /// ???? } DHDEV_CAMERA_INFO; ///@brief ??????????????,?????????????????????????????????? typedef struct __DHDEV_NIGHTOPTIONS { BYTE bEnable; /// 0-??????,1-???? /// ????????????????,????????????,???????????????????? /// 00:00:00 ~23:59:59 BYTE bSunriseHour; BYTE bSunriseMinute; BYTE bSunriseSecond; BYTE bSunsetHour; BYTE bSunsetMinute; BYTE bSunsetSecond; BYTE bWhiteBalance ; /// ????? 0:unable,1:Auto 2:sunny 3:cloudy 4:home 5:office 6:night 7: Custom BYTE bGainRed; /// ??????????,??????"Custom"???????? 0~100 BYTE bGainBlue; /// ??????????,??????"Custom"???????? 0~100 BYTE bGainGreen; /// ??????????,??????"Custom"???????? 0~100 BYTE bGain; /// 0~100 BYTE bGainAuto; /// 0-????????? 1-??????? BYTE bBrightnessThreshold ; /// ????? 0~100 BYTE ReferenceLevel; /// ???????? 0~100 BYTE bExposureSpeed; /// ??????????????????????0-?????? 1~n-1-???????? n-?????????????????? n+1-?????????????? (n???????????????? float ExposureValue1; /// ??????????????????????????????,?????????,??0.1ms~80ms float ExposureValue2; /// ?????????????,?????????,??0.1ms~80ms BYTE bAutoApertureEnable; /// ?????????,1????,0??? BYTE bWideDynamicRange; /// ?????? ???????????????? WORD wNightSyncValue; /// ??????? 0~360 WORD wNightSyncValueMillValue; /// ???????0~999(???????),??wNightSyncValue?????????????? BYTE res[10]; /// ???? } DHDEV_NIGHTOPTIONS; ///@brief ????????????? typedef struct __DHDEV_CAMERA_CFG { DWORD dwSize; BYTE bExposure; /// ?????????????????????????????0-??????,1-?????1,2-?????2??n-1?????????? n?????????????????? n+1?????????????? (n==bExposureEn?? BYTE bBacklight; /// ?????????????????????????????????????,0-???,1-?????????1,2-?????????2??n-??????????? BYTE bAutoColor2BW; /// ??/?????3-?????????????? 2????(???),1??????????????????,0????(???) BYTE bMirror; /// ????1????,0???? BYTE bFlip; /// ?????1????,0???? BYTE bLensEn; /// ??????????????: 1??????0 ??????? BYTE bLensFunction; /// ??????????: 1:????????????0: ????????? BYTE bWhiteBalance; /// ????? 0:unable,1:Auto 2:sunny 3:cloudy 4:home 5:office 6:night 7: Custom BYTE bSignalFormat; /// ?????0-Inside(???????) 1- BT656 2-720p 3-1080i 4-1080p 5-1080sF BYTE bRotate90; /// 0-?????,1-????90??,2-?????90?? BYTE bReferenceLevel; /// ???????? 0~100 BYTE byReserve; /// ???? float ExposureValue1; /// ??????????????????????????????,?????????,??0.1ms~80ms float ExposureValue2; /// ?????????????,?????????,??0.1ms~80ms DHDEV_NIGHTOPTIONS stuNightOptions; /// ?????????????? BYTE bGainRed; /// ??????????,??????"Custom"???????? 0~100 BYTE bGainBlue; /// ??????????,??????"Custom"???????? 0~100 BYTE bGainGreen; /// ??????????,??????"Custom"???????? 0~100 BYTE bFlashMode; /// ??????????,0-???,1-???,2-??? BYTE bFlashValue; /// ?????????, 0-0us, 1-64us, 2-128us,...15-960us BYTE bFlashPole; /// ??????????0-???? 1-???? BYTE bExternalSyncPhase; /// ????????????,0-?????? 1-????? BYTE bFlashInitValue; /// ????????????? ????0~100 WORD wExternalSyncValue ; /// ??????????????? 0~360(???????3??????????) WORD wExternalSyncValueMillValue;/// ???????????????0~999(???????),??wExternalSyncValue?????????????????? BYTE bWideDynamicRange; ///?????? ???????????????? BYTE byExposureCompensation; /// ??????,????7,????0~14 char bRev[54]; /// ???? } DHDEV_CAMERA_CFG; #define ALARM_MAX_NAME 64 ///@brief (????)?????????? typedef struct { BOOL bEnable; /// ??????????? char szAlarmName[DH_MAX_ALARM_NAME]; /// ???????????? int nAlarmInPattern; /// ???????????? int nAlarmOutPattern; /// ??????????? char szAlarmInAddress[DH_MAX_ALARM_NAME];/// ?????????? int nSensorType; /// ?????????????????? or ???? int nDefendEfectTime; /// ????????????,??????????????????? int nDefendAreaType; /// ???????? int nAlarmSmoothTime; /// ??????????,???????????????????????????????????????????????????? char reserved[128]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; DH_MSG_HANDLE struHandle; /// ??????? } DH_INFRARED_INFO; ///@brief ????????????? typedef struct { BYTE address[ALARM_MAX_NAME]; /// ???????? BYTE name[ALARM_MAX_NAME]; /// ????????? BYTE reserved[32]; /// ??????? } DH_WI_CONFIG_ROBOT; ///@brief ?????????????? typedef struct { BYTE address[ALARM_MAX_NAME]; /// ?????????? BYTE name[ALARM_MAX_NAME]; /// ??????????? BYTE reserved[32]; /// ??????? } DH_WI_CONFIG_ALARM_OUT; ///@brief ??????? typedef struct { DWORD dwSize; BYTE bAlarmInNum; /// ????????????? BYTE bAlarmOutNum; /// ???????????? DH_WI_CONFIG_ALARM_OUT AlarmOutAddr[16]; /// ?????????? BYTE bRobotNum; /// ????????? DH_WI_CONFIG_ROBOT RobotAddr[16]; /// ???????? DH_INFRARED_INFO InfraredAlarm[16]; char reserved[256]; } DH_INFRARED_CFG; ///@brief ????????????? typedef struct { int channel; /// ????????? int alarmType; /// ?????????0??????????,1?????????? unsigned int volume; /// ????? BYTE byState; /// ?????????, 0: ???????????, 1: ?????????? char reserved[255]; } NET_NEW_SOUND_ALARM_STATE; ///@brief ?????????? typedef struct { int channelcount; /// ????????????? NET_NEW_SOUND_ALARM_STATE SoundAlarmInfo[DH_MAX_ALARM_IN_NUM]; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DH_NEW_SOUND_ALARM_STATE; ///@brief ????????????? typedef struct { int nChannelNum; /// ????? DWORD dwVideoStandardMask; /// ?????(????),???????? CAPTURE_SIZE int nFramesCount; /// Frequence[128]????????????? char Frames[128]; /// ???(?????) /// -25??25??1???-24??24??1???-23??23??1???-22??22??1? /// ???? /// 0????????1??1??1???2??1??2???3??1??3? /// 4??1??4???5??1??5???17??1??17???18??1??18? /// 19??1??19???20??1??20? /// ???? /// 25: 1??25? int nSnapModeCount; /// SnapMode[16]????????????? char SnapMode[16]; /// (?????)0???????????,1??????????? int nPicFormatCount; /// Format[16]????????????? char PictureFormat[16]; /// (?????)0??BMP???,1??JPG??? int nPicQualityCount; /// Quality[32]????????????? char PictureQuality[32]; /// ????? /// 100?????????100%??80:???????80%??60:???????60% /// 50:???????50%??30:???????30%??10:???????10% char nReserved[128]; /// ???? } DH_QUERY_SNAP_INFO; ///@brief ????????? typedef struct { int nChannelCount; /// ??????? DH_QUERY_SNAP_INFO stuSnap[DH_MAX_CHANNUM]; } DH_SNAP_ATTR_EN; /* IP??????????? */ #define DH_IPIFILTER_NUM 200 /// IP #define DH_IPIFILTER_NUM_EX 512 /// IP ///@brief IP??? typedef struct { DWORD dwIPNum; /// IP???? char SZIP[DH_IPIFILTER_NUM][DH_MAX_IPADDR_LEN]; /// IP char byReserve[32]; /// ???? } IPIFILTER_INFO; ///@brief IP??????????? typedef struct { DWORD dwSize; DWORD dwEnable; /// ??? DWORD dwType; /// ????????????0?????????? 1?????????????????????????????,???????????????????????????? IPIFILTER_INFO BannedIP; /// ??????? IPIFILTER_INFO TrustIP; /// ???????? char byReserve[256]; /// ???? } DHDEV_IPIFILTER_CFG; ///@brief IP?????? typedef struct { DWORD dwIPNum; /// IP???? char SZIP[DH_IPIFILTER_NUM_EX][DH_MAX_IPADDR_LEN]; /// IP char byReserve[32]; /// ???? } IPIFILTER_INFO_EX; ///@brief IP?????????????? typedef struct { DWORD dwSize; DWORD dwEnable; /// ??? DWORD dwType; /// ????????????0?????????? 1?????????????????????????????,???????????????????????????? IPIFILTER_INFO_EX BannedIP; /// ??????? IPIFILTER_INFO_EX TrustIP; /// ???????? char byReserve[256]; /// ???? } DHDEV_IPIFILTER_CFG_EX; /* MAC???????? */ #define DH_MACFILTER_NUM 512 /// MAC ///@brief MAC??? typedef struct { DWORD dwSize; /// ????,????????????????? DWORD dwMacNum; /// MAC???? char szMac[DH_MACFILTER_NUM][DH_MACADDR_LEN]; /// MAC } MACFILTER_INFO; ///@brief MAC??????????? typedef struct { DWORD dwSize; /// ????,????????????????? DWORD dwEnable; /// ??? DWORD dwType; /// ????????????0?????????? 1?????????????????????????????,???????????????????????????? MACFILTER_INFO stuBannedMac; /// ???????Mac MACFILTER_INFO stuTrustMac; /// ????????Mac } DHDEV_MACFILTER_CFG; /* MAC,IP???????? */ #define DH_MACIPFILTER_NUM 512 /// MAC,IP ///@brief MAC,IP??????? typedef struct { DWORD dwSize; /// ????,????????????????? char szMac[DH_MACADDR_LEN]; /// mac char szIp[DH_MAX_IPADDR_LEN]; /// ip }MACIP_INFO; ///@brief MAC,IP??????????? typedef struct { DWORD dwSize; /// ????,????????????????? DWORD dwEnable; /// ??? DWORD dwType; /// ????????????0?????????? 1?????????????????????????????,???????????????????????????? DWORD dwBannedMacIpNum; /// ???????MAC,IP????(MAC,IP?????) MACIP_INFO stuBannedMacIp[DH_MACIPFILTER_NUM]; /// ???????Mac,IP DWORD dwTrustMacIpNum; /// ????????MAC,IP????(MAC,IP?????) MACIP_INFO stuTrustMacIp[DH_MACIPFILTER_NUM]; /// ????????Mac,IP } DHDEV_MACIPFILTER_CFG; ///@brief ??????????? typedef struct { int nCardNum; /// ?????????? char cardInfo [DH_MAX_CARD_NUM][DH_MAX_CARDINFO_LEN]; /// ???????????? BYTE byReserve[32]; /// ??????? }DHDEV_NETCARD_CFG; ///@brief RTSP ???? typedef struct { WORD wPort; /// ???? BYTE byReserved[62]; /// ??????? }DHDEV_RTSP_CFG; ///@brief ??????????36????? typedef struct _ENCRYPT_KEY_INFO { BYTE byEncryptEnable; /// ??????0:??????, 1:???? BYTE byReserved[3]; union { BYTE byDesKey[8]; /// des??? BYTE by3DesKey[3][8]; /// 3des??? BYTE byAesKey[32]; /// aes??? }; }ENCRYPT_KEY_INFO; ///@brief ?????????? typedef struct _ALGO_PARAM_INFO { WORD wEncryptLenth; /// ???????,????AES???????,??????????(?????128,192,256??????, ??: wEncryptLenth?128,????????ENCRYPT_KEY_INFO???byAesKey[0]~[15]) /// ?DES???????,??????????64?? /// ?3DES???????,???????????(2??3?????) BYTE byAlgoWorkMode ; /// ??????,??????????? EM_ENCRYPT_ALOG_WORKMODE BYTE reserved[13]; /// ??????? }ALGO_PARAM_INFO; ///@brief ??????????????? typedef struct _DHEDV_STREAM_ENCRYPT { BYTE byEncrptAlgoType; /// ???????????00: AES??01:DES??02: 3DES BYTE byReserved1[3]; ALGO_PARAM_INFO stuEncrptAlgoparam; /// ?????????? ENCRYPT_KEY_INFO stuEncryptKeys[32]; /// ????????????? BYTE byEncrptPlanEnable; /// ????????? BYTE byReserved3[3]; NET_TIME stuPreTime; /// ????????????? BYTE reserved2[1360]; }DHEDV_STREAM_ENCRYPT; ///@brief ?????????? typedef struct _DHDEV_BIT_RATE { DWORD nExpectCodeRate; /// ????????,????kps BYTE byReserved[64]; /// ??????? }DHDEV_LIMIT_BIT_RATE; ///@brief ???????????? typedef struct _DHDEV_CUSTOM_CFG { char szData[1024]; /// ??????????????? char reserved[3072]; /// ??????? }DHDEV_CUSTOM_CFG; ///@brief ??????????????? typedef struct { DWORD dwSize; int nCompression; /// ??????,????,???DH_TALK_CODING_TYPE,??????????????????????????????????? int nMode; /// ??????,????,?0???????????????????????? /// ???????????????????????????,?? /// AMR???EM_ARM_ENCODE_MODE char byReserve[256]; /// ???? } DHDEV_TALK_ENCODE_CFG; ///@brief ??????mobile??????? ///@brief (???????????????/???????)MMS??????? typedef struct { DWORD dwSize; DWORD dwEnable; /// ??? DWORD dwReceiverNum; /// ???????????? char SZReceiver[DH_MMS_RECEIVER_NUM][32]; /// ?????????,??????????? BYTE byType; /// ??????????? 0:MMS??1:SMS char SZTitle[32]; /// ??????????? char byReserve[223]; /// ???? } DHDEV_MMS_CFG; ///@brief (???????????????????) typedef struct { DWORD dwSize; DWORD dwEnable; /// ??? DWORD dwSenderNum; /// ???????????? char SZSender[DH_MMS_SMSACTIVATION_NUM][32]; /// ?????????,??????????? char byReserve[256]; /// ???? }DHDEV_SMSACTIVATION_CFG; ///@brief (???????????????????) typedef struct { DWORD dwSize; DWORD dwEnable; /// ??? DWORD dwCallerNum; /// ????????? char SZCaller[DH_MMS_DIALINACTIVATION_NUM][32];/// ??????, ??????????? char byReserve[256]; /// ???? }DHDEV_DIALINACTIVATION_CFG; ///@brief ????????????????? typedef struct { DWORD dwSize; DWORD dwTDSCDMA; /// TD-SCDMA???,??????0??100 DWORD dwWCDMA; /// WCDMA???,??????0??100 DWORD dwCDMA1x; /// CDMA1x???,??????0??100 DWORD dwEDGE; /// EDGE???,??????0??100 DWORD dwEVDO; /// EVDO???,??????0??100 int nCurrentType; /// ??????? /// 0 ????????????? /// 1 TD-SCDMA /// 2 WCDMA /// 3 CDMA_1x /// 4 EDGE /// 5 EVDO /// 6 TD-LTE /// 7 FDD-LTE DWORD dwTDLTE; /// TD-LTE???,??????0??100 DWORD dwFDDLTE; /// FDD-LTE???,??????0??100 char byReserve[244]; /// ???? } DHDEV_WIRELESS_RSS_INFO; ///@brief SIP???? typedef struct _DHDEV_SIP_CFG { BOOL bUnregOnBoot; ///Unregister on Reboot char szAccoutName[64]; ///Account Name char szSIPServer[128]; ///SIP Server char szOutBoundProxy[128]; ///Outbound Proxy DWORD dwSIPUsrID; ///SIP User ID DWORD dwAuthID; ///Authenticate ID char szAuthPsw[64]; ///Authenticate Password char szSTUNServer[128]; ///STUN Server DWORD dwRegExp; ///Registration Expiration DWORD dwLocalSIPPort; ///Local SIP Port DWORD dwLocalRTPPort; ///Local RTP Port BOOL bEnable; /// ??? char szNotifyID[128]; /// ????ID NET_TIME stuRegTime; /// ????????????????,???????? BYTE bReserved[868]; ///reserved } DHDEV_SIP_CFG; ///@brief SIP?? typedef struct _DHDEV_SIP_STATE { int nStatusNum; ///??????????? BYTE byStatus[64]; ///0:?????,1:?????,2:????,3:?????,4:????? BYTE bReserved[64]; ///???? }DHDEV_SIP_STATE; ///@brief ???HardKey?? typedef struct _DHDEV_HARDKEY_STATE { BOOL bState; /// 0:??????HardKey, 1:?????HardKey BYTE bReserved[64]; /// ???? }DHDEV_HARDKEY_STATE; ///@brief ???ISCSI???????? typedef struct _DHDEV_ISCSI_PATHLIST { int nCount; char szPaths[DH_MAX_ISCSI_PATH_NUM][MAX_PATH_STOR]; /// ????????? } DHDEV_ISCSI_PATHLIST; ///@brief ??????????????? typedef struct _DHDEV_WIFI_ROUTE_CAP_COUNTRY { char szCountry[32]; /// ???? int nValidChnNum; /// ??????????? int nValideChannels[32]; /// ??????????? char reserved[64]; /// ???? } DHDEV_WIFI_ROUTE_CAP_COUNTRY; ///@brief ?????????????????? typedef struct _DHDEV_WIFI_ROUTE_CAP { int nCountryNum; /// ???????? DHDEV_WIFI_ROUTE_CAP_COUNTRY stuCountry[256]; /// ??????????????? char reserved[256]; /// ???? } DHDEV_WIFI_ROUTE_CAP; ///@brief ???????????? typedef struct _MONITOR_INFO { int nPresetObjectNum; /// ???????????? int nActualObjectNum; /// ???????????? char reserved[64]; }MONITOR_INFO; ///@brief ???????????? typedef struct _DHDEV_MONITOR_INFO { int nChannelNumber; MONITOR_INFO stMonitorInfo[64]; /// ???????????? char reserved[128]; }DHDEV_MONITOR_INFO; ///@brief ????????????????? typedef struct tagNET_MULTIPLAYBACK_SPLIT_CAP { DWORD dwSize; int nSliptMode[DH_MAX_MULTIPLAYBACK_SPLIT_NUM]; /// ????????, int nModeNumber; }NET_MULTIPLAYBACK_SPLIT_CAP; ///@brief ??????????? typedef struct _POINTEANBLE { BYTE bPoint; ///???????????????????[1,80],?????????0?? BYTE bEnable; ///???????,0????,1???? BYTE bReserved[2]; } POINTEANBLE; ///@brief ???????? typedef struct _POINTCFG { char szIP[DH_MAX_IPADDR_LEN]; /// ip int nPort; /// ??? POINTEANBLE stuPointEnable[80]; /// ??????? BYTE bReserved[256]; }POINTCFG; ///@brief ???????? typedef struct _DHDEV_POINT_CFG { int nSupportNum; /// ???????,????????????????sdk,????????????? POINTCFG stuPointCfg[16]; /// ??????????????????????????????nSupportNum??????????? BYTE bReserved[256]; /// ???? }DHDEV_POINT_CFG; ////////////////////////////????DVR???///////////////////////////////// ///@brief GPS???(???????) typedef struct _GPS_Info { NET_TIME revTime; /// ??????? char DvrSerial[50]; /// ????????? double longitude; /// ????(?????????????,????0-360??) double latidude; /// ????(?????????????,????0-180??) double height; /// ???(??) double angle; /// ?????(????????????,???????) double speed; /// ???(?????????,speed/1000*1.852????/???) WORD starCount; /// ???????? BOOL antennaState; /// ??????(true ??,false ??) BOOL orientationState; /// ??????(true ????,false ??????) } GPS_Info,*LPGPS_Info; ///@brief ????????? typedef struct { int nAlarmCount; /// ???????????????? int nAlarmState[128]; /// ???????????????? BYTE byRserved[128]; /// ??????? }ALARM_STATE_INFO; ///@brief Gps??????? typedef struct tagNET_GPS_LOCATION_INFO { GPS_Info stuGpsInfo; /// GPS??? ALARM_STATE_INFO stuAlarmStateInfo; /// ????????? int nTemperature; /// ???(????:0.1?????) int nHumidity; /// ???(????:0.1%) unsigned int nIdleTime; /// ???????(????:??) unsigned int nMileage; /// ???(????:0.1km) int nVoltage; /// ???????(????:0.1??) BYTE bOffline; /// 0-?? 1-???? char szReserved[3]; /// ?????? NET_TIME_EX stuGPSRealUTC; /// GPS ???UTC??? BYTE byReserved[984]; }NET_GPS_LOCATION_INFO, *LPNET_GPS_LOCATION_INFO; ///@brief ?????????? typedef struct _snap_param { unsigned int Channel; /// ??????? unsigned int Quality; /// ?????1~6 unsigned int ImageSize; /// ?????????0??QCIF,1??CIF,2??D1 unsigned int mode; /// ??????-1:???????, 0???????????, 1????????????????, 2????????????? unsigned int InterSnap; /// ?????????mode=1??????????????? /// ??????????????(??????????)????????????????????????????? /// ??????? CFG_CMD_ENCODE ?????stuSnapFormat[nSnapMode].stuVideoFormat.nFrameRate???????????? unsigned int CmdSerial; /// ???????????????????? 0~65535???????????????? unsigned short unsigned int Reserved[4]; } SNAP_PARAMS, *LPSNAP_PARAMS; ///@brief ?????????? typedef struct { DWORD dwSize; BYTE bTimingEnable; /// ?????????(???????????????????????????????) BYTE bPicIntervalHour; /// ??????????????? short PicTimeInterval; /// ??????????,???????,????????????????????30???? DH_VIDEOENC_OPT struSnapEnc[SNAP_TYP_NUM]; /// ??????????,????????????????????????????,??????????????,??????????????? } DHDEV_SNAP_CFG; ///@brief ????????????? typedef struct { DWORD dwSize; BYTE bTimingEnable; /// ?????????(???????????????????????????????) BYTE bPicIntervalHour; /// ??????????????? short PicTimeInterval; /// ??????????,???????,????????????????????30???? DH_VIDEOENC_OPT struSnapEnc[SNAP_TYP_NUM]; /// ??????????,????????????????????????????,??????????????,??????????????? DWORD dwTrigPicIntervalSecond; /// ??????????????????????? ?????? BYTE byRserved[256]; /// ??????? } DHDEV_SNAP_CFG_EX; ///@brief ????wifi?? typedef struct { char szSSID[128]; ///SSID BOOL bEnable; ///???????wifi????, 0:????? 1:??? int nSafeType; ///???????? ///0:OPEN ///1:RESTRICTE ///2:WEP ///3:WPA ///4:WPA2 ///5:WPA-PSK ///6:WPA2-PSK int nEncryprion; ///?????? ///0:OPEN ///1:TKIP ///2:WEP ///3:AES ///4:NONE(??????) ///5:AUTO ///6:SHARED int nStrength; ///AP?????? char szHostIP[128]; ///??????? char szHostNetmask[128]; ///???????? char szHostGateway[128]; ///???????? int nPriority; ///?????,(1-32) int nEnDHCP; ///0???????; 1?????(???b??dhcp???????) BYTE bReserved[1016]; } DHDEV_VEHICLE_WIFI_STATE; ///@brief ????wifi???? typedef struct { char szSSID[128]; ///SSID int nPriority; ///?????,(1-32) int nSafeType; ///???????? ///0:OPEN ///1:RESTRICTE ///2:WEP ///3:WPA ///4:WPA2 ///5:WPA-PSK ///6:WPA2-PSK int nEncryprion; ///?????? ///0:OPEN ///1:TKIP ///2:WEP ///3:AES ///4:NONE(??????) ///5:AUTO ///6:SHARED char szKey[128]; ///??????? char szHostIP[128]; ///??????? char szHostNetmask[128]; ///???????? char szHostGateway[128]; ///???????? int nEnDHCP; ///0???????; 1?????(???b??dhcp???????) BYTE byKeyIndex; ///WEP??????????????????,0?????????????? >0:????????,????1-4 BYTE bReserved[1019]; } DHDEV_VEHICLE_WIFI_CONFIG; ///@brief wifi???? typedef struct { char szSSID[128]; /// SSID BYTE bReserved[256]; /// ??????? }WIFI_CONNECT; ///@brief IP??????? typedef struct __DHCTRL_IPMODIFY_PARAM { int nStructSize; char szRemoteIP[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ??????IP char szSubmask[DH_MAX_IPADDR_LEN]; /// ???????? char szGateway[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ???? char szMac[DH_MACADDR_LEN]; /// MAC??? char szDeviceType[DH_DEV_TYPE_LEN]; /// ??????? }DHCTRL_IPMODIFY_PARAM; ///@brief ????WIFI AP???? typedef struct { BOOL bIsScan; ///0:?????wifi (????????), 1???b??wifi char szSSID[128]; ///SSID int nSafeType; ///???????? ///0:OPEN ///1:RESTRICTE ///2:WEP ///3:WPA ///4:WPA2 ///5:WPA-PSK ///6:WPA2-PSK int nEncryprion; ///?????? ///0:OPEN ///1:TKIP ///2:WEP ///3:AES ///4:NONE(??????) ///5:AUTO ///6:SHARED char szKey[128]; ///??????? int nStrength; ///AP?????? int nMaxBitRate; ///AP?????????????,?????? ??? int nIsCnnted; ///???????????? int nIsSaved; ///????????????? int nPriority; ///?????,(1-32) char szHostIP[128]; ///??????? char szHostNetmask[128]; ///???????? char szHostGateway[128]; ///???????? int nWifiFreq; ///???????,?????????? int nEnDHCP; ///0??????? 1?????(???b??dhcp???????) BYTE byKeyIndex; ///WEP??????????????????,0?????????????? >0:????????,????1-4 BYTE bReserved[1019]; }DHDEV_VEHICLE_SINGLE_WIFI_AP_CFG; ///@brief wifi ap???? typedef struct { BOOL bEnable; ///???????wifi????, 0:????? 1:??? int nWifiApNum; ///DHDEV_VEHICLE_WIFI_AP_CFG???????????? DHDEV_VEHICLE_SINGLE_WIFI_AP_CFG struWifiAp[64];///????WIFI AP???? int nReserved[512]; ///???? }DHDEV_VEHICLE_WIFI_AP_CFG; ///@brief wifi ap???? typedef struct { BOOL bEnable; ///???????wifi????, 0:????? 1:??? int nRetWifiApNum; ///?????????DHDEV_VEHICLE_WIFI_AP_CFG???????????? int nMaxWifiApNum; ///?????DHDEV_VEHICLE_SINGLE_WIFI_AP_CFG???? DHDEV_VEHICLE_SINGLE_WIFI_AP_CFG* pWifiAp; ///????WIFI AP???? int nReserved[512]; ///???? }DHDEV_VEHICLE_WIFI_AP_CFG_EX; ///@brief GPS?????????? typedef struct _DH_DEVICE_GPS_LOG_ITEM { DHDEVTIME stuDevTime; /// ?????? DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? DWORD dwSpeed; /// ???,?????????,speed/1000*1.852????/??? DWORD dwHight; /// ???,?? DWORD dwAngle; /// ????,???0~360,????????????,??????? DHDEVTIME stuGpsTime; /// GPS??? BYTE bAntStatus; /// GPS??????,?0?????;???0????? BYTE bOriStatus; /// ??????,???0?????????? BYTE bSatCount; /// ???????? BYTE bGPSStatus; /// GPS??,0,?????? 1,?????????? 2,??????????? DWORD dwTemp; /// ????(?????),??????1000??,??30.0????????30000 DWORD dwHumidity; /// ????(%),??????1000??,??30.0%????30000 BYTE bReserved[24]; /// ??????? }DH_DEVICE_GPS_LOG_ITEM; ///@brief GPS ?????????????? typedef struct _QUERY_GPS_LOG_PARAM { NET_TIME stuStartTime; /// ????????????? NET_TIME stuEndTime; /// ?????????????? int nStartNum; /// ???????????????????????,????????????????0 BYTE bReserved[20]; } QUERY_GPS_LOG_PARAM; ///@brief GPS???????? typedef struct _GPS_TEMP_HUMIDITY_INFO { double dTemperature; /// ????(?????),??????1000??,??30.0????????30000 double dHumidity; /// ????(%),??????1000??,??30.0%????30000 BYTE bReserved[128]; /// ??????? }GPS_TEMP_HUMIDITY_INFO; ///@brief ??????????????? typedef enum { ENCLOSURE_UNKNOWN = 0x00, /// ??? ENCLOSURE_LIMITSPEED = 0x01, /// ?????? ENCLOSURE_DRIVEALLOW = 0x02, /// ????? ENCLOSURE_FORBIDDRIVE = 0x04, /// ????? ENCLOSURE_LOADGOODS = 0x08, /// ????? ENCLOSURE_UPLOADGOODS = 0x10, /// ?????? ENCLOSURE_FLYALLOW = 0x20, /// ?????? ENCLOSURE_MANUALFORBIDFLY = 0x40, /// ??????(???????) ENCLOSURE_FIXEDFORBIDFLY = 0x80, /// ??????(????) - ???????? ENCLOSURE_FiXEDLIMITFLY = 0x81, /// ??????? - ???????? }ENCLOSURE_TYPE; ///@brief ???????? typedef enum { ENCLOSURE_ALARM_DRIVEIN , /// ??? ENCLOSURE_ALARM_DRIVEOUT, /// ??? ENCLOSURE_ALARM_OVERSPEED, /// ???? ENCLOSURE_ALARM_SPEEDCLEAR, /// ??????? ENCLOSURE_ALARM_FLYNEAR, /// ???????? }ENCLOSURE_ALARM_TYPE; ///@brief ??????????????? typedef struct { DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? }GPS_POINT; ///@brief ???????????? typedef struct _DHDEV_ENCLOSURE_CFG { UINT unType; /// ????????????????,?? ENCLOSURE_TYPE BYTE bRegion[8]; /// ?????????????????????????????(0-255),??4bytes???? UINT unId; /// ????????????ID??? UINT unSpeedLimit; /// ????,????km/h UINT unPointNum; /// ??????????????? GPS_POINT stPoints[128]; /// ??????????????? char szStationName[DH_STATION_NAME_LEN]; /// ??????????????????????? BYTE bDisenable; /// ????? 0 ???? ;1 ?????? BYTE bShape; /// ??????? 0 ????? 1 ????? BYTE bLimitType; /// ???????????? 0 ??; 1 ???; 2 ???; 3 ?????? BYTE bAction; /// ????????????????????0 ??,???????; 1 ?????; 2 ???; 3 ????; int nLimitAltitude; /// ??? ??????????? 0 ???? int nAlarmAltitude; /// ???????????????? 0 ???? UINT unLimitRadius; /// ?????????????0 ???? UINT unAlarmRadius; /// ????????????0 ???? BYTE reserved[12]; /// ???? }DHDEV_ENCLOSURE_CFG; ///@brief ????????????????? typedef struct _DHDEV_ENCLOSURE_VERSION_CFG { UINT unType; /// ????????????,??LIMITSPEED | DRIVEALLOW UINT unVersion[32]; /// ???????????????,???????????????????????? int nReserved; /// ???? }DHDEV_ENCLOSURE_VERSION_CFG; ///@brief ???????????? typedef enum tagEM_ENCLOSURE_TYPE_EX { EM_ENCLOSURE_TYPE_EX_UNKNOWN, /// ??? EM_ENCLOSURE_TYPE_EX_LIMITSPEED, /// ?????? EM_ENCLOSURE_TYPE_EX_DRIVEALLOW, /// ????? EM_ENCLOSURE_TYPE_EX_FORBIDDRIVE, /// ????? EM_ENCLOSURE_TYPE_EX_LOADGOODS, /// ????? EM_ENCLOSURE_TYPE_EX_UPLOADGOODS, /// ?????? }EM_ENCLOSURE_TYPE_EX; ///@brief ??????? typedef enum tagEM_ENCLOSURE_ALARM_TYPE_EX { ENCLOSURE_ALARM_EX_UNKNOWN, /// ??? ENCLOSURE_ALARM_EX_DRIVEIN , /// ??? ENCLOSURE_ALARM_EX_DRIVEOUT, /// ??? ENCLOSURE_ALARM_EX_OVERSPEED, /// ???? ENCLOSURE_ALARM_EX_SPEEDCLEAR, /// ??????? }EM_ENCLOSURE_ALARM_TYPE_EX; ///@brief ??????????????????? typedef struct tagALARM_ENCLOSURE_INFO_EX { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? NET_TIME_EX stuUTC; /// ???????????? EM_ENCLOSURE_TYPE_EX emType; /// ???????????? int nActionNum; /// ?????????????? EM_ENCLOSURE_ALARM_TYPE_EX emAction[16]; /// ??????? int nDriverNo; /// ?????? int nEnclosureID; /// ??????? DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 int nLimitSpeed; /// ??????? int nSpeed; /// ?????? char szDeviceID[32]; /// ???ID int nStartEnclosureID; /// ??????????? int nEndEnclosureID; /// ?????????? NET_TIME_EX stuStartTime; /// ?????????????? NET_TIME_EX stuEndTime; /// ?????????????? int nMileage; /// ?????????????????????0.1Km int nTriggerCount; /// ???? int nMultiTypeNum; /// ??????????????? char szMultiType[16][32]; /// ??????????? NET_GPS_STATUS_INFO *pstuGPSStatus; /// GPS??? char szReserved[508-POINTERSIZE]; /// ???? }ALARM_ENCLOSURE_INFO_EX; ///@brief ???????????? typedef struct __ALARM_ENCLOSURE_INFO { int nTypeNumber; /// ??????????????????? BYTE bType[16]; /// ????????????, ?? ENCLOSURE_TYPE int nAlarmTypeNumber; /// ??????????????? BYTE bAlarmType[16]; /// ????????,??ENCLOSURE_ALARM_TYPE char szDriverId[DH_VEHICLE_DRIVERNO_LEN]; /// ??????? UINT unEnclosureId; /// ????????ID UINT unLimitSpeed; /// ????,????km/h UINT unCurrentSpeed; /// ?????? NET_TIME stAlarmTime; /// ??????????? DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? BYTE bOffline; /// 0-?? 1-???? char reserve[3]; /// ?????? UINT unTriggerCount; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? ?????????? ALARM_ENCLOSURE_INFO_EX ???????? BOOL bIsAlarmEnclosureInfoEx; /// ????TRUE????? ALARM_ENCLOSURE_INFO_EX ????????? ALARM_ENCLOSURE_INFO_EX stuAlarmEnclosureInfoEx; /// ??????????????????????? BYTE byReserved[128]; /// ??????? }ALARM_ENCLOSURE_INFO; ///@brief ????????????????????(DH_START_LISTEN_FINISH_EVENT)??????? typedef struct tagSTART_LISTEN_FINISH_RESULT_INFO { DWORD dwEventResult; /// ???????????? NET_NOERROR????? ??0?????????????????_EC(x) BYTE byReserved[508]; /// ??????? }START_LISTEN_FINISH_RESULT_INFO; #define DH_MAX_RAID_NUM 16 #define DH_MAX_RAID_DEVICE_NAME 16 ///@brief RAID????? typedef struct __RAID_STATE_INFO { char szName[16]; /// Raid???? BYTE byType; /// ???? 1:Jbod 2:Raid0 3:Raid1 4:Raid5 BYTE byStatus; /// ?? 0:unknown ,1:active,2:degraded,3:inactive,4:recovering BYTE byReserved[2]; int nCntMem; /// nMember???????????????? int nMember[32]; /// 1,2,3,... ?????????,??????? int nCapacity; /// ????,????G int nRemainSpace; /// ???????,????M int nTank; /// ????? 0:????,1:?????1,2:?????2,???? char reserved[32]; }RAID_STATE_INFO; ///@brief RAID????? typedef struct __ALARM_RAID_INFO { int nRaidNumber; /// ?????RAID???? RAID_STATE_INFO stuRaidInfo[DH_MAX_RAID_NUM]; /// ????RAID??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[128]; }ALARM_RAID_INFO; ///@brief RAID???????? typedef enum tagEM_RAID_ERROR { EM_RAID_ERROR_UNKNOW, /// ??? EM_RAID_ERROR_FAILED, /// RAID???? EM_RAID_ERROR_DEGRADED, /// RAID???? } EM_RAID_ERROR; ///@brief ?????????? typedef enum tagEM_RAID_ERR_SUBDISK { EM_RAID_ERR_SUBDISK_UNKNOWN, /// ??? EM_RAID_ERR_SUBDISK_OFFLINE, /// ???? EM_RAID_ERR_SUBDISK_FAULTY, /// ?? EM_RAID_ERR_SUBDISK_WRITEERR, /// ?????? } EM_RAID_ERR_SUBDISK; ///@brief ?????????????? typedef struct tagNET_RAID_ERR_DETAIL_INFO { DWORD dwSlotNum; /// ????????? EM_RAID_ERR_SUBDISK emErrSubDisk; /// ?????? BYTE byReserved[24]; /// ???? }NET_RAID_ERR_DETAIL_INFO; ///@brief ??RAID????? ???DH_ALARM_RAID_STATE_EX???? typedef struct tagALARM_RAID_INFO_EX { DWORD nAction; /// 0-???, 1-?? char szDevice[DH_MAX_RAID_DEVICE_NAME]; /// ??????? EM_RAID_ERROR emErrorType; /// ???????? int nDetailNum; /// ???????????????? NET_RAID_ERR_DETAIL_INFO stuErrDetail[16]; /// ?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[508]; /// ???? }ALARM_RAID_INFO_EX; ///@brief IPC??????????????(SD????)???? ??? DH_ALARM_STORAGE_IPC_FAILURE ???? typedef struct tagALARM_STORAGE_IPC_FAILURE_INFO { int nAction; /// 0:??? 1:?? int nChannelID; /// ??????????????? BYTE byReserved[1024]; /// ??????? }ALARM_STORAGE_IPC_FAILURE_INFO; ///@brief ???????,???????????????????????????????????????????? DH_ALARM_DEVICE_STAY typedef struct tagALARM_DEVICE_STAY_INFO { int nAction; /// 0:??? 1:?? int nChannelID; /// ??????????????? BYTE byReserved[1024]; /// ??????? }ALARM_DEVICE_STAY_INFO; ///@brief ???????????????? typedef enum tagEM_SUB_WAY_DOOR_STATE_TYPE { EM_SUB_WAY_DOOR_STATE_TYPE_UNKNOWN, /// ????? EM_SUB_WAY_DOOR_STATE_TYPE_LOST, /// ????? EM_SUB_WAY_DOOR_STATE_TYPE_ISOLATION, /// ???? EM_SUB_WAY_DOOR_STATE_TYPE_UNLOCK, /// ???? EM_SUB_WAY_DOOR_STATE_TYPE_NORMAL, /// ???? }EM_SUB_WAY_DOOR_STATE_TYPE; ///@brief ????????????? typedef enum tagEM_SUB_WAY_CARRIAGE_NUMBER_TYPE { EM_SUB_WAY_CARRIAGE_NUMBER_TYPE_UNKNOWN, /// ????? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE_TC1, /// TC1 EM_SUB_WAY_CARRIAGE_NUMBER_TYPE_M1, /// M1 EM_SUB_WAY_CARRIAGE_NUMBER_TYPE_M2, /// M2 EM_SUB_WAY_CARRIAGE_NUMBER_TYPE_TC2, /// TC2 }EM_SUB_WAY_CARRIAGE_NUMBER_TYPE; ///@brief ???????????? ??? DH_ALARM_SUB_WAY_DOOR_STATE ???? typedef struct tagALARM_SUB_WAY_DOOR_STATE_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nDoorNumber; /// ??? EM_SUB_WAY_DOOR_STATE_TYPE emDoorState; /// ?? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE emCarriageNumber; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_DOOR_STATE_INFO; ///@brief ????PECE?????? ??? DH_ALARM_SUB_WAY_PECE_SWITCH ???? typedef struct tagALARM_SUB_WAY_PECE_SWITCH_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nDoorNumber; /// ??? int nState; /// ????1??????0??????,??????????? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE emCarriageNumber; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_PECE_SWITCH_INFO; ///@brief ????????? ??? DH_ALARM_SUB_WAY_FIRE_ALARM ???? typedef struct tagALARM_SUB_WAY_FIRE_ALARM_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nSourceNumber; /// ????? BOOL bState; /// ????TRUE????????FALSE?????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_FIRE_ALARM_INFO; ///@brief ????????????????? ??? DH_ALARM_SUB_WAY_EMER_HANDLE ???? typedef struct tagALARM_SUB_WAY_EMER_HANDLE_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? BOOL bState; /// ????TRUE???????????FALSE???????? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE emCarriageNumber; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_EMER_HANDLE_INFO; ///@brief ????????????? ??? DH_ALARM_SUB_WAY_CAB_COVER ???? typedef struct tagALARM_SUB_WAY_CAB_COVER_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nState; /// ????1??????0??????,??????????? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE emCarriageNumber; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_CAB_COVER_INFO; ///@brief ???????????????? ??? DH_ALARM_SUB_WAY_DERA_OBST ???? typedef struct tagALARM_SUB_WAY_DERA_OBST_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? BOOL bState; /// ????TRUE???????????????FALSE????????????????? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE emCarriageNumber; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_DERA_OBST_INFO; ///@brief ??????????????? ??? DH_ALARM_SUB_WAY_PECU_CALL ???? typedef struct tagALARM_SUB_WAY_PECU_CALL_INFO { int nAction; /// ?????????0??????????,1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nCallNumber; /// ???????? BOOL bState; /// ????TRUE?????????FALSE???????? EM_SUB_WAY_CARRIAGE_NUMBER_TYPE emCarriageNumber; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_SUB_WAY_PECU_CALL_INFO; ///@brief ???????????? DH_ALARM_DOOR_CLOSEDMANUALLY ???? typedef struct tagALARM_DOOR_CLOSEDMANUALLY_INFO { int nAction; /// ?????????-1???1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? BYTE byReserved[1024]; /// ??????? }ALARM_DOOR_CLOSEDMANUALLY_INFO; ///@brief ?????????????? DH_ALARM_DOOR_NOTCLOSED_LONGTIME ???? typedef struct tagALARM_DOOR_NOTCLOSED_LONGTIME_INFO { int nAction; /// ?????????-1???1???????????????,2???????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nDoor; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? BYTE byReserved[1024]; /// ??????? }ALARM_DOOR_NOTCLOSED_LONGTIME_INFO; ///@brief ???????????????DH_ALARM_CUT_LINE???? typedef struct tagALARM_CUT_LINE_INFO { int nChannel; /// ????? int nAction; /// ?????????-1????????????0??????????,1???????????????,2???????????????? NET_TIME_EX stuTime; /// ???????????? BYTE byReserved[1024]; /// ??????? } ALARM_CUT_LINE_INFO; ///@brief ??????????????? DH_ALARM_FIBRE_OPTIC_ABORT ???? typedef struct tagALARM_FIBRE_OPTIC_ABORT { int nAlarmIn; /// ????????? int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_FIBRE_OPTIC_ABORT; ///@brief ?????????????????? DH_ALARM_TAIL_DETECTION ???? typedef struct tagALARM_TAIL_DETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? /// ?????????????????????? /// ?????????+???+???????????????2???????14??????????5?? BYTE byReserved[992]; /// ??????? }ALARM_TAIL_DETECTION_INFO; ///@brief ????????????????????DH_ALARM_NEAR_DISTANCE_DETECTION ???? typedef struct tagALARM_NEAR_DISTANCE_INFO { int nChannel; /// ????? int nAction; /// ???????,1???????????????,2????????????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? BYTE byReserved[1024]; /// ??????? } ALARM_NEAR_DISTANCE_INFO; ///@brief ?????????????????????????? typedef struct tagMAN_STAND_LIST_INFO { DH_POINT stuCenter; /// ??????????????,8192????? char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 DH_RECT stuBoundingBox; /// ?????? char szReversed[90]; /// ??????? } MAN_STAND_LIST_INFO; ///@brief ??????????????????????DH_ALARM_MAN_STAND_DETECTION ???? typedef struct tagALARM_MAN_STAND_INFO { int nChannel; /// ????? int nAction; /// ???????,1???????????????,2????????????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nManListCount; /// ??????????????? MAN_STAND_LIST_INFO stuManList[MAX_MAN_LIST_COUNT]; /// ????????????? BYTE byReserved[1024]; /// ??????? } ALARM_MAN_STAND_INFO; ///@brief ?????????????????????????????????? typedef struct tagMAN_NUM_LIST_INFO { DH_RECT stuBoudingBox; /// ?????????,8192????? int nStature; /// ????????????cm char szReversed[128]; /// ??????? } MAN_NUM_LIST_INFO; ///@brief ????????????????????????????DH_ALARM_MAN_NUM_DETECTION ???? typedef struct tagALARM_MAN_NUM_INFO { int nChannel; /// ????? int nAction; /// ???????,1???????????????,2????????????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nManListCount; /// ??????????????? MAN_NUM_LIST_INFO stuManList[MAX_MAN_LIST_COUNT]; /// ????????????? char szName[128]; /// ??????? UINT nPrevNumber; /// ???????? UINT nCurrentNumber; /// ??????? char szRuleName[128]; /// ???????? UINT nAlertNum; /// ???????????????? int nAlarmType; /// ????????. 0:???, 1:??????????????????, 2:?????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[752]; /// ??????? } ALARM_MAN_NUM_INFO; ///@brief ?????????????????????????????DH_ALARM_BITRATES_OVERLIMIT ???? typedef struct tagALARM_BITRATES_OVERLIMIT_INFO { int nChannel; /// ???????? int nAction; /// ???????,1??????????,2???????????; int nLimitBps; /// ?????????????Kbps int nCurrentBps; /// ????????????Kbps BYTE byReserved[1024]; /// ??????? }ALARM_BITRATES_OVERLIMIT_INFO; ///@brief ????????????????????? DH_ALARM_HIGH_DECIBEL ???? typedef struct tagALARM_HIGH_DECIBEL_INFO { int nAudioChannel; /// ???????? int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_HIGH_DECIBEL_INFO; ///@brief ???????????????? DH_ALARM_SHAKE_DETECTION ???? typedef struct tagALARM_SHAKE_DETECTION_INFO { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_SHAKE_DETECTION_INFO; ///@brief ?????? typedef enum tagNET_ACCESS_METHOD { NET_ACCESS_METHOD_UNKNOWN, /// ??? NET_ACCESS_METHOD_CARD, /// ?? NET_ACCESS_METHOD_PASSWORD, /// ???? NET_ACCESS_METHOD_FINGERPRINT, /// ??? } NET_ACCESS_METHOD; ///@brief ??????????? ??? DH_ALARM_ACCESS_CTL_MALICIOUS typedef struct tagALARM_ACCESS_CTL_MALICIOUS { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? NET_ACCESS_METHOD emMethod; /// ?????? char szSerialNum[MAX_COMMON_STRING_32]; /// ????????????? int nChannel; /// ??????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? BYTE byReserved[970]; /// ??????? }ALARM_ACCESS_CTL_MALICIOUS; ///@brief ???????????, ??? DH_ALARM_ACCESS_CTL_USERID_REGISTER typedef struct tagALARM_ACCESS_CTL_USERID_REGISTER { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? char UserID[DH_USER_NAME_LEN_EX]; /// ????? NET_ACCESS_METHOD emMethod; /// ???? char szSerialNum[MAX_COMMON_STRING_32]; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_ACCESS_CTL_USERID_REGISTER; ///@brief ??????? typedef enum tagNET_ACCESS_CTL_LOCKTYPE { NET_ACCESS_CTL_LOCKTYPE_UNKNOWN, /// ??? NET_ACCESS_CTL_LOCKTYPE_DEADBOLT, /// ???? NET_ACCESS_CTL_LOCKTYPE_STAYBOLT, /// ???? }NET_ACCESS_CTL_LOCKTYPE; ///@brief ?????????????, ??? DH_ALARM_ACCESS_CTL_REVERSELOCK typedef struct tagALARM_ACCESS_CTL_REVERSELOCK { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? BOOL bStatus; /// ??????? NET_ACCESS_CTL_LOCKTYPE emMethod; /// ??????? char szSerialNum[MAX_COMMON_STRING_32]; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_ACCESS_CTL_REVERSELOCK; ///@brief ????????????, ??? DH_ALARM_ACCESS_CTL_USERID_DELETE typedef struct tagALARM_ACCESS_CTL_USERID_DELETE { int nAction; /// ???????,0??????????,1??????????,2???????????; NET_TIME_EX stuTime; /// ???????????? NET_ACCESS_METHOD emMethod; /// ???? char szSerialNum[MAX_COMMON_STRING_32]; /// ???????????? BYTE byReserved[1024]; /// ??????? }ALARM_ACCESS_CTL_USERID_DELETE; ///@brief ???????DH_ALARM_ACCESS_DOOR_BELL(???????)???????????????? typedef struct tagALARM_ACCESS_DOOR_BELL_INFO { int nChannelID; /// ????? NET_TIME_EX stuTime; /// ?????????UTC ??? char szName[DH_MAX_NAME_LEN]; /// ??????? char szWirelessDevSN[DH_MAX_ACCESS_NAME_LEN]; /// ????????????? BYTE bReserved[512]; /// ??????? }ALARM_ACCESS_DOOR_BELL_INFO; ///@brief ???????DH_ALARM_ACCESS_FACTORY_RESET(???????????????)???????????? typedef struct tagALARM_ACCESS_FACTORY_RESET_INFO { NET_TIME_EX stuTime; /// ?????????UTC ??? char szSmartLockSN[DH_MAX_ACCESS_NAME_LEN]; /// ???????????? BYTE bReserved[512]; /// ??????? }ALARM_ACCESS_FACTORY_RESET_INFO; ///@brief ?????????????? typedef enum tagEM_NET_CABINET_SWITCH_ACTION_TYPE { NET_CABINET_SWITCH_ACTION_TYPE_UNKNOWN, /// ??? NET_CABINET_SWITCH_ACTION_TYPE_OPEN, /// ?????? NET_CABINET_SWITCH_ACTION_TYPE_CLOSE, /// ????? } EM_NET_CABINET_SWITCH_ACTION_TYPE; /// ???????????????????????????? #define MAX_LINK_CHANNEL_NUMBER 16 ///@brief ???????????????????????????????(DH_ALARM_CABINET) typedef struct tagALARM_CABINET_INFO { int nAction; /// 0:Pulse,1:Start,2:Stop,3:State NET_TIME_EX stuTime; /// ???????????? EM_NET_CABINET_SWITCH_ACTION_TYPE emType; /// ?????????????? char szSerialNo[MAX_COMMON_STRING_32]; /// ????????? int nLinkChannelNum; /// ????????????????????????? int nLinkChannel[MAX_LINK_CHANNEL_NUMBER]; /// ????????????????????? BYTE byReserved[1024]; /// ???? } ALARM_CABINET_INFO; ///@brief ???????DH_SWITCH_SCREEN (?????????? )???????????? typedef struct tagDH_SWITCH_SCREEN_INFO { int nChannelID; ///????? BYTE bReserved[512]; }DH_SWITCH_SCREEN_INFO; #define MAX_EVENT_INFO_LEN 128 /// ????????????? ///@brief ????????????????, ??? DH_MCS_GENERAL_CAPACITY_LOW typedef struct tagALARM_MCS_GENERAL_CAPACITY_LOW_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_GENERAL_CAPACITY_LOW_INFO; ///@brief ??????????????????, ??? DH_MCS_DATA_NODE_OFFLINE typedef struct tagALARM_MCS_DATA_NODE_OFFLINE_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DATA_NODE_OFFLINE_INFO; ///@brief ????????????????, ??? DH_MCS_DISK_OFFLINE typedef struct tagALARM_MCS_DISK_OFFLINE_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DISK_OFFLINE_INFO; ///@brief ???????????????, ??? DH_MCS_DISK_SLOW typedef struct tagALARM_MCS_DISK_SLOW_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DISK_SLOW_INFO; ///@brief ??????????????, ??? DH_MCS_DISK_BROKEN typedef struct tagALARM_MCS_DISK_BROKEN_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DISK_BROKEN_INFO; ///@brief ???????????????????, ??? DH_MCS_DISK_UNKNOW_ERROR typedef struct tagALARM_MCS_DISK_UNKNOW_ERROR_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DISK_UNKNOW_ERROR_INFO; ///@brief ?????????????????????, ??? DH_MCS_METADATA_SERVER_ABNORMAL typedef struct tagALARM_MCS_METADATA_SERVER_ABNORMAL_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_METADATA_SERVER_ABNORMAL_INFO; ///@brief ???????????????????, ??? DH_MCS_CATALOG_SERVER_ABNORMAL typedef struct tagALARM_MCS_CATALOG_SERVER_ABNORMAL_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_CATALOG_SERVER_ABNORMAL_INFO; ///@brief ??????????????????????, ??? DH_MCS_GENERAL_CAPACITY_RESUME typedef struct tagALARM_MCS_GENERAL_CAPACITY_RESUME_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_GENERAL_CAPACITY_RESUME_INFO; ///@brief ??????????????????, ??? DH_MCS_DATA_NODE_ONLINE typedef struct tagALARM_MCS_DATA_NODE_ONLINE_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DATA_NODE_ONLINE_INFO; ///@brief ????????????????, ??? DH_MCS_DISK_ONLINE typedef struct tagALARM_MCS_DISK_ONLINE_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_DISK_ONLINE_INFO; ///@brief ?????????????????????, ??? DH_MCS_METADATA_SLAVE_ONLINE typedef struct tagALARM_MCS_METADATA_SLAVE_ONLINE_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_METADATA_SLAVE_ONLINE_INFO; ///@brief ??????????????????, ??? DH_MCS_CATALOG_SERVER_ONLINE typedef struct tagALARM_MCS_CATALOG_SERVER_ONLINE_INFO { char szEventInfo[MAX_EVENT_INFO_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }ALARM_MCS_CATALOG_SERVER_ONLINE_INFO; //////////////////////////////ATM???////////////////////////////////// ///@brief ???FRAME ID ??? typedef struct { int Offset; /// ???????????? int Length; /// ?????????? char Key[16]; /// ???????? } DH_SNIFFER_FRAMEID; ///@brief ???FRAME?????4????????? typedef struct { int Offset; /// ???????????? int Offset2; /// ???????? int Length; /// ?????????? int Length2; /// ???????? char Title[12]; /// ?????? char Key[12]; /// ??????? } DH_SNIFFER_CONTENT; ///@brief ??????????? typedef struct { DH_SNIFFER_FRAMEID snifferFrameId; /// ???FRAME ID ??? DH_SNIFFER_CONTENT snifferContent[DH_SNIFFER_CONTENT_NUM]; /// ???FRAME?????4????????? } DH_SNIFFER_FRAME; ///@brief ???????????????? typedef struct { char SnifferSrcIP[DH_MAX_IPADDR_LEN]; /// ??????? int SnifferSrcPort; /// ??????? char SnifferDestIP[DH_MAX_IPADDR_LEN]; /// ???????? int SnifferDestPort; /// ???????? char reserved[28]; /// ??????? DH_SNIFFER_FRAME snifferFrame[DH_SNIFFER_FRAMEID_NUM]; /// 6??FRAME ??? int displayPosition; /// ??????? int recdChannelMask; /// ??????? } DH_ATM_SNIFFER_CFG; ///@brief sniffer???? typedef struct { DWORD dwSize; DH_ATM_SNIFFER_CFG SnifferConfig[4]; char reserved[256]; /// ??????? } DHDEV_SNIFFER_CFG; typedef DH_SNIFFER_FRAMEID DH_SNIFFER_FRAMEID_EX; typedef DH_SNIFFER_CONTENT DH_SNIFFER_CONTENT_EX; ///@brief ??????????? typedef struct { DH_SNIFFER_FRAMEID snifferFrameId; /// ???FRAME ID ??? DH_SNIFFER_CONTENT snifferContent[DH_SNIFFER_CONTENT_NUM_EX]; /// ???FRAME?????8????????? } DH_SNIFFER_FRAME_EX; ///@brief ???????????????? typedef struct { char SnifferSrcIP[DH_MAX_IPADDR_LEN]; /// ??????? int SnifferSrcPort; /// ??????? char SnifferDestIP[DH_MAX_IPADDR_LEN]; /// ???????? int SnifferDestPort; /// ???????? DH_SNIFFER_FRAME_EX snifferFrame[DH_SNIFFER_FRAMEID_NUM]; /// 6??FRAME ??? int displayPosition; /// ??????? int recdChannelMask; /// ??????? 0 ~ 31 ??? BOOL bDateScopeEnable; /// ?????????? BOOL bProtocolEnable; /// ??????? char szProtocolName[DH_SNIFFER_PROTOCOL_SIZE]; /// ???????? int nSnifferMode; /// ??????,0:net,1:232. int recdChannelMask1; /// ??????? 32 ~ 63 ??? char reserved[252]; } DH_ATM_SNIFFER_CFG_EX; #define ATM_MAX_TRADE_TYPE_NAME 64 #define ATM_MAX_TRADE_NUM 1024 ///@brief Atm????????????????? typedef struct __DH_ATM_QUERY_TRADE { int nTradeTypeNum; /// ?????????????? int nExceptionTypeNum; /// ???????????? char szSupportTradeType[ATM_MAX_TRADE_NUM][ATM_MAX_TRADE_TYPE_NAME]; /// ????????????? char szSupportExceptionType[ATM_MAX_TRADE_NUM][ATM_MAX_TRADE_TYPE_NAME];/// ??????????? } DH_ATM_QUERY_TRADE, *LPDH_ATM_QUERY_TRADE; //////////////////////////////?????????///////////////////////////////// #define nEncoderID nDecoderID #define byEncoderID byDecoderID ///@brief ????????? typedef struct __DEV_DECODER_INFO { char szDecType[64]; /// ???? int nMonitorNum; /// TV???? int nEncoderNum; /// ??????????? BYTE szSplitMode[16]; /// ????TV????????,????????????,0????? BYTE bMonitorEnable[16]; /// ??TV??? BYTE bTVTipDisplay; /// ????????TV??????????????, 0:????? 1:???. BYTE reserved1[3]; BYTE byLayoutEnable[48]; /// ?????????????????????? DWORD dwLayoutEnMask[2]; /// ??????????????????????????,??????????????64?????,????dwLayoutEnMask[0]???32?? char reserved[4]; } DEV_DECODER_INFO, *LPDEV_DECODER_INFO; ///@brief ????????????? typedef struct __DEV_ENCODER_INFO { char szDevIp[DH_MAX_IPADDR_LEN]; /// ???DVR??IP??? WORD wDevPort; /// ???DVR????? BYTE bDevChnEnable; /// ?????????? BYTE byDecoderID; /// ??????????,???????????? dwDecoderID char szDevUser[DH_USER_NAME_LENGTH_EX]; /// ????? char szDevPwd[DH_USER_PSW_LENGTH_EX]; /// ???? int nDevChannel; /// ????? int nStreamType; /// ????????,0??????????1????????1; 2:snap; 3: ??????2 BYTE byConnType; /// -1: auto, 0??TCP??1??UDP??2????? BYTE byWorkMode; /// 0???????1????? WORD wListenPort; /// ?????????????,???????? DWORD dwProtoType; /// ????????, /// 0:??????? /// 1:???????? /// 2:???????? /// 3:DSS???? /// 4:rtsp???? char szDevName[64]; /// ?????????? BYTE byVideoInType; /// ???????????????????:0-????(SD),1-????(HD),?:?????????????????? char szDevIpEx[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// szDevIp???,???DVR??IP???(????????????) BYTE bySnapMode; /// ????(nStreamType==2?????) 0???????????,1???????????????? BYTE byManuFactory; /// ??????????,???????EM_IPC_TYPE?? BYTE byDeviceType; /// ???????????????,0:IPC BYTE byDecodePolicy; /// ??????????????,0:??????? /// 1:??????? 2:??????? /// 3:??????? 4:????? /// 5:????????? 6:????????? /// 7:????????? BYTE bReserved[3]; /// ??????? DWORD dwHttpPort; /// Http????,0-65535 DWORD dwRtspPort; /// Rtsp????,0-65535 char szChnName[32]; /// ??????????, ????????????????????????????????????? DWORD dwDecoderID; /// ???????????? } DEV_ENCODER_INFO, *LPDEV_ENCODER_INFO; ///@brief ??????rtsp url???? typedef struct __DHDEV_DECODER_URL_CFG { DWORD dwSize; char szMainStreamUrl[MAX_PATH]; /// ??????url char szExtraStreamUrl[MAX_PATH]; /// ??????url } DHDEV_DECODER_URL_CFG; ///@brief ?????? typedef enum tagDH_SPLIT_DISPLAY_TYPE { DH_SPLIT_DISPLAY_TYPE_GENERAL=1, /// ?????????? DH_SPLIT_DISPLAY_TYPE_PIP=2, /// ????????????? DH_SPLIT_DISPLAY_TYPE_CUSTOM=3, /// ??????????? } DH_SPLIT_DISPLAY_TYPE; ///@brief CLIENT_CtrlDecTVScreen ?????? typedef struct tagDH_CTRL_DECTV_SCREEN { DWORD dwSize; /// ??????? int nSplitType; /// ????? BYTE * pEncoderChannel; /// ??????,dwDisplayType=DH_SPLIT_DISPLAY_TYPE_GENERAL?????,????????????????????????????????????nSplitType????? BYTE byGroupNo; /// ??????????,dwDisplayType=DH_SPLIT_DISPLAY_TYPE_PIP????????????????????????? char reserved[3]; /// ??????? DWORD dwDisplayType; /// ?????????????DH_SPLIT_DISPLAY_TYPE???????????????????"PicInPic"????, ??????????????NVD???????????????DisChn???????????????,???????????,??????????????,??"General"?? }DH_CTRL_DECTV_SCREEN; ///@brief TV??????? typedef struct __DEV_DECODER_TV { int nID; /// TV?? BOOL bEnable; /// ???,???????? int nSplitType; /// ???????? DEV_ENCODER_INFO stuDevInfo[16]; /// ??????????????dwDisplayType=DH_SPLIT_DISPLAY_TYPE_GENERAL????? BYTE bySupportSplit[10]; /// ???????? BYTE byGroupNo; /// ??????????,dwDisplayType=DH_SPLIT_DISPLAY_TYPE_PIP????????????????????????? char reserved[1]; /// ??????? DWORD dwDisplayType; /// ?????????????DH_SPLIT_DISPLAY_TYPE???????????????????"PicInPic"????, ??????????????NVD???????????????DisChn???????????????,???????????,??????????????,??"General"?? } DEV_DECODER_TV, *LPDEV_DECODER_TV; ///@brief ???????????????? typedef struct __DEC_COMBIN_INFO { int nCombinID; /// ???ID int nSplitType; /// ???????? BYTE bDisChn[16]; /// ?????? char reserved[16]; } DEC_COMBIN_INFO, *LPDEC_COMBIN_INFO; #define DEC_COMBIN_NUM 32 /// ????????? ///@brief ???????????? typedef struct __DEC_TOUR_COMBIN { int nTourTime; /// ??????(??) int nCombinNum; /// ?????? BYTE bCombinID[DEC_COMBIN_NUM]; /// ???? char reserved1[32]; BYTE bCombinState[DEC_COMBIN_NUM]; /// ???????????,0?????1???? char reserved2[32]; } DEC_TOUR_COMBIN, *LPDEC_TOUR_COMBIN; ///@brief ????????????? typedef enum __DEC_PLAYBACK_MODE { Dec_By_Device_File = 0, /// ???????????????? Dec_By_Device_Time, /// ?????????????? } DEC_PLAYBACK_MODE; ///@brief ???????????????? typedef enum __DEC_CTRL_PLAYBACK_TYPE { Dec_Playback_Seek = 0, /// ??? Dec_Playback_Play, /// ???? Dec_Playback_Pause, /// ??? Dec_Playback_Stop, /// ?? } DEC_CTRL_PLAYBACK_TYPE; ///@brief ??????????? typedef enum __DEC_CTRL_TOUR_TYPE { Dec_Tour_Stop = 0, /// ?? Dec_Tour_Start, /// ??? Dec_Tour_Pause, /// ??? Dec_Tour_Resume, /// ??? } DEC_CTRL_TOUR_TYPE; ///@brief ?????????????????? typedef struct __DEC_PLAYBACK_FILE_PARAM { char szDevIp[DH_MAX_IPADDR_LEN]; /// ???DVR??IP??? WORD wDevPort; /// ???DVR????? BYTE bDevChnEnable; /// ?????????? BYTE byDecoderID; /// ???????????? char szDevUser[DH_USER_NAME_LENGTH_EX]; /// ????? char szDevPwd[DH_USER_PSW_LENGTH_EX]; /// ???? NET_RECORDFILE_INFO stuRecordInfo; /// ????????? char reserved[12]; } DEC_PLAYBACK_FILE_PARAM, *LPDEC_PLAYBACK_FILE_PARAM; ///@brief ????????????????? typedef struct __DEC_PLAYBACK_TIME_PARAM { char szDevIp[DH_MAX_IPADDR_LEN]; /// ???DVR??IP??? WORD wDevPort; /// ???DVR????? BYTE bDevChnEnable; /// ?????????? BYTE byDecoderID; /// ???????????? char szDevUser[DH_USER_NAME_LENGTH_EX]; /// ????? char szDevPwd[DH_USER_PSW_LENGTH_EX]; /// ???? int nChannelID; NET_TIME startTime; NET_TIME endTime; char reserved[12]; } DEC_PLAYBACK_TIME_PARAM, *LPDEC_PLAYBACK_TIME_PARAM; ///@brief ???????????????(?????????,???????????) typedef struct __DEV_DECCHANNEL_STATE { BYTE byDecoderID; /// ???????????? BYTE byChnState; /// ???????????????????:0??????,1???????,2????? 3 - ??? BYTE byFrame; /// ?????????? BYTE byReserved; /// ???? int nChannelFLux; /// ??????????????? int nDecodeFlux; /// ?????????? char szResolution[16]; /// ??????????? char reserved[256]; } DEV_DECCHANNEL_STATE, *LPDEV_DECCHANNEL_STATE; ///@brief ???TV?????????? typedef struct __DEV_VIDEOOUT_INFO { DWORD dwVideoStandardMask; /// NSP,??????????,???????????????????????(??????) int nVideoStandard; /// NSP,????????(??????,?????DHDEV_SYSTEM_ATTR_CFG??byVideoStandard??????????????) DWORD dwImageSizeMask; /// ?????????,????????????????????? int nImageSize; /// ????????? char reserved[256]; }DEV_VIDEOOUT_INFO, *LPDEV_VIDEOOUT_INFO; ///@brief ????TV??? typedef struct __DEV_TVADJUST_CFG { int nTop; /// ?????0??100?? int nBotton; /// ?????0??100?? int nLeft; /// ?????0??100?? int nRight; /// ?????0??100?? int reserved[32]; }DHDEV_TVADJUST_CFG, *LPDHDEV_TVADJUST_CFG; ///@brief ???????????? typedef struct tagPTZ_SPEED_UNIT { float fPositionX; ///?????????????,???????-1~1 float fPositionY; ///??????????????,???????-1~1 float fZoom; ///???????????,??????? 0~1 char szReserve[32]; ///???32??? }PTZ_SPEED_UNIT; ///@brief ???????(???)????? typedef struct tagPTZ_SPACE_RELATIVELY_UNIT { float fPositionX; /// ?????????,????????-1~1 float fPositionY; /// ??????????,????????-1~1 float fZoom; /// ???????????,????????-1~1 char szReserve[32]; /// ???32??? } PTZ_SPACE_RELATIVELY_UNIT; ///@brief ???????????? typedef struct tagPTZ_SPACE_UNIT { int nPositionX; ///????????????,??????????[0,3600] int nPositionY; ///?????????????,??????????[-1800,1800] int nZoom; ///????????????,??????????[0,128] char szReserve[32]; ///???32??? }PTZ_SPACE_UNIT; ///@brief ????????????????????? typedef struct tagNET_PTZSPACE_UNNORMALIZED { int nPosX; /// x???? int nPosY; /// y???? int nZoom; /// ????? BYTE byReserved[52]; /// ?????? }NET_PTZSPACE_UNNORMALIZED; ///@brief ??????????? typedef struct __DEV_DECODER_TOUR_SINGLE_CFG { char szIP[128]; /// ??????ip.????"10.7.5.21". ???????????????.?????'\0'????. int nPort; /// ?????????.(0, 65535). int nPlayChn; /// ?????????????[1, 16]. int nPlayType; /// ???????????????, 0:??????; 1:??????. char szUserName[32]; /// ????????????????,?????'\0'????. char szPassword[32]; /// ???????????????,?????'\0'????. int nInterval; /// ?????????[10, 120],??????. DWORD nManuFactory; /// ??????????(??? ???IPC_TYPE) UINT nHttpPport; /// ??????????(Http???) UINT nRtspPort; /// ??????????(Rtsp???) BYTE byServiceType; /// ????????, -1: auto, 0??TCP??1??UDP??2????? BYTE bReserved[51]; /// ???????,???????. }DHDEV_DECODER_TOUR_SINGLE_CFG; ///@brief ???? typedef struct __DEV_DECODER_TOUR_CFG { int nCfgNum; /// ??????????. ??????????32??.????????????????????????. DHDEV_DECODER_TOUR_SINGLE_CFG tourCfg[64]; /// ???????????,???????????????"nCfgNum"???. ????32?????????. BYTE bReserved[256]; /// ???????,???????. }DHDEV_DECODER_TOUR_CFG; //////////////////////////////???????///////////////////////////////// ///@brief ?????????????? typedef struct { DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? WORD wWidth; /// ??????, ????:???? WORD wHeight; /// ?????, ????:???? char* pszFilePath; /// ??????????,??????????????????? /// ??????? /// ??????????????????????????????????? BYTE bIsDetected; /// ???????????????????????????????, /// ????????????????,1:??????,0:??????? BYTE bReserved[2]; /// ???????? BYTE byQulityScore; /// ??????????????, 0-100 int nFilePathLen; /// ??????????? ??pszFilePath ??????????? DH_POINT stuPoint; /// ?????????????????????????????? UINT nIndexInData; /// ???????????????????? }DH_PIC_INFO; ///@brief ?????? typedef enum tagEM_IMAGE_TYPE_EX2 { EM_IMAGE_TYPE_UNKNOWN, /// ??? EM_IMAGE_TYPE_SCENE_IMAGE, /// ??????? EM_IMAGE_TYPE_GLOBAL_SCENE, /// ??? EM_IMAGE_TYPE_THUM_IMAGE, /// ?????????????????? EM_IMAGE_TYPE_FACE_SCENE_IMAGE, /// ??????? EM_IMAGE_TYPE_FACE_IMAGE, /// ???? EM_IMAGE_TYPE_HUMAN_IMAGE, /// ????? EM_IMAGE_TYPE_ALONG_WITH_FACE_HUMAN_IMAGE, /// ???????????????????? EM_IMAGE_TYPE_ALONG_WITH_FACE_HUMAN_SCENE_IMAGE, /// ??????????????????????? EM_IMAGE_TYPE_PARKING_IMAGE, /// ??????? EM_IMAGE_TYPE_BINARIZED_PLATE, /// ??????????? EM_IMAGE_TYPE_DEPOSIT_IMAGE_INFO, /// ????? EM_IMAGE_TYPE_IMAGE_INFO, /// ???????????????????????? EM_IMAGE_TYPE_PLATE, /// ??????????? EM_IMAGE_TYPE_VEHICLEBODY, /// ??????????? EM_IMAGE_TYPE_DRIVERFACE, /// ????????????????? }EM_IMAGE_TYPE_EX2; ///@brief ????? typedef struct tagNET_IMAGE_INFO_EX2 { EM_IMAGE_TYPE_EX2 emType; /// ?????? UINT nOffset; /// ??????????????????? UINT nLength; /// ??????,????:??? char byReserverd[4]; /// ?????????? char szPath[256]; /// ????????? }NET_IMAGE_INFO_EX2; ///@brief ???????? typedef struct tagNET_IMAGE_INFO_EX3 { EM_IMAGE_TYPE_EX2 emType; /// ?????? UINT nOffset; /// ??????????????????? UINT nLength; /// ??????,????:??? int nEncryptFlag; /// ??????????, ?????????????????, 0: ??? szEncryptKey, 1: ??? szEncryptLKey char szPath[256]; /// ????????? char szEncryptKey[128]; /// ??????????????????????????????Base64?????????SDK?????????? char szEncryptLKey[256]; /// ??????????????????????????????Base64?????????SDK?????????? BYTE byReserverd2[768]; /// ?????????? }NET_IMAGE_INFO_EX3; ///@brief ?????(?????????????????????) typedef struct tagNET_PIC_INFO_EX { UINT nLength; /// ??????,????:??? UINT nWidth; /// ?????? UINT nHeight; /// ????? char byReserverd[4]; /// ?????????? char szFilePath[256]; /// ?????? char szReserverd[256]; /// ??????? }NET_PIC_INFO_EX; ///@brief ????????????????? typedef struct tagNET_RELATING_VIDEO_INFO { char szVideoPath[256]; /// ??????????FTP??????? char szReserved[128]; /// ??????? }NET_RELATING_VIDEO_INFO; ///@brief ?????????????? typedef struct tagNET_FILE_PROCESS_INFO { NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? char szReserved[1024]; /// ??????? }NET_FILE_PROCESS_INFO; ///@brief ??????????????(??????????) typedef struct tagDH_PIC_INFO_EXX { DWORD dwSize; char szFilePath[DH_COMMON_STRING_256]; /// ??????????,???????????/???????? /// ??????? DH_PIC_INFO stuPicInfo; /// ????? }DH_PIC_INFO_EX2; ///@brief ??????????????(??????????) typedef struct { DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? WORD wWidth; /// ??????, ????:???? WORD wHeight; /// ?????, ????:???? char szFilePath[64]; /// ??????? BYTE bIsDetected; /// ???????????????????????????????, /// ????????????????,1:??????,0:??????? BYTE bReserved[11]; /// ???? }DH_PIC_INFO_EX3; #ifndef LINUX64_JNA #pragma pack(push) #pragma pack(4) #endif ///@brief ?????????????????? typedef struct { int nObjectID; /// ????ID,???ID??????????????? char szObjectType[128]; /// ???????? int nConfidence; /// ?????(0~100),?????????????? int nAction; /// ????N??:1:Appear 2:Move 3:Stay 4:Remove 5:Disappear 6:Split 7:Merge 8:Rename DH_RECT BoundingBox; /// ?????? DH_POINT Center; /// ???????? int nPolygonNum; /// ???????????? DH_POINT Contour[DH_MAX_POLYGON_NUM]; /// ??????????????? DWORD rgbaMainColor; /// ?????????????????????????????????,??????????????????,????:RGB??(0,255,0),??????0?, ????0x00ff0000. char szText[128]; /// ???????????0?????????,????f??,???????? /// "ObjectType"?"Vehicle"????"Logo"??????????Logo??Vehicle?????????????????????,???? /// "Unknown"??? /// "Audi" ??? /// "Honda" ???? /// "Buick" ??? /// "Volkswagen" ???? /// "Toyota" ???? /// "BMW" ???? /// "Peugeot" ???? /// "Ford" ???? /// "Mazda" ????? /// "Nissan" ???(???) /// "Hyundai" ??? /// "Suzuki" ??? /// "Citroen" ????? /// "Benz" ???? /// "BYD" ????? /// "Geely" ???? /// "Lexus" ?????? /// "Chevrolet" ????? /// "Chery" ???? /// "Kia" ???? /// "Charade" ???? /// "DF" ???? /// "Naveco" ????? /// "SGMW" ???? /// "Jinbei" ?? /// "JAC" ???? /// "Emgrand" ??? /// "ChangAn" ???? /// "Great Wall" ???? /// "Skoda" ???? /// "BaoJun" ???? /// "Subaru" ???? /// "LandWind" ??? /// "Luxgen" ????? /// "Renault" ??? /// "Mitsubishi" ???? /// "Roewe" ???? /// "Cadillac" ???????? /// "MG" ???? /// "Zotye" ??? /// "ZhongHua" ???? /// "Foton" ???? /// "SongHuaJiang" ????? /// "Opel" ??? /// "HongQi" ??????? /// "Fiat" ?????? /// "Jaguar" ??? /// "Volvo" ????? /// "Acura" ??? /// "Porsche" ????? /// "Jeep" ???? /// "Bentley" ???? /// "Bugatti" ????? /// "ChuanQi" ???? /// "Daewoo" ???? /// "DongNan" ???? /// "Ferrari" ?????? /// "Fudi" ???? /// "Huapu" ???? /// "HawTai" ??? /// "JMC" ???? /// "JingLong" ??????? /// "JoyLong" ???? /// "Karry" ???? /// "Chrysler" ??????? /// "Lamborghini" ???????? /// "RollsRoyce" ?????? /// "Linian" ???? /// "LiFan" ???? /// "LieBao" ??? /// "Lincoln" ??? /// "LandRover" ???? /// "Lotus" ????? /// "Maserati" ??????? /// "Maybach" ????? /// "Mclaren" ?????? /// "Youngman" ?????? /// "Tesla" ????? /// "Rely" ???? /// "Lsuzu" ????? /// "Yiqi" ??? /// "Infiniti" ?????? /// "YuTong" ?????? /// "AnKai" ??????? /// "Canghe" ???? /// "HaiMa" ???? /// "Crown" ?????? /// "HuangHai" ??? /// "JinLv" ?????? /// "JinNing" ???? /// "KuBo" ?? /// "Europestar" ???? /// "MINI" ???? /// "Gleagle" ???? /// "ShiDai" ??? /// "ShuangHuan" ??? /// "TianYe" ??? /// "WeiZi" ???? /// "Englon" ??? /// "ZhongTong" ?????? /// "Changan" ???????? /// "Yuejin" ??? /// "Taurus" ????? /// "Alto" ???? /// "Weiwang" ???? /// "Chenglong" ???? /// "Haige" ???? /// "Shaolin" ?????? /// "Beifang" ??????? /// "Beijing" ???????? /// "Hafu" ???? /// "BeijingTruck" ???????? /// "Besturn" ???? /// "ChanganBus" ??????? /// "Dodge" ???? /// "DongFangHong" ?????? /// "DongFengTruck" ??????? /// "DongFengBus" ?????? /// "MultiBrand" ????? /// "FotonTruck" ??????? /// "FotonBus" ?????? /// "GagcTruck" ???????? /// "HaFei" ???? /// "HowoBus" ?????? /// "JACTruck" ???????? /// "JACBus" ??????? /// "JMCTruck" ??????? /// "JieFangTruck" ?????? /// "JinBeiTruck" ????? /// "KaiMaTruck" ???????? /// "CoasterBus" ??????? /// "MudanBus" ?????? /// "NanJunTruck" ??????? /// "QingLing" ???? /// "NissanCivilian" ?????????? /// "NissanTruck" ??????? /// "MitsubishiFuso" ?????? /// "SanyTruck" ??????? /// "ShanQiTruck" ???????? /// "ShenLongBus" ??????? /// "TangJunTruck" ??????? /// "MicroTruck" ????? /// "VolvoBus" ??????? /// "LsuzuTruck" ???????? /// "WuZhengTruck" ???????? /// "Seat" ?????? /// "YangZiBus" ?????? /// "YiqiBus" ?????? /// "YingTianTruck" ?????? /// "YueJinTruck" ??????? /// "ZhongDaBus" ?????? /// "ZxAuto" /// "ZhongQiWangPai" ???????? /// "WAW" ??? /// "BeiQiWeiWang" ???????? /// "BYDDaimler" ????????? /// "ChunLan" ???? /// "DaYun" ???? /// "DFFengDu" ?????? /// "DFFengGuang" ?????? /// "DFFengShen" ??????? /// "DFFengXing" ??????? /// "DFLiuQi" ???????? /// "DFXiaoKang" ???????? /// "FeiChi" ??? /// "FordMustang" ??????? /// "GuangQi" ???? /// "GuangTong" ??? /// "HuiZhongTruck" ??????? /// "JiangHuai" ???? /// "SunWin" ???? /// "ShiFeng" ??? /// "TongXin" ??? /// "WZL" ?????? /// "XiWo" ???? /// "XuGong" ?? /// "JingGong" ???? /// "SAAB" ???? /// "SanHuanShiTong" ?????? /// "KangDi" ???? /// "YaoLong" ?? char szObjectSubType[62]; /// ?????????,????????????????,???????????????? /// Vehicle Category:"Unknown" ???,"Motor" ??????,"Non-Motor":???????,"Bus": ??????,"Bicycle" ??????,"Motorcycle":?????,"PassengerCar":???, /// "LargeTruck":?????, "MidTruck":??????,"SaloonCar":????,"Microbus":?????,"MicroTruck":??????,"Tricycle":?????, "Passerby":???? /// "DregsCar":??????, "Excavator":???, "Bulldozer":??????, "Crane":????, "PumpTruck":????, "MachineshopTruck":?????, "Forklift"???, "Electricbike":???????? /// Plate Category??"Unknown" ???,"Normal" ???????,"Yellow" ????,"DoubleYellow" ????????,"Police" ????,"SAR" ???????????,"Trainning" ?????????? /// "Personal" ???????,"Agri" ?????,"Embassy" ??????,"Moto" ?????????,"Tractor" ??????????,"Other" ???????? /// "Civilaviation"?????,"Black"???? /// "PureNewEnergyMicroCar"????T?????????,"MixedNewEnergyMicroCar,"????????????,"PureNewEnergyLargeCar",????T??????? /// "MixedNewEnergyLargeCar"?????????? /// Human Category:"Normal" ??????,"HideEye" ??????,"HideNose" ???????,"HideMouth" ?????,"TankCar"????(?????????????) /// "ExtinguisherGeneral"??????????????8kg????,"ExtinguisherHandpush"35kg?????????, "SignboardGeneral" ???????? /// "SignboardStaticEletricity "????????, "SignboardOilCap"??????????,"RoadCone"???,"CoverPlate"???? WORD wColorLogoIndex; /// ???????? WORD wSubBrand; /// ????????? ???????????????????????? ?????????????? BYTE byReserved1; bool bPicEnble; /// ??????????????????? DH_PIC_INFO stPicInfo; /// ??????????? bool bShotFrame; /// ???????????????? bool bColor; /// ???????(rgbaMainColor)?????? BYTE byReserved2; BYTE byTimeType; /// ?????????,???EM_TIME_TYPE??? NET_TIME_EX stuCurrentTime; /// ?????????,?????????????????????,?????????????????????????jpeg????,?????????????????????? NET_TIME_EX stuStartTime; /// ?????????????????????? NET_TIME_EX stuEndTime; /// ??????????????????????? DH_RECT stuOriginalBoundingBox; /// ??????(????????) DH_RECT stuSignBoundingBox; /// ????????????? DWORD dwCurrentSequence; /// ???????????????????????? DWORD dwBeginSequence; /// ?????????????????????????? DWORD dwEndSequence; /// ????????????????????????? INT64 nBeginFileOffset; /// ??????????, ????: ???????????????,??????????????????????????????????? INT64 nEndFileOffset; /// ???????????, ????: ?????????????,??????????????????????????????????? BYTE byColorSimilar[NET_COLOR_TYPE_MAX]; /// ????????????,????????0-100,???????????????????,???EM_COLOR_TYPE BYTE byUpperBodyColorSimilar[NET_COLOR_TYPE_MAX]; /// ?????????????????(????????????????) BYTE byLowerBodyColorSimilar[NET_COLOR_TYPE_MAX]; /// ??????????????????(????????????????) int nRelativeID; /// ???????ID char szSubText[20]; /// "ObjectType"?"Vehicle"????"Logo"?,???????????????,??????A6L,?????????,SDK????????????,???????????? WORD wBrandYear; /// ?????????? ?????????????????????? ?????????????? } DH_MSG_OBJECT; ///@brief ????????????????????????? DH_MSG_OBJECT ????????????????????? typedef struct tagDH_MSG_OBJECT_SUPPLEMENT { char szObjectUUID[48]; /// ???????????????????? UINT nMuckHide; /// ???????????????,0:???????????????,1:?????????,2:??????????????,3:???????????????. UINT nCarryType; /// ???????????,0:?????????????,1:???,2:??,3:??,4:???. char szCategory[32]; /// ???????? UINT nHumanNum; /// ???????? char szUUID[64]; /// ???????????????????????UID NET_TIME stuModifyTime; /// ????????????????????????????????????? NET_TIME stuRegisterStorageTime; /// ?????????? UINT nDirection; /// ????????,0?????????????,1??????,2??????,3?????? char szReserved[96]; /// Reserved }DH_MSG_OBJECT_SUPPLEMENT; ///@brief ??????? typedef enum tagEM_MSG_OBJ_PERSON_DIRECTION { EM_MSG_OBJ_PERSON_DIRECTION_UNKOWN, /// ??????? EM_MSG_OBJ_PERSON_DIRECTION_LEFT_TO_RIGHT, /// ???????? EM_MSG_OBJ_PERSON_DIRECTION_RIGHT_TO_LEFT /// ???????? }EM_MSG_OBJ_PERSON_DIRECTION; ///@brief ????????????????????? typedef struct tagDH_MSG_OBJECT_EX { DWORD dwSize; int nObjectID; /// ????ID,???ID??????????????? char szObjectType[128]; /// ???????? int nConfidence; /// ?????(0~255),?????????????? int nAction; /// ????N??:1:Appear 2:Move 3:Stay 4:Remove 5:Disappear 6:Split 7:Merge 8:Rename DH_RECT BoundingBox; /// ?????? DH_POINT Center; /// ???????? int nPolygonNum; /// ???????????? DH_POINT Contour[DH_MAX_POLYGON_NUM]; /// ??????????????? DWORD rgbaMainColor; /// ?????????????????????????????????,??????????????????,????:RGB??(0,255,0),??????0?, ????0x00ff0000. char szText[128]; /// ?DH_MSG_OBJECT?????? char szObjectSubType[64]; /// ?????????,????????????????,???????????????? /// ?DH_MSG_OBJECT?????? BYTE byReserved1[3]; bool bPicEnble; /// ??????????????????? DH_PIC_INFO stPicInfo; /// ??????????? bool bShotFrame; /// ???????????????? bool bColor; /// ???????(rgbaMainColor)?????? BYTE bLowerBodyColor; /// ?????????(rgbaLowerBodyColor)?????? BYTE byTimeType; /// ?????????,???EM_TIME_TYPE??? NET_TIME_EX stuCurrentTime; /// ?????????,?????????????????????,?????????????????????????jpeg????,?????????????????????? NET_TIME_EX stuStartTime; /// ?????????????????????? NET_TIME_EX stuEndTime; /// ??????????????????????? DH_RECT stuOriginalBoundingBox; /// ??????(????????) DH_RECT stuSignBoundingBox; /// ????????????? DWORD dwCurrentSequence; /// ???????????????????????? DWORD dwBeginSequence; /// ?????????????????????????? DWORD dwEndSequence; /// ????????????????????????? INT64 nBeginFileOffset; /// ??????????, ????: ???????????????,??????????????????????????????????? INT64 nEndFileOffset; /// ???????????, ????: ?????????????,??????????????????????????????????? BYTE byColorSimilar[NET_COLOR_TYPE_MAX]; /// ????????????,????????0-100,???????????????????,???EM_COLOR_TYPE BYTE byUpperBodyColorSimilar[NET_COLOR_TYPE_MAX]; /// ?????????????????(????????????????) BYTE byLowerBodyColorSimilar[NET_COLOR_TYPE_MAX]; /// ??????????????????(????????????????) int nRelativeID; /// ???????ID char szSubText[20]; /// "ObjectType"?"Vehicle"????"Logo"?,???????????????,??????A6L,?????????,SDK????????????,???????????? int nPersonStature; /// ???????????,????cm EM_MSG_OBJ_PERSON_DIRECTION emPersonDirection; /// ?????????? DWORD rgbaLowerBodyColor; /// ????????rgbaMainColor,???????????????? } DH_MSG_OBJECT_EX; ///@brief ?????????????????????,??????2 typedef struct tagDH_MSG_OBJECT_EX2 { DWORD dwSize; int nObjectID; /// ????ID,???ID??????????????? char szObjectType[128]; /// ???????? int nConfidence; /// ?????(0~255),?????????????? int nAction; /// ????N??:1:Appear 2:Move 3:Stay 4:Remove 5:Disappear 6:Split 7:Merge 8:Rename DH_RECT BoundingBox; /// ?????? DH_POINT Center; /// ???????? int nPolygonNum; /// ???????????? DH_POINT Contour[DH_MAX_POLYGON_NUM]; /// ??????????????? DWORD rgbaMainColor; /// ?????????????????????????????????,??????????????????,????:RGB??(0,255,0),??????0?, ????0x00ff0000. char szText[128]; /// ?DH_MSG_OBJECT?????? char szObjectSubType[64]; /// ?????????,????????????????,???????????????? /// ?DH_MSG_OBJECT?????? BYTE byReserved1[3]; bool bPicEnble; /// ??????????????????? DH_PIC_INFO stPicInfo; /// ??????????? bool bShotFrame; /// ???????????????? bool bColor; /// ???????(rgbaMainColor)?????? BYTE bLowerBodyColor; /// ?????????(rgbaLowerBodyColor)?????? BYTE byTimeType; /// ?????????,???EM_TIME_TYPE??? NET_TIME_EX stuCurrentTime; /// ?????????,?????????????????????,?????????????????????????jpeg????,?????????????????????? NET_TIME_EX stuStartTime; /// ?????????????????????? NET_TIME_EX stuEndTime; /// ??????????????????????? DH_RECT stuOriginalBoundingBox; /// ??????(????????) DH_RECT stuSignBoundingBox; /// ????????????? DWORD dwCurrentSequence; /// ???????????????????????? DWORD dwBeginSequence; /// ?????????????????????????? DWORD dwEndSequence; /// ????????????????????????? INT64 nBeginFileOffset; /// ??????????, ????: ???????????????,??????????????????????????????????? INT64 nEndFileOffset; /// ???????????, ????: ?????????????,??????????????????????????????????? BYTE byColorSimilar[NET_COLOR_TYPE_MAX]; /// ????????????,????????0-100,???????????????????,???EM_COLOR_TYPE BYTE byUpperBodyColorSimilar[NET_COLOR_TYPE_MAX]; /// ?????????????????(????????????????) BYTE byLowerBodyColorSimilar[NET_COLOR_TYPE_MAX]; /// ??????????????????(????????????????) int nRelativeID; /// ???????ID char szSubText[20]; /// "ObjectType"?"Vehicle"????"Logo"?,???????????????,??????A6L,?????????,SDK????????????,???????????? int nPersonStature; /// ???????????,????cm EM_MSG_OBJ_PERSON_DIRECTION emPersonDirection; /// ?????????? DWORD rgbaLowerBodyColor; /// ????????rgbaMainColor,???????????????? /*?????????????*/ int nSynopsisSpeed; /// ?????????,????1~10?????????,5?????????????5????????????^????????? /// ?0?,????????? int nSynopsisSize; /// ?????????,????1~10?????????,3?????????????3?????????????^????????? /// ?0?,????????? BOOL bEnableDirection; /// ?True?,??????????????????? /// ?False?,?????????????????????, DH_POINT stuSynopsisStartLocation; /// ??????????,????????,?????????????[0,8191]????,bEnableDirection?True????? DH_POINT stuSynopsisEndLocation; /// ??????????,????????,?????????????[0,8191]????,bEnableDirection?True????? char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 char szReserved[2]; /// ???? int nCategoryType; /// ????????????, 0:???, 1:Category, 2:InductiveVehicleType char szInductiveVehicleType[32]; /// ??Category?????????????????????????? char szTextDirection[32]; /// ???????(??????????????)LeftToRight,??????,RightToLeft,???????,TopToBottom?????????,BottomToTop????????? BYTE byReserved[1956]; /// ?????? } DH_MSG_OBJECT_EX2; #ifndef LINUX64_JNA #pragma pack(pop) #endif ///@brief ?????? typedef struct { short snSpeed; /// ??????????,km/h short snCarLength; /// ???????,????????? float fRedTime; /// ?????????????,??.???? float fCapTime; /// ?????????????,??.???? BYTE bSigSequence; /// ????????? BYTE bType; /// ???????????????? /// 0: ????????;1: ????????;2: ????????????;3:???????????? /// 4: ????;5: ?????;6: ?????;7: ?????;8: ???????????? BYTE bDirection; /// ?????????:01:??????;02:??????;03:?????? BYTE bLightColor; /// ???????????????,0: ???, 1: ???, 2: ??? BYTE bSnapFlag[16]; /// ?????????????? }DH_SIG_CARWAY_INFO; ///@brief ????????????? typedef struct { BYTE byRedundance[8]; /// ???????????????????????? BYTE bReserved[120]; /// ??????? }DH_SIG_CARWAY_INFO_EX; ///@brief ??????????????? typedef struct { BYTE bCarWayID; /// ????????? BYTE bReserve[2]; /// ??????? BYTE bSigCount; /// ????????????? DH_SIG_CARWAY_INFO stuSigInfo[DH_MAX_SNAP_SIGNAL_NUM]; /// ?????????,??????????????????? BYTE bReserved[12]; /// ??????? }DH_CARWAY_INFO; ///@brief ???????????? typedef struct { BYTE bCount; /// ?????????????????????????? BYTE bIndex; /// ???????????????????????(???1???) BYTE bFileTag; /// ??????, EM_EVENT_FILETAG BYTE bFileType; /// ???????,0-??? 1-??? 2-??? NET_TIME_EX stuFileTime; /// ?????? DWORD nGroupId; /// ?????????????????? }DH_EVENT_FILE_INFO; ///@brief ??????? typedef struct { unsigned short snWidth; /// ?? unsigned short snHight; /// ?? }DH_RESOLUTION_INFO; ///@brief ???RGBA typedef struct tagDH_COLOR_RGBA { int nRed; /// ?? int nGreen; /// ?? int nBlue; /// ?? int nAlpha; /// ??? } DH_COLOR_RGBA, NET_COLOR_RGBA; #define NET_COUNTRY_LENGTH 3 /// ???????????? #define NET_COMMENT_LENGTH 100 /// ?????????? #define NET_GROUPID_LENGTH 64 /// group id ??????? #define NET_GROUPNAME_LENGTH 128 /// group name ??????? #define NET_FEATUREVALUE_LENGTH 128 /// ??????? ??????? ///@brief ?????????????????? typedef enum tagEM_DEV_EVENT_FACEDETECT_FEATURE_TYPE { EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_UNKNOWN, /// ??? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_WEAR_GLASSES, /// ????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_SMILE, /// ??? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_ANGER, /// ??? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_SADNESS, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_DISGUST, /// ??? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_FEAR, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_SURPRISE, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_NEUTRAL, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_LAUGH, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_NOGLASSES, /// ?????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_HAPPY, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_CONFUSED, /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_SCREAM, /// ??? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE_WEAR_SUNGLASSES, /// ???????? }EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE; ///@brief ?????? typedef struct tagFACERECOGNITION_PERSON_INFO { char szPersonName[DH_MAX_NAME_LEN]; /// ????,????????? WORD wYear; /// ??????,???????????,???????0,????????????? BYTE byMonth; /// ??????,???????????,???????0,????????????? BYTE byDay; /// ??????,???????????,???????0,????????????? char szID[DH_MAX_PERSON_ID_LEN]; /// ?????????(???????,????,?????????) BYTE bImportantRank; /// ?????????,1~10,??????????,???????????,???????0,????????????? BYTE bySex; /// ???,1-??,2-?,???????????,???????0,????????????? WORD wFacePicNum; /// ?????? DH_PIC_INFO szFacePicInfo[DH_MAX_PERSON_IMAGE_NUM]; /// ???????????????? BYTE byType; /// ???????,??? EM_PERSON_TYPE BYTE byIDType; /// ???????,??? EM_CERTIFICATE_TYPE BYTE byGlasses; /// ?????????0-??? 1-???? 2-?? BYTE byAge; /// ????,0?????? char szProvince[DH_MAX_PROVINCE_NAME_LEN]; /// ??? char szCity[DH_MAX_CITY_NAME_LEN]; /// ???? char szPersonNameEx[DH_MAX_PERSON_NAME_LEN]; /// ????,?????????????,16?????????????,??????????, char szUID[DH_MAX_PERSON_ID_LEN]; /// ???????????,?????????????,??????ID??? /// ???,???????????? char szCountry[NET_COUNTRY_LENGTH]; /// ????,????ISO3166??Z BYTE byIsCustomType; /// ????????????????: 0 ???Type????????? 1 ?????,???szPersonName??? char *pszComment; /// ??????, ??????????????????, /// ????bCommentLen?????????????????????????? NET_COMMENT_LENGTH char *pszGroupID; /// ?????????ID, ??????????????????, /// ????bGroupIdLen?????????????????????????? NET_GROUPID_LENGTH char *pszGroupName; /// ???????????, ??????????????????, /// ????bGroupNameLen?????????????????????????? NET_GROUPNAME_LENGTH char *pszFeatureValue; /// ???????, ??????????????????, /// ????bFeatureValueLen?????????????????????????? NET_FEATUREVALUE_LENGTH BYTE bGroupIdLen; /// pszGroupID????? BYTE bGroupNameLen; /// pszGroupName????? BYTE bFeatureValueLen; /// pszFeatureValue????? BYTE bCommentLen; /// pszComment????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ???? }FACERECOGNITION_PERSON_INFO; ///@brief ??????? typedef enum tagEM_GLASSES_TYPE { EM_GLASSES_UNKNOWN, /// ??? EM_GLASSES_SUNGLASS, /// ?????? EM_GLASSES_GLASS, /// ?????? } EM_GLASSES_TYPE; ///@brief ????? typedef enum tagEM_EYE_STATE_TYPE { EM_EYE_STATE_UNKNOWN, /// ??? EM_EYE_STATE_NODISTI, /// ????? EM_EYE_STATE_CLOSE, /// ???? EM_EYE_STATE_OPEN, /// ???? } EM_EYE_STATE_TYPE; ///@brief ??????? typedef enum tagEM_GLASS_STATE_TYPE { EM_GLASS_STATE_TYPE_UNKNOWN, /// ??? EM_GLASS_STATE_TYPE_NOT_WEARING, /// ???? EM_GLASS_STATE_TYPE_CONVENTIONAL_GLASSES, /// ????????? EM_GLASS_STATE_TYPE_SUN_GLASSES, /// ???????? EM_GLASS_STATE_TYPE_BLACK_GLASSES, /// ???????? }EM_GLASS_STATE_TYPE; ///@brief ????? typedef enum tagEM_MOUTH_STATE_TYPE { EM_MOUTH_STATE_UNKNOWN, /// ??? EM_MOUTH_STATE_NODISTI, /// ????? EM_MOUTH_STATE_CLOSE, /// ???? EM_MOUTH_STATE_OPEN, /// ???? } EM_MOUTH_STATE_TYPE; ///@brief ?????? typedef enum tagEM_BEARD_STATE_TYPE { EM_BEARD_STATE_UNKNOWN, /// ??? EM_BEARD_STATE_NODISTI, /// ????? EM_BEARD_STATE_NOBEARD, /// ????? EM_BEARD_STATE_HAVEBEARD, /// ?????? } EM_BEARD_STATE_TYPE; ///@brief ???????????????????? typedef enum tagEM_FACEDETECT_GLASSES_TYPE { EM_FACEDETECT_GLASSES_UNKNOWN, /// ??? EM_FACEDETECT_WITH_GLASSES, /// ????? EM_FACEDETECT_WITHOUT_GLASSES, /// ??????? EM_FACEDETECT_SUN_GLASSES, /// ???????? EM_FACEDETECT_BLACKFRAME_GLASSES, /// ???????? }EM_FACEDETECT_GLASSES_TYPE; ///@brief ???????? typedef enum tagEM_PERSON_FEATURE_STATE { EM_PERSON_FEATURE_UNKNOWN, /// ??? EM_PERSON_FEATURE_FAIL, /// ??????,?????????????????,??????? EM_PERSON_FEATURE_USEFUL, /// ???????????? EM_PERSON_FEATURE_CALCULATING, /// ???????????? EM_PERSON_FEATURE_UNUSEFUL, /// ????????????????????????????????????? } EM_PERSON_FEATURE_STATE; ///@brief ????????? typedef enum tagEM_PERSON_FEATURE_ERRCODE { EM_PERSON_FEATURE_ERRCODE_UNKNOWN, /// ??? EM_PERSON_FEATURE_ERRCODE_PIC_FORMAT, /// ????????? EM_PERSON_FEATURE_ERRCODE_NO_FACE, /// ?????????? EM_PERSON_FEATURE_ERRCODE_MULTI_FACE, /// ?????? EM_PERSON_FEATURE_ERRCODE_PIC_DECODE_FAIL, /// ????????? EM_PERSON_FEATURE_ERRCODE_NOT_RECOMMEND, /// ???????? EM_PERSON_FEATURE_ERRCODE_FACEDB_FAIL, /// ??????????? EM_PERSON_FEATURE_ERRCODE_GET_PICTURE, /// ???????? EM_PERSON_FEATURE_ERRCODE_SYSTEM_ERROR, /// ???? } EM_PERSON_FEATURE_ERRCODE; #define DH_MAX_PERSON_INFO_LEN 64 /// ????????????? ///@brief ???????????????? typedef struct tagCUSTOM_PERSON_INFO { char szPersonInfo[DH_MAX_PERSON_INFO_LEN]; ///????????? BYTE byReserved[124]; /// ??????? } CUSTOM_PERSON_INFO; ///@brief ???????? typedef enum tagEM_REGISTER_DB_TYPE { EM_REGISTER_DB_TYPE_UNKNOWN, /// ??? EM_REGISTER_DB_TYPE_NORMAL, /// ????? EM_REGISTER_DB_TYPE_BLACKLIST, /// ??????? EM_REGISTER_DB_TYPE_WHITELIST, /// ???????? EM_REGISTER_DB_TYPE_VIP, /// VIP?? EM_REGISTER_DB_TYPE_STAFF, /// ????? EM_REGISTER_DB_TYPE_LEADER, /// ???? } EM_REGISTER_DB_TYPE; ///@brief ?????????? typedef enum tagEM_PIC_OPERATE_TYPE { EM_PIC_OPERATE_UNKNOWN, /// ??? EM_PIC_OPERATE_MODIFY, /// ??? EM_PIC_OPERATE_ADD, /// ???? EM_PIC_OPERATE_DEL, /// ??? } EM_PIC_OPERATE_TYPE; ///@brief ???????? typedef struct tagNET_FACE_PIC_INFO { DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? DWORD dwWidth; /// ??????, ????:???? DWORD dwHeight; /// ?????, ????:???? BOOL bIsDetected; /// ???????????????????????????????, /// ????????????????,1:??????,0:??????? int nFilePathLen; /// ??????????? ??pszFilePath ????? char* pszFilePath; /// ???????, ???????????, ????????????????? char szPictureID[32]; /// ??ID, ??????????????, ????????????? EM_PERSON_FEATURE_STATE emFeatureState; /// ??????? EM_PERSON_FEATURE_ERRCODE emFeatureErrCode; /// ????????? EM_PIC_OPERATE_TYPE emPicOperate; /// ?????????? BYTE bReserved[20]; /// ?????? } NET_FACE_PIC_INFO; ///@brief ?????????? typedef struct tagNET_PERSON_FEATURE_VALUE_INFO { UINT nOffset; /// ??????????????????? UINT nLength; /// ????????? BYTE byReserved[128]; /// ??????? }NET_PERSON_FEATURE_VALUE_INFO; ///@brief ???????? typedef enum tagEM_FREQUENCY_ALARM_TYPE { EM_FREQUENCY_ALARM_UNKNOWN = -1, /// ??? EM_FREQUENCY_ALARM_HIGH, /// ??????? EM_FREQUENCY_ALARM_LOW, /// ??????? } EM_FREQUENCY_ALARM_TYPE; ///@brief ?????????? typedef struct tagNET_PERSON_FREQUENCY_INFO { EM_FREQUENCY_ALARM_TYPE emAlarmType; /// ???????? int nTimes; /// ??? char szReserved[128]; /// ??????? }NET_PERSON_FREQUENCY_INFO; #define DH_MAX_CUSTOM_PERSON_INFO_NUM 4 /// ?????????????????? ///@brief ??????????? typedef struct tagFACERECOGNITION_CUSTOM_PASSER_BY_INFO { int nStorageAddrChannel; /// ?????????????? int nStoragePresetID; /// ?????(???????????)?????????? NET_TIME stuStorageTime; /// ?????? NET_TIME stuLastAppearTime; /// ?????????? int nLastAppearAddrChannel; /// ?????????????????? int nLastAppearPresetID; /// ??????????????????(????????1???) unsigned int nOccurrenceNumber; /// ??????? char szReserved[1020]; /// ??????? }FACERECOGNITION_CUSTOM_PASSER_BY_INFO; ///@brief ??????????? typedef struct tagFACERECOGNITION_CUSTOM_EXAMINEE_INFO { char szExamineeNumber[64]; /// ?????? char szExamineeRoomNumber[64]; /// ?????? char szExamineeSeatNumber[64]; /// ?????? char szReserved[256]; /// ??????? }FACERECOGNITION_CUSTOM_EXAMINEE_INFO; ///@brief ??????? typedef struct tagFACERECOGNITION_CUSTOM_HOUSE_INFO { UINT nHousePayState; /// ??????????, 0-??? 1-????? 2-?????? UINT nFloor; /// ??? char szHouseNo[64]; /// ?????? char szReserved[952]; /// ??????? }FACERECOGNITION_CUSTOM_HOUSE_INFO; ///@brief ??????? typedef struct tagFACERECOGNITION_CUSTOM_RESIDENTS_INFO { FACERECOGNITION_CUSTOM_HOUSE_INFO stuHouse[8]; /// ???????? int nHouse; /// ???????????? char szReserved[2044]; /// ??????? }FACERECOGNITION_CUSTOM_RESIDENTS_INFO; ///@brief ?????????????2 typedef struct tagFACERECOGNITION_PERSON_INFOEX2 { char szComment[100]; /// ?????? char szReserved1[4]; /// 8?????? NET_TIME stuAppointmentStartTime; /// ??????????? NET_TIME stuAppointmentEndTime; /// ???????????? char szAllowFloors[32]; /// ???????????, ?????, ???????szAllowFloorsEx char szNameEX[128]; /// ???????????? char szIDEX[128]; /// ??????????????????????????????? int bUseModifyTime; /// ???????????? int bUseRegisterStorageTime; /// ???????????????? NET_TIME stuModifyTime; /// ?????????????????????????? NET_TIME stuRegisterStorageTime; /// ?????????? char szAllowFloorsEx[64]; /// ??????????? char szReserved[616]; /// ??????? }FACERECOGNITION_PERSON_INFOEX2; ///@brief ????????????? typedef struct tagFACERECOGNITION_PERSON_INFOEX { char szPersonName[DH_MAX_PERSON_NAME_LEN]; /// ???? WORD wYear; /// ??????,???????????,???????0,????????????? BYTE byMonth; /// ??????,???????????,???????0,????????????? BYTE byDay; /// ??????,???????????,???????0,????????????? BYTE bImportantRank; /// ?????????,1~10,??????????,???????????,???????0,????????????? BYTE bySex; /// ???,1-??,2-?,???????????,???????0,????????????? char szID[DH_MAX_PERSON_ID_LEN]; /// ?????????(???????,????,?????????) WORD wFacePicNum; /// ?????? DH_PIC_INFO szFacePicInfo[DH_MAX_PERSON_IMAGE_NUM]; /// ???????????????? BYTE byType; /// ???????,??? EM_PERSON_TYPE BYTE byIDType; /// ???????,??? EM_CERTIFICATE_TYPE BYTE byGlasses; /// ?????????0-??? 1-???? 2-?? BYTE byAge; /// ????,0?????? char szProvince[DH_MAX_PROVINCE_NAME_LEN]; /// ??? char szCity[DH_MAX_CITY_NAME_LEN]; /// ???? char szUID[DH_MAX_PERSON_ID_LEN]; /// ???????????,?????????????,??????ID??? /// ???,???????????? char szCountry[NET_COUNTRY_LENGTH]; /// ????,????ISO3166??Z BYTE byIsCustomType; /// ????????????????: 0 ???Type????????? 1 ?????,???szCustomType??? char szCustomType[DH_COMMON_STRING_16]; /// ???????????? char szComment[NET_COMMENT_LENGTH]; /// ?????? char szGroupID[NET_GROUPID_LENGTH]; /// ?????????ID char szGroupName[NET_GROUPNAME_LENGTH]; /// ???????????, ??????????????????, EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ???? char szHomeAddress[DH_COMMON_STRING_128]; /// ???????????? EM_GLASSES_TYPE emGlassesType; /// ??????? char szReserved1[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ?????, -1???????, 0?????????????1-100,??????????? EM_PERSON_FEATURE_STATE emFeatureState; /// ???????? BOOL bAgeEnable; /// ??????????? int nAgeRange[2]; /// ?????? int nEmotionValidNum; /// ???????????????????,?? emFeature ??????, ????0??????????????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotions[DH_MAX_FACEDETECT_FEATURE_NUM]; /// ???????????,?? byFeatureValidNum ?????? ??????????????????? int nCustomPersonInfoNum; /// ???????????????? CUSTOM_PERSON_INFO szCustomPersonInfo[DH_MAX_CUSTOM_PERSON_INFO_NUM]; ///???????????? EM_REGISTER_DB_TYPE emRegisterDbType; /// ???????? NET_TIME stuEffectiveTime; /// ????????? EM_PERSON_FEATURE_ERRCODE emFeatureErrCode; /// ????????? DWORD wFacePicNumEx; /// ????????? NET_FACE_PIC_INFO szFacePicInfoEx[6]; /// ???????????????? NET_PERSON_FEATURE_VALUE_INFO stuPersonFeatureValue; /// ?????????? BOOL bFrozenStatus; /// ????????? char szReserved[4]; /// ??????? NET_PERSON_FREQUENCY_INFO stuFrequencyInfo; /// ?????????? char szUUID[64]; /// ??????????????????????UID,IVSS????faceRecognitionServer.getCaps??????SupportIDFromServer??true??????UUID???? FACERECOGNITION_CUSTOM_PASSER_BY_INFO* pstuCustomPasserbyInfo; /// ???????,????????????, ?????????? FACERECOGNITION_CUSTOM_EXAMINEE_INFO* pstuCustomExamineeInfo; /// ???????????, ????????????, ?????????? FACERECOGNITION_CUSTOM_RESIDENTS_INFO* pstuCustomResidentsInfo; /// ??????, ????????????, ?????????? char szRecordID[64]; /// ??????????id FACERECOGNITION_PERSON_INFOEX2* pstuPersonInfoEx2; /// ?????????2, ????????????, ?????????? BYTE byReserved[124-POINTERSIZE*4]; /// ??????? } FACERECOGNITION_PERSON_INFOEX; ///@brief ????????? typedef struct tagCANDIDATE_INFO { FACERECOGNITION_PERSON_INFO stPersonInfo; /// ?????? /// ????????????????,???????????????? /// ?????,?????????????? /// ??????,????????????? BYTE bySimilarity; /// ?????????????,??????,1~100 BYTE byRange; /// ??????????????,???EM_FACE_DB_TYPE BYTE byReserved1[2]; NET_TIME stTime; /// ??byRange??????????????,????????????????? char szAddress[MAX_PATH]; /// ??byRange??????????????,???????????????? BOOL bIsHit; /// ??????????,???????????????????????????? DH_PIC_INFO_EX3 stuSceneImage; /// ??????? int nChannelID; /// ????? char szChannelString[32]; /// ???????? }CANDIDATE_INFO; ///@brief ??????? typedef enum tagEM_CLOTHES_COLOR { EM_CLOTHES_COLOR_UNKNOWN, /// ??? EM_CLOTHES_COLOR_WHITE, /// ??? EM_CLOTHES_COLOR_ORANGE, /// ??? EM_CLOTHES_COLOR_PINK, /// ??? EM_CLOTHES_COLOR_BLACK, /// ??? EM_CLOTHES_COLOR_RED, /// ??? EM_CLOTHES_COLOR_YELLOW, /// ??? EM_CLOTHES_COLOR_GRAY, /// ??? EM_CLOTHES_COLOR_BLUE, /// ??? EM_CLOTHES_COLOR_GREEN, /// ??? EM_CLOTHES_COLOR_PURPLE, /// ??? EM_CLOTHES_COLOR_BROWN, /// ??? EM_CLOTHES_COLOR_DARKORANGE, /// ???? EM_CLOTHES_COLOR_OTHER, /// ???????(??????????????????, ????????????) EM_CLOTHES_COLOR_SILVER, /// ??? EM_CLOTHES_COLOR_DARKVIOLET, /// ????????? EM_CLOTHES_COLOR_MARRON, /// ??? EM_CLOTHES_COLOR_DIMGRAY, /// ????? EM_CLOTHES_COLOR_WHITESMOKE, /// ????? EM_CLOTHES_COLOR_MISTYROSE, /// ????? EM_CLOTHES_COLOR_TOMATO, /// ?????? EM_CLOTHES_COLOR_OLIVE, /// ???? EM_CLOTHES_COLOR_GLOD, /// ??? EM_CLOTHES_COLOR_DARKOLIVEGREEN, /// ???????? EM_CLOTHES_COLOR_CHARTREUSE, /// ????? EM_CLOTHES_COLOR_GREENYELLOW, /// ???? EM_CLOTHES_COLOR_FORESTGREEN, /// ?????? EM_CLOTHES_COLOR_SEAGREEN, /// ??????? EM_CLOTHES_COLOR_DEEPSKYBLUE, /// ??????? EM_CLOTHES_COLOR_CYAN, /// ??? EM_CLOTHES_COLOR_LIGHTGREEN, /// ???? }EM_CLOTHES_COLOR; ///@brief ???????? typedef enum tagEM_COAT_TYPE { EM_COAT_TYPE_UNKNOWN, /// ??? EM_COAT_TYPE_LONG_SLEEVE, /// ???? EM_COAT_TYPE_COTTA, /// ???? EM_COAT_TYPE_SLEEVELESS, ///???? }EM_COAT_TYPE; ///@brief ???????? typedef enum tagEM_TROUSERS_TYPE { EM_TROUSERS_TYPE_UNKNOWN, /// ??? EM_TROUSERS_TYPE_TROUSERS, /// ???? EM_TROUSERS_TYPE_SHORTS, /// ??? EM_TROUSERS_TYPE_SKIRT, /// ??? }EM_TROUSERS_TYPE; ///@brief ??????? typedef enum tagEM_HAS_HAT { EM_HAS_HAT_UNKNOWN, /// ??? EM_HAS_HAT_NO, /// ??????? EM_HAS_HAT_YES, /// ????? }EM_HAS_HAT; ///@brief ??????(?????????????) typedef enum tagEM_HAS_BAG { EM_HAS_BAG_UNKNOWN, /// ??? EM_HAS_BAG_NO, /// ?????? EM_HAS_BAG_YES, /// ???? }EM_HAS_BAG; ///@brief ????????? typedef enum tagEM_HAS_BACK_BAG { EM_HAS_BACK_BAG_UNKNOWN, /// ??? EM_HAS_BACK_BAG_NO, /// ??????? EM_HAS_BACK_BAG_YES, /// ?????? } EM_HAS_BACK_BAG; ///@brief ?????????? typedef enum tagEM_HAS_CARRIER_BAG { EM_HAS_CARRIER_BAG_UNKNOWN, /// ??? EM_HAS_CARRIER_BAG_NO, /// ???????? EM_HAS_CARRIER_BAG_YES, /// ??????? } EM_HAS_CARRIER_BAG; ///@brief ???????? typedef enum tagEM_HAS_SHOULDER_BAG { EM_HAS_SHOULDER_BAG_UNKNOWN, /// ??? EM_HAS_SHOULDER_BAG_NO, /// ?????? EM_HAS_SHOULDER_BAG_YES, /// ????? } EM_HAS_SHOULDER_BAG; ///@brief ?????????? typedef enum tagEM_HAS_MESSENGER_BAG { EM_HAS_MESSENGER_BAG_UNKNOWN, /// ??? EM_HAS_MESSENGER_BAG_NO, /// ???????? EM_HAS_MESSENGER_BAG_YES, /// ??????? } EM_HAS_MESSENGER_BAG; ///@brief ??? typedef enum tagEM_ANGLE_TYPE { EM_ANGLE_UNKNOWN = 0, /// ??? EM_ANGLE_FRONT, /// ???? EM_ANGLE_SIDE, /// ???? EM_ANGLE_BACK, /// ???? }EM_ANGLE_TYPE; ///@brief ?????? typedef enum tagEM_HAS_UMBRELLA { EM_HAS_UMBRELLA_UNKNOWN, /// ??? EM_HAS_UMBRELLA_NO, /// ?????? EM_HAS_UMBRELLA_YES, /// ???? } EM_HAS_UMBRELLA; ///@brief ?????? typedef enum tagEM_BAG_TYPE { EM_BAG_UNKNOWN, /// ??? EM_BAG_HANDBAG, /// ????? EM_BAG_SHOULDERBAG, /// ??? EM_BAG_KNAPSACK, /// ???? EM_BAG_DRAWBARBOX, /// ?????? EM_BAG_WAISTPACK, /// ???? EM_BAG_NONE, /// ??? } EM_BAG_TYPE; ///@brief ??????? typedef enum tagEM_CAP_TYPE { EM_CAP_UNKNOWN, /// ??? EM_CAP_ORDINARY, /// ?????? EM_CAP_HELMET, /// ??? EM_CAP_SAFE, /// ???? } EM_CAP_TYPE; ///@brief ??????? typedef enum tagEM_CLOTHES_PATTERN { EM_CLOTHES_PATTERN_UNKNOWN, /// ??? EM_CLOTHES_PATTERN_PURE, /// ??? EM_CLOTHES_PATTERN_STRIPE, /// ???? EM_CLOTHES_PATTERN_PATTERN, /// ??? EM_CLOTHES_PATTERN_GAP, /// ??? EM_CLOTHES_PATTERN_LATTICE, /// ???? EM_CLOTHES_PATTERN_SPLITJOIN, /// ??? EM_CLOTHES_PATTERN_FLORAL, /// ??h } EM_CLOTHES_PATTERN; ///@brief ?????? typedef enum tagEM_HAIR_STYLE { EM_HAIR_UNKNOWN = 0, /// ??? EM_HAIR_LONG_HAIR, /// ???? EM_HAIR_SHORT_HAIR, /// ??? EM_HAIR_PONYTAIL, /// ???? EM_HAIR_UPDO, /// ??? EM_HAIR_HEAD_BLOCKED, /// ???????? EM_HAIR_NONE, /// ????? } EM_HAIR_STYLE; ///@brief ?????????????? typedef struct tagNET_HISTORY_HUMAN_IMAGE_INFO { int nLength; /// ??????,????:??? int nWidth; /// ?????? int nHeight; /// ????? char szFilePath[260]; /// ??????? } NET_HISTORY_HUMAN_IMAGE_INFO; ///@brief ???????????? typedef struct tagNET_HISTORY_HUMAN_INFO { EM_CLOTHES_COLOR emCoatColor; /// ??????? EM_COAT_TYPE emCoatType; /// ???????? EM_CLOTHES_COLOR emTrousersColor; /// ??????? EM_TROUSERS_TYPE emTrousersType; /// ???????? EM_HAS_HAT emHasHat; /// ??????? EM_HAS_BAG emHasBag; /// ?????? NET_RECT stuBoundingBox; /// ??????(8192?????) int nAge; /// ???? EM_SEX_TYPE emSex; /// ??? EM_ANGLE_TYPE emAngle; /// ??? EM_HAS_UMBRELLA emHasUmbrella; /// ?????? EM_BAG_TYPE emBag; /// ?????? EM_CLOTHES_PATTERN emUpperPattern; /// ???????????? EM_HAIR_STYLE emHairStyle; /// ?????? EM_CAP_TYPE emCap; /// ????? EM_HAS_BACK_BAG emHasBackBag; /// ????????? EM_HAS_CARRIER_BAG emHasCarrierBag; /// ????????? EM_HAS_SHOULDER_BAG emHasShoulderBag; /// ???????? EM_HAS_MESSENGER_BAG emMessengerBag; /// ?????????? NET_HISTORY_HUMAN_IMAGE_INFO stuImageInfo; /// ????????? NET_HISTORY_HUMAN_IMAGE_INFO stuFaceImageInfo; /// ????? BYTE byReserved[256]; /// ??????? } NET_HISTORY_HUMAN_INFO; ///@brief ???????????????? typedef struct tagCANDIDATE_INFOEX { FACERECOGNITION_PERSON_INFOEX stPersonInfo; /// ????????? /// ????????????????,???????????????? /// ?????,?????????????? /// ??????,????????????? BYTE bySimilarity; /// ?????????????,??????,1~100 BYTE byRange; /// ??????????????,???EM_FACE_DB_TYPE BYTE byReserved1[2]; NET_TIME stTime; /// ??byRange??????????????,????????????????? char szAddress[MAX_PATH]; /// ??byRange??????????????,???????????????? BOOL bIsHit; /// ??????????,???????????????????????????? DH_PIC_INFO_EX3 stuSceneImage; /// ???? int nChannelID; /// ????? char szFilePathEx[256]; /// ??????? NET_HISTORY_HUMAN_INFO stuHistoryHumanInfo; /// ???????????? char szChannelString[32]; /// ???????? NET_TIME stuTimeRealUTC; /// ??????????????????(UTC?????) BOOL bIsTimeRealUTCValid; /// stuTimeRealUTC?????????? BYTE byReserved[76]; /// ??????? } CANDIDATE_INFOEX; ///@brief ???????? typedef enum tagEM_CLASS_TYPE { EM_CLASS_UNKNOWN = 0, /// ?????? EM_CLASS_VIDEO_SYNOPSIS = 1, /// ?????? EM_CLASS_TRAFFIV_GATE = 2, ///???? EM_CLASS_ELECTRONIC_POLICE = 3, /// ??? EM_CLASS_SINGLE_PTZ_PARKING = 4, /// ??????? EM_CLASS_PTZ_PARKINBG = 5, /// ??????? EM_CLASS_TRAFFIC = 6, /// ??????"Traffic" EM_CLASS_NORMAL = 7, /// ??????????"Normal" EM_CLASS_PS = 8, EM_CLASS_ATM = 9, /// ???????????"ATM" EM_CLASS_METRO = 10, /// ??????????? EM_CLASS_FACE_DETECTION = 11, /// ?????"FaceDetection" EM_CLASS_FACE_RECOGNITION = 12, /// ??????"TargetRecognition" EM_CLASS_NUMBER_STAT = 13, /// ???????"NumberStat" EM_CLASS_HEAT_MAP = 14, /// ????"HeatMap" EM_CLASS_VIDEO_DIAGNOSIS = 15, /// ??????"VideoDiagnosis" EM_CLASS_VIDEO_ENHANCE = 16, /// ?????? EM_CLASS_SMOKEFIRE_DETECT = 17, /// ????? EM_CLASS_VEHICLE_ANALYSE = 18, /// ???????????"VehicleAnalyse" EM_CLASS_PERSON_FEATURE = 19, /// ?????????? EM_CLASS_SDFACEDETECTION = 20, /// ????????"SDFaceDetect" ///???????????????????????????? EM_CLASS_HEAT_MAP_PLAN = 21, /// ??????????"HeatMapPlan" EM_CLASS_NUMBERSTAT_PLAN = 22, /// ?????????????? "NumberStatPlan" EM_CLASS_ATMFD = 23, /// ????????? EM_CLASS_HIGHWAY = 24, /// ????????????"Highway" EM_CLASS_CITY = 25, /// ????????????? "City" EM_CLASS_LETRACK = 26, /// ???????????"LeTrack" EM_CLASS_SCR = 27, /// ??????"SCR" EM_CLASS_STEREO_VISION = 28, /// ???????(??)"StereoVision" EM_CLASS_HUMANDETECT = 29, /// ??????"HumanDetect" EM_CLASS_FACE_ANALYSIS = 30, /// ?????? "FaceAnalysis" EM_CALSS_XRAY_DETECTION = 31, /// X???? "XRayDetection" EM_CLASS_STEREO_NUMBER = 32, /// ?????????????? "StereoNumber" EM_CLASS_CROWDDISTRIMAP = 33, /// ??????? EM_CLASS_OBJECTDETECT = 34, /// ????? EM_CLASS_FACEATTRIBUTE = 35, /// IVSS????? "FaceAttribute" EM_CLASS_FACECOMPARE = 36, /// IVSS?????? "FaceCompare" EM_CALSS_STEREO_BEHAVIOR = 37, /// ??????????? "StereoBehavior" EM_CALSS_INTELLICITYMANAGER = 38, /// ????? "IntelliCityMgr" EM_CALSS_PROTECTIVECABIN = 39, /// ???????ATM?????"ProtectiveCabin" EM_CALSS_AIRPLANEDETECT = 40, /// ????????? "AirplaneDetect" EM_CALSS_CROWDPOSTURE = 41, /// ??????????????????"CrowdPosture" EM_CLASS_PHONECALLDETECT = 42, /// ??????? "PhoneCallDetect" EM_CLASS_SMOKEDETECTION = 43, /// ??????? "SmokeDetection" EM_CLASS_BOATDETECTION = 44, /// ?????? "BoatDetection" EM_CLASS_SMOKINGDETECT = 45, /// ?????? "SmokingDetect" EM_CLASS_WATERMONITOR = 46, /// ?????? "WaterMonitor" EM_CLASS_GENERATEGRAPHDETECTION = 47, /// ????????? "GenerateGraphDetection" EM_CLASS_TRAFFIC_PARK = 48, /// ?????? "TrafficPark" EM_CLASS_OPERATEMONITOR = 49, /// ?????? "OperateMonitor" EM_CLASS_INTELLI_RETAIL = 50, /// ?????????? "IntelliRetail" EM_CLASS_CLASSROOM_ANALYSE = 51, /// ??????????"ClassroomAnalyse" EM_CLASS_FEATURE_ABSTRACT = 52, /// ??????????????? "FeatureAbstract" EM_CLASS_FACEBODY_DETECT = 53, /// ????????? "FaceBodyDetect" EM_CLASS_FACEBODY_ANALYSE = 54, /// ?????????? "FaceBodyAnalyse" EM_CLASS_VEHICLES_DISTRI = 55, /// ??????? "VehiclesDistri" EM_CLASS_INTELLI_BREED = 56, /// ????????? "IntelliBreed" EM_CLASS_INTELLI_PS = 57, EM_CLASS_ELECTRIC_DETECT = 58, /// ??????? "ElectricDetect" EM_CLASS_RADAR_DETECT = 59, /// ????? "RadarDetect" EM_CLASS_PARKINGSPACE = 60, /// ?????????? "ParkingSpace" EM_CLASS_INTELLI_FINANCE = 61, /// ?????? "IntelliFinance" EM_CLASS_CROWD_ABNORMAL = 62, /// ???????? "CrowdAbnormal" EM_CLASS_ANATOMY_TEMP_DETECT = 63, /// ???????????? "AnatomyTempDetect" EM_CLASS_WEATHER_MONITOR = 64, /// ??????? "WeatherMonitor" EM_CLASS_ELEVATOR_ACCESS_CONTROL = 65, /// ??????? "ElevatorAccessControl" EM_CLASS_BREAK_RULE_BUILDING = 66, /// ??????? "BreakRuleBuilding" EM_CLASS_FOREIGN_DETECT = 67, /// ?????? "ForeignDetection" EM_CLASS_PANORAMA_TRAFFIC = 68, /// ?????? "PanoramaTraffic" EM_CLASS_CONVEY_OR_BLOCK = 69, /// ????????? "ConveyorBlock" EM_CLASS_KITCHEN_ANIMAL = 70, /// ?????????????? "KitchenAnimal" EM_CLASS_ALLSEEINGEYE = 71, /// ?????? "AllSeeingEye" EM_CLASS_INTELLI_FIRE_CONTROL = 72, /// ??????? "IntelliFireControl" EM_CLASS_CONVERYER_BELT = 73, /// ???????? "ConveyerBelt" EM_CLASS_INTELLI_LOGISTICS = 74, /// ??????? "IntelliLogistics" EM_CLASS_SMOKE_FIRE = 75, /// ?????"SmokeFire" EM_CLASS_OBJECT_MONITOR = 76, /// ??????"ObjectMonitor" EM_CLASS_INTELLI_PARKING = 77, /// ???????"IntelliParking" EM_CLASS_FIRE_CONTROL = 78, /// ??????? "FireControl" EM_CLASS_ANIMAL_DETECTION = 79, /// ?????? "AnimalDetection" EM_CLASS_FIRE_CONTROL_MONITOR = 80, /// ???? "FireControlMonitor" EM_CLASS_FISH_MONITOR = 81, /// ?????? "FishMonitor" EM_CLASS_SHOPTRUCK_DETECT = 82,/// ????????ShopTruckDetect?? } EM_CLASS_TYPE; ///@brief ????????????????EM_SCENE_TYPE??? typedef enum tagEM_SCENE_CLASS_TYPE { EM_SCENE_CLASS_UNKNOW, /// ??? EM_SCENE_CLASS_NORMAL, /// "Normal" ??????? EM_SCENE_CLASS_TRAFFIC, /// "Traffic" ??????? EM_SCENE_CLASS_TRAFFIC_PATROL, /// "TrafficPatrol" ?????? EM_SCENE_CLASS_FACEDETECTION, /// "FaceDetection" ?????/?????? EM_SCENE_CLASS_ATM, /// "ATM" EM_SENCE_CLASS_INDOOR, /// "Indoor" ????????????????????????????????????????????? EM_SENCE_CLASS_FACERECOGNITION, /// "TargetRecognition" ?????? EM_SENCE_CLASS_PS, EM_SENCE_CLASS_NUMBERSTAT, /// "NumberStat" ????????? EM_SENCE_CLASS_HEAT_MAP, /// "HeatMap" ???? EM_SENCE_CLASS_VIDEODIAGNOSIS, /// "VideoDiagnosis" ?????? EM_SENCE_CLASS_VEHICLEANALYSE, /// "VehicleAnalyse" ?????????????? EM_SENCE_CLASS_COURSERECORD, /// "CourseRecord" ?????? EM_SENCE_CLASS_VEHICLE, /// "Vehicle" ???????(???????????????????????Traffic) EM_SENCE_CLASS_STANDUPDETECTION,/// "StandUpDetection" ??????? EM_SCENE_CLASS_GATE, /// "Gate" ???? EM_SCENE_CLASS_SDFACEDETECTION, /// "SDFaceDetect" ??????????????????????????????????????? EM_SCENE_CLASS_HEAT_MAP_PLAN, /// "HeatMapPlan" ?????????? EM_SCENE_CLASS_NUMBERSTAT_PLAN, /// "NumberStatPlan" ?????????????? EM_SCENE_CLASS_ATMFD, /// "ATMFD"????????? EM_SCENE_CLASS_HIGHWAY, /// "Highway" ???????????? EM_SCENE_CLASS_CITY, /// "City" ????????????? EM_SCENE_CLASS_LETRACK, /// "LeTrack" ??????????? EM_SCENE_CLASS_SCR, /// "SCR" ?????? EM_SCENE_CLASS_STEREO_VISION, /// "StereoVision" ???????(??) EM_SCENE_CLASS_HUMANDETECT, /// "HumanDetect"?????? EM_SCENE_CLASS_FACEANALYSIS, /// "FaceAnalysis" ?????? EM_SCENE_CLASS_XRAY_DETECTION, /// "XRayDetection" X???? EM_SCENE_CLASS_STEREO_NUMBER, /// "StereoNumber" ?????????????? EM_SCENE_CLASS_CROWDDISTRIMAP, /// "CrowdDistriMap"??????? EM_SCENE_CLASS_OBJECTDETECT, /// "ObjectDetect"????? EM_SCENE_CLASS_FACEATTRIBUTE, /// "FaceAttribute" IVSS????? EM_SCENE_CLASS_FACECOMPARE, /// "FaceCompare" IVSS?????? EM_SCENE_CLASS_STEREO_BEHAVIOR, /// "StereoBehavior" ???????????(???????ATM??) EM_SCENE_CLASS_INTELLICITYMANAGER, /// "IntelliCityMgr" ????? EM_SCENE_CLASS_PROTECTIVECABIN, /// "ProtectiveCabin" ???????ATM????? EM_SCENE_CLASS_AIRPLANEDETECT, /// "AirplaneDetect" ????????? EM_SCENE_CLASS_CROWDPOSTURE, /// "CrowdPosture" ?????????????????? EM_SCENE_CLASS_PHONECALLDETECT, /// "PhoneCallDetect" ??????? EM_SCENE_CLASS_SMOKEDETECTION, /// "SmokeDetection" ??????? EM_SCENE_CLASS_BOATDETECTION, /// "BoatDetection" ?????? EM_SCENE_CLASS_SMOKINGDETECT, /// "SmokingDetect" ?????? EM_SCENE_CLASS_WATERMONITOR, /// "WaterMonitor" ?????? EM_SCENE_CLASS_GENERATEGRAPHDETECTION,/// "GenerateGraphDetection" ????????? EM_SCENE_CLASS_TRAFFIC_PARK, /// "TrafficPark" ?????? EM_SCENE_CLASS_OPERATEMONITOR, /// "OperateMonitor" ?????? EM_SCENE_CLASS_INTELLI_RETAIL, /// IntelliRetail" ?????????? EM_SCENE_CLASS_CLASSROOM_ANALYSE,/// "ClassroomAnalyse" ?????????? EM_SCENE_CLASS_FEATURE_ABSTRACT, /// "FeatureAbstract" ??????????????? EM_SCENE_CLASS_FACEBODY_DETECT, /// "FaceBodyDetect" ????????? EM_SCENE_CLASS_FACEBODY_ANALYSE,/// "FaceBodyAnalyse"?????????? EM_SCENE_CLASS_VEHICLES_DISTRI, /// "VehiclesDistri" ??????? EM_SCENE_CLASS_INTELLI_BREED, /// "IntelliBreed"????????? EM_SCENE_CLASS_INTELLI_PS, EM_SCENE_CLASS_ELECTRIC_DETECT, /// "ElectricDetect" ??????? EM_SCENE_CLASS_RADAR_DETECT, /// "RadarDetect"????? EM_SCENE_CLASS_PARKINGSPACE, /// "ParkingSpace" ?????????? EM_SCENE_CLASS_INTELLI_FINANCE, /// "IntelliFinance"?????? EM_SCENE_CLASS_CROWD_ABNORMAL, /// "CrowdAbnormal" ???????? EM_SCENE_CLASS_ANATOMYTEMP_DETECT, /// "AnatomyTempDetect" EM_SCENE_CLASS_WEATHER_MONITOR, /// "WeatherMonitor"??????? EM_SCENE_CLASS_ELEVATOR_ACCESS_CONTROL, /// "ElevatorAccessControl" ??????? EM_SCENE_CLASS_BREAK_RULE_BUILDING, /// "BreakRuleBuilding"??????? EM_SCENE_CLASS_PANORAMA_TRAFFIC, /// "PanoramaTraffic"?????? EM_SCENE_CLASS_PORTRAIT_DETECT, /// "PortraitDetect"?????? EM_SCENE_CLASS_CONVEY_OR_BLOCK, /// "ConveyorBlock" ????????? EM_SCENE_CLASS_KITCHEN_ANIMAL, /// "KitchenAnimal" ?????????????? EM_SCENE_CLASS_ALLSEEINGEYE, /// "AllSeeingEye" ?????? EM_SCENE_CLASS_DRIVE, /// "Drive" ?????????? EM_SCENE_CLASS_DRIVEASSISTANT, /// "DriveAssistant" ???????????? EM_SCENE_CLASS_INCABINMONITOR, /// "InCabinMonitor" ?????????? EM_SCENE_CLASS_BLINDSPOTDETECTION, /// "BlindSpotDetection" ?????? EM_SCENE_CLASS_CONVERYER_BELT, /// "ConveyerBelt" ???????? EM_SCENE_CLASS_INTELLI_LOGISTICS, /// "IntelliLogistics" ??????? EM_SCENE_CLASS_SMOKE_FIRE, /// "SmokeFire" ????? EM_SCENE_CLASS_OBJECT_MONITOR, /// "ObjectMonitor" ?????? EM_SCENE_CLASS_FIRE_FACILITIES, /// "FireFacilities" ?????????? EM_SCENE_CLASS_FIRE_CONTROL, /// "IntelliFireControl" ??????? EM_SCENE_CLASS_INTELLI_PARKING, /// "IntelliParking" ??????? EM_SCENE_CLASS_FINANCE_REGULATION, /// "FinanceRegulation" ??????? EM_SCENE_CLASS_ENERGY, /// "Energy" ?????? EM_SCENE_CLASS_FIRE_CONTROL_EX, /// "FireControl" ??????? EM_SCENE_CLASS_ANIMAL_DETECTION, /// "AnimalDetection" ?????? EM_SCENE_CLASS_FIRE_CONTROL_MONITOR, /// "FireControlMonitor" ???? EM_SCENE_CLASS_PROTECTIVE_SUIT, /// "ProtectiveSuit" ??????????????? EM_SCENE_CLASS_FISH_MONITOR, /// "FishMonitor" ?????? EM_SCENE_CLASS_SHOPTRUCK_DETECT, /// "ShopTruckDetect"???????? EM_SCENE_CLASS_GENEAL_ATTITUDE, /// "GenealAttitude" ?????? EM_SCENE_CLASS_TRAFFIC_MAINTENANCE, /// "TrafficMaintenance" ?????? } EM_SCENE_CLASS_TYPE; ///@brief ????????????????? typedef struct tagEVENT_INTELLI_COMM_INFO { EM_CLASS_TYPE emClassType; /// ??????????????? int nPresetID; /// ??????????????????????0~255??????0????????????????? BYTE bReserved[124]; /// ???????,???????. } EVENT_INTELLI_COMM_INFO; ///@brief ???????????? typedef struct tagNET_INTELLIGENCE_IMAGE_INFO { UINT nOffSet; /// ??????????????????? UINT nLength; /// ??????,??????? UINT nWidth; /// ??????(????) UINT nHeight; /// ?????(????) UINT nIndexInData; /// ???????????????????? BYTE byReserved[44]; /// ?????? }NET_INTELLIGENCE_IMAGE_INFO; ///@brief ?????????????? typedef struct tagEVENT_TRAFFIC_CAR_PART_INFO { char szMachineName[128]; /// ??????????????? ????????????General.MachineName char szRoadwayNo[32]; /// ??????? char szPlateNumber[32]; /// ??????? char szCategory[32]; /// ?????????? BYTE bReserved[288]; /// ??????? }EVENT_TRAFFIC_CAR_PART_INFO; ///@brief ?????????????????? typedef enum tagEM_TRAFFICCAR_MOVE_DIRECTION { EM_TRAFFICCAR_MOVE_DIRECTION_UNKNOWN, /// ????? EM_TRAFFICCAR_MOVE_DIRECTION_STRAIGHT, /// ??? EM_TRAFFICCAR_MOVE_DIRECTION_TURN_LEFT, /// ??? EM_TRAFFICCAR_MOVE_DIRECTION_TURN_RIGHT, /// ??? EM_TRAFFICCAR_MOVE_DIRECTION_TURN_AROUND, /// ??? }EM_TRAFFICCAR_MOVE_DIRECTION; ///@brief ??????????????? typedef struct tagNET_WHITE_LIST_AUTHORITY_LIST { BOOL bOpenGate; /// ??????????? BYTE bReserved[16]; /// ??????? }NET_WHITE_LIST_AUTHORITY_LIST; ///@brief ??????????? typedef struct tagNET_TRAFFICCAR_WHITE_LIST { BOOL bTrustCar; /// ??????????????????? NET_TIME stuBeginTime; /// ?????????????? NET_TIME stuCancelTime; /// ??????????????? NET_WHITE_LIST_AUTHORITY_LIST stuAuthorityList; /// ??????????????? BYTE bReserved[32]; /// ??????? }NET_TRAFFICCAR_WHITE_LIST; ///@brief ?????????? typedef struct tagNET_TRAFFICCAR_BLACK_LIST { BOOL bEnable; /// ??????????????? BOOL bIsBlackCar; /// ????????????????? NET_TIME stuBeginTime; /// ????????????? NET_TIME stuCancelTime; /// ?????????????? EM_NET_TRAFFIC_CAR_CONTROL_TYPE emControlType; /// ???????? UINT nControlledRouteID; /// ????????ID BYTE bReserved[24]; /// ??????? }NET_TRAFFICCAR_BLACK_LIST; ///@brief ???????? typedef enum tagEM_TRAFFICCAR_CAR_TYPE { EM_TRAFFICCAR_CAR_TYPE_UNKNOWN, /// ??? EM_TRAFFICCAR_CAR_TYPE_TRUST_CAR, /// ???????????? EM_TRAFFICCAR_CAR_TYPE_SUSPICIOUS_CAR, /// ??????????? EM_TRAFFICCAR_CAR_TYPE_NORMAL_CAR, /// ??????????????????????? }EM_TRAFFICCAR_CAR_TYPE; ///@brief ???????? typedef enum tagEM_TRAFFICCAR_LANE_TYPE { EM_TRAFFICCAR_LANE_TYPE_UNKNOWN, /// ??? EM_TRAFFICCAR_LANE_TYPE_NORMAL, /// ??????? EM_TRAFFICCAR_LANE_TYPE_NONMOTOR, /// ??????????? EM_TRAFFICCAR_LANE_TYPE_LIGHT_DUTY, /// ????????? EM_TRAFFICCAR_LANE_TYPE_BUS, /// ?????????? EM_TRAFFICCAR_LANE_TYPE_EMERGENCY, /// ??????? EM_TRAFFICCAR_LANE_TYPE_DANGEROUS, /// ????????? EM_TRAFFICCAR_LANE_TYPE_TIDAL, /// ??????? }EM_TRAFFICCAR_LANE_TYPE; ///@brief ?????????? typedef enum tagEM_VEHICLE_DIRECTION { NET_VEHICLE_DIRECTION_UNKOWN, /// ??? NET_VEHICLE_DIRECTION_HEAD, /// ??? NET_VEHICLE_DIRECTION_TAIL, /// ???? NET_VEHICLE_DIRECTION_VEHBODYSIDE, /// ????(????) }EM_VEHICLE_DIRECTION; ///@brief ????????????????????? typedef enum tagEM_TOLLS_VEHICLE_TYPE { EM_TOLLS_VEHICLE_TYPE_UNKNOWN, /// ??? EM_TOLLS_VEHICLE_TYPE_PASSENGER_CAR1, /// ????? EM_TOLLS_VEHICLE_TYPE_PASSENGER_CAR2, /// ?????? EM_TOLLS_VEHICLE_TYPE_PASSENGER_CAR3, /// ?????? EM_TOLLS_VEHICLE_TYPE_PASSENGER_CAR4, /// ?????? EM_TOLLS_VEHICLE_TYPE_TRUCK1 = 11, /// ?????? EM_TOLLS_VEHICLE_TYPE_TRUCK2, /// ??????? EM_TOLLS_VEHICLE_TYPE_TRUCK3, /// ??????? EM_TOLLS_VEHICLE_TYPE_TRUCK4, /// ??????? EM_TOLLS_VEHICLE_TYPE_TRUCK5, /// ??????? EM_TOLLS_VEHICLE_TYPE_TRUCK6 = 16, /// ??????? EM_TOLLS_VEHICLE_TYPE_OPERATION_VEHICLE1 = 21, /// ??????????? EM_TOLLS_VEHICLE_TYPE_OPERATION_VEHICLE2, /// ???????????? EM_TOLLS_VEHICLE_TYPE_OPERATION_VEHICLE3, /// ???????????? EM_TOLLS_VEHICLE_TYPE_OPERATION_VEHICLE4, /// ???????????? EM_TOLLS_VEHICLE_TYPE_OPERATION_VEHICLE5, /// ???????????? EM_TOLLS_VEHICLE_TYPE_OPERATION_VEHICLE6 = 26, /// ???????????? }EM_TOLLS_VEHICLE_TYPE; ///@brief ??????? typedef struct tagNET_TRAFFICCAR_ORIGINAL_VEHICLE { UINT nOffset; /// ??????????????????? UINT nLength; /// ???????,????????? UINT nIndexInData; /// ???????????????????? char szReserved[60]; /// ??????? }NET_TRAFFICCAR_ORIGINAL_VEHICLE; ///@brief ????????????????? typedef enum tagEM_VEHICLE_TYPE_BY_FUNC { EM_VEHICLE_TYPE_BY_FUNC_UNKNOWN, /// ??? /*????????????????*/ EM_VEHICLE_TYPE_BY_FUNC_TANK_CAR, /// ????????? EM_VEHICLE_TYPE_BY_FUNC_SLOT_TANK_CAR, /// ???? EM_VEHICLE_TYPE_BY_FUNC_DREGS_CAR, /// ?????? EM_VEHICLE_TYPE_BY_FUNC_CONCRETE_MIXER_TRUCK, /// ?????????? EM_VEHICLE_TYPE_BY_FUNC_TAXI, /// ???? EM_VEHICLE_TYPE_BY_FUNC_POLICE, /// ???? EM_VEHICLE_TYPE_BY_FUNC_AMBULANCE, /// ????? EM_VEHICLE_TYPE_BY_FUNC_GENERAL, /// ????? EM_VEHICLE_TYPE_BY_FUNC_WATERING_CAR, /// ????? EM_VEHICLE_TYPE_BY_FUNC_FIRE_ENGINE, /// ?????? EM_VEHICLE_TYPE_BY_FUNC_MACHINESHOP_TRUCK, /// ????? EM_VEHICLE_TYPE_BY_FUNC_POWER_LOT_VEHICLE, /// ????????? EM_VEHICLE_TYPE_BY_FUNC_SUCTION_SEWAGE_TRUCK, /// ????? EM_VEHICLE_TYPE_BY_FUNC_NORMAL_TANK_TRUCK, /// ?????? EM_VEHICLE_TYPE_BY_FUNC_SCHOOL_BUS, /// ???? EM_VEHICLE_TYPE_BY_FUNC_EXCAVATOR, /// ???? EM_VEHICLE_TYPE_BY_FUNC_BULLDOZER, /// ?????? EM_VEHICLE_TYPE_BY_FUNC_CRANE, /// ???? EM_VEHICLE_TYPE_BY_FUNC_PUMP_TRUCK, /// ???? EM_VEHICLE_TYPE_BY_FUNC_POULTRY, /// ???? EM_VEHICLE_TYPE_BY_FUNC_TRACTOR, /// ?????? /*????????????????*/ } EM_VEHICLE_TYPE_BY_FUNC; ///@brief ???????? typedef enum tagEM_PLATE_ATTRIBUTE { EM_PLATE_ATTRIBUTE_UNKNOWN, /// ??? EM_PLATE_ATTRIBUTE_NORMAL, /// ???? EM_PLATE_ATTRIBUTE_NO_PLATE, /// ???? EM_PLATE_ATTRIBUTE_PARTIAL_OCCLUSION, /// ???????/???? EM_PLATE_ATTRIBUTE_FULL_OCCLUSION, /// ??????/???? } EM_PLATE_ATTRIBUTE; ///@brief ????????????? typedef struct tagNET_TRAFFICCAR_INFO_EXTERN { UINT nContainerNumber; /// ????????????? int nContainerTextNum; /// ?????????????????????? char szContainerText[8][64]; /// ?????????????????? BOOL bAverageSpeed; /// dAverageSpeed?????????? BOOL bSpaceOcpRatio; /// dSpaceOcpRatio?????????? double dAverageSpeed; /// ????????????km/h -1???????????0?????? double dSpaceOcpRatio; /// ???????????????????????????????????????????????????????? unsigned int nContainerType; /// ????????????????????????????? char szReserved[2020]; /// ??????? }NET_TRAFFICCAR_INFO_EXTERN; ///@brief TrafficCar ?????????? typedef struct tagDEV_EVENT_TRAFFIC_TRAFFICCAR_INFO { char szPlateNumber[32]; /// ??????? char szPlateType[32]; /// ???????? "Unknown" ???; "Normal" ???????; "Yellow" ????; "DoubleYellow" ???????? /// "Police" ????;"SAR" ???????????; "Trainning" ??????????; "Personal" ???????; "Agri" ????? /// "Embassy" ??????; "Moto" ?????????; "Tractor" ??????????; "Other" ???????? char szPlateColor[32]; /// ??????? "Blue","Yellow", "White","Black","YellowbottomBlackText","BluebottomWhiteText","BlackBottomWhiteText","ShadowGreen","YellowGreen" char szVehicleColor[32]; /// ??????? "White", "Black", "Red", "Yellow", "Gray", "Blue","Green" int nSpeed; /// ??? ????Km/H char szEvent[64]; /// ???????????? ???????????Event List,???????????????? char szViolationCode[32]; /// ??????? ???TrafficGlobal.ViolationCode char szViolationDesc[64]; /// ???????? int nLowerSpeedLimit; /// ??????? int nUpperSpeedLimit; /// ??????? int nOverSpeedMargin; /// ????????? ??????km/h int nUnderSpeedMargin; /// ????????? ??????km/h int nLane; /// ???? ???????????Event List???????????????? int nVehicleSize; /// ????????,-1??????,?????? /// ??0??:"Light-duty", ????? /// ??1??:"Medium", ????? /// ??2??:"Oversize", ????? /// ??3??:"Minisize", ???? /// ??4??:"Largesize", ???? float fVehicleLength; /// ???????? ?????? int nSnapshotMode; /// ????? 0-??????,1-???,2-????,4-??????,8-???????,16-??????? char szChannelName[32]; /// ????????????????,??????????? ????????????????ChannelTitle.Name char szMachineName[256]; /// ??????????????? ????????????General.MachineName char szMachineGroup[256]; /// ????????????????????? ??????,??????????????????????,???????,??????? char szRoadwayNo[64]; /// ??????? char szDrivingDirection[3][DH_MAX_DRIVINGDIRECTION]; /// /// ??????? , "DrivingDirection" /// "Approach"-????,????????????????????????"Leave"-????, /// ?????????????????????,?????????????????????????? /// ????????????? char *szDeviceAddress; /// ??????,OSD??????????,?????????TrafficSnapshot.DeviceAddress,'\0'???? char szVehicleSign[32]; /// ??????? DH_SIG_CARWAY_INFO_EX stuSigInfo; /// ???????????????????????? char *szMachineAddr; /// ????????? float fActualShutter; /// ???????????,????????? BYTE byActualGain; /// ?????????,?????0~100 BYTE byDirection; /// ????????,0-???? 1-??????? 2-???? 3-???????? 4-?????? 5-?????????? 6-?????? 7-?????????? 8-??? 9-????? BYTE byReserved[2]; char* szDetailedAddress; /// ??????, ???szDeviceAddress????? char szDefendCode[DH_COMMON_STRING_64]; /// ???????? int nTrafficBlackListID; /// ?????????????????????????ID, 0,??????> 0,????????????? DH_COLOR_RGBA stuRGBA; /// ???????RGBA NET_TIME stSnapTime; /// ?????? int nRecNo; /// ?????? char szCustomParkNo[DH_COMMON_STRING_32 + 1]; /// ?????t????????????? BYTE byReserved1[3]; int nDeckNo; /// ???????? int nFreeDeckCount; /// ???????????? int nFullDeckCount; /// ??????????? int nTotalDeckCount; /// ??????????? char szViolationName[64]; /// ???????? unsigned int nWeight; /// ????(???? Kg) char szCustomRoadwayDirection[32]; /// ?????t??????,byDirection?9????? BYTE byPhysicalLane; /// ??????????,??0??5 BYTE byReserved2[3]; EM_TRAFFICCAR_MOVE_DIRECTION emMovingDirection; /// ??????????? NET_TIME stuEleTagInfoUTC; /// ?????????????????????????(ThroughTime) NET_RECT stuCarWindowBoundingBox; /// ????????????0~8191 NET_TRAFFICCAR_WHITE_LIST stuWhiteList; /// ??????????? EM_TRAFFICCAR_CAR_TYPE emCarType; /// ???????? EM_TRAFFICCAR_LANE_TYPE emLaneType; /// ???????? char szVehicleBrandYearText[64]; /// ???????????????? char szCategory[32]; /// ?????????? NET_TRAFFICCAR_BLACK_LIST stuBlackList; /// ?????????? EM_VEHICLE_DIRECTION emFlowDirection; /// ?????????? EM_TOLLS_VEHICLE_TYPE emTollsVehicleType; /// ????????????????????? UINT nAxleType; /// ???????,??????????? 0???????? UINT nAxleCount; /// ???????? UINT nWheelNum; /// ???????? NET_TRAFFICCAR_ORIGINAL_VEHICLE stuOriginalVehicle; /// ??????? EM_VEHICLE_TYPE_BY_FUNC emVehicleTypeByFunc; /// ????????????????? unsigned short nSunBrand; /// ????????? unsigned short nBrandYear; /// ??????? int nTrafficLightType; /// ?????????,????EVENT_IVS_TRAFFIC_RUNREDLIGHT??????, 0;???, 1:?????, 2:????? EM_PLATE_ATTRIBUTE emPlateAttribute; /// ???????? NET_TRAFFICCAR_INFO_EXTERN* pTrafficInfoExtern; /// ????????????? char szCarNoGroupType[64]; /// ???????,???????????????????? BYTE bReserved[68 - POINTERSIZE]; /// ???????,???????. }DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO; #ifndef LINUX64_JNA #pragma pack(push) #pragma pack(4) #endif ///@brief GPS??? typedef struct tagNET_GPS_INFO { unsigned int nLongitude; /// ????(??????????????) /// ??????0 - 180000000 ??????: 180*1000000 ?C dwLongitude /// ??????180000000 - 360000000 ??????: dwLongitude ?C 180*1000000 /// ??: 300168866????300168866 - 180*1000000??/1000000 ??????120.168866?? unsigned int nLatidude; /// ????(??????????????) /// ??????0 - 90000000 ??????: 90*1000000 ?C dwLatidude /// ??????90000000 ?C 180000000 ??????: dwLatidude ?C 90*1000000 /// ??: 120186268?? (120186268 - 90*1000000)/1000000 ??????30. 186268?? double dbAltitude; /// ???,??????? double dbSpeed; /// ???,????km/H double dbBearing; /// ?????,?????? BYTE bReserved[8]; /// ??????? }NET_GPS_INFO; #ifndef LINUX64_JNA #pragma pack(pop) #endif ///@brief GPS??? typedef struct tagNET_GPS_INFO_EX { int nLongitude; /// ????(??????????????) /// ??????0 - 180000000 ??????: 180*1000000 ?C dwLongitude /// ??????180000000 - 360000000 ??????: dwLongitude ?C 180*1000000 /// ??: 300168866????300168866 - 180*1000000??/1000000 ??????120.168866?? int nLatidude; /// ????(??????????????) /// ??????0 - 90000000 ??????: 90*1000000 ?C dwLatidude /// ??????90000000 ?C 180000000 ??????: dwLatidude ?C 90*1000000 /// ??: 120186268?? (120186268 - 90*1000000)/1000000 ??????30. 186268?? double nAltitude; /// ???,??????? char szReserved[48]; /// ??????? } NET_GPS_INFO_EX; ///@brief ????????? typedef struct tagNET_EXTENSION_INFO { char szEventID[MAX_EVENT_ID_LEN]; /// ???????ID BYTE byReserved[80]; /// ??????? } NET_EXTENSION_INFO; ///@brief ??????? typedef struct tagSCENE_IMAGE_INFO_EX { unsigned int nOffSet; /// ??????????????????? unsigned int nLength; /// ??????,??????? unsigned int nWidth; /// ??????(????) unsigned int nHeight; /// ?????(????) char szFilePath[260]; /// ????????? UINT nIndexInData; /// ???????????????????? char szImageID[42]; /// ??ID char szReserved[6]; /// ?????? NET_TIME_EX SnapTime; /// ?????????UTC?????????????????????????? BYTE byReserved[424]; /// ?????? }SCENE_IMAGE_INFO_EX; ///@brief ?????? typedef enum tagEM_UNIFORM_STYLE { EM_UNIFORM_STYLE_UNKNOWN, /// ??? EM_UNIFORM_STYLE_POLICE, /// ???? EM_UNIFORM_STYLE_NOUNIFORM, /// ????? EM_UNIFORM_STYLE_SINOPEC, /// ???????? EM_UNIFORM_STYLE_GUARD, /// ?????? EM_UNIFORM_STYLE_VEST, /// ???? EM_UNIFORM_STYLE_SATNITATION, /// ?????? EM_UNIFORM_STYLE_TAKEOUT, /// ?????? EM_UNIFORM_STYLE_JUN, EM_UNIFORM_STYLE_EXPRESS, /// ???? EM_UNIFORM_STYLE_SECURITY /// ?????? }EM_UNIFORM_STYLE; ///@brief ?????????? typedef struct tagNET_VAOBJECT_NUMMAN { UINT nObjectID; /// ????ID?????ID??????????????? EM_UNIFORM_STYLE emUniformStyle; /// ?????? NET_RECT stuBoundingBox; /// ??????,??????????????????????,?0~8191??????? NET_RECT stuOriginalBoundingBox; /// ??????,???????? BYTE byReserved[128]; /// ?????? }NET_VAOBJECT_NUMMAN; ///@brief ??????? typedef enum tagEM_EVENT_LEVEL { EM_EVENT_LEVEL_UNKNOWN = -1, /// ??? EM_EVENT_LEVEL_HINT, /// ??? EM_EVENT_LEVEL_GENERAL, /// ??? EM_EVENT_LEVEL_WARNING /// ???? }EM_EVENT_LEVEL; ///@brief ?????????????? typedef struct tagNET_PRESET_POSITION { int nHorizontal; /// ?????? int nVertical; /// ??????? int nMagnification; /// ????? }NET_PRESET_POSITION; ///@brief ????N????????? typedef enum tagEM_ACTION { EM_ACTION_UNKNOWN, /// ??????? EM_ACTION_APPEAR, /// ??????????????????????????????????????????????????????? EM_ACTION_MOVE, /// ?????????????????????? EM_ACTION_STAY, /// ??????????????????I???????????????????????????????????????????????? EM_ACTION_REMOVE, /// ????????????????????????????????????????????????ID??????????????????????????????????????????? EM_ACTION_DISAPPEAR, /// ???????????????????????????????????????????????????????ID????????? EM_ACTION_SPLIT, /// ??????????????????????????????????????????????ID????????ID?????????? EM_ACTION_MERGE, /// ?????????????????????????????????????ID???????????ID??????????? EM_ACTION_RENAME, /// ?????????????????????????????????????????????????????????????????????????????????ID??????ID?????????????ID?? }EM_ACTION; ///@brief ?????????? typedef enum tagEM_BOAT_DIRECTION { EM_BOAT_DIRECTION_UNKNOWN, /// ??? EM_BOAT_DIRECTION_OPPOSITE, /// ???? EM_BOAT_DIRECTION_POSITIVE, /// ???? }EM_BOAT_DIRECTION; ///@brief ?????????? typedef struct tagNET_BOAT_OBJECT { UINT nObjectID; /// ????ID?????ID?????????????????????????I????????ID????????????ID????????????? int nDistance; /// ????????????????????? ??????0-65535 int nHeight; /// ????????????? ??????0-255 int nWidth; /// ?????????????? ??????0-2000 int nSpeed; /// ??????????????/?? ??????0-255 EM_ACTION emActionType; /// ????N????????? NET_RECT stuBoundingBox; /// ????????,?????????????[0,8191]???? NET_RECT stuOriginalBoundingBox; /// ??????(????????) EM_BOAT_DIRECTION emDirection; /// ??????? char szBoatCode[64]; /// ????????? int nBoatType; /// ??????? 0????? 1??????? 2???????? 3???????? 4?????? 5?????????? 6??????? 7???????? 8???????? BYTE byReserved[56]; /// ?????? }NET_BOAT_OBJECT; ///@brief ???????EVENT_IVS_CROSSLINEDETECTION(???????????)????????????????? typedef struct tagDEV_EVENT_CROSSLINE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_POINT DetectLine[DH_MAX_DETECT_LINE_NUM]; /// ???????? int nDetectLineNum; /// ????????????? DH_POINT TrackLine[DH_MAX_TRACK_LINE_NUM]; /// ????????? int nTrackLineNum; /// ??????????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bDirection; /// ??????????, 0-????????, 1-???????? BYTE byReserved[1]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1???????????,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? UINT nObjetcHumansNum; /// ?????????? NET_VAOBJECT_NUMMAN stuObjetcHumans[100]; /// ??????? UINT nRuleID; /// ??????,????????????????????????????0 EM_EVENT_LEVEL emEventType; /// ??????? NET_PRESET_POSITION stPosition; /// ?????????????? UINT nVisibleHFOV; /// ?????????????,?????? ????????100 UINT nVisibleVFOV; /// ??????????????,?????? ????????100 UINT nCurChannelHFOV; /// ????????????????????????????????????100 UINT nCurChannelVFOV; /// ?????????????????????????????????????100 int nImageNum; /// ????????? NET_IMAGE_INFO_EX2* pImageArray; /// ????????? int nCarMirrorStatus; /// ????????????-1: ???, 0: ????, 1: ??????(??????????) int nCarLightStatus; /// ?????????,-1: ???, 0: ????, 1:??????(?????????) UINT nObjectBoatsNum; /// ?????????? NET_BOAT_OBJECT stuBoatObjects[100]; /// ????????? int nUpDownGoing; /// ????/????????, 0:???, 1:????, 2:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved1[452]; /// ?????? } DEV_EVENT_CROSSLINE_INFO; ///@brief ???????EVENT_IVS_CROSSLINEDETECTION_EX(???????????)????????????????? typedef struct tagDEV_EVENT_CROSSLINE_INFO_EX { DWORD dwSize; int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? float PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT_EX stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_POINT DetectLine[DH_MAX_DETECT_LINE_NUM]; /// ???????? int nDetectLineNum; /// ????????????? DH_POINT TrackLine[DH_MAX_TRACK_LINE_NUM]; /// ????????? int nTrackLineNum; /// ??????????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bDirection; /// ??????????, 0-????????, 1-???????? BYTE byReserved[1]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1???????????,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? int nMsgObjArrayCount; /// ???????????????? DH_MSG_OBJECT_EX* pMsgObjArray; /// ??????????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? UINT nObjetcHumansNum; /// ?????????? NET_VAOBJECT_NUMMAN stuObjetcHumans[100]; /// ??????? UINT nRuleID; /// ??????,????????????????????????????0 EM_EVENT_LEVEL emEventType; /// ??????? NET_PRESET_POSITION stPosition; /// ?????????????? UINT nVisibleHFOV; /// ?????????????,?????? ????????100 UINT nVisibleVFOV; /// ??????????????,?????? ????????100 UINT nCurChannelHFOV; /// ????????????????????????????????????100 UINT nCurChannelVFOV; /// ?????????????????????????????????????100 int nImageNum; /// ????????? NET_IMAGE_INFO_EX2* pImageArray; /// ????????? int nCarMirrorStatus; /// ????????????-1: ??? 0-??????1-??????(??????????) int nCarLightStatus; /// ???????????-1: ??? 0-??????1-??????(?????????) UINT nObjectBoatsNum; /// ?????????? NET_BOAT_OBJECT stuBoatObjects[100]; /// ????????? int nUpDownGoing; /// ????/????????, 0:???, 1:????, 2:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved1[452]; /// ?????? } DEV_EVENT_CROSSLINE_INFO_EX; ///@brief ?????????? typedef struct tagNET_CUSTOM_INFO { int nCargoChannelNum; /// ??????????? float fCoverageRate[MAX_CARGO_CHANNEL_NUM]; /// ???????? BYTE byReserved[40]; /// ??????? } NET_CUSTOM_INFO; ///@brief ???????????? typedef enum tagEM_SPECIAL_REGION_TYPE { EM_SPEICAL_REGION_UNKNOW = 0 , /// ??? EM_SPEICAL_REGION_HIGH_LIGHT , /// ????;ATM?????? EM_SPEICAL_REGION_REGULAR_BLINK , /// ????????;ATM????? EM_SPEICAL_REGION_IRREGULAR_BLINK , /// ??????????;ATM????? }EM_SPECIAL_REGION_TYPE; ///@brief ???????EVENT_IVS_PASTEDETECTION(???????)????????????????? typedef struct tagDEV_EVENT_PASTE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON unsigned int nOccurrenceCount; /// ????????????? EM_SPECIAL_REGION_TYPE emSpecialRegion; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[744-POINTERSIZE]; /// ???????,???????. } DEV_EVENT_PASTE_INFO; ///@brief ???????EVENT_IVS_LEFTDETECTION(??????????)????????????????? typedef struct tagDEV_EVENT_LEFT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? short nPreserID; /// ?????????????????1???????????????? char szPresetName[64]; /// ???????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? BYTE byReserved2[2]; /// ?????? NET_GPS_INFO stuGPSInfo; /// GPS??? char szVideoPath[256]; /// ??????????FTP??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_LEFT_INFO; ///@brief ??????? typedef struct tagSCENE_IMAGE_INFO { UINT nOffSet; /// ??????????????????? UINT nLength; /// ??????,??????? UINT nWidth; /// ??????(????) UINT nHeight; /// ?????(????) UINT nIndexInData; /// ???????????????????? BYTE byReserved[52]; /// ?????? }SCENE_IMAGE_INFO; ///@brief ???????EVENT_IVS_PRESERVATION(?????????)????????????????? typedef struct tagDEV_EVENT_PRESERVATION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? int nObjectCount; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[128]; /// ??????????????? ??Objects, ??Objects??????Objects, ??Object???????????????????Objects???Object???????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1020-POINTERSIZE]; /// ???????,???????. } DEV_EVENT_PRESERVATION_INFO; ///@brief ?????????????? typedef struct tagPTZ_PRESET_UNIT { int nPositionX; ///??????????[0,3599]?????0???359.9???????????10??????? int nPositionY; ///???????????[-1800,1800]?????-180.0???+180.0???????????10??????? int nZoom; ///????????????[0,127]?????????????????????? char szReserve[32]; ///???32??? }PTZ_PRESET_UNIT; ///@brief ???????????????????????????? typedef struct tagNET_LINK_INFO { UINT nLinkObjectID; /// ????????ID UINT nLinkEventID; /// ???????ID UINT nSpeedValue; /// ??????????????????/??????100?? UINT nAlarmType; /// ????????, ??0bit??????????(1???????,0?????????), ??1bit????????AIS???, ??2bit???????????, ??3bit???????????? UINT nLongitude; /// ????????????(?????????????,????0-360??)??Q??120.178274?????300178274 UINT nLatitude; /// ?????????????(?????????????,????0-180??)??m??30.183382?????120183382 /// ??????????????????????????? NET_WIFI_GPS_INFO ??????? UINT nDistance; /// ??????????????????????100?? char szObjectType[16]; /// ???????????? NET_TIME_EX stuLinkRealUTC; /// ??????????????????????????????UTC??? char szLinkTargetUUID[32]; /// ???????id char szResvered[144]; /// ??????? }NET_LINK_INFO; ///@brief ???????EVENT_IVS_STAYDETECTION(??????)????????????????? typedef struct tagDEV_EVENT_STAY_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_NUM]; /// ????????? UINT nAreaID; /// ????ID(???????????????????ID) BOOL bIsCompliant; /// ????????????? PTZ_PRESET_UNIT stPosition; /// ?????????????? UINT nCurChannelHFOV; /// ????????????????????,?????????????????100 UINT nCurChannelVFOV; /// ???????????????????,?????????????????100 SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_LINK_INFO stuLinkInfo; /// ???????????????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_BOAT_OBJECT* pstuBoatObject; /// ?????????? int nBoatObjectNum; /// ?????????????? BYTE bReserved[620 - POINTERSIZE]; /// ???????,???????. } DEV_EVENT_STAY_INFO; ///@brief ?????????? typedef struct tagNET_POSTION { int nHorizontalCoordinate; /// ??????, ????[0, 3599]?????0???359.9???????????10??????? int nVerticalCoordinate; /// ???????????[-1800,1800]?????-180.0???+180.0???????????10??????? int nMagnification; /// ?????, ????[0,127]?????????????????????? } NET_POSTION; ///@brief ???????EVENT_IVS_WANDERDETECTION(??????)????????????????? typedef struct tagDEV_EVENT_WANDER_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????? int nTrackNum; /// ????(????????????????) DH_POLY_POINTS stuTrackInfo[DH_MAX_OBJECT_LIST]; /// ?????(????????????) int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? short nPreserID; /// ?????????????????1???????????????? char szPresetName[64]; /// ???????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? NET_POSTION stuPostion; /// ?????????? char byReserved2[4]; /// ?????? UINT nCurChannelHFOV; /// ????????????????????,?????????????????100 UINT nCurChannelVFOV; /// ???????????????????,?????????????????100 NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BOOL bSceneImage; /// pstuSceneImage??????? SCENE_IMAGE_INFO_EX* pstuSceneImage; /// ??????? BYTE szReserved[398 - POINTERSIZE]; /// ???????,???????. } DEV_EVENT_WANDER_INFO; ///@brief ?????? typedef struct tagNET_OBJECT_IMAGE_INFO { unsigned int nOffSet; /// ??????????????????? unsigned int nLength; /// ??????,??????? unsigned int nWidth; /// ??????(????) unsigned int nHeight; /// ?????(????) char szFilePath[260]; /// ????????? UINT nIndexInData; ///????? BYTE byReserved[504]; /// ?????? }NET_OBJECT_IMAGE_INFO; ///@brief ???????? typedef enum tagEM_ANINAL_CATEGORY { EM_ANINAL_CATEGORY_UNKNOWN, /// ??????? EM_ANINAL_CATEGORY_PIG, /// ?? EM_ANINAL_CATEGORY_CAT, /// ?? EM_ANINAL_CATEGORY_DOG, /// ?? EM_ANINAL_CATEGORY_BIRD, /// ?? EM_ANINAL_CATEGORY_GOLDEN_MONKEY, /// ????? EM_ANINAL_CATEGORY_BLACK_BECKED_CRANE, /// ????? EM_ANINAL_CATEGORY_RAT, /// ???? }EM_ANINAL_CATEGORY; ///@brief ????? typedef enum tagENUM_MOTION_STATUS { ENUM_MOTION_STATUS_UNKNOWN, /// ??? ENUM_MOTION_STATUS_STATIC, /// ??? ENUM_MOTION_STATUS_MOVE, /// ??? }ENUM_MOTION_STATUS; ///@brief ???????? typedef enum tagENUM_IN_REGION_STATUS { ENUM_IN_REGION_STATUS_UNKNOWN, /// ??? ENUM_IN_REGION_STATUS_YES, /// ???????? ENUM_IN_REGION_STATUS_NO, /// ?????????? }ENUM_IN_REGION_STATUS; ///@brief ???????????(????) typedef struct tagVA_OBJECT_ANIMAL { UINT nObjectID; /// ????ID, ???ID??????????????? EM_ANINAL_CATEGORY emCategory; /// ????????? NET_RECT stuBoundingBox; /// ?????? ??????????????????????,?0~8191??????? UINT nObjectWeight; /// ?????????????????:g NET_OBJECT_IMAGE_INFO stuImage; /// ?????? ENUM_MOTION_STATUS emMoveStatus; /// ????? ENUM_IN_REGION_STATUS emInRegionStatus; /// ???????? int nResultType; /// ??????? 0-?? 1-???? BYTE bReserved[1024]; /// ???????,??????? }VA_OBJECT_ANIMAL; ///@brief ???????EVENT_IVS_MOVEDETECTION(??????)????????????????? typedef struct tagDEV_EVENT_MOVE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? int nTrackLineNum; /// ??????????????? DH_POINT stuTrackLine[DH_MAX_TRACK_LINE_NUM];/// ????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? int nAnimalNum; /// ??????? VA_OBJECT_ANIMAL *pstuAnimals; /// ??????? int nMsgObjArrayCount; /// ???????????????? DH_MSG_OBJECT_EX* pMsgObjArray; /// ??????????????????? int nImageNum; /// ????????? NET_IMAGE_INFO_EX2* pImageArray; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[236]; /// ???????,???????. } DEV_EVENT_MOVE_INFO; ///@brief ???????EVENT_IVS_TAILDETECTION(???????)????????????????? typedef struct tagDEV_EVENT_TAIL_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[484-POINTERSIZE]; /// ???????,???????. } DEV_EVENT_TAIL_INFO; ///@brief ??????? EVENT_IVS_RIOTERDETECTION (???????)????????????????? typedef struct tagDEV_EVENT_RIOTER_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? /// ?????????????????????? /// ?????????+???+???????????????2???????14??????????5?? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BOOL bSceneImage; /// pstuSceneImage??????? SCENE_IMAGE_INFO_EX* pstuSceneImage; /// ??????? BYTE bReserved[324-POINTERSIZE]; /// ???????,???????. } DEV_EVENT_RIOTERL_INFO; ///@brief ???????? typedef enum tagEM_STEREO_ACTION_TYPE { EM_STEREO_ACTION_TYPE_UNKNOWN, /// ??? EM_STEREO_ACTION_TYPE_DRASTIC_MOTION, /// ??????? EM_STEREO_ACTION_TYPE_SINGLE_FIGHT, /// ??????? EM_STEREO_ACTION_TYPE_MULTI_FIGHT, /// ?????? }EM_STEREO_ACTION_TYPE; ///@brief ???????EVENT_IVS_FIGHTDETECTION(??????)????????????????? typedef struct tagDEV_EVENT_FIGHT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? /// ?????????????????????? /// ?????????+???+???????????????2???????14??????????5?? EM_STEREO_ACTION_TYPE emActionType; /// ???????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[240]; /// ???????,???????. } DEV_EVENT_FIGHT_INFO; ///@brief ???????EVENT_IVS_GETOUTBEDDETECTION(??????)????????????????? typedef struct tagDEV_EVENT_GETOUTBED_INFO { /* ??????? */ int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*?????????*/ DH_MSG_OBJECT stuObject; /// Object??????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_GETOUTBED_INFO; ///@brief ???????EVENT_IVS_PATROLDETECTION(????????)????????????????? typedef struct tagDEV_EVENT_PATROL_INFO { /* ??????? */ int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*?????????*/ DH_MSG_OBJECT stuObject; /// Object?????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_PATROL_INFO; ///@brief ??????? EVENT_IVS_ONDUTYDETECTION(????????)????????????????? typedef struct tagDEV_EVENT_ONDUTY_INFO { /* ??????? */ int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*?????????*/ DH_MSG_OBJECT stuObject; /// Object?????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_ONDUTY_INFO; ///@brief ??????? EVENT_IVS_ELECTROSPARKDETECTION(??????)????????????????? typedef struct tagDEV_EVENT_ELECTROSPARK_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[972]; /// ???????,???????. } DEV_EVENT_ELECTROSPARK_INFO; ///@brief ???????EVENT_IVS_FLOWSTAT(??????????)????????????????? typedef struct tagDEV_EVENT_FLOWSTAT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nNumberLeft; /// ??????????????? int nNumberRight; /// ??????????????? int nUpperLimit; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON unsigned int nOccurrenceCount; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[972]; /// ???????,???????. } DEV_EVENT_FLOWSTAT_INFO; ///@brief ???????????????? typedef enum tagEM_NUMBER_STAT_TYPE { EM_NUMBERSTAT_TYPE_UNKNOWN, /// ??? EM_NUMBERSTAT_TYPE_ENTEROVER, /// ???? EM_NUMBERSTAT_TYPE_EXITOVER, /// ??? EM_NUMBERSTAT_TYPE_INSIDEOVER, /// ?????? EM_NUMBERSTAT_TYPE_PASSOVER, /// ???? }EM_NUMBER_STAT_TYPE; ///@brief ???????EVENT_IVS_NUMBERSTAT(??????????)????????????????? typedef struct tagDEV_EVENT_NUMBERSTAT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved2[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nNumber; /// ?????????????? int nUpperLimit; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved1[2]; /// ?????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nEnteredNumber; /// ????????????????????????????? int nExitedNumber; /// ????????????????????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nAreaID; /// ????ID?????????????????????ID BOOL bIsCompliant; /// ????????????? EM_NUMBER_STAT_TYPE emType; /// ???????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? int nPassedNumber; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[800]; /// ???????,???????. } DEV_EVENT_NUMBERSTAT_INFO; ///@brief ???????EVENT_IVS_CROSSFENCEDETECTION(??????????)????????????????? typedef struct tagDEV_EVENT_CROSSFENCEDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nUpstairsLinePointNumber; /// ?????????????? DH_POINT stuUpstairsLine[DH_MAX_DETECT_LINE_NUM]; /// ???????????? int nDownstairsLinePointNumber; /// ??????????????? DH_POINT stuDownstairsLine[DH_MAX_DETECT_LINE_NUM]; /// ????????????? int nTrackLineNum; /// ??????????????? DH_POINT TrackLine[DH_MAX_TRACK_LINE_NUM]; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bDirection; /// ??????????, 0-????????, 1-???????? BYTE byReserved[1]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[616]; /// ???????,???????. } DEV_EVENT_CROSSFENCEDETECTION_INFO; ///@brief ???????EVENT_IVS_INREGIONDETECTION(???????????)????????????????? typedef struct tagDEV_EVENT_INREGIONDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????? int nTrackNum; /// ????(????????????????) DH_POLY_POINTS stuTrackInfo[DH_MAX_OBJECT_LIST]; /// ?????(????????????) int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[1016]; /// ???????,???????. } DEV_EVENT_INREGIONDETECTION_INFO; ///@brief ???????EVENT_IVS_TAKENAWAYDETECTION(??????????)????????????????? typedef struct tagDEV_EVENT_TAKENAWAYDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? short nPreserID; /// ?????????????????1???????????????? char szPresetName[64]; /// ???????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[418]; /// ???????,???????. } DEV_EVENT_TAKENAWAYDETECTION_INFO; ///@brief ??????? EVENT_IVS_VIDEOABNORMALDETECTION(????????)????????????????? typedef struct tagDEV_EVENT_VIDEOABNORMALDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bType; /// ??????, 255-??????????????????????????0-??????, 1-???????, 2-????????, 3-???????????????????, 4-????, 5-????, 6-?????, 7-???????? /// 8-?????? , 9-????????? , 10-????????? 11-?????? , 12-?????? , 13-?????? , 14-?????? , 15-??????, 16-??????? 17-???????,18-?????????? BYTE byReserved[1]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved2[1024]; /// ??????? } DEV_EVENT_VIDEOABNORMALDETECTION_INFO; ///@brief ???????EVENT_IVS_PARKINGDETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_PARKINGDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? char szCustomParkNo[64]; /// ???????? NET_PRESET_POSITION stPosition; /// ?????????????? ?????????????????int???? /// ?????????????????????[0,3599]?????0???359.9???????????10??????? /// ?????????????????????[-1800,1800]?????-180.0???+180.0???????????10??????? /// ???????????????????????[0,127]?????????????????????? UINT nCurChannelHFOV; /// ????????????????????????????????????100 UINT nCurChannelVFOV; /// ?????????????????????????????????????100 SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? UINT nObjectBoatsNum; /// ?????????? NET_BOAT_OBJECT stuBoatObjects[100]; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[400]; /// ???????,???????. } DEV_EVENT_PARKINGDETECTION_INFO; #define HDBJ_MAX_OBJECTS_NUM 200 /// ????????????? ///@brief ???????EVENT_IVS_SHOPPRESENCE(?????????????)????????????????? typedef struct tagDEV_EVENT_SHOPPRESENCE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????????????stuObjects?????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[DH_COMMON_STRING_64]; /// ????????????????? EM_EVENT_LEVEL emEventLevel; /// ??????? char szShopAddress[DH_COMMON_STRING_256]; /// ?????? UINT nViolationDuration; /// ????????????????????????0????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE byReserved2[1248-POINTERSIZE*3]; /// ??????? } DEV_EVENT_SHOPPRESENCE_INFO; ///@brief ???????EVENT_IVS_WASTEDUMPED(?????????????)????????????????? typedef struct tagDEV_EVENT_WASTEDUMPED_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[DH_COMMON_STRING_64]; /// ????????????????? EM_EVENT_LEVEL emEventLevel; /// ??????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved2[508-POINTERSIZE]; /// ???????,???????. } DEV_EVENT_WASTEDUMPED_INFO; ///@brief ???????EVENT_IVS_ABNORMALRUNDETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_ABNORMALRUNDETECTION { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? double dbSpeed; /// ??????????,km/h double dbTriggerSpeed; /// ???????,km/h int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nTrackLineNum; /// ??????????????? DH_POINT TrackLine[DH_MAX_TRACK_LINE_NUM]; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bRunType; /// ??????????, 0-???????, 1-??????, 2-?????? BYTE byReserved[1]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[604]; /// ???????,???????. } DEV_EVENT_ABNORMALRUNDETECTION_INFO; ///@brief ???????EVENT_IVS_RETROGRADEDETECTION(??????????)????????????????? typedef struct tagDEV_EVENT_RETROGRADEDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nTrackLineNum; /// ??????????????? DH_POINT TrackLine[DH_MAX_TRACK_LINE_NUM]; /// ????????? int nDirectionPointNum; /// ???????????????? DH_POINT stuDirections[DH_MAX_DETECT_LINE_NUM]; /// ????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[604]; /// ???????,???????. } DEV_EVENT_RETROGRADEDETECTION_INFO; ///@brief ?????????????? typedef enum tagEM_DEV_EVENT_FACEDETECT_SEX_TYPE { EM_DEV_EVENT_FACEDETECT_SEX_TYPE_UNKNOWN, /// ??? EM_DEV_EVENT_FACEDETECT_SEX_TYPE_MAN, /// ???? EM_DEV_EVENT_FACEDETECT_SEX_TYPE_WOMAN, /// ??? }EM_DEV_EVENT_FACEDETECT_SEX_TYPE; ///@brief ????????? typedef struct tagNET_EULER_ANGLE { int nPitch; /// ?????? int nYaw; /// ????? int nRoll; /// ?????? } NET_EULER_ANGLE; ///@brief ??????????? typedef struct tagNET_ANGEL_RANGE { int nMin; /// ???????? int nMax; /// ??????? } NET_ANGEL_RANGE; ///@brief ?????????????????????? typedef struct tagNET_FACE_ORIGINAL_SIZE { UINT nWidth; /// ????????? UINT nHeight; /// ??????? }NET_FACE_ORIGINAL_SIZE; ///@brief ??????? typedef struct tagNET_FACE_DATA { EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??? int nAge; /// ????,-1???????????????? unsigned int nFeatureValidNum; /// ???????????????????,?? emFeature ?????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emFeature[DH_MAX_FACEDETECT_FEATURE_NUM]; /// ???????????,?? nFeatureValidNum ?????? char szReserved1[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ????? BYTE bReserved1[4]; /// ??????? NET_EULER_ANGLE stuFaceCaptureAngle; /// ???????????????????, nPitch:????????????, nYaw?????????????, nRoll????????????????????? /// ??????????[-90,90], ???????????999?????????????? UINT nFaceQuality; /// ?????????????? int nFaceAlignScore; /// ????????????,???? 0~100,-1?????? int nFaceClarity; /// ????????????,???? 0~10000,-1?????? double dbTemperature; /// ???, bAnatomyTempDetect ?TRUE????? BOOL bAnatomyTempDetect; /// EM_HUMAN_TEMPERATURE_UNIT emTemperatureUnit; /// ??????, bAnatomyTempDetect ?TRUE????? BOOL bIsOverTemp; /// bAnatomyTempDetect ?TRUE????? BOOL bIsUnderTemp; /// bAnatomyTempDetect ?TRUE????? NET_FACE_ORIGINAL_SIZE stuOriginalSize; /// ??????????????????????, ?????0????? EM_GLASS_STATE_TYPE emGlass; /// ??????? int nMultiFace; /// R?????? float fRatio; /// R?????????????? int nEyesDist; /// ???????? int nPitchAngle; /// R?????,??????(0??-90??) int nYawAngle; /// R?????,???????????(0??-90??) int nRollAngle; /// R?????,??????(0??-90??) BYTE bReserved[40]; /// ???????,???????. } NET_FACE_DATA; ///@brief ???????? typedef struct tagNET_FEATURE_VECTOR { DWORD dwOffset; /// ?????????????????????????????? DWORD dwLength; /// ????????????????????:??? BOOL bFeatureEnc; /// ?????????????? BYTE byReserved[116]; /// ???? }NET_FEATURE_VECTOR; ///@brief ???????????????????? typedef enum tagEM_FACE_DETECT_STATUS { EM_FACE_DETECT_UNKNOWN, /// ??? EM_FACE_DETECT_APPEAR, /// ???? EM_FACE_DETECT_INPICTURE, /// ??????? EM_FACE_DETECT_EXIT, /// ?? } EM_FACE_DETECT_STATUS; ///@brief ??????? typedef struct tagNET_PASSERBY_INFO { char szPasserbyUID[MAX_COMMON_STRING_32]; /// ???????????? char szPasserbyGroupId[MAX_COMMON_STRING_64]; /// ?????ID char szPasserbyGroupName[MAX_COMMON_STRING_128]; /// ????????? BYTE byReserved[128]; /// ???? } NET_PASSERBY_INFO; ///@brief ????????????????????? typedef struct tagNET_FACECOMPARISON_PTZ_INFO { char szPresetName[64]; /// ??????????????????? DWORD dwPresetNumber; /// ????????????????? BYTE byReserved1[4]; /// ?????? BYTE byReserved[256]; /// ??????? }NET_FACECOMPARISON_PTZ_INFO; ///@brief ?????? typedef struct tagNET_CUSTOM_PROJECTS_INFO { NET_GPS_INFO stuGPSInfo; /// GPS??????? NET_FACECOMPARISON_PTZ_INFO stuFaceComparisonPTZInfo; /// ????????????????????? char szPlateNumber[64]; /// ????????????? BOOL bIsAlarm; /// ???? int nStayEvent; /// ???????? 0-??? 1-???????? 2-?????? int nWanderEvent; /// ??????? 0-??? 1-??????? 2-????? BYTE byReserved[1012]; /// ??????? }NET_CUSTOM_PROJECTS_INFO; ///@brief ???????EVENT_IVS_FACERECOGNITION(??????)????????????????? typedef struct tagDEV_EVENT_FACERECOGNITION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? DH_MSG_OBJECT stuObject; /// ????????? int nCandidateNum; /// ????????????????????? CANDIDATE_INFO stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ???????????????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; /// ???? BOOL bGlobalScenePic; /// ?????????? DH_PIC_INFO stuGlobalScenePicInfo; /// ???????? char szSnapDevAddress[MAX_PATH]; /// ???????????????,?????????37?? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_FACE_DATA stuFaceData; /// ??????? char szUID[DH_COMMON_STRING_32]; /// ???????????????????????? NET_FEATURE_VECTOR stuFeatureVector; /// ???????? char szFeatureVersion[32]; /// ?????????? EM_FACE_DETECT_STATUS emFaceDetectStatus; /// ???????????????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? NET_PASSERBY_INFO stuPasserbyInfo; /// ???????? unsigned int nStayTime; /// ?????????? ???????? NET_GPS_INFO stuGPSInfo; /// GPS???(?? stuCustomProjects??? stuGPSInfo??????) char szCameraID[64]; /// ??????? DH_RESOLUTION_INFO stuResolution; /// ??????????? int nPerFlag; /// ICC???????, ??????????, -1:???, 0:??????, 1:????????, 2:????? BYTE bReserved[360]; /// ???????,???????. int nRetCandidatesExNum; /// ???????????????????????????? CANDIDATE_INFOEX stuCandidatesEx[DH_MAX_CANDIDATE_NUM]; /// ??????????????????????? char szSerialUUID[22]; /// ????????ID?????? /// ?????????2??%d%d:01-??????,02-??,03-???,99-????; /// ????14??YYYYMMDDhhmmss:???????????;??5??%u%u%u%u%u??????ID????00001 BYTE byReserved[2]; /// ???? NET_CUSTOM_PROJECTS_INFO stuCustomProjects; /// ?????? BOOL bIsDuplicateRemove; /// ?????????????????????TRUE?????? FALSE????????? int nAbTrainCondition; /// ???????????????????????, 0:??? 1: ???????????? 2: ????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? DH_MSG_OBJECT_SUPPLEMENT stuObjectSupplement; /// ?????????G????? UINT nMode; /// 0-??? 1-??????????? SCENE_IMAGE_INFO stuThumImageInfo; /// ????????????????????? SCENE_IMAGE_INFO stuHumanImageInfo; /// ????????? char szVideoPath[256]; /// ??????????FTP??????? BOOL bIsHighFrequencyAlarm; /// ????????????? char szFrequencyAlarmName[32]; /// ???????????, ??bIsHighFrequencyAlarm?????TRUE????????????????????????? double PTS; /// ????(?????????) char szSubCode[32]; /// ??????????????????? int nRegionCode; /// ??????? char byReserved3[236]; /// ??????? }DEV_EVENT_FACERECOGNITION_INFO; ///@brief ???????EVENT_IVS_DENSITYDETECTION(????????)??????????????? typedef struct tagDEV_EVENT_DENSITYDETECTTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? int nUnit; /// ????????????(0-Level,1-Percent) int nValue; /// ???????????Level?????0~3???????(?????k???k??????????)?????Percent?????0~100 NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[608-POINTERSIZE]; /// ???????,???????. }DEV_EVENT_DENSITYDETECTION_INFO; ///@brief ??????? EVENT_IVS_QUEUEDETECTION(??????????)??????????????? typedef struct tagDEV_EVENT_QUEUEDETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved2[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved1[2]; /// ???????,???????. BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DH_POINT stuDetectLine[2]; /// ???????? unsigned int nOccurrenceCount; /// ????????????? BYTE bReserved[1012]; /// ???????,???????. }DEV_EVENT_QUEUEDETECTION_INFO; ///@brief ???????EVENT_IVS_TRAFFICCONTROL(??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFICCONTROL_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[932]; /// ???????,???????. } DEV_EVENT_TRAFFICCONTROL_INFO; #define DH_EVENT_MAX_CARD_NUM 16 /// ????????????????????? #define DH_EVENT_CARD_LEN 36 /// ?????????? ///@brief ???????????????? typedef struct tagEVENT_CARD_INFO { char szCardNumber[DH_EVENT_CARD_LEN]; /// ??????????? BYTE bReserved[32]; /// ???????,???????. }EVENT_CARD_INFO; ///@brief ????????? typedef enum tagEM_OPEN_STROBE_STATE { NET_OPEN_STROBE_STATE_UNKOWN, /// ????? NET_OPEN_STROBE_STATE_CLOSE, /// ??? NET_OPEN_STROBE_STATE_AUTO, /// ?????? NET_OPEN_STROBE_STATE_MANUAL, /// ?????? }EM_OPEN_STROBE_STATE; ///@brief NTP????? typedef enum tagEM_NTP_STATUS { NET_NTP_STATUS_UNKNOWN = 0 , NET_NTP_STATUS_DISABLE , NET_NTP_STATUS_SUCCESSFUL , NET_NTP_STATUS_FAILED , }EM_NTP_STATUS; #define COMMON_SEAT_MAX_NUMBER 8 /// ??????????????? ///@brief ???????? typedef enum tagEM_COMMON_SEAT_TYPE { COMMON_SEAT_TYPE_UNKNOWN = 0, /// ????? COMMON_SEAT_TYPE_MAIN = 1, /// ????? COMMON_SEAT_TYPE_SLAVE = 2, /// ????? }EM_COMMON_SEAT_TYPE; ///@brief ?????? typedef struct tagEVENT_COMM_STATUS { BYTE bySmoking; /// ??????, 0:???, 1:????, 2:?????? BYTE byCalling; /// ??????, 0:???, 1:????, 2:?????? char szReserved[14]; /// ?????? }EVENT_COMM_STATUS; ///@brief ??????? typedef enum tagNET_SAFEBELT_STATE { SS_NUKNOW = 0 , ///??? SS_WITH_SAFE_BELT , ///???????? SS_WITHOUT_SAFE_BELT , ///???????? }NET_SAFEBELT_STATE; ///@brief ???????? typedef enum tagNET_SUNSHADE_STATE { SS_NUKNOW_SUN_SHADE = 0 , /// ??? SS_WITH_SUN_SHADE, /// ???????? SS_WITHOUT_SUN_SHADE, /// ???????? }NET_SUNSHADE_STATE; ///@brief ????????????? typedef enum tagEM_CALL_ACTION_TYPE { EM_CALL_ACTION_TYPE_UNKNOWN, /// ??? EM_CALL_ACTION_TYPE_CALL_BY_EAR, /// ???? EM_CALL_ACTION_TYPE_CALL_HAND_HOLD, /// ??? }EM_CALL_ACTION_TYPE; ///@brief ??????????? typedef struct tagEVENT_COMM_SEAT { BOOL bEnable; /// ???????????? EM_COMMON_SEAT_TYPE emSeatType; /// ????????, 0:?????; 1:?????; 2:????? EVENT_COMM_STATUS stStatus; /// ?????? NET_SAFEBELT_STATE emSafeBeltStatus; /// ??????? NET_SUNSHADE_STATE emSunShadeStatus; /// ???????? EM_CALL_ACTION_TYPE emCallAction; /// ???????? UINT nSafeBeltConf; /// ????????? UINT nPhoneConf; /// ????????? UINT nSmokeConf; /// ????????? char szReserved[8]; /// ?????? }EVENT_COMM_SEAT; ///@brief ??????????? typedef enum tagEM_COMM_ATTACHMENT_TYPE { COMM_ATTACHMENT_TYPE_UNKNOWN = 0, /// ??????? COMM_ATTACHMENT_TYPE_FURNITURE = 1, /// ??? COMM_ATTACHMENT_TYPE_PENDANT = 2, /// ??? COMM_ATTACHMENT_TYPE_TISSUEBOX = 3, /// ????? COMM_ATTACHMENT_TYPE_DANGER = 4, /// ????? COMM_ATTACHMENT_TYPE_PERFUMEBOX = 5, /// ??? }EM_COMM_ATTACHMENT_TYPE; ///@brief ??????? typedef struct tagEVENT_COMM_ATTACHMENT { EM_COMM_ATTACHMENT_TYPE emAttachmentType; /// ??????? NET_RECT stuRect; /// ???? UINT nConf; /// ????? BYTE bReserved[16]; /// ?????? }EVENT_COMM_ATTACHMENT; ///@brief ?????????? typedef struct tagEVENT_PIC_INFO { DWORD nOffset; /// ??????????????? DWORD nLength; /// ???????????????? UINT nIndexInData; /// ???????????????????? }EVENT_PIC_INFO; ///@brief ??????????? typedef enum tagEM_VEHICLE_TYPE { EM_VEHICLE_TYPE_UNKNOWN, /// ??? EM_VEHICLE_TYPE_PASSENGERCAR1, /// ??1 EM_VEHICLE_TYPE_TRUCK1, /// ??1 EM_VEHICLE_TYPE_PASSENGERCAR2, /// ??2 EM_VEHICLE_TYPE_TRUCK2, /// ??2 EM_VEHICLE_TYPE_PASSENGERCAR3, /// ??3 EM_VEHICLE_TYPE_TRUCK3, /// ??3 EM_VEHICLE_TYPE_PASSENGERCAR4, /// ??4 EM_VEHICLE_TYPE_TRUCK4, /// ??4 EM_VEHICLE_TYPE_PASSENGERCAR5, /// ??5 EM_VEHICLE_TYPE_TRUCK5, /// ??5 }EM_VEHICLE_TYPE; ///@brief ???????? typedef enum tagEM_SNAPCATEGORY { EM_SNAPCATEGORY_MOTOR, /// ?????? EM_SNAPCATEGORY_NONMOTOR, /// ??????? }EM_SNAPCATEGORY; ///@brief ??????????? typedef enum tagEM_STANDARD_VEHICLE_TYPE { EM_STANDARD_VEHICLE_UNKNOWN, /// ??? EM_STANDARD_VEHICLE_MOTOR, /// ?????? EM_STANDARD_VEHICLE_BUS, /// ?????? EM_STANDARD_VEHICLE_UNLICENSED_MOTOR, /// ????????? EM_STANDARD_VEHICLE_LARGE_CAR, /// ???????? EM_STANDARD_VEHICLE_MICRO_CAR, /// ???????? EM_STANDARD_VEHICLE_EMBASSY_CAR, /// ??????? EM_STANDARD_VEHICLE_MARGINAL_CAR, /// ??????? EM_STANDARD_VEHICLE_AREAOUT_CAR, /// ???????? EM_STANDARD_VEHICLE_FOREIGN_CAR, /// ?????? EM_STANDARD_VEHICLE_FARM_TRANS_CAR, /// ??????? EM_STANDARD_VEHICLE_TRACTOR, /// ?????? EM_STANDARD_VEHICLE_TRAILER, /// ??? EM_STANDARD_VEHICLE_COACH_CAR, /// ???????? EM_STANDARD_VEHICLE_TRIAL_CAR, /// ???????? EM_STANDARD_VEHICLE_TEMPORARYENTRY_CAR, /// ????????? EM_STANDARD_VEHICLE_TEMPORARYENTRY_MOTORCYCLE, /// ???????? EM_STANDARD_VEHICLE_TEMPORARY_STEER_CAR, /// ???????? EM_STANDARD_VEHICLE_LARGE_TRUCK, /// ????? EM_STANDARD_VEHICLE_MID_TRUCK, /// ?????? EM_STANDARD_VEHICLE_MICRO_TRUCK, /// ?????? EM_STANDARD_VEHICLE_MICROBUS, /// ????? EM_STANDARD_VEHICLE_SALOON_CAR, /// ???? EM_STANDARD_VEHICLE_CARRIAGE, /// ?????? EM_STANDARD_VEHICLE_MINI_CARRIAGE, /// ?????? EM_STANDARD_VEHICLE_SUV_MPV, /// SUV????MPV EM_STANDARD_VEHICLE_SUV, /// SUV EM_STANDARD_VEHICLE_MPV, /// MPV EM_STANDARD_VEHICLE_PASSENGER_CAR, /// ??? EM_STANDARD_VEHICLE_MOTOR_BUS, /// ???? EM_STANDARD_VEHICLE_MID_PASSENGER_CAR, /// ????? EM_STANDARD_VEHICLE_MINI_BUS, /// ????? EM_STANDARD_VEHICLE_PICKUP, /// ????? EM_STANDARD_VEHICLE_OILTANK_TRUCK, /// ???? } EM_STANDARD_VEHICLE_TYPE; ///@brief ??????? typedef enum tagEM_RADAR_DETECTION_VEHICLE_TYPE { EM_RADAR_DETECTION_VEHICLE_TYPE_UNKNOWN, /// ??? EM_RADAR_DETECTION_VEHICLE_TYPE_MID_PASSENGER_CAR, /// ??????? EM_RADAR_DETECTION_VEHICLE_TYPE_MOTOR_BUS, /// ???? EM_RADAR_DETECTION_VEHICLE_TYPE_MICRO_TRUCK, /// ?????? EM_RADAR_DETECTION_VEHICLE_TYPE_MID_TRUCK, /// ??????? EM_RADAR_DETECTION_VEHICLE_TYPE_LARGE_TRUCK, /// ??????? EM_RADAR_DETECTION_VEHICLE_TYPE_SUPER_TRUCK, /// ?????? EM_RADAR_DETECTION_VEHICLE_TYPE_CONTAINER_CAR, /// ????? EM_RADAR_DETECTION_VEHICLE_TYPE_MOTORCYCLE, /// ????? EM_RADAR_DETECTION_VEHICLE_TYPE_TRACTOR, /// ?????? }EM_RADAR_DETECTION_VEHICLE_TYPE; ///@brief ????????????????????????????????????????? typedef enum tagEM_OVERSEA_VEHICLE_CATEGORY_TYPE { EM_OVERSEA_VEHICLE_CATEGORY_UNKNOWN, /// ??? EM_OVERSEA_VEHICLE_CATEGORY_MOTORCYCLE, ///????? EM_OVERSEA_VEHICLE_CATEGORY_LIGHT_GOODS_VEHICLE, ///??????? EM_OVERSEA_VEHICLE_CATEGORY_COMPANY_VEHICLE, ///????????? EM_OVERSEA_VEHICLE_CATEGORY_PRIVATE_VEHICLE, ///?????????? EM_OVERSEA_VEHICLE_CATEGORY_TAXI, ///TAXI???????? EM_OVERSEA_VEHICLE_CATEGORY_TRAILER, ///??? EM_OVERSEA_VEHICLE_CATEGORY_ENGINEERING_PLANT_VEHICLE, ///????? EM_OVERSEA_VEHICLE_CATEGORY_VERY_HEAVY_GOODS_VEHICLE, ///??????? EM_OVERSEA_VEHICLE_CATEGORY_HEAVY_GOODS_VEHICLE, ///????? EM_OVERSEA_VEHICLE_CATEGORY_PUBLIC_BUS, ///????BUS EM_OVERSEA_VEHICLE_CATEGORY_PRIVATE_BUS, ///??BUS EM_OVERSEA_VEHICLE_CATEGORY_SPECIAL_VEHICLE, ///?????? }EM_OVERSEA_VEHICLE_CATEGORY_TYPE; ///@brief ????????????????????? typedef struct tagNET_EVENT_RADAR_INFO { float fCoordinateX; /// X??????(???????)?????????? float fCoordinateY; /// Y??????????????????????? float fAccelerationX; /// ?????????????ax, ???????????????????; ??????????????????, ??????????????????; ?????m/s2 float fAccelerationY; /// ??????????????ay????????????????????????????????????????????????????????????????m/s2 BYTE bReserved[16]; /// ?????? }NET_EVENT_RADAR_INFO; ///@brief ?????????????GPS??? typedef struct tagNET_EVENT_GPS_INFO { double dLongitude; /// ?????????????,????????????????????????[-180,180] double dLatitude; /// ?????????????,????????????????????????[-90,90] BYTE bReserved[24]; /// ?????? }NET_EVENT_GPS_INFO; ///@brief ????????? typedef struct tagNET_EXTRA_PLATES { UINT nOffset; /// ?????????????????????????????? UINT nLength; /// ?????????????????? char szText[64]; /// ?????????UTF8??? EM_NET_PLATE_TYPE emCategory; /// ???????? EM_NET_PLATE_COLOR_TYPE emColor; /// ??????? NET_RECT stuArea; /// ???????????????????????????????????????????????????????????? char bReserved[32]; /// ?????? }NET_EXTRA_PLATES; ///@brief ??????? typedef struct tagEVENT_COMM_INFO { EM_NTP_STATUS emNTPStatus; /// NTP????? int nDriversNum; /// ????????? DH_MSG_OBJECT_EX *pstDriversInfo; /// ??????????? char* pszFilePath; /// ??????????sd?????????????,?NULL?,?????????? char* pszFTPPath; /// ??????????ftp???????????? char* pszVideoPath; /// ?????????????????????????????FTP??????? EVENT_COMM_SEAT stCommSeat[COMMON_SEAT_MAX_NUMBER]; /// ???????? int nAttachmentNum; /// ??????????? EVENT_COMM_ATTACHMENT stuAttachment[NET_MAX_ATTACHMENT_NUM]; /// ?????????? int nAnnualInspectionNum; /// ????????? NET_RECT stuAnnualInspection[NET_MAX_ANNUUALINSPECTION_NUM]; /// ????? float fHCRatio; /// HC???????????????%/1000000 float fNORatio; /// NO???????????????%/1000000 float fCOPercent; /// CO??????????????% ??0~100 float fCO2Percent; /// CO2??????????????% ??0~100 float fLightObscuration; /// ?????????????% ??0~100 int nPictureNum; /// ???????? EVENT_PIC_INFO stuPicInfos[NET_MAX_EVENT_PIC_NUM]; /// ??????? float fTemperature; /// ????,????????? int nHumidity; /// ?????????? float fPressure; /// ????,????Kpa float fWindForce; /// ?????,????m/s UINT nWindDirection; /// ????,??????,????:[0,360] float fRoadGradient; /// ????????,?????? float fAcceleration; /// ??????,????:m/s2 NET_RFIDELETAG_INFO stuRFIDEleTagInfo; /// RFID ???????????? EVENT_PIC_INFO stuBinarizedPlateInfo; /// ??????????? EVENT_PIC_INFO stuVehicleBodyInfo; /// ??????????? EM_VEHICLE_TYPE emVehicleTypeInTollStation; /// ??????????? EM_SNAPCATEGORY emSnapCategory; /// ??????????????????? int nRegionCode; /// ????????????????,???-1???????? EM_VEHICLE_TYPE_BY_FUNC emVehicleTypeByFunc; /// ????????????????? EM_STANDARD_VEHICLE_TYPE emStandardVehicleType; /// ??????????? UINT nExtraPlateCount; /// ?????????? char szExtraPlateNumber[3][32]; /// ????????? EM_OVERSEA_VEHICLE_CATEGORY_TYPE emOverseaVehicleCategory; /// ??????????????????? char szProvince[64]; /// ???????????????????????? NET_EVENT_RADAR_INFO stuRadarInfo; /// ?????????????????????,????????????????????????X????????????Y?????? NET_EVENT_GPS_INFO stuGPSInfo; /// ?????????????GPS??? NET_EXTRA_PLATES stuExtraPlates[2]; /// ????????????????????????????? int nExtraPlatesCount; /// ?????????????? UINT nPlateRecogniseConf; ///???????????? UINT nVecPostureConf; ///???????????? UINT nVecColorConf; ///???????????? UINT nSpecialVehConf; ///???????????????? UINT nIsLargeAngle; ///?????????????? UINT nIsRelatedPlate; ///???????????????????????????? UINT nDetectConf; ///?????????????? UINT nClarity; ///?????????????? UINT nCompleteScore; ///???????????????? UINT nQeScore; ///????????????? float fSpeedFloat; /// ????????????????km/h double dbHeadingAngle; /// ?????, ????????????????????????????????????????; ???? 0~360????????,???????? UINT nDriverNum; /// ?????????????????? BYTE bReserved[112]; /// ?????? char szCountry[20]; /// ???? }EVENT_COMM_INFO; ///@brief ???????EVENT_IVS_TRAFFICACCIDENT(?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFICACCIDENT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON EVENT_TRAFFIC_CAR_PART_INFO stuTrafficCarPartInfo; /// ?????????????? UINT nLane; /// ?????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? EVENT_COMM_INFO *pstuCommInfo; /// ??????? BYTE bReserved[456-2*POINTERSIZE]; /// ???????,???????. } DEV_EVENT_TRAFFICACCIDENT_INFO; ///@brief ?????? typedef enum tagEM_TEMPERATURE_UNIT { EM_TEMPERATURE_UNKNOWN = -1, /// ??? EM_TEMPERATURE_CENTIGRADE, /// ????? EM_TEMPERATURE_FAHRENHEIT, /// ????? EM_TEMPERATURE_KELVIN, /// ?????? } EM_TEMPERATURE_UNIT; ///@brief ????????????? typedef struct tagEVENT_CUSTOM_WEIGHT_INFO { DWORD dwRoughWeight; /// ???,?????????????????????KG DWORD dwTareWeight; /// ???,?????????????KG DWORD dwNetWeight; /// ????,?????????????KG BYTE bReserved[28]; /// ?????? }EVENT_CUSTOM_WEIGHT_INFO; ///@brief ???????????? typedef struct tagNET_RADAR_FREE_STREAM { TP_U64 nABSTime; /// 1??1??1??0????????????? int nVehicleID; /// ????ID UINT unOBUMAC; /// OBU??MAC??? }NET_RADAR_FREE_STREAM; ///@brief ??????? typedef struct tagNET_CUSTOM_MEASURE_TEMPER { float fLeft; /// ??????????? float fRight; /// ??????????? float fHead; /// ?????????????????? (???) EM_TEMPERATURE_UNIT emUnit; /// ?????? }NET_CUSTOM_MEASURE_TEMPER; ///@brief ???????????????????????Custom?? typedef struct tagEVENT_JUNCTION_CUSTOM_INFO { EVENT_CUSTOM_WEIGHT_INFO stuWeightInfo; /// ??????? DWORD nCbirFeatureOffset; /// ??????????????? ????????????????????????,?????????? ????? DWORD nCbirFeatureLength; /// ???????????????? DWORD dwVehicleHeadDirection; /// ??????? 0:??? 1:?? 2:?? 3:?? UINT nAvailableSpaceNum; /// ????????????????? NET_RADAR_FREE_STREAM stuRadarFreeStream; /// ???????????? NET_CUSTOM_MEASURE_TEMPER stuMeasureTemper; /// ??????? BOOL bCbirFeatureEnc; /// ?????????????????? UINT nRadarTriggerLineNo; /// ????????????? 1 ????????1, 2 ????????2, 0 : ??? BYTE bReserved[4]; /// ?????? }EVENT_JUNCTION_CUSTOM_INFO; ///@brief ???????? typedef struct tagNET_SEAT_INFO { NET_RECT stuFaceRect; /// ???????????(8192?????) BYTE bySunShade; /// ???????? 0: ??? 1?????????? 2?????????? BYTE byDriverCalling; /// ?????? 0: ??? 1???????? 2?????? BYTE byDriverSmoking; /// ?????? 0: ??? 1???????? 2?????? BYTE bySafeBelt; /// ??????? 0: ??? 1?????????? 2???????? BYTE byReserved[32]; /// ??????? }NET_SEAT_INFO; ///@brief ??????? typedef struct tagNET_VEHICLE_ATTACH { int nType; /// ???????? 0-??? 1-????? 2-??? 3-????? 4-????? NET_RECT stuBoundingBox; /// ?????????(8192?????) BYTE byReserved[32]; }NET_VEHICLE_ATTACH; ///@brief ??????? typedef struct tagFACE_SCENE_IMAGE { unsigned int nOffSet; /// ??????????????????? unsigned int nLength; /// ??????,??????? unsigned int nWidth; /// ??????(????) unsigned int nHeight; /// ?????(????) UINT nIndexInData; /// ???????????????????? BYTE byReserved[52]; /// ?????? } FACE_SCENE_IMAGE; ///@brief ??????? typedef enum tagEM_OBJECT_COLOR_TYPE { EM_OBJECT_COLOR_TYPE_UNKNOWN, /// ??? EM_OBJECT_COLOR_TYPE_WHITE, /// ??? EM_OBJECT_COLOR_TYPE_ORANGE, /// ??? EM_OBJECT_COLOR_TYPE_PINK, /// ??? EM_OBJECT_COLOR_TYPE_BLACK, /// ??? EM_OBJECT_COLOR_TYPE_RED, /// ??? EM_OBJECT_COLOR_TYPE_YELLOW, /// ??? EM_OBJECT_COLOR_TYPE_GRAY, /// ??? EM_OBJECT_COLOR_TYPE_BLUE, /// ??? EM_OBJECT_COLOR_TYPE_GREEN, /// ??? EM_OBJECT_COLOR_TYPE_PURPLE, /// ??? EM_OBJECT_COLOR_TYPE_BROWN, /// ??? EM_OBJECT_COLOR_TYPE_SLIVER, /// ??? EM_OBJECT_COLOR_TYPE_DARKVIOLET, /// ????????? EM_OBJECT_COLOR_TYPE_MAROON, /// ??? EM_OBJECT_COLOR_TYPE_DIMGRAY, /// ????? EM_OBJECT_COLOR_TYPE_WHITESMOKE, /// ????? EM_OBJECT_COLOR_TYPE_DARKORANGE, /// ???? EM_OBJECT_COLOR_TYPE_MISTYROSE, /// ????? EM_OBJECT_COLOR_TYPE_TOMATO, /// ?????? EM_OBJECT_COLOR_TYPE_OLIVE, /// ???? EM_OBJECT_COLOR_TYPE_GOLD, /// ??? EM_OBJECT_COLOR_TYPE_DARKOLIVEGREEN, /// ???????? EM_OBJECT_COLOR_TYPE_CHARTREUSE, /// ????? EM_OBJECT_COLOR_TYPE_GREENYELLOW, /// ???? EM_OBJECT_COLOR_TYPE_FORESTGREEN, /// ?????? EM_OBJECT_COLOR_TYPE_SEAGREEN, /// ??????? EM_OBJECT_COLOR_TYPE_DEEPSKYBLUE, /// ??????? EM_OBJECT_COLOR_TYPE_CYAN, /// ??? EM_OBJECT_COLOR_TYPE_OTHER, /// ?????? }EM_OBJECT_COLOR_TYPE; ///@brief ??????? typedef enum tagEM_HAS_GLASS { EM_HAS_GLASS_UNKNOWN, /// ??? EM_HAS_GLASS_NO, /// ???? EM_HAS_GLASS_NORMAL, /// ???????? EM_HAS_GLASS_SUN, /// ???????? EM_HAS_GLASS_BLACK, /// ???????? } EM_HAS_GLASS; ///@brief ???/?????? typedef enum tagEM_NONMOTOR_OBJECT_STATUS { EM_NONMOTOR_OBJECT_STATUS_UNKNOWN, /// ????? EM_NONMOTOR_OBJECT_STATUS_NO, /// ?? EM_NONMOTOR_OBJECT_STATUS_YES, /// ?? }EM_NONMOTOR_OBJECT_STATUS; ///@brief ???? typedef enum tagEM_EMOTION_TYPE { EM_EMOTION_TYPE_UNKNOWN, /// ??? EM_EMOTION_TYPE_NORMAL, /// ???/???? EM_EMOTION_TYPE_SMILE, /// ??? EM_EMOTION_TYPE_ANGER, /// ??? EM_EMOTION_TYPE_SADNESS, /// ???? EM_EMOTION_TYPE_DISGUST, /// ??? EM_EMOTION_TYPE_FEAR, /// ???? EM_EMOTION_TYPE_SURPRISE, /// ???? EM_EMOTION_TYPE_NEUTRAL, /// ???? EM_EMOTION_TYPE_LAUGH, /// ???? EM_EMOTION_TYPE_HAPPY, /// ???? EM_EMOTION_TYPE_CONFUSED, /// ???? EM_EMOTION_TYPE_SCREAM, /// ??? EM_EMOTION_TYPE_CALMNESS, /// ??? }EM_EMOTION_TYPE; ///@brief ?????? typedef enum tagEM_CLOTHES_TYPE { EM_CLOTHES_TYPE_UNKNOWN, ///??? EM_CLOTHES_TYPE_LONG_SLEEVE, ///???? EM_CLOTHES_TYPE_SHORT_SLEEVE, ///???? EM_CLOTHES_TYPE_TROUSERS, ///???? EM_CLOTHES_TYPE_SHORTS, ///??? EM_CLOTHES_TYPE_SKIRT, ///??? EM_CLOTHES_TYPE_WAISTCOAT, ///???? EM_CLOTHES_TYPE_MINIPANTS, ///????? EM_CLOTHES_TYPE_MINISKIRT, ///????? }EM_CLOTHES_TYPE; ///@brief ?????????? typedef enum tagEM_NEWUPCLOTHES_TYPE { EM_NEWUPCLOTHES_TYPE_UNKNOWN, ///??? EM_NEWUPCLOTHES_TYPE_LONG_SLEEVE, ///???? EM_NEWUPCLOTHES_TYPE_SHORT_SLEEVE, ///???? EM_NEWUPCLOTHES_TYPE_LONGCOAT, ///??????? EM_NEWUPCLOTHES_TYPE_JACKET_AND_JEANS, ///?????????? EM_NEWUPCLOTHES_TYPE_TSHIRT, ///T?? EM_NEWUPCLOTHES_TYPE_SPORTWEAR, ///???? EM_NEWUPCLOTHES_TYPE_DOWNJACKETS, ///????? EM_NEWUPCLOTHES_TYPE_SHIRT, ///???? EM_NEWUPCLOTHES_TYPE_DRESS, ///????? EM_NEWUPCLOTHES_TYPE_SUIT, ///??? EM_NEWUPCLOTHES_TYPE_SWEATER, ///??? EM_NEWUPCLOTHES_TYPE_SLEEVELESS, ///???? EM_NEWUPCLOTHES_TYPE_VEST, ///???? }EM_NEWUPCLOTHES_TYPE; ///@brief ?????????? typedef enum tagEM_NEWDOWNCLOTHES_TYPE { EM_NEWDOWNCLOTHES_TYPE_UNKNOWN, ///??? EM_NEWDOWNCLOTHES_TYPE_TROUSERS, ///???? EM_NEWDOWNCLOTHES_TYPE_SHORTS, ///??? EM_NEWDOWNCLOTHES_TYPE_SKIRT, ///??? }EM_NEWDOWNCLOTHES_TYPE; ///@brief ????????????? typedef enum tagEM_CATEGORY_NONMOTOR_TYPE { EM_CATEGORY_NONMOTOR_TYPE_UNKNOWN, /// ??? EM_CATEGORY_NONMOTOR_TYPE_TRICYCLE, /// "Tricycle" ????? EM_CATEGORY_NONMOTOR_TYPE_MOTORCYCLE, /// "Motorcycle" ????? EM_CATEGORY_NONMOTOR_TYPE_NON_MOTOR, /// "Non-Motor" ??????? EM_CATEGORY_NONMOTOR_TYPE_BICYCLE, /// "Bicycle" ?????? EM_CATEGORY_NONMOTOR_TYPE_DUALTRIWHEELMOTORCYCLE, /// "DualTriWheelMotorcycle"????????????? EM_CATEGORY_NONMOTOR_TYPE_LIGHTMOTORCYCLE, /// "LightMotorcycle" ???????? EM_CATEGORY_NONMOTOR_TYPE_EMBASSYMOTORCYCLE, /// "EmbassyMotorcycle "???????? EM_CATEGORY_NONMOTOR_TYPE_MARGINALMOTORCYCLE, /// "MarginalMotorcycle " ???????? EM_CATEGORY_NONMOTOR_TYPE_AREAOUTMOTORCYCLE, /// "AreaoutMotorcycle " ????????? EM_CATEGORY_NONMOTOR_TYPE_FOREIGNMOTORCYCLE, /// "ForeignMotorcycle " ??????? EM_CATEGORY_NONMOTOR_TYPE_TRIALMOTORCYCLE, /// "TrialMotorcycle " ????????? EM_CATEGORY_NONMOTOR_TYPE_COACHMOTORCYCLE, /// "CoachMotorcycle " ????????? EM_CATEGORY_NONMOTOR_TYPE_PASSERBY, /// "Passerby" ???? EM_CATEGORY_NONMOTOR_TYPE_VANTRICYCLE, /// "VanTricycle" ???????? EM_CATEGORY_NONMOTOR_TYPE_MANNEDCONVERTIBLETRICYCLE, /// "MannedConvertibleTricycle" ???????????? EM_CATEGORY_NONMOTOR_TYPE_NOMANNEDCONVERTIBLETRICYCLE, /// "NoMannedConvertibleTricycle" ?????????????? EM_CATEGORY_NONMOTOR_TYPE_ELECTRICBIKE, /// "Electricbike" ???????? EM_CATEGORY_NONMOTOR_TYPE_FOURWHEELER, /// "FourWheelerNonMotor" ?????????? EM_CATEGORY_NONMOTOR_TYPE_SCOOTER, /// "Scooter" ????t }EM_CATEGORY_NONMOTOR_TYPE; ///@brief ????????????? typedef struct tagNET_NONMOTOR_PIC_INFO { UINT uOffset; /// ??????????????????? UINT uLength; /// ??????,????????? UINT uWidth; /// ?????? UINT uHeight; /// ????? char szFilePath[MAX_PATH_LEN]; /// ??????? UINT nIndexInData; /// ???????????????????? BYTE byReserved[508]; /// ???? }NET_NONMOTOR_PIC_INFO; ///@brief ?????????? typedef struct tagRIDER_FACE_IMAGE_INFO { unsigned int nOffSet; /// ??????????????????? unsigned int nLength; /// ??????,??????? unsigned int nWidth; /// ??????(????) unsigned int nHeight; /// ?????(????) UINT nIndexInData; /// ??????? BYTE byReserved[44]; /// ???? }RIDER_FACE_IMAGE_INFO; ///@brief ?????? typedef enum tagEM_STRABISMUS_TYPE { EM_STRABISMUS_UNKNOWN, /// ??? EM_STRABISMUS_NORMAL, /// ???? EM_STRABISMUS_YES, /// ???? } EM_STRABISMUS_TYPE; ///@brief ??????? typedef struct tagNET_FACE_ATTRIBUTE_EX { EM_SEX_TYPE emSex; /// ??? int nAge; /// ????,-1???????????????? char szReserved[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ?????, 0?????????????1-100,??????????? EM_HAS_GLASS emGlass; /// ??? EM_EMOTION_TYPE emEmotion; /// ???? DH_RECT stuBoundingBox; /// ??????(8192?????) BYTE bReserved1[4]; /// ??????? EM_STRABISMUS_TYPE emStrabismus; /// ?????? int nAngle[3]; /// ???, ???????????????? /// Pitch?????????, ??????????, ??????-70~60; /// yaw????????, ???????????, ??????-90~90; /// Roll?????????, ?????????????, ??????-90~90; /// [180,180,180]?????????? NET_POINT stuObjCenter; /// ????????(?????????????), 0-8191???????, ??????? BYTE byReserved[48]; /// ???????,???????. } NET_FACE_ATTRIBUTE_EX; ///@brief ?????????????????????????????????? typedef struct tagNET_FACE_FEATURE_VECTOR_INFO { UINT nOffset; /// ??????????????????????????, ????:??? UINT nLength; /// ???????????????, ????:??? BOOL bFeatureEnc; /// ????????????????? BYTE byReserved[28]; /// ??????? } NET_FACE_FEATURE_VECTOR_INFO; ///@brief ??????????????????????????????????? typedef struct tagNET_HUMAN_FEATURE_VECTOR_INFO { UINT nOffset; /// ???????????????????????????, ????:??? UINT nLength; /// ????????????????, ????:??? BOOL bFeatureEnc; /// ????????????????? BYTE byReserved[28]; /// ??????? } NET_HUMAN_FEATURE_VECTOR_INFO; ///@brief ???????????? typedef enum tagEM_FEATURE_VERSION { EM_FEATURE_VERSION_UNKNOWN, /// ??? EM_FEATURE_VERSION_FACE_LARGE_1_01_001 = 1, /// ?????????1.01.001 EM_FEATURE_VERSION_FACE_LARGE_1_02_001, /// ?????????1.02.001 EM_FEATURE_VERSION_FACE_LARGE_1_03_001, /// ?????????1.03.001 EM_FEATURE_VERSION_FACE_LARGE_1_04_001, /// ?????????1.04.001 EM_FEATURE_VERSION_FACE_MIDDLE_1_01_002 = 31, /// ?????????1.01.002 EM_FEATURE_VERSION_FACE_MIDDLE_1_02_002, /// ?????????1.02.002 EM_FEATURE_VERSION_FACE_MIDDLE_1_03_002, /// ?????????1.03.002 EM_FEATURE_VERSION_FACE_MIDDLE_1_04_002, /// ?????????1.04.002 EM_FEATURE_VERSION_FACE_MIDDLE_1_09_002 = 39, /// ?????????1.09.002 EM_FEATURE_VERSION_FACE_SMALL_1_01_003 = 61, /// ?????????1.01.003 EM_FEATURE_VERSION_FACE_SMALL_1_02_003, /// ?????????1.02.003 EM_FEATURE_VERSION_HUMAN_NONMOTOR = 91, /// ???????????????????? EM_FEATURE_VERSION_HUMAN_NONMOTOR_FLOAT_1_00_01, /// ?????????????????1.00.01 EM_FEATURE_VERSION_HUMAN_NONMOTOR_HASH_1_00_01, /// ??????????????????1.00.01 EM_FEATURE_VERSION_HUMAN_NONMOTOR_FLOAT_1_01_00, /// ?????????????????1.01.00 EM_FEATURE_VERSION_HUMAN_NONMOTOR_HASH_1_01_00, /// ??????????????????1.01.00 EM_FEATURE_VERSION_HUMAN_NONMOTOR_FLOAT_1_01_01, /// ?????????????????1.01.01 EM_FEATURE_VERSION_HUMAN_NONMOTOR_HASH_1_01_01, /// ??????????????????1.01.01 EM_FEATURE_VERSION_HUMAN_NONMOTOR_FLOAT_1_01_03, /// ?????????????????1.01.03 EM_FEATURE_VERSION_HUMAN_NONMOTOR_HASH_1_01_03, /// ??????????????????1.01.03 EM_FEATURE_VERSION_TRAFFIC = 121, /// ????????????????? EM_FEATURE_VERSION_TRAFFIC_FLOAT, /// ??????????????????0 EM_FEATURE_VERSION_TRAFFIC_FLOAT_1_00_01, /// ??????????????????1.00.01 EM_FEATURE_VERSION_TRAFFIC_HASH_1_00_01, /// ??????????????????1.00.01 EM_FEATURE_VERSION_TRAFFIC_FLOAT_1_00_02, /// ??????????????????1.00.02 EM_FEATURE_VERSION_TRAFFIC_HASH_1_00_02, /// ??????????????????1.00.02 EM_FEATURE_VERSION_SHANGTANG_FACE_1_5_0 = 151, /// ???1.5.0 EM_FEATURE_VERSION_SHANGTANG_FACE_1_8_1, /// ???1.8.1 EM_FEATURE_VERSION_SHANGTANG_FACE_2_1_3, /// ???2.1.3 EM_FEATURE_VERSION_SHANGTANG_FACE_2_39_6, /// ???2.39.6 EM_FEATURE_VERSION_SHANGTANG_FACE_2_39_7, /// ???2.39.7 EM_FEATURE_VERSION_SHANGTANG_FACE_2_39_8, /// ???2.39.8 EM_FEATURE_VERSION_SHANGTANG_FACE_239, /// ???239 EM_FEATURE_VERSION_SHANGTANG_FACE_242, /// ???242 EM_FEATURE_VERSION_SHANGTANG_FACE_244, /// ???244 EM_FEATURE_VERSION_SHANGTANG_FACE_245, /// ???245 EM_FEATURE_VERSION_SHENMO_HUMAN_TRAFFIC_NON_2_4_2 = 181, /// ???/??????/?????????2.4.2 EM_FEATURE_VERSION_SHENMO_HUMAN_TRAFFIC_NON_2_5_7, /// ???/??????/?????????2.5.7 } EM_FEATURE_VERSION; ///@brief ????? typedef enum tagEM_AGE_SEG { EM_AGE_SEG_UNKOWN = 0, /// ??? EM_AGE_SEG_BABY = 2, /// ??? EM_AGE_SEG_CHILD = 10, /// ??? EM_AGE_SEG_YOUTH = 28, /// ???? EM_AGE_SEG_MIDDLE = 50, /// ???? EM_AGE_SEG_OLD = 60, /// ???? }EM_AGE_SEG; ///@brief ??????? typedef struct tagNET_RIDER_INFO { BOOL bFeatureValid; /// ?????????????, TRUE?????????????? EM_SEX_TYPE emSex; /// ??? int nAge; /// ???? EM_NONMOTOR_OBJECT_STATUS emHelmet; /// ????? EM_NONMOTOR_OBJECT_STATUS emCall; /// ???????? EM_NONMOTOR_OBJECT_STATUS emBag; /// ????????? EM_NONMOTOR_OBJECT_STATUS emCarrierBag; /// ?????????? EM_NONMOTOR_OBJECT_STATUS emUmbrella; /// ?????? EM_NONMOTOR_OBJECT_STATUS emGlasses; /// ?????????? EM_NONMOTOR_OBJECT_STATUS emMask; /// ???????? EM_EMOTION_TYPE emEmotion; /// ???? EM_CLOTHES_TYPE emUpClothes; /// ???????? EM_CLOTHES_TYPE emDownClothes; /// ???????? EM_OBJECT_COLOR_TYPE emUpperBodyColor; /// ??????? EM_OBJECT_COLOR_TYPE emLowerBodyColor; /// ??????? BOOL bHasFaceImage; /// ????????????????? RIDER_FACE_IMAGE_INFO stuFaceImage; /// ??????????????? BOOL bHasFaceAttributes; /// ???????????? NET_FACE_ATTRIBUTE_EX stuFaceAttributes; /// ??????? EM_HAS_HAT emHasHat; /// ??????? EM_CAP_TYPE emCap; /// ????? EM_HAIR_STYLE emHairStyle; /// ?????? NET_FACE_FEATURE_VECTOR_INFO stuFaceFeatureVectorInfo; /// ?????????????????????????????????? EM_FEATURE_VERSION emFaceFeatureVersion; /// ????????????? NET_HUMAN_FEATURE_VECTOR_INFO stuHumanFeatureVectorInfo; /// ??????????????????????????????????? EM_FEATURE_VERSION emHumanFeatureVersion; /// ?????????????? UINT nAgeConf; ///?????????? UINT nUpColorConf; ///???????????? UINT nDownColorConf; ///???????????? UINT nUpTypeConf; ///????????????? UINT nDownTypeConf; ///????????????? UINT nHatTypeConf; ///???????????? UINT nHairTypeConf; ///????????????? EM_CLOTHES_PATTERN emUpperPattern; ///???????????? UINT nUpClothes; ///???????? 0:??? 1:???? 2:???? 3:??????? 4:?????????? 5:T?? ///6:???? 7:????? 8:???? 9:????? 10:??? 11:??? 12:???? 13:???? EM_UNIFORM_STYLE emUniformStyle; ///??????? UINT nRainCoat; ///????????? 0:????? 1:?? 2:?? EM_COAT_TYPE emCoatStyle; ///?????? EM_AGE_SEG emAgeSeg; /// ????? UINT nShoulderBag; /// ???????? 0-????? 1-?? 2-?? UINT nMessengerBag; /// ?????????? 0-????? 1-?? 2-?? BOOL bNewUpClothes; /// ???????????????? EM_NEWUPCLOTHES_TYPE emNewUpClothes; /// ?????????? BOOL bNewDownClothes; /// ???????????????? EM_NEWDOWNCLOTHES_TYPE emNewDownClothes; /// ?????????? BYTE byReserved[140]; ///???? }NET_RIDER_INFO; #define MAX_RIDER_NUM 16 /// ???????????? ///@brief ?????????????????????????????????????? typedef struct tagNET_NONMOTOR_FEATURE_VECTOR_INFO { UINT nOffset; /// ??????????????????????????????, ????:??? UINT nLength; /// ???????????????????, ????:??? BOOL bFeatureEnc; /// ????????????????? BYTE byReserved[28]; /// ??????? } NET_NONMOTOR_FEATURE_VECTOR_INFO; ///@brief ???????????????? typedef struct tagNET_NONMOTOR_PLATE_IMAGE { UINT nOffset; /// ??????????????????? UINT nLength; /// ?????? UINT nWidth; /// ?????? UINT nHeight; /// ????? UINT nIndexInData; /// ???????????????????? BYTE byReserved[508]; /// ??????? }NET_NONMOTOR_PLATE_IMAGE; ///@brief ??????? typedef enum tagEM_PLATE_COLOR_TYPE { EM_PLATE_COLOR_UNKNOWN, /// ??? "Unknown" EM_PLATE_COLOR_OTHER, /// ??????? "Other" EM_PLATE_COLOR_BLUE, /// ??? "Blue" EM_PLATE_COLOR_YELLOW, /// ??? "Yellow" EM_PLATE_COLOR_WHITE, /// ??? "White" EM_PLATE_COLOR_BLACK, /// ??? "Black" EM_PLATE_COLOR_RED, /// ??? "Red" EM_PLATE_COLOR_GREEN, /// ??? "Green" EM_PLATE_COLOR_SHADOW_GREEN, /// ?????? "ShadowGreen" EM_PLATE_COLOR_YELLOW_GREEN, /// ?????? "YellowGreen"" EM_PLATE_COLOR_YELLOW_BOTTOM_BLACK_TEXT, /// ?????? "YellowbottomBlackText" EM_PLATE_COLOR_BLUE_BOTTOM_WHITE_TEXT, /// ??????? "BluebottomWhiteText" EM_PLATE_COLOR_BLACK_BOTTOM_WHITE_TEXT, /// ?????? "BlackBottomWhiteText" }EM_PLATE_COLOR_TYPE; ///@brief ?????????????? typedef struct tagNET_NONMOTOR_PLATE_INFO { char szPlateNumber[128]; /// ???????????? NET_RECT stuBoundingBox; /// ???????? ?????????????0~8191??????? NET_RECT stuOriginalBoundingBox; /// ???????? ???????????????????? NET_NONMOTOR_PLATE_IMAGE stuPlateImage; /// ????????????? EM_PLATE_COLOR_TYPE emPlateColor; /// ??????? BYTE byReserved[132]; /// ???? }NET_NONMOTOR_PLATE_INFO; ///@brief ??????????? typedef enum tagEM_OBJECT_NONMOTORANGLE_TYPE /// ??????????? { EM_OBJECT_NONMOTORANGLE_TYPE_UNKNOWN, /// ??? EM_OBJECT_NONMOTORANGLE_TYPE_FRONT, /// ???? EM_OBJECT_NONMOTORANGLE_TYPE_SIDE, /// ???? EM_OBJECT_NONMOTORANGLE_TYPE_BEHIND, /// ???? }EM_OBJECT_NONMOTORANGLE_TYPE; ///@brief ??????????? typedef enum tagEM_OBJECT_BASKET_TYPE /// ??????????? { EM_OBJECT_BASKET_UNKNOWN, /// ??? EM_OBJECT_BASKET_NO, /// ?? EM_OBJECT_BASKET_YES, /// ?? }EM_OBJECT_BASKET_TYPE; ///@brief ??????????? typedef enum tagEM_OBJECT_STORAGEBOX_TYPE ///??????????? { EM_OBJECT_STORAGEBOX_UNKNOWN, /// ??? EM_OBJECT_STORAGEBOX_NO, /// ????? EM_OBJECT_STORAGEBOX_OWNBOX, /// ????? EM_OBJECT_STORAGEBOX_SELFPACK, /// ????? EM_OBJECT_STORAGEBOX_ALL, /// ????????????? }EM_OBJECT_STORAGEBOX_TYPE; ///@brief ???????????? typedef enum tagEM_RAIN_SHED_TYPE { EM_RAIN_SHED_TYPE_NONE = -1, /// ?? EM_RAIN_SHED_TYPE_NO_UMBRELLA, /// ?????? EM_RAIN_SHED_TYPE_NOT_PEOPLE_HOLD, /// ???????? EM_RAIN_SHED_TYPE_UNKOWN, /// ??? EM_RAIN_SHED_TYPE_NO_MOTOR_UMBRELLA, /// ?????????????? EM_RAIN_SHED_TYPE_NO_MOTOR_CANOPY, /// ?????????????? }EM_RAIN_SHED_TYPE; ///@brief ??????????? typedef struct tagVA_OBJECT_NONMOTOR { int nObjectID; /// ????ID,???ID??????????????? EM_CATEGORY_NONMOTOR_TYPE emCategory; /// ????????????? DH_RECT stuBoundingBox; /// ???????? ?????????????0~8191??????? DH_RECT stuOriginalBoundingBox; /// ???????? ???????????????????? NET_COLOR_RGBA stuMainColor; /// ??????????, RGBA EM_OBJECT_COLOR_TYPE emColor; /// ??????????, ??? BOOL bHasImage; /// ???????? NET_NONMOTOR_PIC_INFO stuImage; /// ?????? int nNumOfCycling; /// ???????? NET_RIDER_INFO stuRiderList[MAX_RIDER_NUM]; /// ????????,??????nNumOfCycling???? SCENE_IMAGE_INFO stuSceneImage; /// ??????? FACE_SCENE_IMAGE stuFaceSceneImage; /// ?????????? int nNumOfFace; /// ???????????? float fSpeed; /// ?????????????km/h NET_NONMOTOR_FEATURE_VECTOR_INFO stuNonMotorFeatureVectorInfo; /// ?????????????????????????????????????? EM_FEATURE_VERSION emNonMotorFeatureVersion; /// ????????????????? NET_NONMOTOR_PLATE_INFO stuNomotorPlateInfo; /// ???????????? NET_POINT stuObjCenter; /// ????????(?????????????), 0-8191???????, ??????? NET_FACE_FEATURE_VECTOR_INFO stuFaceFeatureVectorInfo; /// ??????????????????????????????????, ???? EM_FEATURE_VERSION emFaceFeatureVersion; /// ?????????????, ???? int nCategoryConf; /// ???????????????? char szNonMotorFeatureVersion[32]; /// ?????????????????-????? EM_OBJECT_NONMOTORANGLE_TYPE emNonMotorAngle; /// ??????????? EM_OBJECT_BASKET_TYPE emBasket; /// ??????????? EM_OBJECT_STORAGEBOX_TYPE emStorageBox; /// ??????????? UINT nCompleteScore; /// ??????????????????????[0,100]?????????? UINT nClarityScore; /// ??????????????? ???????[1,100], ????????, 0?????? UINT nStartSequence; /// ?????????? UINT nEndSequence; /// ??????????? BOOL bIsErrorDetect; /// ????????????????????????????0: ??1: ?? UINT nImageLightType; /// ????????????, 0:???, 1:????????, 2:?????????(????), 3:????????(?????) UINT nAbsScore; /// ???????????????????????[0,100]???????????? EM_RAIN_SHED_TYPE emRainShedType; /// ???????????? char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 char szReserved[2]; /// ???? UINT nHumanFeatureExtractSingle; /// ????????????????????????, 0:??, 1:?? SCENE_IMAGE_INFO stuHumanImage; /// ??????????????????? BYTE byReserved[2848]; /// ???? }VA_OBJECT_NONMOTOR; ///@brief ?????????????????????????????????? typedef struct tagEVENT_PLATE_INFO { char szFrontPlateNumber[64]; /// ?????????? EM_PLATE_COLOR_TYPE emFrontPlateColor; /// ?????????? char szBackPlateNumber[64]; /// ??????????? EM_PLATE_COLOR_TYPE emBackPlateColor; /// ??????????? BYTE reversed[128]; /// ???? } EVENT_PLATE_INFO; ///@brief ???????? typedef enum tagEM_VEHICLE_POSTURE_TYPE { EM_VEHICLE_POSTURE_TYPE_UNKNOWN, /// ??? EM_VEHICLE_POSTURE_TYPE_VEHICLE_HEAD, /// ??? EM_VEHICLE_POSTURE_TYPE_VEHICLE_SIDE, /// ???? EM_VEHICLE_POSTURE_TYPE_VEHICLE_TAIL, /// ???? }EM_VEHICLE_POSTURE_TYPE; ///@brief ?????????? typedef enum tagEM_TRACK_CAR_STATUS { EM_TRACK_CAR_STATUS_UNKNOWN, /// ??? EM_TRACK_CAR_STATUS_START, /// ?????? EM_TRACK_CAR_STATUS_END, /// ??????? } EM_TRACK_CAR_STATUS; ///@brief ?????????????????? typedef enum tagEM_CAR_DRIVING_DIRECTION { EM_CAR_DRIVING_DIRECTION_UNKNOWN, /// ??? EM_CAR_DRIVING_DIRECTION_DRIVE_IN_AREA, /// ??????? EM_CAR_DRIVING_DIRECTION_EXIT_AREA, /// ??????? }EM_CAR_DRIVING_DIRECTION; ///@brief ??????????? typedef enum tagEM_TRAFFIC_VEHICLE_ACTION { EM_TRAFFIC_VEHICLE_ACTION_UNKNOWN, /// ??? EM_TRAFFIC_VEHICLE_ACTION_WOOD, /// ??????? EM_TRAFFIC_VEHICLE_ACTION_STONE, /// ????? }EM_TRAFFIC_VEHICLE_ACTION; ///@brief ???????EVENT_IVS_TRAFFICJUNCTION(???????????????/???????????????????????)????????????????? ///@brief ??????????,???????????????,DEV_EVENT_TRAFFICJUNCTION_INFO??EVENT_IVS_TRAFFICGATE??????,????????????????????????????????????? ///@brief ????EVENT_IVS_TRAFFIC_TOLLGATE?????????????????? typedef struct tagDEV_EVENT_TRAFFICJUNCTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? BYTE byMainSeatBelt; /// ???????,????????,1-??????,2-???????? BYTE bySlaveSeatBelt; /// ???????,????????,1-??????,2-???????? BYTE byVehicleDirection; /// ?????????????????????????,??????? EM_VEHICLE_DIRECTION BYTE byOpenStrobeState; /// ?????,??????? EM_OPEN_STROBE_STATE double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nLane; /// ????????? DWORD dwBreakingRule; /// ????????????,?????:?????; /// ?????:??????????????; /// ??????:????; ??????????????; /// ??????:???????; ??????:????????? /// ??????:??????; ????????:?????????? NET_TIME_EX RedLightUTC; /// ?????UTC??? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????Km/h BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byDirection; /// ???????,1-???????,2-??????? BYTE byLightState; /// LightState??????????:0 ???,1 ???,2 ???,3 ??? BYTE byReserved; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DH_MSG_OBJECT stuVehicle; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? char szRecordFile[DH_COMMON_STRING_128]; /// ???????????????????? EVENT_JUNCTION_CUSTOM_INFO stuCustomInfo; /// ???????? BYTE byPlateTextSource; /// ??????????, 0:?????????,1:????????????? BYTE bReserved1[3]; /// ???????,???????. NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE byNoneMotorInfo; /// 0-?????????????????,1-?????????????????? /// ??????1?????11????????? BYTE byBag; /// ????, 0-??? 1-?????? 2-???? BYTE byUmbrella; /// ??????, 0-??? 1-?????? 2-???? BYTE byCarrierBag; /// ???????,0-??? 1-??? 2-?? BYTE byHat; /// ???????, 0-??? 1-??????? 2-????? BYTE byHelmet; /// ?????,0-??? 1-??? 2-?? BYTE bySex; /// ???,0-??? 1-???? 2-??? BYTE byAge; /// ???? NET_COLOR_RGBA stuUpperBodyColor; /// ??????? NET_COLOR_RGBA stuLowerBodyColor; /// ??????? BYTE byUpClothes; /// ???????????? 0:??? 1:???? 2:???? 3:???? 4:??? 5:??? 6:???? 7:????? 8:????? BYTE byDownClothes; /// ???????????? 0:??? 1:???? 2:???? 3:???? 4:??? 5:??? 6:???? 7:????? 8:????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? BYTE bReserved[22]; /// ???????,??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2???,3RSU DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DWORD dwRetCardNumber; /// ??????? EVENT_CARD_INFO stuCardInfo[DH_EVENT_MAX_CARD_NUM]; /// ?????? EVENT_COMM_INFO stCommInfo; /// ??????? BOOL bNonMotorInfoEx; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? EVENT_PLATE_INFO stuPlateInfo; /// ?????????????????????????????????? BOOL bSceneImage; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? DH_MSG_OBJECT* pstObjects; /// ?????????????? int nObjectNum; /// ?????????????? EM_VEHICLE_POSTURE_TYPE emVehiclePosture; /// ???????? UINT nVehicleSignConfidence; /// ????????????????0~100?? UINT nVehicleCategoryConfidence; /// ????????????????0~100?? EM_CAR_DRIVING_DIRECTION emCarDrivingDirection; /// ?????????????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char szSerialNo[128]; /// ????????????????????? UINT nAlarmCompliance; /// ???????, 0:???, 1:?????, 2:??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? DH_MSG_OBJECT_SUPPLEMENT stObjectInfoEx; /// ????????????????????????? DH_MSG_OBJECT ????????????????????? DH_MSG_OBJECT_EX2* pstuObjectEx2; /// ???????????? DH_MSG_OBJECT_EX2* pstuVehicleEx2; /// ?????????? DH_MSG_OBJECT_EX2* pstuObjectsEx2; /// ????????????????????????nObjectNum UINT nPresetID; /// ?????????????????1???, 0?????? int nTransfer; /// ?????????, -1: ???, 0-???????????1-????????????, 2-??????????????, 3-??????????????? char szFeatureVersion[32]; /// ??????????? UINT nDetectMode; /// ??????????????????????: 0: ????????? 1: ?????????? 2: ???????????????? 3:?????????????????? char szSourceID[32]; /// ???????ID,?????????+???+???????????????2???????14??????????5?????????02-???,???YYYYMMDDhhmmss,???????00001,??"022019030714003000001" EM_TRAFFIC_VEHICLE_ACTION emVehicleAction; /// ???????????,0?????,1?????????,2??????? char byReserved2[508-3*POINTERSIZE]; /// ??????? } DEV_EVENT_TRAFFICJUNCTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NONMOTORINMOTORROUTE (?????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NONMOTORINMOTORROUTE_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved1[3]; /// ???????. double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? char szRecordFile[DH_COMMON_STRING_128]; /// ???????????????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? EVENT_COMM_INFO stCommInfo; /// ??????? BOOL bHasNonMotor; /// ???????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? BYTE bReserved[4096]; /// ???????,???????. } DEV_EVENT_TRAFFIC_NONMOTORINMOTORROUTE_INFO; ///@brief ??????? typedef struct tagNET_VEHICLE_INFO { UINT nUID; /// ????????????,????????????????????????? char szGroupID[64]; /// ??????????ID char szGroupName[128]; /// ???????????? char szPlateNumber[64]; /// ??????? char szPlateCountry[4]; /// ???????????,2????????ISO3166??Z int nPlateType; /// ???????? /// 01 ???????????? ?????? /// 02 ???????????? ??????? /// 03 ??????????? ?????????????? /// 04 ??????????? ????????????? /// 05 ???????????? ????????? /// 06 ?????????? ?????? /// 13 ??????????? ?????????? /// 15 ??????? ?????????? /// 16 ???????????? ?????????? /// 18 ???????????? /// 20 ????????????? ??????????????? /// 22 ???????????? ?????????? /// 23 ???????????????? int nVehicleType; /// ????(????????????) /// 001 ???? /// 002 ???????? /// 003 ?????? /// 004 ???? /// 005 ???????? /// 006 ??????? /// 020 ???????? /// 031 ???? /// 032 ????? /// 033 ??????? /// 034 ?????? /// 035 ???? /// 036 ????????? int nBrand; /// ????????,??????????????????????.??????????CarLogoIndex int nCarSeries; /// ??????????????????????????????????,??????????SubBrand int nCarSeriesModelYearIndex; /// ??????????????????????????????????????????BrandYear ????????????1~999???????????????1001~1999??0????????1000????? NET_COLOR_RGBA stuVehicleColor; /// ??? ???????????????????? ???????????????????? ????????????????????? ??????????????????(??????) NET_COLOR_RGBA stuPlateColor; /// ???????,???????? char szOwnerName[64]; /// ???????? int nSex; /// ??????? 0-???,1-??,2,? int nCertificateType; /// ??????????? 0-??? 1-??? 2-???? 3-????? char szPersonID[32]; /// ??????????,????,????????? char szOwnerCountry[4]; /// ????????,2???,????ISO3166??Z char szProvince[64]; /// ??? char szCity[64]; /// ???? char szHomeAddress[128]; /// ????????????(IVSS????) char szEmail[32]; /// ???????????? char szPhoneNo[128]; /// ???????????? int nVehicleColorState; ///?????:0-?????1-??? ??????????, CLIENT_StartFindVehicleRegisterDB????????????????[0,0,0,255] int nPlateColorState; ///?????????:0-?????1-??? ??????????, CLIENT_StartFindVehicleRegisterDB?????????????????[0,0,0,255] char szUUID[64]; /// ???????????????????????UID NET_TIME stuModifyTime; /// ????????????????????????????????????? NET_TIME stuRegisterStorageTime; /// ?????????? BYTE bReserved[392]; }NET_VEHICLE_INFO; #define MAX_CAR_CANDIDATE_NUM (50) ///@brief ????????? typedef enum tagEM_PLATE_GROUP_TYPE { EM_PLATE_GROUP_TYPE_UNKNOWN, /// ??? EM_PLATE_GROUP_TYPE_BLOCKLIST, /// ??????? EM_PLATE_GROUP_TYPE_ALLOWLIST, /// ???????? }EM_PLATE_GROUP_TYPE; ///@brief ?????????? typedef struct tagNET_CAR_CANDIDATE_INFO { NET_VEHICLE_INFO stuVehicleInfo; /// ??????? int nDifferentAttributresNum; /// ??????????????????? int nDifferentAttributres[16]; /// ???????????????????,??????????:0-??? 1-???????? 2-???? 3-???? 4-??? 5-??????? EM_PLATE_GROUP_TYPE emGroupType; /// ????????? BYTE byReserved[508]; }NET_CAR_CANDIDATE_INFO; ///@brief ??????????????? typedef struct tagDEV_EVENT_VEHICLE_RECOGNITION_INFO { char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nVehicleAction; /// ???????? 0-???,1-??????????,2-????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? NET_SEAT_INFO stuMainSeatInfo; /// ?????????? NET_SEAT_INFO stuSlaveSeatInfo; /// ?????????? int nVehicleAttachNum; /// ??????????? NET_VEHICLE_ATTACH stuVehicleAttach[8]; /// ??????????? char szCountry[32]; /// ????,2???,????ISO3166??Z int nCarCandidateNum; /// ??????????? NET_CAR_CANDIDATE_INFO stuCarCandidate[MAX_CAR_CANDIDATE_NUM]; /// ??????????? EVENT_COMM_INFO stCommInfo; /// ??????? int nChannel; /// ????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? DH_MSG_OBJECT_SUPPLEMENT stuVehicleExtend; /// ?????????????????stuVehicle?????? char szSourceID[32]; /// ???????ID,?????????+???+???????????????2???????14??????????5?????????02-???,???YYYYMMDDhhmmss,???????00001,??"022019030714003000001" BYTE bReserved[684-POINTERSIZE]; } DEV_EVENT_VEHICLE_RECOGNITION_INFO; ///@brief ???????EVENT_IVS_TRAFFICGATE(???????????????/???????????????????????)????????????????? ///@brief ??????????,???????????????,DEV_EVENT_TRAFFICJUNCTION_INFO??EVENT_IVS_TRAFFICGATE??????,????????????????????????????????????? ///@brief ????EVENT_IVS_TRAFFIC_TOLLGATE?????????????????? typedef struct tagDEV_EVENT_TRAFFICGATE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? BYTE byOpenStrobeState; /// ?????,???????EM_OPEN_STROBE_STATE char bReserved1[3]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ?????????????? int nLane; /// ????????? int nSpeed; /// ??????????Km/h int nSpeedUpperLimit; /// ??????? ??????km/h int nSpeedLowerLimit; /// ??????? ??????km/h DWORD dwBreakingRule; /// ????????????,?????:????; /// ?????:??????; ??????:???????; /// ??????????????; ??????:?????;??????:????????(???????) /// ??????: ?????; ?????: ???????; ?????: ???????;????????:?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuVehicle; /// ???????????????????? BYTE szManualSnapNo[64]; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[3]; /// ??????? BYTE szSnapFlag[16]; /// ?????????????? BYTE bySnapMode; /// ?????,0-?????? 1-??? 2-???? 4-?????? 8-??????? 16-??????? BYTE byOverSpeedPercentage; /// ??????? BYTE byUnderSpeedingPercentage; /// ?????? BYTE byRedLightMargin; /// ?????????????,???????? BYTE byDriveDirection; /// ???????,0-????(??????????????????????),1-????(?????????????????????) char szRoadwayNo[32]; /// ??????? char szViolationCode[16]; /// ??????? char szViolationDesc[128]; /// ???????? DH_RESOLUTION_INFO stuResolution; /// ??????????? char szVehicleType[32]; /// ???????????? Minisize"????,"Light-duty"?????,"Medium"?????, /// "Oversize"?????,"Huge"????,"Largesize"???? "Unknown"??? BYTE byVehicleLenth; /// ????????, ?????? BYTE byLightState; /// LightState??????????:0 ???,1 ???,2 ???,3 ??? BYTE byReserved1; /// ???????,??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nOverSpeedMargin; /// ????????? ??????km/h int nUnderSpeedMargin; /// ????????? ??????km/h char szDrivingDirection[3][DH_MAX_DRIVINGDIRECTION]; /// /// "DrivingDirection" ,??????? /// "Approach"-????,????????????????????????"Leave"-????, /// ?????????????????????,?????????????????????????? /// ?????????????,UTF-8???? char szMachineName[256]; /// ??????????????? char szMachineAddress[256]; /// ?????????????????? char szMachineGroup[256]; /// ??????????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_SIG_CARWAY_INFO_EX stuSigInfo; /// ???????????????????????? char szFilePath[MAX_PATH]; /// ??????? NET_TIME_EX RedLightUTC; /// ?????UTC??? char * szDeviceAddress; /// ??????,OSD??????????,?????????TrafficSnapshot.DeviceAddress,'\0'???? float fActualShutter; /// ???????????,????????? BYTE byActualGain; /// ?????????,?????0~100 BYTE byDirection; /// 0-???? 1-??????? 2-???? 3-???????? 4-?????? 5-?????????? 6-?????? 7-?????????? 8-??? BYTE bReserve; /// ???????, ?????? BYTE bRetCardNumber; /// ??????? EVENT_CARD_INFO stuCardInfo[DH_EVENT_MAX_CARD_NUM]; /// ?????? char szDefendCode[DH_COMMON_STRING_64]; /// ???????? int nTrafficBlackListID; /// ?????????????????????????ID, 0,??????> 0,????????????? EVENT_COMM_INFO stCommInfo; /// ??????? EM_VEHICLE_DIRECTION emVehicleDirection; /// ?????? BYTE bReserved[448]; /// ???????,???????. } DEV_EVENT_TRAFFICGATE_INFO; ///@brief ???????EVENT_TRAFFICSNAPSHOT(?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFICSNAPSHOT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID BYTE bReserv[3]; /// ??????? BYTE bCarWayCount; /// ??????????????? DH_CARWAY_INFO stuCarWayInfo[DH_MAX_CARWAY_NUM]; /// ????????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[344]; /// ???????,??????? EVENT_COMM_INFO stCommInfo; /// ??????? } DEV_EVENT_TRAFFICSNAPSHOT_INFO; ///@brief ???????? typedef enum tagEM_RED_LIGHT_DIRECTION { EM_RED_LIGHT_DIRECTION_UNKNOWN, /// ??? EM_RED_LIGHT_DIRECTION_STRAIGHT, /// ??? EM_RED_LIGHT_DIRECTION_TURNLEFT, /// ??? EM_RED_LIGHT_DIRECTION_TURNRIGHT, /// ??? EM_RED_LIGHT_DIRECTION_UTURN, /// ??? EM_RED_LIGHT_DIRECTION_FORWARDLEFT, /// ????? EM_RED_LIGHT_DIRECTION_FORWARDRIGHT, /// ????? }EM_RED_LIGHT_DIRECTION; ///@brief ???????EVENT_IVS_TRAFFIC_RUNREDLIGHT(???-????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_RUNREDLIGHT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLightState; /// ??????? 0:??? 1????? 2:??? 3:??? int nSpeed; /// ????,km/h int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_TIME_EX stRedLightUTC; /// ???????? DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE byRedLightMargin; /// ?????????????,???????? BYTE byAlignment[3]; /// ?????? int nRedLightPeriod; /// ?????????????,???????? NET_GPS_INFO stuGPSInfo; /// GPS??? int nDirectionCount; /// ??????????? EM_RED_LIGHT_DIRECTION emDirection[8]; /// ???????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[888-POINTERSIZE]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? BOOL bHasNonMotor; /// ???????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_RUNREDLIGHT_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_PEDESTRAINRUNREDLIGHT(???-???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_PEDESTRAINRUNREDLIGHT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DH_MSG_OBJECT *pstuVehicle; /// ??????? BYTE bReserved[1024-POINTERSIZE]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_PEDESTRAINRUNREDLIGHT_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_PASSNOTINORDER(???-??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_PASSNOTINORDER_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[984]; /// ??????? }DEV_EVENT_TRAFFIC_PASSNOTINORDER_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_OVERLINE(???-??????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OVERLINE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????,Km/h BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_GPS_INFO stuGPSInfo; /// GPS??? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[964-POINTERSIZE]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_OVERLINE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_RETROGRADE(???-???????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_RETROGRADE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? UINT nRuleID; /// ??????,????????????????????????????0 double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????,Km/h BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BOOL bIsExistAlarmRecord; /// rue:?????????????; false:???????????? DWORD dwAlarmRecordSize; /// ?????? char szAlarmRecordPath[DH_COMMON_STRING_256]; /// ??????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_GPS_INFO stuGPSInfo; /// GPS??? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[480-POINTERSIZE]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? int nDetectNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? BOOL bHasNonMotor; /// ???????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_RETROGRADE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_TURNLEFT(???-???????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_TURNLEFT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????,Km/h BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[968]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bHasNonMotor; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_TURNLEFT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_TURNRIGHT (???-???????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_TURNRIGHT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????,Km/h BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[968]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_TURNRIGHT_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_UTURN(?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_UTURN_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????,Km/h BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[968]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }DEV_EVENT_TRAFFIC_UTURN_INFO; ///@brief ?????????? typedef struct tagNET_REGION_INFO { NET_TIME stuDriveInTime; /// ?????? NET_TIME stuDriveOutTime; /// ?????? BYTE bReserved[1024]; /// ??????? }NET_REGION_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_OVERSPEED(??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OVERSPEED_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSpeed; /// ??????????Km/h int nSpeedUpperLimit; /// ??????? ??????km/h int nSpeedLowerLimit; /// ??????? ??????km/h int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? char szFilePath[MAX_PATH]; /// ??????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_GPS_INFO stuGPSInfo; /// GPS??? int nSpeedingPercentage; /// ??????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[568-POINTERSIZE]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_REGION_INFO stRegionInfo; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bHasNonMotor; /// ???????????????? }DEV_EVENT_TRAFFIC_OVERSPEED_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_UNDERSPEED(?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_UNDERSPEED_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved2[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSpeed; /// ??????????Km/h int nSpeedUpperLimit; /// ??????? ??????km/h int nSpeedLowerLimit; /// ??????? ??????km/h int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved1[2]; /// ???? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nUnderSpeedingPercentage; /// ?????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_GPS_INFO stuGPSInfo; /// GPS??? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[828-POINTERSIZE]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }DEV_EVENT_TRAFFIC_UNDERSPEED_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_JAM_FORBID_INTO(????????????)????????????????? typedef struct tagDEV_EVENT_ALARM_JAMFORBIDINTO_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nMark; /// ?????????????????? int nSource; /// ????????????????? int nSequence; /// ?????????,??3-2-1/0,1??????????????,0???????????? int nFrameSequence; /// ???? int nLane; /// ?????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DH_MSG_OBJECT stuObject; /// ????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[984]; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_RESOLUTION_INFO stuResolution; /// ??????????? } DEV_EVENT_ALARM_JAMFORBIDINTO_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_JAM_STOP_ON_ZEBRACROSSING(????????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_JAM_STOP_ON_ZEBRACROSSING_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3-2-1/0,1??????????????,0???????????? int nLane; /// ?????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved[3]; DH_MSG_OBJECT stuObject; /// ????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_RESOLUTION_INFO stuResolution; /// ??????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE bReserved[2048]; /// ??????? } DEV_EVENT_TRAFFIC_JAM_STOP_ON_ZEBRACROSSING_INFO; ///@brief ????????? typedef struct tagEVENT_PIC_ANALYSE_INFO { DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE bReserved[1024]; /// ?????? }EVENT_PIC_ANAKYSE_INFO; ///@brief ??????? DH_ALARM_TRAFFIC_PIC_ANALYSE(?????????????)????????????????? typedef struct tagDEV_ALARM_PIC_ANALYSE_INFO { int nIndex; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? char szFilePath[MAX_PATH]; /// ?????? EVENT_COMM_INFO stuCommInfo; /// ??????? EVENT_PIC_ANAKYSE_INFO stuAnalyseInfo; /// ????????? BYTE bReserved[1024]; /// ??????? } ALARM_PIC_ANALYSE_INFO; ///@brief ???????? typedef struct tagNET_BULLET_HOLES_INFO { int nObjectID; /// ????ID,???ID??????????????? char szObjectType[128]; /// ????????,???????: "Unknown", "Human", "Vehicle", DH_RECT stuBoundingBox; /// ?????? DH_POINT stuCenter; /// ???????? int nSequence; /// ??? int nScore; /// ???? BYTE byReserved[512]; /// ??????? }NET_BULLET_HOLES_INFO; ///@brief ????????? typedef struct tagDEV_ALARM_PIC_SHOOTINGSCORERECOGNITION_INFO { int nIndex; /// ????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? char szFilePath[MAX_PATH]; /// ?????? DH_POINT stuDetectRegion; /// ?????????? int nValidBulletHolesNum; /// ???????????????? NET_BULLET_HOLES_INFO stuBulletHolesInfo[DH_MAX_BULLET_HOLES]; /// ???????? BYTE bReserved[1024]; /// ??????? } ALARM_PIC_SHOOTINGSCORERECOGNITION_INFO; ///@brief 4G???????????????????(?????? DH_ALARM_OIL_4G_OVERFLOW) typedef struct tagNET_ALARM_OIL_4G_OVERFLOW_INFO { int nChannelID; /// ??????0??? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nFlowRateCur; /// ????????????? ????MB int nFlowRateMax; /// ????????????? ????MB BYTE byReserved[1024]; /// ??????? }NET_ALARM_OIL_4G_OVERFLOW_INFO; ///@brief ???????????????? typedef enum tagEM_ALARM_INTERFACE_TYPE { EM_ALARM_INTERFACE_TYPE_UNKNOWN, /// ??? EM_ALARM_INTERFACE_TYPE_A, /// A???? EM_ALARM_INTERFACE_TYPE_B, /// B???? EM_ALARM_INTERFACE_TYPE_C, /// C???? }EM_ALARM_INTERFACE_TYPE; ///@brief ????????????????? typedef struct tagDEV_ALARM_POWERSWITCHER_INFO { int nEventAction; /// ?????????????, 1??????, 2????? int nEventIndex; /// ?????????????, ??PowerSwitcher?????????????? char szName[128]; /// ??????????????, ??PowerSwitcher?????????? NET_TIME_EX stuUTC; /// ????????? int nPowerVoltage; /// ????, ??????mV int nPowerCurrent; /// ?????, ??????mA int nPowerValue; /// ????, ??????mW int nSwitchOn; /// ???????, 1?????0??? int nPowerState; /// ??????????,?0???????, bit0?????, bit1??????, bit2??????, bit3???????, bit4???????(??????????????????) EM_ALARM_INTERFACE_TYPE emInterfaceType; /// ???????????? BYTE byReserved[1020]; /// ??????? }DEV_ALRAM_POWERSWITCHER_INFO; ///@brief ?????????? StartListen(?????? DH_ALARM_SCENNE_CHANGE_ALARM) typedef struct tagDEV_ALARM_PIC_SCENECHANGE_INFO { int nChannelID; /// ????? int nEventAction; /// ?????????????, 1??????, 2????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID BYTE bReserved[1024]; /// ??????? } ALARM_PIC_SCENECHANGE_INFO; ///@brief ????????????ReloadPicture(?????? EVENT_IVS_SCENE_CHANGE) typedef struct tagDEV_ALRAM_SCENECHANGE_INFO { int nChannelID; /// ????? int nEventAction; /// ?????????????, 1??????, 2????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[1024]; /// ???????,???????. } DEV_ALRAM_SCENECHANGE_INFO; ///@brief ??????? EVENT_IVS_SNAPMANUAL(SnapManual???)??????????????? typedef struct tagDEV_EVENT_SNAPMANUAL { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. }DEV_EVENT_SNAPMANUAL; ///@brief ??????????? typedef struct tagALARM_SWIPE_OVERTIME_INFO { NET_TIME_EX stuTime; /// ???????????? BYTE bReserved[1024]; }ALARM_SWIPE_OVERTIME_INFO; ///@brief ????????? typedef struct tagALARM_DRIVING_WITHOUTCARD_INFO { NET_TIME_EX stuTime; /// ???????????? BYTE bReserved[1024]; }ALARM_DRIVING_WITHOUTCARD_INFO; ///@brief ?????????? typedef struct tagNET_FACE_INFO { int nObjectID; /// ????ID,???ID??????????????? char szObjectType[128]; /// ???????? int nRelativeID; /// ???????????????????ID DH_RECT BoundingBox; /// ?????? DH_POINT Center; /// ???????? } NET_FACE_INFO; ///@brief ????????? typedef struct tagNET_HUMAN_TEMPERATURE_INFO { double dbTemperature; /// ??? EM_HUMAN_TEMPERATURE_UNIT emTemperatureUnit; /// ?????? BOOL bIsOverTemp; /// ?????????? BOOL bIsUnderTemp; /// ?????????? BYTE bReserved[132]; /// ?????? } NET_HUMAN_TEMPERATURE_INFO; ///@brief ?????????? typedef struct tagNET_FEATURE_ALARM_INFO { char szAlarmMode[64]; /// ?????? char szReserved[256]; /// ?????? } NET_FEATURE_ALARM_INFO; ///@brief ???????EVENT_IVS_FACEDETECT(????????)????????????????? typedef struct tagDEV_EVENT_FACEDETECT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE reserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szSnapDevAddress[MAX_PATH]; /// ???????????????,?????????37?? unsigned int nOccurrenceCount; /// ????????????? EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??? int nAge; /// ????,-1???????????????? unsigned int nFeatureValidNum; /// ???????????????????,?? emFeature ?????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emFeature[DH_MAX_FACEDETECT_FEATURE_NUM]; /// ???????????,?? nFeatureValidNum ?????? int nFacesNum; /// ??stuFaces???????? NET_FACE_INFO stuFaces[10]; /// ???????????,??????Object EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szReserved1[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ?????, -1???????, 0?????????????1-100,??????????? char szUID[DH_COMMON_STRING_32]; /// ???????????????????????? BYTE bReserved2[4]; /// ??????? NET_FEATURE_VECTOR stuFeatureVector; /// ???????? char szFeatureVersion[32]; /// ?????????? EM_FACE_DETECT_STATUS emFaceDetectStatus; /// ???????????????????? NET_EULER_ANGLE stuFaceCaptureAngle; /// ???????????????????, nPitch:????????????, nYaw?????????????, nRoll????????????????????? /// ??????????[-90,90], ???????????999?????????????? UINT nFaceQuality; /// ??????????????,???? 0~10000 double dHumanSpeed; /// ?????????, km/h int nFaceAlignScore; /// ????????????,???? 0~10000,-1?????? int nFaceClarity; /// ????????????,???? 0~10000,-1?????? BOOL bHumanTemperature; /// ???????????????? NET_HUMAN_TEMPERATURE_INFO stuHumanTemperature; /// ?????????, bHumanTemperature?TURE????? char szCameraID[64]; /// ??????? DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_FACE_ORIGINAL_SIZE stuOriginalSize; /// ???????????????????. ?????0?????? EM_GLASS_STATE_TYPE emGlass; /// ??????? EM_HAT_STYLE emHat; /// ????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_IMAGE_INFO_EX3* pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_FEATURE_ALARM_INFO* pstFeatureAlarm; /// ??????? UINT nFeatureAlarmNum; /// ??????????? BYTE bReserved[388 - POINTERSIZE * 2]; /// ???????,??????? } DEV_EVENT_FACEDETECT_INFO; ///@brief ???????EVENT_IVS_TRAFFICJAM(?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFICJAM_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bJamLenght; /// ?????????(?????????????0-100 BYTE reserved; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? NET_TIME_EX stuStartJamTime; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0?????????(bEventAction=2??????????) int nAlarmIntervalTime; /// ?????????,????:??(???????????????,??????????????????,????????????????????????????????,??????????????????) DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? int nJamRealLength; /// ????????????,?????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? BOOL bJamRegionFlagValid; /// ????????????????? UINT nJamRegionFlag; /// ?????????? 0-??????? 1-??????? BYTE bReserved[868]; /// ???????,???????. DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? } DEV_EVENT_TRAFFICJAM_INFO; ///@brief ??????? typedef enum tagEM_VIOLATION_SNAP_SOURCE { EM_VIOLATION_SNAP_SOURCE_TYPE_UNKNOWN, /// ????????????????????0 EM_VIOLATION_SNAP_SOURCE_TYPE_COIL, /// ??? EM_VIOLATION_SNAP_SOURCE_TYPE_RADAR, /// ??? EM_VIOLATION_SNAP_SOURCE_TYPE_VIDEO, /// ??? EM_VIOLATION_SNAP_SOURCE_TYPE_VIDEO_COIL, /// ??????????? EM_VIOLATION_SNAP_SOURCE_TYPE_VIDEO_RADAR, /// ?????????? EM_VIOLATION_SNAP_SOURCE_TYPE_VIDEO_COIL_RADAR, /// ??????????????? EM_VIOLATION_SNAP_SOURCE_TYPE_FORCE_TRIGER, /// ?????? EM_VIOLATION_SNAP_SOURCE_TYPE_PARKING_LOCK_STATUS, /// ???????? EM_VIOLATION_SNAP_SOURCE_TYPE_GATE_STATUS, /// ????? EM_VIOLATION_SNAP_SOURCE_TYPE_PERIPHERAL_STATUS, /// ?????? EM_VIOLATION_SNAP_SOURCE_TYPE_DRIVE_IN, /// ??? EM_VIOLATION_SNAP_SOURCE_TYPE_DRIVE_OUT, /// ??? }EM_VIOLATION_SNAP_SOURCE; ///@brief ??????? EVENT_IVS_TRAFFIC_PARKING(?????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_PARKING_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? UINT nRuleID; /// ??????,????????????????????????????0 double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE reserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? NET_TIME_EX stuStartParkingTime; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0?????????(bEventAction=2??????????) int nAlarmIntervalTime; /// ?????????,????:??(???????????????,??????????????????,????????????????????????????????,??????????????????) int nParkingAllowedTime; /// ??????????,???????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESEED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BOOL bIsExistAlarmRecord; /// rue:?????????????; false:???????????? DWORD dwAlarmRecordSize; /// ?????? char szAlarmRecordPath[DH_COMMON_STRING_256]; /// ??????? char szFTPPath[DH_COMMON_STRING_256]; /// FTP???? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BYTE byPreAlarm; /// ?????????????,0 ??????????1 ??????(???????????????????????????????????????)???????????????????????????????????????????????????, BYTE bReserved2[3]; /// ???????,???????. NET_GPS_INFO stuGPSInfo; /// GPS??? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? int nPresetID; /// ??????,??1??? char szSN[32]; /// ???SN?? EM_VIOLATION_SNAP_SOURCE emViolationSnapSource; /// ??????? BOOL bIsStrictArea; /// ??????????? TRUE:?? FALSE:???? BYTE bReserved[176]; /// ???????,???????. DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? BOOL bHasNonMotor; /// ???????????????? UINT nParkingDuration; /// ??????????????????, 0????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_PARKING_INFO, DEV_EVENT_TRAFFIC_PARKING_B_INFO, DEV_EVENT_TRAFFIC_PARKING_C_INFO, DEV_EVENT_TRAFFIC_PARKING_D_INFO,DEV_EVENT_TRAFFIC_PARKING_MANUAL_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_WRONGROUTE(???????-???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_WRONGROUTE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nSpeed; /// ??????????,km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_GPS_INFO stuGPSInfo; /// GPS??? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[968-POINTERSIZE]; /// ???????,???????. DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_WRONGROUTE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_CROSSLANE(???????-???????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_CROSSLANE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nSpeed; /// ??????????,km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE bReserved[836]; /// ???????,???????.???????. DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_CROSSLANE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_OVERYELLOWLINE(???????-?????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OVERYELLOWLINE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nSpeed; /// ??????????,km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BOOL bIsExistAlarmRecord; /// rue:?????????????; false:???????????? DWORD dwAlarmRecordSize; /// ?????? char szAlarmRecordPath[DH_COMMON_STRING_256]; /// ??????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[528-POINTERSIZE]; /// ???????,???????. DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? int nDetectNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_TRAFFIC_OVERYELLOWLINE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_DRIVINGONSHOULDER(???????-??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVINGONSHOULDER_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nSpeed; /// ??????????,km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? } DEV_EVENT_TRAFFIC_DRIVINGONSHOULDER_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_YELLOWPLATEINLANE(???????-???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_YELLOWPLATEINLANE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nSpeed; /// ??????????,km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE bReserved[1016]; /// ???????,???????. DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? } DEV_EVENT_TRAFFIC_YELLOWPLATEINLANE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_NOPASSING(???????-?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NOPASSING_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int UTCMS; /// int nMark; /// ?????????????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[3]; int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE byReserved[984]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_NOPASSING_INFO; ///@brief ????????? typedef struct tagDH_TRAFFICFLOWSTAT { char szMachineAddress[256]; /// ?DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO.MachineGroup char szMachineName[256]; /// ?DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO.MachineName char szDrivingDirection[3][32]; /// ???????"Approach"-????,????????????????????????"Leave"-????,?????????????????????,???????????????????????????????????????,UTF-8???? int nLane; /// ?????? ????????????????? NET_TIME_EX UTC; /// ??????,?????UTC int nPeriod; /// ???????,???????? int nVehicles; /// ??????????? float fAverageSpeed; /// ???????,????km/h float fAverageLength; /// ???????,?????? float fTimeOccupyRatio; /// ????????,????????????????????????????????????????????? float fSpaceOccupyRatio; /// ????????,??????????????????????????????????????????????? float fSpaceHeadway; /// ??????,??????????????,??????/?? float fTimeHeadway; /// ??????,??????/?? float fDensity; /// ???????,???????????,??????/km int nOverSpeedVehicles; /// ????????? int nUnderSpeedVehicles; /// ????????? int nLargeVehicles; /// ?????? ??????????????????TrafficSnapshot????? int nMediumVehicles; /// ????????? int nSmallVehicles; /// ???????? int nMotoVehicles; /// ????????? int nLongVehicles; /// ?????????? char szChannel[64]; /// ????????????????? char szResvered[1024]; /// ??????? }DH_TRAFFICFLOWSTAT; ///@brief ??????? TrafficFlowStat Info(?????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_FLOWSTAT_INFO { char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLaneCnt; /// ??????? DH_TRAFFICFLOWSTAT stTrafficFlowStats[DH_MAX_LANE_NUM]; /// ?????????,????????? char Reserved[4]; /// ?????????? }DEV_EVENT_TRAFFIC_FLOWSTAT_INFO; ///@brief ???????????????? typedef struct tagEVENT_MANUALSNAP_CUSTOM_DATA { EVENT_CUSTOM_WEIGHT_INFO stuWeighInfo; /// ?????????? BYTE byReserved[472]; /// ??????? }EVENT_MANUALSNAP_CUSTOM_DATA; ///@brief ???????????? typedef struct tagEVENT_MANUALSNAP_PARKING_INFO { UINT nChannel; /// ????????0???, -1????????? UINT nStatus; /// ???????????????0????? 1?????? 2????? char szPlateNumber[64]; /// ??????? char szParkingNo[32]; /// ??????? char szReserved[128]; /// ??????? }EVENT_MANUALSNAP_PARKING_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_MANUALSNAP(????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_MANUALSNAP_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? BYTE szManualSnapNo[64]; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ??????????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byOpenStrobeState; /// ?????, ??????? EM_OPEN_STROBE_STATE BYTE byReserved[1]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? int nParkingInfoNum; /// ??????????????????????????? EM_VEHICLE_DIRECTION emVehicleDirection; /// ?????????? BYTE bReserved[496]; /// ???????,???????. EVENT_MANUALSNAP_CUSTOM_DATA stuCustom; /// ???????????????? EVENT_COMM_INFO stCommInfo; /// ??????? EVENT_MANUALSNAP_PARKING_INFO stuParkingInfo[32]; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }DEV_EVENT_TRAFFIC_MANUALSNAP_INFO; ///@brief ?????????????? typedef struct tagNET_MANUALSNAP_PARKINGSPACE_INFO { int nStatus; /// 0:??? 1:???? 2:??? char szPlateNumber[64]; /// ??????? char szParkingNo[32]; /// ?????? BYTE byReserved[412]; /// ??????? }NET_MANUALSNAP_PARKINGSPACE_INFO; ///@brief ??? EVENT_IVS_TRAFFIC_PARKINGSPACE_MANUALSNAP (??????????????) ????????????????? typedef struct tagDEV_EVENT_PARKINGSPACE_MANUALSNAP_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ??????????????????? char szSerialNo[128]; /// ????????????????????? int nParkingNum; /// ??????????? NET_MANUALSNAP_PARKINGSPACE_INFO stuParkingInfo[32]; /// ?????? char szSN[32]; /// ????????? BYTE bReserved[484]; /// ???????,???????. }DEV_EVENT_PARKINGSPACE_MANUALSNAP_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_STAY(??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_STAY_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? int nSequence; /// ??????,??3-2-1/0,1??????????????,0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ??????????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved0[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE byReserved[1012]; EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_STAY_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_VEHICLEINROUTE(??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_VEHICLEINROUTE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? int nSequence; /// ??????,??3-2-1/0,1??????????????,0???????????? int nSpeed; /// ???? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ??????????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved0[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BYTE byReserved[884]; EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_VEHICLEINROUTE_INFO; ///@brief ???????????EVENT_IVS_CONVEYER_BELT_BULK (?????????????????) ????????????????? typedef struct tagDEV_EVENT_CONVEYER_BELT_BULK_INFO { int nChannelID; /// ????? int nEventAction; /// ???????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nRuleID; /// ??????,????????????????????????????0 EM_CLASS_TYPE emClassType; /// ??????????????? int nDetectLineNum; /// ????????????? DH_POINT stuDetectLine[20]; /// ???????? UINT nEventID; /// ???ID int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[20]; /// ?????????? UINT nSizeFilterThreshold; /// ?????????, ??????SizeFilterThreshold / 10* ComparetLine???????????????? ????????????????????[2-8] UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[20]; /// ???????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????? UINT nConveyorBeltWidth; /// ??????????????,????[0-1000],????cm UINT nBulkEventCount; /// ?????????????? BYTE byReserved[1012]; /// ??????? } DEV_EVENT_CONVEYER_BELT_BULK_INFO; ///@brief ???????????EVENT_IVS_CONVEYER_BELT_NONLOAD (??????????????) ????????????????? typedef struct tagDDEV_EVENT_CONVEYER_BELT_NONLOAD_INFO { int nChannelID; /// ????? int nEventAction; /// ???????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nRuleID; /// ??????,????????????????????????????0 UINT nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? DH_POINT stuDetectRegion[20]; /// ?????????? int nDetectRegionNum; /// ????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????? int nAlarmLevel; ///??????????? int nEventDataType; /// 0:??? 1:?????? 2:???????? float fLoadingRate; /// ?????, ???? BYTE byReserved[1012]; /// ??????? } DEV_EVENT_CONVEYER_BELT_NONLOAD_INFO; ///@brief ???????????EVENT_IVS_CONVEYER_BELT_RUNOFF (??????????????) ????????????????? typedef struct tagDEV_EVENT_CONVEYER_BELT_RUNOFF_INFO { int nChannelID; /// ????? int nEventAction; /// ???????,1???????????????,2????????????????; char szName[128]; /// ??????? UINT nEventID; /// ???ID BYTE byReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nRuleID; /// ??????,????????????????????????????0 EM_CLASS_TYPE emClassType; /// ??????????????? int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[20]; /// ?????????? UINT nWarningThreshold; /// ???????????N????????0=12??),??/???????, int nVolume; /// ?????, ??/???????, ???????????????????????????????????????,????1?????, int nFlowRate; /// ????????????,??/???, ?????????????????????????????????????????? int nBackOfQueue; /// ??????,????????, ???????????????????????????????????(?????? ????dBackOfQueue????) int nTravelTime; /// ???????,????????, ????????????????????????????????????? int nDelay; /// ????,????????,????????????????????????????? BYTE byDirection[MAX_DRIVING_DIR_NUM]; /// ????????,???NET_ROAD_DIRECTION BYTE byDirectionNum; /// ?????????????? BYTE reserved1[3]; /// ?????? NET_TRAFFIC_JAM_STATUS emJamState; /// ?????????? ?????????????(??? JAM_STATUS_UNKNOW) ,??????????, dwState??????? /* ????????????????? */ int nPassengerCarVehicles; /// ????????(??/???????) int nLargeTruckVehicles; /// ??????????(??/???????) int nMidTruckVehicles; /// ???????????(??/???????) int nSaloonCarVehicles; /// ?????????(??/???????) int nMicrobusVehicles; /// ??????????(??/???????) int nMicroTruckVehicles; /// ???????????(??/???????) int nTricycleVehicles; /// ??????????(??/???????) int nMotorcycleVehicles; /// ??????????(??/???????) int nPasserbyVehicles; /// ????????(??/???????) NET_TRAFFIC_ROAD_RANK emRank; /// ??????? int nState; /// ?????? /// 1- ????????(???) /// 2- ??????????(???) /// 3- ???? /// 4- ????????(???) /// 5- ???????????(????) BOOL bOccupyHeadCoil; /// ???????????????? TURE???????FALSE???????? BOOL bOccupyTailCoil; /// ????????????????? TURE???????FALSE???????? BOOL bStatistics; /// ??????????????? TURE?????????FALSE??????? int nLeftVehicles; /// ???????????,????:???? int nRightVehicles; /// ???????????,????:???? int nStraightVehicles; /// ???????????,????:???? int nUTurnVehicles; /// ???????????,????:???? DH_POINT stQueueEnd; /// ?????????????????????,????8192????? double dBackOfQueue; /// ??????,????????, ??????????????????????????????????? DWORD dwPeriodByMili; /// ?????????????,???????60000,??dwPeriod??????,??????????:dwPeriod*60*1000+dwPeriodByMili(??????????) int nBusVehicles; /// ???????????(??/???????) int nMPVVehicles; /// MPV?????(??/???????) int nMidPassengerCarVehicles; /// ??????????(??/???????) int nMiniCarriageVehicles; /// ???????????(??/???????) int nOilTankTruckVehicles; /// ?????????(??/???????) int nPickupVehicles; /// ??????????(??/???????) int nSUVVehicles; /// SUV?????(??/???????) int nSUVorMPVVehicles; /// SUV????MPV?????(??/???????) int nTankCarVehicles; /// ?????????(??/???????) int nUnknownVehicles; /// ????????????(??/???????) NET_EM_FLOW_ATTRIBUTE emCustomFlowAttribute; /// ??????????????? int nRoadFreeLength; /// ??????????????????????????????100???????????????30????????????????????70??????????? NET_EM_OVER_FLOW_STATE emOverflowState; /// ????????????????????????????????????????????????????????????????????????????? int nQueueVehicleNum; /// ?????????????????? int nSpaceOccupyRatioMultiCount; /// ?????????????? NET_SPACE_OCCUPY_RATIO_MULTI stuSpaceOccupyRatioMulti[32]; /// ?????????????? UINT nTotalStopNum; /// ?????????????????????????????????????????????:?? UINT nTotalDelayTime; /// ??????????????????????????????????????????????? UINT nTotalNum; /// ?????????????????????????????????????????????? ?? float fAverageStopNum; /// ??????????????????????????????????????????????????? float fAverageDelayTime; /// ????????????????????????????????????????????????? float fFlowSaturationRatio; /// ???????????????????????????? float fMaxQueueLen; /// ??????????????????????????????:?? float fQueueStartingPoint; /// ?????????????????????????????????????????????????????????????????????? float fQueueFinishingPoint; /// ???????????????????????????????????????????????????????????????????????? char szSpaceOccupyNum[64]; /// ?????????????????????????????????????????????????????????????????????????????????|???????? int nPresetID; /// ???????,???????????0 BYTE reserved[88]; /// ??????? }NET_TRAFFIC_FLOW_STATE; ///@brief ?????????????trafficflowstatinfo ??????? typedef struct tagNET_TRAFFICFLOWSTATINFO { DH_TRAFFICFLOWSTAT stuTrafficFlowStat; /// ????????? double dbBackOfQueue; /// ?????? NET_TRAFFIC_ROAD_RANK emRank; /// ??????? int nState; /// ?????? /// 1- ????????(???) /// 2- ??????????(???) /// 3- ???? /// 4- ????????(???) /// 5- ???????????(????) BYTE reserved[1024]; /// ??????? }NET_TRAFFICFLOWSTATINFO; ///@brief ??????? EVENT_IVS_TRAFFIC_FLOWSTATE(??????????)??????????????? typedef struct tagDEV_EVENT_TRAFFIC_FLOW_STATE { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? UINT nRuleID; /// ??????,????????????????????????????0 char bReserved1[4]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ??? int nStateNum; /// ?????????? NET_TRAFFIC_FLOW_STATE stuStates[DH_MAX_LANE_NUM]; /// ??????, ?????????????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? int nStopVehiclenum; /// ????????????????????????????????????????????????????? int nDetectionAreaVehicleNum; /// ?????????????????????????????????????????????????????? BYTE bReserved[884]; /// ??????? }DEV_EVENT_TRAFFIC_FLOW_STATE; ///@brief ???????EVENT_IVS_VIDEOSTATIC(????????????)???????????????, typedef struct tagDEV_EVENT_ALARM_VIDEOSTATIC_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_ALARM_VIDEO_STATIC_MODE emMode; /// ??????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved[1027]; /// ??????? }DEV_EVENT_ALARM_VIDEOSTATIC_INFO; ///@brief ???????EVENT_IVS_VIDEOTIMING(????????????)??????????????? typedef struct tagDEV_EVENT_ALARM_VIDEOTIMING_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved[1027]; /// ??????? }DEV_EVENT_ALARM_VIDEOTIMING_INFO; ///@brief ????????? typedef struct tagDEV_SRC_INFO { char szSrcEvent[DH_COMMON_STRING_32];/// ???? NET_TIME_EX stSrcTime; /// ????????????? int iSrcChannel; /// ??????????????? BYTE reserved[512]; /// ??????? }DEV_SRC_INFO; ///@brief ???????EVENT_IVS_LINKSD(LinkSD???)????????????????? typedef struct tagDEV_EVENT_LINK_SD { /*???????*/ int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*?????????*/ DEV_SRC_INFO *pstSrcInfo; /// ??????? NET_TIME_EX stStartTime; /// ?????????? NET_TIME_EX stEndTime; ///???????????? int iPresetID; ///?????????????????? BYTE reserved[512]; ///??????? }DEV_EVENT_LINK_SD; ///@brief ???????EVENT_IVS_FLOWRATE(?????????????)????????????????? typedef struct tagDEV_EVENT_FLOWRATE_INFO { /*???????*/ int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID /*?????????*/ unsigned int nFlowRate; /// ???????????(MB) BYTE reserved[1024]; /// ??????? } DEV_EVENT_FLOWRATE_INFO; ///@brief ??????? EVENT_IVS_CITIZENIDCARD(????????????)??????????????? typedef struct tagDEV_EVENT_ALARM_CITIZENIDCARD_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nGroupID; /// nGroupID?????ID,??????????????nGroupID??? int nCountInGroup; /// nCountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? char szCitizen[DH_COMMON_STRING_64]; /// ???? EM_CITIZENIDCARD_SEX_TYPE emSex; /// ??? int nECType; /// ???? /// 0 ???????? /// 1 ???? /// 2 ????? /// 3 ???? /// 4 ???? /// 5 ?????? /// 6 ???? /// 7 ???? /// 8 ??? /// 9 ?????? /// 10 ?????? /// 11 ???? /// 12 ???? /// 13 ???? /// 14 ???? /// 15 ?????? /// 16 ?????? /// 17 ???????? /// 18 ???? /// 19 ???? /// 20 ?????? /// 21 ???? /// 22 ??? /// 23 ????? /// 24 ?????? /// 25 ??? /// 26 ?????? /// 27 ?????? /// 28 ?????? /// 29 ????????? /// 30 ???? /// 31 ??????? /// 32 ?????? /// 33 ??? /// 34 ?????? /// 35 ?????? /// 36 ????? /// 37 ?????? /// 38 ?????? /// 39 ?????? /// 40 ?????? /// 41 ???????? /// 42 ??? /// 43 ????????? /// 44 ??????? /// 45 ??????? /// 46 ?????? /// 47 ?????? /// 48 ????? /// 49 ???? /// 50 ???????? /// 51 ?????? /// 52 ??????? /// 53 ?????? /// 54 ????? /// 55 ????? /// 56 ????? /// 57 ?????? NET_TIME stuBirth; /// ???????? char szAddress[DH_COMMON_STRING_256]; /// ?? char szNumber[DH_COMMON_STRING_64]; /// ????? char szAuthority[DH_COMMON_STRING_256]; /// ??????? NET_TIME stuStart; /// ??????? BOOL bLongTimeValidFlag; /// ???? TRUE, ??????? ???????????,??? stuEnd ??????? /// ???? FALSE, ??? ??????? ?? stuEnd ? NET_TIME stuEnd; /// ???????,bLongTimeValidFlag ? FALSE ????? char szReversed[1024]; /// ??????? }DEV_EVENT_ALARM_CITIZENIDCARD_INFO; ///@brief ??????? EVENT_IVS_PICINFO(????????)??????????????? typedef struct tagDEV_EVENT_ALARM_PIC_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ????????????(????????????) int nEventID; /// ???ID /*????????????*/ NET_TIME_EX stuTime; /// ????????????, (??????, ???????utc???) DWORD dwEventType; /// ??????? DWORD dwSpeed; /// ????,????km/h DWORD dwSpeedHighLine; /// ????????????, ????km/h DWORD dwDisk; /// ????? DWORD dwCluster; /// ??? DWORD dwPartition; /// ?????? char szSnapAddr[DH_COMMON_STRING_128]; /// ?????, ????64??? char szPicID[DH_COMMON_STRING_32]; /// ?????ID char szPlate[DH_COMMON_STRING_16]; /// ???? char szReversed[2000]; /// ??????? }DEV_EVENT_ALARM_PIC_INFO; ///@brief ?????? typedef enum tagEM_ACCESS_CTL_IMAGE_TYPE { EM_ACCESS_CTL_IMAGE_UNKNOWN = -1, /// ??? EM_ACCESS_CTL_IMAGE_LOCAL, /// ?????????? EM_ACCESS_CTL_IMAGE_SCENE, /// ????????? EM_ACCESS_CTL_IMAGE_FACE, /// ????? EM_ACCESS_CTL_IMAGE_INFRARED, /// ?????? EM_ACCESS_CTL_IMAGE_COMPANION, /// ???????? EM_ACCESS_CTL_IMAGE_HEAT, /// ??? }EM_ACCESS_CTL_IMAGE_TYPE; ///@brief ????? typedef struct tagDEV_ACCESS_CTL_IMAGE_INFO { EM_ACCESS_CTL_IMAGE_TYPE emType; /// ?????? UINT nOffSet; /// ????????????? UINT nLength; /// ?????? UINT nWidth; /// ??????(????:????) UINT nHeight; /// ?????(????:????) NET_RECT stuBoundingBox; /// ?????? BYTE byReserved[48]; /// ??????? }DEV_ACCESS_CTL_IMAGE_INFO; ///@brief ?????? typedef struct tagDEV_ACCESS_CTL_CUSTOM_WORKER_INFO { NET_ACCESSCTLCARD_SEX emSex; /// ??? char szRole[MAX_COMMON_STRING_32]; /// ??? char szProjectNo[MAX_COMMON_STRING_32]; /// ???ID char szProjectName[MAX_COMMON_STRING_64]; /// ??????? char szBuilderName[MAX_COMMON_STRING_64]; /// ?????????? char szBuilderID[MAX_COMMON_STRING_32]; /// ???????ID char szBuilderType[MAX_COMMON_STRING_32]; /// ??????????? char szBuilderTypeID[MAX_COMMON_STRING_8]; /// ??????????ID char szPictureID[MAX_COMMON_STRING_64]; /// ??????ID char szContractID[MAX_COMMON_STRING_16]; /// ???????????? char szWorkerTypeID[MAX_COMMON_STRING_8]; /// ????ID char szWorkerTypeName[MAX_COMMON_STRING_32]; /// ???????? BOOL bPersonStatus; /// ?????, TRUE:????, FALSE:???? BYTE byReserved[256]; /// ??????? }DEV_ACCESS_CTL_CUSTOM_WORKER_INFO; ///@brief ??????? EVENT_IVS_ACCESS_CTL(??????)??????????????? typedef struct tagDEV_EVENT_ACCESS_CTL_INFO { int nChannelID; /// ??????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_ACCESS_CTL_EVENT_TYPE emEventType; /// ?????????? BOOL bStatus; /// ??????,TRUE??????,FALSE?????? NET_ACCESSCTLCARD_TYPE emCardType; /// ?????? NET_ACCESS_DOOROPEN_METHOD emOpenMethod; /// ?????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? char szPwd[DH_MAX_CARDPWD_LEN]; /// ???? char szReaderID[DH_COMMON_STRING_32]; /// ???????ID char szUserID[DH_COMMON_STRING_64]; /// ??????? char szSnapURL[DH_COMMON_STRING_128]; /// ???????????? int nErrorCode; /// ???????????? bStatus ??? /// 0x00 ??????? /// 0x10 ????? /// 0x11 ?????????? /// 0x12 ?????????? /// 0x13 ?????????? /// 0x14 ????????? /// 0x15 ??????? /// 0x16 ??????????? /// 0x17 ??????? /// 0x18 AB?????? /// 0x19 ???? /// 0x1A ?????????????? /// 0x20 ???????? /// 0x21 ????????????????? /// 0x23 ?????? /// 0x30 ??????????????????? /// 0x40 ??????,??????????? /// 0x41 ??????,????????? /// 0x42 ??????,??????????? /// 0x43 ??????,?????????? /// 0x44 ??????,??????????? /// 0x45 ??????,????????? /// 0x50 ???????????? /// 0x51 ???????????????? /// 0x60 ??????,?????????? /// 0x61 ??????,?????? /// 0x62 ??????,???? /// 0x63 ??????? /// 0x64 ?????,??????????? /// 0x65 ??????? /// 0x66 ???????? /// 0x67 ??????????? /// 0x68 ????????? /// 0x69 ????????? /// 0x6a ?????????? /// 0x6b ?????????? /// 0x6e ????,??????????? /// 0x70 ???????????? /// 0x71 ??????????????????????????????????? /// 0xA8 ????????? /// 0xB1 ???????????????? /// 0xB2 ????????? int nPunchingRecNo; /// ????????????????? int nNumbers; /// ?????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved[3]; /// ?????? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON NET_ATTENDANCESTATE emAttendanceState; /// ?????? char szClassNumber[MAX_CLASS_NUMBER_LEN]; /// ????????????????szClassNumberEx?? char szPhoneNumber[MAX_PHONENUMBER_LEN]; /// ??? char szCardName[DH_MAX_CARDNAME_LEN]; /// ?????? UINT uSimilarity; /// ???????????,?????0~100 DEV_ACCESS_CTL_IMAGE_INFO stuImageInfo[6]; /// ????? int nImageInfoCount; /// ????????? char szCitizenIDNo[20]; /// ????? UINT nGroupID; /// ?????ID int nCompanionCardCount; /// ??????????? char szCompanionCards[MAX_COMPANION_CARD_NUM][DH_MAX_CARDINFO_LEN]; /// ?????????????????????? stuCompanionInfo ?? DEV_ACCESS_CTL_CUSTOM_WORKER_INFO stuCustomWorkerInfo; /// ?????? EM_CARD_STATE emCardState; /// ???????????????? char szSN[32]; /// ????????? EM_HAT_STYLE emHatStyle; /// ??????? EM_UNIFIED_COLOR_TYPE emHatColor; /// ?????? EM_LIFT_CALLER_TYPE emLiftCallerType; /// ??????????? BOOL bManTemperature; /// ???????????????? NET_MAN_TEMPERATURE_INFO stuManTemperatureInfo; /// ?????????, bManTemperature ?TRUE????? char szCitizenName[256]; /// ??????? int nCompanionInfo; /// ?????? stuCompanionInfo ???? NET_COMPANION_INFO stuCompanionInfo[12]; /// ????????? EM_MASK_STATE_TYPE emMask; /// ????????EM_MASK_STATE_UNKNOWN??EM_MASK_STATE_NOMASK??EM_MASK_STATE_WEAR ?????? UINT nFaceIndex; /// ?????????????? BOOL bClassNumberEx; /// szClassNumberEx ??????????TRUE???szClassNumberEx ???? char szClassNumberEx[512]; /// ?? char szDormitoryNo[64]; /// ????? char szStudentNo[64]; /// ??? EM_USER_TYPE emUserType; /// ???????( EM_USER_TYPE_ORDINARY ?? EM_USER_TYPE_DISABLED ???? ) BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? UTC ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szQRCode[512]; /// ???????? char szCompanyName[200]; /// ??????? int nScore; /// ??????????? EM_FACE_CHECK emFaceCheck; /// ??????????????????????????????????S EM_QRCODE_IS_EXPIRED emQRCodeIsExpired; /// ????????????????0 EM_QRCODE_STATE emQRCodeState; /// ??????? NET_TIME stuQRCodeValidTo; /// ??????????? UINT nBlockId; /// ?????????????????1??????? char szSection[64]; /// ???????? char szWorkClass[256]; /// ?????? EM_TEST_ITEMS emTestItems; /// ??????? NET_TEST_RESULT stuTestResult; /// ESD????????? char szDeviceID[128]; /// ????????? char szUserUniqueID[128]; /// ?????????ID BOOL bUseCardNameEx; /// ?????????????? char szCardNameEx[128]; /// ????????? int nHSJCResult; ///?????????? -1: ??? 0: ?? 1: ???? 2: ????? 3: ???? NET_VACCINE_INFO stuVaccineInfo; /// ????????????? NET_TRAVEL_INFO stuTravelInfo; /// ????????? char szTrafficPlate[32]; /// ???? char szQRCodeEx[2048]; /// ?????????? char szRecordUrl[128]; /// ??????????15-30s?????, ????????????????????,?????????????????. NET_HSJC_INFO stuHSJCInfo; /// ??????? NET_ANTIGEN_INFO stuAntigenInfo; /// ????????? char szHealthGreenStatus[20]; /// ????????? ????:"Green" ????:"Red" ????:"Yellow" ??:"Orange" ???:"None" char szCitizenIDAddress[108]; /// ?? UINT nCitizenIDEC; /// ????(????DEV_EVENT_ALARM_CITIZENIDCARD_INFO??nECType????) NET_TIME stuCitizenIDBirth; /// ????????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nAge; /// ???? char szCheckOutType[32]; /// ??????? char szCheckOutCause[512]; /// ?????? char szLocationName[256]; /// ?????????? char szLocationAddress[256]; /// ????????????????? char szLocationType[256]; /// ?????????? char szCallLiftFloor[16]; /// ???????? NET_ACCESS_CTL_OBJECT_PROPERTIES stuObjectProperties; ///????????????????? int nRemoteQRCodeType; /// ??????????????????????? 0-??????1-???????2-????????? -1-??? NET_BUTTON_CONTROL_INFO stuButtonControlInfo; /// ???????????? BYTE szReversed[252]; /// ?????? }DEV_EVENT_ACCESS_CTL_INFO; ///@brief ??????? EVENT_IVS_NETPALYCHECK(??????????)??????????????? typedef struct tagDEV_EVENT_ALARM_NETPLAYCHECK_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[8]; /// ?????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ NET_TIME_EX stuTime; /// ????????????, (??????, ???????utc???) char szIdentityCard[DH_COMMON_STRING_32]; ///?????????? char szNetBarName[DH_COMMON_STRING_32]; ///???????? char szNetBarID[DH_COMMON_STRING_32]; ///?????? char szNetBarAddr[DH_COMMON_STRING_64]; ///?????? }DEV_EVENT_ALARM_NETPLAYCHECK_INFO; #define MAX_SNAPBYTIME_DATA_NUM 20 ///@brief ??????? typedef struct tagEVENT_SNAPBYTIME_DATA { DWORD dwLiquidLevel; /// ????,????mm DWORD dwDistMeasure; /// ????,????mm int nTemperature; /// ????,?????? int nHumidity; /// ????,????RH DWORD dwWaterFlow; /// ?????,????m^3 BOOL bAlarmFlag; /// ???????? ???? FALSE, ???? TRUE char szReversed[40]; /// ??????? }EVENT_SNAPBYTIME_DATA; ///@brief ??????? EVENT_IVS_SNAPBYTIME(????????)??????????????? typedef struct tagDEV_EVENT_SNAPBYTIME { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????????nChannelID????????????????????????????*/ NET_TIME_EX stuSnapTime; /// ????? unsigned int uLiquidLevel; /// ????,????mm unsigned int uDistMeasure; /// ????,????mm int nTemperature; /// ????,?????? int nHumidity; /// ????,????RH int nDataNum; /// ??????? EVENT_SNAPBYTIME_DATA stuDataList[MAX_SNAPBYTIME_DATA_NUM]; /// ???????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReversed[744 - POINTERSIZE]; /// ??????? }DEV_EVENT_SNAPBYTIME; ///@brief ???????EVENT_IVS_MAN_STAND_DETECTION(?????????????)??????????????? typedef struct tagDEV_EVENT_MANSTAND_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ??????,???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????????nChannelID????????????????????????????*/ int nAction; /// 0:???? 1:??? 2:?? int nManListCount; /// ??????????????? MAN_STAND_LIST_INFO stuManList[MAX_MAN_LIST_COUNT]; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szReversed[2048]; /// ??????? } DEV_EVENT_MANSTAND_DETECTION_INFO; ///@brief ????? typedef enum tagEM_EVENT_DETECT_TYPE { EM_EVENT_DETECT_TYPE_UNKNOWN = -1, /// ??? EM_EVENT_DETECT_TYPE_LESS_OR_EQUAL, /// ?????????????? EM_EVENT_DETECT_TYPE_GREATER_OR_EQUAL, /// ?????????????? EM_EVENT_DETECT_TYPE_EQUAL, /// ?????????? EM_EVENT_DETECT_TYPE_NOEQUAL, /// ???????????? EM_EVENT_DETECT_TYPE_CHANGE, /// ??????????? EM_EVENT_DETECT_TYPE_GREATER, /// ??????????? EM_EVENT_DETECT_TYPE_LESS, /// ??????????? EM_EVENT_DETECT_TYPE_IN_INTERVAL, /// ???????????????????????????????????????????????????PersonNum??? EM_EVENT_DETECT_TYPE_OUT_INTERVAL, /// ???????????????????????????????????????????????????PersonNum??? }EM_EVENT_DETECT_TYPE; ///@brief ???????EVENT_IVS_MAN_NUM_DETECTION(???????????????????????)??????????????? typedef struct tagDEV_EVENT_MANNUM_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ??????, ???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????????nChannelID????????????????????????????*/ int nAction; /// 0:???? 1:??? 2:?? int nManListCount; /// ??????????????? MAN_NUM_LIST_INFO stuManList[MAX_MAN_LIST_COUNT]; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nAreaID; /// ????ID(???????????????????ID) UINT nPrevNumber; /// ???????? UINT nCurrentNumber; /// ??????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? /// ?????????????????????? /// ?????????+???+???????????????2???????14??????????5?? char szRuleName[128]; /// ???????? EM_EVENT_DETECT_TYPE emDetectType; /// ????? UINT nAlertNum; /// ???????????????? int nAlarmType; /// ????????. 0:???, 1:??????????????????, 2:?????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nDetectRegionNum; /// ????????? NET_POINT_EX stuDetectRegion[20]; /// ????? char szReversed[700]; /// ??????? } DEV_EVENT_MANNUM_DETECTION_INFO; ///@brief ??????? EVENT_IVS_QUEUENUM_DETECTION??????????????????????????????????? typedef struct tagDEV_EVENT_QUEUENUM_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ??????, ???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DWORD nEventID; /// ???ID int nAction; /// 0:???? 1:??? 2:?? /*????????????????nChannelID????????????????????????????*/ UINT nAreaID; /// ????ID(???????????????????ID) int nMaxManListNum; /// ????????????????? MAN_NUM_LIST_INFO stuManList[MAX_MAN_LIST_COUNT]; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReversed[1012]; /// ??????? } DEV_EVENT_QUEUENUM_DETECTION_INFO; ///@brief ??????? EVENT_IVS_GENERATEGRAPH_DETECTION??????????????????????????? typedef struct tagDEV_EVENT_GENERATEGRAPH_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ??????, ???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 0:???? 1:??? 2:?? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? /*????????????????nChannelID????????????????????????????*/ BYTE byReversed[1024]; /// ??????? } DEV_EVENT_GENERATEGRAPH_DETECTION_INFO; ///@brief ???????EVENT_IVS_TIREDPHYSIOLOGICAL(????????????)????????????????? typedef struct tagDEV_EVENT_TIREDPHYSIOLOGICAL_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 0:???? 1:??? 2:?? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? BYTE bReserved[736]; /// ???????,???????. } DEV_EVENT_TIREDPHYSIOLOGICAL_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_TIREDLOWERHEAD(??????????????)????????????????? typedef struct tagDEV_EVENT_TIREDLOWERHEAD_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? BYTE bReserved[736]; /// ???????,???????. } DEV_EVENT_TIREDLOWERHEAD_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_DRIVERLOOKAROUND(??????????????????)????????????????? typedef struct tagDEV_EVENT_DRIVERLOOKAROUND_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? BYTE bReserved[736]; /// ???????,???????. } DEV_EVENT_DRIVERLOOKAROUND_INFO; ///@brief ???????EVENT_IVS_INFRAREDBLOCK(?????????????)????????????????? typedef struct tagDEV_EVENT_INFRAREDBLOCK_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? BYTE bReserved[736]; /// ???????,???????. } DEV_EVENT_INFRAREDBLOCK_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_DRIVERLEAVEPOST(?????????????)????????????????? typedef struct tagDEV_EVENT_DRIVERLEAVEPOST_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? BYTE bReserved[736]; /// ???????,???????. } DEV_EVENT_DRIVERLEAVEPOST_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVERYAWN (???????????) ????????????????? typedef struct tagDEV_EVENT_DRIVERYAWN_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? BYTE byReserved[736]; /// ???????,???????. } DEV_EVENT_DRIVERYAWN_INFO; ///@brief ?????? typedef enum tagEM_FIREWARNING_PIC_TYPE { EM_PIC_UNKNOWN, /// ??? EM_PIC_NONE, /// ?? EM_PIC_OVERVIEW, /// ???? EM_PIC_DETAIL, /// ???? }EM_FIREWARNING_PIC_TYPE; ///@brief ??????? EVENT_IVS_FIREWARNING(?????) ????????????????? typedef struct tagDEV_EVENT_FIREWARNING_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nAction; /// 1:??? 2:?? UINT nFSID; /// Uint32 ??????ID EM_FIREWARNING_PIC_TYPE emPicType; /// ?????? BOOL bIsLeaveFireDetect; /// ??????????????(TRUE:?? FALSE:????) NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[1008 - POINTERSIZE]; /// ??????? }DEV_EVENT_FIREWARNING_INFO; ///@brief ??????????? typedef enum tagEM_DETECT_OBJECT { EM_DETECT_OBJECT_UNKNOWN, /// ?????? EM_DETECT_OBJECT_HUMAN_BODY_AND_FACE, /// ?????????? EM_DETECT_OBJECT_HUMAN_BODY, /// ???????? EM_DETECT_OBJECT_HUMAN_FACE, /// ??????? }EM_DETECT_OBJECT; ///@brief ????????? typedef struct tagHUMAN_IMAGE_INFO { UINT nOffSet; /// ??? UINT nLength; /// ??????,??????? UINT nWidth; /// ?????? UINT nHeight; /// ????? UINT nIndexInData; /// ???????????????????? BYTE byReserved[52]; /// ?????? }HUMAN_IMAGE_INFO; ///@brief ???????? typedef struct tagFACE_IMAGE_INFO { UINT nOffSet; /// ??? UINT nLength; /// ??????,??????? UINT nWidth; /// ?????? UINT nHeight; /// ????? UINT nIndexInData; /// ???????????????????? BYTE byReserved[52]; /// ?????? }FACE_IMAGE_INFO; ///@brief ??????????? typedef enum tagEM_HAS_VEST { EM_HAS_VEST_UNKNOWN = 0, /// ??? EM_HAS_VEST_NO, /// ?? EM_HAS_VEST_YES, /// ?? }EM_HAS_VEST; ///@brief ?????????? typedef enum tagEM_HAS_BADGE { EM_HAS_BADGE_UNKNOWN = 0, /// ??? EM_HAS_BADGE_NO, /// ?? EM_HAS_BADGE_YES, /// ?? }EM_HAS_BADGE; ///@brief ?????????? typedef enum tagEM_HAS_BABYCARRIAGE { EM_HAS_BABYCARRIAGE_UNKNOWN = 0, /// ??? EM_HAS_BABYCARRIAGE_NO, /// ?? EM_HAS_BABYCARRIAGE_YES, /// ?? }EM_HAS_BABYCARRIAGE; ///@brief ?????? typedef enum tagEM_IS_ERRORDETECT { EM_IS_ERRORDETECT_UNKNOWN = -1, /// ??? EM_IS_ERRORDETECT_NO, /// ?? EM_IS_ERRORDETECT_YES, /// ?? }EM_IS_ERRORDETECT; ///@brief ????????????? typedef enum tagEM_HAS_HEAD { EM_HAS_HEAD_UNKNOWN = -1, /// ??? EM_HAS_HEAD_NO, /// ?? EM_HAS_HEAD_YES, /// ?? }EM_HAS_HEAD; ///@brief ?????????????????? typedef enum tagEM_HAS_DOWNBODY { EM_HAS_DOWNBODY_UNKNOWN = -1, /// ??? EM_HAS_DOWNBODY_NO, /// ?? EM_HAS_DOWNBODY_YES, /// ?? }EM_HAS_DOWNBODY; ///@brief ????????? typedef enum tagEM_HAS_RAINCOAT { EM_HAS_RAINCOAT_UNKNOWN = 0, /// ??? EM_HAS_RAINCOAT_NO, /// ?? EM_HAS_RAINCOAT_YES, /// ?? }EM_HAS_RAINCOAT; ///@brief ??????????????? typedef enum tagEM_ASSOCIATED_RECORD_SOURCE { EM_ASSOCIATED_RECORD_SOURCE_UNKNOWN = -1, /// ??? EM_ASSOCIATED_RECORD_SOURCE_NONE, /// ?????? EM_ASSOCIATED_RECORD_SOURCE_HUMAN, /// ??????????????? EM_ASSOCIATED_RECORD_SOURCE_MOTOR_VEHICLE_PASSING, /// ????????????????? EM_ASSOCIATED_RECORD_SOURCE_MOTOR_VEHICLE_VIOLATION, /// ????????????????? EM_ASSOCIATED_RECORD_SOURCE_STRUCTURED_MOTOR_VEHICLE, /// ????????????????? EM_ASSOCIATED_RECORD_SOURCE_FACE, /// ??????????? EM_ASSOCIATED_RECORD_SOURCE_NON_MOTOR_VEHICLE, /// ?????????????? }EM_ASSOCIATED_RECORD_SOURCE; ///@brief ??????????? typedef struct tagHUMAN_ATTRIBUTES_INFO { EM_CLOTHES_COLOR emCoatColor; /// ??????? EM_COAT_TYPE emCoatType; /// ???????? EM_CLOTHES_COLOR emTrousersColor; /// ??????? EM_TROUSERS_TYPE emTrousersType; /// ???????? EM_HAS_HAT emHasHat; /// ??????? EM_HAS_BAG emHasBag; /// ?????? NET_RECT stuBoundingBox; /// ??????(8192?????) int nAge; /// ???? EM_SEX_TYPE emSex; /// ??? EM_ANGLE_TYPE emAngle; /// ??? EM_HAS_UMBRELLA emHasUmbrella; /// ?????? EM_BAG_TYPE emBag; /// ?????? EM_CLOTHES_PATTERN emUpperPattern; /// ???????????? EM_HAIR_STYLE emHairStyle; /// ?????? EM_CAP_TYPE emCap; /// ????? NET_POINT stuHumanCenter; /// ????????(?????????????), 0-8191???????, ??????? EM_HAS_VEST emHasVest; /// ???????????; EM_HAS_BADGE emHasBadge; /// ?????????? EM_HAS_BABYCARRIAGE emHasBabyCarriage; /// ?????????? EM_IS_ERRORDETECT emIsErrorDetect; /// ?????????????????????????????????????? EM_HAS_HEAD emHasHead; /// ????????????? EM_HAS_DOWNBODY emHasDownBody; /// ?????????????????? UINT nAngleConf; /// ????????????????????0??100 UINT nUpColorConf; /// ????????????????????????0??100 UINT nDownColorConf; /// ????????????????????????0??100 UINT nGenderConf; /// ????????????????????0??100 UINT nAgeConf; /// ??????????????????????0??100 UINT nHatTypeConf; /// ????????????????????????0??100 UINT nUpTypeConf; /// ?????????????????????????0??100 UINT nDownTypeConf; /// ?????????????????????????0??100 UINT nHairTypeConf; /// ?????????????????????????0??100 UINT nHasHeadConf; /// ????????????????????????????????0??100 UINT nHasDownBodyConf; /// ???????????????????????????????????0??100 UINT nUniformStyleConf; /// ????????????????????????0??100 char nCoatType; /// ?????????emCoatType?????????????????????? /// 0:??? 1:???? 2:???? 3:??????? 4:?????????? 5:T???? /// 6:???? 7:????? 8:???? 9:????? 10:??? 11:??? 12:???? 13:???? BYTE byReserved[3]; /// ?????? }HUMAN_ATTRIBUTES_INFO; ///@brief ??????????????(???HUMAN_ATTRIBUTES_INFO?????????????????????) typedef struct tagHUMAN_ATTRIBUTES_INFO_EX { EM_HAS_RAINCOAT emHasRainCoat; /// ??????? EM_CLOTHES_COLOR emMaskColor; /// ??????? UINT nQeScore; /// ??????????? UINT nIntegrality; /// ??????????0-????????0-????????????????????? EM_ASSOCIATED_RECORD_SOURCE emExtRecordSource; /// ??????????????? EM_CLOTHES_COLOR emCapColor; /// ?????? EM_UNIFORM_STYLE emUniformStyle; /// ??????? int nHumanClarity; /// ??????????????????? 1~100??0?????? int nHumanCompleteScore; /// ?????????????? BOOL bIsRelatedFace; /// ?????????????????????????? EM_COAT_TYPE emCoatStyle; /// ?????? EM_SHOES_TYPE emShoesType; /// ?????? EM_CLOTHES_COLOR emShoesColor; /// ??????? EM_AGE_SEG emAgeSeg; /// ????? int nMask; /// ??????, -1:???, 0:???????, 1:????????, 2:?????? UINT nHumanState; /// ????????? BYTE byReserved[980]; /// ?????? }HUMAN_ATTRIBUTES_INFO_EX; ///@brief ??????? typedef struct tagNET_FACE_ATTRIBUTE { EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??? int nAge; /// ????,-1???????????????? unsigned int nFeatureValidNum; /// ???????????????????,?? emFeature ?????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emFeatures[DH_MAX_FACEDETECT_FEATURE_NUM]; /// ???????????,?? nFeatureValidNum ?????? char szReserved[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ?????, 0?????????????1-100,??????????? NET_RECT stuBoundingBox; /// ??????(8192?????) NET_EULER_ANGLE stuFaceCaptureAngle; /// ???????????????????, nPitch:????????????, nYaw?????????????, nRoll????????????????????? /// ??????????[-90,90], ???????????999?????????????? UINT nFaceQuality; /// ??????????????,???? 0~10000 int nFaceAlignScore; /// ????????????,???? 0~10000,-1?????? int nFaceClarity; /// ????????????,???? 0~10000,-1?????? NET_POINT stuFaceCenter; /// ???????(?????????????), 0-8191???????, ??????? EM_FACEDETECT_GLASSES_TYPE emGlass; /// ??????? UINT nFaceDetectConf; /// ?????????????0~100 NET_FACE_ORIGINAL_SIZE stuOriginalSize; /// ??????????????????????, ?????0????? int arrAngleStatus[3]; /// ????????(Angle)?? UINT nIlluminationScore; /// ???????,????[0,255] char nLeftEyeCoverConf; /// ???????????????,????[0,100] char nLeftCheekCoverConf; /// ?????????????????,????[0,100] char nMouthCoverConf; /// ??????????????,????[0,100] char nRightEyeCoverConf; /// ???????????????,????[0,100] char nRightCheekCoverConf; /// ?????????????????,????[0,100] char nChinCoverConf; /// ???????????????,????[0,100] char nIsCompleteFace; /// ????????????? ????????????????0??1 0??????????????????????? 1????? char nSaturationScore; /// ??????????????,????[0,100] char nBrowCoverConf; /// ?????????????,????[0,100] char nNoseCoverConf; /// ??????????????,????[0,100] BYTE bReserved0[2]; /// ???????,??????? EM_AGE_SEG emAgeSeg; /// ????? BYTE bReserved[36]; /// ???????,???????. } NET_FACE_ATTRIBUTE; ///@brief ?????????????????????????? typedef struct tagNET_HUMANTRAIT_EXTENSION_INFO { char szAdditionalCode[MAX_HUMANTRAIT_EVENT_LEN]; /// ??????????????????????????,??????????32?????????????4????????????????????????????? BYTE byReserved[32]; /// ??????? } NET_HUMANTRAIT_EXTENSION_INFO; ///@brief ????????????????????? typedef enum tagEM_COMPLIANTDETAIL_TYPE { EM_COMPLIANTDETAIL_UNKNOWN, /// ??? EM_COMPLIANTDETAIL_MASK, /// ??? EM_COMPLIANTDETAIL_HELMET, /// ??? EM_COMPLIANTDETAIL_VEST, /// ?????? EM_COMPLIANTDETAIL_GLASSESS, /// ??????? EM_COMPLIANTDETAIL_COATCOLOR, /// ?????? EM_COMPLIANTDETAIL_TROUSESCOLOR, /// ?????? }EM_COMPLIANTDETAIL_TYPE; ///@brief ????????????????? typedef enum EM_HUMAN_POSTURE_TYPE { EM_HUMAN_POSTURE_UNKNOWN, /// ??? EM_HUMAN_POSTURE_ALONG_WITH_FACE, /// ??????????????????? }EM_HUMAN_POSTURE_TYPE; ///@brief ???????????? typedef enum EM_IMAGE_LIGHT_TYPE { EM_IMAGE_LIGHT_TYPE_UNKNOWN = 0, /// ??? EM_IMAGE_LIGHT_TYPE_VISIBLE, /// ???????? EM_IMAGE_LIGHT_TYPE_NEAR_INFRARED, /// ?????????(????) EM_IMAGE_LIGHT_TYPE_THERMAL_INFRARED, /// ????????(?????) }EM_IMAGE_LIGHT_TYPE; ///@brief ??????? EVENT_IVS_HUMANTRAIT(???????????)????????????????? typedef struct tagDEV_EVENT_HUMANTRAIT_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nEventID; /// ???ID double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 1:??? 2:?? EM_CLASS_TYPE emClassType; /// ??????????????? int nGroupID; /// ?????ID???????????????????nGroupID??? int nCountInGroup; /// ??????????????????(???????),?????????????????nCountInGroup??? int nIndexInGroup; /// ????????????????????1??? HUMAN_IMAGE_INFO stuHumanImage; /// ????????? FACE_IMAGE_INFO stuFaceImage; /// ???????? EM_DETECT_OBJECT emDetectObject; /// ??????????? HUMAN_ATTRIBUTES_INFO stuHumanAttributes; /// ???????? SCENE_IMAGE_INFO stuSceneImage; /// ????????? NET_FACE_ATTRIBUTE stuFaceAttributes; /// ??????? FACE_SCENE_IMAGE stuFaceSceneImage; /// ??????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? NET_HUMANTRAIT_EXTENSION_INFO stuHumanTrait; /// ????????????????????????????????????? NET_HUMAN_FEATURE_VECTOR_INFO stuHumanFeatureVectorInfo; /// ??????????????????????????????????? EM_FEATURE_VERSION emHumanFeatureVersion; /// ?????????????? NET_FACE_FEATURE_VECTOR_INFO stuFaceFeatureVectorInfo; /// ?????????????????????????????????? EM_FEATURE_VERSION emFaceFeatureVersion; /// ????????????? UINT nCompliantMark; /// ?????0????????1?????,???????????????????? ?????????? int nCompliantDetailsNum; /// ?????????????????????? EM_COMPLIANTDETAIL_TYPE emCompliantDetailType[32]; /// ???????????????????????????????????????????????????????????????????????????????? int nHumanPostureTypeNum; /// ????????????????????????? EM_HUMAN_POSTURE_TYPE emHumanPostureType[32]; ///????????????????????? HUMAN_IMAGE_INFO stuAlongWithFaceHumanImage; ///????????????????????????emHumanPostureType????EM_HUMAN_POSTURE_ALONG_WITH_FACE????? SCENE_IMAGE_INFO stuAlongWithFaceHumanSceneImage; ///?????????????????????????emHumanPostureType????EM_HUMAN_POSTURE_ALONG_WITH_FACE????? HUMAN_ATTRIBUTES_INFO stuAlongWithFaceHumanAttributes; ///????????????????????????emHumanPostureType????EM_HUMAN_POSTURE_ALONG_WITH_FACE????? BOOL bCompliantMarkEnable; /// ?????????? NET_HUMAN_FEATURE_VECTOR_INFO stuAlongWithFaceHumanVectorInfo; /// ??????????????????????????????????? EM_FEATURE_VERSION emAlongWithFaceHumanVersion; /// ?????????????? UINT nCompliantMode; /// ?????: 0-??????1-?????????????????????? UINT nAlarmCompliance; /// 1:????? 2:??? UINT nStartSequence; /// ?????????????????????????????????????????????????????????????????????????? UINT nEndSequence; /// ??????????????????????????????????????????????????????????????????????????? EM_IMAGE_LIGHT_TYPE emImageLightType; /// ???????????? HUMAN_ATTRIBUTES_INFO_EX stuHumanAttributesEx; /// stuHumanAttributes ????? HUMAN_ATTRIBUTES_INFO_EX stuAlongWithFaceHumanAttributesEx;/// stuAlongWithFaceHumanAttributes ????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char szObjectUUID[48]; /// ???????????????????? char szHumanFeatureVersion[32]; /// ??????????????-????? char szFaceFeatureVersion[32]; /// ?????????????-????? char szAlongWithFaceHumanVersion[32]; /// ??????????????-????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 char szReserved[2]; /// ???? NET_IMAGE_INFO_EX3* pstuImageInfo; /// ????????? UINT nDetectMode; /// ??????????????????????: 0: ????????? 1: ?????????? 2: ???????????????? 3:?????????????????? char byReserved[852-POINTERSIZE]; /// ??????? }DEV_EVENT_HUMANTRAIT_INFO; ///@brief ???????????? typedef struct tagDEV_EVENT_LE_HEADDETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_LE_HEADDETECTION_INFO; ///@brief ???????EVENT_IVS_BUSSHARPTURN(??????????????)????????????????? typedef struct tagDEV_EVENT_BUSSHARPTURN_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 0:???? 1:??? 2:?? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_BUSSHARPTURN_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ELETAGINFO(RFID????????????)??????????????? typedef struct tagDEV_EVENT_TRAFFIC_ELETAGINFO_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nAction; /// 0:???? 1:??? 2:?? NET_RFIDELETAG_INFO stuRFIDEleTagInfo; /// RFID???????????? int nRetChannelNum; /// ????????? int nLinkChannel[DH_MAX_CHANNUM]; /// ????????????,??????0??? BYTE bReserved[956]; /// ???????,???????. } DEV_EVENT_TRAFFIC_ELETAGINFO_INFO; ///@brief ????????? typedef enum tagEM_PASS_CHANGE_PICTURE_TYPE { EM_PASS_CHANGE_PICTURE_TYPE_UNKNOWN, /// ??? EM_PASS_CHANGE_PICTURE_TYPE_PASS, /// ????? EM_PASS_CHANGE_PICTURE_TYPE_REAL, /// ???? } EM_PASS_CHANGE_PICTURE_TYPE; ///@brief ??????? EVENT_IVS_PASS_CHANGE(????????????)??????????????? typedef struct tagDEV_EVENT_PASS_CHANGE_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szReserved1[4]; /// ?????? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nPresetID; /// ?????????1??? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? EM_PASS_CHANGE_PICTURE_TYPE emPictureType; /// ???????????????????? BYTE byReserved1[1020]; /// ??????? } DEV_EVENT_PASS_CHANGE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_WAITINGAREA(???????????????)??????????????? typedef struct tagDEV_EVENT_TRAFFIC_WAITINGAREA_INFO { int nChannelID; /// ????? BYTE byReserved[4]; /// ?????????????? char szName[MAX_EVENT_NAME_LEN]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ?????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE byReserved1[1024]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_WAITINGAREA_INFO; #define MAX_OBJECT_NUM 32 /// ?????????? ///@brief ??????? EVENT_IVS_QUEUESTAY_DETECTION(???????????????)??????????????? typedef struct tagDEV_EVENT_QUEUESTAY_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ??????, ???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 0:???? 1:??? 2:?? /*????????????????nChannelID????????????????????????????*/ int nGroupID; /// ?????ID???????????????????nGroupID??? int nCountInGroup; /// ??????????????????(???????),?????????????????nCountInGroup??? int nIndexInGroup; /// ????????????????????1??? DH_MSG_OBJECT stuObject; /// ???????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[MAX_OBJECT_NUM]; /// ??????????? int nDetectRegionNum; /// ???????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? UINT nAreaID; /// ????ID(???????????????????ID) int nCount; /// ?????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReversed[1012]; /// ??????? } DEV_EVENT_QUEUESTAY_DETECTION_INFO; ///@brief ???????EVENT_IVS_BANNER_DETECTION(????????)??????????????? typedef struct tagDEV_EVENT_BANNER_DETECTION_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 1:??? 2:?? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[MAX_OBJECT_NUM]; /// ????????? int nDetectRegionNum; /// ?????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? int nCount; /// ??????????? int nPresetID; /// ???? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BOOL bSceneImage; /// pstuSceneImage??????? SCENE_IMAGE_INFO_EX* pstuSceneImage; /// ??????? BYTE byReserved[1020-2*POINTERSIZE]; /// ???????,???????. } DEV_EVENT_BANNER_DETECTION_INFO; ///@brief ????????????? typedef struct tagNONMOTOR_IMAGE_INFO { int nOffset; /// ??????????????????? int nLength; /// ??????,??????? }NONMOTOR_IMAGE_INFO; ///@brief ???????EVENT_IVS_NONMOTORDETECT(??????????) ??????????????? typedef struct tagDEV_EVENT_NONMOTORDETECT_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 0:???? 1:??? 2:?? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NONMOTOR_IMAGE_INFO stuImageInfo; /// ????????????? int nNumOfCycling; /// ???????? EM_OBJECT_COLOR_TYPE emNonMotorColor; /// ?????????? DH_RECT stuBoundingBox; /// ?????? EM_SEX_TYPE emSex; /// ????????????? int nAge; /// ?????????????? EM_NONMOTOR_OBJECT_STATUS emHelmet; /// ???????????? EM_NONMOTOR_OBJECT_STATUS emCall; /// ???????????????? EM_NONMOTOR_OBJECT_STATUS emHat; /// ??????????????? EM_NONMOTOR_OBJECT_STATUS emBag; /// ????????????????? EM_NONMOTOR_OBJECT_STATUS emCarrierBag; /// ?????????????????? EM_NONMOTOR_OBJECT_STATUS emUmbrella; /// ?????? EM_NONMOTOR_OBJECT_STATUS emGlasses; /// ?????????????????? EM_NONMOTOR_OBJECT_STATUS emMask; /// ???????????????? EM_EMOTION_TYPE emEmotion; /// ????????????? EM_CLOTHES_TYPE emUpClothes; /// ???????????????? EM_CLOTHES_TYPE emDownClothes; /// ???????????????? EM_OBJECT_COLOR_TYPE emUpperBodyColor; /// ??????????????? EM_OBJECT_COLOR_TYPE emLowerBodyColor; /// ??????????????? EM_CATEGORY_NONMOTOR_TYPE emCategoryType; /// ?????????NonMotor??????????? BYTE byReserved[1024]; /// ???????,???????. }DEV_EVENT_NONMOTORDETECT_INFO; ///@brief ???????? typedef enum tagEM_TRIGGER_TYPE { EM_TRIGGER_TYPE_UNKNOWN = -1, /// ??????? EM_TRIGGER_TYPE_CAR_INSPECTION_DEV, /// ?????? EM_TRIGGER_TYPE_DADAR, /// ??? EM_TRIGGER_TYPE_VIDEO, /// ??? }EM_TRIGGER_TYPE; ///@brief ??????????? typedef enum tagEM_VIOLATION_ALARM_TYPE { EM_VIOLATION_ALARM_TYPE_UNKNOWN = -1, /// ??????? EM_VIOLATION_ALARM_TYPE_PARKING_VIOLATION, /// ?????????? EM_VIOLATION_ALARM_TYPE_PREALARM, /// ?????? }EM_VIOLATION_ALARM_TYPE; ///@brief ????GPS??? typedef struct tagNET_CUSTOM_GPS_INFO { double dbLongitude; /// ????(?????????????,????0-360??) double dbLatidude; /// ????(?????????????,????0-180??) double dbAltitude; /// ???,????:?? double dbSpeed; /// ???,????:km/H double dbBearing; /// ?????,????:?? BYTE byReserved[1024]; /// ??????? }NET_CUSTOM_GPS_INFO; ///@brief ???????????????????(???EVENT_IVS_TRAFFIC_BAN) typedef struct tagDEV_EVENT_TRAFFIC_BAN_INFO { int nChannelID; /// ????? EM_TRIGGER_TYPE emTriggerType; /// ???????? char szName[MAX_EVENT_NAME_LEN]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? int nMark; /// ?????????????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ??????? NET_TIME stuStartParkingTime; /// ????????? int nAlarmInterval; /// ??????????,????:?? int nParkingAllowedTime; /// ??????????,????:?? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_CUSTOM_GPS_INFO stuCustomGPSStatus; /// GPS??? EM_VIOLATION_ALARM_TYPE emViolationAlarmType; /// ??????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byReserved[1024]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_BAN_INFO; ///@brief ???????EVENT_IVS_ELEVATOR_ABNORMAL(??T?????????????)????????????????? typedef struct tagDEV_EVENT_ELEVATOR_ABNORMAL_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 1:??? 2:?? EM_CLASS_TYPE emClassType; /// ??????????????? int nDetectRegionPointNum; /// ?????????????? NET_POINT stuDetectRegion[20]; /// ???????????????????????????????????????????[0,8191]???? NET_POINT stuDirection[2]; /// ?????????????????????????????????????????????[0,8191]???? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved1[908]; /// ??????? } DEV_EVENT_ELEVATOR_ABNORMAL_INFO; ///@brief POS????????????????? typedef struct tagNET_POS_ITEM_INFO { char szItemName[DH_COMMON_STRING_32]; /// ??????? double dbPrice; /// ??????? double dbQuantity; /// ???? double dbAmount; /// ??? char szUnit[DH_COMMON_STRING_8]; /// ?????? BYTE byReserved[256]; /// ??????? } NET_POS_ITEM_INFO; ///@brief ??????? EVENT_IVS_POS_EXCHANGE(POS?????????)??????????????? typedef struct tagDEV_EVENT_POS_EXCHANGE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID char szDealNum[DH_COMMON_STRING_16]; /// ????? char szCardID[DH_COMMON_STRING_16]; /// ???? BYTE byReserved1[4]; /// ?????? int nItemListCount; /// ?????????? NET_POS_ITEM_INFO *pstItemList; /// ?????????, ?????nItemListCount*sizeof(NET_POS_ITEM_INFO) NET_RECT stRect; /// POS??????????????????????,???????? NET_COLOR_RGBA stFrontColor; /// OSD?????? unsigned int nFontSize; /// ???????, ????px BYTE byReserved[1020]; /// ??????? } DEV_EVENT_POS_EXCHANGE_INFO; ///@brief ??????? EVENT_IVS_DISTANCE_DETECTION (????????) ????????????????? typedef struct tagDEV_EVENT_DISTANCE_DETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? int nAction; /// 0:???? 1:??? 2:?? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? /// ?????????????????????? /// ?????????+???+???????????????2???????14??????????5?? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[980]; /// ??????? } DEV_EVENT_DISTANCE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_FORWARDCOLLISION_WARNNING(?????????) ????????????????? typedef struct tagDEV_EVENT_FORWARDCOLLISION_WARNNING_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 0:???? 1:??? 2:?? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? int nObjectType; /// ????????, 1:??, 2:??, 17:??????? float fHorizontalDistance; /// ???????, ?????? float fParallelDistance; /// ???????, ?????? int nTargetCoordsX; /// ????????????????X int nTargetCoordsY; /// ????????????????Y int nTargetCoordsHeight; /// ???????????, ?? int nTargetCoordsWidth; /// ???????????, ?? BYTE byReserved[708]; /// ??????? } DEV_EVENT_FORWARDCOLLISION_WARNNING_INFO; ///@brief ??????? EVENT_IVS_MATERIALSSTAY(?????????) ????????????????? typedef struct tagDEV_EVENT_MATERIALSSTAY_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 0:???? 1:??? 2:?? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ?????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? char szPresetName[64]; /// ???????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BYTE byReserved[4092]; /// ??????? } DEV_EVENT_MATERIALSSTAY_INFO; ///@brief ??????? EVNET_IVS_LANEDEPARTURE_WARNNING(??????????) ????????????????? typedef struct tagDEV_EVENT_LANEDEPARTURE_WARNNING_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 0:???? 1:??? 2:?? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? int nDepartureStatus; /// ???????-1:???, 0:??, 1:???, 2:??? float fDepartureDistance; /// ??????????????????????? float fDepartureAngle; /// ???????????????????? BYTE byReserved[724]; /// ??????? } DEV_EVENT_LANEDEPARTURE_WARNNING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NONMOTOR_OVERLOAD (??????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NONMOTOR_OVERLOAD_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? int nAction; /// 0:???? 1:??? 2:?? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? int nLane; /// ?????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? BYTE byReserved[2048]; /// ??????? } DEV_EVENT_TRAFFIC_NONMOTOR_OVERLOAD_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NONMOTOR_WITHOUTSAFEHAT (??????????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NONMOTOR_WITHOUTSAFEHAT_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? int nAction; /// 0:???? 1:??? 2:?? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? int nLane; /// ?????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? BYTE byReserved[2048]; /// ??????? } DEV_EVENT_TRAFFIC_NONMOTOR_WITHOUTSAFEHAT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NONMOTOR_HOLDUMBRELLA (?????????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NONMOTOR_HOLDUMBRELLA_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DH_MSG_OBJECT stuObject; /// ????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? int nLane; /// ?????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? EVENT_COMM_INFO stCommInfo; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? BYTE byReserved[1368]; /// ??????? }DEV_EVENT_TRAFFIC_NONMOTOR_HOLDUMBRELLA_INFO; ///@brief ???????EVENT_IVS_VIDEOUNFOCUS (?????????) typedef struct tagDEV_EVENT_VIDEOUNFOCUS_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nAction; /// 0:???? 1:??? 2:?? BYTE byReserved[4096]; /// ??????? }DEV_EVENT_VIDEOUNFOCUS_INFO; ///@brief ??????? EVENT_IVS_FLOWBUSINESS (??????????) ????????????????? typedef struct tagDEV_EVENT_FLOWBUSINESS_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ?????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? char szPresetName[64]; /// ???????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nViolationDuration; /// ????????????????????? ???0????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[2040 - POINTERSIZE]; /// ??????? } DEV_EVENT_FLOWBUSINESS_INFO; ///@brief ??????????????????? typedef struct tagPTZ_NORMALIZED_POSITION_UNIT { double dbPositionX; /// ???????????,????[-1, 1] double dbPositionY; /// ????????????,????[-1, 1] double dbZoom; /// ???????????,????[0, 1] char szReserved[32]; /// ??? }PTZ_NORMALIZED_POSITION_UNIT; ///@brief ?????? typedef enum tagEM_CITYMOTOR_STATUS { EM_CITYMOTOR_STATUS_UNKNOWN, /// ??? EM_CITYMOTOR_STATUS_DRIVE_IN, /// ??? EM_CITYMOTOR_STATUS_DRIVE_OUT, /// ??? } EM_CITYMOTOR_STATUS; ///@brief ????????????? typedef enum tagEM_PREALARM { EM_PREALARM_UNKNOWN = -1, ///??? EM_PREALARM_VIOLATION_EVENT, ///????????????? EM_PREALARM_VIOLATION_WARNING_EVENT, ///???????????????? }EM_PREALARM; ///@brief ??????? EVENT_IVS_CITY_MOTORPARKING (????????????????) ????????????????? typedef struct tagDEV_EVENT_CITY_MOTORPARKING_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[MAX_OBJECT_NUM]; /// ????????? int nDetectRegionNum; /// ?????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM];/// ??????? char szPresetName[64]; /// ???????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nParkingDuration; /// ???????????????????? ???0????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BOOL bPtzPosition; /// stuPtzPosition ??????? PTZ_NORMALIZED_POSITION_UNIT stuPtzPosition; /// ?????? EM_CITYMOTOR_STATUS emMotorStatus; /// ?????? SCENE_IMAGE_INFO stuSceneImage; /// ?????????? EM_PREALARM emPreAlarm; ///?????????????(???????????????????????g??????????????????) NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byVehicleHeadDirection; /// ??????? 0-???,1-????,2-????,3-???? char byReserved[1011]; /// ??????? } DEV_EVENT_CITY_MOTORPARKING_INFO; ///@brief ??????? EVENT_IVS_CITY_NONMOTORPARKING (?????????????????) ????????????????? typedef struct tagDEV_EVENT_CITY_NONMOTORPARKING_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ?????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? int nAlarmNum; /// ??????? int nNoMotorNum; /// ???????????? char szPresetName[64]; /// ???????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nViolationDuration; /// ????????????????????? ???0????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[892]; /// ??????? } DEV_EVENT_CITY_NONMOTORPARKING_INFO; ///@brief ???????? typedef enum tagEM_AIRPLANE_STATE { EM_AIRPLANE_STATE_UNKNOWN = 0, EM_AIRPLANE_STATE_ENTER, /// ??????? EM_AIRPLANE_STATE_LEAVE, /// ??????? EM_AIRPLANE_STATE_CHOCKON, /// ????? EM_AIRPLANE_STATE_CHOCKOFF, /// ????? EM_AIRPLANE_STATE_NEARBRIDGE, /// ?????? EM_AIRPLANE_STATE_LEAVEBRIDGE, /// ?????? EM_AIRPLANE_STATE_OPENDOOR, /// ????? EM_AIRPLANE_STATE_CLOSEDOOR, /// ????? EM_AIRPLANE_STATE_FUELSTART, /// ?????? EM_AIRPLANE_STATE_FUELEND, /// ??????? EM_AIRPLANE_STATE_FOODSTART, /// ????? EM_AIRPLANE_STATE_FOODEND, /// ?????? EM_AIRPLANE_STATE_BELTSTART, /// ????? EM_AIRPLANE_STATE_BELTEND, /// ??????? EM_AIRPLANE_STATE_TRACTORIN, /// ??????? EM_AIRPLANE_STATE_TRACTOROUT, /// ??????? EM_AIRPLANE_STATE_GUIDEIN, /// ?????????? EM_AIRPLANE_STATE_GUIDEOUT, /// ???????? }EM_AIRPLANE_STATE; ///@brief ??????? EVENT_IVS_AIRPLANE_DETECTION (????????????) ????????????????? typedef struct tagDEV_EVENT_AIRPLANE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_POINT stuGuideLine[2]; /// ?????????? NET_POINT stuStopLine[10][2]; /// ????????? int nStopLineNum; /// ????????????? int nAirPlaneID; /// ???ID NET_POINT stuAirPlaneStopLine[2]; /// ??????????? NET_RECT stuRect; /// ??????????? EM_AIRPLANE_STATE emAirPlaneState; /// ???????? BYTE byReserved[4096]; /// ??????? } DEV_EVENT_AIRPLANE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_PHONECALL_DETECT(??????????) ????????????????? typedef struct tagDEV_EVENT_PHONECALL_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[MAX_EVENT_NAME]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? unsigned int UTCMS; /// UTC?????????? DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nRuleID; /// ????????????? UINT nObjectNum; /// ????????????? DH_MSG_OBJECT stuObjects[128]; /// ??????????????? UINT nSerialUUIDNum; /// ???????????? char szSerialUUID[128][22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szUserName[32]; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[188]; /// ??????? } DEV_EVENT_PHONECALL_DETECT_INFO; ///@brief ??????? EVENT_IVS_SMOKING_DETECT(?????????)????????????????? typedef struct tagDEV_EVENT_SMOKING_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[MAX_EVENT_NAME]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? unsigned int UTCMS; /// UTC?????????? DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 SCENE_IMAGE_INFO stuSceneImageInfo; /// ??????? char szUserName[32]; /// ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1024]; /// ??????? } DEV_EVENT_SMOKING_DETECT_INFO; ///@brief ??????? EVENT_IVS_RADAR_SPEED_LIMIT_ALARM(?????????????)????????????????? typedef struct tagDEV_EVENT_RADAR_SPEED_LIMIT_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szAddress[32]; /// ???IP??? int nSpeed; /// ???, ????km/h NET_TIME_EX UTC; /// ?????????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ??????????????????????????n????,??1??? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_RADAR_SPEED_LIMIT_ALARM_INFO; ///@brief ??????? typedef enum tagEM_FRUIT_TYPE { EM_FRUIT_TYPE_UNKNOWN, /// ??? EM_FRUIT_TYPE_GREEN_TANGERINE, /// ???? EM_FRUIT_TYPE_YELLOW_TANGERINE_ORANGE, /// ????????? EM_FRUIT_TYPE_GRAPEFRUIT, /// ???? EM_FRUIT_TYPE_LEMON, /// ???? EM_FRUIT_TYPE_WATERMELON, /// ???? EM_FRUIT_TYPE_BANANA, /// ?? EM_FRUIT_TYPE_RED_APPLE, /// ????? EM_FRUIT_TYPE_GREEN_APPLE, /// ????? EM_FRUIT_TYPE_MUSKMELON, /// ??? EM_FRUIT_TYPE_HAMIMELON, /// ????? EM_FRUIT_TYPE_PEAR, /// ?? EM_FRUIT_TYPE_KIWI, /// ????? EM_FRUIT_TYPE_PAPAYA, /// ??? EM_FRUIT_TYPE_PINEAPPLE, /// ???? EM_FRUIT_TYPE_MANGO, /// ??? EM_FRUIT_TYPE_LONGAN, /// ???? EM_FRUIT_TYPE_GINSENG_FRUIT, /// ????? EM_FRUIT_TYPE_POMEGRABATE, /// ??? EM_FRUIT_TYPE_COCONUT, /// ??? EM_FRUIT_TYPE_CREAM_JUJUBE, /// ?????? EM_FRUIT_TYPE_WINTER_JUJUBE, /// ???? EM_FRUIT_TYPE_AVOCADO, /// ???? EM_FRUIT_TYPE_RED_PLUM, /// ???? EM_FRUIT_TYPE_PITAYA, /// ?????? EM_FRUIT_TYPE_GUAVA, /// ???? EM_FRUIT_TYPE_PERSIMMON, /// ???? EM_FRUIT_TYPE_YACON, /// ????? } EM_FRUIT_TYPE; ///@brief ??????????? typedef struct tagNET_CANDIDATE_FRUIT_INFO { UINT nSimilarity; /// ????? EM_FRUIT_TYPE emFruitType; /// ???????????? BYTE byReserved[1024]; /// ??????? } NET_CANDIDATE_FRUIT_INFO; ///@brief ??????? EVENT_IVS_WEIGHING_PLATFORM_DETECTION(????????????) ????????????????? typedef struct tagDEV_EVENT_WEIGHING_PLATFORM_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[MAX_EVENT_NAME]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? UINT nCandidateFruitNum; /// ??????????????? NET_CANDIDATE_FRUIT_INFO stuFruitInfos[100]; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? SCENE_IMAGE_INFO_EX stuFruitImage; /// ?????? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_WEIGHING_PLATFORM_DETECTION_INFO; ///@brief media?????????? typedef enum __EM_FILE_QUERY_TYPE { DH_FILE_QUERY_TRAFFICCAR, /// ??????????,????????MEDIA_QUERY_TRAFFICCAR_PARAM DH_FILE_QUERY_ATM, /// ATM??? DH_FILE_QUERY_ATMTXN, /// ATM??????? DH_FILE_QUERY_FACE, /// ?????? MEDIAFILE_FACERECOGNITION_PARAM ?? MEDIAFILE_FACERECOGNITION_INFO DH_FILE_QUERY_FILE, /// ????????? NET_IN_MEDIA_QUERY_FILE ?? NET_OUT_MEDIA_QUERY_FILE DH_FILE_QUERY_TRAFFICCAR_EX, /// ??????????, ???DH_FILE_QUERY_TRAFFICCAR, ????????????????????MEDIA_QUERY_TRAFFICCAR_PARAM_EX DH_FILE_QUERY_FACE_DETECTION, /// ??????????? MEDIAFILE_FACE_DETECTION_PARAM ?? MEDIAFILE_FACE_DETECTION_INFO DH_FILE_QUERY_IVS_EVENT, /// ?????????? MEDIAFILE_IVS_EVENT_PARAM ?? MEDIAFILE_IVS_EVENT_INFO DH_FILE_QUERY_ANALYSE_OBJECT, /// ???????????????(????????) MEDIAFILE_ANALYSE_OBJECT_PARAM ?? MEDIAFILE_ANALYSE_OBJECT_INFO DH_FILE_QUERY_MPT_RECORD_FILE, /// MPT??????????? MEDIAFILE_MPT_RECORD_FILE_PARAM ?? MEDIAFILE_MPT_RECORD_FILE_INFO DH_FILE_QUERY_XRAY_DETECTION, /// X???????????? MEDIAFILE_XRAY_DETECTION_PARAM ?? MEDIAFILE_XRAY_DETECTION_INFO DH_FILE_QUERY_HUMAN_TRAIT, /// ?????? MEDIAFILE_HUMAN_TRAIT_PARAM ?? MEDIAFILE_HUMAN_TRAIT_INFO DH_FILE_QUERY_NONMOTOR, /// ??????????, MEDIAFILE_NONMOTOR_PARAM ?? MEDIAFILE_NONMOTOR_INFO DH_FILE_QUERY_DOORCONTROL_RECORD, /// ?????????, MEDIAFILE_DOORCONTROL_RECORD_PARAM ?? MEDIAFILE_DOORCONTROL_RECORD_INFO DH_FILE_QUERY_FACEBODY_DETECT, /// ??????????MEDIAFILE_FACEBODY_DETECT_PARAM ?? MEDIAFILE_FACEBODY_DETECT_INFO DH_FILE_QUERY_FACEBODY_ANALYSE, /// ???????????MEDIAFILE_FACEBODY_ANALYSE_PARAM ?? MEDIAFILE_FACEBODY_ANALYSE_INFO DH_FILE_QUERY_FILE_EX, /// ?????????????? NET_IN_MEDIA_QUERY_FILE ?? NET_OUT_MEDIA_QUERY_FILE /// ??? NET_IN_MEDIA_QUERY_FILE ???? stuEventInfo ???????, nEventLists ?? nEventCount??????? DH_FILE_QUERY_SNAPSHOT_WITH_MARK, /// ????????, ???MEDIAFILE_SNAPSHORT_WITH_MARK_PARAM ??MEDIAFILE_SNAPSHORT_WITH_MARK_INFO DH_FILE_QUERY_ANATOMY_TEMP_DETECT, /// ??????????????? ??? MEDIAFILE_ANATOMY_TEMP_DETECT_PARAM ?? MEDIAFILE_ANATOMY_TEMP_DETECT_INFO DH_FILE_QUERY_ILLEGAL_TRAFFIC, /// ??????????????? MEDIAFILE_ILLEGAL_TRAFFIC_PARAM ?? MEDIAFILE_ILLEGAL_TRAFFIC_INFO DH_FILE_QUERY_SMOKE_FIRE, /// ???????????? MEDIAFILE_SMOKE_FIRE_PARAM ?? MEDIAFILE_SMOKE_FIRE_INFO DH_FILE_QUERY_FIRE_CONTROL_MONITOR, /// ?????????????????????????? MEDIAFILE_FIRE_CONTROL_MONITOR_PARAM ?? MEDIAFILE_FIRE_CONTROL_MONITOR_INFO DH_FILE_QUERY_FIRE_LANE_DETECTION, /// ???????????????????? MEDIAFILE_FIRE_LANE_DETECTION_PARAM ?? MEDIAFILE_FIRE_LANE_DETECTION_INFO DH_FILE_QUERY_NONMOTOR_ENTRYING, /// ????????????????? MEDIAFILE_NONMOTOR_ENTRYING_PARAM ?? MEDIAFILE_NONMOTOR_ENTRYING_INFO DH_FILE_QUERY_WORK_CLOTHES_DETECTION, /// ????????????? MEDIAFILE_WORK_CLOTHES_DETECTION_PARAM ?? MEDIAFILE_WORK_CLOTHES_DETECTION_INFO DH_FILE_QUERY_INTELLIGENT_CITY_MANAGER, /// ??????????????? MEDIAFILE_INTELLIGENT_CITY_MANAGER_PARAM ?? MEDIAFILE_INTELLIGENT_CITY_MANAGER_INFO DH_FILE_QUERY_SMD_RECORD_FILE, /// ?????????(SMD) ?????, ??? MEDIAFILE_SMD_RECORD_FILE_PARAM ?? MEDIAFILE_SMD_RECORD_FILE_INFO DH_FILE_QUERY_MOBILE_ENFORCE, /// ?????????????????????,??? MEDIAFILE_MOBILE_ENFORCE_PARAM ?? MEDIAFILE_MOBILE_ENFORCE_INFO DH_FILE_QUERY_SMART_KITCHEN_CLOTHES_DETECTION, /// ?????????,??? MEDIAFILE_SMART_KITCHEN_CLOTHES_DETECTION_PARAM ?? MEDIAFILE_SMART_KITCHEN_CLOTHES_DETECTION_INFO DH_FILE_QUERY_WATER_CONSERVANCY_SEARCH, /// ??????, ???MEDIAFILE_WATER_CONSERVANCY_SEARCH_PARAM??MEDIAFILE_WATER_CONSERVANCY_SEARCH_INFO DH_FILE_QUERY_BREAK_RULE_BUILDING_SEARCH, /// ??????????, ???MEDIAFILE_BREAK_RULE_BUILDING_SEARCH_PARAM??MEDIAFILE_BREAK_RULE_BUILDING_SEARCH_INFO DH_FILE_QUERY_BOAT_SEARCH, /// ??????, ???MEDIAFILE_BOAT_SEARCH_PARAM??MEDIAFILE_BOAT_SEARCH_INFO DH_FILE_QUERY_RADAR_REGION_DETECTION, /// ???????????, ??? MEDIAFILE_RADAR_REGION_DETECTION_PARAM ?? MEDIAFILE_RADAR_REGION_DETECTION_INFO DH_FILE_QUERY_EXAM, /// ????????????????????, ??? NET_MEDIAFILE_EXAM_PARAM ?? NET_MEDIAFILE_EXAM_INFO DH_FILE_QUERY_POLICEID, /// ?????? ID?????? ID??????? ID???????, ??? NET_MEDIAFILE_POLICEID_PARAM?? NET_OUT_MEDIA_QUERY_FILE DH_FILE_QUERY_CLASSROOM_BEHAVIOR, /// ??????????????, ??? NET_MEDIAFILE_CLASSROOM_BEHAVIOR_PARAM?? NET_MEDIA_CLASSROOM_BEHAVIOR_INFO DH_FILE_QUERY_VEHICLE_TRIGGER_MODE, /// ????????????, ??? NET_MEDIAFILE_VEHICLE_TRIGGER_MODE_PARAM?? NET_MEDIA_VEHICLE_TRIGGER_MODE_INFO } EM_FILE_QUERY_TYPE; ///@brief ATM???????? typedef enum { ATM_TRADE_ALL, /// ???????? ATM_TRADE_ENQUIRY, /// ??? ATM_TRADE_WITHDRAW, /// ??? ATM_TRADE_MODIFY_PASSWORD, /// ??????? ATM_TRADE_TRANSFER, /// ??? ATM_TRADE_DEPOSIT, /// ??? ATM_TRADE_CARDLESS_ENQUIRY, /// ?????? ATM_TRADE_CARDLESS_DEPOSIT, /// ?????? ATM_TRADE_OTHER, /// ???? }EM_ATM_TRADE_TYPE; ///@brief ?????????? typedef struct { DWORD dwSize; int nType; /// ????, 0-Card, 1-Field char szCardNo[DH_MAX_CARD_INFO_LEN]; /// ???? EM_ATM_TRADE_TYPE emTradeType; /// ???????? char szAmount[DH_COMMON_STRING_64]; /// ??????, ???????????????? int nError; /// ??????, 0-????????, 1-???, 2-??? int nFieldCount; /// ??????, ??????????? char szFields[MAX_CARD_RECORD_FIELD_NUM][DH_COMMON_STRING_256]; /// ?????, ??????????? char szChange[DH_COMMON_STRING_32]; /// ??? }NET_RECORD_CARD_INFO; #define MAX_IVS_EVENT_NUM 256 #define MAX_QUERY_USER_NUM 4 /// ???????????? ///@brief ??????????? typedef enum tagEM_RESULT_ORDER_TYPE { EM_RESULT_ORDER_UNKNOWN, /// ??? EM_RESULT_ORDER_ASCENT_BYTIME, /// ????????????? EM_RESULT_ORDER_DESCENT_BYTIME, /// ???????????? }EM_RESULT_ORDER_TYPE; ///@brief ????????? CLIENT_FindFileEx ???? DH_FILE_QUERY_FILE / DH_FILE_QUERY_FILE_EX ???? ??????? ///@brief ??????????????? typedef struct tagNET_IN_MEDIA_QUERY_FILE { DWORD dwSize; /// ??????? char* szDirs; /// ??????????,????????????,???????????????????????????,???/mnt/dvr/sda0;/mnt/dvr/sda1??,szDirs==null ??"" ?????????? int nMediaType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? BYTE byVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 5-??????????????? BYTE bReserved[3]; /// ?????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? NET_RECORD_CARD_INFO stuCardInfo; /// ??????????, emFalgLists???????????????? int nUserCount; /// ????????????? char szUserName[MAX_QUERY_USER_NUM][DH_NEW_USER_NAME_LENGTH]; /// ????? EM_RESULT_ORDER_TYPE emResultOrder; /// ??????????? BOOL bTime; /// ???????? NET_EM_COMBINATION_MODE emCombination; /// ????????????????? EVENT_INFO stuEventInfo[16]; /// ?????????????? DH_FILE_QUERY_FILE_EX ????????? int nEventInfoCount; /// stuEventInfo ???? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }NET_IN_MEDIA_QUERY_FILE; ///@brief ???????? typedef struct { char szKey[DH_COMMON_STRING_64]; /// ?????? char szValue[DH_COMMON_STRING_512]; /// ?????? BYTE bReserved[256]; /// ??????? }NET_FILE_SUMMARY_INFO; ///@brief ?????????? typedef enum tagEM_VIDEO_FILE_STATE { EM_VIDEO_FILE_STATE_UNKNOWN, /// ??? EM_VIDEO_FILE_STATE_TEMPORARY, /// ?????? EM_VIDEO_FILE_STATE_COMPLETE, /// ??????????????????? } EM_VIDEO_FILE_STATE; ///@brief ????????? CLIENT_FindFileEx ???? DH_FILE_QUERY_FILE / DH_FILE_QUERY_FILE_EX ???? ?????? typedef struct { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? unsigned int nFileSize; /// ???????,?????????,???nFileSizeEx??? BYTE byFileType; /// ??????? 1:jpg??, 2: dav BYTE byDriveNo; /// ??????????,??????????? nDriveNo??? BYTE byPartition; /// ?????? BYTE byVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-?????? 4-?????? unsigned int nCluster; /// ??? char szFilePath[MAX_PATH]; /// ??????? int nEventLists[MAX_IVS_EVENT_NUM]; /// ?????????????,???????????,?????????????????? int nEventCount; ///??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ???????????? int nFalgCount; ///??????? unsigned int nDriveNo; /// ????? /*?????????????*/ char szSynopsisPicPath[DH_COMMON_STRING_512]; /// ?????????????????? ??????? /// ???HTTP URL??? /// ???FTP URL??? /// ???????????????? /// a)"C:/pic/1.jpg" /// b)"/mnt///2010/8/11/dav/15:40:50.jpg" int nSynopsisMaxTime; /// ?????????????????,???? ?? int nSynopsisMinTime; /// ??????????????????,???? ?? /*????????*/ int nFileSummaryNum; /// ?????????? NET_FILE_SUMMARY_INFO stFileSummaryInfo[MAX_FILE_SUMMARY_NUM]; /// ???????? INT64 nFileSizeEx; /// ??????????,?????????????4G????????? UINT nTotalFrame; /// ????????????????????????????? EM_VIDEO_FILE_STATE emFileState; /// ?????????? char szWorkDir[256]; /// ???????????? char szThumbnail[260]; /// ?????????????????????????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }NET_OUT_MEDIA_QUERY_FILE; ///@brief ??????? typedef enum tagEM_SAFE_BELT_STATE { EM_SAFE_BELT_UNKNOWN, /// ??? EM_SAFE_BELT_OTHER, /// ????? EM_SAFE_BELT_WITH, /// ??????? EM_SAFE_BELT_WITHOUT, /// ?????? } EM_SAFE_BELT_STATE; ///@brief ??????????? typedef enum tagEM_ATTACHMENT_TYPE { EM_ATTACHMENT_UNKNOWN, /// ??? EM_ATTACHMENT_OTHER, /// ???????? EM_ATTACHMENT_FURNITURE, /// ??? EM_ATTACHMENT_PENDANT, /// ??? EM_ATTACHMENT_TISSUEBOX, /// ????? EM_ATTACHMENT_DANGER, /// ????? EM_ATTACHMENT_PERFUMEBOX, /// ??? } EM_ATTACHMENT_TYPE; ///@brief ?????? typedef enum tagEM_CALLING_STATE { EM_CALLING_UNKNOWN, /// ??? EM_CALLING_OTHER, /// ????? EM_CALLING_NO, /// ?????? EM_CALLING_YES, /// ???? } EM_CALLING_STATE; ///@brief ???????? typedef enum tagEM_CATEGORY_TYPE { EM_CATEGORY_UNKNOWN, /// ??? EM_CATEGORY_OTHER, /// ???? EM_CATEGORY_MOTOR, /// ?????? EM_CATEGORY_BUS, /// ?????? EM_CATEGORY_UNLICENSED_MOTOR, /// ????????? EM_CATEGORY_LARGE_CAR, /// ???????? EM_CATEGORY_MICRO_CAR, /// ???????? EM_CATEGORY_EMBASSY_CAR, /// ??????? EM_CATEGORY_MARGINAL_CAR, /// ??????? EM_CATEGORY_AREAOUT_CAR, /// ???????? EM_CATEGORY_FOREIGN_CAR, /// ?????? EM_CATEGORY_FARMTRANSMIT_CAR, /// ??????? EM_CATEGORY_TRACTOR, /// ?????? EM_CATEGORY_TRAILER, /// ??? EM_CATEGORY_COACH_CAR, /// ???????? EM_CATEGORY_TRIAL_CAR, /// ???????? EM_CATEGORY_TEMPORARY_ENTRY_CAR, /// ????????? EM_CATEGORY_TEMPORARY_ENTRY_MOTORCYCLE, /// ???????? EM_CATEGORY_TEMPORARY_STEER_CAR, /// ???????? EM_CATEGORY_LARGE_TRUCK, /// ????? EM_CATEGORY_MID_TRUCK, /// ?????? EM_CATEGORY_MICRO_TRUCK, /// ?????? EM_CATEGORY_MICROBUS, /// ????? EM_CATEGORY_SALOON_CAR, /// ???? EM_CATEGORY_CARRIAGE, /// ?????? EM_CATEGORY_MINI_CARRIAGE, /// ?????? EM_CATEGORY_SUV_MPV, /// SUV????MPV EM_CATEGORY_SUV, /// SUV EM_CATEGORY_MPV, /// MPV EM_CATEGORY_PASSENGER_CAR, /// ??? EM_CATEGORY_MOTOR_BUS, /// ??? EM_CATEGORY_MID_PASSENGER_CAR, /// ????? EM_CATEGORY_MINI_BUS, /// ????? EM_CATEGORY_PICKUP, /// ????? EM_CATEGORY_OILTANK_TRUCK, /// ???? EM_CATEGORY_TANK_CAR, /// ????????? EM_CATEGORY_SLOT_TANK_CAR, /// ???? EM_CATEGORY_DREGS_CAR, /// ?????? EM_CATEGORY_CONCRETE_MIXER_TRUCK, /// ?????????? EM_CATEGORY_TAXI, /// ???? EM_CATEGORY_POLICE, /// ???? EM_CATEGORY_AMBULANCE, /// ????? EM_CATEGORY_GENERAL, /// ????? EM_CATEGORY_WATERING_CAR, /// ????? EM_CATEGORY_FIRE_ENGINE, /// ?????? EM_CATEGORY_MACHINE_TRUCK, /// ????? EM_CATEGORY_POWER_LOT_VEHICLE, /// ????????? EM_CATEGORY_SUCTION_SEWAGE_TRUCK, /// ????? EM_CATEGORY_NORMAL_TANK_TRUCK, /// ?????? EM_CATEGORY_SCHOOL_BUS, /// ???? EM_CATEGORY_EXCAVATOR, /// ??? EM_CATEGORY_BULLDOZER, /// ?????? EM_CATEGORY_CRANE, /// ???? EM_CATEGORY_PIMP_TRUCK, /// ???? EM_CATEGORY_FORKLIFT, /// ??? EM_CATEGORY_ELECTRICBIKE, /// ???????? EM_CATEGORY_NON_MOTOR, /// ??????? EM_CATEGORY_ESCORT, /// ???? } EM_CATEGORY_TYPE; ///@brief DH_MEDIA_QUERY_TRAFFICCAR??????????? ??????? typedef struct tagNET_MEDIA_QUERY_TRAFFICCAR_PARAM_EX { char szViolationCode[16]; /// ???????? char szCountry[4]; /// ??????2????????ISO3166??Z BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????StartTime, EndTime), ?FALSE?????????StartTime, EndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(StartTime, EndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(StartTime, EndTime)???? char szPlateCode[16]; ///??????? BYTE byReserved[952]; /// ??????? }NET_MEDIA_QUERY_TRAFFICCAR_PARAM_EX; ///@brief DH_MEDIA_QUERY_TRAFFICCAR??????????? typedef struct { int nChannelID; /// ??????0???,-1????????????? NET_TIME StartTime; /// ?????? NET_TIME EndTime; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? int nEventType; /// ???????,???"??????????????", 0:?????????????,?????????,?????pEventTypes char szPlateNumber[32]; /// ?????, "\0"?????????????? int nSpeedUpperLimit; /// ???????????; ??????? ????: km/h int nSpeedLowerLimit; /// ???????????; ??????? ????: km/h BOOL bSpeedLimit; /// ????????; TRUE:???????,nSpeedUpperLimit??nSpeedLowerLimit?????? DWORD dwBreakingRule; /// ????????? /// ?????????? EVENT_IVS_TRAFFICGATE? /// ?????:????; ?????:??????; ??????:???????; /// ??????????????; ??????:?????; /// ?????????? EVENT_IVS_TRAFFICJUNCTION /// ?????:?????; ?????:??????????????; /// ??????:????; ??????????????; /// ??????:??????; char szPlateType[32]; /// ????????,"Unknown" ???,"Normal" ???????,"Yellow" ????,"DoubleYellow" ????????,"Police" ????,"SAR" ???????????,"Trainning" ?????????? /// "Personal" ???????,"Agri" ?????,"Embassy" ??????,"Moto" ?????????,"Tractor" ??????????,"Other" ???????? /// "Civilaviation"?????,"Black"???? /// "PureNewEnergyMicroCar"????T?????????,"MixedNewEnergyMicroCar,"????????????,"PureNewEnergyLargeCar",????T??????? /// "MixedNewEnergyLargeCar"?????????? char szPlateColor[16]; /// ???????, "Blue"???,"Yellow"???, "White"???,"Black"??? char szVehicleColor[16]; /// ???????:"White"???, "Black"???, "Red"???, "Yellow"???, "Gray"???, "Blue"???,"Green"??? char szVehicleSize[16]; /// ????????????:"Light-duty":?????;"Medium":?????; "Oversize":?????; "Unknown": ??? int nGroupID; /// ???????(???>=0?????) short byLane; /// ??????(???>=0????????t??,-1???????????,?????????????) BYTE byFileFlag; /// ??????, 0xFF-???nFileFlagEx, 0-??????????, 1-??????, 2-??????, 3-??????, 4-??????, 5-?????? BYTE byRandomAccess; /// ???????????????????????,0-?????,1-??? int nFileFlagEx; /// ??????, ???????: bit0-??????, bit1-??????, bit2-??????, bit3-??????, bit4-??????, bit5-????????? 0xFFFFFFFF-??????? int nDirection; /// ?????????????????? 0-?? 1-???? 2-?? 3-???? 4-?? 5-???? 6-?? 7-???? 8-??? -1-???????? char* szDirs; /// ??????????,????????????,???????????????????????????,???/mnt/dvr/sda0;/mnt/dvr/sda1??,szDirs==null ??"" ?????????? int* pEventTypes; /// ?????????????????????,???????,???"??????????????",???NULL???????????????????????????????? int nEventTypeNum; /// ?????????????? char* pszDeviceAddress; /// ??????, NULL???????????????? char* pszMachineAddress; /// ??????????, NULL???????????????? char* pszVehicleSign; /// ???????, ???? "Unknown"-???, "Audi"-???, "Honda"-????... NULL???????????????? WORD wVehicleSubBrand; /// ????????? ???????????????????????? ?????????????? WORD wVehicleYearModel; /// ?????????? ?????????????????????? ?????????????? EM_SAFE_BELT_STATE emSafeBeltState; /// ??????? EM_CALLING_STATE emCallingState; /// ?????? EM_ATTACHMENT_TYPE emAttachMentType; /// ??????????? EM_CATEGORY_TYPE emCarType; /// ???????? NET_MEDIA_QUERY_TRAFFICCAR_PARAM_EX* pstuTrafficCarParamEx; /// ??????? int bReserved[4]; /// ??????? } MEDIA_QUERY_TRAFFICCAR_PARAM; ///@brief ???????? typedef enum tagEM_REFUEL_TYPE { EM_REFUEL_TYPE_UNKNOWN = 0, /// unknown EM_REFUEL_TYPE_NINETY_EIGHT, /// "98#" EM_REFUEL_TYPE_NINETY_SEVEN, /// "97#" EM_REFUEL_TYPE_NINETY_FIVE, /// "95#" EM_REFUEL_TYPE_NINETY_THREE, /// "93#" EM_REFUEL_TYPE_NINETY, /// "90#" EM_REFUEL_TYPE_TEN, /// "10#" EM_REFUEL_TYPE_FIVE, /// "5#" EM_REFUEL_TYPE_ZERO, /// "0#" EM_REFUEL_TYPE_NEGATIVE_TEN, /// "-10#" EM_REFUEL_TYPE_NEGATIVE_TWENTY, /// "-20#" EM_REFUEL_TYPE_NEGATIVE_THIRTY_FIVE, /// "-35#" EM_REFUEL_TYPE_NEGATIVE_FIFTY, /// "-50#" }EM_REFUEL_TYPE; ///@brief DH_MEDIA_QUERY_TRAFFICCAR?????????media?????? typedef struct { unsigned int ch; /// ????? char szFilePath[128]; /// ??????? unsigned int size; /// ???????,????????????????sizeEx NET_TIME starttime; /// ?????? NET_TIME endtime; /// ??????? unsigned int nWorkDirSN; /// ????????? BYTE nFileType; /// ??????? 1:?? 2:??? BYTE bHint; /// ??????????? BYTE bDriveNo; /// ????? BYTE bReserved2; unsigned int nCluster; /// ??? BYTE byPictureType; /// ?????????????, 0-???, 1-???, 2-??????????????????????? MEDIAFILE_TRAFFICCAR_INFO_EX ?? emFalgLists ??? BYTE byVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-?????? BYTE byPartition; /// ????????? BYTE bReserved[1]; /// ??????? /*???????????????*/ char szPlateNumber[32]; /// ??????? char szPlateType[32]; /// ????????"Unknown" ???; "Normal" ???????; "Yellow" ????; "DoubleYellow" ???????? /// "Police" ????; "SAR" ???????????; "Trainning" ??????????; "Personal" ???????; "Agri" ????? /// "Embassy" ??????; "Moto" ?????????; "Tractor" ??????????; "Other" ???????? /// "Civilaviation"?????,"Black"???? /// "PureNewEnergyMicroCar"????T?????????,"MixedNewEnergyMicroCar,"????????????,"PureNewEnergyLargeCar",????T??????? /// "MixedNewEnergyLargeCar"?????????? char szPlateColor[16]; /// ???????:"Blue","Yellow", "White","Black" char szVehicleColor[16]; /// ???????:"White", "Black", "Red", "Yellow", "Gray", "Blue","Green" int nSpeed; /// ????,????Km/H int nEventsNum; /// ????????????? int nEvents[32]; /// ?????????????,????????????????,???"??????????????" DWORD dwBreakingRule; /// ????????????????,?????:?????; ?????:??????????????; /// ??????:????; ??????????????;????????:?????????? char szVehicleSize[16]; /// ????????????:"Light-duty":?????;"Medium":?????; "Oversize":????? char szChannelName[DH_CHAN_NAME_LEN]; /// ???????????????? char szMachineName[DH_MAX_NAME_LEN]; /// ??????????????? int nSpeedUpperLimit; /// ??????? ????: km/h int nSpeedLowerLimit; /// ??????? ????: km/h int nGroupID; /// ?????????? BYTE byCountInGroup; /// ?????????????????? BYTE byIndexInGroup; /// ????????????????? BYTE byLane; /// ????,????MEDIA_QUERY_TRAFFICCAR_PARAM BYTE bReserved1[21]; /// ???? NET_TIME stSnapTime; /// ?????? int nDirection; /// ????????,????MEDIA_QUERY_TRAFFICCAR_PARAM char szMachineAddress[MAX_PATH]; /// ?????????? INT64 sizeEx; /// ?????????????????????????4G????????? } MEDIAFILE_TRAFFICCAR_INFO, *LPMEDIAFILE_TRAFFICCAR_INFO; ///@brief DH_MEDIA_QUERY_TRAFFICCAR_EX??????????? typedef struct tagMEDIA_QUERY_TRAFFICCAR_PARAM_EX { DWORD dwSize; MEDIA_QUERY_TRAFFICCAR_PARAM stuParam; /// ??????????? } MEDIA_QUERY_TRAFFICCAR_PARAM_EX; ///@brief ?????????? typedef struct tagNET_ATTACH_MENET_INFO { EM_ATTACHMENT_TYPE emAttachMentType; /// ??????????? BYTE bReserved1[128]; /// ??????? } NET_ATTACH_MENET_INFO; ///@brief ?????? typedef enum tagEM_SMOKING_STATE { EM_SMOKING_UNKNOWN, /// ??? EM_SMOKING_NO, /// ?????? EM_SMOKING_YES, /// ???? }EM_SMOKING_STATE; ///@brief ?????? typedef enum tagEM_UPLOAD_FLAG { EM_UPLOAD_FLAG_UNKNOWN = 0, /// ??? EM_UPLOAD_FLAG_SUCCEED, /// ??? EM_UPLOAD_FLAG_FAILED, /// ??? }EM_UPLOAD_FLAG; ///@brief ???????? typedef struct tagNET_UPLOAD_CLIENT_INFO { char szClientID[20]; /// ?????????????????IPv4???????MAC??? EM_UPLOAD_FLAG emUploadFlag; /// ???????? NET_TIME stuUploadTime; /// ?????????UTC??? BYTE byReserved[64]; /// ??? }NET_UPLOAD_CLIENT_INFO; ///@brief ????????? typedef struct tagNET_PLATE_IMAGE_INFO { char szFilePath[128]; /// ????????? int nLength; /// ???????????????:??? char szReserved[252]; /// ?????? }NET_PLATE_IMAGE_INFO; ///@brief ????????? typedef struct tagNET_CARBODY_IMAGE_INFO { char szFilePath[128]; /// ????????? int nLength; /// ???????????????:??? char szReserved[252]; /// ?????? }NET_CARBODY_IMAGE_INFO; ///@brief DH_MEDIA_QUERY_TRAFFICCAR_EX??????????????? typedef struct tagMEDIAFILE_TRAFFICCAR_INFO_EX { DWORD dwSize; MEDIAFILE_TRAFFICCAR_INFO stuInfo; /// ??????? char szDeviceAddr[DH_COMMON_STRING_256]; /// ?????? char szVehicleSign[DH_COMMON_STRING_32]; /// ???????, ???? "Unknown"-???, "Audi"-???, "Honda"-????... char szCustomParkNo[DH_COMMON_STRING_64]; /// ?????t????????????? WORD wVehicleSubBrand; /// ?????????????????????????????????? WORD wVehicleYearModel; /// ????????????????????????????? NET_TIME stuEleTagInfoUTC; /// ?????????????????????????(ThroughTime) EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ???????????? int nFalgCount; /// ??????? EM_SAFE_BELT_STATE emSafeBelSate; /// ??????? EM_CALLING_STATE emCallingState; /// ?????? int nAttachMentNum; /// ??????????? NET_ATTACH_MENET_INFO stuAttachMent[MAX_ATTACHMENT_NUM]; /// ?????????? char szCountry[DH_COMMON_STRING_32]; /// ???????????????? EM_CATEGORY_TYPE emCarType; /// ???????? NET_SUNSHADE_STATE emSunShadeState; /// ???????? EM_SMOKING_STATE emSmokingState; /// ?????? int nAnnualInspection; /// ??????? BYTE byReserved[4]; /// ?????? int nPicIDHigh; /// PictureID??????? int nPicIDLow; /// PictureID??????? NET_UPLOAD_CLIENT_INFO stuClient1; /// ???????1?????? NET_UPLOAD_CLIENT_INFO stuClient2; /// ???????2?????? char szExtraPlateNumber[3][32]; /// ??????? int nExtraPlateNumberNum; /// ??????? UINT nEntranceTime; /// ?????????????????UTC??? UINT nOilTime; /// ??????????????????UTC??? UINT nExitTime; /// ?????????????????UTC??? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????starttime??endtime????(?????starttime??endtime, starttime??endtime??MEDIAFILE_TRAFFICCAR_INFO??) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? NET_PLATE_IMAGE_INFO stuPlateImageInfo; ///????????? NET_CARBODY_IMAGE_INFO stuCarBodyImageInfo; ///????????? char szPlateCode[16]; ///??????? } MEDIAFILE_TRAFFICCAR_INFO_EX; ///@brief FINDNEXT?????????? typedef struct __NET_FINDNEXT_RESERVED { DWORD dwSize; /// ??????? unsigned int nBeginNumber; /// ?????????,?????beginNumber?????????? 0<=beginNumber<= totalCount-1 }NET_FINDNEXT_RESERVED; ///@brief ?????????? typedef struct __NET_FINDING_JUMP_OPTION_INFO { DWORD dwSize; int nOffset; /// ???????????, ????????????????????????????????? }NET_FINDING_JUMP_OPTION_INFO; ///@brief DH_FILE_QUERY_FACE???????????????????? typedef struct __MEDIAFILE_FACERECOGNITION_PARAM { DWORD dwSize; /// ??????? /* ??????????? */ NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? char szMachineAddress[MAX_PATH]; /// ???,????????? int nAlarmType; /// ?????????????,??? EM_FACERECOGNITION_ALARM_TYPE BOOL abPersonInfo; /// ????????????? FACERECOGNITION_PERSON_INFO stPersonInfo; /// ?????? int nChannelId; /// ????? int nGroupIdNum; /// ??????? char szGroupId[MAX_GOURP_NUM][DH_COMMON_STRING_64]; /// ?????ID BOOL abPersonInfoEx; /// ???????????????? FACERECOGNITION_PERSON_INFOEX stPersonInfoEx; /// ????????? BOOL bSimilaryRangeEnable; ///???????????? int nSimilaryRange[2]; ///???????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stEndTime), ?FALSE?????????stStartTime, stEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stStartTime, stEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stStartTime, stEndTime)???? }MEDIAFILE_FACERECOGNITION_PARAM; ///@brief ?????? typedef struct tagDH_PIC_INFO_EX { DWORD dwSize; /// ??????? DWORD dwFileLenth; /// ???????, ????:??? char szFilePath[MAX_PATH]; /// ??????? }DH_PIC_INFO_EX; ///@brief ?????? typedef struct tagNET_PIC_INFO { DWORD dwFileLenth; /// ???????, ????:??? char szFilePath[MAX_PATH]; /// ??????? BYTE bReserved[256]; /// ??????? }NET_PIC_INFO; ///@brief ?????????????????????????? typedef struct __NET_CANDIDAT_PIC_PATHS { DWORD dwSize; /// ??????? int nFileCount; /// ?????????? DH_PIC_INFO_EX stFiles[DH_MAX_PERSON_IMAGE_NUM];///?????? }NET_CANDIDAT_PIC_PATHS; ///@brief ?????????????????????????? typedef struct tagNET_CANDIDAT_PIC_PATHS_EX { int nFileCount; /// ?????????? NET_PIC_INFO stFiles[DH_MAX_PERSON_IMAGE_NUM];/// ?????? BYTE bReserved[256]; /// ??????? }NET_CANDIDAT_PIC_PATHS_EX; ///@brief ????????? typedef struct tagIMAGE_INFO { int nLength; /// ??????,????:??? int nWidth; /// ?????? int nHeight; /// ????? char szFilePath[260]; /// ??????? BYTE byReserved[512]; /// ?????? }IMAGE_INFO; ///@brief ????????? typedef struct tagFACE_INFO_OBJECT { IMAGE_INFO stuImageInfo; /// ????????? EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??????? unsigned int nAge; /// ???? EM_FACEDETECT_GLASSES_TYPE emGlasses; /// ??????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ?????? char szReserved[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ???????? EM_BEARD_STATE_TYPE emBeard; /// ????????? int nAttractive; /// ?????,0????????,????????1-100,??????????? NET_EULER_ANGLE stuFaceCaptureAngle; /// ???????????????????, nPitch:????????????, nYaw?????????????, nRoll????????????????????? /// ??????????[-90,90], ???????????999?????????????? UINT nFaceQuality; /// ?????????????? double dMaxTemp; /// ?????? UINT nIsOverTemp; /// ???????? UINT nIsUnderTemp; /// ???????? EM_TEMPERATURE_UNIT emTempUnit; /// ?????? BYTE byReserved1[4]; /// ??????1 BYTE byReserved[2008]; /// ??????? }FACE_INFO_OBJECT; ///@brief ?????? typedef struct tagNET_MEDIAFILE_GENERAL_INFO { char szFilePath[MAX_PATH]; /// ????????? int nObjectUrlNum; /// ObjectUrls????? char szObjectUrls[8][MAX_PATH]; /// ??????? BYTE byReserved[4096]; /// ??????? }NET_MEDIAFILE_GENERAL_INFO; ///@brief DH_FILE_QUERY_FACE??????????????FINDNEXT?????????? typedef struct __MEDIAFILE_FACERECOGNITION_INFO { DWORD dwSize; /// ??????? BOOL bGlobalScenePic; /// ?????????? DH_PIC_INFO_EX stGlobalScenePic; /// ???????????? DH_MSG_OBJECT stuObject; /// ????????????? DH_PIC_INFO_EX stObjectPic; /// ????????????? int nCandidateNum; /// ????????????????????? CANDIDATE_INFO stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ???????????????????? NET_CANDIDAT_PIC_PATHS stuCandidatesPic[DH_MAX_CANDIDATE_NUM]; /// ?????????????????????????? NET_TIME stTime; /// ??????????? char szAddress[MAX_PATH]; /// ??????????? int nChannelId; /// ????? BOOL bUseCandidatesEx; /// ????????????????????, /// ???TRUE, ???????stuCandidatesEx, ??stuCandidates????, ?????? int nCandidateExNum; /// ?????????????????(???????) ???? CANDIDATE_INFOEX stuCandidatesEx[DH_MAX_CANDIDATE_NUM]; /// ????????????????????, ??????????nCandidateNum FACE_INFO_OBJECT stuFaceInfoObject; /// ????????? NET_POINT stuFaceCenter; /// ???????(?????????????), 0-8191???????, ???????? NET_MEDIAFILE_GENERAL_INFO stuGeneralInfo; /// ?????? int nRecNo; /// ????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE???stuStartTimeRealUTC??stuEndTimeRealUTC???? NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_FACERECOGNITION_INFO; ///@brief ?????? typedef enum __EM_FACEPIC_TYPE { NET_FACEPIC_TYPE_UNKOWN, /// ??????? NET_FACEPIC_TYPE_GLOBAL_SENCE, /// ????????? NET_FACEPIC_TYPE_SMALL, /// ?????? }EM_FACEPIC_TYPE; #define NET_MAX_FRAMESEQUENCE_NUM 2 #define NET_MAX_TIMESTAMP_NUM 2 ///@brief ?????????? typedef struct __MEDIAFILE_FACE_DETECTION_DETAIL_PARAM { DWORD dwSize; DWORD dwObjectId; /// ????ID DWORD dwFrameSequence; /// ???? NET_TIME_EX stTime; /// ??????? }MEDIAFILE_FACE_DETECTION_DETAIL_PARAM; ///@brief DH_FILE_QUERY_FACE_DETECTION ???????????????????? typedef struct __MEDIAFILE_FACE_DETECTION_PARAM { DWORD dwSize; /// ??????? /* ??????????? */ int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_FACEPIC_TYPE emPicType; /// ??????,??? EM_FACEPIC_TYPE BOOL bDetailEnable; /// ??????????? MEDIAFILE_FACE_DETECTION_DETAIL_PARAM stuDetail; /// ?????????? EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??????? BOOL bAgeEnable; /// ??????????? int nAgeRange[2]; /// ?????? int nEmotionValidNum; /// ???????????????????,?? emFeature ??????, ????0??????????????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion[DH_MAX_FACEDETECT_FEATURE_NUM]; /// ???????????,?? byFeatureValidNum ?????? EM_FACEDETECT_GLASSES_TYPE emGlasses; /// ??????? EM_MASK_STATE_TYPE emMask; /// ???????? EM_BEARD_STATE_TYPE emBeard; /// ????????? int nIsStranger; /// 0-???????1-???????????????????2-????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? int nChannelIDs[256]; /// ????????? int nChannelNum; /// ????????????? }MEDIAFILE_FACE_DETECTION_PARAM; ///@brief ????????????? typedef struct tagNET_FACEDETECT_IMAGE_INFO { UINT nLength; /// ??????? char szFilePath[260]; /// ??????? BYTE byReserved[128]; /// ??????? } NET_FACEDETECT_IMAGE_INFO; ///@brief DH_FILE_QUERY_FACE_DETECTION??????????????FINDNEXT?????????? typedef struct __MEDIAFILE_FACE_DETECTION_INFO { DWORD dwSize; /// ??????? unsigned int ch; /// ????? char szFilePath[128]; /// ??????? unsigned int size; /// ???????,????????????????sizeEx NET_TIME starttime; /// ?????? NET_TIME endtime; /// ??????? unsigned int nWorkDirSN; /// ????????? BYTE nFileType; /// ??????? 1??jpg?? BYTE bHint; /// ??????????? BYTE bDriveNo; /// ????? BYTE byPictureType; /// ??????, 0-???, 1-???, 2-??? unsigned int nCluster; /// ??? EM_FACEPIC_TYPE emPicType; /// ??????,??? EM_FACEPIC_TYPE DWORD dwObjectId; /// ????ID DWORD dwFrameSequence[NET_MAX_FRAMESEQUENCE_NUM]; /// ????,??????2??????,???????????,??????????? int nFrameSequenceNum; /// ??????? NET_TIME_EX stTimes[NET_MAX_TIMESTAMP_NUM]; /// ???????,??????2??????,???????????,??????????? int nTimeStampNum; int nPicIndex; /// ??????????????? /// ?????????????????????,??????????????? EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??????? int nAge; /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ?????? EM_FACEDETECT_GLASSES_TYPE emGlasses; /// ?????? INT64 sizeEx; /// ?????????????????????????4G????????? EM_MASK_STATE_TYPE emMask; /// ???????? EM_BEARD_STATE_TYPE emBeard; /// ????????? char szReserved1[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? int nAttractive; /// ????? int nIsStranger; /// 0-?????1-???????????????2-????????????? char szFaceObjectUrl[128]; /// ?? emPicType ? NET_FACEPIC_TYPE_GLOBAL_SENCE ?, ?????????????? NET_EULER_ANGLE stuFaceCaptureAngle; /// ???????????????????, nPitch:????????????, nYaw?????????????, nRoll????????????????????? /// ??????????[-90,90], ???????????999?????????????? UINT nFaceQuality; /// ?????????????? NET_FACEDETECT_IMAGE_INFO stuSceneImage; /// ?????? NET_POINT stuFaceCenter; /// ???????(?????????????), 0-8191???????, ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????starttime??endtime????(?????starttime??endtime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_FACE_DETECTION_INFO; ///@brief ????????????? typedef enum tagNET_CROSSREGION_ACTION_INFO { EM_CROSSREGION_ACTION_UNKNOW = 0 , EM_CROSSREGION_ACTION_INSIDE , ///???????? EM_CROSSREGION_ACTION_CROSS , ///??????? EM_CROSSREGION_ACTION_APPEAR , ///???? EM_CROSSREGION_ACTION_DISAPPEAR , ///??? }NET_CROSSREGION_ACTION_INFO; ///@brief ?????????????????????? typedef enum tagEM_MEDIAFILE_IVS_OBJECT { EM_MEDIAFILE_IVS_UNKNOWN, /// unknown EM_MEDIAFILE_IVS_OTHER, /// other EM_MEDIAFILE_IVS_HUMAN, /// human EM_MEDIAFILE_IVS_VEHICLE, /// vehicle EM_MEDIAFILE_IVS_NONMOTOR, /// nonmotor } EM_MEDIAFILE_IVS_OBJECT; ///@brief DH_FILE_QUERY_IVS_EVENT ??????????????????? typedef struct __MEDIAFILE_IVS_EVENT_PARAM { DWORD dwSize; /// ??????? /* ??????????? */ int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? int nRuleType; /// ????????????, ???????,???"??????????????" NET_CROSSREGION_ACTION_INFO emAction; /// ??????? int nIvsObjectNum; /// ??????????? EM_MEDIAFILE_IVS_OBJECT emIvsObject[DH_MAX_OBJECT_LIST]; /// ?????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }MEDIAFILE_IVS_EVENT_PARAM; ///@brief ????????? typedef struct tagNET_EVENT_IMAGE_INFO { int nImageLength; /// ?????? char szImagePath[DH_COMMON_STRING_128]; /// ?????? BYTE bReserved[256]; /// ??????? } NET_EVENT_IMAGE_INFO; ///@brief DH_FILE_QUERY_IVS_EVENT ?????????media?????? typedef struct __MEDIAFILE_IVS_EVENT_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szFilePath[128]; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? unsigned int nFileLength; /// ???????,?????????,?????nFileLengthEx unsigned int nCluster; /// ??? unsigned int nHint; /// ??????????? unsigned int nDriveNo; /// ????? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? int nRuleType; /// ????????????, ???????,???"??????????????" NET_CROSSREGION_ACTION_INFO emAction; /// ??????? INT64 nFileLengthEx; /// ?????????????????????????4G????????? EM_MEDIAFILE_IVS_OBJECT emIvsObject; /// ?????????????? NET_EVENT_IMAGE_INFO stuEventImageInfo; /// ????????? NET_POINT stuObjCenter; /// ????????(?????????????), 0-8191???????, ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_IVS_EVENT_INFO; ///@brief ?????????????????? typedef enum tagEM_ANALYSE_OBJECT_TYPE { EM_ANALYSE_OBJECT_TYPE_UNKNOWN, /// ????? EM_ANALYSE_OBJECT_TYPE_HUMAN, /// ?? EM_ANALYSE_OBJECT_TYPE_VEHICLE, /// ???? EM_ANALYSE_OBJECT_TYPE_FIRE, /// ?? EM_ANALYSE_OBJECT_TYPE_SMOKE, /// ???? EM_ANALYSE_OBJECT_TYPE_PLATE, /// ?????? EM_ANALYSE_OBJECT_TYPE_HUMANFACE, /// ??? EM_ANALYSE_OBJECT_TYPE_CONTAINER, /// ???? EM_ANALYSE_OBJECT_TYPE_ANIMAL, /// ???? EM_ANALYSE_OBJECT_TYPE_TRAFFICLIGHT, /// ????? EM_ANALYSE_OBJECT_TYPE_PASTEPAPER, /// ??? ??? EM_ANALYSE_OBJECT_TYPE_HUMANHEAD, /// ?????? EM_ANALYSE_OBJECT_TYPE_ENTITY, /// ??????? EM_ANALYSE_OBJECT_TYPE_PACKAGE, /// ???? EM_ANALYSE_OBJECT_TYPE_SCRAPSTEEL_DANGER, ///???????? }EM_ANALYSE_OBJECT_TYPE; ///@brief DH_FILE_QUERY_ANALYSE_OBJECT ??????????????????????? typedef struct __MEDIAFILE_ANALYSE_OBJECT_PARAM { DWORD dwSize; /// ??????? /* ??????????? */ int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? EM_ANALYSE_OBJECT_TYPE emObject; /// ????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }MEDIAFILE_ANALYSE_OBJECT_PARAM; ///@brief DH_FILE_QUERY_ANALYSE_OBJECT ?????????media?????? typedef struct __MEDIAFILE_ANALYSE_OBJECT_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szFilePath[128]; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? unsigned int nFileLength; /// ??????????????????????nFileLengthEx unsigned int nCluster; /// ??? unsigned int nHint; /// ??????????? unsigned int nDriveNo; /// ????? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? EM_ANALYSE_OBJECT_TYPE emObject; /// ????????????? INT64 nFileLengthEx; /// ?????????????????????????4G????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_ANALYSE_OBJECT_INFO; ///@brief DH_FILE_QUERY_MPT_RECORD_FILE ?????????????????? typedef struct __MEDIAFILE_MPT_RECORD_FILE_PARAM { DWORD dwSize; /// ??????? /* ??????????? */ int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 char szPoliceID[DH_COMMON_STRING_32]; /// ???ID,???????????????? int nCrimeType; /// ????????,??0???????????? int nCrimeTag; /// ??????,??0???????????? char szSerialNumber[DH_COMMON_STRING_32]; /// MPT?????????,???????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }MEDIAFILE_MPT_RECORD_FILE_PARAM; ///@brief DH_FILE_QUERY_MPT_RECORD_FILE ?????????media?????? typedef struct __MEDIAFILE_MPT_RECORD_FILE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szFilePath[DH_COMMON_STRING_128];/// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 unsigned int nFileLength; /// ???????,????????????????nFileLengthEx unsigned int nCluster; /// ??? unsigned int nHint; /// ??????????? unsigned int nDriveNo; /// ????? int nCrimeType; /// ???????? int nCrimeTag; /// ?????? char szComment[DH_COMMON_STRING_256]; /// ?????????????? INT64 nFileLengthEx; /// ?????????????????????????4G????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_MPT_RECORD_FILE_INFO; ///@brief ???????????????????????? typedef enum tagNET_EM_INSIDE_TYPE { NET_EM_INSIDE_TYPE_GRADE, /// ?????????? NET_EM_INSIDE_TYPE_OBJECT, /// ??????? }NET_EM_INSIDE_TYPE; ///@brief DH_FILE_QUERY_XRAY_DETECTION ??????????????? typedef struct tagMEDIAFILE_XRAY_DETECTION_PARAM { DWORD dwSize; /// ??????? /* ??????????? */ int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_EM_INSIDE_TYPE emInsideType; /// ????????????????????????????? int nDangerGradeNum; /// ???????????????????? EM_DANGER_GRADE_TYPE emDangerGrade[MAX_DANGER_GRADE_NUM]; /// ????????????????emInsideType????NET_EM_INSIDE_TYPE_GRADE????? int nInsideObjTypeNum; /// ??????????????????????? EM_INSIDE_OBJECT_TYPE emInsideObjType[MAX_INSIDE_OBJECT_TYPE_NUM]; /// ??????????????????emInsideType????NET_EM_INSIDE_TYPE_OBJECT????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }MEDIAFILE_XRAY_DETECTION_PARAM; ///@brief DH_FILE_QUERY_XRAY_DETECTION ?????????media?????? typedef struct tagMEDIAFILE_XRAY_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szProcessedFilePath[MAX_PATH_LEN]; /// ???????X??????????? char szOriginalPath[MAX_PATH_LEN]; /// X???????????????? unsigned int nOriginalLength; /// ????????????????? EM_DANGER_GRADE_TYPE emDangerGrade; /// ???????????? EM_INSIDE_OBJECT_TYPE emInsideObjectType[MAX_INSIDE_OBJECT_TYPE_NUM]; /// ??????????????????? int nRetInsideObjectTypeNum; /// ?????????????????????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_XRAY_DETECTION_INFO; #define MAX_CLOTH_NUM 4 /// ????????? #define MAX_CLOTHTYPE_NUM 2 /// ?????????????? ///@brief DH_FILE_QUERY_HUMAN_TRAIT??????????????? typedef struct tagMEDIAFILE_HUMAN_TRAIT_PARAM { DWORD dwSize; /// ??????? int nChannel; /// ??? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? EM_CLOTHES_COLOR emCoatColor[MAX_CLOTH_NUM]; /// ??????? EM_CLOTHES_COLOR emTrousersColor[MAX_CLOTH_NUM]; /// ??????? EM_COAT_TYPE emCoatType[MAX_CLOTHTYPE_NUM]; /// ???????? EM_TROUSERS_TYPE emTrousersType[MAX_CLOTHTYPE_NUM]; /// ???????? UINT nCoatColorNum; /// ??????????????????? UINT nTrousersColorNum; /// ?????????????????? UINT nCoatTypeNum; /// ??????????????????? UINT nTrousersTypeNum; /// ?????????????????? EM_HAS_HAT emHasHat; /// ??????? EM_HAS_BAG emHasBag; /// ?????? EM_SEX_TYPE emSex; /// ??? EM_HAIR_STYLE emHairStyle; /// ?????? UINT nAgeMin; /// ?????????????????? UINT nAgeMax; /// ????????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stEndTime), ?FALSE?????????stStartTime, stEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? EM_HAS_UMBRELLA emHasUmbrella; /// ?????? EM_CAP_TYPE emCap; /// ????? }MEDIAFILE_HUMAN_TRAIT_PARAM; ///@brief ??????????????????? typedef struct tagHUMAN_TRAIT_INFO { EM_CLOTHES_COLOR emCoatColor; /// ??????? EM_CLOTHES_COLOR emTrousersColor; /// ??????? EM_COAT_TYPE emCoatType; /// ???????? EM_TROUSERS_TYPE emTrousersType; /// ???????? EM_HAS_HAT emHasHat; /// ??????? EM_HAS_BAG emHasBag; /// ?????? EM_SEX_TYPE emSex; /// ??? UINT nAge; /// ???? EM_HAIR_STYLE emHairStyle; /// ?????? EM_HAS_UMBRELLA emHasUmbrella; /// ?????? EM_BAG_TYPE emBagType; /// ?????? EM_CAP_TYPE emCapType; /// ??????? BYTE byReserved[1024]; /// ??????? }HUMAN_TRAIT_INFO; ///@brief ????????????????? typedef struct tagNET_HUMAN_FACE_ATTRIBUTE { EM_SEX_TYPE emSex; /// ??? int nAge; /// ???? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? EM_HAS_GLASS emHasGlass; /// ??????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ???? BYTE byReserved[1024]; /// ??????? } NET_HUMAN_FACE_ATTRIBUTE; ///@brief DH_FILE_QUERY_HUMAN_TRAIT????????FINDNEXT?????????? typedef struct tagMEDIAFILE_HUMAN_TRAIT_INFO { DWORD dwSize; /// ??????? /* ??????? */ int nChannel; /// ??? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? char szFilePath[MAX_PATH]; /// ??????? int nFileSize; /// ??????? char szFacePath[MAX_PATH]; /// ?????????? char szFaceScenePath[MAX_PATH]; /// ??????????????????? char szHumanPath[MAX_PATH]; /// ??????????? char szHumanSceneImage[MAX_PATH];/// ???????????????????? UINT nFaceImageLength; /// ??????????, ????: ??? UINT nFaceSceneImageLength; /// ???????????????????, ????: ??? UINT nHumanImageLength; /// ???????????, ????: ??? UINT nHumanSceneImageLength; /// ????????????????????, ????: ??? /* ??????? */ HUMAN_TRAIT_INFO stuHumanTrait; /// ????????? /* ?????????? */ NET_HUMAN_FACE_ATTRIBUTE stuFaceAttribute; /// ?????????? NET_POINT stuFaceCenter; /// ???????(?????????????), 0-8191???????, ???????? NET_POINT stuHumanCenter; /// ????????(?????????????), 0-8191???????, ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stStartTime??stEndTime????(?????stStartTime??stEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_HUMAN_TRAIT_INFO; ///@brief ?????????????? typedef enum tagEM_NONMOTOR_COLOR { EM_NONMOTOR_UNKNOWN, /// ??? EM_NONMOTOR_COLOR_OTHER, /// ?????? EM_NONMOTOR_COLOR_WHITE, /// ??? EM_NONMOTOR_COLOR_ORANGE, /// ??? EM_NONMOTOR_COLOR_PINK, /// ??? EM_NONMOTOR_COLOR_BLACK, /// ??? EM_NONMOTOR_COLOR_RED, /// ??? EM_NONMOTOR_COLOR_YELLOW, /// ??? EM_NONMOTOR_COLOR_GRAY, /// ??? EM_NONMOTOR_COLOR_BLUE, /// ??? EM_NONMOTOR_COLOR_GREEN, /// ??? EM_NONMOTOR_COLOR_PURPLE, /// ??? EM_NONMOTOR_COLOR_BROWN, /// ??? EM_NONMOTOR_COLOR_SLIVER, /// ??? EM_NONMOTOR_COLOR_DARKVIOLET, /// ????????? EM_NONMOTOR_COLOR_MAROON, /// ??? EM_NONMOTOR_COLOR_DIMGRAY, /// ????? EM_NONMOTOR_COLOR_WHITESMOKE, /// ????? EM_NONMOTOR_COLOR_DARKORANGE, /// ???? EM_NONMOTOR_COLOR_MISTYROSE, /// ????? EM_NONMOTOR_COLOR_TOMATO, /// ?????? EM_NONMOTOR_COLOR_OLIVE, /// ???? EM_NONMOTOR_COLOR_GOLD, /// ??? EM_NONMOTOR_COLOR_DARKOLIVEGREEN, /// ???????? EM_NONMOTOR_COLOR_CHARTREUSE, /// ????? EM_NONMOTOR_COLOR_GREENYELLOW, /// ???? EM_NONMOTOR_COLOR_FORESTGREEN, /// ????? EM_NONMOTOR_COLOR_SEAGREEN, /// ?????? EM_NONMOTOR_COLOR_DEEPSKYBLUE, /// ?????? EM_NONMOTOR_COLOR_CYAN, /// ??? } EM_NONMOTOR_COLOR; ///@brief ????????????? typedef enum tagEM_NONMOTOR_SUBTYPE { EM_NONMOTOR_SUBTYPE_UNKNOWN, /// ??? EM_NONMOTOR_SUBTYPE_NONMOTOR, /// ??????? EM_NONMOTOR_SUBTYPE_BICYCLE, /// ?????? EM_NONMOTOR_SUBTYPE_TRICYCLE, /// ????? EM_NONMOTOR_SUBTYPE_MOTORCYCLE, /// ????? EM_NONMOTOR_SUBTYPE_DUALTRIWHEEL, /// (??) ????????? EM_NONMOTOR_SUBTYPE_LIGHT_MOTORCYCLE, /// ???????? EM_NONMOTOR_SUBTYPE_EMBASSY_MOTORCYCLE, /// ???????? EM_NONMOTOR_SUBTYPE_MARGINAL_MOTORCYCLE, /// ???????? EM_NONMOTOR_SUBTYPE_AREAOUT_MOTORCYCLE, /// ????????? EM_NONMOTOR_SUBTYPE_FOREIGN_MOTORCYCLE, /// ??????? EM_NONMOTOR_SUBTYPE_TRIAL_MOTORCYCLE, /// ????????? EM_NONMOTOR_SUBTYPE_COACH_MOTORCYCLE, /// ????????? EM_NONMOTOR_SUBTYPE_PASSERBY, /// ???? }EM_NONMOTOR_SUBTYPE; ///@brief ????? typedef enum tagEM_HELMET_STATE { EM_HELMET_UNKNOWN, /// ??? EM_HELMET_OTHER, /// ????? EM_HELMET_NO, /// ??????? EM_HELMET_YES, /// ????? } EM_HELMET_STATE; ///@brief DH_FILE_QUERY_NONMOTOR ????????????????? typedef struct tagMEDIAFILE_NONMOTOR_PARAM { DWORD dwSize; /// ??????? int nChannel; /// ??? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? UINT nNumOfCyclingMin; /// ??????????? UINT nNumOfCyclingMax; /// ?????????? EM_NONMOTOR_COLOR emNonmotorColor; /// ?????????? EM_NONMOTOR_SUBTYPE emNonmotorSubtype; /// ????????????? EM_HELMET_STATE emHelmetState; /// ????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stEndTime), ?FALSE?????????stStartTime, stEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? UINT nNumOfCycling; /// ??????, 255???????? int nNumOfCyclingCmp; /// ??????: 0:???, 1: ???, 2: ????, 3:????, ??nNumOfCycling???255????? } MEDIAFILE_NONMOTOR_PARAM; ///@brief DH_FILE_QUERY_NONMOTOR ??????????FINDNEXT?????????? typedef struct tagMEDIAFILE_NONMOTOR_INFO { DWORD dwSize; /// ??????? /* ??????? */ int nChannel; /// ??? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? char szFilePath[MAX_PATH]; /// ??????? int nFileSize; /// ??????? /* ?????????? */ UINT nNumOfCycling; /// ?????? EM_NONMOTOR_COLOR emNonmotorColor; /// ?????????? EM_NONMOTOR_SUBTYPE emNonmotorSubtype; /// ????????????? EM_HELMET_STATE emHelmetState; /// ????? NET_POINT stuFaceCenter; /// ???????(?????????????), 0-8191???????, ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stStartTime??stEndTime????(?????stStartTime??stEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? NET_EVENT_IMAGE_INFO stuImageInfo; /// ?????? } MEDIAFILE_NONMOTOR_INFO; ///@brief ???????? typedef struct tagNET_FACE_IMAGE_INFO { DWORD dwOffSet; /// ?????????????????????????, ????:??? DWORD dwFileLength; /// ??????, ????:??? DWORD dwWidth; /// ?????? DWORD dwHeight; /// ????? BOOL bIsDetected; /// ???????????????,?????????????????, /// ????????????????,TRUE:??????,FALSE:??????? char szPicFilePath[DH_COMMON_STRING_256]; /// ????????????, ??dwOffSet??dwFileLenth???? BYTE bReserved[512]; /// ???????? } NET_FACE_IMAGE_INFO; ///@brief ???????????? typedef enum tagEM_FINDFILE_TYPE { EM_FINDFILE_UNKNOWN, /// ??? EM_FINDFILE_JPG, /// ????? EM_FINDFILE_DAV, /// ?????? EM_FINDFILE_LOG, /// log??? EM_FINDFILE_GPS, /// gps??? EM_FINDFILE_JPK, /// jpk???,????????????????????????????????????????jpg????????????????????????????jpg????jpk EM_FINDFILE_MP4, /// MP4???,(???????????????????mp4????dav??????????)??Types?????????DB??????????"jpg"???? EM_FINDFILE_AUDIO, /// AUDIO???,?????? } EM_FINDFILE_TYPE; ///@brief ?????? typedef enum tagEM_OPEN_DOOR_METHOD { EM_OPEN_DOOR_METHOD_UNKNOWN = -1, /// ??? EM_OPEN_DOOR_METHOD_OTHER, /// ??????? EM_OPEN_DOOR_METHOD_FACE, /// ??? } EM_OPEN_DOOR_METHOD; ///@brief ?????? typedef enum tagEM_OPEN_DOOR_STATE { EM_OPEN_DOOR_STATE_UNKNOWN = -1, /// ??? EM_OPEN_DOOR_STATE_FAIL, /// ??? EM_OPEN_DOOR_STATE_SUCCESS, /// ??? } EM_OPEN_DOOR_STATE; ///@brief DH_FILE_QUERY_DOORCONTROL_RECORD ???????????????? typedef struct tagMEDIAFILE_DOORCONTROL_RECORD_PARAM { DWORD dwSize; /// ??????? /* ??????? */ int nChannel; /// ??? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? UINT nFileTypeNum; /// ??????????, ?0?????????????? EM_FINDFILE_TYPE emFileType[32]; /// ??????? /* ????????? */ EM_OPEN_DOOR_METHOD emOpenDoorMethod; /// ??????, EM_OPEN_DOOR_METHOD_UNKNOWN ???????????? EM_OPEN_DOOR_STATE emOpenDoorState; /// ??????, EM_OPEN_DOOR_STATE_UNKNOWN ????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stEndTime), ?FALSE?????????stStartTime, stEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } MEDIAFILE_DOORCONTROL_RECORD_PARAM; ///@brief ???? typedef enum tagEM_FACE_TRAIT_EMOTION_TYPE { EM_FACE_TRAIT_EMOTION_UNKNOWN, /// ??? EM_FACE_TRAIT_EMOTION_UNRECOGNIZE, /// ????? EM_FACE_TRAIT_EMOTION_ANGRY, /// ???? EM_FACE_TRAIT_EMOTION_SAD, /// ???? EM_FACE_TRAIT_EMOTION_DISGUST, /// ??? EM_FACE_TRAIT_EMOTION_FEAR, /// ??? EM_FACE_TRAIT_EMOTION_SURPRISE, /// ???? EM_FACE_TRAIT_EMOTION_CALM, /// ??? EM_FACE_TRAIT_EMOTION_SMILE, /// ??? EM_FACE_TRAIT_EMOTION_LAUGH, /// ???? EM_FACE_TRAIT_EMOTION_HAPPY, /// ???? EM_FACE_TRAIT_EMOTION_CONFUSED, /// ???? EM_FACE_TRAIT_EMOTION_SCREAM, /// ??? }EM_FACE_TRAIT_EMOTION_TYPE; ///@brief ???? typedef enum tagEM_FACE_TRAIT_ALIVE_TYPE { EM_FACE_TRAIT_ALIVE_UNKNOWN, /// ??? EM_FACE_TRAIT_ALIVE_NON, /// ????? EM_FACE_TRAIT_ALIVE, /// ???? }EM_FACE_TRAIT_ALIVE_TYPE; ///@brief ??????? typedef struct tagFACE_TRAIT { EM_SEX_TYPE emSex; /// ??? UINT nAge; /// ???? EM_HAS_GLASS emGlass; /// ??? EM_BEARD_STATE_TYPE emBeard; /// ???? char szReserved[4]; EM_MASK_STATE_TYPE emMask; /// ???? EM_FACE_TRAIT_EMOTION_TYPE emEmotion; /// ???? NET_TIME_EX stuSnapTime; /// ?????? EM_FACE_TRAIT_ALIVE_TYPE emAlive; /// ??????? BYTE byReserved[1020]; /// ?????? }FACE_TRAIT; ///@brief ?????? typedef enum tagEM_AGE_GROUP_TYPE { EM_AGE_GROUP_UNKNOWN, /// ??? EM_AGE_GROUP_OLD, /// ???? EM_AGE_GROUP_ADULT, /// ?????? EM_AGE_GROUP_CHILD, /// ???? }EM_AGE_GROUP_TYPE; ///@brief ???????????? typedef enum tagEM_HAS_HOLD { EM_HAS_HOLD_UNKNOWN, /// ??? EM_HAS_HOLD_NO, /// ????? EM_HAS_HOLD_YES, /// ?????? } EM_HAS_HOLD; ///@brief ???????? typedef enum tagEM_UPPER_TYPE { EM_UPPER_UNKNOWN, /// ??? EM_UPPER_LONGCOAT, /// 1-??????? EM_UPPER_JACKETORJEANS, /// 2-?????????? EM_UPPER_TSHIRT, /// 3-T?? EM_UPPER_SPORTSWEAR, /// 4-????? EM_UPPER_DOWNJACKET, /// 5-????? EM_UPPER_SHIRT, /// 6-???? EM_UPPER_DRESS, /// 7-????? EM_UPPER_SUIT, /// 8-??? }EM_UPPER_TYPE; ///@brief ???????? typedef enum tagEM_MASK_TYPE { EM_MASK_UNKNOWN, /// ??? EM_MASK_NO, /// ?? EM_MASK_YES, /// ?? }EM_MASK_TYPE; ///@brief ???????? typedef struct tagBODY_TRAIT { EM_SEX_TYPE emSex; /// ??? EM_AGE_GROUP_TYPE emAgeGroup; /// ?????? EM_COAT_TYPE emCoatType; /// ???????? EM_TROUSERS_TYPE emTrousersType; /// ???????? EM_ANGLE_TYPE emAngle; /// ?????? EM_CLOTHES_PATTERN emUpperPattern; /// ?????? EM_UNIFIED_COLOR_TYPE emTrousersColor; /// ??????? EM_HAS_UMBRELLA emUmbrella; /// ???? EM_UNIFIED_COLOR_TYPE emUmbrellaColor; /// ??????? EM_HAS_HOLD emHold; /// ????????? EM_CLOTHES_PATTERN emTrousersPattern; /// ?????? EM_HAT_STYLE emHatType; /// ????? EM_UNIFIED_COLOR_TYPE emHatColor; /// ?????? EM_UPPER_TYPE emUpperType; /// ???????? EM_UNIFIED_COLOR_TYPE emCoatColor; /// ??????? EM_HAIR_STYLE emHairStyle; /// ???? EM_UNIFIED_COLOR_TYPE emHairColor; /// ?????? EM_SHOES_TYPE emShoesType; /// ?????? EM_UNIFIED_COLOR_TYPE emShoesColor; /// ??????? EM_BAG_TYPE emBagType; /// ?????? EM_UNIFIED_COLOR_TYPE emBagColor; /// ?????? EM_MASK_TYPE emMaskType; /// ???? EM_UNIFIED_COLOR_TYPE emMaskColor; /// ??????? NET_TIME_EX stuSnapTime; /// ????? BYTE szReserved[1024]; /// ?????? }BODY_TRAIT; ///@brief ????????????????????? typedef struct tagFACEBODY_DETECT_RECORDFILTER { int nAgeRange[2]; /// ???????????:[0, 0]???????????[0, 200]???????????????? FACE_TRAIT stuFaceTrait; /// ??????? BODY_TRAIT stuBodyTrait; /// ???????? BYTE byReserved[1024]; /// ?????? }FACEBODY_DETECT_RECORDFILTER; ///@brief ??????????? typedef struct tagNET_EVENT_IMAGE_OFFSET_INFO { unsigned int nOffSet; /// ??? unsigned int nLength; /// ??????,??????? unsigned int nWidth; /// ?????? unsigned int nHeight; /// ????? char szPath[260]; /// ?????? UINT nIndexInData; /// ???????????????????? BYTE byReserved[248]; /// ?????? }NET_EVENT_IMAGE_OFFSET_INFO; ///@brief DH_FILE_QUERY_FACEBODY_DETECT ?????????? typedef struct tagMEDIAFILE_FACEBODY_DETECT_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? UINT nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 5-??????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFlagList[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFlagCount; /// ??????? NET_RECORD_CARD_INFO stuCardInfo; /// ??????????, emFlagList???????????????? EM_RESULT_ORDER_TYPE emResultOrder; /// ??????????? BOOL bTime; /// ???????? FACEBODY_DETECT_RECORDFILTER stuFilter; /// ????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } MEDIAFILE_FACEBODY_DETECT_PARAM; ///@brief DH_FILE_QUERY_FACEBODY_DETECT ??? FINDNEXT ????????? typedef struct tagMEDIAFILE_FACEBODY_DETECT_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nFileType; /// ??????? 1:jpg??, 2: dav UINT nFileSize; /// ??????? UINT nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 UINT nPartition; /// ?????? UINT nCluster; /// ??? char szFilePath[MAX_PATH]; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFlagList[FLAG_TYPE_MAX]; /// ???????????? int nFlagCount; /// ??????? UINT nDriveNo; /// ????? FACE_TRAIT stuFaceTrait; /// ??????? BODY_TRAIT stuBodyTrait; /// ???????? NET_EVENT_IMAGE_OFFSET_INFO stuFaceImage; /// ???????? NET_EVENT_IMAGE_OFFSET_INFO stuBodyImage; /// ????????? NET_EVENT_IMAGE_OFFSET_INFO stuSceneImage; /// ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_FACEBODY_DETECT_INFO; ///@brief ?????????????????????????? typedef struct tagFACEBODY_ANALYSE_RECORDFILTER { int nAgeRange[2]; /// ???????????:[0, 0]???????????[0, 200]???????????????? EM_SEX_TYPE emSex; /// ??? char szCountry[NET_COUNTRY_LENGTH]; /// ????,????ISO3166??Z BYTE byReserved1; /// ?????? char szProvince[DH_MAX_PROVINCE_NAME_LEN]; /// ??? char szCity[DH_MAX_CITY_NAME_LEN]; /// ???? char szID[DH_MAX_PERSON_ID_LEN]; /// ?????????(???????,?????,????????????????) EM_CERTIFICATE_TYPE emCertificateType; /// ??????? BYTE byReserved[1028]; /// ?????? } FACEBODY_ANALYSE_RECORDFILTER; ///@brief DH_FILE_QUERY_FACEBODY_ANALYSE ?????????? typedef struct tagMEDIAFILE_FACEBODY_ANALYSE_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? UINT nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 5-??????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFlagLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFlagCount; /// ??????? NET_RECORD_CARD_INFO stuCardInfo; /// ??????????, emFlagLists???????????????? EM_RESULT_ORDER_TYPE emResultOrder; /// ??????????? BOOL bTime; /// ???????? FACEBODY_ANALYSE_RECORDFILTER stuFilter; /// ?????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? } MEDIAFILE_FACEBODY_ANALYSE_PARAM; ///@brief DH_FILE_QUERY_FACEBODY_ANALYSE ??? FINDNEXT ????????? typedef struct tagMEDIAFILE_FACEBODY_ANALYSE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nFileSize; /// ??????? UINT nFileType; /// ??????? 1:jpg??, 2: dav UINT nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-?????? 4-?????? UINT nPartition; /// ?????? UINT nCluster; /// ??? char szFilePath[MAX_PATH]; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFlagLists[FLAG_TYPE_MAX]; /// ???????????? int nFlagCount; /// ??????? UINT nDriveNo; /// ????? FACE_TRAIT stuFaceTrait; /// ??????? BODY_TRAIT stuBodyTrait; /// ???????? NET_EVENT_IMAGE_OFFSET_INFO stuFaceImage; /// ???????? NET_EVENT_IMAGE_OFFSET_INFO stuBodyImage; /// ????????? NET_EVENT_IMAGE_OFFSET_INFO stuSceneImage; /// ???????? CANDIDATE_INFOEX stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ?????????? int nCandidateNum; /// ????????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_FACEBODY_ANALYSE_INFO; ///@brief CLIENT_FindFileEx+DH_FILE_QUERY_SNAPSHOT_WITH_MARK ?????????? typedef struct tagMEDIAFILE_SNAPSHORT_WITH_MARK_PARAM { DWORD dwSize; /// ??????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } MEDIAFILE_SNAPSHORT_WITH_MARK_PARAM; ///@brief ???????? typedef struct tagNET_SNAPSHOT_MARK_INFO { NET_POINT stuPosition; /// ????????????, ????????? BYTE byReserved[1020]; /// ?????? } NET_SNAPSHOT_MARK_INFO; ///@brief DH_FILE_QUERY_SNAPSHOT_WITH_MARK ??? FINDNEXT ????????? typedef struct tagMEDIAFILE_SNAPSHORT_WITH_MARK_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nFileSize; /// ??????? char szFilePath[MAX_PATH]; /// ??????? NET_SNAPSHOT_MARK_INFO stuMarkInfo; /// ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_SNAPSHORT_WITH_MARK_INFO; ///@brief ????????? typedef struct tagNET_DOORCONTROL_FACE_OBJECT { NET_RECT stuBoundingBox; /// ?????? IMAGE_INFO stuFaceImageInfo; /// ???????? BYTE byReserved[512]; /// ?????? } NET_DOORCONTROL_FACE_OBJECT; ///@brief ?????????? typedef struct tagNET_REGISTER_PERSON_INFO { char szUID[DH_MAX_PERSON_ID_LEN]; /// ???????????,?????????????,??????ID??? /// ???,???????????? char szGroupID[NET_GROUPID_LENGTH]; /// ?????????ID char szGroupName[NET_GROUPNAME_LENGTH]; /// ??????????? EM_REGISTER_DB_TYPE emRegisterDbType; /// ???????? EM_SEX_TYPE emSexType; /// ??? UINT nFacePicNum; /// ?????? NET_FACE_IMAGE_INFO stuFacePicInfo[DH_MAX_PERSON_IMAGE_NUM]; /// ???????????????? EM_PERSON_FEATURE_STATE emFeatureState; /// ???????? char szPersonName[DH_MAX_PERSON_NAME_LEN]; /// ???? NET_TIME stuBirthday; /// ???? char szCountry[NET_COUNTRY_LENGTH]; /// ????,????ISO3166??Z char szProvince[DH_MAX_PROVINCE_NAME_LEN]; /// ??? char szCity[DH_MAX_CITY_NAME_LEN]; /// ???? char szHomeAddress[DH_COMMON_STRING_128]; /// ???????????? EM_CERTIFICATE_TYPE emCertificateType; /// ??????? char szID[DH_MAX_PERSON_ID_LEN]; /// ??????????,????,????????? UINT nImportant; /// ?????????, [1,10]???????????? char szComment[NET_COMMENT_LENGTH]; /// ?????? BYTE byReserved[2048]; /// ??????? } NET_REGISTER_PERSON_INFO; ///@brief ???????????????? typedef struct tagNET_DOORCONTROL_CANDIDATE { UINT nSimilarity; /// ?????, [1,100] NET_REGISTER_PERSON_INFO stuPersonInfo; /// ?????? BYTE byReserved[1024]; /// ??????? } NET_DOORCONTROL_CANDIDATE; ///@brief DH_FILE_QUERY_DOORCONTROL_RECORD ?????????FINDNEXT?????????? typedef struct tagMEDIAFILE_DOORCONTROL_RECORD_INFO { DWORD dwSize; /// ??????? /* ??????? */ int nChannel; /// ??? UINT nDriveNo; /// ????? UINT nCluster; /// ??? UINT nHint; /// ????????? char szFilePath[MAX_PATH]; /// ??????? int nFileSize; /// ??????? /* ????????? */ EM_OPEN_DOOR_METHOD emOpenDoorMethod; /// ?????? EM_OPEN_DOOR_STATE emOpenDoorState; /// ?????? IMAGE_INFO stuSceneImageInfo; /// ????????? NET_TIME stuSnapTime; /// ?????? NET_DOORCONTROL_FACE_OBJECT stuFaceObject; /// ????????? UINT nCandidatesNum; /// ????????? NET_DOORCONTROL_CANDIDATE stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE???stuStartTimeRealUTC??stuEndTimeRealUTC???? NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_DOORCONTROL_RECORD_INFO; ///@brief ??????????????????? typedef struct __MEDIA_QUERY_VIDEOSYNOPSIS_PARAM { DWORD dwSize; NET_TIME StartTime; /// ?????? NET_TIME EndTime; /// ??????? int nMediaType; /// ???????,0:???????????,1:??,2:??? int nQueryType; /// ???????,1:???????? 2:???????????? }MEDIA_QUERY_VIDEOSYNOPSIS_PARAM; ///@brief ????????? typedef struct __MEDIAFILE_VIDEOSYNOPSIS_INFO { char szFilePath[128]; /// ??????? unsigned int size; /// ??????? NET_TIME starttime; /// ?????? NET_TIME endtime; /// ??????? unsigned int nWorkDirSN; /// ????????? BYTE nFileType; /// ??????? 1??jpg?? BYTE bHint; /// ??????????? BYTE bDriveNo; /// ????? BYTE bReserved2; unsigned int nCluster; /// ??? BYTE byPictureType; /// ??????, 0-???, 1-???, 2-??? BYTE bReserved[3]; /// ??????? /* ????????????? */ int nTaskID; /// ????ID char szCurrentState[DH_MAX_SYNOPSIS_STATE_NAME]; /// ???????? int nProgress; /// ???????? int nObjectNum; /// ??????????????? /* ?????????????????? */ int nDurationTime; /// ???????,????s }MEDIAFILE_VIDEOSYNOPSIS_INFO; ///@brief ??????? typedef enum tagEM_QUERY_TEMPERATURE_TYPE { EM_QUERY_TEMPERATURE_TYPE_UNKNOWN = -1, /// ??? EM_QUERY_TEMPERATURE_TYPE_ALL, /// ??? EM_QUERY_TEMPERATURE_TYPE_LOW, /// ?? EM_QUERY_TEMPERATURE_TYPE_NORMAL, /// ???? EM_QUERY_TEMPERATURE_TYPE_HIGH, /// ?? }EM_QUERY_TEMPERATURE_TYPE; ///@brief ?????????? typedef struct tagANATOMY_TEMP_DETECT_PERSON_FILTER { char szName[64]; /// ???? BYTE byReserved[1024]; /// ??????? } ANATOMY_TEMP_DETECT_PERSON_FILTER; ///@brief ?????????????? typedef struct tagNET_ANATOMY_TEMP_DETECT_FILTER { EM_QUERY_TEMPERATURE_TYPE emTempType; /// ??????? BYTE byReserved1[4]; /// ?????? double dbTemperature; /// ???? ANATOMY_TEMP_DETECT_PERSON_FILTER stuPersonInfo; /// ?????? BYTE byReserved[1024]; /// ??????? }NET_ANATOMY_TEMP_DETECT_FILTER; ///@brief ?????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_ANATOMY_TEMP_DETECT ) typedef struct tagMEDIAFILE_ANATOMY_TEMP_DETECT_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ?????,??0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_ANATOMY_TEMP_DETECT_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? }MEDIAFILE_ANATOMY_TEMP_DETECT_PARAM; ///@brief MEDIAFILE_ANATOMY_TEMP_DETECT_INFO ?? nEventType ? EVENT_IVS_ANATOMY_TEMP_DETECT ???pEventData ???? typedef struct tagNET_ANATOMY_TEMP_DETECT_ANATOMYTEMPDETECT_RESULT { BYTE byReserved[1024]; /// ?????? }NET_ANATOMY_TEMP_DETECT_ANATOMYTEMPDETECT_RESULT; ///@brief ???????? typedef struct tagMEDIAFILE_ANATOMY_TEMP_DETECT_FACEDETECT_RESULT { EM_SEX_TYPE emSex; /// ??? int nAge; /// ???? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ?????? char szReserved1[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ?????, -1???????, 0?????????????1-100,??????????? BYTE byReserved1[4]; /// ??????1 EM_FACEDETECT_GLASSES_TYPE emGlasses; /// ??????? BYTE byReserved[1020]; /// ?????? }MEDIAFILE_ANATOMY_TEMP_DETECT_FACEDETECT_RESULT; ///@brief ?????????????? typedef struct tagMEDIAFILE_ANATOMY_TEMP_DETECT_CANDIDATE_INFO { int nSimilarity; /// ??????????????? FACERECOGNITION_PERSON_INFOEX stuPersonInfo; /// ????? BYTE byReserved[2048]; /// ?????? }MEDIAFILE_ANATOMY_TEMP_DETECT_CANDIDATE_INFO; ///@brief ????????? typedef struct tagMEDIAFILE_ANATOMY_TEMP_DETECT_FACERECOGNITION_RESULT { BOOL bGlobalScenePic; /// ?????????? DH_PIC_INFO_EX stuGlobalScenePic; /// ???????????? int nCandidateNum; /// ????????????????????? MEDIAFILE_ANATOMY_TEMP_DETECT_CANDIDATE_INFO stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ????????????????????, ?????????? nCandidateNum FACE_INFO_OBJECT stuFaceInfo; /// ????????? BYTE byReserved[1024]; /// ?????? }MEDIAFILE_ANATOMY_TEMP_DETECT_FACERECOGNITION_RESULT; ///@brief ??????? typedef enum tagEM_FILE_TYPE { EM_FILE_TYPE_UNKNOWN, /// ??? EM_FILE_TYPE_JPG, /// jpg ?? EM_FILE_TYPE_DAV, /// dav ??? }EM_FILE_TYPE; ///@brief ????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_ANATOMY_TEMP_DETECT ) typedef struct tagMEDIAFILE_ANATOMY_TEMP_DETECT_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_TIME stuEventTime; /// ?????????? INT64 nFileSize; /// ??????? EM_FILE_TYPE emFileType; /// ??????? char szFilePath[MAX_PATH]; /// ??????? int nEventList[MAX_IVS_EVENT_NUM]; /// ?????????????,???????????,?????????????????? int nEventCount; /// ??????? int nPartition; /// ?????? int nDriveNo; /// ????? int nCluster; /// ??? int nPicIndex; /// ??????????????? /// ?????????????????????,??????????????? EM_QUERY_TEMPERATURE_TYPE emTempType; /// ?????? double dbTemperature; /// ???? BYTE byReserved1[4]; /// ?????? int nEventType; /// ???????????????: EVENT_IVS_ANATOMY_TEMP_DETECT,EVENT_IVS_FACEDETECT,EVENT_IVS_FACERECOGNITION NET_ANATOMY_TEMP_DETECT_ANATOMYTEMPDETECT_RESULT stuAnatomyDetectResult; /// nEventType ? EVENT_IVS_ANATOMY_TEMP_DETECT ??????? MEDIAFILE_ANATOMY_TEMP_DETECT_FACEDETECT_RESULT stuFaceDetectResult; /// nEventType ? EVENT_IVS_FACEDETECT ??????? MEDIAFILE_ANATOMY_TEMP_DETECT_FACERECOGNITION_RESULT stuFaceRecognitionResult; /// nEventType ? EVENT_IVS_FACERECOGNITION ??????? char szObjectPath[8][MAX_PATH]; /// ???????? int nObjectPathNum; /// szObjectPath ????? char szFacePicturePath[MAX_PATH]; /// ???????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_ANATOMY_TEMP_DETECT_INFO; ///@brief ?????????? typedef enum tagEM_COMPARE_OPERATOR_TYPE { EM_COMPARE_OPERATOR_TYPE_UNKNOWN, /// ??? EM_COMPARE_OPERATOR_TYPE_EQUAL, /// ??? EM_COMPARE_OPERATOR_TYPE_OR, /// ?? }EM_COMPARE_OPERATOR_TYPE; ///@brief ?????????? typedef enum tagEM_QUERY_FILE_TYPE { EM_QUERY_FILE_TYPE_UNKNOWN, /// ??? EM_QUERY_FILE_TYPE_ORIGIN, /// ??? EM_QUERY_FILE_TYPE_COMPOSITE, /// ???? EM_QUERY_FILE_TYPE_DAV, /// dav ??? EM_QUERY_FILE_TYPE_AVI, /// avi ??? EM_QUERY_FILE_TYPE_MP4, /// mp4 ??? }EM_QUERY_FILE_TYPE; ///@brief ???????????? typedef struct tagNET_PLATE_NUMBER_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szPlateNumber[16][64]; /// ????????"*8888" int nPlateNumberCount; /// szPlateNumber ???? BYTE byReserved[128]; /// ?????? }NET_PLATE_NUMBER_FILTER; ///@brief ??????????? typedef enum tagEM_ILLEGAL_TRAFFIC_EVENT_TYPE { EM_ILLEGAL_TRAFFIC_EVENT_TYPE_UNKNOWN, /// ??? EM_ILLEGAL_TRAFFIC_EVENT_TYPE_TRAFFIC_PARKING, /// ??????? EM_ILLEGAL_TRAFFIC_EVENT_TYPE_TRAFFIC_PARKING_A, /// A????????? EM_ILLEGAL_TRAFFIC_EVENT_TYPE_TRAFFIC_PARKING_B, /// B????????? EM_ILLEGAL_TRAFFIC_EVENT_TYPE_TRAFFIC_PARKING_C, /// C????????? EM_ILLEGAL_TRAFFIC_EVENT_TYPE_TRAFFIC_PARKING_D, /// D????????? }EM_ILLEGAL_TRAFFIC_EVENT_TYPE; ///@brief ?????????????? typedef struct tagNET_EVENT_TYPE_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? EM_ILLEGAL_TRAFFIC_EVENT_TYPE emEventType[16]; /// ??????? int nEventTypeCount; /// emEventType ???? BYTE byReserved[128]; /// ?????? }NET_EVENT_TYPE_FILTER; ///@brief ??????????????? typedef struct tagNET_PLATE_COLOR_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szColor[16][64]; /// ??????? "????","????", "????","????","????", /// "????","????","????","????","??????","??????" int nColorCount; /// szColor ???? BYTE byReserved[128]; /// ?????? }NET_PLATE_COLOR_FILTER; ///@brief ??????????????? typedef struct tagNET_VEHICLE_COLOR_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szColor[16][64]; /// ??????? "???","???","???", "???", "???", "???","???","???", /// "???","?????????", "???", "???","?????","?????","?????","????", /// "?????","??????", "????","???","????????","?????","????", /// "??????", "???????", "???????","???", "??????" int nColorCount; /// emColor ???? BYTE byReserved[128]; /// ?????? }NET_VEHICLE_COLOR_FILTER; ///@brief ??????????????? typedef struct tagNET_VEHICLE_TYPE_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szType[16][64]; /// ???????? "???", "???", "?????", "??????", "????", "?????", "??????", "?????", "?????" /// "????", "suv-mpv", "?????", "?????????", "SUV", "MPV", "??????", "?????", "????", "????" int nTypeCount; /// szType ???? BYTE byReserved[128]; /// ?????? }NET_VEHICLE_TYPE_FILTER; ///@brief ????Logo???????? typedef struct tagNET_VEHICLE_LOGO_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szLogo[16][64]; /// Logo, "Audi"-???, "Honda"-???? ... int nLogoCount; /// szLogo ???? BYTE byReserved[128]; /// ?????? }NET_VEHICLE_LOGO_FILTER; ///@brief ??????????? typedef struct tagNET_VEHICLE_SERIES_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szSeries[16][64]; /// ???????"*Audi" int nSeriesCount; /// szSeries ???? BYTE byReserved[128]; /// ?????? }NET_VEHICLE_SERIES_FILTER; ///@brief ???????????? typedef struct tagNET_EVENT_CODE_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szEventCode[16][64]; /// ???????"*7002" int nEventCodeCount; /// szEventCode ???? BYTE byReserved[128]; /// ?????? }NET_EVENT_CODE_FILTER; ///@brief ????????????? typedef struct tagNET_DEFEND_CODE_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? char szDefendCode[16][64]; /// ????????"*888*" int nDefendCodeCount; /// szDefendCode ???? BYTE byReserved[128]; /// ?????? }NET_DEFEND_CODE_FILTER; ///@brief ?????????????? typedef struct tagNET_FILE_TYPE_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ???????? EM_QUERY_FILE_TYPE emFileType[16]; /// ??????? int nFileTypeCount; /// emFileType ???? BYTE byReserved[128]; /// ?????? }NET_FILE_TYPE_FILTER; ///@brief ?????????????????? ///@brief ???????Logo??????????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO ???? typedef struct tagNET_ILLEGAL_TRAFFIC_FILTER { NET_PLATE_NUMBER_FILTER stuPlateNumberFilter; /// ?????????? NET_PLATE_COLOR_FILTER stuPlateColorFilter; /// ????????????? NET_EVENT_TYPE_FILTER stuEventTypeFilter; /// ???????????? NET_VEHICLE_COLOR_FILTER stuVehicleColorFilter; /// ????????????? NET_VEHICLE_TYPE_FILTER stuVehicleTypeFilter; /// ????????????? NET_VEHICLE_LOGO_FILTER stuVehicleLogoFilter; /// ????Logo?????? NET_VEHICLE_SERIES_FILTER stuVehicleSeriesFilter; /// ????????? NET_EVENT_CODE_FILTER stuEventCodeFilter; /// ?????????? NET_DEFEND_CODE_FILTER stuDefendCodeFilter; /// ??????????? NET_FILE_TYPE_FILTER stuFileTypeFilter; /// ???????????? BYTE byReserved[2048]; /// ?????? }NET_ILLEGAL_TRAFFIC_FILTER; ///@brief ?????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_ILLEGAL_TRAFFIC ) typedef struct tagMEDIAFILE_ILLEGAL_TRAFFIC_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_ILLEGAL_TRAFFIC_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? }MEDIAFILE_ILLEGAL_TRAFFIC_PARAM; ///@brief ????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_ILLEGAL_TRAFFIC ) typedef struct tagMEDIAFILE_ILLEGAL_TRAFFIC_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? char szFilePath[MAX_PATH]; /// ??????? INT64 nFileSize; /// ??????? EM_QUERY_FILE_TYPE emFileType; /// ??????? EM_ILLEGAL_TRAFFIC_EVENT_TYPE emEventType; /// ??????? char szEventCode[64]; /// ?????? NET_TIME stuEventTime; /// ???????UTC char szEventAddress[128]; /// ?????? int nGroupID; /// ?????ID int nIndexInGroup; /// ?????????????????,??1??? int nParkingTime; /// ???????????? BYTE byReserved[4]; /// ?????? char szVehicleColor[64]; /// ??????? char szMachineName[64]; /// ???????? char szDefendCode[64]; /// ?????? char szPlateColor[64]; /// ??????? char szPlateNumber[64]; /// ????? char szVehicleLogo[64]; /// ????logo char szVehicleSeries[64]; /// ??? char szVehicleType[64]; /// ???? BOOL bRealUTC; /// ?TRUE???stuStartTimeRealUTC??stuEndTimeRealUTC????(???stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE???stuStartTimeRealUTC??stuEndTimeRealUTC???? NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_ILLEGAL_TRAFFIC_INFO; ///@brief ??????????????? typedef struct tagNET_SMOKE_FIRE_FILTER { char szRule[64]; /// ????????????szRule???""???MEDIAFILE_SMOKE_FIRE_PARAM ?? nEventList ???? /// ????"*"???????????"SmokeDetection"??"FireDetection" BYTE byReserved[1024]; /// ?????? }NET_SMOKE_FIRE_FILTER; ///@brief ??????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_SMOKE_FIRE ) typedef struct tagMEDIAFILE_SMOKE_FIRE_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEventList[256]; /// ???????????,?????????????????????EVENT_IVS_ALL??EVENT_IVS_SMOKEDETECTION int nEventCount; /// ??????? NET_SMOKE_FIRE_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? }MEDIAFILE_SMOKE_FIRE_PARAM; ///@brief ?????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_SMOKE_FIRE ) typedef struct tagMEDIAFILE_SMOKE_FIRE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szGlobalSceneFilePath[260]; /// ??????? int nGlobalSceneFileSize; /// ??????? char szRule[64]; /// ???? NET_RECT stuBoundingBox; /// ????????8192????? NET_EVENT_IMAGE_INFO stuImageInfo; /// ?????? int nFileType; /// ????????1:jpg, 2:dav?????:jpg BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_SMOKE_FIRE_INFO; ///@brief ??????????????? typedef struct tagNET_FIRE_CONTROL_MONITOR_FILTER { char szRule[64]; /// ????????????szRule???""???MEDIAFILE_FIRE_CONTROL_MONITOR_PARAM ?? nEventList ???? /// ????"*"???????????"SleepDetect"??"PlayMobilephone"??"PhoneCallDetect" BYTE byReserved[1024]; /// ?????? }NET_FIRE_CONTROL_MONITOR_FILTER; ///@brief ????????????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_FIRE_CONTROL_MONITOR ) typedef struct tagMEDIAFILE_FIRE_CONTROL_MONITOR_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEventList[256]; /// ???????????,?????????????????????EVENT_IVS_ALL??EVENT_IVS_SLEEP_DETECT int nEventCount; /// ??????? NET_FIRE_CONTROL_MONITOR_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? }MEDIAFILE_FIRE_CONTROL_MONITOR_PARAM; ///@brief ???????????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_FIRE_CONTROL_MONITOR ) typedef struct tagMEDIAFILE_FIRE_CONTROL_MONITOR_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szGlobalSceneFilePath[260]; /// ??????? int nGlobalSceneFileSize; /// ??????? char szRule[64]; /// ???? NET_RECT stuBoundingBox; /// ????????8192????? NET_EVENT_IMAGE_INFO stuImageInfo; /// ?????? int nFileType; /// ????????1:jpg, 2:dav?????:jpg BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_FIRE_CONTROL_MONITOR_INFO; ///@brief ??????????????? typedef enum tagEM_FIRE_LANE_OBJECT_TYPE { EM_FIRE_LANE_OBJECT_TYPE_UNKNOWN, /// ??? EM_FIRE_LANE_OBJECT_TYPE_ANY, /// ???? EM_FIRE_LANE_OBJECT_TYPE_CARTON, /// ???? EM_FIRE_LANE_OBJECT_TYPE_BOX, /// ???? EM_FIRE_LANE_OBJECT_TYPE_NONMOTOR, /// ??????? }EM_FIRE_LANE_OBJECT_TYPE; ///@brief ??????????????????????? typedef struct tagNET_FIRE_LANE_DETECTION_FILTER { EM_FIRE_LANE_OBJECT_TYPE emObjectTypes[32]; /// ?????????????? int nObjectTypes; /// emObjectTypes ???? BYTE byReserved[1020]; /// ?????? }NET_FIRE_LANE_DETECTION_FILTER; ///@brief ??????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_FIRE_LANE_DETECTION ) typedef struct tagMEDIAFILE_FIRE_LANE_DETECTION_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEventList[256]; /// ???????????,?????????????????????EVENT_IVS_ALL int nEventCount; /// ??????? NET_FIRE_LANE_DETECTION_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? }MEDIAFILE_FIRE_LANE_DETECTION_PARAM; ///@brief ?????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_FIRE_LANE_DETECTION ) typedef struct tagMEDIAFILE_FIRE_LANE_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szGlobalSceneFilePath[260]; /// ??????? int nGlobalSceneFileSize; /// ??????? int nFileType; /// ????????1:jpg, 2:dav?????:jpg EM_FIRE_LANE_OBJECT_TYPE emObjectType; /// ?????????????? NET_RECT stuBoundingBox; /// ????????8192????? NET_EVENT_IMAGE_INFO stuImageInfo; /// ?????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_FIRE_LANE_DETECTION_INFO; ///@brief ??????????????? typedef enum tagEM_NONMOTOR_ENTRYING_OBJECT_TYPE { EM_NONMOTOR_ENTRYING_OBJECT_TYPE_UNKNOWN, /// ??? EM_NONMOTOR_ENTRYING_OBJECT_TYPE_ANY, /// ???? EM_NONMOTOR_ENTRYING_OBJECT_TYPE_NONMOTOR, /// ??????? }EM_NONMOTOR_ENTRYING_OBJECT_TYPE; ///@brief ???????????????????? typedef struct tagNET_NONMOTOR_ENTRYING_FILTER { EM_NONMOTOR_ENTRYING_OBJECT_TYPE emObjectTypes[32]; /// ?????????????? int nObjectTypes; /// emObjectTypes ???? BYTE byReserved[1020]; /// ?????? }NET_NONMOTOR_ENTRYING_FILTER; ///@brief ???????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_NONMOTOR_ENTRYING ) typedef struct tagMEDIAFILE_NONMOTOR_ENTRYING_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEventList[256]; /// ???????????,?????????????????????EVENT_IVS_ALL int nEventCount; /// ??????? NET_NONMOTOR_ENTRYING_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? }MEDIAFILE_NONMOTOR_ENTRYING_PARAM; ///@brief ??????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_NONMOTOR_ENTRYING ) typedef struct tagMEDIAFILE_NONMOTOR_ENTRYING_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szGlobalSceneFilePath[260]; /// ??????? int nGlobalSceneFileSize; /// ??????? int nFileType; /// ????????1:jpg, 2:dav?????:jpg EM_NONMOTOR_ENTRYING_OBJECT_TYPE emObjectType; /// ?????????????? NET_RECT stuBoundingBox; /// ????????8192????? NET_EVENT_IMAGE_INFO stuImageInfo; /// ?????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_NONMOTOR_ENTRYING_INFO; ///@brief ????????? typedef enum tagEM_WORK_HELMET_STATE { EM_HELMET_STATE_UNKNOWN, /// ??? EM_HELMET_STATE_NOTWEAR, /// ???????? EM_HELMET_STATE_WEAR, /// ???????? EM_HELMET_STATE_INCONFORMITY_COLOR, /// ????????????????? } EM_WORK_HELMET_STATE; ///@brief ???????????? typedef enum tagEM_WORKCLOTHES_STATE { EM_WORKCLOTHES_STATE_UNKNOWN, /// ??? EM_WORKCLOTHES_STATE_NOTWEAR, /// ??????? EM_WORKCLOTHES_STATE_WEAR, /// ???????? } EM_WORKCLOTHES_STATE; ///@brief ??????????? typedef struct tagNET_HELMET_FILTER { EM_CLOTHES_COLOR emColors[16]; /// ??????? UINT nColorsCount; /// emColors ???? EM_WORK_HELMET_STATE emStates[8]; /// ?????? UINT nStatesCount; /// emStates ???? char byReserved[512]; /// ?????? }NET_HELMET_FILTER; ///@brief ????????????? typedef struct tagNET_CLOTHES_FILTER { EM_CLOTHES_COLOR emColors[16]; /// ??????? UINT nColorsCount; /// emColors ???? EM_WORKCLOTHES_STATE emStates[8]; /// ?????? UINT nStatesCount; /// emStates ???? char byReserved[512]; /// ?????? }NET_CLOTHES_FILTER; ///@brief ???????????????? typedef struct tagNET_WORK_CLOTHER_DETECTION_FILTER { NET_HELMET_FILTER stuHelmetFilter; /// ??????????? NET_CLOTHES_FILTER stuClothesFilter; /// ????????????? BYTE byReserved[1024]; /// ?????? }NET_WORK_CLOTHER_DETECTION_FILTER; ///@brief ???????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_WORK_CLOTHES_DETECTION ) typedef struct tagMEDIAFILE_WORK_CLOTHES_DETECTION_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEventList[256]; /// ???????????,?????????????????????EVENT_IVS_ALL int nEventCount; /// ??????? NET_WORK_CLOTHER_DETECTION_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }MEDIAFILE_WORK_CLOTHES_DETECTION_PARAM; ///@brief ??????? typedef struct tagMEDIAFILE_HELMET_INFO { EM_CLOTHES_COLOR emColor; /// ??????? EM_WORK_HELMET_STATE emState; /// ?????? char byReserved[512]; /// ?????? }MEDIAFILE_HELMET_INFO; ///@brief ????????? typedef struct tagMEDIAFILE_CLOTHES_INFO { EM_CLOTHES_COLOR emColor; /// ????????? EM_WORKCLOTHES_STATE emState; /// ???????? char byReserved[512]; /// ?????? }MEDIAFILE_CLOTHES_INFO; ///@brief ??????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_WORK_CLOTHES_DETECTION ) typedef struct tagMEDIAFILE_WORK_CLOTHES_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? MEDIAFILE_HELMET_INFO stuHelmetInfo; /// ??????? MEDIAFILE_CLOTHES_INFO stuClothesInfo; /// ????????? char szGlobalSceneImageFilePath[260];/// ???????? UINT nGlobalSceneImageFileLength; /// ???????? char szHumanSmallImageFilePath[260]; /// ??????????? UINT nHumanSmallImageFileLength; /// ??????????? NET_RECT stuHumanBoundingBox; /// ????????8192????? int nFileType; /// ????????1:jpg, 2:dav?????:jpg BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? BYTE byReserved[968]; /// ?????? }MEDIAFILE_WORK_CLOTHES_DETECTION_INFO; ///@brief ?????????????????? typedef struct tagNET_INTELLIGENT_CITY_MANAGER_EVENT_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ??????????? int nEventList[64]; /// ???????????,??????????????????:EVENT_IVS_ALL??EVENT_IVS_CITY_MOTORPARKING??EVENT_IVS_SHOPPRESENCE?? /// EVENT_IVS_CITY_NONMOTORPARKING??EVENT_IVS_FLOWBUSINESS??EVENT_IVS_TRAFFIC_NONMOTOR_HOLDUMBRELLA /// EVENT_IVS_GARBAGE_EXPOSURE??EVENT_IVS_DUSTBIN_OVER_FLOW??EVENT_IVS_DOOR_FRONT_DIRTY /// EVENT_IVS_SHOP_SIGN_ABNORMAL??EVENT_IVS_SHOP_WINDOW_POST int nEventCount; /// ????? BYTE byReserved[1024]; /// ?????? }NET_INTELLIGENT_CITY_MANAGER_EVENT_FILTER; ///@brief ??????????????????? typedef struct tagNET_INTELLIGENT_CITY_MANAGER_PLATENO_FILTER { EM_COMPARE_OPERATOR_TYPE emOperatorType; /// ??????????? char szPlateNo[16][32]; /// ??????? int nPlateCount; /// ?????? BYTE byReserved[1024]; /// ?????? }NET_INTELLIGENT_CITY_MANAGER_PLATENO_FILTER; ///@brief ??????????????? typedef struct tagNET_INTELLIGENT_CITY_MANAGER_FILTER { NET_INTELLIGENT_CITY_MANAGER_EVENT_FILTER stuEventFilter; /// ??????????? NET_INTELLIGENT_CITY_MANAGER_PLATENO_FILTER stuPlateNoFilter; /// ???????????? BYTE byReserved[2048]; /// ?????? }NET_INTELLIGENT_CITY_MANAGER_FILTER; ///@brief ??????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_INTELLIGENT_CITY_MANAGER ) typedef struct tagMEDIAFILE_INTELLIGENT_CITY_MANAGER_PARAM { DWORD dwSize; /// ??????? int nFileType; /// ???????,0:???????????,1:???jpg??,2:???dav int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_INTELLIGENT_CITY_MANAGER_FILTER stuFilter; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }MEDIAFILE_INTELLIGENT_CITY_MANAGER_PARAM; ///@brief ??????? typedef struct tagMEDIAFILE_COMPOSITE_PICTURE_INFO { char szPicturePath[260]; /// ?????????? UINT nPictureLength; /// ?????????? UINT nGroupID; /// ?????ID????????????????GroupID??? UINT nCountInGroup; /// ?????????????????? UINT nIndexInGroup; /// ????????????????????1??? char szDefendCode[64]; /// ?????? BYTE byReserved[1020]; /// ?????? }MEDIAFILE_COMPOSITE_PICTURE_INFO; ///@brief ?????? typedef struct tagMEDIAFILE_ORIGINAL_PICTURE_INFO { char szPicturePath[260]; /// ???????? UINT nPictureLength; /// ????????? UINT nGroupID; /// ?????ID????????????????GroupID??? UINT nCountInGroup; /// ?????????????????? UINT nIndexInGroup; /// ????????????????????1??? char szDefendCode[64]; /// ?????? BYTE byReserved[1020]; /// ?????? }MEDIAFILE_ORIGINAL_PICTURE_INFO; ///@brief ????????? typedef struct tagNET_INTELLIGENT_CITY_TRAFFIC_CAR_INFO { char szPlateColor[32]; /// ??????? char szPlateNo[128]; /// ????? char szVehicleColor[32]; /// ??????? char szVehicleLogo[32]; /// ???? char szVehicleSeries[32]; /// ??? char szVehicleType[32]; /// ???? UINT nParkingDuration; /// ?????????????????? BYTE byReserved[1020]; /// ?????? }NET_INTELLIGENT_CITY_TRAFFIC_CAR_INFO; ///@brief ?????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_INTELLIGENT_CITY_MANAGER ) typedef struct tagMEDIAFILE_INTELLIGENT_CITY_MANAGER_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEvent; /// ????????EVENT_IVS_CITY_MOTORPARKING??EVENT_IVS_SHOPPRESENCE?? /// EVENT_IVS_CITY_NONMOTORPARKING??EVENT_IVS_FLOWBUSINESS??EVENT_IVS_TRAFFIC_NONMOTOR_HOLDUMBRELLA /// EVENT_IVS_GARBAGE_EXPOSURE??EVENT_IVS_DUSTBIN_OVER_FLOW??EVENT_IVS_DOOR_FRONT_DIRTY /// EVENT_IVS_SHOP_SIGN_ABNORMAL??EVENT_IVS_SHOP_WINDOW_POST int nFileType; /// ????????1:jpg, 2:dav?????:jpg NET_TIME stuEventTime; /// ??????? char szEventCode[128]; /// ?????? char szEventAddress[256]; /// ?????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID????? /// ?? 022019030714003000001???????????+???+???????????????2???????14??????????5???? /// ?????02-??? /// ???YYYYMMDDhhmmss /// ???????00001 MEDIAFILE_COMPOSITE_PICTURE_INFO stuCompositePicInfo[16]; /// ??????? UINT nCompositePicCount; /// stuCompositePicInfo ???? MEDIAFILE_ORIGINAL_PICTURE_INFO stuOriginPicInfo[16]; /// ?????? UINT nOriginPicCount; /// stuOriginPicInfo ???? NET_INTELLIGENT_CITY_TRAFFIC_CAR_INFO stuTrafficCar; /// ????????? BOOL bTrafficCar; /// stuTrafficCar??????? UINT nPresetID; /// ?????????????????1??? char szShopAddress[256]; /// ?????? char szPresetName[128]; /// ???????? UINT nViolationDuration; /// ??????????????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuBeginTime??stuEndTime????(?????stuBeginTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? }MEDIAFILE_INTELLIGENT_CITY_MANAGER_INFO; ///@brief SMD ??????? typedef enum tagEM_SMD_RECORD_TYPE { EM_SMD_RECORD_UNKNWON, /// ??? EM_SMD_RECORD_HUMAN, /// ?? EM_SMD_RECORD_VEHICLE, /// ?? EM_SMD_RECORD_HUMAN_AND_VEHICLE, /// ???? } EM_SMD_RECORD_TYPE; ///@brief ????????? typedef enum tagEM_SMD_VIDEO_STREAM { EM_SMD_VIDEO_STREAM_UNKNOWN, /// ??? EM_SMD_VIDEO_STREAM_MAIN, /// ?????? EM_SMD_VIDEO_STREAM_EXTRA1, /// ??????1 EM_SMD_VIDEO_STREAM_EXTRA2, /// ??????2 EM_SMD_VIDEO_STREAM_EXTRA3, /// ??????3 EM_SMD_VIDEO_STREAM_EXTRAX, /// ??????????? }EM_SMD_VIDEO_STREAM; ///@brief ?????????(SMD) ????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_SMD_RECORD_FILE ) typedef struct tagMEDIAFILE_SMD_RECORD_FILE_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_SMD_RECORD_TYPE emSmdRecordType[8]; /// ????????SMD??????? UINT nSmdRecordTypeNum; /// SMD ?????????? EM_SMD_VIDEO_STREAM emVideoStream; /// ????????????????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? } MEDIAFILE_SMD_RECORD_FILE_PARAM; ///@brief ????????? typedef enum tagEM_MOBILE_ENFORCE_UPLOAD_FLAG { EM_MOBILE_ENFORCE_UPLOAD_FLAG_UNKNWON = -1, /// ??? EM_MOBILE_ENFORCE_UPLOAD_FLAG_NOTUPLOAD, /// ????? EM_MOBILE_ENFORCE_UPLOAD_FLAG_UPLOADED, /// ????? EM_MOBILE_ENFORCE_UPLOAD_FLAG_BACKEDUP = 3, /// ????? } EM_MOBILE_ENFORCE_UPLOAD_FLAG; ///@brief ????????????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_MOBILE_ENFORCE ) typedef struct tagMEDIAFILE_MOBILE_ENFORCE_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_MOBILE_ENFORCE_UPLOAD_FLAG emUploadFlag; /// ????????? UINT nFileTypeNum; /// ??????????, ?0?????????????? EM_FINDFILE_TYPE emFileType[32]; /// ??????? int nSerialNoNum; /// ??????????????? char szSerialNo[256][128]; /// ?????????????????????RegistID???????? 2?????????????SerialNo?????????RegistID int nRegistIDNum; /// ??????????????? char szRegistID[256][128]; /// ?????????????????ID????SerialNo???????? 2?????????????SerialNo?????????RegistID NET_TIME stuCollectStartTime; /// ????????? NET_TIME stuCollectEndTime; /// ?????????? BOOL bIsColloectTime; /// ????????????, ?TRUE???stuCollectStartTime/stuCollectEndTime??stuCollectStartTimeRealUTC/stuCollectEndTimeRealUTC???????FALSE??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuCollectStartTimeRealUTC; /// ???UTC??????(???UTC???), ??????????????????????stuCollectStartTimeRealUTC??stuCollectEndTimeRealUTC????????????????????,stuStartTimeRealUTC??stuEndTimeRealUTC???? NET_TIME stuCollectEndTimeRealUTC; /// ???UTC???????(???UTC???), ??????????????????????stuCollectStartTimeRealUTC??stuCollectEndTimeRealUTC????????????????????,stuStartTimeRealUTC??stuEndTimeRealUTC???? BOOL bUserCollectTimeRealUTC; /// ?????????UTC???, ?TRUE???????stuCollectStartTimeRealUTC??stuCollectEndTimeRealUTC, ?FALSE???????stuCollectStartTimestuCollectEndTime EM_RECORD_SNAP_FLAG_TYPE emFlagLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFlagCount; /// ??????? } MEDIAFILE_MOBILE_ENFORCE_PARAM; ///@brief SMD?????????? typedef struct tagNET_SMD_RECORD_ATTRIBUTE_INFO { EM_SMD_RECORD_TYPE emSmdRecordType; /// smd??????? BYTE byReserved[2044]; /// ?????? } NET_SMD_RECORD_ATTRIBUTE_INFO; ///@brief ?????????(SMD) ???????? ( CLIENT_FindFileEx + DH_FILE_QUERY_SMD_RECORD_FILE ) typedef struct tagMEDIAFILE_SMD_RECORD_FILE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? INT64 nFileSize; /// ??????????,?????????????4G????????? UINT nFileType; /// ??????? 1:jpg??, 2: dav UINT nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-?????? 4-?????? char szFilePath[260]; /// ??????? BYTE byReserved[4]; /// ?????? int nEventLists[256]; /// ?????????????,???????????,?????????????????? int nEventCount; /// ??????? UINT nPartition; /// ?????? UINT nDriveNo; /// ????? UINT nCluster; /// ??? NET_SMD_RECORD_ATTRIBUTE_INFO stuSmdAttribute; /// SMD?????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_SMD_RECORD_FILE_INFO; ///@brief ???????????? typedef enum tagEM_MOBILE_ENFORCE_FORMAT { EM_MOBILE_ENFORCE_FORMAT_UNKNOWN, /// ??? EM_MOBILE_ENFORCE_FORMAT_VIDEO, /// ??? EM_MOBILE_ENFORCE_FORMAT_AUDIO, /// ??? EM_MOBILE_ENFORCE_FORMAT_IMAGE, /// ?? }EM_MOBILE_ENFORCE_FORMAT; ///@brief ?????????? typedef enum tagEM_MOBILE_ENFORCE_FILE_TYPE { EM_MOBILE_ENFORCE_FILE_TYPE_UNKNOWN = 0, /// ??? EM_MOBILE_ENFORCE_FILE_TYPE_DAV, /// dav EM_MOBILE_ENFORCE_FILE_TYPE_MP4, /// mp4 EM_MOBILE_ENFORCE_FILE_TYPE_AAC, /// aac EM_MOBILE_ENFORCE_FILE_TYPE_MP3, /// mp3 EM_MOBILE_ENFORCE_FILE_TYPE_JPG, /// jpg }EM_MOBILE_ENFORCE_FILE_TYPE; ///@brief ???????? typedef enum tagEM_MOBILE_ENFORCE_VIDEO_STREAM { EM_MOBILE_ENFORCE_VIDEO_STREAM_UNKNOWN, /// ??? EM_MOBILE_ENFORCE_VIDEO_STREAM_MAIN, /// ?????? EM_MOBILE_ENFORCE_VIDEO_STREAM_EXTRA1, /// ??????1 EM_MOBILE_ENFORCE_VIDEO_STREAM_EXTRA2, /// ??????2 EM_MOBILE_ENFORCE_VIDEO_STREAM_EXTRA3, /// ??????3 }EM_MOBILE_ENFORCE_VIDEO_STREAM; ///@brief ???????????????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_MOBILE_ENFORCE ) typedef struct tagMEDIAFILE_MOBILE_ENFORCE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szFilePath[260]; /// ??????? UINT nLength; /// ???????????????????????????????Length?????????????????????????????????????????? char szUniqueID[128]; /// ?????????????? char szOriginalDeviceID[128];/// ???????????????????????ID EM_MOBILE_ENFORCE_FORMAT emFormat; /// ???????????? EM_MOBILE_ENFORCE_FILE_TYPE emFileType; /// ?????????? char szFileName[256]; /// ??????? char szExtraInfos[256]; /// ????????????? NET_TIME stuCollectTime; /// ????????? char szIntegrityCheckID[128];/// ?????????????ID BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? NET_TIME stuCollectTimeRealUTC; /// ???UTC??????(???UTC???) EM_RECORD_SNAP_FLAG_TYPE emFlagList[64]; /// ????????????, ????????????????????? int nFlagNum; /// ??????? } MEDIAFILE_MOBILE_ENFORCE_INFO; ///@brief ???????? typedef enum tagEM_SMART_KITCHEN_CLOTHES_STATE { EM_SMART_KITCHEN_CLOTHES_STATE_UNKNOWN, /// ??? EM_SMART_KITCHEN_CLOTHES_STATE_LACK, /// ??? EM_SMART_KITCHEN_CLOTHES_STATE_HAS, /// ?? }EM_SMART_KITCHEN_CLOTHES_STATE; ///@brief ???????????????? typedef struct tagNET_SMART_KITCHEN_CLOTHES_CHEF_MASK { BOOL bChefMask; /// ????????????????????true ???? ??false ?????? EM_SMART_KITCHEN_CLOTHES_STATE emHasMask[3]; /// ??????????? char szReserved[1024]; /// ?????? } NET_SMART_KITCHEN_CLOTHES_CHEF_MASK; ///@brief ???????????????? typedef struct tagNET_SMART_KITCHEN_CLOTHES_CHEF_HAT { BOOL bChefHat; /// ????????????????????true ???? ??false ?????? EM_SMART_KITCHEN_CLOTHES_STATE emHasChefHat[3]; /// ??????????? char szReserved[1024]; /// ?????? } NET_SMART_KITCHEN_CLOTHES_CHEF_HAT; ///@brief ???????? typedef enum tagEM_SMART_KITCHEN_CLOTHES_COLOUR { EM_SMART_KITCHEN_CLOTHES_COLOUR_UNKNOWN, /// ??? EM_SMART_KITCHEN_CLOTHES_COLOUR_RED, /// ?? EM_SMART_KITCHEN_CLOTHES_COLOUR_BLACK, /// ?? EM_SMART_KITCHEN_CLOTHES_COLOUR_WHITE, /// ?? }EM_SMART_KITCHEN_CLOTHES_COLOUR; ///@brief ????????????????? typedef struct tagNET_SMART_KITCHEN_CLOTHES_CHEF_CLOTHES { BOOL bChefClothes; /// ?????????????????????true ???? ??false ?????? EM_SMART_KITCHEN_CLOTHES_STATE emHasChefClothes[3]; /// ???????????? EM_SMART_KITCHEN_CLOTHES_COLOUR emChefClothesColor[3]; /// ???????? char szReserved[1024]; /// ?????? } NET_SMART_KITCHEN_CLOTHES_CHEF_CLOTHES; ///@brief ????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_SMART_KITCHEN_CLOTHES_DETECTION ) typedef struct tagMEDIAFILE_SMART_KITCHEN_CLOTHES_DETECTION_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_SMART_KITCHEN_CLOTHES_CHEF_MASK stuChefMask; /// ???????????????? NET_SMART_KITCHEN_CLOTHES_CHEF_HAT stuChefHat; /// ???????????????? NET_SMART_KITCHEN_CLOTHES_CHEF_CLOTHES stuChefClothes; /// ????????????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuBeginTime, stuEndTime), ?FALSE?????????stuBeginTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuBeginTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuBeginTime, stuEndTime)???? } MEDIAFILE_SMART_KITCHEN_CLOTHES_DETECTION_PARAM; ///@brief ???????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_SMART_KITCHEN_CLOTHES_DETECTION ) typedef struct tagMEDIAFILE_SMART_KITCHEN_CLOTHES_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_SMART_KITCHEN_CLOTHES_STATE emHasMask; /// ??????????? EM_SMART_KITCHEN_CLOTHES_STATE emHasChefHat; /// ??????????? EM_SMART_KITCHEN_CLOTHES_STATE emHasChefClothes; /// ???????????? EM_SMART_KITCHEN_CLOTHES_COLOUR emChefClothesColor; /// ???????? char szFaceImagePath[260]; /// ?????????? UINT nFaceImageLength; /// ????????????????????? char szHumanImagePath[260]; /// ??????????? UINT nHumanImageLength; /// ?????????????????????? char szSceneImagePath[260]; /// ???????????????????? UINT nSceneImageLength; /// ??????????????????????????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_SMART_KITCHEN_CLOTHES_DETECTION_INFO; ///@brief ????????????? typedef enum tagNET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE { NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE_UNKNOWN, /// ??? NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE_FLOATING_OBJECT_DETECTION, /// ??????? NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE_WATER_LEVEL_DETECTION, /// ????????? NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE_SEWAGE_DETECTION, /// ?????? NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE_WATER_COLOR_DETECTION, /// ????????? } NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE; ///@brief ???????????????? typedef enum tagNET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR { NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR_UNKNOWN, /// ??? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR_BLACK, /// ??? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR_RED, /// ??? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR_GREEN, /// ??? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR_YELLOW, /// ??? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR_ALL, /// ?????? }NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR; ///@brief ?????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_WATER_CONSERVANCY_SEARCH ) typedef struct tagMEDIAFILE_WATER_CONSERVANCY_SEARCH_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE emEventType; /// ????????????? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR emWaterColor; /// ????????????????, emEventType?NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE_WATER_COLOR_DETECTION????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } MEDIAFILE_WATER_CONSERVANCY_SEARCH_PARAM; ///@brief ????? typedef enum tagNET_EM_WATER_STATUS { NET_EM_WATER_STATUS_UNKNOWN, /// ??? NET_EM_WATER_STATUS_NORMAL, /// ???? NET_EM_WATER_STATUS_ABOVE_UPPER_THRESHOLD, /// ??????????? NET_EM_WATER_STATUS_BELOW_LOWER_THRESHOLD, /// ??????????? } NET_EM_WATER_STATUS; ///@brief ?????? typedef struct tagNET_WATER_CONSERVANCY_SEARCH_IMAGE_INFO { int nLength; /// ??????? char szFilePath[128]; /// ??????? char szReserved[892]; /// ?????? } NET_WATER_CONSERVANCY_SEARCH_IMAGE_INFO; ///@brief ????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_WATER_CONSERVANCY_SEARCH ) typedef struct tagMEDIAFILE_WATER_CONSERVANCY_SEARCH_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_EM_WATER_CONSERVANCY_SEARCH_EVENT_TYPE emEventType; /// ??????? int nCurrentRatio; /// ???????? NET_EM_WATER_STATUS emWaterStatus; /// ????? float fWaterValue; /// ????????????????????????????????????????????????????? NET_EM_WATER_CONSERVANCY_SEARCH_WATER_COLOR emWaterColor; /// ?????? char szGlobalSceneFilePath[256]; /// ???????????? int nGlobalScenePicLength; /// ???????????? NET_WATER_CONSERVANCY_SEARCH_IMAGE_INFO stuImageInfo; /// ?????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_WATER_CONSERVANCY_SEARCH_INFO; ///@brief ?????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_BREAK_RULE_BUILDING_SEARCH ) typedef struct tagMEDIAFILE_BREAK_RULE_BUILDING_SEARCH_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } MEDIAFILE_BREAK_RULE_BUILDING_SEARCH_PARAM; ///@brief ????????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_BREAK_RULE_BUILDING_SEARCH ) typedef struct tagMEDIAFILE_BREAK_RULE_BUILDING_SEARCH_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szGlobalSceneFilePath[256]; /// ???????????? int nGlobalScenePicLength; /// ???????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_BREAK_RULE_BUILDING_SEARCH_INFO; ///@brief ?????????? typedef enum tagNET_EM_BOAT_SEARCH_RULE { NET_EM_BOAT_SEARCH_RULE_UNKNOWN, /// ??? NET_EM_BOAT_SEARCH_RULE_CROSS_LINE_DETECTION, /// ??????? NET_EM_BOAT_SEARCH_RULE_CROSS_REGION_DETECTION, /// ??????? NET_EM_BOAT_SEARCH_RULE_PARKING_DETECTION, /// ?????? NET_EM_BOAT_SEARCH_RULE_FISHING_DETECTION, /// ?????? } NET_EM_BOAT_SEARCH_RULE; ///@brief ???????????? typedef enum tagNET_EM_BOAT_SEARCH_ACTION { NET_EM_BOAT_SEARCH_ACTION_UNKNOWN, /// ??? NET_EM_BOAT_SEARCH_ACTION_APPEAR, /// ???? NET_EM_BOAT_SEARCH_ACTION_DISAPPEAR, /// ??? NET_EM_BOAT_SEARCH_ACTION_INSIDE, /// ???? NET_EM_BOAT_SEARCH_ACTION_CROSS, /// ??? } NET_EM_BOAT_SEARCH_ACTION; ///@brief ?????????? typedef enum tagNET_EM_BOAT_SEARCH_DIRECTION { NET_EM_BOAT_SEARCH_DIRECTION_UNKNOW = 0 , NET_EM_BOAT_SEARCH_DIRECTION_LEFT_TO_RIGHT , ///???? NET_EM_BOAT_SEARCH_DIRECTION_RIGHT_TO_LEFT , ///????? } NET_EM_BOAT_SEARCH_DIRECTION; ///@brief ?????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_BOAT_SEARCH ) typedef struct tagMEDIAFILE_BOAT_SEARCH_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nRuleNum; /// ?????????? NET_EM_BOAT_SEARCH_RULE emRule[4]; /// ??????? NET_EM_BOAT_SEARCH_ACTION emAction; /// ?????? NET_EM_BOAT_SEARCH_DIRECTION emDirection; /// ???? BOOL bOnlySupportRealUTC;/// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC;/// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } MEDIAFILE_BOAT_SEARCH_PARAM; ///@brief ????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_BOAT_SEARCH ) typedef struct tagMEDIAFILE_BOAT_SEARCH_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_EM_BOAT_SEARCH_RULE emRule; /// ??????? NET_EM_BOAT_SEARCH_ACTION emAction; /// ?????? NET_EM_BOAT_SEARCH_DIRECTION emDirection; /// ???? char szGlobalSceneFilePath[256]; /// ???????????? int nGlobalScenePicLength; /// ???????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } MEDIAFILE_BOAT_SEARCH_INFO; ///@brief ??????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_RADAR_REGION_DETECTION ) typedef struct tagMEDIAFILE_RADAR_REGION_DETECTION_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? } MEDIAFILE_RADAR_REGION_DETECTION_PARAM; ///@brief ?????????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_RADAR_REGION_DETECTION ) typedef struct tagMEDIAFILE_RADAR_REGION_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? SCENE_IMAGE_INFO_EX stuSceneImage[10]; /// ?????????? int nSceneImageNum; /// ????????????? } MEDIAFILE_RADAR_REGION_DETECTION_INFO; ///@brief ????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_EXAM ) typedef struct tagNET_MEDIAFILE_EXAM_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szName[64]; /// ???????? char szNumber[64]; /// ???????? char szCameraIP[32]; /// ?????IP } NET_MEDIAFILE_EXAM_PARAM; ///@brief ???????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_EXAM ) typedef struct tagNET_MEDIAFILE_EXAM_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szName[64]; /// ???????? char szNumber[64]; /// ???????? char szCameraIP[32]; /// ?????IP } NET_MEDIAFILE_EXAM_INFO; ///@brief ?????? ID?????? ID??????? ID??????? ( CLIENT_FindFileEx + DH_FILE_QUERY_POLICEID ) typedef struct tagNET_MEDIAFILE_POLICEID_PARAM { DWORD dwSize; /// ??????? NET_TIME stuStartTime; /// ????????? NET_TIME stuEndTime; /// ?????????? char szPoliceManID[32]; /// ???ID char szPoliceCarID[32]; /// ????ID char szPoliceOfficeID[64]; /// ????ID } NET_MEDIAFILE_POLICEID_PARAM; ///@brief ??????????????? typedef enum tagEM_CLASSROOM_ACTION { EM_CLASSROOM_ACTION_UNKNOWN, /// ??? EM_CLASSROOM_ACTION_PLAY_PHONE, /// ????? EM_CLASSROOM_ACTION_HANDSUP, /// ???? EM_CLASSROOM_ACTION_LISTEN, /// ???? EM_CLASSROOM_ACTION_READ_WRITE, /// ???? EM_CLASSROOM_ACTION_TABLE, /// ????? EM_CLASSROOM_ACTION_TURN, /// ??? EM_CLASSROOM_ACTION_ALL = 255, /// ???(?????????) } EM_CLASSROOM_ACTION; ///@brief ?????????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_CLASSROOM_BEHAVIOR ) typedef struct tagNET_MEDIAFILE_CLASSROOM_BEHAVIOR_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nActionNum; /// ????????????? EM_CLASSROOM_ACTION emAction[8]; /// ????????? } NET_MEDIAFILE_CLASSROOM_BEHAVIOR_PARAM; ///@brief ???????? typedef struct tagNET_CLASSROOM_BEHAVIOR_CANDIDATE_INFO { UINT nSimilarity; /// ?????, ??????,1~100 char szFaceDB[128]; /// ?????????? char szCandidatePath[256]; /// ?????????????????? char szName[64]; /// ??????? char szReserved[252]; /// ?????? }NET_CLASSROOM_BEHAVIOR_CANDIDATE_INFO; ///@brief ?????????????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_CLASSROOM_BEHAVIOR ) typedef struct tagNET_MEDIA_CLASSROOM_BEHAVIOR_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ??????0???,-1????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_CLASSROOM_ACTION emAction; /// ??????? UINT nPresetID; /// ??????????????, ??1???, 0?????????? UINT nIsStranger; /// ???????????????????????, 0-???, 1-?????????????, 2-????????????? NET_FACE_ATTRIBUTE_EX stuFaceAttributes; /// ???? NET_RECT_EX stuObjectBoundingBox; /// ??????????? char szFacePath[256]; /// ??????????? char szScenePath[256]; /// ???????? NET_CLASSROOM_BEHAVIOR_CANDIDATE_INFO stuCandidate; /// ???????? } NET_MEDIA_CLASSROOM_BEHAVIOR_INFO; ///@brief ???????????? typedef struct tagNET_POLICE_VEHICLE_DATA { char szTerminalSn[32]; /// ????ID char szUid[32]; /// ???ID char szUserName[32]; /// ??????? char szGroupId[32]; /// ?????? char szVtrNumber[32]; /// VTR?????? char szBopmNumber[32]; /// BOPM??? char szCaseCode[32]; /// ??????? char szCaseType[32]; /// ??????? char szAdditionalInfo[32]; /// ??????? char szMd5[64]; /// MD5? char szReserveA[256]; /// ????????1 char szReserveB[256]; /// ????????2 char szReserveC[256]; /// ????????3 char szReserved[1024]; /// ?????? }NET_POLICE_VEHICLE_DATA; ///@brief ???????????? ( CLIENT_FindFileEx + DH_FILE_QUERY_VEHICLE_TRIGGER_MODE ) typedef struct tagNET_MEDIAFILE_VEHICLE_TRIGGER_MODE_PARAM { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nFileTypeNum; /// ??????????, ?0?????????????? EM_FINDFILE_TYPE emFileType[8]; /// ??????? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? NET_POLICE_VEHICLE_DATA stuPoliceVehicleData; /// ???????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? } NET_MEDIAFILE_VEHICLE_TRIGGER_MODE_PARAM; ///@brief ??????????????? ( CLIENT_FindNextFileEx + DH_FILE_QUERY_VEHICLE_TRIGGER_MODE ) typedef struct tagNET_MEDIA_VEHICLE_TRIGGER_MODE_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szFilePath[260]; /// ??????? int nMediaType; /// ???????,0:????????, 1:jpg??, 2:dav??? unsigned int nFileLength; /// ??????????????????????nFileLengthEx unsigned int nCluster; /// ??? unsigned int nHint; /// ??????????? unsigned int nDriveNo; /// ????? int nVideoStream; /// ??????? 0-??? 1-?????? 2-??????1 3-??????2 4-??????3 int nEventLists[MAX_IVS_EVENT_NUM]; /// ???????????,?????????????????? int nEventCount; /// ??????? EM_RECORD_SNAP_FLAG_TYPE emFalgLists[FLAG_TYPE_MAX]; /// ????????????, ????????????????????? int nFalgCount; /// ??????? NET_POLICE_VEHICLE_DATA stuPoliceVehicleData; /// ???????????? INT64 nFileLengthEx; /// ?????????????????????????4G????????? BOOL bRealUTC; /// ?TRUE?????stuStartTimeRealUTC??stuEndTimeRealUTC????(?????stuStartTimeRealUTC??stuEndTimeRealUTC), ?FALSE?????stuStartTime??stuEndTime????(?????stuStartTime??stuEndTime) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????? } NET_MEDIA_VEHICLE_TRIGGER_MODE_INFO; ///@brief ????(NET_IN_SNAPSHOT)??? ????????????????????,???????????????????? typedef struct __NET_FLASHCONTROL { DWORD dwSize; /// ???????? int nMode; /// ?????? 0-???????,1-???????,2-??????? }NET_FLASHCONTROL; ///@brief ??????????? typedef enum tagSNAP_CLIENT_TYPE { SNAP_CLIENT_TYPE_COMMON, /// ???"Common"????, ??????? SNAP_CLIENT_TYPE_PARKINGSPACE, /// ???"ParkingSpace"????, ????? }SNAP_CLIENT_TYPE; #define DH_MAX_USER_DEFINE_INFO 1024 ///@brief nTriggerType==2? ?????????????? typedef struct _NET_CLIENT_SNAP_INFO { DWORD dwSize; /// ???????? unsigned int nFrameSequence; /// ???? double PTS; /// ????,64?????????? char szUserDefinedInfo[DH_MAX_USER_DEFINE_INFO]; /// ?????,??????????,"\0"???? SNAP_CLIENT_TYPE emSNAP_CLIENT_TYPE; /// ????????? DWORD dwRetCardNumber; /// ??????? EVENT_CARD_INFO stuCardInfo[DH_EVENT_MAX_CARD_NUM]; /// ?????? }NET_CLIENT_SNAP_INFO; ///@brief ???(CLIENT_TrafficSnapByNetwork)??????? typedef struct __NET_IN_SNAPSHOT { DWORD dwSize; /// ???????? int nTriggerType; /// ???????? int nLaneID; /// ?????? int nGroupID; /// ????? int nGrabTimes; /// ????????? int nStartPicNum; /// ????????????? int nDirection; /// ?????????????????? 0-?? 1-???? 2-?? 3-???? 4-?? 5-???? 6-?? 7-???? 8-??? ///NET_GRAB_WAITTIME stGrabWaitTime; /// ?????????????? int nGrabWaitTime; /// pGrabWaitTime?????????? DWORD* pGrabWaitTime; /// ??????????????,??????????????????nGrabWaitTime int nLowerSpeedLimit; /// ???????,????km/h int nUpperSpeedLimit; /// ???????,????km/h int nSpeed; /// ????,????km/h int nViolationNo; /// ??????? 0-????? /// 1-??????? /// 2-?????????50% /// 3-??????50%??100%??? /// 4-???????100% /// 5-???? /// 6-????? /// 7-???????? /// 8-????,??????????? int nRedLightTime; /// ??????,????????????????????,?????? ///NET_FLASHCONTROL stFlashControl; /// ??????????? int nFlashControl; /// pFlashControl??????? NET_FLASHCONTROL* pFlashControl; /// ???????????,??????????????????sizeof(NET_FLASHCONTROL)*nFlashControl DWORD dwUser; /// ??????? NSP NET_CLIENT_SNAP_INFO stClientInfo; /// ???????????????????? char szSerialNo[128]; /// ????????????????? }NET_IN_SNAPSHOT; ///@brief ???(CLIENT_TrafficSnapByNetwork)??????? typedef struct __NET_OUT_SNAPSHOT { DWORD dwSize; /// ???????? }NET_OUT_SNAPSHOT; ///@brief ???(CLIENT_TrafficForceLightState)??????? typedef struct __NET_IN_FORCELIGHTSTATE { DWORD dwSize; /// ???????? unsigned int nDirection; /// ?????????0????"Straight",1????"TurnLeft",2????"TurnRight",3????"U-Turn" }NET_IN_FORCELIGHTSTATE; ///@brief ???(CLIENT_TrafficForceLightState)??????? typedef struct __NET_OUT_FORCELIGHTSTATE { DWORD dwSize; /// ???????? }NET_OUT_FORCELIGHTSTATE; ///@brief ???(CLIENT_StartTrafficFluxStat)??? typedef int (CALLBACK *fFluxStatDataCallBack)(LLONG lFluxStatHandle, DWORD dwEventType, void* pEventInfo, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser, int nSequence, void *reserved); ///@brief ???(CLIENT_StartTrafficFluxStat)??????? typedef struct __NET_IN_TRAFFICFLUXSTAT { DWORD dwSize; /// ???????? fFluxStatDataCallBack cbData; /// ?????????? LDWORD dwUser; /// ??????? }NET_IN_TRAFFICFLUXSTAT; ///@brief ???(CLIENT_StartTrafficFluxStat)??????? typedef struct __NET_OUT_TRAFFICFLUXSTAT { DWORD dwSize; /// ???????? }NET_OUT_TRAFFICFLUXSTAT; ///@brief ?????????????????? typedef enum tagEM_GRANULARITY_STARTFIND_TYPE { EM_GRANULARITY_TYPE_UNKNOWN, /// ??? EM_GRANULARITY_TYPE_MINUTE, /// ??5????(?????) EM_GRANULARITY_TYPE_HOUR, /// ?????(?????) EM_GRANULARITY_TYPE_DAY, /// ????(??????) EM_GRANULARITY_TYPE_MONTH, /// ????(????) }EM_GRANULARITY_STARTFIND_TYPE; ///@brief ???????????? typedef enum tagEM_STARTFIND_DIRECTION { EM_STARTFIND_DIRECTION_UNKNOWN, /// ??? EM_STARTFIND_DIRECTION_BOTH, /// ??? EM_STARTFIND_DIRECTION_LEFTTORIGHT, /// ???? EM_STARTFIND_DIRECTION_RIGHTTOLEFT, /// ????? }EM_STARTFIND_DIRECTION; ///@brief ???(CLIENT_StartFindFluxStat)??????? typedef struct __NET_IN_TRAFFICSTARTFINDSTAT { DWORD dwSize; /// ???????? NET_TIME stStartTime; /// ?????? ??????????? NET_TIME stEndTime; /// ??????? ??????????? int nWaittime; /// ????????????????? int nChannelCount; /// ????????????? int nChannels[256]; /// ?????????? int nLaneCount; /// ????????????? int nLanes[16]; /// ?????????? int nClassType; /// ?????????? 0??????????,1?????????? EM_GRANULARITY_STARTFIND_TYPE emGranularity; /// ?????????????????? ??????? EM_STARTFIND_DIRECTION emDirection; /// ???????????? }NET_IN_TRAFFICSTARTFINDSTAT; ///@brief ???(CLIENT_StartFindFluxStat)??????? typedef struct __NET_OUT_TRAFFICSTARTFINDSTAT { DWORD dwSize; /// ???????? DWORD dwTotalCount; /// ??????????????????????? }NET_OUT_TRAFFICSTARTFINDSTAT; ///@brief ???(CLIENT_DoFindFluxStat)??????? typedef struct __NET_IN_TRAFFICDOFINDSTAT { DWORD dwSize; /// ???????? unsigned int nCount; /// ??????????????????? int nWaittime; /// ????????????????? }NET_IN_TRAFFICDOFINDSTAT; ///@brief ????????? typedef struct { DWORD dwSize; /// ???????? int nStatInfo; /// ?????????? DH_TRAFFICFLOWSTAT *pStatInfo; /// ?????????,??????????????????sizeof(DH_TRAFFICFLOWSTAT)*nStatInfo }DH_TRAFFICFLOWSTAT_OUT; ///@brief ???(CLIENT_DoFindFluxStat)??????? typedef struct __NET_OUT_TRAFFICDOFINDSTAT { DWORD dwSize; /// ???????? DH_TRAFFICFLOWSTAT_OUT stStatInfo; /// ????????? }NET_OUT_TRAFFICDOFINDSTAT; ///@brief ???????? typedef enum tagEM_RULE_TYPE { EM_RULE_UNKNOWN, /// ??? EM_RULE_NUMBER_STAT, /// ??????? EM_RULE_MAN_NUM_DETECTION, /// ????????????? EM_RULE_QUEUE_DETECTION, /// ????? EM_RULE_ANATOMYTEMP_DETECT, /// ?????????????? } EM_RULE_TYPE; ///@brief ???????? typedef enum tagEM_OTHER_RULE_TYPE { EM_OTHER_RULE_TYPE_UNKOWN, /// ??? EM_OTHER_RULE_TYPE_AVERAGE_STAYTIME, /// ?????????? } EM_OTHER_RULE_TYPE; ///@brief ???(CLIENT_StartFindNumberStat)??????? typedef struct __NET_IN_FINDNUMBERSTAT { DWORD dwSize; /// ???????? int nChannelID; /// ??????????????? NET_TIME stStartTime; /// ?????? ??????????? NET_TIME stEndTime; /// ??????? ??????????? int nGranularityType; /// ???????0:????,1:???,2:??,3:??,4:??,5:??,6:??, /// 7:???, 8:??? (7??8???emRuleType?EM_RULE_MAN_NUM_DETECTION?????) int nWaittime; /// ????????????????? UINT nPlanID; /// ???ID,?????????,??1??? EM_RULE_TYPE emRuleType; /// ???????? int nMinStayTime; /// ??????????????????????????????0???????????????????????????????? /// NumberStat??????????? int nAreaIDNum; /// ????ID???? UINT nAreaID[20]; /// ????ID(???????????????????ID) EM_OTHER_RULE_TYPE emOtherRule; /// ???????? int nGranularityExt; /// ???????????????????????????????? ???????5???????? }NET_IN_FINDNUMBERSTAT; ///@brief ???(CLIENT_StartFindNumberStat)??????? typedef struct __NET_OUT_FINDNUMBERSTAT { DWORD dwSize; /// ???????? DWORD dwTotalCount; /// ??????????????????????? }NET_OUT_FINDNUMBERSTAT; ///@brief ???(CLIENT_DoFindNumberStat)??????? typedef struct __NET_IN_DOFINDNUMBERSTAT { DWORD dwSize; /// ???????? unsigned int nBeginNumber; /// [0, totalCount-1], ?????????,?????beginNumber????????,?count?????????; unsigned int nCount; /// ??????????????????? int nWaittime; /// ????????????????? }NET_IN_DOFINDNUMBERSTAT; ///@brief ????????? typedef struct tagNET_TEMPERATURE_STATISTICS_INFO { UINT nTotalCount; /// ?????? UINT nHighTempCount; /// ????????? UINT nLowTempCount; /// ????????? UINT nNormalTempCount; /// ??????????? UINT nNoMaskCount; /// ?????????????? UINT nTimeKey; /// ?????? BYTE byReserved[1024]; /// ?????? }NET_TEMPERATURE_STATISTICS_INFO; ///@brief ??????????????? typedef struct __DH_NUMBERSTAT { DWORD dwSize; int nChannelID; /// ???????? char szRuleName[DH_CHAN_NAME_LEN]; /// ???????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nEnteredSubTotal; /// ???????????? int nExitedSubtotal; /// ??????????? int nAvgInside; /// ???????????(??????) int nMaxInside; /// ????????? int nEnteredWithHelmet; /// ?????????????????? int nEnteredWithoutHelmet; /// ???????????????????? int nExitedWithHelmet; /// ????????????????? int nExitedWithoutHelmet; /// ??????????????????? int nInsideSubtotal; /// ???????????????? UINT nPlanID; /// ???ID,?????????,??1??? UINT nAreaID; /// ????ID(???????????????????ID) UINT nAverageStayTime; /// ???????????????? NET_TEMPERATURE_STATISTICS_INFO stuTempInfo; /// ?????????(NET_IN_FINDNUMBERSTAT ??? emRuleType ??? EM_RULE_ANATOMYTEMP_DETECT ?????) int nPassedSubtotal; /// ???????????? UINT nEnteredDupSubtotal; /// ??????????????? UINT nExitedDupSubtotal; /// ?????????????? UINT nEnteredNoDupSubtotal; /// ???????????????? UINT nExitedNoDupSubtotal; /// ??????????????? int nClusterAreaID; /// ????????????ID int nBatchTotal; /// ?????????? }DH_NUMBERSTAT; ///@brief ???(CLIENT_DoFindNumberStat)??????? typedef struct __NET_OUT_DOFINDNUMBERSTAT { DWORD dwSize; /// ???????? int nCount; /// ?????????????????????? DH_NUMBERSTAT *pstuNumberStat; /// ??????????????????? /// ??????????????????nBufferLen int nBufferLen; /// ??????????????,??DH_NUMBERSTAT????dwsize????????? int nMinStayTime; /// ???????????????????????????? }NET_OUT_DOFINDNUMBERSTAT; ///@brief ????????????? typedef struct tagNET_VIDEOSTAT_SUBTOTAL { int nTotal; /// ???????????????????? int nHour; /// ???????????? int nToday; /// ???????????, ?????????? int nOSD; /// ???????, ????OSD???, ???????? unsigned int nTotalNonMotor; /// ??????????????????????,???????????????????????? unsigned int nHourNonMotor; /// ?????????????????? unsigned int nTodayNonMotor; /// ???????????????(?????) UINT nTotalPig; /// ???????????????????,???????????????????????? UINT nHourPig; /// ??????????????? UINT nTodayPig; /// ????????????(?????) UINT nTotalPigInTimeSection; /// IPC????????????clearSectionStat???????????TodayPig??????? char reserved[224]; /// ??????? } NET_VIDEOSTAT_SUBTOTAL; #define MAX_EXIT_MAN_NUM 32 /// ???????????????? ///@brief ????????????????? typedef struct tagNET_EXITMAN_STAY_STAT { NET_TIME stuEnterTime; /// ?????????????? NET_TIME stuExitTime; /// ???????????? BYTE reserved[128]; /// ??????? } NET_EXITMAN_STAY_STAT; ///@brief ??????????????????? typedef struct tagNET_NONMOTOR_STAY_STAT { NET_TIME stuEnterTime; /// ??????????????????? NET_TIME stuExitTime; /// ????????????????? BYTE reserved[128]; /// ??????? } NET_NONMOTOR_STAY_STAT; ///@brief ????????????????? typedef struct tagNET_PIG_STAY_STAT { NET_TIME stuEnterTime; /// ??????????????? NET_TIME stuExitTime; /// ????????????? char szReserved[208]; /// ??????? }NET_PIG_STAY_STAT; ///@brief ??????????? typedef struct tagNET_PASSED_SUBTOTAL_INFO { int nTotal; /// ????????????????????? int nHour; /// ???????????? int nToday; /// ???????????(?????) int nTotalInTimeSection; /// IPC????????????clearSectionStat???????????Today???? char szReserved[112]; /// ??????? }NET_PASSED_SUBTOTAL_INFO; ///@brief ??????????? typedef struct tagNET_VIDEOSTAT_SUMMARY { int nChannelID; /// ????? char szRuleName[32]; /// ???????? NET_TIME_EX stuTime; /// ?????? NET_VIDEOSTAT_SUBTOTAL stuEnteredSubtotal; /// ???????? NET_VIDEOSTAT_SUBTOTAL stuExitedSubtotal; /// ??????? UINT nInsidePeopleNum; /// ?????????? EM_RULE_TYPE emRuleType; /// ???????? int nRetExitManNum; /// ???????????? NET_EXITMAN_STAY_STAT stuExitManStayInfo[MAX_EXIT_MAN_NUM]; /// ????????????????? UINT nPlanID; /// ???ID,?????????,??1??? UINT nAreaID; /// ????ID(???????????????????ID) UINT nCurrentDayInsidePeopleNum; /// ???????????????? UINT nInsideTotalNonMotor; /// ???????????????? UINT nInsideTodayNonMotor; /// ????????????? int nRetNonMotorNum; /// ????????????????? NET_NONMOTOR_STAY_STAT stuNonMotorStayStat[MAX_EXIT_MAN_NUM]; /// ??????????????????? UINT nInsideTotalPig; /// ??????????? int nPigStayStatCount; /// ??????????????????? NET_PIG_STAY_STAT stuPigStayStatInfo[32]; /// ??????????????? UINT nInsideTodayPig; /// ?????????? char szReserved[4]; /// ?????? NET_PASSED_SUBTOTAL_INFO stuPassedSubtotal; /// ???????? BYTE reserved[884]; /// ??????? } NET_VIDEOSTAT_SUMMARY; ///@brief ???????????????????????lAttachHandle ?? CLIENT_AttachVideoStatSummary ????? typedef void (CALLBACK *fVideoStatSumCallBack) (LLONG lAttachHandle, NET_VIDEOSTAT_SUMMARY* pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief CLIENT_AttachVideoStatSummary ??? typedef struct tagNET_IN_ATTACH_VIDEOSTAT_SUM { DWORD dwSize; int nChannel; /// ???????? fVideoStatSumCallBack cbVideoStatSum; /// ?????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_VIDEOSTAT_SUM; ///@brief CLIENT_AttachVideoStatSummary ???? typedef struct tagNET_OUT_ATTACH_VIDEOSTAT_SUM { DWORD dwSize; } NET_OUT_ATTACH_VIDEOSTAT_SUM; ///@brief ???????? typedef enum tagEM_HEATMAP_TYPE { EM_HEATMAP_UNKNOWN, /// ??? EM_HEATMAP_AVERAGESTAYTIME, /// ?????????????? EM_HEATMAP_HUMANSTATISTICS, /// ??????????? EM_HEATMAP_HUMANTRACK, /// ?????? }EM_HEATMAP_TYPE; ///@brief ??????????????? typedef struct tagNET_IN_GET_VIDEOSTAT_HEATMAP { DWORD dwSize; /// ???????? int nPlanID; /// ?????????,?????????,????1~MaxNumberStatPlan?? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_HEATMAP_TYPE emHeatMapType; /// Ai ???????? }NET_IN_GET_VIDEOSTAT_HEATMAP; ///@brief ??????????????? typedef struct tagNET_OUT_GET_VIDEOSTAT_HEATMAP { DWORD dwSize; /// ???????? UINT nToken; /// ?????Token }NET_OUT_GET_VIDEOSTAT_HEATMAP; ///@brief ??????????? typedef struct tagNET_CB_VIDEOSTAT_HEATMAP { UINT nToken; EM_HEATMAP_TYPE emHeatMapType; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_CB_VIDEOSTAT_HEATMAP; ///@brief ?????????????? typedef void (CALLBACK *fVideoStatHeatMapCallBack) (LLONG lAttachHandle, NET_CB_VIDEOSTAT_HEATMAP* pBuf, const char* pBinData, DWORD dwBinDataLen, LDWORD dwUser); ///@brief ?????????????? typedef struct tagNET_IN_ATTACH_VIDEOSTAT_HEATMAP { DWORD dwSize; /// ???????? int nChannel; /// ???????? fVideoStatHeatMapCallBack cbVideoStatHeatMap; /// ????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_VIDEOSTAT_HEATMAP; ///@brief ??????????????? typedef struct tagNET_OUT_ATTACH_VIDEOSTAT_HEATMAP { DWORD dwSize; /// ???????? } NET_OUT_ATTACH_VIDEOSTAT_HEATMAP; ///@brief ?????? typedef enum tagEM_STAT_GRANULARITY { EM_STAT_GRANULARITY_UNKNOWN, /// ??? EM_STAT_GRANULARITY_MINUTE, /// ???????? }EM_STAT_GRANULARITY; ///@brief ????????????????????????? typedef struct tagNET_INSIDE_SUB_TOTAL_INFO { int nTotal; /// ??????????????????????? int nTotalStayTime; /// ???????????????????????? int nManStaySummaryValidNum; /// ??????????????? int nManStaySummary[8]; /// ???????, ?????????????????????????3,5,10,300??????.????????????????????3??10?????????5???6?????10???3?????300???0??? int nTotalStayTimeSummaryValidNum; /// ????????????????? int nTotalStayTimeSummary[8]; /// ?????????????????, ?????????????????????????3,5,10,300??????,????????????????????3?????????????????50??????5???48??10???30??300???0?? } NET_INSIDE_SUB_TOTAL_INFO; ///@brief ????????????? typedef struct tagNET_CB_VIDEOSTAT_STREAM { int nChannel; /// ???????? int nPtzPresetId; /// ???????????0?????????????1~PtzPresetMax??IPC????? char szRuleNanme[128]; /// ???????? char szStartTime[20]; /// ??????????????????? char szRuleType[32]; /// "NumberStat"????????? EM_STAT_GRANULARITY emStatGranularity; /// ???? unsigned short nCycle; /// ??Granularity?????????emGranularity? EM_GRANULARITY_MINUTE?? Cycle ??5???????5?????????????????? unsigned short nAreaID; /// ????ID???????????????0????????? UINT nEnteredSubtotal; /// ??????????????????? UINT nExitedSubtotal; /// ?????????????????? UINT nPassedSubtotal; /// ??????????????????? NET_INSIDE_SUB_TOTAL_INFO stuInsideSubtotal; /// ?????????????????????????, bIsSendMinStayTime?TRUE????? char szReserved[940]; /// ??????? }NET_CB_VIDEOSTAT_STREAM; ///@brief ???????????????? typedef void (CALLBACK *fVideoStatStreamCallBack) (LLONG lAttachHandle, NET_CB_VIDEOSTAT_STREAM* pBuf, int nBufLen, LDWORD dwUser); ///@brief ????????????????? typedef struct tagNET_IN_ATTACH_VIDEOSTAT_STREAM { DWORD dwSize; /// ??????? int nVideoChannel; /// ???????? EM_STAT_GRANULARITY emGranularity; /// ???? char szReserved1[4]; /// ?????? char szRuleType[32]; /// "NumberStat"??????????????????????; "ManNumDetection"????????????????????????????????????????? char szStartTime[20]; /// ??????????????????????????????????????????????????????10???????????????????????????????? ??0???10???20???30???40?????50??? fVideoStatStreamCallBack cbVideoStatStream; /// ???????????? LDWORD dwUser; /// ??????? unsigned short nCycle; /// ??Granularity?????????emGranularity? EM_GRANULARITY_MINUTE?? Cycle ??5???????5?????????????????? char szReserved2[2]; /// ?????? int nSendMinStayTimeValidNum; /// ????????????????????0??????????? int nMinStayTime[8]; /// ???????????????????????, ????????????????????????????3??????5??????10?????,??????, ????????????????????????????????? }NET_IN_ATTACH_VIDEOSTAT_STREAM; ///@brief ????????????????? typedef struct tagNET_OUT_ATTACH_VIDEOSTAT_STREAM { DWORD dwSize; /// ???????? }NET_OUT_ATTACH_VIDEOSTAT_STREAM; ///@brief ??? CLIENT_GetParkingSpaceStatus ????????? typedef struct tagNET_IN_GET_PARKINGSPACE_STATUS { DWORD dwSize; /// ???????? DWORD dwWaitTime; /// ??????????? int nChannelID; /// ????? int * pLaneID; /// ??????[0,255], pLaneID==NULL???????????,??????????DH_PRODUCTION_DEFNITION.nMaxRoadWays int nLaneCount; /// ?????????sizeof(int)*nLaneCount } NET_IN_GET_PARKINGSPACE_STATUS; ///@brief ?????????? typedef struct tagNET_LANE_PARKINGSPACE_STATUS { DWORD dwSize; /// ???????? int nLaneID; /// ?????? unsigned int nPictureId; /// ??ID,???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? } NET_LANE_PARKINGSPACE_STATUS; ///@brief ??? CLIENT_GetParkingSpaceStatus ????????? typedef struct tagNET_OUT_GET_PARKINGSPACE_STATUS { DWORD dwSize; /// ???????? NET_LANE_PARKINGSPACE_STATUS* pStatus; /// ??????????,???????????? int nMaxStatus; /// ????????????????sizeof(NET_LANE_PARKINGSPACE_STATUS)*nMaxStatus,??nMaxStatus == DH_PRODUCTION_DEFNITION.nMaxRoadWays int nRetStatus; /// ?????????????? } NET_OUT_GET_PARKINGSPACE_STATUS; ///@brief ??? CLIENT_AttachParkingSpaceData ????????? typedef struct tagNET_CB_PARKINGSPACE_DATA { DWORD dwSize; /// ???????? void* pPicBuffer; /// ????????????,??????????????????sizeof(unsigned int)*nPicLength unsigned int nPicLength; /// ??????? } NET_CB_PARKINGSPACE_DATA; ///@brief ??? CLIENT_AttachParkingSpaceData ???????,pBuf??json????????,nBufLen??pBuf???????,??????????? typedef int (CALLBACK *fNotifySnapData)(LLONG lParkingHandle, NET_CB_PARKINGSPACE_DATA* pDiagnosisInfo, void* pBuf, int nBufLen, LDWORD dwUser); ///@brief ??? CLIENT_AttachParkingSpaceData ????????? typedef struct tagNET_IN_ATTACH_PARKINGSPACE { DWORD dwSize; /// ???????? DWORD dwWaitTime; /// ??????????? int nChannelID; /// ????? unsigned int nPictureId; /// ??ID,??NET_LANE_PARKINGSPACE_STATUS.nPictureId fNotifySnapData cbNotifySnapData; /// ??????? LDWORD dwUser; /// ??????????? } NET_IN_ATTACH_PARKINGSPACE; ///@brief ?????? typedef struct tagNET_CB_FINGERPRINT_INFO { UINT nIndex; /// ?????????????????????????????????0??9 char szFingerprintData[DH_COMMON_STRING_2048]; /// ????????????Base64???????? BYTE bReserved[256]; /// ??????? }NET_CB_FINGERPRINT_INFO; ///@brief ??????????????? typedef struct tagNET_CB_PERSON_INFO { UINT nSID; /// ??????????ID?? UINT nPicLength; /// ?????????????? char szUserID[DH_MAX_USERID_LEN]; /// ???ID UINT nRetFaceDataNum; /// ?????????????????? char szFaceData[MAX_FACE_DATA_NUM][MAX_FACE_DATA_LEN]; /// ??????? char szPassword[DH_COMMON_STRING_64];///?????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? char szCardName[DH_COMMON_STRING_32];///?????? UINT nFingerPrintNum; /// ??????????? NET_CB_FINGERPRINT_INFO stuFingerPrintInfo[MAX_FINGERPRINT_NUM];///?????? BYTE bReserved[2048]; /// ??????? }NET_CB_PERSON_INFO; ///@brief ???????????????? typedef int (CALLBACK *fNotifyPersonInfo)(LLONG lLoginID, LLONG lPersonHandle, NET_CB_PERSON_INFO *pstuPersonInfo, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser, void *reserved); ///@brief CLIENT_AttachPersonInfoCollect ??? typedef struct tagNET_IN_ATTACH_PERSONINFOCOLLECT { DWORD dwSize; /// ??????? DWORD dwWaitTime; /// ??????????? fNotifyPersonInfo cbNotifyPersonInfo; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_PERSONINFOCOLLECT; ///@brief CLIENT_AttachPersonInfoCollect ???? typedef struct tagNET_OUT_ATTACH_PERSONINFOCOLLECT { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_PERSONINFOCOLLECT; ///@brief CLIENT_DetachPersonInfoColloect ??? typedef struct tagNET_IN_DETACH_PERSONINFOCOLLECT { DWORD dwSize; ///??????? DWORD dwWaitTime; /// ??????????? LLONG lPersonHandle; /// CLIENT_AttachPersonInfoCollect ??????? }NET_IN_DETACH_PERSONINFOCOLLECT; ///@brief CLIENT_DetachPersonInfoColloect ???? typedef struct tagNET_OUT_DETACH_PERSONINFOCOLLECT { DWORD dwSize; /// ??????? }NET_OUT_DETACH_PERSONINFOCOLLECT; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachPersonInfoCollect(LLONG lLoginID, NET_IN_ATTACH_PERSONINFOCOLLECT *pstuInParam, NET_OUT_ATTACH_PERSONINFOCOLLECT *pstuOutParam); ///@brief ???????????????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachPersonInfoColloect(NET_IN_DETACH_PERSONINFOCOLLECT* pstuInParam, NET_OUT_DETACH_PERSONINFOCOLLECT* pstuOutParam); ///@brief NET_CAR_PASS_INFOS ?????????? typedef enum tagNET_CAR_SIZE { CAR_SIZE_UNKNOWN = 0 , ///??? CAR_SIZE_SAMLL , ///???? CAR_SIZE_BIG , ///?? }NET_CAR_SIZE; ///@brief ???????????? typedef enum tagNET_CAR_ACTION { CAR_ACTION_UNKNOWN = 0 , CAR_ACTION_ENTER , ///?????????? CAR_ACTION_LEAVE , ///????????? }NET_CAR_ACTION; ///@brief CLIENT_AttachCarPassInfo ?????????????????????? typedef struct tagNET_CAR_PASS_INFO { DWORD dwSize; DWORD nID; /// ????????ID DWORD nLaneNumber; /// ??0???,????????3??????,????????0 1 2 DWORD nRoadwayNumber; /// ?????t????,?????????????,?????????1-16 DWORD nSpeed; /// ????,????(km/h) NET_CAR_SIZE emCarSize; /// ???????????? NET_CAR_ACTION emCarAction; /// ???????????? NET_TIME_EX stuTime; /// ?????????????,????????? }NET_CAR_PASS_INFO; ///@brief ??? CLIENT_AttachCarPassInfo ??????? /// nInfoNum ????????? /// pstuCarPassInfos ??????????? typedef int (CALLBACK *fNotifyCarPassInfo)(LLONG lCarPassHandle, NET_CAR_PASS_INFO* pstuCarPassInfos, int nInfoNum , LDWORD dwUser); ///@brief ??? CLIENT_AttachCarPassInfo ????????? typedef struct tagNET_IN_ATTACH_CAR_PASS_INFO { DWORD dwSize; /// ????????,????? int nChannelID; /// ????? fNotifyCarPassInfo cbNotifyCarPassInfo; /// ???????,??????????,???????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_CAR_PASS_INFO; ///@brief ??? CLIENT_AttachCarPassInfo ????????? typedef struct tagNET_OUT_ATTACH_CAR_PASS_INFO { DWORD dwSize; ///????????,????? }NET_OUT_ATTACH_CAR_PASS_INFO; ///@brief ??? CLIENT_AttachParkingSpaceData ????????? typedef struct tagNET_OUT_ATTACH_PARKINGSPACE { DWORD dwSize; /// ???????? } NET_OUT_ATTACH_PARKINGSPACE; ///@brief ??? CLIENT_DetachParkingSpaceData ????????? typedef struct tagNET_IN_DETACH_PARKINGSPACE { DWORD dwSize; /// ???????? DWORD dwWaitTime; /// ??????????? LLONG lParkingHandle; /// CLIENT_AttachParkingSpaceData??????? } NET_IN_DETACH_PARKINGSPACE; ///@brief ??? CLIENT_DetachParkingSpaceData ????????? typedef struct tagNET_OUT_DETACH_PARKINGSPACE { DWORD dwSize; /// ???????? } NET_OUT_DETACH_PARKINGSPACE; ///@brief ???????????????CLIENT_GetParkingLockState ??? typedef struct tagNET_IN_GET_PARKINGLOCK_STATE_INFO { DWORD dwSize; /// ??????? } NET_IN_GET_PARKINGLOCK_STATE_INFO; ///@brief ???????? typedef enum tagEM_STATE_TYPE { EM_STATE_TYPE_UNKNOW, /// ??? EM_STATE_TYPE_LOCKRISE, /// ?????????? EM_STATE_TYPE_LOCKDOWN, /// ?????????? EM_STATE_TYPE_LOCKERROR, /// ???????? } EM_STATE_TYPE; ///@brief ???????????????? typedef struct tagNET_STATE_LIST_INFO { unsigned int nLane; /// ?????? EM_STATE_TYPE emState; /// ???????? int nVoltageState; /// ???????0:??????????????????, 1:?????????? BYTE byReserved[252]; /// ???? } NET_STATE_LIST_INFO; ///@brief ????????????? CLIENT_GetParkingLockState ???? typedef struct tagNET_OUT_GET_PARKINGLOCK_STATE_INFO { DWORD dwSize; /// ??????? int nStateListNum; /// ???????????? NET_STATE_LIST_INFO stuStateList[MAX_PARKINGLOCK_STATE_NUM]; /// ???????? } NET_OUT_GET_PARKINGLOCK_STATE_INFO; ///@brief ????????????????CLIENT_SetParkingLockState ??? typedef struct tagNET_IN_SET_PARKINGLOCK_STATE_INFO { DWORD dwSize; /// ??????? int nStateListNum; /// ???????????? NET_STATE_LIST_INFO stuStateList[MAX_PARKINGLOCK_STATE_NUM]; /// ???????? int nControlType; /// ???????????????, 0:???, 1:??????????, 2:????????? } NET_IN_SET_PARKINGLOCK_STATE_INFO; ///@brief ????????????????CLIENT_SetParkingLockState ???? typedef struct tagNET_OUT_SET_PARKINGLOCK_STATE_INFO { DWORD dwSize; /// ??????? } NET_OUT_SET_PARKINGLOCK_STATE_INFO; ///@brief ??????????????CLIENT_SetParkingRule ??? typedef struct tagNET_IN_SET_PARKINGRULE_INFO { DWORD dwSize; /// ??????? UINT nParkingTimeThreshold; /// ????????????????? } NET_IN_SET_PARKINGRULE_INFO; ///@brief ??????????????CLIENT_SetParkingRule ???? typedef struct tagNET_OUT_SET_PARKINGRULE_INFO { DWORD dwSize; /// ??????? } NET_OUT_SET_PARKINGRULE_INFO; ///@brief ?????? typedef enum tagEM_PARKINGSPACE_STATE { EM_PARKINGSPACE_STATE_UNKNOWN = -1, /// ??? EM_PARKINGSPACE_STATE_NOPARKING, /// ??????? EM_PARKINGSPACE_STATE_PARKING /// ???????? }EM_PARKINGSPACE_STATE; ///@brief ????????????? CLIENT_SetParkingSpaceState ??? typedef struct tagNET_IN_SET_PARKINGSPACE_STATE_INFO { DWORD dwSize; /// ??????? int nChannel; /// ????? char szPlateNumber[64]; /// ??????? char szParkingNo[32]; /// ?????? EM_PARKINGSPACE_STATE emState; /// ?????? BOOL bUnNeedPic; /// ????????, ???FALSE }NET_IN_SET_PARKINGSPACE_STATE_INFO; ///@brief ????????????? CLIENT_SetParkingSpaceState ???? typedef struct tagNET_OUT_SET_PARKINGSPACE_STATE_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_PARKINGSPACE_STATE_INFO; ///@brief ?????????????????? CLIENT_SetParkingRemainInfo ??? typedef struct tagNET_IN_SET_PARKING_REMAIN_INFO { DWORD dwSize; /// ??????? UINT nRemainSpace; /// ??????????? } NET_IN_SET_PARKING_REMAIN_INFO; ///@brief ?????????????????? CLIENT_SetParkingRemainInfo ???? typedef struct tagNET_OUT_SET_PARKING_REMAIN_INFO { DWORD dwSize; /// ??????? } NET_OUT_SET_PARKING_REMAIN_INFO; ///@brief ??????????? typedef struct tagNET_PARKINGRECORD_INFO { int nChannel; /// ????? char szPlateNumber[64]; /// ??????? char szParkingNo[32]; /// ?????? BYTE byReserverd[512]; /// ??????? }NET_PARKINGRECORD_INFO; ///@brief ???????????? CLIENT_ModifyParkingRecord ??? typedef struct tagNET_IN_MODIFY_PARKINGRECORD_INFO { DWORD dwSize; /// ??????? NET_PARKINGRECORD_INFO stuOld; /// ????? NET_PARKINGRECORD_INFO stuNew; /// ????? }NET_IN_MODIFY_PARKINGRECORD_INFO; ///@brief ???????????? CLIENT_ModifyParkingRecord ???? typedef struct tagNET_OUT_MODIFY_PARKINGRECORD_INFO { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_PARKINGRECORD_INFO; ///@brief ??????????? /// ????????????????, nError???????????????????,1-???????,2-?????????????????,3-????????????,4-????????????????? /// ??????????,ID?????????dwFileID,???????????,ID?????????dwConditionID /// pReserved ? NET_DOWNLOADFILE_RESERVED_INFO typedef void (CALLBACK *fMultiFileDownLoadPosCB)(LLONG lDownLoadHandle, DWORD dwID, DWORD dwFileTotalSize, DWORD dwDownLoadSize, int nError, LDWORD dwUser, void* pReserved); ///@brief ???????????????? typedef struct tagNET_DOWNLOADFILE_RESERVED_INFO { DWORD dwSize; BYTE* pPieceBuff; /// ????????????? UINT nPieceLen; /// ?????????????? }NET_DOWNLOADFILE_RESERVED_INFO; ///@brief ?????????? typedef enum tagEM_DOWNLOAD_FILE_TYPE { EM_DOWNLOAD_BY_FILENAME = 0 , ///??????????? EM_DOWNLOAD_BY_CONDITION , ///?????????? }EM_DOWNLOAD_FILE_TYPE; ///@brief ??????????? typedef enum tagEM_DOWNLOAD_TIME_TYPE { EM_DOWNLOAD_TIME_SNAP = 0 , ///?????? EM_DOWNLOAD_TIME_STORAGE , ///?????? }EM_DOWNLOAD_TIME_TYPE; ///@brief ???????????? typedef enum tagEM_DOWNLOAD_DATA_TYPE { EM_DOWNLOAD_DATA_RECORD = 0 , ///??? EM_DOWNLOAD_DATA_PICTURE , ///?? }EM_DOWNLOAD_DATA_TYPE; ///@brief CLIENT_DownLoadMultiFile ?????? typedef struct tagNET_DOWNLOADFILE_INFO { DWORD dwSize; DWORD dwFileID; /// ???ID, ???????????? int nFileSize; /// ?????????????? char szSourceFilePath[MAX_PATH]; /// ?????????????? char szSavedFileName[MAX_PATH]; /// ??????????? }NET_DOWNLOADFILE_INFO; ///@brief ???????? typedef struct tagNET_DOWNLOAD_CONDITION_INFO { DWORD dwSize; DWORD dwConditionID; /// ????ID, ???????????? int nChannel; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? EM_DOWNLOAD_TIME_TYPE emTimeType; /// ??????? EM_DOWNLOAD_DATA_TYPE emDataType; /// ???????? char szSavedFileName[MAX_PATH]; /// ??????????? }NET_DOWNLOAD_CONDITION_INFO; ///@brief ????????????? typedef struct tagNET_DOWNLOADFILE_OPTIONS_INFO { int nChannel; /// ????? BYTE byReserved[508]; /// ?????? }NET_DOWNLOADFILE_OPTIONS_INFO; ///@brief CLIENT_DownLoadMultiFile??????? typedef struct tagNET_IN_DOWNLOAD_MULTI_FILE { DWORD dwSize; /*???????????*/ int nFileCount; /// ???????????,emDownloadType?EM_DOWNLOAD_BY_FILENAME???? NET_DOWNLOADFILE_INFO* pFileInfos; /// ????????????,emDownloadType?EM_DOWNLOAD_BY_FILENAME???? /// ??????????????????sizeof(NET_DOWNLOADFILE_INFO)*nFileCount fMultiFileDownLoadPosCB cbPosCallBack; /// ?????????? LDWORD dwUserData; /// ??????? EM_DOWNLOAD_FILE_TYPE emDownloadType; /// ?????? /*?????????????*/ int nConditionCount; /// ??????????,emDownloadType?EM_DOWNLOAD_BY_CONDITION???? NET_DOWNLOAD_CONDITION_INFO* pConditionInfos; /// ????????,emDownloadType?EM_DOWNLOAD_BY_CONDITION???? /// ??????????????????sizeof(NET_DOWNLOAD_CONDITION_INFO)*nConditionCount EM_SUBCLASSID_TYPE emSubClass; /// ????????? NET_DOWNLOADFILE_OPTIONS_INFO *pFileOptions; /// ????????????, ???????;emDownloadType?EM_DOWNLOAD_BY_FILENAME???? }NET_IN_DOWNLOAD_MULTI_FILE; ///@brief CLIENT_DownLoadMultiFile??????? typedef struct tagNET_OUT_DOWNLOAD_MULTI_FILE { DWORD dwSize; LLONG lDownLoadHandle; /// ?????? }NET_OUT_DOWNLOAD_MULTI_FILE; ///@brief ?????? typedef struct __NET_VIDEOANALYSE_STATE { DWORD dwSize; DWORD dwProgress; /// ????????,0-100 char szState[DH_COMMON_STRING_64]; /// ?????,Running"??????,"Stop"????,"NoStart"????????,"Failed"?????,"Successed"????? char szFailedCode[DH_COMMON_STRING_64]; /// ?????? }NET_VIDEOANALYSE_STATE; ///@brief ?????????????????????? typedef int (CALLBACK *fVideoAnalyseState)(LLONG lAttachHandle, NET_VIDEOANALYSE_STATE* pAnalyseStateInfos, LDWORD dwUser, void* pReserved); ///@brief CLIENT_AttachVideoAnalyseState?????????? typedef struct __NET_IN_ATTACH_VIDEOANALYSE_STATE { DWORD dwSize; int nChannleId; /// ????? fVideoAnalyseState cbVideoAnalyseState; /// ???????????????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_VIDEOANALYSE_STATE; ///@brief CLIENT_AttachVideoAnalyseState?????????? typedef struct __NET_OUT_ATTACH_VIDEOANALYSE_STATE { DWORD dwSize; LLONG lAttachHandle; /// ??????????,???????????????????? }NET_OUT_ATTACH_VIDEOANALYSE_STATE; ///@brief ??????? typedef enum tagEM_TRACK_OBJECT_TYPE { EM_TRACK_OBJECT_TYPE_UNKNOWN = -1, /// ??? EM_TRACK_OBJECT_TYPE_FACE, /// ??? EM_TRACK_OBJECT_TYPE_HUMAN, /// ???? EM_TRACK_OBJECT_TYPE_VECHILE, /// ?????? EM_TRACK_OBJECT_TYPE_NOMOTOR, /// ??????? } EM_TRACK_OBJECT_TYPE; ///@brief ????????? typedef struct tagNET_VIDEO_TRACK_OBJECT_INFO { char szObjectUUID[128]; /// ???uuid EM_TRACK_OBJECT_TYPE emObjectType[32]; /// ??????? int nObjectTypeNum; /// ??????????? NET_RECT stuBoundingBox; /// ?????? }NET_VIDEO_TRACK_OBJECT_INFO; ///@brief ???????????? typedef struct tagNET_VIDEO_TRACK_OBJECT_INFO_EX { int nAngle[3]; /// ?????????, ????????????????Pitch?????,??????;yaw????????,?????;Roll????????????????,??????,????????-90~90 char szReserved[1012]; /// ??????? }NET_VIDEO_TRACK_OBJECT_INFO_EX; ///@brief ????????? typedef struct tagNET_VIDEO_ANALYSE_TRACK_PROC { DWORD dwSize; /// ??????? int nChannelId; /// ????? NET_VIDEO_TRACK_OBJECT_INFO stuTrackObject[128]; /// ????????? int nTrackObjectNum; /// ????????? NET_VIDEO_TRACK_OBJECT_INFO_EX *pstuTrackObjectEx; /// ??????????????????sizeof(NET_VIDEO_TRACK_OBJECT_INFO_EX)*nTrackObjectNum char szReserved[256-POINTERSIZE]; /// ??????? }NET_VIDEO_ANALYSE_TRACK_PROC; ///@brief ???????????? typedef void (CALLBACK *fVideoAnalyseTrackProc)(LLONG lAttachHandle, NET_VIDEO_ANALYSE_TRACK_PROC* pstuVideoAnalyseTrackProc, LDWORD dwUser); ///@brief CLIENT_AttachVideoAnalyseTrackProc ??????? typedef struct tagNET_IN_ATTACH_VIDEO_ANALYSE_TRACK_PROC { DWORD dwSize; /// ????????,????? int nChannelId; /// ????? fVideoAnalyseTrackProc cbVideoAnalyseTrackProc; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_VIDEO_ANALYSE_TRACK_PROC; ///@brief CLIENT_AttachVideoAnalyseTrackProc ??????? typedef struct tagNET_OUT_ATTACH_VIDEO_ANALYSE_TRACK_PROC { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_VIDEO_ANALYSE_TRACK_PROC; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out]pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachVideoAnalyseTrackProc(LLONG lLoginID, NET_IN_ATTACH_VIDEO_ANALYSE_TRACK_PROC* pstInParam, NET_OUT_ATTACH_VIDEO_ANALYSE_TRACK_PROC* pstOutParam , int nWaitTime); ///@brief ??????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachVideoAnalyseTrackProc(LLONG lAttachHandle); ///@brief CLIENT_GetWaterLevelInfobyEvent ??????? typedef struct tagNET_IN_GET_WATER_LEVELINFO_BY_EVENT { DWORD dwSize; /// ????????,????? UINT nChannel; /// ????? int nPresetId; /// ?????????????????1??? }NET_IN_GET_WATER_LEVELINFO_BY_EVENT; ///@brief CLIENT_GetWaterLevelInfobyEvent ??????? typedef struct tagNET_OUT_GET_WATER_LEVELINFO_BY_EVENT { DWORD dwSize; /// ????????,????? }NET_OUT_GET_WATER_LEVELINFO_BY_EVENT; ///@brief ????????????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetWaterLevelInfobyEvent(LLONG lLoginID, NET_IN_GET_WATER_LEVELINFO_BY_EVENT* pstInParam, NET_OUT_GET_WATER_LEVELINFO_BY_EVENT* pstOutParam , int nWaitTime); ///@brief ????????? typedef enum tagEM_TALK_STATE { EM_TALK_STATE_UNKNOWN, /// ??? EM_TALK_STATE_INVITING, /// ???? EM_TALK_STATE_RINGING, /// ???? EM_TALK_STATE_ANSWER, /// ??? EM_TALK_STATE_REFUSE, /// ??? EM_TALK_STATE_HANGUP, /// ??? EM_TALK_STATE_BUSYING, /// ?? EM_TALK_STATE_CANCEL, /// ??????? } EM_TALK_STATE; #define NET_CALL_NUM_MAX 128 /// ?????????????? ///@brief CLIENT_AttachTalkState ????????????????????? typedef struct tagNET_TALK_STATE { DWORD dwSize; char szCallID[DH_COMMON_STRING_64]; /// ???????????? int nAudioPort; /// ?????? int nVideoPort; /// ?????? char szMediaAddr[DH_MAX_IPADDR_LEN]; /// ?????? EM_TALK_STATE emState; /// ?? int nNumberCount; /// ?????????? char szNumbers[NET_CALL_NUM_MAX][DH_COMMON_STRING_32]; /// ???????????? } NET_TALK_STATE; ///@brief ??? CLIENT_AttachTalkState ???????? typedef void (CALLBACK *fNotifyTalkState)(LLONG lAttachHandle, NET_TALK_STATE* pstuState, int nLen, LDWORD dwUser); ///@brief ??? CLIENT_AttachTalkState ????????? typedef struct tagNET_IN_ATTACH_TALK_STATE { DWORD dwSize; /// ????????,????? int nChnId; /// ?????,???????????? fNotifyTalkState cbCallBack; /// ???????,????????,???????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_TALK_STATE; ///@brief ??? CLIENT_AttachTalkState ????????? typedef struct tagNET_OUT_ATTACH_TALK_STATE { DWORD dwSize; /// ????????,????? char szCallID[DH_COMMON_STRING_64]; /// ???????????? }NET_OUT_ATTACH_TALK_STATE; ///@brief MACRO_GROUP_DIAGNOSIS_21_BEGIN ////////////////////////////// IVS ??????????????? ///////////////////////////////// /// ?????????????????????? #define NET_DIAGNOSIS_DITHER "VideoDitherDetection" /// ?????????? ???????(NET_VIDEO_DITHER_DETECTIONRESULT) #define NET_DIAGNOSIS_STRIATION "VideoStriationDetection" /// ????????? ???????(NET_VIDEO_STRIATION_DETECTIONRESULT) #define NET_DIAGNOSIS_LOSS "VideoLossDetection" /// ????????? ???????(NET_VIDEO_LOSS_DETECTIONRESULT) #define NET_DIAGNOSIS_COVER "VideoCoverDetection" /// ????????? ???????(NET_VIDEO_COVER_DETECTIONRESULT) #define NET_DIAGNOSIS_FROZEN "VideoFrozenDetection" /// ????????? ???????(NET_VIDEO_FROZEN_DETECTIONRESULT) #define NET_DIAGNOSIS_BRIGHTNESS "VideoBrightnessDetection" /// ???????????? ???????(NET_VIDEO_BRIGHTNESS_DETECTIONRESULT) #define NET_DIAGNOSIS_CONTRAST "VideoContrastDetection" /// ???????????? ???????(NET_VIDEO_CONTRAST_DETECTIONRESULT) #define NET_DIAGNOSIS_UNBALANCE "VideoUnbalanceDetection" /// ???????? ???????(NET_VIDEO_UNBALANCE_DETECTIONRESULT) #define NET_DIAGNOSIS_NOISE "VideoNoiseDetection" /// ?????????? ???????(NET_VIDEO_NOISE_DETECTIONRESULT) #define NET_DIAGNOSIS_BLUR "VideoBlurDetection" /// ????????? ???????(NET_VIDEO_BLUR_DETECTIONRESULT) #define NET_DIAGNOSIS_SCENECHANGE "VideoSceneChangeDetection" /// ????????????? ???????(NET_VIDEO_SCENECHANGE_DETECTIONRESULT) #define NET_DIAGNOSIS_VIDEO_DELAY "VideoDelay" /// ????????? ???????(NET_VIDEO_DELAY_DETECTIONRESUL) #define NET_DIAGNOSIS_PTZ_MOVING "PTZMoving" /// ????????? ???????(NET_PTZ_MOVING_DETECTIONRESULT) #define NET_DIAGNOSIS_BLACK_WHITE "VideoBlackAndWhite" /// ????????, ???????(NET_BLACK_WHITE_DETECTIONRESULT) #define NET_DIAGNOSIS_DRAMATIC_CHANGE "VideoDramaticChange" /// ?????????, ???????(NET_DIAGNOSIS_DRAMATIC_DETECTIONRESULT) #define NET_DIAGNOSIS_VIDEO_AVAILABILITY "VideoAvailability" /// ??????????, ???????(NET_VIDEO_AVAILABILITY_DETECTIONRESULT) #define NET_DIAGNOSIS_SNOWFLAKE "SnowflakeDetection" /// ????????, ???????(NET_VIDEO_SNOWFLAKE_DETECTIONRESULT) #define NET_DIAGNOSIS_VIDEO_ALGORITHMTYPE "VideoAlgorithmType" /// ???????????,???????(NET_VIDEO_ALGORITHMTYPE_DETECTIONRESULT) #define NET_DIAGNOSIS_VIDEO_FILCKERING_DETECTION "VideoFilckeringDetection" /// ?????????, ???????(NET_VIDEO_FILCKERING_DETECTION_RESULT) #define NET_DIAGNOSIS_VIDEO_LOSS_FRAME_DETECTION "VideoLossFrameDetection" /// ?????????, ???????(NET_VIDEO_LOSS_FRAME_DETECTION_RESULT) ///@brief MACRO_GROUP_DIAGNOSIS_21_END ///@brief ??????? typedef enum tagNET_STATE_TYPE { NET_EM_STATE_ERR, /// ???? NET_EM_STATE_NORMAL, /// "Normal" ???? NET_EM_STATE_WARNING, /// "Warning" ???? NET_EM_STATE_ABNORMAL, /// "Abnormal" ?? }NET_STATE_TYPE; ///@brief ???????????? typedef enum tagNET_VIDEODIAGNOSIS_RESULT_TYPE { NET_EM_ROTATION, /// "Rotation" -????????????? NET_EM_REAL, /// "Real" -???????????? NET_EM_NR_UNKNOW, /// ?????? }NET_VIDEODIAGNOSIS_RESULT_TYPE; ///@brief ???????????? typedef enum tagNET_VIDEODIAGNOSIS_FAIL_TYPE { NET_EM_NO_ERROR, /// ????? NET_EM_DISCONNECT, /// "Disconnect" - ?????????? NET_EM_CH_NOT_EXIST, /// "ChannelNotExist" - ????????? NET_EM_LOGIN_OVER_TIME, /// "LoginOverTime" - ?????? NET_EM_NO_VIDEO, /// "NoVideo" - ??????????? NET_EM_NO_RIGHT, /// "NoRight" - ???????? NET_EM_PLATFROM_LOGIN_FAILED, /// "PlatformLoginFailed" - ????????? NET_EM_PLATFROM_DISCONNECT, /// "PlatformDisconnect" - ????????? NET_EM_GET_STREAM_OVER_TIME, /// "GetStreamOverTime" - ?????????? NET_EM_GET_NO_ENOUGH_STREAM, /// "NoEnoughStream" - ???????? NET_EM_DECODE_STREAM_FAILED, /// "DecodeStreamFailed" - ??????? NET_EM_GET_OFF_LINE, /// "OffLine" - ?????????? NET_EM_NF_UNKNOW, /// ???????,???????????????????? NET_EM_NOT_SD, /// "NotSD" - ????????????????????? NET_EM_RTSP_PROCESS_FAILED, /// "RtspProcesssFailed" - RTSP??????? NET_EM_PLAY_FAILED, /// "PlayFailed" - ??????? NET_EM_SNAP_FAILED, /// "SnapFailed" - ????? NET_EM_FULL_CHANNEL_LINKS, /// "FullChannelLinks" - ??????????????????????????????????????????? NET_EM_LICENSE_ERROR, /// "LicenseError" - ?????? NET_EM_AUTHORIZATION_ERROR, /// "AuthorizationError" - ???????, ??????????????? }NET_VIDEODIAGNOSIS_FAIL_TYPE; ///@brief ????????????\0?????? typedef struct tagNET_ARRAY { DWORD dwSize; /// ???????? char* pArray; /// ?????? ??????260???,????????????? ???????????'\0'???? DWORD dwArrayLen; /// ???????? }NET_ARRAY; #define MAX_BACKPIC_COUNT 8 /// ?????????? ///@brief ?????????????????? typedef struct tagNET_VIDEODIAGNOSIS_COMMON_INFO { DWORD dwSize; /// ???????? int nDiagnosisID; /// ?????? NET_ARRAY stProject; /// ??????? NET_ARRAY stTask; /// ???????? NET_ARRAY stProfile; /// ?????????? NET_ARRAY stDeviceID; /// ????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? int nVideoChannelID; /// ???????? ??????????DVR,IPC????? NET_STREAM_TYPE emVideoStream; /// ??????? NET_VIDEODIAGNOSIS_RESULT_TYPE emResultType; /// ????????? BOOL bCollectivityState; /// ????? NET_VIDEODIAGNOSIS_FAIL_TYPE emFailedCause; /// ?????? char szFailedCode[DH_COMMON_STRING_64]; /// ?????????? char szResultAddress[DH_COMMON_STRING_128]; /// ??????????,???????szResultAddressEx??? int nFrameRate; /// ???? ???? kb/s, ????????? int nFrameWidth; /// ?? ????????? int nFrameHeight; /// ?? ????????? int nBackPic; /// ?????????? char szBackPicAddress[MAX_BACKPIC_COUNT][DH_COMMON_STRING_128]; /// ?????????? char szResultAddressEx[DH_COMMON_STRING_256]; /// ????????????? NET_TIME stStreamStartTime; /// ???????? NET_TIME stStreamEndTime; /// ????????? }NET_VIDEODIAGNOSIS_COMMON_INFO; ///@brief ??????????(NET_DIAGNOSIS_DITHER) ???????????? -- ?????? ???,????,????????????? typedef struct tagNET_VIDEO_DITHER_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? ?????????????,????????,????????? int nDuration; /// ????????? ?????????????? ??????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_DITHER_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_STRIATION)??????????? -- ??????????????????? typedef struct tagNET_VIDEO_STRIATION_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_STRIATION_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_LOSS)??????????? -- ??? ????????? typedef struct tagNET_VIDEO_LOSS_DETECTIONRESULT { DWORD dwSize; /// ???????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_LOSS_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_COVER)??????????? -- ?????????? typedef struct tagNET_VIDEO_COVER_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_COVER_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_FROZEN)??????????? -- ??????????????? typedef struct tagNET_VIDEO_FROZEN_DETECTIONRESULT { DWORD dwSize; /// ???????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_FROZEN_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_BRIGHTNESS)?????????????? --????????????????????????????? typedef struct tagNET_VIDEO_BRIGHTNESS_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_BRIGHTNESS_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_CONTRAST)?????????????? typedef struct tagNET_VIDEO_CONTRAST_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_CONTRAST_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_UNBALANCE)???????????? typedef struct tagNET_VIDEO_UNBALANCE_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_UNBALANCE_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_NOISE)?????????????? typedef struct tagNET_VIDEO_NOISE_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_NOISE_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_BLUR)????????????? typedef struct tagNET_VIDEO_BLUR_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_BLUR_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_SCENECHANGE)??????????????? typedef struct tagNET_VIDEO_SCENECHANGE_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? }NET_VIDEO_SCENECHANGE_DETECTIONRESULT; ///@brief ??????????????? typedef enum tagEM_PTZ_MOVING_RESULT_TYPE { EM_PTZ_MOVING_UNKNOWN , /// ??? EM_PTZ_MOVING_NORMAL , /// ??????? EM_PTZ_MOVING_NOTOBEY , /// ?????????? EM_PTZ_MOVING_NOTMOVE , /// ??????? EM_PTZ_MOVING_NOTDETECT , /// ??????? }EM_PTZ_MOVING_RESULT_TYPE; ///@brief ??????????(NET_DIAGNOSIS_PTZ_MOVING)??????????? typedef struct tagNET_PTZ_MOVING_DETECTIONRESULT { DWORD dwSize; /// ???????? EM_PTZ_MOVING_RESULT_TYPE emPTZMovingUp; /// ???????????? EM_PTZ_MOVING_RESULT_TYPE emPTZMovingDown; /// ???????????? EM_PTZ_MOVING_RESULT_TYPE emPTZMovingLeft; /// ???????????? EM_PTZ_MOVING_RESULT_TYPE emPTZMovingRight; /// ???????????? EM_PTZ_MOVING_RESULT_TYPE emPTZMovingZoomWide; /// ??(??)???????? EM_PTZ_MOVING_RESULT_TYPE emPTZMovingZoomTele; /// ??(??)???????? }NET_PTZ_MOVING_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_BLACK_WHITE) ?????????? typedef struct tagNET_BLACK_WHITE_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? } NET_BLACK_WHITE_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_DRAMATIC_CHANGE) ??????????? typedef struct tagNET_DIAGNOSIS_DRAMATIC_DETECTIONRESULT { DWORD dwSize; /// ???????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ????????? char szPicUrl[256]; /// ???????????? } NET_DIAGNOSIS_DRAMATIC_DETECTIONRESULT; ///@brief ??????????(NET_DIAGNOSIS_VIDEO_DELAY)??????????? typedef struct tagNET_VIDEO_DELAY_DETECTIONRESUL { DWORD dwSize; /// ???????? int nSignalDelay; /// ???????,-1?????????, ????ms int nStreamDelay; /// ????????,-1?????????, ????ms int nIFrameDelay; /// I????,-1????????? ????ms }NET_VIDEO_DELAY_DETECTIONRESUL; ///@brief ???????????? typedef struct tagNET_DIAGNOSIS_RESULT_HEADER { DWORD dwSize; /// ???????? char szDiagnosisType[MAX_PATH]; /// ???????,???dhnetsdk.h??"??????????????????????" ??NET_DIAGNOSIS_DITHER int nDiagnosisTypeLen; /// ??????????????? }NET_DIAGNOSIS_RESULT_HEADER; ///@brief cbVideoDiagnosis ??????????? typedef struct tagNET_REAL_DIAGNOSIS_RESULT { DWORD dwSize; /// ???????? NET_VIDEODIAGNOSIS_COMMON_INFO* pstDiagnosisCommonInfo; ///???????????? int nTypeCount; /// ??????????????????? void* pDiagnosisResult; /// ????????????,?????NET_DIAGNOSIS_RESULT_HEADER+???????1+NET_DIAGNOSIS_RESULT_HEADER+???????2+... DWORD dwBufSize; /// ?????? }NET_REAL_DIAGNOSIS_RESULT; ///@brief ?????????????????? typedef int (CALLBACK *fRealVideoDiagnosis)(LLONG lDiagnosisHandle, NET_REAL_DIAGNOSIS_RESULT* pDiagnosisInfo, void* pBuf, int nBufLen, LDWORD dwUser); ///@brief ??? CLIENT_StartVideoDiagnosis ????????? typedef struct tagNET_IN_VIDEODIAGNOSIS { DWORD dwSize; /// ???????? int nDiagnosisID; /// ??????ID,??0??? DWORD dwWaitTime; /// ??????????? fRealVideoDiagnosis cbVideoDiagnosis; /// ??????????????? LDWORD dwUser; /// ??????????? }NET_IN_VIDEODIAGNOSIS; ///@brief ??? CLIENT_StartVideoDiagnosis ????????? typedef struct tagNET_OUT_ATTACH_REALDIAGNOSIS { DWORD dwSize; /// ???????? LLONG lDiagnosisHandle; /// ?????? }NET_OUT_VIDEODIAGNOSIS; ///@brief ??????? typedef enum tagEM_COLLECTIVITY_STATE { EM_COLLECTIVITY_STATE_SUCCESSED, /// ??? EM_COLLECTIVITY_STATE_FAILED, /// ??? } EM_COLLECTIVITY_STATE; ///@brief ??? CLIENT_StartFindDiagnosisResult ????????? typedef struct tagNET_IN_FIND_DIAGNOSIS { DWORD dwSize; /// ???????? int nDiagnosisID; /// ??????ID,??0??? DWORD dwWaitTime; /// ??????????? NET_ARRAY stuDeviceID; /// ?????????,pArray:NULL???????????ID??? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nVideoChannel; /// ????????,-1:????????? int nTypeCount; /// ??????????,0:?????????????? NET_ARRAY* pstDiagnosisTypes; /// ???????????,?????????????????? /// ??????????????????sizeof(NET_ARRAY)*nTypeCount char szProjectName[MAX_PATH]; /// ??????? int nCollectivityStateNum; /// ???????????????????, ?0????????????????????????? EM_COLLECTIVITY_STATE emCollectivityState[2]; /// ???????????????????, ???????????????????? } NET_IN_FIND_DIAGNOSIS; ///@brief ??? CLIENT_StartFindDiagnosisResult ????????? typedef struct tagNET_OUT_FIND_DIAGNOSIS { DWORD dwSize; /// ???????? LLONG lFindHandle; /// ?????? DWORD dwTotalCount; /// ??????????????? }NET_OUT_FIND_DIAGNOSIS; ///@brief ??? CLIENT_DoFindDiagnosisResult ????????? typedef struct tagNET_IN_DIAGNOSIS_INFO { DWORD dwSize; /// ???????? int nDiagnosisID; /// ??????ID,??0??? DWORD dwWaitTime; /// ??????????? int nFindCount; /// ???????????????????? int nBeginNumber; /// ????????? 0<=beginNumber<= totalCount-1 }NET_IN_DIAGNOSIS_INFO; ///@brief CLIENT_StartRealTimeProject ?????????? typedef struct tagNET_IN_START_RT_PROJECT_INFO { DWORD dwSize; /// ???????? char* pszProjectInfo; /// ????????,???????dhconfigsdk.dll?????CLIENT_PacketData?????? /// ???????????? CFG_CMD_VIDEODIAGNOSIS_REALPROJECT }NET_IN_START_RT_PROJECT_INFO; ///@brief CLIENT_StartRealTimeProject ?????????? typedef struct tagNET_OUT_START_RT_PROJECT_INFO { DWORD dwSize; /// ???????? }NET_OUT_START_RT_PROJECT_INFO; ///@brief CLIENT_UpdateProjectBackGround ?????????? typedef struct tagNET_IN_UPDATE_PROJECT_BCKGROUND_INFO { DWORD dwSize; /// ???????? char szProjectName[MAX_PATH]; /// ?????????""?????????????????????? char szTaskName[MAX_PATH]; /// ??????????""??????????????????? char szDeviceID[MAX_PATH]; /// ?????????????""??????????????????? int nChannelID; /// ???????????-1(???Device????????)??????????????????????? } NET_IN_UPDATE_PROJECT_BACKGROUND_INFO; ///@brief CLIENT_UpdateProjectBackGround ?????????? typedef struct tagNET_OUT_UPDATE_PROJECT_BACKGROUND_INFO { DWORD dwSize; /// ???????? } NET_OUT_UPDATE_PROJECT_BACKGROUND_INFO; ///@brief CLIENT_StopRealTimeProject ?????????? typedef struct tagNET_IN_STOP_RT_PROJECT_INFO { DWORD dwSize; /// ???????? char* pszProjectNames; /// ???????,??&&???????????,?????Project1&&Project2 }NET_IN_STOP_RT_PROJECT_INFO; ///@brief CLIENT_StopRealTimeProject ?????????? typedef struct tagNET_OUT_STOP_RT_PROJECT_INFO { DWORD dwSize; /// ???????? }NET_OUT_STOP_RT_PROJECT_INFO; #define MAX_VIDEODIAGNOSIS_PROJECT_NAME_LEN 260 /// ???????????????? #define MAX_VIDEODIAGNOSIS_TASK_NAME_LEN 260 /// ?????????????????? ///@brief CLIENT_StartManualDiagnosisProject ?????????? typedef struct tagNET_IN_START_MANUAL_PROJECT_INFO { DWORD dwSize; /// ???????? char szProjectName[MAX_VIDEODIAGNOSIS_PROJECT_NAME_LEN]; /// ????????? NET_TIME stuStartTime; /// ???????????? BOOL bIsCycle; /// ?????????? char szTaskName[MAX_VIDEODIAGNOSIS_TASK_NAME_LEN]; /// ??????????????? } NET_IN_START_MANUAL_PROJECT_INFO; ///@brief CLIENT_StartManualDiagnosisProject ?????????? typedef struct tagNET_OUT_START_MANUAL_PROJECT_INFO { DWORD dwSize; /// ???????? } NET_OUT_START_MANUAL_PROJECT_INFO; ///@brief CLIENT_StopManualDiagnosisProject ?????????? typedef struct tagNET_IN_STOP_MANUAL_PROJECT_INFO { DWORD dwSize; /// ???????? char szProjectName[MAX_VIDEODIAGNOSIS_PROJECT_NAME_LEN]; /// ????????? } NET_IN_STOP_MANUAL_PROJECT_INFO; ///@brief CLIENT_StopManualDiagnosisProject ?????????? typedef struct tagNET_OUT_STOP_MANUAL_PROJECT_INFO { DWORD dwSize; /// ???????? } NET_OUT_STOP_MANUAL_PROJECT_INFO; ///@brief ????????? typedef struct tagNET_CARPORTLIGHT_INFO { DWORD dwSize; NET_CARPORTLIGHT_TYPE emType; /// ?????????? NET_CARPORTLIGHT_MODE emMode; /// ???????????? }NET_CARPORTLIGHT_INFO; ///@brief ???????? typedef struct tagNET_CARPORTLIGHT_STATUS { DWORD dwSize; /// ???????? int nLightNum; /// ???????? NET_CARPORTLIGHT_INFO stuLights[DH_MAX_CARPORTLIGHT_NUM]; /// ?????????,??????emType???????,????????????? int nFiringTime; /// ?????????,?????? int nHoldTime; /// ?????????,??????,-1??????????,0??????????? }NET_CARPORTLIGHT_STATUS; ///@brief ???CLIENT_GetCarPortLightStatus????????? typedef struct tagNET_IN_GET_CARPORTLIGHT_STATUS { DWORD dwSize; /// ???????? int nChannelId; /// ????? }NET_IN_GET_CARPORTLIGHT_STATUS; ///@brief ???CLIENT_GetCarPortLightStatus????????? typedef struct tagNET_OUT_GET_CARPORTLIGHT_STATUS { DWORD dwSize; /// ???????? NET_CARPORTLIGHT_STATUS stuLightStatus; /// ???????? }NET_OUT_GET_CARPORTLIGHT_STATUS; ///@brief ??? CLIENT_SetCarPortLightStatus ????????? typedef struct tagNET_IN_SET_CARPORTLIGHT_STATUS { DWORD dwSize; /// ???????? int nChannelId; NET_CARPORTLIGHT_STATUS stuLightStatus; /// ???????? }NET_IN_SET_CARPORTLIGHT_STATUS; ///@brief ??? CLIENT_SetCarPortLightStatus ????????? typedef struct tagNET_OUT_SET_CARPORTLIGHT_STATUS { DWORD dwSize; /// ???????? }NET_OUT_SET_CARPORTLIGHT_STATUS; ///@brief ???????????? typedef struct tagNET_VIDEO_AVAILABILITY_DETECTIONRESULT { DWORD dwSize; /// ??????? int nSignalDelay; /// ???????,-1?????????, ????ms int nStreamDelay; /// ????????,-1?????????, ????ms int nIFrameDelay; /// I????,-1????????? ????ms }NET_VIDEO_AVAILABILITY_DETECTIONRESULT; ///@brief ???????? typedef struct tagNET_VIDEO_SNOWFLAKE_DETECTIONRESULT { DWORD dwSize; /// ??????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ?????????????:?? char szPicUrl[256]; /// ???????????? } NET_VIDEO_SNOWFLAKE_DETECTIONRESULT; ///@brief ??????????? typedef struct tagNET_VIDEO_ALGORITHMTYPE_DETECTIONRESULT { DWORD dwSize; /// ??????? BOOL bFaceAlgorithm; /// ???????????????? int nFaceAlgorithmValue; /// ???????? BOOL bHumanBodyAlgorithm; /// ????????????????? int nHumanBodyAlgorithmValue; /// ????????? BOOL bVehicleAlgorithm; /// ??????????????? int nVehicleAlgorithmValue; /// ????????? BOOL bPlateNumAlgorithm; /// ??????????????? int nPlateNumAlgorithmValue; /// ????????? } NET_VIDEO_ALGORITHMTYPE_DETECTIONRESULT; ///@brief ????????? typedef struct tagNET_VIDEO_FILCKERING_DETECTION_RESULT { DWORD dwSize; /// ??????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ?????????????:?? char szPicUrl[256]; /// ???????????? } NET_VIDEO_FILCKERING_DETECTION_RESULT; ///@brief ????????? typedef struct tagNET_VIDEO_LOSS_FRAME_DETECTION_RESULT { DWORD dwSize; /// ??????? int nValue; /// ?????????? NET_STATE_TYPE emState; /// ??????? int nDuration; /// ?????????????:?? char szPicUrl[256]; /// ???????????? } NET_VIDEO_LOSS_FRAME_DETECTION_RESULT; ///@brief ??????? typedef struct tagNET_DEV_VIDEODIAGNOSIS_MULTI_INFO { DWORD dwSize; /// ???????? NET_VIDEODIAGNOSIS_COMMON_INFO* pstDiagnosisCommonInfo;///???????????? ?????????????????????? BOOL abDither; /// ????????????????????????????? NET_VIDEO_DITHER_DETECTIONRESULT* pstDither; /// ?????????? BOOL abStration; NET_VIDEO_STRIATION_DETECTIONRESULT* pstStration; /// ????????? BOOL abLoss; NET_VIDEO_LOSS_DETECTIONRESULT* pstLoss; /// ????????? BOOL abCover; NET_VIDEO_COVER_DETECTIONRESULT* pstCover; /// ????????? BOOL abFrozen; NET_VIDEO_FROZEN_DETECTIONRESULT* pstFrozen; /// ????????? BOOL abBrightness; NET_VIDEO_BRIGHTNESS_DETECTIONRESULT* pstBrightness; /// ???????????? BOOL abContrast; NET_VIDEO_CONTRAST_DETECTIONRESULT* pstContrast; /// ???????????? BOOL abUnbalance; NET_VIDEO_UNBALANCE_DETECTIONRESULT* pstUnbalance; /// ???????? BOOL abNoise; NET_VIDEO_NOISE_DETECTIONRESULT* pstNoise; /// ?????????? BOOL abBlur; NET_VIDEO_BLUR_DETECTIONRESULT* pstBlur; /// ????????? BOOL abSceneChange; NET_VIDEO_SCENECHANGE_DETECTIONRESULT* pstSceneChange; /// ????????????? BOOL abVideoDelay; NET_VIDEO_DELAY_DETECTIONRESUL* pstVideoDelay; /// ???????? BOOL abPTZMoving; NET_PTZ_MOVING_DETECTIONRESULT* pstPTZMoving; /// ?????????? BOOL abBlackAndWhite; NET_BLACK_WHITE_DETECTIONRESULT* pstBlackAndWhite; /// ???????? BOOL abDramaticChange; NET_DIAGNOSIS_DRAMATIC_DETECTIONRESULT* pstDramaticChange; /// ????????? BOOL abVideoAvailability; /// ???????????????? NET_VIDEO_AVAILABILITY_DETECTIONRESULT* pstVideoAvailability; /// ???????????? BOOL abSnowflake; /// ?????????????? NET_VIDEO_SNOWFLAKE_DETECTIONRESULT* pstSnowflake; /// ???????? BOOL abAlgorithmType; ///??????????????????? NET_VIDEO_ALGORITHMTYPE_DETECTIONRESULT* pstAlgorithmType; ///????????????? BOOL abVideoFilckering; ///??????????????? NET_VIDEO_FILCKERING_DETECTION_RESULT* pstVideoFilckering; ///????????? BOOL abVideoLossFrame; ///??????????????? NET_VIDEO_LOSS_FRAME_DETECTION_RESULT* pstVideoLossFrame; ///????????? }NET_VIDEODIAGNOSIS_RESULT_INFO; ///@brief ??? CLIENT_DoFindDiagnosisResult ????????? typedef struct tagNET_OUT_DIAGNOSIS_INFO { DWORD dwSize; /// ???????? int nInputNum; /// ????????NET_DEV_RESULT_VIDEODIAGNOSIS_INFO???? int nReturnNum; /// ?????????? NET_VIDEODIAGNOSIS_RESULT_INFO* pstDiagnosisResult; /// ??????? ??????????????????? /// ???????????sizeof(NET_VIDEODIAGNOSIS_RESULT_INFO)*nInputNum }NET_OUT_DIAGNOSIS_INFO; ///@brief MACRO_GROUP_MASTERSLAVE_CMD_22_BEGIN ////////////////////////////// ??????????????? ////////////////////////////////////////////////////// ////////////////////////////// CLIENT_OperateMasterSlaveDevice?????????? ///////////////////////////////// #define MASTERSLAVE_CMD_START "masterSlaveTracker.start" /// ??????????????????? #define MASTERSLAVE_CMD_STOP "masterSlaveTracker.stop" /// ????????????????? #define MASTERSLAVE_CMD_MANUALTRACK "masterSlaveTracker.manualSelectObjectTrack" /// ???????????? #define MASTERSLAVE_CMD_POINTTRACK "masterSlaveTracker.selectPointTrack" /// ??????? #define MASTERSLAVE_CMD_GETCALIBPOINTS "masterSlaveTracker.getCalibratePoints" /// ??????????? #define MASTERSLAVE_CMD_CALIBRATE "masterSlaveTracker.calibrate" /// ??????? #define MASTERSLAVE_CMD_ADDCALIBPOINT "masterSlaveTracker.addCalibratePoint" /// ??????? #define MASTERSLAVE_CMD_REMOVECALIBPOINT "masterSlaveTracker.removeCalibratePoint" /// ??????? #define MASTERSLAVE_CMD_MARKMAXZOOM "masterSlaveTracker.markSceneMaxZoom" /// ???????????????, ???????????????? ///@brief MACRO_GROUP_MASTERSLAVE_CMD_22_END ///@brief ??????????? typedef struct __NET_MS_PAIRPOINTS { int nStructSize; DH_POINT stMasterPoint; /// ?????????,?????????????[0,8191]???? DH_POINT stSlavePoint; /// ?????????,?????????????[0,8191]???? }NET_MS_PAIRPOINTS; ///@brief MASTERSLAVE_CMD_START???????????? typedef struct __NET_IN_MS_START { int nStructSize; }NET_IN_MS_START; ///@brief MASTERSLAVE_CMD_START???????????? typedef struct __NET_OUT_MS_START { int nStructSize; }NET_OUT_MS_START; ///@brief MASTERSLAVE_CMD_STOP???????????? typedef struct __NET_IN_MS_STOP { int nStructSize; }NET_IN_MS_STOP; ///@brief MASTERSLAVE_CMD_STOP???????????? typedef struct __NET_OUT_MS_STOP { int nStructSize; }NET_OUT_MS_STOP; ///@brief MASTERSLAVE_CMD_MANUALTRACK???????????? typedef struct __NET_IN_MS_MANUALTRACK { int nStructSize; DWORD dwObject; /// -1 ????????????????????????, >=0??????????????????????????????????? }NET_IN_MS_MANUALTRACK; ///@brief MASTERSLAVE_CMD_MANUALTRACK???????????? typedef struct __NET_OUT_MS_MANUALTRACK { int nStructSize; }NET_OUT_MS_MANUALTRACK; ///@brief MASTERSLAVE_CMD_POINTTRACK???????????? typedef struct __NET_IN_MS_POINTTRACK { int nStructSize; DH_POINT stTrackerPoint; /// ?????,?????????????[0,8191]???? }NET_IN_MS_POINTTRACK; ///@brief MASTERSLAVE_CMD_POINTTRACK???????????? typedef struct __NET_OUT_MS_POINTTRACK { int nStructSize; }NET_OUT_MS_POINTTRACK; ///@brief MASTERSLAVE_CMD_GETCALIBPOINTS???????????? typedef struct __NET_IN_MS_GETCALIBPOINTS { int nStructSize; }NET_IN_MS_GETCALIBPOINTS; ///@brief MASTERSLAVE_CMD_GETCALIBPOINTS???????????? typedef struct __NET_OUT_MS_GETCALIBPOINTS { int nStructSize; int nPointsNum; /// ???????? NET_MS_PAIRPOINTS stPairPoints[MAX_CALIBPOINTS_NUM]; /// ????????? }NET_OUT_MS_GETCALIBPOINTS; ///@brief MASTERSLAVE_CMD_CALIBRATE???????????? typedef struct __NET_IN_MS_CALIBRATE { int nStructSize; }NET_IN_MS_CALIBRATE; ///@brief MASTERSLAVE_CMD_CALIBRATE???????????? typedef struct __NET_OUT_MS_CALIBRATE { int nStructSize; }NET_OUT_MS_CALIBRATE; ///@brief MASTERSLAVE_CMD_ADDCALIBPOINT???????????? typedef struct __NET_IN_MS_ADDCALIBPOINT { int nStructSize; BOOL bSlavePointEn; /// ??????????????, TURE??????????????????FASLE??????, ?????????????????????? NET_MS_PAIRPOINTS stPairPoints; /// ????????????? }NET_IN_MS_ADDCALIBPOINT; ///@brief MASTERSLAVE_CMD_ADDCALIBPOINT???????????? typedef struct __NET_OUT_MS_ADDCALIBPOINT { int nStructSize; DH_POINT stPoint; /// ????? }NET_OUT_MS_ADDCALIBPOINT; ///@brief MASTERSLAVE_CMD_REMOVECALIBPOINT???????????? typedef struct __NET_IN_MS_REMOVECALIBPOINT { int nStructSize; DH_POINT stPoint; /// ?????? }NET_IN_MS_REMOVECALIBPOINT; ///@brief MASTERSLAVE_CMD_REMOVECALIBPOINT???????????? typedef struct __NET_OUT_MS_REMOVECALIBPOINT { int nStructSize; }NET_OUT_MS_REMOVECALIBPOINT; ///@brief MASTERSLAVE_CMD_MARKMAXZOOM??????????? typedef struct __NET_IN_MS_MARKMAXZOOM { int nStructSize; }NET_IN_MS_MARKMAXZOOM; ///@brief MASTERSLAVE_CMD_MARKMAXZOOM??????????? typedef struct __NET_OUT_MS_MARKMAXZOOM { int nStructSize; }NET_OUT_MS_MARKMAXZOOM; ///@brief MACRO_GROUP_COMMDEV_23_BEGIN ////////////////////////////// CLIENT_OperateCommDevice ?????????? ///////////////////////////////// #define COMMDEV_GET_EXTERNLDATA "devComm.getExternalData" ///?????????????? ???????????????? ///@brief MACRO_GROUP_COMMDEV_23_END #define MAX_EXTERN_DATA_LEN 2048 ///@brief COMMDEV_GET_EXTERNLDATA ??????? typedef struct __COMMDEV_IN_GET_EXTERNDATA { DWORD dwSize; }COMMDEV_IN_GET_EXTERNDATA; ///@brief COMMDEV_GET_EXTERNLDATA ??????? typedef struct __COMMDEV_OUT_GET_EXTERNDATA { DWORD dwSize; char szGetData[MAX_EXTERN_DATA_LEN]; ///????????????????? }COMMDEV_OUT_GET_EXTERNDATA; ///@brief MACRO_GROUP_VIDEO_ANALYSE_24_BEGIN ////////////////////////////// CLIENT_OperateVideoAnalyseDevice ?????????? ///////////////////////////////// #define NET_SET_MODULESTATE "devVideoAnalyse.setModuleState" /// ????????? #define NET_TEST_WITH_SCREENPOINTS "devVideoAnalyse.testCalibrateWithScreenPoints" /// ????????????????????,????????????????????????????,????????????????? #define NET_TEST_WITH_METRICLENGTH "devVideoAnalyse.testCalibrateWithMetricLength" /// ?????????????????????????,?????????? #define NET_GET_INTERNALOPTIONS "devVideoAnalyse.getInternalOptions" /// ????????? #define NET_TUNE_INTERNALOPTIONS "devVideoAnalyse.tuneInternalOptions" /// ?????????? #define NET_RESET_INTERNALOPTIONS "devVideoAnalyse.resetInternalOptions" /// ?????????????????? #define NET_SET_PTZ_PRESET_STATUS "devVideoAnalyse.setPtzPresetStatus" /// ?????????? ///@brief MACRO_GROUP_VIDEO_ANALYSE_24_END ///@brief ??????? typedef enum tagNET_EM_LINETYPE { NET_EM_HORIZONTAL, NET_EM_VERTICAL, }NET_EM_LINETYPE; ///@brief ????????? typedef enum tagEM_DH_PTZ_PRESET_STATUS { EM_DH_PTZ_PRESET_STATUS_UNKNOWN, /// ??? EM_DH_PTZ_PRESET_STATUS_REACH, /// ?????? EM_DH_PTZ_PRESET_STATUS_UNREACH, /// ?????????? }EM_DH_PTZ_PRESET_STATUS; ///@brief ???P/T????? typedef enum tagEM_DH_PTZ_PAN_TILT_STATUS { EM_DH_PTZ_PAN_TILT_STATUS_UNKNOWN, /// ??? EM_DH_PTZ_PAN_TILT_STATUS_IDLE, /// ?????? EM_DH_PTZ_PAN_TILT_STATUS_MOVING, /// ????? }EM_DH_PTZ_PAN_TILT_STATUS; ///@brief ?????????????? typedef struct { int nChannelID; /// ????? int nPTZPan; /// ????????????,??????????[0,3600] int nPTZTilt; /// ?????????????,??????????[-1800,1800] int nPTZZoom; /// ????????????,??????????[0,128] BYTE bState; /// ????????, 0-??? 1-??? 2-???? BYTE bAction; /// ???????,255-???,0-????,1-???,2-???,3-???,4-?????,5-??????,6-??????,7-?????????,8-???? /// 9-???????,10-???????,11-?????????12-??????? BYTE bFocusState; /// ????????, 0-???, 1-?????, 2-???? BYTE bEffectiveInTimeSection; /// ????????????????????? /// ????????????????????????????,???1,????????0 int nPtzActionID; /// ???ID?? DWORD dwPresetID; /// ????????????? float fFocusPosition; /// ??????? BYTE bZoomState; /// ???ZOOM??,0-???,1-ZOOM,2-???? BYTE bReserved[3]; /// ???? DWORD dwSequence; /// ?????,???????????? DWORD dwUTC; /// ?????UTC(1970-1-1 00:00:00)?????? EM_DH_PTZ_PRESET_STATUS emPresetStatus; /// ???????? int nZoomValue; /// ?????? ????????????100??????? NET_PTZSPACE_UNNORMALIZED stuAbsPosition;/// ???????????????????100??????? /// ???????????????0-36000?? /// ??????????????????-18000??-??18000???? /// ????????????????????0-MaxZoom*100 int nFocusMapValue; /// ??????? int nZoomMapValue; /// ?????? EM_DH_PTZ_PAN_TILT_STATUS emPanTiltStatus; ///???P/T????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[696]; /// ??????? }DH_PTZ_LOCATION_INFO; ///@brief NET_SET_PTZ_PRESET_STATUS typedef struct __NET_IN_PTZ_PRESET_STATUS { DWORD dwSize; DH_PTZ_LOCATION_INFO stPTZStatus; }NET_IN_PTZ_PRESET_STATUS; ///@brief NET_OUT_PTZ_PRESET_STATUS typedef struct __NET_OUT_PTZ_PRESET_STATUS { DWORD dwSize; }NET_OUT_PTZ_PRESET_STATUS; ///@brief NET_TEST_WITH_SCREENPOINTS typedef struct __NET_IN_CALIBRATE_BY_POINTS { DWORD dwSize; /// ???????? DH_POINT stStartPoint; /// ?????????? ?????????????????[0,8191]???? DH_POINT stEndPoint; /// ????????? ?????????????????[0,8191]???? NET_EM_LINETYPE emType; /// ??????? em_Horizontal("Horizontal") ????? em_Vertical("Vertical")?????? }NET_IN_CALIBRATE_BY_POINTS; ///@brief NET_OUT_CALIBRATE_BY_POINTS typedef struct __NET_OUT_CALIBRATE_BY_POINTS { DWORD dwSize; /// ???????? double dlength; /// ?????????????? ??????? }NET_OUT_CALIBRATE_BY_POINTS; ///@brief NET_TEST_WITH_METRICLENGTH typedef struct __NET_IN_CALIBRATE_BY_LENGTH { DWORD dwSize; /// ???????? double nLength; /// ??????????????,??????? DH_POINT stStartPoint; /// ??????????,?????????????????[0,8191]???? DH_POINT stDirection; /// ????????????,???????????????????????????????[0,8191]???? NET_EM_LINETYPE emType; /// ???????,em_Horizontal("Horizontal") ????? em_Vertical("Vertical")?????? }NET_IN_CALIBRATE_BY_LENGTH; ///@brief NET_OUT_CALIBRATE_BY_LENGTH typedef struct __NET_OUT_CALIBRATE_BY_LENGTH { DWORD dwSize; /// ???????? DH_POINT stEndPoint; /// ????????????? ?????????????????[0,8191]???? }NET_OUT_CALIBRATE_BY_LENGTH; ///@brief ??????? typedef struct __NET_INTERNAL_OPTION { DWORD dwSize; /// ???????? int nIndex; /// ?????? NET_ARRAY stKey; /// ???????,??????\0????256???,???????? int nValue; /// ????? int nMinValue; /// ????? int nMaxValue; /// ???? }NET_INTERNAL_OPTION; ///@brief ?????????? NET_GET_INTERNALOPTIONS typedef struct __NET_IN_GETINTERNAL_OPTIONS { DWORD dwSize; /// ???????? }NET_IN_GETINTERNAL_OPTIONS; ///@brief ?????????? NET_OUT_GETINTERNAL_OPTIONS typedef struct __NET_OUT_GETINTERNAL_OPTIONS { DWORD dwSize; /// ???????? int nTotalOptionNum; /// ?????? ??????????? int nReturnOptionNum; /// ?????????????? NET_INTERNAL_OPTION* pstInternalOption; /// ??????? ??????????? /// ??????????????????sizeof(NET_INTERNAL_OPTION)*nTotalOptionNum }NET_OUT_GETINTERNAL_OPTIONS; ///@brief NET_TUNE_INTERNALOPTIONS typedef struct __NET_IN_TUNEINTERNAL_OPTION { DWORD dwSize; /// ???????? int nOptionCount; /// ?????? NET_INTERNAL_OPTION* pstInternalOption; /// ??????? ????????????? /// ??????????????????sizeof(NET_INTERNAL_OPTION)*nOptionCount }NET_IN_TUNEINTERNAL_OPTION; ///@brief NET_OUT_TUNEINTERNAL_OPTION typedef struct __NET_OUT_TUNEINTERNAL_OPTION { DWORD dwSize; /// ???????? }NET_OUT_TUNEINTERNAL_OPTION; ///@brief NET_RESET_INTERNALOPTIONS typedef struct __NET_IN_RESETINTERNAL_OPTION { DWORD dwSize; /// ???????? }NET_IN_RESETINTERNAL_OPTION; ///@brief NET_OUT_RESETINTERNAL_OPTION typedef struct __NET_OUT_RESETINTERNAL_OPTION { DWORD dwSize; /// ???????? }NET_OUT_RESETINTERNAL_OPTION; ///@brief NET_SET_MODULESTATE typedef enum tagNET_EM_MODULESTATE { NET_EM_MODULESTATE_OK, NET_EM_MODULESTATE_PAUSE, }NET_EM_MODULESTATE; ///@brief NET_IN_SETMODULESTATE typedef struct __NET_IN_SETMODULESTATE { DWORD dwSize; /// ???????? NET_EM_MODULESTATE emState; /// 0-????????,1-???,??????????????????????????????,???????????? int nIndex; /// ????? -1???????? }NET_IN_SETMODULESTATE; ///@brief NET_OUT_SETMODULESTATE typedef struct __NET_OUT_SETMODULESTATE { DWORD dwSize; /// ???????? }NET_OUT_SETMODULESTATE; //////////////////////////////CLIENT_DeleteDevConfig ??????///////////////////////////////// ///@brief ??? typedef enum tagNET_EM_CONFIGOPTION { NET_EM_CONFIGOPTION_OK, NET_EM_CONFIGOPTION_NEEDRESTART, NET_EM_CONFIGOPTION_NEEDREBOOT=2, NET_EM_CONFIGOPTION_WRITEFILEERROR=4, NET_EM_CONFIGOPTION_CAPSNOTSUPPORT=8, NET_EM_CONFIGOPTION_VALIDATEFAILED=16, }NET_EM_CONFIGOPTION; ///@brief CLIENT_DeleteDevConfig ??????? typedef struct tagNET_IN_DELETECFG { DWORD dwSize; /// ??????? char* szCommand; /// ???????? }NET_IN_DELETECFG; ///@brief CLIENT_DeleteDevConfig ??????? typedef struct tagNET_OUT_DELETECFG { DWORD dwSize; /// ??????? int nError; /// ????????????? int nRestart; /// ?????????? DWORD dwOptionMask; /// ??? ????????NET_EM_CONFIGOPTION }NET_OUT_DELETECFG; //////////////////////////////CLIENT_GetMemberNames ??????///////////////////////////////// ///@brief CLIENT_GetMemberNames ??????? typedef struct tagNET_IN_MEMBERNAME { DWORD dwSize; /// ??????? char* szCommand; /// ???????? }NET_IN_MEMBERNAME; ///@brief CLIENT_GetMemberNames ??????? typedef struct tagNET_OUT_MEMBERNAME { DWORD dwSize; /// ??????? int nError; /// ????????????? int nRestart; /// ?????????? int nTotalNameCount; /// ??????? ????????????,?????????? int nRetNameCount; /// ??????????????? NET_ARRAY* pstNames; /// ???????? ?????????????,??????nTotalNameCount?? /// ??????????????????sizeof(NET_ARRAY)*nTotalNameCount }NET_OUT_MEMBERNAME; /////////////////////////////////????????????/////////////////////////////////////// ///@brief ??????? typedef enum tagNET_EM_STAFF_TYPE { NET_EM_STAFF_TYPE_ERR, NET_EM_STAFF_TYPE_HORIZONTAL, /// "Horizontal" ????? NET_EM_STAFF_TYPE_VERTICAL, /// "Vertical" ?????? NET_EM_STAFF_TYPE_ANY, /// "Any" ??????? NET_EM_STAFF_TYPE_CROSS, /// "Cross" ????????? }NET_EM_STAFF_TYPE; ///@brief ???????? typedef enum tagNET_EM_CALIBRATEAREA_TYPE { NET_EM_CALIBRATEAREA_TYPE_ERR, NET_EM_CALIBRATEAREA_TYPE_GROUD, /// "Groud" : ????,???N????????+M???????????N=3,M=1??????N=2,M=2?????????????? NET_EM_CALIBRATEAREA_TYPE_HORIZONTAL, /// "Horizontal" : ????,???????????????????????????? NET_EM_CALIBRATEAREA_TYPE_VERTICAL, /// "Vertical" : ?????,?????????????????? NET_EM_CALIBRATEAREA_TYPE_ANY, /// "Any" ???????,N????????,??????????N=3,???????????? }NET_EM_CALIBRATEAREA_TYPE; ///@brief ??????????????????? typedef enum tagNET_EM_OUTPUT_SUB_TYPE { NET_EM_OUTPUT_SUB_TYPE_ERR, NET_EM_OUTPUT_SUB_TYPE_NORMAL, /// ??????????????????????????????? NET_EM_OUTPUT_SUB_TYPE_SYNOPSIS, /// ???????????????????????????????????,?????????????,?????????????????????? }NET_EM_OUTPUT_SUB_TYPE; ///@brief ?????? typedef struct tagNET_STAFF_INFO { DH_POINT stuStartLocation; /// ???????? DH_POINT stuEndLocation; /// ???????? float nLenth; /// ??????,?????? NET_EM_STAFF_TYPE emType; /// ??????? }NET_STAFF_INFO; ///@brief ??????,?????????? typedef struct tagNET_CALIBRATEAREA_INFO { int nLinePoint; /// ??????????????? DH_POINT stuLine[DH_MAX_POLYLINE_NUM]; /// ?????????? float fLenth; /// ?????? DH_POLY_POINTS stuArea; /// ???? int nStaffNum; /// ???????? NET_STAFF_INFO stuStaffs[DH_MAX_STAFF_NUM]; /// ?????? NET_EM_CALIBRATEAREA_TYPE emType; /// ???????? }NET_CALIBRATEAREA_INFO; ///@brief ?????????? typedef struct tagNET_LOCALFILE_INFO { DWORD dwSize; char szFilePath[MAX_PATH]; /// ??????????? NET_TIME stuStartTime; /// ??????(??????????) NET_TIME stuEndTime; /// ???????(??????????) UINT nFileLength; /// ???????, ????: ??? }NET_LOCALFILE_INFO; ///@brief ????????? typedef struct tagNET_REMOTEFILE_INFO { DWORD dwSize; char szIP[MAX_PATH]; /// ??????IP unsigned int nPort; /// ????????? char szName[DH_MAX_NAME_LEN]; /// ?????????????? char szPassword[DH_MAX_NAME_LEN]; /// ????????????? BYTE byProtocolType; /// ??????????????????,2-???????,3-??????? BYTE byReserved[3]; /// ?????? char szFilePath[MAX_PATH]; /// ???????????,byProtocolType?3????? int nStartCluster; /// ??????,byProtocolType?2????? int nDriverNo; /// ???,byProtocolType?2????? NET_TIME stuStartTime; /// ??????(??????????)??????????????????? NET_TIME stuEndTime; /// ???????(??????????)??????????????????? int nChannel; /// ????????, ????????????????? NET_STREAM_TYPE emStreamType; /// ????????, ?????????????????1/ 2 }NET_REMOTEFILE_INFO; ///@brief ?????????? typedef struct tagNET_FILEPATH_INFO { DWORD dwSize; BOOL bFileType; /// TRUE: ?????????????; FALSE: ????????? NET_LOCALFILE_INFO stuLocalFile; /// ??????????, bFileType==TRUE???? NET_REMOTEFILE_INFO stuRemoteFile; /// ?????????, bFileType==FALSE???? }NET_FILEPATH_INFO; ///@brief ?????? typedef struct tagNET_GLOBAL_INFO { DWORD dwSize; char szSceneType[DH_MAX_NAME_LEN]; /// ??????? int nStaffNum; /// ????? NET_STAFF_INFO stuStaffs[DH_MAX_STAFF_NUM]; /// ??? int nCalibrateAreaNum; /// ???????? NET_CALIBRATEAREA_INFO stuCalibrateArea[DH_MAX_CALIBRATEBOX_NUM]; /// ??????(?????????????,???????????????????) int nJitter; /// ??????????? : ???????????,??0-100,??????????????????,?????????,???? BOOL bDejitter; /// ????????????? BOOL bSceneTypeEx; /// szSceneTypeEx ??????? char szSceneTypeEx[128]; /// ????????????? }NET_GLOBAL_INFO; ///@brief ?????? typedef struct tagNET_MODULE_INFO { DWORD dwSize; /// ???????? BYTE bSensitivity; /// ??????,??1-10,????????????? BYTE bReserved[3]; int nDetectRegionPoint; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_POLYGON_NUM]; /// ??????? int nExcludeRegionNum; /// ????????? DH_POLY_POINTS stuExcludeRegion[DH_MAX_EXCLUDEREGION_NUM]; /// ??????? }NET_MODULE_INFO; ///@brief ?????????? typedef struct tagNET_OBJFILTER_INFO { DWORD dwSize; /// ???????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szObjectType[DH_MAX_NAME_LEN]; /// ????????,???????: ///"Unknown", "Human", "Vehicle", ///"Fire", "Smoke", "Plate", "HumanFace", "Container", "Animal", "TrafficLight", "PastePaper", "HumanHead", "Entity" char szObjectSubType[64]; /// ?????????,????????????????,???????????????? /// Vehicle Category:"Unknown" ???,"Motor" ??????,"Non-Motor":???????,"Bus": ??????,"Bicycle" ??????,"Motorcycle":????? /// Plate Category??"Unknown" ???,"Normal" ???????,"Yellow" ????,"DoubleYellow" ????????,"Police" ????,,"SAR" ???????????,"Trainning" ?????????? /// "Personal" ???????,"Agri" ?????,"Embassy" ??????,"Moto" ?????????,"Tractor" ??????????,"Other" ???????? /// "Civilaviation"?????,"Black"???? /// "PureNewEnergyMicroCar"????T?????????,"MixedNewEnergyMicroCar,"????????????,"PureNewEnergyLargeCar",????T??????? /// "MixedNewEnergyLargeCar"?????????? /// HumanFace Category:"Normal" ??????,"HideEye" ??????,"HideNose" ???????,"HideMouth" ????? DWORD dwRGBMainColor[DH_MAX_COLOR_NUM]; /// ??????????,????????????????????????????,??????????????????,????:RGB??(0,255,0),??????0?, ????0x00ff0000 DWORD dwLowerBodyColor[DH_MAX_COLOR_NUM]; /// ?????????????????????????????,??????????????????,????:RGB??(0,255,0),??????0?, ????0x00ff0000 int nMinSize; /// ???????????, m int nMaxSize; /// ?????????, m int nMinSpeed; /// ???????, km/h int nMaxSpeed; /// ??????, km/h DWORD dwRGBMainColorNum; /// ?????????????,???dwRGBMainColor??????????????? DWORD dwLowerBodyColorNum; /// ???????????????bRGBMainColor==true,???????????????????????? BOOL bRGBMainColor; /// true-dwRGBMainColor???????????,dwLowerBodyColor????????????; false-dwRGBMainColor???????????,dwLowerBodyColor???? }NET_OBJFILTER_INFO; ///@brief ??????? typedef struct tagNET_VIDEOSYNOPSISRULE_INFO { DWORD dwSize; /// ???????? BYTE byOutputType; /// ?????????????????,1-??????(??????);2-??????;3-??????????????? BYTE byDensity; /// ???, 1-10, ????, ????????? bool bShowTime; /// ??????????????? bool bShowBox; /// ??????????????? bool bEnableRecordResult; /// ?????????????????? BYTE byTime; /// ???????????,????:???? BYTE byReserved[2]; NET_OBJFILTER_INFO stuFilter[MAX_OBJFILTER_NUM]; /// ?????????? DWORD dwObjFilterNum; /// ????????????? /* NET_OUT_QUERY_VIDEOSYNOPSIS??TYPE_CB_VIDEOSYNOPSIS_RULE????????, ????CFG_CMD_ANALYSERULE???????dhconfigsdk.dll?????CLIENT_ParseData????,???????????,?????????????? */ /* NET_IN_ADD_VIDEOSYNOPSIS??,????CFG_CMD_ANALYSERULE???????dhconfigsdk.dll?????CLIENT_PacketData???,???????? */ char* szAnalyseRuleInfo; /// JSON?????????? int nBufferLen; /// TYPE_CB_VIDEOSYNOPSIS_RULE, NET_OUT_QUERY_VIDEOSYNOPSIS???,?????szAnalyseRuleInfo???? BOOL bCustomResolution; /// ????????????, TRUE-???????emResolution???, FALSE-???????????????????????? CAPTURE_SIZE emResolution; /// ?????, bCustomResolution?TRUE?????? BOOL bEnableMaxUsedCPU; /// ??????????????CPU??? BOOL bEnableSmoothBorder; /// ??????????? NET_EM_OUTPUT_SUB_TYPE emOutputSubType; /// ???????????????????,???NET_EM_OUTPUT_SUB_TYPE int nExtractFrameRate; /// ?????????????? 1-32,????,??????????,?????????????????? /// ????????????????????????????(emOutputSubType)??NET_EM_OUTPUT_SUB_TYPE_SYNOPSIS???? /*?????????????*/ int nSynopsisSpeed; /// ?????????,????1~10?????????,5?????????????5????????????^????????? /// ?0?,????????? int nSynopsisSize; /// ?????????,????1~10?????????,3?????????????3?????????????^????????? /// ?0?,????????? BOOL bEnableDirection; /// ?True?,??????????????????? /// ?False?,?????????????????????, DH_POINT stuSynopsisStartLocation; /// ??????????,????????,?????????????[0,8191]????,bEnableDirection?True????? DH_POINT stuSynopsisEndLocation; /// ??????????,????????,?????????????[0,8191]????,bEnableDirection?True????? }NET_VIDEOSYNOPSISRULE_INFO; ///@brief ????????????????????? typedef struct tagNET_IN_ADD_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? NET_FILEPATH_INFO* pFilePathInfo; /// ??????????,????????? /// ????????????,?????sizeof(NET_FILEPATH_INFO)*dwFileCount DWORD dwFileCount; /// ??????????? NET_GLOBAL_INFO stuGlobalInfo; /// ?????? NET_MODULE_INFO stuModuleInfo; /// ?????? NET_VIDEOSYNOPSISRULE_INFO stuRuleInfo; /// ??????? unsigned int nWaitTime; /// ?????????,????ms }NET_IN_ADD_VIDEOSYNOPSIS; ///@brief ????????????????????? typedef struct tagNET_OUT_ADD_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? DWORD* pnTaskID; /// TaskID????,?????????.??????????????????????;????0????????????????? DWORD nTaskIDCount; /// TaskID???? }NET_OUT_ADD_VIDEOSYNOPSIS; ///@brief ?????????????????????? typedef struct tagNET_IN_PRE_HANDLE_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? NET_FILEPATH_INFO* pFilePathInfo; /// ??????????,?????????,?????sizeof(NET_FILEPATH_INFO)*dwFileCount DWORD dwFileCount; /// ??????????? unsigned int nWaitTime; /// ?????????,????ms char szTaskName[DH_COMMON_STRING_64];/// ???????????,??????? }NET_IN_PRE_HANDLE_VIDEOSYNOPSIS; ///@brief ?????????????????????? typedef struct tagNET_OUT_PRE_HANDLE_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? DWORD* pnTaskID; /// TaskID????,?????????.??????????????????????;????0????????????????? /// ??????????????????sizeof(DWORD)*nTaskIDCount DWORD nTaskIDCount; /// TaskID???? }NET_OUT_PRE_HANDLE_VIDEOSYNOPSIS; ///@brief ?????????????????????????????????? typedef struct tagNET_IN_PRETASK_BYCHANNEL { DWORD dwSize; int nChannelCount; /// ??????????? int nChannel[DH_PRETASK_CHANNEL]; /// ??????? NET_TIME stuStartTime; /// ?????????? NET_TIME stuEndTime; /// ???????????? unsigned int nWaitTime; /// ????????? }NET_IN_PRETASK_BYCHANNEL; ///@brief ?????????????????????????????????? typedef struct tagNET_OUT_PRETASK_BYCHANNEL { DWORD dwSize; int nTaskCount; /// ?????????????????ID???? int nRealCount; /// ????????????????ID???? DWORD* pnTaskID; /// ???????????????ID, ?????????????????sizeof(DWORD)*nTaskCount /// 0????????????????????>0?????? }NET_OUT_PRETASK_BYCHANNEL; ///@brief ???????????????? typedef struct tagNET_IN_GET_VIDEOSYNOPSIS_STATE { DWORD dwSize; unsigned int nTaskID; /// ??????????ID unsigned int nWaitTime; /// ????????? }NET_IN_GET_VIDEOSYNOPSIS_STATE; ///@brief ??????????? typedef enum tagEM_VIDEOSYNOPSIS_STATE { EM_VIDEOSYNOPSIS_STATE_UNKNOWN, /// ??? EM_VIDEOSYNOPSIS_STATE_SUCESSED, /// ?????? EM_VIDEOSYNOPSIS_STATE_FAILED, /// ?????? EM_VIDEOSYNOPSIS_STATE_PRETASK, /// ??addPreTask??? EM_VIDEOSYNOPSIS_STATE_SYNO /// ??addSynoInfo??? }EM_VIDEOSYNOPSIS_STATE; ///@brief ???????????????? typedef struct tagNET_OUT_GET_VIDEOSYNOPSIS_STATE { DWORD dwSize; int nProcess; /// ????: %????????????-1 EM_VIDEOSYNOPSIS_STATE emState; /// ?????????? }NET_OUT_GET_VIDEOSYNOPSIS_STATE; ///@brief ?????????????????????? typedef struct tagNET_IN_VIDEOSYNOPSIS_STARTFIND { DWORD dwSize; int nChannelCount; /// ?????????? int* pnChannel; /// ????????, ?????sizeof(pnChannel)*nChannelCount; NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? unsigned int nWaitTime; /// ????????? }NET_IN_VIDEOSYNOPSIS_STARTFIND; ///@brief ??????????????????????? typedef struct tagNET_OUT_VIDEOSYNOPSIS_STARTFIND { DWORD dwSize; int nToken; /// ??????????? int nTotalCount; /// ??????????????????????? }NET_OUT_VIDEOSYNOPSIS_STARTFIND; ///@brief ??????????????????? typedef struct tagNET_IN_VIDEOSYNOPSIS_DOFIND { DWORD dwSize; int nToken; /// ??????? int nBeginNumber; /// ???????????????nBeginNumber???????????nCount?????????? int nCount; /// ?????????????? unsigned int nWaitTime; /// ????????? }NET_IN_VIDEOSYNOPSIS_DOFIND; ///@brief ???????????????? typedef struct tagNET_VIDEOSYNOPSIS_DOFIND_INFO { int nChannel; /// ?????? NET_TIME stuStartTime; /// ??????????? NET_TIME stuEndTime; /// ???????????? int nDisk; /// ????? int nPartition; /// ?????? int nCluster; /// ??? int nFileLength; /// ?????????????, ?????? int nFileSize; /// ?????????????, ??????????????K BOOL bLocked; /// ??????? NET_TIME stuBeginWriteTime; /// ???????????????????? NET_TIME stuEndWriteTime; /// ????????????????????? BYTE byReserved[976]; /// ??????? }NET_VIDEOSYNOPSIS_DOFIND_INFO; ///@brief ???????????????????? typedef struct tagNET_OUT_VIDEOSYNOPSIS_DOFIND { DWORD dwSize; int nMaxFind; /// ????????????? int nRealFound; /// ????????????? NET_VIDEOSYNOPSIS_DOFIND_INFO* pstuFindInfo; /// ??????????????????????sizeof(NET_VIDEOSYNOPSIS_DOFIND_INFO) * nMaxFind }NET_OUT_VIDEOSYNOPSIS_DOFIND; ///@brief ???????????????? typedef struct tagNET_IN_VIDEOSYNOPSIS_STOPFIND { DWORD dwSize; int nToken; /// ??????? unsigned int nWaitTime; /// ????????? }NET_IN_VIDEOSYNOPSIS_STOPFIND; ///@brief ????????????????? typedef struct tagNET_OUT_VIDEOSYNOPSIS_STOPFIND { DWORD dwSize; }NET_OUT_VIDEOSYNOPSIS_STOPFIND; ///@brief ???????????????????? typedef struct tagNET_IN_RUN_VIDEOSYNOPSIS_TASK { DWORD dwSize; /// ???????? DWORD nTaskID; /// ????ID,CLIENT_PreHandleVideoSynopsisTask?????????????? NET_GLOBAL_INFO stuGlobalInfo; /// ?????? NET_MODULE_INFO stuModuleInfo; /// ?????? NET_VIDEOSYNOPSISRULE_INFO stuRuleInfo; /// ??????? unsigned int nWaitTime; /// ?????????,????ms }NET_IN_RUN_VIDEOSYNOPSIS_TASK; ///@brief ???????????????????? typedef struct tagNET_OUT_RUN_VIDEOSYNOPSIS_TASK { DWORD dwSize; /// ???????? DWORD nPlayID; /// ???ID,????0?????????,??????CLIENT_PlayBackBySynopsisFile???????????? DWORD nTime; /// ?????????,????:?? }NET_OUT_RUN_VIDEOSYNOPSIS_TASK; ///@brief ???????????????????? typedef struct tagNET_IN_PAUSE_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? BOOL bPause; /// TRUE-?????????? FALSE-?????????? DWORD* pnTaskID; /// TaskID????,?????????,?????sizeof(DWORD)*nTaskIDCount DWORD nTaskIDCount; /// TaskID???? DWORD nWaitTime; /// ?????????,????ms }NET_IN_PAUSE_VIDEOSYNOPSIS; ///@brief ?????????????? typedef enum tagNET_SYNOPSIS_REMOVE_TYPE { EM_SYNOPSIS_REMOVE_UNKNOW =0 , /// ??? EM_SYNOPSIS_REMOVE_PRETASK , /// ????????? EM_SYNOPSIS_REMOVE_SYNO , /// ??????? }NET_SYNOPSIS_REMOVE_TYPE; ///@brief ???????????????????? typedef struct tagNET_IN_REMOVE_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? DWORD* pnTaskID; /// TaskID????,?????????,?????sizeof(DWORD)*nTaskIDCount DWORD nTaskIDCount; /// TaskID???? DWORD nWaitTime; /// ?????????,????ms NET_SYNOPSIS_REMOVE_TYPE emRemoveType; /// ?????????????? }NET_IN_REMOVE_VIDEOSYNOPSIS; ///@brief ?????????????????? typedef struct tagNET_REAL_SYNOPSIS_OBJECT_INFO { DWORD dwSize; DWORD dwTaskID; /// ???????????????ID DH_MSG_OBJECT_EX2 stuObjectInfo; /// ?????????? }NET_REAL_SYNOPSIS_OBJECT_INFO; ///@brief ???????????? typedef struct tagNET_REAL_SYNOPSIS_STATE_INFO { DWORD dwSize; DWORD dwTaskID; /// ????ID int nObjectNum; /// ????????????????????????? int nTaolProgress; /// ??????????????????,?????????????????????????,0~100 char szState[DH_MAX_SYNOPSIS_STATE_NAME];/// ???????????,"Downloading"-????????","Synopsising"-???????", /// "DownloadFailed"-???????","DownloadSucceeded"-?????? /// "SynopsisFailed"-??????","Succeeded"-?????? /// "DownloadPause"-???????,"SynopsisPause"-?????? int nProgressOfCurrentState; /// ????????????????????,0~100 char szFailedCode[DH_MAX_STRING_LEN]; /// ?????,szState="SynopsisFailed"???? /// "OutOfMemory" ??????; /// "TooMany_TargetInVideo" ????????????????; /// "InvalidFilePointer" ??????????; /// "InvalidFilePath" ???????????; /// "CreateDirectoryFailed" ????????????????; /// "WriteDataFailed" ??Tube?????????? /// "DataSizeTooLarge" Tube?????? /// "Detect_Nothing" ?????????????? /// "OpenDataFailed" ???????????? /// "InvalidSynopsisBackgroud" ??????????? /// "ColorRetrieval" ???????????????? /// "UnsupportRuleType" ????????????? /// "RuleNumberExceedLimit" ?????????? /// "NoFunctionCfgInfo" ??????????????????????? /// "FunctionNumberExceedLimit" ?????????????????????? /// "PointsExceedLimit" ????????????????? /// "BadFunctionType" ???????????? /// "RulePointNumber" ??????????? /// "MaskRegionNumberExceedLimit" ???????????????? /// "CameraSceneSwitch" ??????????? /// "TooManyTargeInFrame" ?????????????? /// "InalidSynopsisDesity" ?????????? /// "ExtrackColorFeatureFailed" ????????????? /// "JpegEncodeFrameFailed" Jpeg??????? /// "JpegParamRestFailed" Jpeg????????????? /// "JpegDecodeFrameFailed" Jpeg??????? /// "RetrieveObjectIdInvalid" ???????ID???? /// "RetrieveImageInvalid" ??????????? /// "NetworkAnomaly" ??????????? /// "ObjectNumberLimit" ?????????????????? /// "CreateChannelFailed" ?????????? /// "ReadUGFileFailed" ???UG?????? /// "GetSynopsisInfoFailed" ??????????????? /// "ObjectNumberExceedLimit" ???????????????????? /// "RebuildBackgroudFailed" ?????????? /// "NotExistMiddleFile" ????????????? /// "NotExistSourceFile" ??????????? /// "NotDog" ???????? /// "NotEnoughFreeDisk" ???????? /// "StartDecodeFail" ?????????? /// "DecodeTimeOut" ????????? /// "EncodeTimeOut" ????????? /// "ExactTimeOut" ???????????? /// "ReadMidlleFileFail" ????????????? /// "ExactPictureFail" ???????? char szPicPath[DH_COMMON_STRING_512]; /// ?????????????????? ??????? /// ???HTTP URL??? /// ???FTP URL??? /// ???????????????? /// a)"C:/pic/1.jpg" /// b)"/mnt///2010/8/11/dav/15:40:50.jpg" int nMaxTime; /// ?????????????????,???? ?? int nMinTime; /// ??????????????????,???? ?? char szVideoPath[DH_COMMON_STRING_512]; /// ??????????, ???????????szState ?Succeeded ????? }NET_REAL_SYNOPSIS_STATE_INFO; ///@brief ?????????????????????? typedef int (CALLBACK *fVideoSynopsisObjData)(LLONG lRealLoadHandle, NET_REAL_SYNOPSIS_OBJECT_INFO* pSynopsisObjectInfo, void* pBuf, int nBufLen, LDWORD dwUser, void* pReserved); ///@brief ????????????????????? typedef int (CALLBACK *fVideoSynopsisState)(LLONG lRealLoadHandle, NET_REAL_SYNOPSIS_STATE_INFO* pSynopsisStateInfos, int nInfoCount, LDWORD dwUser, void* pReserved); ///@brief CLIENT_RealLoadObjectData?????????? typedef struct tagNET_IN_REALLOAD_OBJECTDATA { DWORD dwSize; /// ??????? int nTaskIDNum; /// ????ID???? DWORD *pTaskIDs; /// ????????ID,??????????????????sizeof(DWORD)*nTaskIDNum BOOL bNeedPicFile; /// ???????????????? int nWaitTime; /// ??????,????ms fVideoSynopsisObjData cbVideoSynopsisObjData; /// ????????????????????????? LDWORD dwUser; }NET_IN_REALLOAD_OBJECTDATA; ///@brief CLIENT_RealLoadObjectData?????????? typedef struct tagNET_OUT_REALLOAD_OBJECTDATA { DWORD dwSize; /// ??????? LLONG lRealLoadHandle; /// ????????????,??????????????? }NET_OUT_REALLOAD_OBJECTDATA; ///@brief CLIENT_StopLoadObjectData?????????? typedef struct tagNET_IN_STOPLOAD_OBJECTDATA { DWORD dwSize; int nTackIDNum; /// ????ID???? DWORD *pTaskIDs; /// ????????ID, ??????????????????sizeof(DWORD)*nTaskIDNum }NET_IN_STOPLOAD_OBJECTDATA; ///@brief CLIENT_RealLoadSynopsisState?????????? typedef struct tagNET_IN_REALLAOD_SYNOPSISSTATE { DWORD dwSize; /// ??????? int nTaskIDNum; /// ????ID????, 0 ?????????? DWORD *pTaskIDs; /// ????????ID,??????????????????sizeof(DWORD)*nTaskIDNum int nWaitTime; /// ??????,????ms fVideoSynopsisState cbVideoSynopsisState; /// ????????????????????????? LDWORD dwUser; }NET_IN_REALLAOD_SYNOPSISSTATE; ///@brief CLIENT_RealLoadSynopsisState?????????? typedef struct tagNET_OUT_REALLOAD_SYNOPSISSTATE { DWORD dwSize; /// ??????? LLONG lRealLoadHandle; /// ?????????????,??????????????? }NET_OUT_REALLOAD_SYNOPSISSTATE; ///@brief CLIENT_StopLoadSynopsisState?????????? typedef struct tagNET_IN_STOPLOAD_SYNOPSISSTATE { DWORD dwSize; int nTackIDNum; /// ????ID???? DWORD *pTaskIDs; /// ????????ID,??????????????????sizeof(DWORD)*nTaskIDNum }NET_IN_STOPLOAD_SYNOPSISSTATE; ///@brief ?????????????????? typedef enum tagEM_VIDEOSYNOPSIS_QUERY_TYPE { EM_VIDEOSYNOPSIS_TASK, /// ??????? EM_VIDEOSYNOPSIS_OBJ, /// ??????????? }EM_VIDEOSYNOPSIS_QUERY_TYPE; ///@brief ???????????????????????? typedef struct tagNET_QUERY_VSTASK_INFO { DWORD dwSize; /// ???????? DWORD dwTaskID; /// ??????ID,?0??????????????? }NET_QUERY_VSTASK_INFO; ///@brief ?????????????, ????????????????????? typedef struct tagNET_VSO_COLORSIMILAR_INFO { int nRed; /// ????????, ????0??100, 0????????????? int nYellow; /// ????????, ????0??100, 0????????????? int nGreen; /// ????????, ????0??100, 0????????????? int nCyan; /// ????????, ????0??100, 0????????????? int nBlue; /// ????????, ????0??100, 0????????????? int nPurple; /// ????????, ????0??100, 0????????????? int nBlack; /// ????????, ????0??100, 0????????????? int nWhite; /// ????????, ????0??100, 0????????????? BYTE byReserved[512]; /// ??????? } NET_VSO_COLORSIMILAR_INFO; ///@brief ???????????????????????????? typedef struct tagNET_QUERY_VSOBJECT_INFO { DWORD dwSize; /// ???????? DWORD* pdwTaskID; /// ?????????????ID,?-1?????????????? DWORD dwTaskIDCount; /// ????????????? DH_MSG_OBJECT stuObjInfo; /// ???????,objectID???0??????????????????????? int nSpeed; /// ???????, ?????km/h, -1???????????? int nDirection; /// ?????, ??????, ?????-1??360, 12????????0, ???????, -1???????????? NET_TIME_EX stuStartTime; /// ???????????????? NET_TIME_EX stuEndTime; /// ????????????????? NET_VSO_COLORSIMILAR_INFO stuColorSimilarInfo; /// ?????????????, ????????????????????? }NET_QUERY_VSOBJECT_INFO; ///@brief --CLIENT_QueryVideoSynopsisInfo?????????????? typedef struct tagNET_IN_QUERY_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? EM_VIDEOSYNOPSIS_QUERY_TYPE emQueryType; /// ???????? DWORD dwCount; /// ????????? DWORD dwBeginNumber; /// ????????? void* pQueryInfo; /// ??????????,????????? /// ???emQueryType==EM_VIDEOSYNOPSIS_TASK,???NET_QUERY_VSTASK_INFO,?????sizeof(NET_QUERY_VSTASK_INFO)*dwCount /// ???emQueryType==EM_VIDEOSYNOPSIS_OBJ,???NET_QUERY_VSOBJECT_INFO,?????sizeof(NET_QUERY_VSOBJECT_INFO)*dwCount DWORD dwWaitTime; /// ?????????,????ms }NET_IN_QUERY_VIDEOSYNOPSIS; ///@brief ???????????????????????? typedef struct tagNET_VSTASK_INFO { DWORD dwSize; /// ???????? DWORD dwTaskID; /// ????ID NET_MODULE_INFO stuModuleInfo; /// ?????? NET_VIDEOSYNOPSISRULE_INFO stuRuleInfo; /// ??????????? NET_GLOBAL_INFO stuGlobalInfo; /// ?????? NET_TIME stuCreateTime; /// ??????????? char szCurrState[DH_MAX_SYNOPSIS_STATE_NAME]; /// ???????????,"Downloading"-????????","Synopsising"-???????", /// "DownloadFailed"-???????","DownloadSucceeded"-?????? /// "SynopsisFailed"-??????","Succeeded"-?????? /// "DownloadPause"-???????,"SynopsisPause"-?????? char szCreateUser[DH_MAX_NAME_LEN]; /// ???????????? int nProgressOfCurrentState; /// ????????????????????,0~100 char szLocalFilePath[MAX_PATH]; /// ?????????????????????????????????????? int nObjectNum; /// ????????????????????????? NET_FILEPATH_INFO stuVideoSourceFilePath; /// ??????????? NET_FILEPATH_INFO stuSynopsisVideoFilePath; /// ????????????? char szFailedCode[DH_MAX_STRING_LEN]; /// ??????????????,szCurrState?"SynopsisFailed"????? /// "OutOfMemory" ??????; /// "TooMany_TargetInVideo" ????????????????; /// "InvalidFilePointer" ??????????; /// "InvalidFilePath" ???????????; /// "CreateDirectoryFailed" ????????????????; /// "WriteDataFailed" ??Tube?????????? /// "DataSizeTooLarge" Tube?????? /// "Detect_Nothing" ?????????????? /// "OpenDataFailed" ???????????? /// "InvalidSynopsisBackgroud" ??????????? /// "ColorRetrieval" ???????????????? /// "UnsupportRuleType" ????????????? /// "RuleNumberExceedLimit" ?????????? /// "NoFunctionCfgInfo" ??????????????????????? /// "FunctionNumberExceedLimit" ?????????????????????? /// "PointsExceedLimit" ????????????????? /// "BadFunctionType" ???????????? /// "RulePointNumber" ??????????? /// "MaskRegionNumberExceedLimit" ???????????????? /// "CameraSceneSwitch" ??????????? /// "TooManyTargeInFrame" ?????????????? /// "InalidSynopsisDesity" ?????????? /// "ExtrackColorFeatureFailed" ????????????? /// "JpegEncodeFrameFailed" Jpeg??????? /// "JpegParamRestFailed" Jpeg????????????? /// "JpegDecodeFrameFailed" Jpeg??????? /// "RetrieveObjectIdInvalid" ???????ID???? /// "RetrieveImageInvalid" ??????????? /// "NetworkAnomaly" ??????????? /// "ObjectNumberLimit" ?????????????????? /// "CreateChannelFailed" ?????????? /// "ReadUGFileFailed" ???UG?????? /// "GetSynopsisInfoFailed" ??????????????? /// "ObjectNumberExceedLimit" ???????????????????? /// "RebuildBackgroudFailed" ?????????? /// "NotExistMiddleFile" ????????????? /// "NotExistSourceFile" ??????????? /// "NotDog" ???????? /// "NotEnoughFreeDisk" ???????? /// "StartDecodeFail" ?????????? /// "DecodeTimeOut" ????????? /// "EncodeTimeOut" ????????? /// "ExactTimeOut" ???????????? /// "ReadMidlleFileFail" ????????????? /// "ExactPictureFail" ???????? char szTaskName[DH_COMMON_STRING_64]; /// ??????????? }NET_VSTASK_INFO; ///@brief ?????????????????????? typedef struct tagNET_VSOBJECT_INFO { DWORD dwSize; /// ???????? DWORD dwTaskID; /// ??????????ID DH_MSG_OBJECT stuObjInfo; /// ????????????????stuObjInfoEx NET_FILEPATH_INFO stuFilePathInfo; /// ?????????????? DWORD dwFileLength; /// ?????????????????? int nDirection; /// ?????, ??????, ?????????[0,360], -1????????????, 12????????0, ??????? DH_MSG_OBJECT_EX2 stuObjInfoEx; /// ?????????? }NET_VSOBJECT_INFO; ///@brief --CLIENT_QueryVideoSynopsisInfo?????????????? typedef struct tagNET_OUT_QUERY_VIDEOSYNOPSIS { DWORD dwSize; /// ???????? DWORD dwTotalCount; /// ??????????????????????? DWORD dwFoundCount; /// ???????????????? void* pResult; /// ????????,????????? /// ???emQueryType==EM_VIDEOSYNOPSIS_TASK,???NET_VSTASK_INFO,?????sizeof(NET_VSTASK_INFO)*dwMaxCount /// ???emQueryType==EM_VIDEOSYNOPSIS_OBJ,???NET_VSOBJECT_INFO,?????sizeof(NET_VSOBJECT_INFO)*dwMaxCount DWORD dwMaxCount; /// ??????????????? }NET_OUT_QUERY_VIDEOSYNOPSIS; ///@brief CLIENT_FindSynopsisFile?????????? ///@brief ???????????????? typedef enum tagNET_EM_QUERY_SYNOPSIS_FILE { DH_FILE_QUERY_VIDEO, /// ????????????,??????????:NET_SYNOPSIS_QUERY_VIDEO_PARAM, ??????????:NET_SYNOPSISFILE_VIDEO_INFO DH_FILE_QUERY_SYNOPSISVIDEO, /// ?????????, ??????????:NET_QUERY_SYNOPSISVIDEO_PARAM,??????????:NET_QUERY_SYNOPSISVIDEO_INFO }NET_EM_QUERY_SYNOPSIS_FILE; ///@brief ??????? typedef struct __NET_SYNOPSIS_QUERY_VIDEO_PARAM { DWORD dwSize; DWORD dwQueryMask; /// ???????????, ???????????,??????????????????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szFilePath[DH_MAX_SYNOPSIS_QUERY_FILE_COUNT][MAX_PATH]; /// ????????????????? DWORD dwFileCount; /// ????????????? }NET_SYNOPSIS_QUERY_VIDEO_PARAM; ///@brief ?????????????? typedef struct { DWORD dwSize; int nTaskId; /// ????ID DWORD dwOutPutTypeMask; /// ???????????????,??1??.??????(??????);??2???????? char szCurrentState[DH_MAX_SYNOPSIS_STATE_NAME]; /// ???????? }NET_VIDEOSYNOPSIS_TASK_INFO; ///@brief DH_FILE_QUERY_VIDEO ?????????????? typedef struct { DWORD dwSize; unsigned int nchannelId; /// ????? char szFilePath[MAX_PATH]; /// ??????? unsigned int nFileLenth; /// ???????,????????,????????????????nFileLengthEx NET_TIME stuStarttime; /// ?????? NET_TIME stuEndtime; /// ??????? unsigned int nWorkDirSN; /// ????????? unsigned int nCluster; /// ??? BYTE bHint; /// ??????????? BYTE bDriveNo; /// ????? BYTE bReserved[18]; /// ??????? int nTaskInfoNum; /// ????????????????????? NET_VIDEOSYNOPSIS_TASK_INFO stuTaskInfo[16]; /// ?????????????? /*?????????????*/ char szSynopsisPicPath[DH_COMMON_STRING_512]; /// ?????????????????? ??????? /// ???HTTP URL??? /// ???FTP URL??? /// ???????????????? /// a)"C:/pic/1.jpg" /// b)"/mnt///2010/8/11/dav/15:40:50.jpg" int nSynopsisMaxTime; ///?????????????????,???? ?? int nSynopsisMinTime; ///??????????????????,???? ?? INT64 nFileLengthEx; ///?????????????????????????4G????????? }NET_SYNOPSISFILE_VIDEO_INFO; ///@brief DH_FILE_QUERY_SYNOPSISVIDEO ???????????????? typedef struct __NET_QUERY_SYNOPSISVIDEO_PARAM { DWORD dwSize; int nTaskID; /// ????ID }NET_QUERY_SYNOPSISVIDEO_PARAM; ///@brief DH_FILE_QUERY_SYNOPSISVIDEO???????????? typedef struct __NET_QUERY_SYNOPSISVIDEO_INFO { DWORD dwSize; char szFilePath[MAX_PATH]; /// ??????? unsigned int nFileLenth; /// ???????,????????????????nFileLengthEx int nDurationTime; /// ???????,????s INT64 nFileLengthEx; /// ?????????????????????????4G????????? }NET_QUERY_SYNOPSISVIDEO_INFO; ///@brief CLIENT_FindSynopsisFile ?????? typedef struct tagNET_IN_FIND_SYNOPSISFILE { DWORD dwSize; NET_EM_QUERY_SYNOPSIS_FILE emQueryType; /// ??????? void* pQueryCondition; /// ???????,???????????? /// ??????????DH_FILE_QUERY_VIDEO,??????????:NET_SYNOPSIS_QUERY_VIDEO_PARAM,????????sizeof(NET_SYNOPSIS_QUERY_VIDEO_PARAM) /// ??????????DH_FILE_QUERY_SYNOPSISVIDEO,??????????:NET_QUERY_SYNOPSISVIDEO_PARAM,????????sizeof(NET_QUERY_SYNOPSISVIDEO_PARAM) int nWaitTime; /// ?????????,????ms }NET_IN_FIND_SYNOPSISFILE; ///@brief CLIENT_FindSynopsisFile ?????? typedef struct tagNET_OUT_FIND_SYNOPSISFILE { DWORD dwSize; LLONG lFindHandle; /// ?????? }NET_OUT_FIND_SYNOPSISFILE; ///@brief CLIENT_FindNextSynopsisFile ?????? typedef struct tagNET_IN_FINDNEXT_SYNOPSISFILE { DWORD dwSize; int nFileCount; /// ?????????????? NET_EM_QUERY_SYNOPSIS_FILE emQueryType; /// ??????? void* pSynopsisFileInfo; /// ????????????,??????????????????nMaxlen int nMaxlen; /// ?????????? int nWaitTime; /// ?????????,????ms }NET_IN_FINDNEXT_SYNOPSISFILE; ///@brief CLIENT_FindNextSynopsisFile ?????? typedef struct tagNET_OUT_FINDNEXT_SYNOPSISFILE { DWORD dwSize; int nRetFileCount; /// ?????????????????,?????dwSize == nBufLen typedef void (CALLBACK *fAddFileStateCB) (LLONG lLoginID, LLONG lAttachHandle, NET_CB_ADDFILESTATE* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttacAddFileState()?????????? typedef struct tagNET_IN_ADDFILE_STATE { DWORD dwSize; fAddFileStateCB cbAttachState; /// ???????????????? LDWORD dwUser; /// ??????? }NET_IN_ADDFILE_STATE; ///@brief CLIENT_AttacAddFileState()?????????? typedef struct tagNET_OUT_ADDFILE_STATE { DWORD dwSize; }NET_OUT_ADDFILE_STATE; ///////////////////////////////???????????????/////////////////////////////////////// ///@brief ??????????? typedef struct tagNET_UID_CHAR { char szUID[DH_MAX_PERSON_ID_LEN]; ///UID???? }NET_UID_CHAR; ///@brief ??????????? typedef struct tagNET_UUID_CHAR { char szUUID[64]; ///UUID???? }NET_UUID_CHAR; ///@brief CLIENT_OperateFaceRecognitionDB?????????? typedef struct __NET_IN_OPERATE_FACERECONGNITIONDB { DWORD dwSize; EM_OPERATE_FACERECONGNITIONDB_TYPE emOperateType; /// ???????? FACERECOGNITION_PERSON_INFO stPersonInfo; /// ?????? /*emOperateType?????????ET_FACERECONGNITIONDB_DELETE_BY_UID????,stPeronInfo???????*/ DWORD nUIDNum; ///UID???? NET_UID_CHAR *stuUIDs; ///???????????,?????????????,??????ID??? /// ????????????,?????sizeof(NET_UID_CHAR)*nUIDNum /* ???????????? */ char *pBuffer; /// ?????? int nBufferLen; /// ??????????? BOOL bUsePersonInfoEx; /// ???????????? FACERECOGNITION_PERSON_INFOEX stPersonInfoEx; /// ????????? /*emOperateType?????????NET_FACERECONGNITIONDB_DELETE_BY_UUID????,stPeronInfo???????*/ DWORD nUUIDNum; ///UUID???? NET_UUID_CHAR *stuUUIDs; ///???????????,??????????????????UID??? /// ????????????,?????sizeof(NET_UUID_CHAR)*nUUIDNum }NET_IN_OPERATE_FACERECONGNITIONDB; ///@brief ???????emOperateType?????????ET_FACERECONGNITIONDB_DELETE_BY_UID???? typedef enum tagEM_ERRORCODE_TYPE { EM_ERRORCODE_TYPE_UNKNOWN = -1, /// ??????? EM_ERRORCODE_TYPE_SUCCESS, /// ??? EM_ERRORCODE_TYPE_PERSON_NOT_EXIST, /// ????????? EM_ERRORCODE_TYPE_DATABASE_ERROR, /// ??????????? } EM_ERRORCODE_TYPE; ///@brief CLIENT_OperateFaceRecognitionDB?????????? typedef struct __NET_OUT_OPERATE_FACERECONGNITIONDB { DWORD dwSize; char szUID[DH_MAX_PERSON_ID_LEN]; /// ???????????, ?????????????NET_FACERECONGNITIONDB_ADD????? /*emOperateType?????????NET_FACERECONGNITIONDB_DELETE_BY_UID, NET_FACERECONGNITIONDB_DELETE_BY_UUID????*/ int nErrorCodeNum; /// ????????? EM_ERRORCODE_TYPE emErrorCodes[MAX_ERRORCODE_NUM]; /// ?????? /* emOperateType?????????NET_FACERECONGNITIONDB_DELETE_BY_UID, NET_FACERECONGNITIONDB_DELETE_BY_UUID????*/ }NET_OUT_OPERATE_FACERECONGNITIONDB; ///@brief ???????? typedef enum tagEM_FACE_APPEND_STATE { EM_FACE_APPEND_STATE_UNKNOWN, ///??? EM_FACE_APPEND_STATE_START, ///??????? EM_FACE_APPEND_STATE_RUN, ///??????? EM_FACE_APPEND_STATE_STOP, ///??????? EM_FACE_APPEND_STATE_CANCLE, ///??????? }EM_FACE_APPEND_STATE; ///@brief ?????? typedef struct tagNET_MULTI_APPEND_EXTENDED_INFO { UINT nToken; /// ?????????token? EM_FACE_APPEND_STATE emState; /// ??????? char szResvered[248]; /// ??????? }NET_MULTI_APPEND_EXTENDED_INFO; ////@brief CLIENT_BatchAppendFaceRecognition ?????????? typedef struct tagNET_IN_BATCH_APPEND_FACERECONGNITION { DWORD dwSize; /// ??????? UINT nPersonNum; /// ??????????????? FACERECOGNITION_PERSON_INFOEX *pstPersonInfo; /// ?????????????????????????nPersonNum * sizeof(FACERECOGNITION_PERSON_INFOEX) /* ???????????? */ char *pBuffer; /// ?????? UINT nBufferLen; /// ??????????? BYTE bReserved[4]; /// ?????? NET_MULTI_APPEND_EXTENDED_INFO stuInfo; /// ?????? } NET_IN_BATCH_APPEND_FACERECONGNITION; ///@brief ????????????????? typedef struct tagNET_BATCH_APPEND_PERSON_RESULT { UINT nUID; /// ???UID DWORD dwErrorCode; /// ????????? char szUID2[64]; /// ???????UID, ????UIDType???UID?????? char szErrorMsg[128]; /// ?????????????????????????? UINT nErrorCode; /// ???????????? BYTE bReserved[316]; /// ??????? } NET_BATCH_APPEND_PERSON_RESULT; ///@brief CLIENT_BatchAppendFaceRecognition ?????????? typedef struct tagNET_OUT_BATCH_APPEND_FACERECONGNITION { DWORD dwSize; /// ??????? UINT nResultNum; /// ???????????????????????????????NET_IN_BATCH_APPEND_FACERECONGNITION????nPersonNum??? NET_BATCH_APPEND_PERSON_RESULT *pstResultInfo; /// ????????????? UINT nUIDType; /// ???NET_BATCH_APPEND_PERSON_RESULT????UID??????????????????????0?????UID?????????1?????UID2??? } NET_OUT_BATCH_APPEND_FACERECONGNITION; ///@brief ??????????? typedef enum tagEM_FINDPIC_QUERY_MODE { EM_FINDPIC_QUERY_UNKNOWN, /// ??? EM_FINDPIC_QUERY_PASSIVE, /// ??????? EM_FINDPIC_QUERY_ACTIVE, /// ???????? } EM_FINDPIC_QUERY_MODE; ///@brief ????????????????? typedef enum tagEM_FINDPIC_QUERY_ORDERED { EM_FINDPIC_QUERY_BY_SIMILARITY, /// ???????????? EM_FINDPIC_QUERY_BY_TIME_FORWARD, /// ????????? EM_FINDPIC_QUERY_BY_TIME_REVERSE, /// ??????? } EM_FINDPIC_QUERY_ORDERED; ///@brief ????????? typedef struct __NET_FACE_MATCH_OPTIONS { DWORD dwSize; unsigned int nMatchImportant; /// ????????? 1~10,??????????,(????????????????????????) EM_FACE_COMPARE_MODE emMode; /// ???????,???EM_FACE_COMPARE_MODE int nAreaNum; /// ?????????? EM_FACE_AREA_TYPE szAreas[MAX_FACE_AREA_NUM]; /// ??????????,emMode?NET_FACE_COMPARE_MODE_AREA????? int nAccuracy; /// ????(??1~10,?????????,????????,?????????????????1 ?????????????,?????10????????????? ???????????????) int nSimilarity; /// ?????(?????????????????;??????,1~100) int nMaxCandidate; /// ??????????????(????????????????,????????????????????) EM_FINDPIC_QUERY_MODE emQueryMode; /// ??????????? EM_FINDPIC_QUERY_ORDERED emOrdered; /// ????????????????? }NET_FACE_MATCH_OPTIONS; ///@brief ??????????? typedef struct __NET_FACE_FILTER_CONDTION { DWORD dwSize; NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? char szMachineAddress[MAX_PATH]; /// ???,????????? int nRangeNum; /// ??????????? BYTE szRange[MAX_FACE_DB_NUM]; /// ??????????????,??? EM_FACE_DB_TYPE EM_FACERECOGNITION_FACE_TYPE emFaceType; /// ????????????,??? EM_FACERECOGNITION int nGroupIdNum; /// ??????? char szGroupId[MAX_GOURP_NUM][DH_COMMON_STRING_64]; /// ?????ID NET_TIME stBirthdayRangeStart; /// ?????????? NET_TIME stBirthdayRangeEnd; /// ?????????? BYTE byAge[MAX_AGE_NUM]; /// ??????????byAge[0]=0??byAge[1]=0?????????????? BYTE byReserved[2]; /// ?????????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion[MAX_EMOTION_NUM]; /// ???????? int nEmotionNum; /// ????????????? int nUIDNum; /// ??????????? char szUIDs[64][32]; /// ????????????? int nUUIDNum; /// ??????????????? char szUUIDs[64][32]; /// ???????????????????????faceRecognitionServer.getCaps????????????????????SupportIDFromServer????true????? BOOL bIsUsingRealUTCTime; /// ??????UTC???????????????? NET_TIME stuStartTimeRealUTC; /// ??????UTC??????? NET_TIME stuEndTimeRealUTC; /// ???????UTC??????????????StartTimeRealUTC?????? BOOL bIsUsingRegisterStorageTime; /// ?????????????????????????? NET_TIME stuStartRegisterStorageTime; /// ???????????????? NET_TIME stuEndRegisterStorageTime; /// ?????????????????? BOOL bIsUsingModifyTime; /// ????????????????????????????? NET_TIME stuStartModifyTime; /// ????????????????? NET_TIME stuEndModifyTime; /// ?????????????????? }NET_FACE_FILTER_CONDTION; #define MAX_SMALLPIC_NUM 32 /// ?????????? ///@brief CLIENT_StartFindFaceRecognition?????????? typedef struct __NET_IN_STARTFIND_FACERECONGNITION { DWORD dwSize; BOOL bPersonEnable; /// ???????????????????? FACERECOGNITION_PERSON_INFO stPerson; /// ????????????? NET_FACE_MATCH_OPTIONS stMatchOptions; /// ????????? NET_FACE_FILTER_CONDTION stFilterInfo; /// ??????????? /* ???????????? */ char *pBuffer; /// ?????? int nBufferLen; /// ??????????? int nChannelID; /// ????? BOOL bPersonExEnable; /// ????????????????????, ???????????? FACERECOGNITION_PERSON_INFOEX stPersonInfoEx; /// ????????? int nSmallPicIDNum; /// ???ID???? int nSmallPicID[MAX_SMALLPIC_NUM]; /// ???ID EM_OBJECT_TYPE emObjectType; /// ????????????? char szChannel[DH_COMMON_STRING_32]; /// ????? }NET_IN_STARTFIND_FACERECONGNITION; ///@brief CLIENT_StartFindFaceRecognition?????????? typedef struct __NET_OUT_STARTFIND_FACERECONGNITION { DWORD dwSize; int nTotalCount; /// ?????????????????????? /// -1???????????????,?????? /// ???CLIENT_AttachFaceFindState????? LLONG lFindHandle; /// ?????? int nToken; /// ????????????? }NET_OUT_STARTFIND_FACERECONGNITION; ///@brief CLIENT_StartMultiFindFaceRecognition ?????????? typedef struct tagNET_IN_STARTMULTIFIND_FACERECONGNITION { DWORD dwSize; int* pChannelID; /// ????? int nChannelCount; /// ?????????? BOOL bPersonEnable; /// ???????????????????? FACERECOGNITION_PERSON_INFO stPerson; /// ????????????? NET_FACE_MATCH_OPTIONS stMatchOptions; /// ????????? NET_FACE_FILTER_CONDTION stFilterInfo; /// ??????????? /* ???????????? */ char *pBuffer; /// ?????? int nBufferLen; /// ??????????? BOOL bPersonExEnable; /// ????????????????????, ?????????????????? FACERECOGNITION_PERSON_INFOEX stPersonInfoEx; /// ????????? EM_OBJECT_TYPE emObjectType; /// ????????????? int nChannelNum; /// ??????????? char szChannelString[512][32]; /// ????? int nProcessType; /// ??????????, -1: ???, 0: ?????????, 1: SMD???????????? BOOL bIsUsingTaskID; /// ??????????TaskID??? int nTaskIDNum; /// ?????TaskID???????????? UINT nTaskID[128]; /// ?????TaskID, bIsUsingTaskID?TRUE,nTaskIDNum?0????????????????? }NET_IN_STARTMULTIFIND_FACERECONGNITION; ///@brief CLIENT_StartMultiFindFaceRecognition ?????????? typedef struct tagNET_OUT_STARTMULTIFIND_FACERECONGNITION { DWORD dwSize; int nTotalCount; /// ?????????????????????? /// -1???????????????,?????? /// ???CLIENT_AttachFaceFindState????? LLONG lFindHandle; /// ?????? int nToken; /// ????????????? }NET_OUT_STARTMULTIFIND_FACERECONGNITION; ///@brief CLIENT_StartMultiPersonFindFaceR ?????????? typedef struct tagNET_IN_STARTMULTIPERSONFIND_FACER { DWORD dwSize; /// ??????? NET_FACE_FILTER_CONDTION stFilterInfo; /// ??????????? int* pChannelID; /// ??????????????szRange?NET_FACE_DB_TYPE_HISTORY????,?????????? int nChannelCount; /// ?????????? int nTaskIdCount; /// ????ID???? int* pTaskId; /// ????ID??????????szRange?NET_FACE_DB_TYPE_HISTORY????????channel??????????????????? FACERECOGNITION_PERSON_INFOEX stPerson; /// ?????????????????smallID???? NET_FACE_MATCH_OPTIONS stMatchOptions; /// ????????? int nSmallPicIDNum; /// ???ID???? int nSmallPicID[32]; /// ???ID EM_OBJECT_TYPE emObjectType; /// ????????????? /* ???????????? */ int nBufferLen; /// ??????????? char *pBuffer; /// ?????? }NET_IN_STARTMULTIPERSONFIND_FACER; ///@brief CLIENT_StartMultiPersonFindFaceR ?????????? typedef struct tagNET_OUT_STARTMULTIPERSONFIND_FACER { DWORD dwSize; /// ??????? int nTotalCount; /// ?????????????????????? /// -1???????????????,?????? /// ???CLIENT_AttachFaceFindState????? LLONG lFindHandle; /// ?????? UINT nToken; /// ????????????? }NET_OUT_STARTMULTIPERSONFIND_FACER; ///@brief CLIENT_FaceRServerGetDetectToken ?????????? typedef struct tagNET_IN_FACERSERVER_GETDETEVTTOKEN { DWORD dwSize; /// ??????? }NET_IN_FACERSERVER_GETDETEVTTOKEN; ///@brief CLIENT_FaceRServerGetDetectToken ?????????? typedef struct tagNET_OUT_FACERSERVER_GETDETEVTTOKEN { DWORD dwSize; /// ??????? UINT nToken; /// ????????????? }NET_OUT_FACERSERVER_GETDETEVTTOKEN; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ?????????? ///@param[out]pOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FaceRServerGetDetectToken(LLONG lLoginID, NET_IN_FACERSERVER_GETDETEVTTOKEN *pInParam, NET_OUT_FACERSERVER_GETDETEVTTOKEN *pOutParam, int nWaitTime); ///@brief CLIENT_StartMultiFindFaceRecognitionRecord ???????(????????????????????) typedef struct tagNET_IN_STARTMULTIFIND_FACERECONGNITIONRECORD { DWORD dwSize; /// ??????? /* ??????????? */ NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? char szMachineAddress[MAX_PATH]; /// ???,????????? int nAlarmType; /// ?????????????,??? EM_FACERECOGNITION_ALARM_TYPE BOOL abPersonInfo; /// ????????????? FACERECOGNITION_PERSON_INFO stPersonInfo; /// ?????? int* pChannelID; /// ????? int nChannelCount; /// ??????? int nGroupIdNum; /// ??????? char szGroupId[MAX_GOURP_NUM][DH_COMMON_STRING_64]; /// ?????ID BOOL abPersonExInfo; /// ?????????????, ?????????????????? FACERECOGNITION_PERSON_INFOEX stPersonInfoEx; /// ????????? }NET_IN_STARTMULTIFIND_FACERECONGNITIONRECORD; ///@brief CLIENT_StartMultiFindFaceRecognitionRecord ???????(????????????????????) typedef struct tagNET_OUT_STARTMULTIFIND_FACERECONGNITIONRECORD { DWORD dwSize; int nTotalCount; /// ?????????????????????? /// -1???????????????,?????? /// ???CLIENT_AttachFaceFindState????? LLONG lFindHandle; /// ?????? int nToken; /// ????????????? }NET_OUT_STARTMULTIFIND_FACERECONGNITIONRECORD; ///@brief CLIENT_DoFindFaceRecognitionRecord ???????(????????????????????) typedef struct tagNET_IN_DOFIND_FACERECONGNITIONRECORD { DWORD dwSize; int nTotalCount; /// ??????????????? LLONG lFindHandle; /// ?????? int nBeginNumber; /// ???????????????beginNumber???????????count?????????? }NET_IN_DOFIND_FACERECONGNITIONRECORD; ///@brief ????????????? typedef struct tagNET_DOFIND_FACERECONGNITIONRECORD_INFO { BOOL bGlobalScenePic; /// ?????????? NET_PIC_INFO stGlobalScenePic; /// ???????????? DH_MSG_OBJECT stuObject; /// ????????????? NET_PIC_INFO stObjectPic; /// ????????????? int nCandidateNum; /// ????????????????????? CANDIDATE_INFO stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ???????????????????? NET_CANDIDAT_PIC_PATHS_EX stuCandidatesPic[DH_MAX_CANDIDATE_NUM]; /// ?????????????????????????? NET_TIME stTime; /// ??????????? char szAddress[MAX_PATH]; /// ??????????? int nChannelId; /// ????? BYTE bReserved[256]; /// ???? }NET_DOFIND_FACERECONGNITIONRECORD_INFO; ///@brief CLIENT_DoFindFaceRecognitionRecord ???????(????????????????????) typedef struct tagNET_OUT_DOFIND_FACERECONGNITIONRECORD { DWORD dwSize; NET_DOFIND_FACERECONGNITIONRECORD_INFO *stuResults; /// ??????????????????(???????????????????) int nResultNum; /// ?????????????????????? int nTotalCount; /// ????????? }NET_OUT_DOFIND_FACERECONGNITIONRECORD; ///@brief CLIENT_DoFindFaceRecognitionRecordEx ???????(????????????????????) typedef struct tagNET_IN_DOFIND_FACERECONGNITIONRECORD_EX { DWORD dwSize; int nTotalCount; /// ??????????????? LLONG lFindHandle; /// ?????? int nBeginNumber; /// ???????????????beginNumber???????????count?????????? }NET_IN_DOFIND_FACERECONGNITIONRECORD_EX; ///@brief ???????????????? typedef struct tagNET_DOFIND_FACERECONGNITIONRECORD_INFO_EX { BOOL bGlobalScenePic; /// ?????????? NET_PIC_INFO stGlobalScenePic; /// ???????????? DH_MSG_OBJECT stuObject; /// ????????????? NET_PIC_INFO stObjectPic; /// ????????????? int nCandidateNum; /// ????????????????????? CANDIDATE_INFOEX stuCandidates[DH_MAX_CANDIDATE_NUM]; /// ???????????????????? NET_CANDIDAT_PIC_PATHS_EX stuCandidatesPic[DH_MAX_CANDIDATE_NUM]; /// ?????????????????????????? NET_TIME stTime; /// ??????????? char szAddress[MAX_PATH]; /// ??????????? int nChannelId; /// ????? BYTE bReserved[1024]; /// ???? }NET_DOFIND_FACERECONGNITIONRECORD_INFO_EX; ///@brief CLIENT_DoFindFaceRecognitionRecordEx ???????(????????????????????) typedef struct tagNET_OUT_DOFIND_FACERECONGNITIONRECORD_EX { DWORD dwSize; NET_DOFIND_FACERECONGNITIONRECORD_INFO_EX *pstResults; /// ??????????????????(???????????????????) int nMaxResultNum; /// ?????????????????????? int nRetResultNum; /// ????????? }NET_OUT_DOFIND_FACERECONGNITIONRECORD_EX; #define MAX_FIND_COUNT 20 ///@brief ???????????????? typedef enum tagEM_NEEDED_PIC_RETURN_TYPE { EM_NEEDED_PIC_TYPE_UNKOWN, /// ??????? EM_NEEDED_PIC_TYPE_HTTP_URL, /// ??????HTTP???? EM_NEEDED_PIC_TYPE_BINARY_DATA, /// ???????????????? EM_NEEDED_PIC_TYPE_HTTP_AND_BINARY, /// ??????????HTTP???? }EM_NEEDED_PIC_RETURN_TYPE; ///@brief CLIENT_DoFindFaceRecognition ?????????? typedef struct __NET_IN_DOFIND_FACERECONGNITION { DWORD dwSize; LLONG lFindHandle; /// ?????? int nBeginNum; /// ????????? int nCount; /// ??????????????? EM_NEEDED_PIC_RETURN_TYPE emDataType; /// ??????????????????? }NET_IN_DOFIND_FACERECONGNITION; ///@brief CLIENT_DoFindFaceRecognition?????????? typedef struct __NET_OUT_FINDNEXT_FACERECONGNITION { DWORD dwSize; int nCadidateNum; /// ??????????????????? CANDIDATE_INFO stCadidateInfo[MAX_FIND_COUNT]; /// ?????????? /* ???????????? */ char *pBuffer; /// ?????? int nBufferLen; /// ??????????? BOOL bUseCandidatesEx; /// ????????????????????, /// ???TRUE, ???????stuCandidatesEx, ??stuCandidates????, ?????? int nCadidateExNum; /// ??????????????????? CANDIDATE_INFOEX stuCandidatesEx[MAX_FIND_COUNT];/// ????????????????????, ??????????nCandidateNum }NET_OUT_DOFIND_FACERECONGNITION; ///@brief ????? typedef enum tagEM_GLASSES_STATE { EM_GLASSES_STATE_UNKNOWN, /// ??? EM_GLASSES_STATE_NO, /// ???? EM_GLASSES_STATE_WEAR, /// ?? } EM_GLASSES_STATE; ///@brief ??????????? typedef struct tagNET_HISTORY_PERSON_INFO { char szUID[DH_MAX_PERSON_ID_LEN]; /// ???????????,?????????????,??????ID??? /// ???,???????????? EM_SEX_TYPE emSexType; /// ??? UINT nAge; /// ????, 0?????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ???? EM_GLASSES_STATE emGlassesState; /// ????? EM_GLASSES_TYPE emGlassesType; /// ??????? char szReserved1[4]; EM_EYE_STATE_TYPE emEye; /// ????? EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_MASK_STATE_TYPE emMask; /// ?????? EM_BEARD_STATE_TYPE emBeard; /// ?????? int nAttractive; /// ?????, -1???????, 0?????????????1-100,??????????? UINT nFacePicNum; /// ?????? NET_FACE_IMAGE_INFO stuFacePicInfo[DH_MAX_PERSON_IMAGE_NUM]; /// ???????????????? BYTE bReserved[2048]; /// ???????? } NET_HISTORY_PERSON_INFO; ///@brief ??????????????????????????? typedef struct tagNET_HISTORY_ACTIVE_CANDIDATE { UINT nSimilarity; /// ????? int nChannelID; /// ???????? NET_HISTORY_PERSON_INFO stuHistoryPerson; /// ??????????? NET_TIME stuTime; /// ?????????????? NET_FACE_IMAGE_INFO stuSceneImage; /// ??????? char szChannelString[32]; /// ????? NET_TIME stuTimeRealUTC; /// ??????????????????(UTC?????) char szEventType[64]; // ??????? BYTE bReserved[1116]; /// ???????? } NET_HISTORY_ACTIVE_CANDIDATE; #define MAX_CANDIDATE_NUM 50 /// ????????????? ///@brief ???????????????????????? typedef struct tagNET_RESULT_OF_FINDHISTORY_BYPIC { UINT nSmallPicID; /// ???ID UINT nPictureID; /// ????ID UINT nCandidateNum; /// ?????????? NET_HISTORY_ACTIVE_CANDIDATE stuCandidateInfo[MAX_CANDIDATE_NUM]; /// ????????? BYTE bReserved[1024]; /// ???????? } NET_RESULT_OF_FINDHISTORY_BYPIC; #define MAX_FINDPERSON_RESULT_NUM 32 /// ??????????????????????? ///@brief ????????????????? typedef struct tagNET_CB_RESULT_OF_FIND_HISTORY_BYPIC { UINT nToken; /// ??????? UINT nProgress; /// ?????????? UINT nTotalCount; /// ???????????????? int nHistoryResultNum; /// ????????????????????? NET_RESULT_OF_FINDHISTORY_BYPIC stuHistoryResult[MAX_FINDPERSON_RESULT_NUM]; /// ???????????????????? BYTE bReserved[1024]; /// ???????? } NET_CB_RESULT_OF_FIND_HISTORY_BYPIC; ///@brief ?????????????????????????, lAttachHandle?CLIENT_AttachResultOfFindHistoryByPic???????? typedef void (CALLBACK *fResultOfFindHistory)(LLONG lAttachHandle, NET_CB_RESULT_OF_FIND_HISTORY_BYPIC* pstesult, const char *pBinBuf, int nBinBufLen, LDWORD dwUser); ///@brief CLIENT_AttachResultOfFindHistoryByPic?????????? typedef struct tagNET_IN_ATTACH_RESULT_FINDHISTORY_BYPIC { DWORD dwSize; /// ??????? UINT nToken; /// ???????, ??CLIENT_StartFindFaceRecognition???? fResultOfFindHistory cbResultOfFindHistory; /// ?????????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_RESULT_FINDHISTORY_BYPIC; ///@brief CLIENT_AttachResultOfFindHistoryByPic?????????? typedef struct tagNET_OUT_ATTACH_RESULT_FINDHISTORY_BYPIC { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_RESULT_FINDHISTORY_BYPIC; ///@brief ??????????????????????????????? typedef struct tagNET_HUMANHISTORY_CANDIDATE { UINT nSimilarity; /// ????? int nChannelID; /// ???????? NET_HISTORY_HUMAN_INFO stuHistoryHuman; /// ???????????? NET_TIME stuTime; /// ?????????????? NET_FACE_IMAGE_INFO stuSceneImage; /// ???????? NET_TIME stuTimeRealUTC; /// ??????????????????(UTC?????) BOOL bIsTimeRealUTCValid; /// stuTimeRealUTC??????? BYTE bReserved[720]; /// ???????? } NET_HUMANHISTORY_CANDIDATE; ///@brief ???????????????????????????? typedef struct tagNET_RESULT_OF_HUMANHISTORY_BYPIC { UINT nSmallPicID; /// ???ID UINT nPictureID; /// ????ID NET_HUMANHISTORY_CANDIDATE stuCandidateInfo[50]; /// ????????? UINT nCandidateNum; /// ?????????? BYTE bReserved[1028]; /// ???????? } NET_RESULT_OF_HUMANHISTORY_BYPIC; ///@brief ????????????????????? typedef struct tagNET_CB_RESULT_OF_HUMAN_HISTORY_BYPIC { UINT nToken; /// ??????? UINT nProgress; /// ?????????? UINT nTotalCount; /// ???????????????? int nHistoryResultNum; /// ????????????????????? NET_RESULT_OF_HUMANHISTORY_BYPIC stuHistoryResult[32]; /// ???????????????????? BYTE bReserved[1024]; /// ???????? } NET_CB_RESULT_OF_HUMAN_HISTORY_BYPIC; ///@brief ?????????????????????????????, lAttachHandle?CLIENT_AttachResultOfHumanHistoryByPic???????? typedef void (CALLBACK *fResultOfHumanHistory)(LLONG lAttachHandle, NET_CB_RESULT_OF_HUMAN_HISTORY_BYPIC* pstesult, const char *pBinBuf, int nBinBufLen, LDWORD dwUser); ///@brief CLIENT_AttachResultOfHumanHistoryByPic ?????????? typedef struct tagNET_IN_ATTACH_RESULT_HUMAN_HISTORY_BYPIC { DWORD dwSize; /// ??????? UINT nToken; /// ???????, ??CLIENT_StartFindFaceRecognition???? fResultOfHumanHistory cbResultOfHumanHistory; /// ?????????????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_RESULT_HUMAN_HISTORY_BYPIC; ///@brief CLIENT_AttachResultOfHumanHistoryByPic ?????????? typedef struct tagNET_OUT_ATTACH_RESULT_HUMAN_HISTORY_BYPIC { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_RESULT_HUMAN_HISTORY_BYPIC; ///@brief ????????? typedef struct tagNET_HISTORY_TRAFFIC_CAR_INFO { char szUID[64]; /// ??????????????? NET_RECT stuBoundingBox; /// ??????(8192?????) char szPlateNumber[32]; /// ??????? char szPlateType[32]; /// ???????? char szPlateColor[32]; /// ??????? char szVehicleColor[32]; /// ??????? char szCategory[32]; /// ???????? char szSpecialCar[32]; /// ??????? char szVehicleSign[64]; /// ??????? UINT nSubBrand; /// ????????? UINT nBrandYear; /// ??????? UINT nFurnitureCount; /// ??????? UINT nPendantCount; /// ??????? UINT nAnnualInspectionCount; /// ???????? int nAnnualInspectionShape; /// ???????, 0: ??? 1: ???? 2: ???? 3: ???? NET_SUNSHADE_STATE emSunShade; /// ????????????? NET_SUNSHADE_STATE emSubSeatSunShade; /// ????????????? UINT nCardCount; /// ??????? NET_SAFEBELT_STATE emSafeBelt; /// ?????????? int nCalling; /// ????????, 0: ??? 1: ?? 2: ?? int nPlayPhone; /// ??????????, 0: ??? 1: ?? 2: ?? int nSmoking; /// ????????, 0: ??? 1: ?? 2: ?? int nSubSeatPeople; /// ????????????, 0: ??? 1: ?? 2: ?? NET_SAFEBELT_STATE emSubSeatSafeBelt; /// ?????????? int nHoldBaby; /// ???????, 0: ??? 1: ?? 2: ?? int nSunroof; /// ???????, 0: ??? 1: ?? 2: ?? int nLuggageRack; /// ??????????, 0: ??? 1: ?? 2: ?? int nVehicleCollision; /// ????????????, 0: ??? 1: ?? 2: ?? int nVehiclePrint; /// ????????, 0: ??? 1: ?? 2: ?? int nBackupTire; /// ????????, 0: ??? 1: ?? 2: ?? int nTrunk; /// ??????, 0: ??? 1: ??? 2: ?? int nPlateAttribute; /// ??????????, 0: ??? 1: ???? 2: ???? 3: ???????/???? 4: ??????/???? int nMuskHide; /// ???????????, 0: ??? 1: ????? 2: ???????? 3: ????????? NET_PIC_INFO_EX stuImage; /// ??????????? int nPressParkingStatus; /// ?????????????, 0: ??? 1: ???????? 2: ?????? char szReserved[256]; /// ??????? } NET_HISTORY_TRAFFIC_CAR_INFO; ///@brief ??????????????????????????????? typedef struct tagNET_VEHICLEHISTORY_CANDIDATE { UINT nSimilarity; /// ????? int nChannelID; /// ???????? NET_HISTORY_TRAFFIC_CAR_INFO stuHistoryTrafficCar; /// ???????????? NET_TIME stuTime; /// ?????????????? NET_FACE_IMAGE_INFO stuSceneImage; /// ???????? NET_TIME stuTimeRealUTC; /// ??????????????????(UTC?????) BOOL bIsTimeRealUTCValid; /// stuTimeRealUTC??????? char szReserved[720]; /// ???????? } NET_VEHICLEHISTORY_CANDIDATE; ///@brief ???????????????????????????? typedef struct tagNET_RESULT_OF_VEHICLEHISTORY_BYPIC { UINT nSmallPicID; /// ???ID UINT nPictureID; /// ????ID NET_VEHICLEHISTORY_CANDIDATE stuCandidateInfo[50]; /// ????????? UINT nCandidateNum; /// ?????????? char szReserved[1028]; /// ???????? } NET_RESULT_OF_VEHICLEHISTORY_BYPIC; ///@brief ????????????????????? typedef struct tagNET_CB_RESULT_OF_VEHICLE_HISTORY_BYPIC { UINT nToken; /// ??????? UINT nProgress; /// ?????????? UINT nTotalCount; /// ???????????????? int nHistoryResultNum; /// ????????????????????? NET_RESULT_OF_VEHICLEHISTORY_BYPIC stuHistoryResult[32]; /// ???????????????????? char szReserved[1024]; /// ???????? } NET_CB_RESULT_OF_VEHICLE_HISTORY_BYPIC; ///@brief ????????????????????????????, lAttachHandle?CLIENT_AttachResultOfVehicleHistoryByPic???????? typedef void (CALLBACK *fResultOfVehicleHistory)(LLONG lAttachHandle, NET_CB_RESULT_OF_VEHICLE_HISTORY_BYPIC* pstuResult, const char *pBinBuf, int nBinBufLen, LDWORD dwUser); ///@brief CLIENT_AttachResultOfVehicleHistoryByPic ?????????? typedef struct tagNET_IN_ATTACH_RESULT_VEHICLE_HISTORY_BYPIC { DWORD dwSize; /// ??????? UINT nToken; /// ???????, ??CLIENT_StartFindFaceRecognition???? fResultOfVehicleHistory cbResultOfVehicleHistory; /// ?????????????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_RESULT_VEHICLE_HISTORY_BYPIC; ///@brief CLIENT_AttachResultOfVehicleHistoryByPic ?????????? typedef struct tagNET_OUT_ATTACH_RESULT_VEHICLE_HISTORY_BYPIC { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_RESULT_VEHICLE_HISTORY_BYPIC; ///@brief CLIENT_DetectFace?????????? typedef struct __NET_IN_DETECT_FACE { DWORD dwSize; DH_PIC_INFO stPicInfo; /// ?????? /* ???????????? */ char *pBuffer; /// ?????? int nBufferLen; /// ??????????? }NET_IN_DETECT_FACE; ///@brief CLIENT_DetectFace?????????? typedef struct __NET_OUT_DETECT_FACE { DWORD dwSize; DH_PIC_INFO *pPicInfo; /// ??????????????,???????????,?????sizeof(DH_PIC_INFO)*nMaxPicNum int nMaxPicNum; /// ??????????????? int nRetPicNum; /// ???????????????? /* ???????????? */ char *pBuffer; /// ??????,???????????,????????????????? int nBufferLen; /// ??????????? }NET_OUT_DETECT_FACE; ///@brief ??????????? typedef enum tagEM_OPERATE_FACERECONGNITION_GROUP_TYPE { NET_FACERECONGNITION_GROUP_UNKOWN, NET_FACERECONGNITION_GROUP_ADD, /// ???????????? NET_FACERECONGNITION_GROUP_MODIFY, /// ??????????? NET_FACERECONGNITION_GROUP_DELETE, /// ??????????? }EM_OPERATE_FACERECONGNITION_GROUP_TYPE; ///@brief ??????????????? typedef enum tagEM_PASSERBY_DB_OVERWRITE_TYPE { EM_OVERWRITE_TYPE_UNKNOWN = -1, /// ??? EM_OVERWRITE_TYPE_FULL_STOP, /// ???? EM_OVERWRITE_TYPE_FULL_COVERAGE, /// ?????? }EM_PASSERBY_DB_OVERWRITE_TYPE; ///@brief ??????????????? typedef enum tagEM_PASSERBY_DB_DUPLICATE_REMOVE_TYPE { EM_DUPLICATE_REMOVE_TYPE_UNKNOWN = -1, /// ??? EM_DUPLICATE_REMOVE_TYPE_ALL, /// ????????? EM_DUPLICATE_REMOVE_TYPE_TIME, /// ?????????? EM_DUPLICATE_REMOVE_TYPE_TIME_SLOT, /// ???????????? }EM_PASSERBY_DB_DUPLICATE_REMOVE_TYPE; ///@brief ???????????????(???) typedef struct tagPASSERBY_DB_DUPLICATE_REMOVE_CONFIG_INFO { BOOL bEnable; /// ???????TRUE???? FALSE???? EM_PASSERBY_DB_DUPLICATE_REMOVE_TYPE emDuplicateRemoveType; /// ??????????????? DH_TSECT stuTimeSection[8][6]; /// ???????(EM_DUPLICATE_REMOVE_TYPE ? EM_DUPLICATE_REMOVE_TYPE_TIME_SLOT????) DWORD dwInterval; /// ????????????????EM_DUPLICATE_REMOVE_TYPE ? EM_DUPLICATE_REMOVE_TYPE_TIME?????? BYTE byReserved1[4]; /// ?????? BYTE byReserved[256]; /// ?????? }PASSERBY_DB_DUPLICATE_REMOVE_CONFIG_INFO; ///@brief ????????????? typedef struct tagNET_PASSERBY_DB_CONFIG_INFO { DWORD dwCapacity; /// ?????????????? EM_PASSERBY_DB_OVERWRITE_TYPE emOverWriteType; /// ??????????????? PASSERBY_DB_DUPLICATE_REMOVE_CONFIG_INFO stuDuplicateRemoveConfigInfo; /// ???????????????(???) DWORD dwFileHoldTime; /// ???????????????????????0~31??????????????????????? 0?????????? BYTE byReserved1[4]; /// ?????? BYTE byReserved[256]; /// ?????? }NET_PASSERBY_DB_CONFIG_INFO; ///@brief ???????? typedef struct tagNET_FACERECONGNITION_GROUP_INFO { DWORD dwSize; EM_FACE_DB_TYPE emFaceDBType; /// ?????????,??? EM_FACE_DB_TYPE char szGroupId[DH_COMMON_STRING_64]; /// ?????ID,???????????? char szGroupName[DH_COMMON_STRING_128]; /// ????????? char szGroupRemarks[DH_COMMON_STRING_256]; /// ?????|???? int nGroupSize; /// ???????????? int nRetSimilarityCount; /// ???????????????????? int nSimilarity[MAX_SIMILARITY_COUNT]; /// ??????????????????????????????? int nRetChnCount; /// ??????????????? int nChannel[DH_MAX_CAMERA_CHANNEL_NUM]; /// ????????????????????? UINT nFeatureState[MAX_FEATURESTATE_NUM]; /// ?????n??????: /// [0]-??????????????????????????????? /// [1]-?????????????????????????????????????? /// [2]-????????????????????????????????????? /// [3]-????????????????????????????????????????????????? EM_REGISTER_DB_TYPE emRegisterDbType; /// ???????? BYTE byReserved1[4]; /// ?????? NET_PASSERBY_DB_CONFIG_INFO stuPasserbyDBConfig; /// ????????????? UINT nGroupSimilarity; /// ????????????????????????????????? UINT nMaskSimilarity; /// ?????????????????????0-100????????????? DWORD dwCapacity; /// ????????? int nOverWrite; /// ?????????????: 0:???, 1:????, 2:?????? }NET_FACERECONGNITION_GROUP_INFO; ///@brief ???????????? typedef struct tagNET_ADD_FACERECONGNITION_GROUP_INFO { DWORD dwSize; NET_FACERECONGNITION_GROUP_INFO stuGroupInfo; /// ???????? }NET_ADD_FACERECONGNITION_GROUP_INFO; ///@brief ??????????? typedef struct tagNET_DELETE_FACERECONGNITION_GROUP_INFO { DWORD dwSize; char szGroupId[DH_COMMON_STRING_64];/// ?????ID,???????????? }NET_DELETE_FACERECONGNITION_GROUP_INFO; ///@brief ??????????? typedef struct tagNET_MODIFY_FACERECONGNITION_GROUP_INFO { DWORD dwSize; NET_FACERECONGNITION_GROUP_INFO stuGroupInfo; /// ???????? }NET_MODIFY_FACERECONGNITION_GROUP_INFO; ///@brief CLIENT_OperateFaceRecognitionGroup?????????? typedef struct tagNET_IN_OPERATE_FACERECONGNITION_GROUP { DWORD dwSize; EM_OPERATE_FACERECONGNITION_GROUP_TYPE emOperateType; /// ???????? void *pOPerateInfo; /// ?????????,?????????????????????????????????????? /// ???????????NET_FACERECONGNITION_GROUP_ADD,????????NET_ADD_FACERECONGNITION_GROUP_INFO; /// ???????????NET_FACERECONGNITION_GROUP_MODIFY,????????NET_MODIFY_FACERECONGNITION_GROUP_INFO /// ???????????NET_FACERECONGNITION_GROUP_DELETE,????????NET_DELETE_FACERECONGNITION_GROUP_INFO }NET_IN_OPERATE_FACERECONGNITION_GROUP; ///@brief CLIENT_OperateFaceRecognitionGroup?????????? typedef struct tagNET_OUT_OPERATE_FACERECONGNITION_GROUP { DWORD dwSize; char szGroupId[DH_COMMON_STRING_64]; /// ??????????????ID,???????????? }NET_OUT_OPERATE_FACERECONGNITION_GROUP; /// ???????????????? #define MAX_FACE_RECOGNITION_SERVER_PERSON_TYPE 64 ///@brief CLIENT_GetFaceRecognitionPersonType?????????? typedef struct tagNET_IN_GET_FACERECOGNITION_PERSON_TYPE { DWORD dwSize; /// ??????? } NET_IN_GET_FACERECOGNITION_PERSON_TYPE; ///@brief CLIENT_GetFaceRecognitionPersonType?????????? typedef struct tagNET_OUT_GET_FACERECOGNITION_PERSON_TYPE { DWORD dwSize; /// ??????? char szPersonType[MAX_FACE_RECOGNITION_SERVER_PERSON_TYPE][DH_COMMON_STRING_16]; /// ??????? int nPersonTypeNum; /// ????????????????? BYTE byDefault[DH_COMMON_STRING_16]; /// ???????,??? EM_PERSON_TYPE int nDefaultNum; /// ???????????? } NET_OUT_GET_FACERECOGNITION_PERSON_TYPE; ///@brief CLIENT_GetDevCaps ?????????(NET_FACERECOGNITIONSE_CAPS) ??????? typedef struct tagNET_IN_FACERECOGNITIONSERVER_CAPSBILITYQUERY { DWORD dwSize; /// ??????? } NET_IN_FACERECOGNITIONSERVER_CAPSBILITYQUERY; ///@brief ????????? typedef struct tagNET_FACEBOXCOLOR_CAPS { BOOL bSupport; /// ?????????????????? NET_COLOR_RGBA stuDefaultColor; /// ?????? BYTE byReserved[1024]; /// ???? }NET_FACEBOXCOLOR_CAPS; ///@brief ???????????? typedef enum tagEM_SUPPORT_SEARCH_BY_PIC { EM_SUPPORT_SEARCH_BY_PIC_UNKNOWN, /// ???, IVSS, NVR, DVR???????????????????IPC-FR????? EM_SUPPORT_SEARCH_BY_PIC_UNSUPPORT, ///????? EM_SUPPORT_SEARCH_BY_PIC_SUPPORT, /// ??? } EM_SUPPORT_SEARCH_BY_PIC; ///@brief CLIENT_GetDevCaps ?????????(NET_FACERECOGNITIONSE_CAPS)??????? typedef struct tagNET_OUT_FACERECOGNITIONSERVER_CAPSBILITYQUERY { DWORD dwSize; /// ??????? BOOL bmultiFind; /// ?????????????? UINT nmaxFaceType; /// ?????????????????????????? NET_FACEBOXCOLOR_CAPS stuFaceBoxColor; /// ????????????? BOOL bAsynPush; /// ???????????????????? UINT nMaxGroupNum; /// ???????????, 0??????? UINT nMaxPersonNum; /// ????????????, 0??????? UINT nMultiAppendPicLength; /// ?????????????????????, ????KB EM_SUPPORT_SEARCH_BY_PIC emSupportSearchByPic; /// ???????????? DWORD dwSearchTypeMask; /// ?????????????????????, emSupportSearchByPic?EM_SUPPORT_SEARCH_BY_PIC_SUPPORT????? /// bit0:???, bit1:????, bit2:??????, bit3:??????? UINT nSinglePicMaxLength; /// ?????????????????????KB BOOL bPersonWithMultiFace; /// ????????????????????? BOOL bSupportIDFromServer; /// ?????????????GroupID?????UUID???????????????????? UINT nSupportSMDPicSearchMask; /// ??????SMD????????????????????????, bit0: ????, bit1: ????, bit2: ??????, bit3: ??????? int nSupportRealUTC; /// ????????????????????????UTC????? 0: ??????1: ??? UINT nDetectMethod; /// ???????????????????1-???detectMultiFace??0(?????????)-?????,????????? } NET_OUT_FACERECOGNITIONSERVER_CAPSBILITYQUERY; ///@brief ????????????? typedef enum tagEM_OPERATE_FACERECOGNITION_PERSON_TYPE { NET_PERSON_TYPE_UNKOWN, /// ??? NET_PERSON_TYPE_ADD, /// ???????????????? NET_PERSON_TYPE_MODIFY, /// ?????????? NET_PERSON_TYPE_DELETE, /// ?????????? } EM_OPERATE_FACERECOGNITION_PERSON_TYPE; ///@brief ?????????????? typedef struct tagNET_ADD_FACERECOGNITION_PERSON_TYPE_INFO { DWORD dwSize; /// ??????? char szType[DH_COMMON_STRING_16]; /// ??????? } NET_ADD_FACERECOGNITION_PERSON_TYPE_INFO; ///@brief ????????????? typedef struct tagNET_MODIFY_FACERECOGNITION_PERSON_TYPE_INFO { DWORD dwSize; /// ??????? char szType[DH_COMMON_STRING_16]; /// ??????????? char szNewType[DH_COMMON_STRING_16]; /// ?????????? } NET_MODIFY_FACERECOGNITION_PERSON_TYPE_INFO; ///@brief ????????????? typedef struct tagNET_DELETE_FACERECOGNITION_PERSON_TYPE_INFO { DWORD dwSize; /// ??????? char szType[DH_COMMON_STRING_16]; /// ??????? } NET_DELETE_FACERECOGNITION_PERSON_TYPE_INFO; ///@brief CLIENT_OperateFaceRecognitionPersonType?????????? typedef struct tagNET_IN_OPERATE_FACERECOGNITION_PERSON_TYPE { DWORD dwSize; /// ??????? EM_OPERATE_FACERECOGNITION_PERSON_TYPE emOperateType; /// ???????? void *pOPerateInfo; /// ?????????,?????????????????????????????????????? /// ???????????NET_PERSON_TYPE_ADD,????????NET_ADD_FACERECOGNITION_PERSON_TYPE_INFO; /// ???????????NET_PERSON_TYPE_MODIFY,????????NET_MODIFY_FACERECOGNITION_PERSON_TYPE_INFO /// ???????????NET_PERSON_TYPE_DELETE,????????NET_DELETE_FACERECOGNITION_PERSON_TYPE_INFO } NET_IN_OPERATE_FACERECOGNITION_PERSON_TYPE; ///@brief CLIENT_OperateFaceRecognitionPersonType?????????? (???????????????) typedef struct tagNET_OUT_OPERATE_FACERECOGNITION_PERSON_TYPE { DWORD dwSize; /// ??????? char szFailedCode[DH_COMMON_STRING_16]; /// ??????? } NET_OUT_OPERATE_FACERECOGNITION_PERSON_TYPE; ///@brief CLIENT_FindGroupInfo?????????? typedef struct tagNET_IN_FIND_GROUP_INFO { DWORD dwSize; char szGroupId[DH_COMMON_STRING_64];/// ?????ID,????????????,??????????????????? }NET_IN_FIND_GROUP_INFO; ///@brief CLIENT_FindGroupInfo?????????? typedef struct tagNET_OUT_FIND_GROUP_INFO { DWORD dwSize; NET_FACERECONGNITION_GROUP_INFO *pGroupInfos; /// ????????,???????????,?????sizeof(NET_FACERECONGNITION_GROUP_INFO)*nMaxGroupNum int nMaxGroupNum; /// ??????????????? int nRetGroupNum; /// ???????????????? }NET_OUT_FIND_GROUP_INFO; ///@brief CLIENT_SetGroupInfoForChannel?????????? typedef struct tagNET_IN_SET_GROUPINFO_FOR_CHANNEL { DWORD dwSize; int nChannelID; /// ????? int nGroupIdNum; /// ??????? char szGroupId[MAX_GOURP_NUM][DH_COMMON_STRING_64]; /// ?????ID, ??[""]?????????????????????????????????????? int nSimilaryNum; /// ????????????, ???????????? int nSimilary[MAX_GOURP_NUM]; /// ?????????????????, 0-100 }NET_IN_SET_GROUPINFO_FOR_CHANNEL; ///@brief CLIENT_SetGroupInfoForChannel?????????? typedef struct tagNET_OUT_SET_GROUPINFO_FOR_CHANNEL { DWORD dwSize; }NET_OUT_SET_GROUPINFO_FOR_CHANNEL; ///@brief CLIENT_GetGroupInfoForChannel?????????? typedef struct tagNET_IN_GET_GROUPINFO_FOR_CHANNEL { DWORD dwSize; int nChannelID; /// ????? }NET_IN_GET_GROUPINFO_FOR_CHANNEL; ///@brief CLIENT_GetGroupInfoForChannel?????????? typedef struct tagNET_OUT_GET_GROUPINFO_FOR_CHANNEL { DWORD dwSize; int nGroupIdNum; /// ??????? char szGroupId[MAX_GOURP_NUM][DH_COMMON_STRING_64]; /// ?????ID int nSimilaryNum; /// ????????????, ???????????? int nSimilary[MAX_GOURP_NUM]; /// ?????????????????, 0-100 }NET_OUT_GET_GROUPINFO_FOR_CHANNEL; ///@brief ?????????????????, lAttachHandle??CLIENT_AttachFaceFindState?????? typedef struct tagNET_CB_FACE_FIND_STATE { DWORD dwSize; int nToken; ///???????????????????ID int nProgress; ///????????????0-100,-1,??????token??????(????????????????????????) int nCurrentCount; ///????????????????????? }NET_CB_FACE_FIND_STATE; ///@brief ??????? typedef void (CALLBACK *fFaceFindState)(LLONG lLoginID, LLONG lAttachHandle, NET_CB_FACE_FIND_STATE* pstStates, int nStateNum, LDWORD dwUser); ///@brief CLIENT_AttachFaceFindState?????????? typedef struct tagNET_IN_FACE_FIND_STATE { DWORD dwSize; ///???????,???????? int nTokenNum; ///?????????,?0?,??????????????????? int *nTokens; ///???????,??????????????????sizeof(int)*nTokenNum fFaceFindState cbFaceFindState; ///??????? LDWORD dwUser; ///??????? }NET_IN_FACE_FIND_STATE; ///@brief CLIENT_AttachFaceFindState?????????? typedef struct tagNET_OUT_FACE_FIND_STATE { DWORD dwSize; }NET_OUT_FACE_FIND_STATE; ///@brief CLIENT_FaceRecognitionSetSearchImageInfo ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_SET_SEARCH_IMAGE_INFO { DWORD dwSize; int nChannel; /// ???????????? char szFilePath[DH_COMMON_STRING_256]; /// ?????????,????????? }NET_IN_FACE_RECOGNITION_SET_SEARCH_IMAGE_INFO; ///@brief CLIENT_FaceRecognitionSetSearchImageInfo ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_SET_SEARCH_IMAGE_INFO { DWORD dwSize; }NET_OUT_FACE_RECOGNITION_SET_SEARCH_IMAGE_INFO; ///@brief ?????????????? typedef struct tagNET_DISPOSITION_CHANNEL_INFO { int nChannelID; /// ???????? int nSimilary; /// ????????, 0-100 char szChannelCode[64]; /// ???????????????????????????????????? BYTE bReserved[192]; /// ???? } NET_DISPOSITION_CHANNEL_INFO; ///@brief CLIENT_FaceRecognitionPutDisposition ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_PUT_DISPOSITION_INFO { DWORD dwSize; char szGroupId[DH_COMMON_STRING_64]; /// ?????ID int nDispositionChnNum; /// ?????????????? NET_DISPOSITION_CHANNEL_INFO stuDispositionChnInfo[DH_MAX_CAMERA_CHANNEL_NUM]; /// ????????????? } NET_IN_FACE_RECOGNITION_PUT_DISPOSITION_INFO; ///@brief CLIENT_FaceRecognitionPutDisposition ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_PUT_DISPOSITION_INFO { DWORD dwSize; int nReportCnt; /// ????????????? BOOL bReport[DH_MAX_CAMERA_CHANNEL_NUM]; /// ?????????, TRUE?????, FALSE?????? } NET_OUT_FACE_RECOGNITION_PUT_DISPOSITION_INFO; ///@brief CLIENT_FaceRecognitionDelDisposition ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_DEL_DISPOSITION_INFO { DWORD dwSize; char szGroupId[DH_COMMON_STRING_64]; /// ?????ID int nDispositionChnNum; /// ?????????????? int nDispositionChn[DH_MAX_CAMERA_CHANNEL_NUM]; /// ?????????????? } NET_IN_FACE_RECOGNITION_DEL_DISPOSITION_INFO; ///@brief CLIENT_FaceRecognitionDelDisposition ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_DEL_DISPOSITION_INFO { DWORD dwSize; int nReportCnt; /// ????????????? BOOL bReport[DH_MAX_CAMERA_CHANNEL_NUM]; /// ?????????, TRUE??????, FALSE?????? } NET_OUT_FACE_RECOGNITION_DEL_DISPOSITION_INFO; #define MAX_BIG_PIC_NUM 50 /// ????????????????????? #define MAX_TOKEN_NUM 128 /// ????????????? ///@brief ??????? typedef enum tagEM_DETECT_OBJECT_TYPE { EM_DETECT_OBJECT_TYPE_UNKNOWN = 0, /// ??? EM_DETECT_OBJECT_TYPE_FACE, /// ??? EM_DETECT_OBJECT_TYPE_VEHICLE, /// ???? EM_DETECT_OBJECT_TYPE_STRUCTLIZE, /// ???? } EM_DETECT_OBJECT_TYPE; ///@brief ???????? typedef enum tagEM_DETECT_PROCESS_TYPE { EM_DETECT_PROCESS_TYPE_UNKNOWN = 0, /// ??????0???????????????????EM_DETECT_PROCESS_TYPE_DETECT??? EM_DETECT_PROCESS_TYPE_FEATURE, /// ??????? EM_DETECT_PROCESS_TYPE_ATTRIBUTE, /// ??????? EM_DETECT_PROCESS_TYPE_DETECT, /// ??? } EM_DETECT_PROCESS_TYPE; ///@brief ????????? typedef enum tagEM_COORDINATE_TYPE { EM_COORDINATE_TYPE_UNKNOWN = 0, /// ??? EM_COORDINATE_TYPE_ABSOLUTE, /// ???????? EM_COORDINATE_TYPE_8192, /// 8192???? } EM_COORDINATE_TYPE; ///@brief ??????(????????????) typedef struct tagNET_DETECT_BIG_PIC_INFO { int nPicID; /// ???ID DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? DWORD dwWidth; /// ??????, ????:???? DWORD dwHeight; /// ?????, ????:???? int nDetectRegionNum; /// ????????????? NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? BYTE bReserved[44]; /// ??????? }NET_DETECT_BIG_PIC_INFO; ///@brief ??????(????????????) typedef struct tagNET_DETECT_BIG_PIC_INFO_EX { int nPicID; /// ???ID DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? DWORD dwWidth; /// ??????, ????:???? DWORD dwHeight; /// ?????, ????:???? int nDetectRegionNum; /// ????????????? NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? char szRequestID[64]; /// ??????ID char szPath[256]; /// ???URL?????? EM_COORDINATE_TYPE emCoordinateType; /// ????????? EM_DETECT_OBJECT_TYPE emObjectType; /// ??????? UINT nTargetType; /// ?????????1???????,1??????2????????4???????????8????????????, 16?????????? int nProcessTypeNum; /// ??????????? EM_DETECT_PROCESS_TYPE emProcessType[8]; /// ???????? char* szData; /// ???????????????Base64???????? ??????????????????????????????? int nDataLen; /// ????????????? BYTE bReserved[1016]; /// ??????? }NET_DETECT_BIG_PIC_INFO_EX; ///@brief CLIENT_FaceRecognitionDetectMultiFace ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_DETECT_MULTI_FACE_INFO { DWORD dwSize; /// ????????? int nBigPicNum; /// ??????? NET_DETECT_BIG_PIC_INFO stuBigPicInfo[MAX_BIG_PIC_NUM]; /// ??????????????stuBigPicInfoEx?? /* ???????????? */ char *pBuffer; /// ?????? int nBufferLen; /// ??????????? EM_OBJECT_TYPE emDetectObjType; /// ??????? BOOL bBigPicInfoExEnable; /// stuBigPicInfoEx??????? int nBigPicNumEx; /// ??????? NET_DETECT_BIG_PIC_INFO_EX stuBigPicInfoEx[MAX_BIG_PIC_NUM]; /// ??????(???) UINT nToken; /// ???????,??????0 } NET_IN_FACE_RECOGNITION_DETECT_MULTI_FACE_INFO; ///@brief CLIENT_FaceRecognitionDetectMultiFace ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_DETECT_MULTI_FACE_INFO { DWORD dwSize; /// ????????? } NET_OUT_FACE_RECOGNITION_DETECT_MULTI_FACE_INFO; ///@brief ????????????? typedef struct tagNET_SMALL_PIC_INFO { int nSmallPicId; /// ???ID NET_RECT stuRect; /// ??????????????? EM_OBJECT_TYPE emDetectObjType; /// ??????? BYTE bReserved[124]; /// ??????? } NET_SMALL_PIC_INFO; ///@brief ?????????????????? typedef enum tagEM_MULTIFACE_DETECT_ERRCODE { EM_MULTIFACE_DETECT_UNKNOWN = -1, /// ??? EM_MULTIFACE_DETECT_SUCCESS, /// ??? EM_MULTIFACE_DETECT_DECODE_FAIL, /// ??????? EM_MULTIFACE_DETECT_NO_OBJECT, /// ???????????? } EM_MULTIFACE_DETECT_ERRCODE; ///@brief ??????????????? typedef struct tagNET_IMAGE_RELATION { int nBigPicId; /// ???ID int nSmallPicNum; /// ???????????? NET_SMALL_PIC_INFO stuSmallPicInfo[MAX_SMALLPIC_NUM]; /// ????????????? EM_MULTIFACE_DETECT_ERRCODE emDetectErrCode; /// ?????????????????? BYTE bReserved[124]; /// ??????? } NET_IMAGE_RELATION; ///@brief ?????????????????????? typedef struct tagNET_CB_MULTIFACE_DETECT_STATE { int nProgress; /// ?????? NET_IMAGE_RELATION stuImageRelation; /// ??????????????? BYTE byReserved[512]; ///??????? } NET_CB_MULTIFACE_DETECT_STATE; ///@brief ????????????????????????? typedef void (CALLBACK *fMultiFaceDetectState)(LLONG lAttachHandle, NET_CB_MULTIFACE_DETECT_STATE *pstStates, LDWORD dwUser); ///@brief ?????????????? typedef struct tagNET_IMAGE_RELATION_LIST { char* pszFeature; /// base64????? int nFeatureLen; /// base64????????? char szFeatureID[64]; /// ????ID NET_FACE_DATA stuFaceData; /// ??????? HUMAN_ATTRIBUTES_INFO stuHumanAttributes; /// ???????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? char szAlgorithmVersion[32]; /// ????????? char szVendor[32]; EM_OBJECT_TYPE emObjectType; /// ??????? DH_POINT stuRectPoint[2]; /// ???????? NET_HISTORY_TRAFFIC_CAR_INFO stuHistoryTrafficCar; /// ?????????? BYTE bReserved[1024]; /// ??????? } NET_IMAGE_RELATION_LIST; ///@brief ?????? typedef struct tagNET_IMAGE_RELATION_EX_IMAGEINFO { int nOffset; /// ??????????????????? int nLength; /// ??????,??????? char szReserved[16]; /// ?????? }NET_IMAGE_RELATION_EX_IMAGEINFO; ///@brief ??????????????? typedef struct tagNET_IMAGE_RELATION_EX { char szRequestID[64]; /// ????????ID int nBigPicId; /// ???ID int nSmallPicNum; /// ???????????? NET_SMALL_PIC_INFO stuSmallPicInfo[MAX_SMALLPIC_NUM]; /// ????????????? EM_MULTIFACE_DETECT_ERRCODE emDetectErrCode; /// ?????????????????? NET_IMAGE_RELATION_LIST stuImageRelation[32]; /// ???????????? int nstuImageRelationNum; /// ???????????????? UINT nToken; /// ??????? NET_IMAGE_RELATION_EX_IMAGEINFO stuImageInfo[32]; /// ?????? int nImageNum; /// ?????????? char* pData; /// ????????? BYTE bReserved[248]; /// ??????? } NET_IMAGE_RELATION_EX; ///@brief ?????????????????????? typedef struct tagNET_CB_MULTIFACE_DETECT_STATE_EX { int nProgress; /// ?????? NET_IMAGE_RELATION_EX stuImageRelation; /// ??????????????? BYTE byReserved[512]; /// ??????? } NET_CB_MULTIFACE_DETECT_STATE_EX; ///@brief ????????????????????????? typedef void (CALLBACK *fMultiFaceDetectStateEx)(LLONG lAttachHandle, NET_CB_MULTIFACE_DETECT_STATE_EX *pstStates, LDWORD dwUser); ///@brief CLIENT_AttachDetectMultiFaceState ?????????? typedef struct tagNET_IN_MULTIFACE_DETECT_STATE { DWORD dwSize; /// ???????? BYTE bReserved[4]; /// ?????????? fMultiFaceDetectState cbMultiFaceDetectState; ///??????? LDWORD dwUser; ///??????? fMultiFaceDetectStateEx cbMultiFaceDetectStateEx; /// ??????????????????? UINT nTokens[10]; /// ??????? int nTokensNum; /// ??????????, ???0??????????token?0????, ???-1??????????token } NET_IN_MULTIFACE_DETECT_STATE; ///@brief CLIENT_AttachDetectMultiFaceState ?????????? typedef struct tagNET_OUT_MULTIFACE_DETECT_STATE { DWORD dwSize; /// ???????? } NET_OUT_MULTIFACE_DETECT_STATE; ///@brief ????????? typedef struct tagNET_REABSTRACT_PERSON_INFO { char szUID[DH_MAX_PERSON_ID_LEN]; /// ??????????? BYTE bReserved[1024]; } NET_REABSTRACT_PERSON_INFO; ///@brief CLIENT_FaceRecognitionReAbstract ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_REABSTRACT_INFO { DWORD dwSize; /// ???????? int nPersonNum; /// ??????????????? NET_REABSTRACT_PERSON_INFO *pstReAbstractPersonInfo; /// ?????????????? } NET_IN_FACE_RECOGNITION_REABSTRACT_INFO; ///@brief CLIENT_FaceRecognitionReAbstract ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_REABSTRACT_INFO { DWORD dwSize; /// ???????? } NET_OUT_FACE_RECOGNITION_REABSTRACT_INFO; ///@brief CLIENT_FaceRecognitionGroupReAbstract ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_GROUP_REABSTRACT_INFO { DWORD dwSize; /// ???????? int nGroupNum; /// ???????? char szGroupId[MAX_GOURP_NUM][DH_COMMON_STRING_64]; /// ?????ID } NET_IN_FACE_RECOGNITION_GROUP_REABSTRACT_INFO; ///@brief CLIENT_FaceRecognitionGroupReAbstract ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_GROUP_REABSTRACT_INFO { DWORD dwSize; /// ???????? UINT nToken; /// ??????????????????????????? } NET_OUT_FACE_RECOGNITION_GROUP_REABSTRACT_INFO; ///@brief CLIENT_FaceRecognitionStopGroupReAbstract ?????????? typedef struct tagNET_IN_FACE_RECOGNITION_STOP_GROUP_REABSTRACT_INFO { DWORD dwSize; /// ???????? UINT nToken; /// ??????? } NET_IN_FACE_RECOGNITION_STOP_GROUP_REABSTRACT_INFO; ///@brief CLIENT_FaceRecognitionStopGroupReAbstract ?????????? typedef struct tagNET_OUT_FACE_RECOGNITION_STOP_GROUP_REABSTRACT_INFO { DWORD dwSize; /// ???????? } NET_OUT_FACE_RECOGNITION_STOP_GROUP_REABSTRACT_INFO; ///@brief CLIENT_GetFaceParam ?????????? typedef struct tagNET_IN_GET_FACE_PARAM { DWORD dwSize; /// ???????? int nChannel; /// ????? } NET_IN_GET_FACE_PARAM; ///@brief CLIENT_GetFaceParam ?????????? typedef struct tagNET_OUT_GET_FACE_PARAM { DWORD dwSize; /// ???????? int nRegMinQuality; /// ?????????, 1-100 UINT nMinFaceSize; /// ?????????????????, ??????????, ????????, ???0????????? unsigned short nConfidence; /// ????????????????, 1-100, ???0????????? unsigned short nAlignScore; /// ??????????????????, 1-100, ???0????????? short nRoll; /// ??????????? ??????, -90~90, ???0????????? short nPitch; /// ??????????? ??????, -90~90, ???0????????? short nYaw; /// ??????????? ?????, -90~90, ???0????????? BYTE reserved[2]; /// ??????? } NET_OUT_GET_FACE_PARAM; ///@brief CLIENT_SetFaceParam ?????????? typedef struct tagNET_IN_SET_FACE_PARAM { DWORD dwSize; /// ???????? int nChannel; /// ????? int nRegMinQuality; /// ?????????, 1-100 UINT nMinFaceSize; /// ?????????????????, ??????????, ????????, ???0????????? unsigned short nConfidence; /// ????????????????, 1-100, ???0????????? unsigned short nAlignScore; /// ??????????????????, 1-100, ???0????????? short nRoll; /// ??????????? ??????, -90~90, ???0????????? short nPitch; /// ??????????? ??????, -90~90, ???0????????? short nYaw; /// ??????????? ?????, -90~90, ???0????????? BYTE reserved[6]; /// ??????? } NET_IN_SET_FACE_PARAM; ///@brief CLIENT_SetFaceParam ?????????? typedef struct tagNET_OUT_SET_FACE_PARAM { DWORD dwSize; /// ???????? } NET_OUT_SET_FACE_PARAM; ///@brief ???????? typedef struct tagNET_PER_GROUP_INFO { UINT nPerGroupID; /// ??????? char szName[128]; /// ????????? DH_TSECT stuTimeSection[DH_N_SCHEDULE_TSECT][DH_N_REC_TSECT]; /// ?????7??????????7????8???????????????????6?????? int nChannelCount; /// ?????????????? UINT nPerChannel[600]; /// ?????????? char szComment[256]; /// ??? BYTE byReserved[256]; /// ??????? } NET_PER_GROUP_INFO; ///@brief ???????????? typedef enum tagNET_EM_OPERATE_ERROR_CODE { NET_EM_OPERATE_ERROR_CODE_UNKNOWN = -1, /// ??? NET_EM_OPERATE_ERROR_CODE_SUCCESS = 0, /// ??? NET_EM_OPERATE_ERROR_CODE_GROUP_NOT_EXIST = 1, /// ?????????? } NET_EM_OPERATE_ERROR_CODE; ///@brief ??????????? typedef enum tagNET_EM_MODIFY_ERROR_CODE { NET_EM_MODIFY_ERROR_CODE_UNKNOWN = -1, /// ??? NET_EM_MODIFY_ERROR_CODE_SUCCESS = 0, /// ??? NET_EM_MODIFY_ERROR_CODE_GROUP_NOT_EXIST = 1, /// ?????????? NET_EM_MODIFY_ERROR_CODE_UID_NOT_EXIST = 2, /// ???UID?????????? } NET_EM_MODIFY_ERROR_CODE; ///@brief ?????????? typedef enum tagNET_EM_PERMISSSION_OPERATE_TYPE { NET_EM_OPERATE_TYPE_UNKNOWN = -1, /// ??? NET_EM_OPERATE_TYPE_ADD = 0, /// ??????? NET_EM_OPERATE_TYPE_MODIFY = 1, /// ?????? NET_EM_OPERATE_TYPE_DELETE = 2, /// ?????? } NET_EM_PERMISSSION_OPERATE_TYPE; ///@brief CLIENT_OperatePerGroup ?????????? typedef struct tagNET_IN_OPERATE_PER_GROUP { DWORD dwSize; /// ??????? int nGroupCount; /// ??????????? NET_PER_GROUP_INFO stuGroupInfo[100]; /// ???????? NET_EM_PERMISSSION_OPERATE_TYPE emOperateType; /// ???????? } NET_IN_OPERATE_PER_GROUP; ///@brief CLIENT_OperatePerGroup ?????????? typedef struct tagNET_OUT_OPERATE_PER_GROUP { DWORD dwSize; /// ??????? int nGroupCount; /// ???????? int nPerGroupID[100]; /// ??????? int nErrCodeCount; /// ????????? NET_EM_OPERATE_ERROR_CODE emErrCode[100]; /// ?????? } NET_OUT_OPERATE_PER_GROUP; ///@brief ????????? typedef struct tagNET_PERMISSION_PERSON_INFO { UINT nUID; /// ?????UID int nGroupCount; /// ??????????? int nPerGroupID[100]; /// ????????????, ????0-99 BYTE byReserved[128]; /// ??????? } NET_PERMISSION_PERSON_INFO; ///@brief CLIENT_ModifyPermission ?????????? typedef struct tagNET_IN_MODIFY_PERMISSION { DWORD dwSize; /// ??????? int nPersonCount; /// ??????? NET_PERMISSION_PERSON_INFO stuPersonInfo[300]; /// ????????? } NET_IN_MODIFY_PERMISSION; ///@brief CLIENT_ModifyPermission ?????????? typedef struct tagNET_OUT_MODIFY_PERMISSION { DWORD dwSize; /// ??????? int nUIDCount; /// UID???? int nUID[300]; /// UID int nErrCodeCount; /// ????????? NET_EM_MODIFY_ERROR_CODE emErrCode[300]; /// ?????? } NET_OUT_MODIFY_PERMISSION; ///@brief ??????????????????????? typedef struct tagNET_STARTFIND_PERMISSION_CONDITION { UINT nUIDCount; /// ?????????????????0???????????????????????? UINT nUIDs[1024]; /// ????????????? UINT nGroupIDCount; /// ????????????0???????????????????????? UINT nGroupID[128]; /// ????????? char szReserved[2048]; /// ??????? }NET_STARTFIND_PERMISSION_CONDITION; ///@brief CLIENT_StartFindPermission ?????????? typedef struct tagNET_IN_STARTFIND_PERMISSION { DWORD dwSize; /// ??????? char szReserved[4]; /// ?????? NET_STARTFIND_PERMISSION_CONDITION stuPermissionCondition; /// ????????????????????????????????????????? }NET_IN_STARTFIND_PERMISSION; ///@brief CLIENT_StartFindPermission ?????????? typedef struct tagNET_OUT_STARTFIND_PERMISSION { DWORD dwSize; /// ??????? int nTotalCount; /// ??????????????????????? }NET_OUT_STARTFIND_PERMISSION; ///@brief ???????????????????? typedef struct tagNET_DOFIND_PERMISSION_CONDITION { UINT nBeginNumber; /// ???????????????nBeginNumber???????????nCount????????????????????CLIENT_StartFindPermission??????nTotalCount int nCount; /// ?????????????????????1024 char szReserved[128]; /// ??????? }NET_DOFIND_PERMISSION_CONDITION; ///@brief CLIENT_DoFindPermission ?????????? typedef struct tagNET_IN_DOFIND_PERMISSION { DWORD dwSize; /// ??????? char szReserved[4]; /// ?????? NET_DOFIND_PERMISSION_CONDITION stuPermissionCondition; /// ????????????????????????????????????????? }NET_IN_DOFIND_PERMISSION; ///@brief ????????? typedef struct tagNET_PERMISSION_CANDIDATES_INFO { UINT nUID; /// ???UID int nPerGroupIDCount; /// ?????????? UINT nPerGroupID[100]; /// ????????????0-99 char szReserved[1024]; /// ??????? }NET_PERMISSION_CANDIDATES_INFO; ///@brief CLIENT_DoFindPermission ?????????? typedef struct tagNET_OUT_DOFIND_PERMISSION { DWORD dwSize; /// ??????? int nCadidatesFound; /// ????????????????? NET_PERMISSION_CANDIDATES_INFO* pstCandidates; /// ?????????????????????1024, ??????????nCadidatesFound,???????????????,?????????????nMaxNum*sizeof(NET_PERMISSION_CANDIDATES_INFO) int nMaxNum; /// ?????????????? char szReserved[4]; /// ?????? }NET_OUT_DOFIND_PERMISSION; ///@brief CLIENT_GetFaceRecognitionAppendToken ?????????? typedef struct tagNET_IN_GET_FACE_RECOGNITION_APPEND_TOKEN { DWORD dwSize; /// ??????? }NET_IN_GET_FACE_RECOGNITION_APPEND_TOKEN; ///@brief CLIENT_GetFaceRecognitionAppendToken ?????????? typedef struct tagNET_OUT_GET_FACE_RECOGNITION_APPEND_TOKEN { DWORD dwSize; /// ??????? UINT nToken; /// ????????? }NET_OUT_GET_FACE_RECOGNITION_APPEND_TOKEN; ////////////////////////////// ?????? ///////////////////////////////// ///@brief fBurnCheckCallBack ???? typedef struct tagNET_CB_BURN_CHECK_STATE { DWORD dwSize; const char* szType; /// ??????? /// "Checking": ?????? /// "CheckResult": ?????? BOOL bCheckResult; /// ??????, ????"CheckResult", TRUE-???, FALSE-??? BYTE byProgress; /// ???????, ????"Checking", ????, 0~100 BYTE reserved[3]; } NET_CB_BURN_CHECK_STATE; ///@brief ????????????????, lAttachHandle??CLIENT_AttachBurnCheckState?????? typedef void (CALLBACK *fBurnCheckCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_CB_BURN_CHECK_STATE* pstState, void* reserved, LDWORD dwUser); ///@brief CLIENT_AttachBurnCheckState ???????????(?????????????) typedef struct tagNET_IN_ATTACH_BURN_CHECK { DWORD dwSize; fBurnCheckCallBack cbBurnCheck; /// ????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_BURN_CHECK; ///@brief CLIENT_AttachBurnCheckState ???????????(?????????????) typedef struct tagNET_OUT_ATTACH_BURN_CHECK { DWORD dwSize; } NET_OUT_ATTACH_BURN_CHECK; ////////////////////////////// ?????? ///////////////////////////////// ///@brief ?????? typedef struct tagNET_CB_CAMERASTATE { DWORD dwSize; int nChannel; /// ??? CONNECT_STATE emConnectState; /// ?????? }NET_CB_CAMERASTATE; ///@brief CLIENT_AttachCameraState()??????????, ???1??,pBuf->dwSize == nBufLen typedef void (CALLBACK *fCameraStateCallBack) (LLONG lLoginID, LLONG lAttachHandle, const NET_CB_CAMERASTATE *pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttachCameraState()??????? typedef struct tagNET_IN_CAMERASTATE { DWORD dwSize; int * pChannels; /// ?????????,?????????,???????-1,??????????? /// ??????????????????sizeof(int)*nChannels int nChannels; /// pChannels????????????????? fCameraStateCallBack cbCamera; /// ????????? LDWORD dwUser; /// ??????? }NET_IN_CAMERASTATE; ///@brief CLIENT_AttachCameraState()??????? typedef struct tagNET_OUT_CAMERASTATE { DWORD dwSize; int nObjectID; /// ????ID,???ID??????????????? }NET_OUT_CAMERASTATE; //////////////////////////////??????///////////////////////////////// ///@brief ?????????,?????????? typedef struct __NET_SNAP_COMMANDINFO { char szCardInfo[16]; /// ??????? char reserved[64]; /// ???? } NET_SNAP_COMMANDINFO, LPNET_SNAP_COMMANDINFO; ///@brief ????? typedef struct { int nChannelNum; /// ????? char szUseType[32]; /// ?????? DWORD dwStreamSize; /// ????????(??????kb/s) char reserved[32]; /// ???? } DHDEV_USE_CHANNEL_STATE; ///@brief ?????? typedef struct { char szUserName[32]; /// ????? char szUserGroup[32]; /// ????? NET_TIME time; /// ??????? int nOpenedChannelNum; /// ????????????? DHDEV_USE_CHANNEL_STATE channelInfo[DH_MAX_CHANNUM]; char szIpAddress[DH_MAX_IPADDR_LEN_EX]; /// ip??? char reserved[24]; } DHDEV_USER_NET_INFO; ///@brief ????????????? typedef struct { int nUserCount; /// ??????? DHDEV_USER_NET_INFO stuUserInfo[32]; char reserved[256]; }DHDEV_TOTAL_NET_STATE; ///@brief ?????? typedef struct { char szIpAddress[DH_MAX_IPADDR_LEN]; /// ip??? char szUserGroup[32]; /// ????? char szUserName[32]; /// ????? char reserved[64]; }DHDEV_USER_REJECT_INFO; ///@brief ?????? typedef struct { int nUserCount; /// ??????? DHDEV_USER_REJECT_INFO stuUserInfo[10]; char reserved[256]; }DHDEV_REJECT_USER; ///@brief ?????? typedef struct { char szIpAddress[DH_MAX_IPADDR_LEN]; /// ip??? char szUserGroup[32]; /// ????? char szUserName[32]; /// ????? int nForbiddenTime; /// ??????? char reserved[64]; }DHDEV_USER_SHIELD_INFO; ///@brief ??????? typedef struct { int nUserCount; /// ??????? DHDEV_USER_SHIELD_INFO stuUserInfo[10]; char reserved[256]; }DHDEV_SHIELD_USER; ///@brief ?????? typedef struct {/// ???????,?????? char chPreLogi; /// ???????????N??S??W??E,???????????????????? char chPreLati; /// ???????????N??S??W??E,???????????????????? BYTE reserved[6]; /// ???????,???? double dbLongitude; /// ???? double dbLatitude; /// ???? }DHDEV_LONGI_LATI; ///@brief ????????????? typedef struct { char szPhoneNum[DH_MAX_PHONE_NO_LEN]; /// ??????? NET_TIME stMsgTime; /// ?????????? char szMsgType[DH_MAX_MSGTYPE_LEN]; /// ???????????????-Navigation?? ?????--SMS?? char szSmsContext[DH_MAX_MSG_LEN]; /// ???????????? DHDEV_LONGI_LATI stLogiLati; /// ????????? unsigned int uFlag; /// 01?????????????????????? char szNavigationType[16]; /// TNC,???????????????????,TXZ,??????????????????? char szAddress[32]; /// ?????? char szNavigationMode[32]; /// ?????? ??Recommend???,Economical??????,Fastest ???Shortest ???? DHDEV_LONGI_LATI stPassLogiLati[5]; /// ????? DHDEV_LONGI_LATI stNoPassLogiLati[5]; /// ??????? BYTE reserved[256]; }DHDEV_NAVIGATION_SMSS; ///@brief ????????? typedef struct __DHDEV_WATERMAKE_CFG { DWORD dwSize; int nEnable; /// ??? int nStream; /// ????(1??n)0-???????? int nKey; /// ????????(1-????,2-??) char szLetterData[DH_MAX_WATERMAKE_LETTER]; /// ???? char szData[DH_MAX_WATERMAKE_DATA]; /// ?????? BYTE bReserved[512]; /// ???? } DHDEV_WATERMAKE_CFG; ///@brief ??????????????,????????????,????????????????????, ??????????, ?????, ?????. typedef struct { DWORD dwSize; DWORD dwLocalMask; /// ??????????????????? /// ???????????,?????????????,???????????????, /// ???????????????,???????????????,?????????????? DWORD dwMobileMask; /// ???????????? ?????????u???????? int RemoteType; /// ????????? 0: Ftp 1: Smb DWORD dwRemoteMask; /// ????????? ?????????u???????? DWORD dwRemoteSecondSelLocal; /// ???????????????? DWORD dwRemoteSecondSelMobile; /// ?????????????????? char SubRemotePath[MAX_PATH_STOR]; /// ?????, ?????????240 DWORD dwFunctionMask; /// ??????????,???????,bit0 = 1:???????????????????????? DWORD dwAutoSyncMask; /// ??????????;????????????????,????????????????????????????? BYTE bAutoSyncRange; /// ???????????????,????????????????????,??????????0:??????????? 1:1?????????? n:n?????????? char reserved[119]; } DH_STORAGE_STATION_CFG; #define MAX_ALARM_DECODER_NUM 16 ///@brief ?????????? typedef struct { DWORD dwAlarmDecoder; /// ??????????8???????????,??8?????????? BYTE bDecoderIndex; /// ?????????????????? BYTE bReserved[3]; } ALARM_DECODER; ///@brief ?????????????? typedef struct { int nAlarmDecoderNum; ALARM_DECODER stuAlarmDecoder[MAX_ALARM_DECODER_NUM]; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[32]; } ALARM_DECODER_ALARM; ///@brief DSP???? typedef struct { BOOL bError; ///0,DSP???? 1,DSP?? DWORD dwErrorMask; ///???????,??0??????????,0????????(???????????????????) ///bit DSP???? /// 1 DSP??????? /// 2 DSP???? /// 3 ??????? /// 4 ????????? /// 5 ??????????? /// 6 ?????I? DWORD dwDecChnnelMask; ///???????,??????????????,dwErrorMask?DSP????,???????,?????????,???????????????????? DWORD dwDecChnnelMask1; ///???????,33-64??????????????????, dwErrorMask?DSP????,???????,?????????,???????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[24]; }DSP_ALARM; ///@brief ??????????????? typedef struct { int nFDDINum; BYTE bAlarm[256]; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_FDDI_ALARM; #define ALARM_PTZ_LOCATION_INFO DH_PTZ_LOCATION_INFO ///@brief ?????????????? typedef struct { BOOL bEnable; /// ??????????? int Volume_min; /// ??????????? int Volume_max; /// ?????????? char reserved[128]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; DH_MSG_HANDLE struHandle; /// ??????? } DH_AUDIO_DETECT_INFO; ///@brief ?????????? typedef struct { DWORD dwSize; int AlarmNum; DH_AUDIO_DETECT_INFO AudioDetectAlarm[DH_MAX_AUDIO_IN_NUM]; char reserved[256]; } DH_AUDIO_DETECT_CFG; ///@brief ???????? typedef struct { BOOL bTourEnable; /// ?????? int nTourPeriod; /// ??????,??????, 5-300 DWORD dwChannelMask; /// ????????,?????????? char reserved[64]; }DH_VIDEOGROUP_CFG; ///@brief ?????????????????? typedef struct { DWORD dwSize; int nMatrixNum; /// ???????(????????????) DH_VIDEOGROUP_CFG struVideoGroup[DH_MATRIX_MAXOUT]; char reserved[32]; } DHDEV_VIDEO_MATRIX_CFG; ///@brief WEB???????? typedef struct { DWORD dwSize; BOOL bSnapEnable; /// ????? int iSnapInterval; /// ?????? char szHostIp[DH_MAX_IPADDR_LEN]; /// HTTP????IP WORD wHostPort; int iMsgInterval; /// ??????????? char szUrlState[DH_MAX_URL_LEN]; /// ????????URL char szUrlImage[DH_MAX_URL_LEN]; /// ?????Url char szDevId[DH_MAX_DEV_ID_LEN]; /// ??????web??? BYTE byReserved[2]; } DHDEV_URL_CFG; ///@brief OEM??? typedef struct { char szVendor[DH_MAX_STRING_LEN]; char szType[DH_MAX_STRING_LEN]; char reserved[128]; } DHDEV_OEM_INFO; ///@brief ???OSD???????? typedef struct { DWORD rgbaFrontground; /// ?????????????????,?????????????????? DWORD rgbaBackground; /// ?????????????????,?????????????????? RECT rcRelativePos; /// ????,?????????????????*8191 BOOL bPreviewBlend; /// ?????????? BOOL bEncodeBlend; /// ?????????? BYTE bReserved[4]; /// ???? } DH_DVR_VIDEO_WIDGET; ///@brief OSD??? typedef struct { DH_DVR_VIDEO_WIDGET StOSD_POS; /// OSD??????????????? char SzOSD_Name[DH_VIDEO_OSD_NAME_NUM]; /// OSD????????? }DH_DVR_VIDEOITEM; ///@brief ????????OSD??? typedef struct { DWORD dwSize; DH_DVR_VIDEOITEM StOSDTitleOpt [DH_VIDEO_CUSTOM_OSD_NUM]; /// ????????OSD??? BYTE bReserved[16]; /// ???? } DH_DVR_VIDEOOSD_CFG; ///@brief ????CDMA/GPRS??????? ///@brief ?????? typedef struct { BYTE bEnable; /// ???????,1?????????????,0??????????????? BYTE bBeginHour; BYTE bBeginMin; BYTE bBeginSec; BYTE bEndHour; BYTE bEndMin; BYTE bEndSec; BYTE bReserved; ///???? } DH_3G_TIMESECT, *LPDH_3G_TIMESECT; ///@brief ???? typedef struct { DWORD dwSize; BOOL bEnable; /// ???????????? DWORD dwTypeMask; /// ??????????????????;???????,?????;??????; /// ???????TD-SCDMA?????????????WCDMA????; /// ????????CDMA 1.x????;????????CDMA2000????;????????GPRS????; /// ????????EVDO????;???????WIFI DWORD dwNetType; /// ?????????????????,?EM_GPRSCDMA_NETWORK_TYPE? char szAPN[128]; /// ????????? char szDialNum[128]; /// ??????? char szUserName[128]; /// ????????? char szPWD[128]; /// ???????? /* ?????????????????? */ BOOL iAccessStat; /// ????????????? char szDevIP[16]; /// ??????????IP,?????, ????'\0'????????16byte char szSubNetMask [16]; /// ??????????????????,?????, ????'\0'????????16byte char szGateWay[16]; /// ??????????????,?????, ????'\0'????????16byte /* ?????????????????? */ int iKeepLive; /// ??????? DH_3G_TIMESECT stSect[DH_N_WEEKS][DH_N_TSECT]; /// 3G????????,???????????,????????????????????,??????? BYTE byActivate; /// ???????????????????? BYTE bySimStat; /// SIM(UIM)??:????1,??????0 (???????) ???Reserved??1????? char szIdentify[128]; /// ?????? bool bPPPEnable; /// PPP????,0-???ppp????,1-ppp???? BYTE bPPPState; /// PPP??????(???),????????EM_MOBILE_PPP_STATE BYTE bNetCardState; /// ??????????(???),????????EM_3GMOBILE_STATE char szPhyCardNo[32]; /// ???????? char Reserved[4]; /// ???????,??????? BYTE byPinShow; /// PIN????????(???), 0-?????, 1-???, 2-????? BYTE byPinEnable; /// PIN?????????(???), 0-?????, 1-??? BYTE byPinCount; /// PIN????????????(???), 0~3 /*-------------------------------???????????dwSize???????------------------------------------*/ char szPinNo[16]; /// PIN???, ????????????????? } DHDEV_CDMAGPRS_CFG; ///@brief ????????????? typedef struct { DWORD dwSize; int nType; /// 0:?????,1???????? int nValue; /// nType = 0?:????????,nType = 1?:????KB char Reserved[128]; /// ???????,??????? } DHDEV_RECORD_PACKET_CFG; ///@brief (????)??????????????? typedef struct __DEV_AUTOREGISTER_INFO { LONG lConnectionID; /// ????ID char szServerIp[DH_MAX_IPADDR_LEN]; /// ??????????????IP int nPort; /// ???????????????0- 65535 int nState; /// ????????????0?????????1-?????; 2-??????? char reserved[16]; } DEV_AUTOREGISTER_INFO; ///@brief ??????????????????????? typedef struct __DEV_SERVER_AUTOREGISTER { DWORD dwSize; int nRegisterSeverCount; /// ???????????????? DEV_AUTOREGISTER_INFO stuDevRegisterSeverInfo[DH_CONTROL_AUTO_REGISTER_NUM]; /// ????????????????? char reserved[256]; } DEV_SERVER_AUTOREGISTER, *LPDEV_SERVER_AUTOREGISTER; ///@brief ?????????????? typedef struct { DWORD dwSize; char szSourFile[MAX_PATH_STOR]; /// ???????? int nFileSize; /// ????????,??????????0,sdk???????????????. char szBurnFile[MAX_PATH_STOR]; /// ??????????? BYTE bReserved[64]; } DHDEV_BURNFILE_TRANS_CFG; ///@brief ?????????? typedef struct { char szFile[MAX_PATH_STOR]; /// ??????????? int nFileSize; /// ??????????? BYTE byChannelId; /// ????? BYTE byManufactryType; /// ????,???EM_IPC_TYPE BYTE byReserved[126]; /// ???? }DHDEV_UPGRADE_FILE_INFO; ///@brief ???/??????????? typedef struct { char szFile[MAX_PATH_STOR]; /// ???/??????????????? int nFileSize; /// ??????????? BYTE byFileType; /// ??????????,0-???????,1-???????? BYTE byAction; /// ????,0-????,1-??? BYTE byReserved[126]; /// ???? }DHDEV_BLACKWHITE_LIST_INFO; ///@brief ???/???????????? typedef struct { char szFile[MAX_PATH_STOR]; /// ???/??????????????????? BYTE byFileType; /// ??????????,0-???????,1-???????? BYTE byReserved[127]; /// ???? }DHDEV_LOAD_BLACKWHITE_LIST_INFO; ///@brief ????????EC_U????????????????? typedef struct { BOOL bEnable; /// ??? int nPort; /// ??? BYTE bReserved[64]; } DHDEV_OSD_ENABLE_CFG; ///@brief ???????????:??????????????? typedef struct { BOOL bAutoBootEnable; ///?????????? DWORD dwAutoBootTime; ///??????????????, ??????,??0????.[0,82800] BOOL bAutoShutDownEnable; ///????????? DWORD dwAutoShutDownTime; ///?????????????, ??????,??0????.[0,82800] DWORD dwShutDownDelayTime; ///?????????,??????. BYTE bEventNoDisk; ///1,(Ignore:????); 2,(Reboot:??????) BYTE bWifiEnable; ///????????????????. BYTE bUpperSpeedEnable; ///?????????????? BYTE bLowerSpeedEnable; ///????????????? DWORD dwUpperSpeedValue; ///???????????(1,1000).????/??? DWORD dwLowerSpeedValue; ///???????????(1,1000).????/??? DWORD dwUpperSpeedDelayTime; ///???????????? DWORD dwLowerSpeedDelayTime; ///??????????? DWORD dwAlarmMaskEnable; ///???/????????????????,0:???,1:??, ?????????????????????????0-N??? BOOL bSpeedOverAlarmRecordEnable; /// ????????????????? BOOL bSpeedLowAlarmRecordEnable; /// ????????????????? BYTE bReserved[480]; ///reserved byte. } DHDEV_ABOUT_VEHICLE_CFG; ///@brief atm:????????????????? typedef struct { DWORD dwDataSource; ///????, ??0:Net(????), ??1:Com(????), ??2:Com422(????422) char szProtocol[32][33]; ///????????,????32(?????????????). BYTE bReserved[256]; } DHDEV_ATM_OVERLAY_GENERAL; ///@brief atm:??????????? typedef struct { DWORD dwDataSource; /// 1:Net(????), 2:Com(????), 3:Com422(????422) char szProtocol[33]; /// ????????,??DHDEV_ATM_OVERLAY_GENERAL???? BYTE bReserved_1[3]; DWORD dwChannelMask; /// ??????????,???????? BYTE bMode; /// 1:Preview(???????), 2:Encode(???????), 3:Preview&Encode(???????????) BYTE bLocation; /// 1:LeftTop(????), 2:LeftBottom(????), 3:RightTop(????), 4:RightBottom(????) BYTE bReserved_3[2]; int nLatchTime; /// ?????????????,????????????????,0~65535s BYTE bReserved_4[3]; BYTE bRecordSrcKeyNum; /// ???????? int nRecordSrcKey[32]; /// ?????????????????????(??????????????????????) BYTE bReserved_2[120]; } DHDEV_ATM_OVERLAY_CONFIG; ///@brief atm:??????????? typedef struct { DWORD dwSize; /// ??????? DWORD dwDataSource; /// 1:Net(????), 2:Com(????), 3:Com422(????422) char szProtocol[33]; /// ????????, BYTE bReserved_1[3]; DWORD dwChannelMask[8]; /// ??????????,??????, dwChannelMask[0]???0-31???,????????? BYTE bMode; /// 1:Preview(???????), 2:Encode(???????), 3:Preview&Encode(???????????) BYTE bLocation; /// 1:LeftTop(????), 2:LeftBottom(????), 3:RightTop(????), 4:RightBottom(????) BYTE bReserved_3[2]; int nLatchTime; /// ?????????????,????????????????,0~65535s BYTE bReserved_4[3]; BYTE bRecordSrcKeyNum; /// ???????? int nRecordSrcKey[256]; /// ?????????????????????(??????????????????????) } DHDEV_ATM_OVERLAY_CONFIG_EX; ///@brief ??????????????? typedef struct tagNET_RADAR_CARSPEED_INFO { int nTriggerLower; /// ????????? ???? 1~255km/h int nTriggerUpper; /// ????????? ???? 1~255km/h int nLimitLower; /// ????????? ???? 5~255km/h int nLimitUpper; /// ????????? ???? 5~255km/h } NET_RADAR_CARSPEED_INFO; ///@brief ??????? typedef struct tagDEV_DAHUA_RADAR_CONFIG { int nAngle; /// ?????????????????????????????????? ???????????0~45 BOOL bLowSpeed; /// ?????????????? TRUE NET_RADAR_CARSPEED_INFO ??????????????? BOOL bSpeedForSize; /// ?????????????????? FALSE ???????????????stuSmallCarSpeed?????? NET_RADAR_CARSPEED_INFO stuSmallCarSpeed; /// ????????????bSpeedForSize ? TRUE ? nTriggerLower ?????????????????????????? NET_RADAR_CARSPEED_INFO stuMediumCarSpeed; /// ????????????bSpeedForSize ? TRUE ????????? nTriggerLower ?????????? NET_RADAR_CARSPEED_INFO stuBigCarSpeed; /// ??????????bSpeedForSize ? TRUE ????????? nTriggerLower ?????????? char szName[256]; /// ????????? int nSensitivity; /// ?????? ????0~5??0??? int nDetectMode; /// ???????????-1 ?????? 0 ??????? 1 ?????? 2 ???????? 3 ??????? 4 ?????? 5 ??????? BYTE bReserved[1024]; } DEV_DAHUA_RADAR_CONFIG; ///@brief ?????77Ghz??????????? typedef struct tagNET_STJ77D5_RADAR_CONFIG { UINT nLaneNumber; /// ????????, ????1~4 UINT nDetectMode; /// ????????, ??:17 ????, 18 ???, 19 ??? double dbHeight; /// ??????? ,0.01m/bit; ????0~25 double dbHorizonShift; /// ?????, 0.2m/bit; ????-25~25 UINT nLaneCount; /// ???????? double dbLaneWidth[4]; /// ????1-4????, 0.01m/bit; ????2~5???????????????1????, ??????? double dbStopLine; /// ???????, 0.1m/bit; ????20~60 UINT nSceneMode; /// ????????????, 0:???, 1:??????, 2:?????? double dbShiftAngle; /// ??????? ,0.1/bit; ????-12~12 double dbLengthwayShiftDistance; /// ???????????, 0.2m/bit; ????-25~25 double dbSensitive; /// ??????????, 0.1/bit; ????0~3 UINT nIDset; /// ID????; ????0~4 UINT nWorkMode; /// ????????, 0:?????? 1:?????? UINT nRadarFlowTime; /// ???????????????, ????:s UINT nRadarFlowSwitch; /// ??????????????, 0:???, 1:????, 2:??? UINT nNonMotorDiscern; /// ???????/?????????????, 0:???, 1:????, 2:??? int nVehicleDistinguish; /// ??????????;????-10~10, ???:?????????, ???:?????????? UINT nStopTargetDisappearTime; /// ???????????,1s/bit, 0:???, ??0?:????????????? UINT nStartLane; /// ?????????????, ??????: 0~7 UINT nRadarLanNumber; /// ?????????????, ??????:1~8 UINT nVirtualCoilTriggerCount; /// ??????????? UINT nVirtualCoilTrigger[4]; /// ??????????????: 1:????, 2:?????, 3:??????, 90:???,????? UINT nVirtualCoilDistanceCount; /// ??????????? double dbVirtualCoilDistance[4]; /// ??????????????(??????,y???????????), ????:m UINT nVirtualCoilLengthCount; /// ??????????? double dbVirtualCoilLength[4]; /// ???????????, ????:m double dbCameraToRoadEndDistance; /// ?????????????????????, ????:m, 0.1m/bit(???????????????,????0.1m) double dbCameraToStopLane; /// ????????????, ????:m, 0.1m/bit(???????????????,????0.1m) UINT nLaneDirection[4]; /// ???????? UINT nLaneDirectionCount; /// ???????? BYTE bReserved[1020]; }NET_STJ77D5_RADAR_CONFIG; ///@brief ??????? typedef struct tagDEV_RADAR_CONFIG { DWORD dwSize; BOOL bEnable; /// ????????? int nPort; /// ??????? DH_COMM_PROP stuCommAttr; /// ???????? int nAddress; /// ????????????????????????????????????????? int nPreSpeedWait; /// ?????????????????????????????? ???? (1 -- 5000ms) int nDelaySpeedWait; /// ?????????????????????????????? ???? (1 -- 5000ms) BOOL bDahuaRadarEnable; /// ????????????? DEV_DAHUA_RADAR_CONFIG stuDhRadarConfig; /// ?????????? BOOL bSTJ77D5RadarEnable; /// 77Ghz????????????????? NET_STJ77D5_RADAR_CONFIG stuSTJ77D5RadarConfig; /// 77Ghz??????????? }DEV_RADAR_CONFIG; ///@brief ???RFID?????? typedef struct tagNET_RADAR_RFIDCARD_CONFIG { char szCardID[24]; /// ???ID UINT nValidTime; /// ???????????utc???????????? UINT nInvalidTime; /// ???????????utc???????????? char byReserved[256]; /// ??????? }NET_RADAR_RFIDCARD_CONFIG; ///@brief ???RFID?????????? typedef struct tagNET_CFG_RADAR_RFIDCARD_INFO { DWORD dwSize; /// ??????? int nCardNum; /// RFID??????? NET_RADAR_RFIDCARD_CONFIG stuCardInfo[256]; /// RFID?????????? }NET_CFG_RADAR_RFIDCARD_INFO; ///@brief ??????????? typedef struct tagNET_REMOTE_CARD_INFO { BOOL bEnable; /// ?????????? char szCardID[24]; /// ???ID char szName[128]; /// ???????????? char szReserved[868]; /// ??????? }NET_REMOTE_CARD_INFO; ///@brief ???????RFID???????????? typedef struct tagNET_CFG_RADAR_REMOTE_CARD_INFO { DWORD dwSize; /// ??????? UINT nMode; /// ??????????, 0????????, 1????????? int nCardNum; /// ???????????? NET_REMOTE_CARD_INFO stuCardInfo[1024]; /// ??????????? }NET_CFG_RADAR_REMOTE_CARD_INFO; ///@brief RFID?????????? typedef struct tagNET_CFG_RADAR_RFID_READ_DISTANCE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// RFIDReadDistance??????????? int nDistance; /// ????????(????????????), ????100?????, ????:?? int nWidth; /// ????????(????????????), ????100?????, ????:?? }NET_CFG_RADAR_RFID_READ_DISTANCE_INFO; ///@brief ??????????????????????????? typedef struct tagNET_CFG_RADAR_STATIC_BACKGROUND_INFO { DWORD dwSize; /// ??????? int nValue; /// ?????????? }NET_CFG_RADAR_STATIC_BACKGROUND_INFO; ///@brief ??????? NET_EM_CFG_FIND_DEVICE_LIGHT, ??????????? typedef struct tagNET_CFG_FIND_DEVICE_LIGHT_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????? }NET_CFG_FIND_DEVICE_LIGHT_INFO; ///@brief ???????????????? typedef struct tagNET_EVENT_DELAY_INFO { char szCode[32]; /// ???????????? int nDelayTime; /// ??????????s char szReserved[252]; /// ?????? }NET_EVENT_DELAY_INFO; ///@brief ??????? NET_EM_CFG_EVENT_NOTIFICATION_DELAY, ????????????? typedef struct tagNET_CFG_EVENT_NOTIFICATION_DELAY_INFO { DWORD dwSize; /// ??????? int nEventDelayInfoNum; /// ???????????????????????????? NET_EVENT_DELAY_INFO stuEventDelayInfo[128]; /// ???????????????? }NET_CFG_EVENT_NOTIFICATION_DELAY_INFO; #define DH_MAX_BACKUPDEV_NUM 16 #define DH_MAX_BACKUP_NAME 32 ///@brief ??????????? typedef struct { int nBackupDevNum; /// ?????????????? char szBackupDevNames[DH_MAX_BACKUPDEV_NUM][DH_MAX_BACKUP_NAME]; /// ????????????? } DHDEV_BACKUP_LIST, *LPDHDEV_BACKUP_LIST; ///@brief ??????????????? typedef enum __BACKUP_TYPE { BT_DHFS = 0, /// ???????? BT_DISK, /// ?????? BT_CDRW /// ?????? } DHDEV_BACKUP_TYPE; ///@brief ?????????????? typedef enum __BACKUP_BUS { BB_USB = 0, /// usb??? BB_1394, /// 1394??? BB_IDE, /// ide??? BB_ESATA, /// esata??? } DHDEV_BACKUP_BUS; ///@brief ??????? typedef struct { char szName[32]; /// ????? BYTE byType; /// ???????????????? ??????BACKUP_TYPE BYTE byBus; /// ??????????????? ??????BACKUP_BUS UINT nCapability; /// ??????, ??kBytes????? UINT nRemain; /// ???????,??kBytes????? char szDirectory[128]; /// ????????? } DHDEV_BACKUP_INFO, *LPDHDEV_BACKUP_INFO; ///@brief ??????? typedef struct { char szName[32]; /// ????? UINT nCapability; /// ??????, ??kBytes????? UINT nRemain; /// ??????????????,??kBytes????? } DHDEV_BACKUP_FEEDBACK, *LPDHDEV_BACKUP_FEEDBACK; #define DH_MAX_BACKUPRECORD_NUM 1024 ///@brief ?????? typedef struct { char szDeviceName[DH_MAX_BACKUP_NAME]; ///??????????? int nRecordNum; ///?????????? NET_RECORDFILE_INFO stuRecordInfo[DH_MAX_BACKUPRECORD_NUM]; ///????????? } BACKUP_RECORD, *LPBACKUP_RECORD; ///@brief ?????????????? typedef struct { int iChannelID; /// ????? DH_RealPlayType realplayType; /// ??????? char reserve[32]; }DHDEV_IN_MULTIPLAY_PARAM; ///@brief ????????????? typedef struct { int iChannelID; /// ????? LLONG lRealHandle; /// ???????? char reserve[32]; }DHDEV_OUT_MULTIPLAY_PARAM; //////////////////////////////??????///////////////////////////////// ///@brief ?????????? ?? U??? typedef struct { BOOL bChnEn; char szChnId[DH_INTERVIDEO_UCOM_CHANID]; } DH_INTERVIDEO_UCOM_CHN_CFG; ///@brief ucom???? typedef struct { DWORD dwSize; BOOL bFuncEnable; /// ????????? BOOL bAliveEnable; /// ??????? DWORD dwAlivePeriod; /// ????????,??????,0-3600 char szServerIp[DH_MAX_IPADDR_LEN]; /// CMS??IP WORD wServerPort; /// CMS??Port char szRegPwd[DH_INTERVIDEO_UCOM_REGPSW]; /// ??????? char szDeviceId[DH_INTERVIDEO_UCOM_DEVID]; /// ???id char szUserName[DH_INTERVIDEO_UCOM_USERNAME]; char szPassWord[DH_INTERVIDEO_UCOM_USERPSW]; DH_INTERVIDEO_UCOM_CHN_CFG struChnInfo[DH_MAX_CHANNUM]; /// ???id,en } DHDEV_INTERVIDEO_UCOM_CFG; ///@brief ?????????? ?? ???????? typedef struct { DWORD dwSize; unsigned short usCompanyID[2]; /// ???ID,???,???????????????,????4??????,????????????? char szDeviceNO[32]; /// ????????????,?????,????'\0'????????32byte char szVSName[32]; /// ??????????,?????,????'\0'????????16byte char szVapPath[32]; /// VAP???? unsigned short usTcpPort; /// TCP???,???????? 1~65535 unsigned short usUdpPort; /// UDP???,???????? 1~65535 bool bCsEnable[4]; /// ??????????????,?????true???,false?????,????4??????,????????????? char szCsIP[16]; /// ?????????IP???,?????,????'\0'????????16byte unsigned short usCsPort[2]; /// ????????????,???????? 1~65535,????4??????,????????????? bool bHsEnable[4]; /// ???????????????,?????true???,false?????,????4??????,????????????? char szHsIP[16]; /// ??????????IP???,?????,????'\0'????????16byte unsigned short usHsPort[2]; /// ?????????????,???????? 1~65535,????4??????,????????????? int iHsIntervalTime; /// ?????????????????,???(????:??) bool bRsEnable[4]; /// ?????????????,?????true???,false?????,????4??????,????????????? char szRsIP[16]; /// ????????IP???,?????,????'\0'????????16byte unsigned short usRsPort[2]; /// ???????????,???????? 1~65535,????4??????,????????????? int iRsAgedTime; /// ???????????????,???(????:???) char szAuthorizeServerIp[16]; /// ?????????IP unsigned short usAuthorizePort[2]; /// ????????????,????4??????,????????????? char szAuthorizeUsername[32]; /// ???????????? char szAuthorizePassword[36]; /// ????????????? char szIpACS[16]; /// ACS(???????????) IP unsigned short usPortACS[2]; /// ACS Port,????4??????,????????????? char szUsernameACS[32]; /// ACS????? char szPasswordACS[36]; /// ACS???? bool bVideoMonitorEnabled[4]; /// DVS??????????????????????,?????true???,false????? int iVideoMonitorInterval; /// ???????(????) char szCoordinateGPS[64]; /// GPS???? char szPosition[32]; /// ??????? char szConnPass[36]; /// ????????? } DHDEV_INTERVIDEO_BELL_CFG; ///@brief ?????????? ?? ??? typedef struct { DWORD dwSize; unsigned short nSevPort; /// ?????????,???,???1~65535 char szSevIp[DH_INTERVIDEO_NSS_IP]; /// ??????IP???,?????,????'\0'????????32byte char szDevSerial[DH_INTERVIDEO_NSS_SERIAL]; /// ????????????,?????,????'\0'????????32byte char szUserName[DH_INTERVIDEO_NSS_USER]; char szPwd[DH_INTERVIDEO_NSS_PWD]; } DHDEV_INTERVIDEO_NSS_CFG; ///@brief ?????????? ?? ??????? typedef struct { char szDevSerial[DH_INTERVIDEO_AMP_DEVICESERIAL]; ///????????????,????????????????,????????? char szDevName[DH_INTERVIDEO_AMP_DEVICENAME]; ///??????????,????????????,????????? char szRegUserName[DH_INTERVIDEO_AMP_USER]; ///????????????? char szRegPwd[DH_INTERVIDEO_AMP_PWD]; ///???????????? BYTE bReserved[128]; } DHDEV_INTERVIDEO_AMP_CFG; ////////////////////////////HDVR???////////////////////////////////// ///@brief ??????????????? typedef struct { /* ??????????,????????????????,???? * 0x00000001 - ??????? * 0x00000002 - ??????? * 0x00000004 - ??????? * 0x00000008 - ??????? * 0x00000010 - ??????? * 0x00000020 - ??????? * 0x00000040 - ??????? * 0x00000080 - Ftp??? * 0x00000100 - ???? * 0x00000200 - ??????? * 0x00000400 - ?? */ DWORD dwActionMask; /// ???????????????????,?????????? DWORD dwActionFlag; /// ????????,??????????,????N???????????????????????????? BYTE byRelAlarmOut[DH_MAX_ALARMOUT_NUM_EX]; /// ????????????????,?????????????,?1???????????? DWORD dwDuration; /// ??????????? /* ??????? */ BYTE byRecordChannel[DH_MAX_VIDEO_IN_NUM_EX]; /// ????????????????,?1???????????? DWORD dwRecLatch; /// ????????? /* ????? */ BYTE bySnap[DH_MAX_VIDEO_IN_NUM_EX]; /// ????? BYTE byTour[DH_MAX_VIDEO_IN_NUM_EX]; /// ?????? 0-31?? /* ??????? */ DH_PTZ_LINK struPtzLink[DH_MAX_VIDEO_IN_NUM_EX]; DWORD dwEventLatch; /// ?????????????,s?????,??????0~15,??????0 BYTE byRelWIAlarmOut[DH_MAX_ALARMOUT_NUM_EX]; /// ????????????????????,?????????????,?1???????????? BYTE bMessageToNet; BYTE bMMSEn; /// ?????????? BYTE bySnapshotTimes; /// ????????????? BYTE bMatrixEn; /// ??????? DWORD dwMatrix; /// ???????? BYTE bLog; /// ??????,???????WTN??????????? BYTE bSnapshotPeriod; /// ??????,??????????????,??????????????????????????????0????????,??????? BYTE byTour2[DH_MAX_VIDEO_IN_NUM_EX]; /// ?????? 32-63??*/ BYTE byEmailType; /// 0,??????,1,????> BYTE byEmailMaxLength; /// ??????????????,????MB> BYTE byEmailMaxTime; /// ??????????????????,??????> BYTE byReserved[475]; } DH_MSG_HANDLE_EX; ///@brief ????????? typedef struct { BYTE byAlarmType; /// ??????????,0??????,1?????? BYTE byAlarmEn; /// ??????? BYTE byReserved[2]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE_EX struHandle; /// ??????? } DH_ALARMIN_CFG_EX, *LPDHDEV_ALARMIN_CFG_EX; ///@brief ???????? typedef struct { BYTE byMotionEn; /// ??????????? BYTE byReserved; WORD wSenseLevel; /// ?????? WORD wMotionRow; /// ??????????????? WORD wMotionCol; /// ??????????????? BYTE byDetected[DH_MOTION_ROW][DH_MOTION_COL]; /// ???????,???32*32?????? DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE_EX struHandle; ///??????? } DH_MOTION_DETECT_CFG_EX; ///@brief ????? typedef struct { BOOL byFireEn; /// ????????? DH_MSG_HANDLE_EX struHandle; /// ??????? BYTE byReserved[128]; }DHDEV_FIRE_ALARM_CFG; ///@brief ???????? typedef struct { BYTE byStaticEn; /// ??????????? BYTE byLatch; /// ??????(????0-127,??????????????nLatch) WORD wSenseLevel; /// ?????? WORD wStaticRow; /// ??????????????? WORD wStaticCol; /// ??????????????? BYTE byDetected[DH_STATIC_ROW][DH_STATIC_COL]; /// ???????,???32*32?????? DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; /// NSP DH_MSG_HANDLE_EX struHandle; /// ??????? int nLatch; /// ?????? BYTE bReserved[64]; /// ??????? } DH_STATIC_DETECT_CFG_EX; ///@brief ACC?????????????? typedef struct _DHDEV_ACC_POWEROFF_CFG { BOOL bEnable; /// ACC?????????? int nDelayTime; /// ACC?????????????,???????? DH_MSG_HANDLE_EX struHandle; /// ??????? BYTE Reserved[128]; /// ??????? }DHDEV_ACC_POWEROFF_CFG; ///@brief ????????????????? typedef struct _DHDEV_EXPLOSION_PROOF_CFG { BOOL bEnable; /// ????????????? DH_MSG_HANDLE_EX struHandle; /// ??????? BYTE Reserved[128]; /// ??????? }DHDEV_EXPLOSION_PROOF_CFG; ///@brief Raid??????? typedef struct _DHDEV_RAID_EVENT_CFG { BOOL bEnable; /// Raid?????? DH_MSG_HANDLE_EX struHandle; /// ??????? BYTE Reserved[128]; /// ??????? }DHDEV_RAID_EVENT_CFG; ///@brief ?????????? typedef struct { BYTE byAlarmEn; /// ????????????? BYTE byReserved[3]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; /// NSP DH_MSG_HANDLE_EX struHandle; /// ??????? } DH_VIDEO_LOST_CFG_EX; ///@brief ?????????? typedef struct { BYTE byBlindEnable; /// ??? BYTE byBlindLevel; /// ??????1-6 BYTE byReserved[2]; DH_TSECT stSect[DH_N_WEEKS][DH_N_REC_TSECT]; /// NSP DH_MSG_HANDLE_EX struHandle; /// ??????? } DH_BLIND_CFG_EX; ///@brief ??????(???????) typedef struct { BYTE byNoDiskEn; /// ?????????? BYTE byReserved_1[3]; DH_TSECT stNDSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE_EX struNDHandle; /// ??????? BYTE byLowCapEn; /// ????????????? BYTE byLowerLimit; /// ???????,0-99 BYTE byReserved_2[2]; DH_TSECT stLCSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE_EX struLCHandle; /// ??????? BYTE byDiskErrEn; /// ????????? BYTE bDiskNum; BYTE byReserved_3[2]; DH_TSECT stEDSect[DH_N_WEEKS][DH_N_REC_TSECT]; ///NSP DH_MSG_HANDLE_EX struEDHandle; /// ??????? } DH_DISK_ALARM_CFG_EX; ///@brief ??????????????? typedef struct { BYTE byEnable; BYTE byReserved[3]; DH_MSG_HANDLE_EX struHandle; } DH_NETBROKEN_ALARM_CFG_EX; ///@brief ????????????????? typedef struct __DEV_ENCODER_CFG { int nChannels; /// ??????????? DEV_ENCODER_INFO stuDevInfo[32]; /// ?????????????????????? BYTE byHDAbility; /// ??????????????????????????(?0???????????????) /// ????????????????,????????0~N-1,????N????????????????????,????????????? BYTE bTVAdjust; /// ?????????TV????, 0:????? 1:???. BYTE bDecodeTour; /// ???????????????, 0:????? ????0:????????????????????. BYTE bRemotePTZCtl; /// ??????????????????? char reserved[12]; } DEV_ENCODER_CFG, *LPDEV_ENCODER_CFG; ///@brief ???????????????????? typedef struct __DEV_ENCODER_CFG_EX { int nChannels; /// ??????????? DEV_ENCODER_INFO stuDevInfo[128]; /// ?????????????????????? BYTE byHDAbility; /// ??????????????????????????(?0???????????????) /// ????????????????,????????0~N-1,????N????????????????????,????????????? BYTE bTVAdjust; /// ?????????TV????, 0:????? 1:???. BYTE bDecodeTour; /// ???????????????, 0:????? ????0:????????????????????. BYTE bRemotePTZCtl; /// ??????????????????? char reserved[256]; } DEV_ENCODER_CFG_EX, *LPDEV_ENCODER_CFG_EX; ///@brief ???????????????????? typedef struct __DEV_ENCODER_CFG_EX2 { int nChannels; /// ?????/???????????????? int nDevInfoMaxNum; /// ?????????????????? DEV_ENCODER_INFO *pstuDevInfo; /// ?????????????????????????????sizeof(DEV_ENCODER_INFO)*nDevInfoMaxNum; BYTE byHDAbility; /// ??????????????????????????(?0???????????????) /// ????????????????,????????0~N-1,????N????????????????????,????????????? BYTE bTVAdjust; /// ?????????TV????, 0:????? 1:???. BYTE bDecodeTour; /// ???????????????, 0:????? ????0:????????????????????. BYTE bRemotePTZCtl; /// ??????????????????? char reserved[256]; } DEV_ENCODER_CFG_EX2, *LPDEV_ENCODER_CFG_EX2; ///@brief struct ?????? typedef struct tagDHCONFIG_CONTROLER{ DH_COMM_PROP struComm; /// ???????? BYTE bLightGroup[DH_MAX_LIGHT_NUM]; /// ???????????????1???????,????[1,3,8,0??0]???????????1,3,8??? BYTE bDeviceAddr; /// ????????? BYTE bComPortType; /// ???????? 0:485????, 1:232???? BYTE bReserved[6]; /// ???? } DH_CONFIG_CONTROLER; ///@brief ?????????? typedef struct __DHDEV_LIGHTCONTROL_CFG { DH_CONFIG_CONTROLER struControlers[DH_MAX_CONTROLER_NUM]; /// ???????? BYTE bControlerNum; /// ????????????? BYTE bReserved[1023]; /// ???? } DHDEV_LIGHTCONTROL_CFG, *LPDHDEV_LIGHTCONTROL_CFG; ///@brief 3G??????????? typedef struct { int nStrategy; ///???????????, 0:?????????? 1:???????? int nUpLimit; ///???????????, ??????: ????MB ?????: ?????? int nreserved[22]; ///??????? }DHDEV_3GFLOW_INFO_CFG; ///@brief IPv6???? typedef struct { char szLinkAddr[44]; /// ???????: ?????, ?????44;(?????????????????????????????,???) char szHostIP[40]; /// ????IP DWORD dwPreFix; /// ??????????????1-128,????????? char szGateWay[40]; /// ??????? BOOL bAutoGet; /// ????????? char szPrimaryDns[40]; /// ???DNS char szSecondDns[40]; /// ???DNS char cReserved[256]; /// ??????? }DHDEV_IPV6_CFG; ///@brief ??????????? typedef struct __DEV_URGENCY_RECORD_CFG { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????,1???,0????? UINT nMaxRecordTime; /// ?????????,?????? char szClientMac[64]; /// ???????,?????mac?????????????':';??????????????????????????????? /// (????????????????????????????????????????????) }DHDEV_URGENCY_RECORD_CFG; ///@brief ???????????????? typedef struct __DEV_ELEVATOR_ATTRI_CFG { DWORD dwSize; /// ??????? UINT nMAXFloorNum; ///?????? ????2 UINT nFloorDelayTime; ///??????????,5-60???????????????????????????? UINT nIntervalTime; ///????????????????????????????,????????????,????????????,??????????????? }DHDEV_ELEVATOR_ATTRI_CFG; ///@brief ?????????????? typedef struct tagDHDEV_VIRTUALCAMERA_STATE_INFO { DWORD nStructSize; /// ??????? int nChannelID; /// ????? CONNECT_STATE emConnectState; /// ?????? UINT uiPOEPort; /// ??????????????????POE????,0???????POE???? char szDeviceName[64]; /// ??????? char szDeviceType[128]; /// ??????? char szSystemType[128]; /// ????? char szSerialNo[DH_SERIALNO_LEN]; /// ?????? int nVideoInput; /// ??????? int nAudioInput; /// ??????? int nAlarmOutput; /// ?????? }DHDEV_VIRTUALCAMERA_STATE_INFO; ///@brief ??????????/??????????????? typedef struct tagDHDEV_TRAFFICWORKSTATE_INFO { DWORD nStructSize; /// ??????? int nChannelID; /// ????? DH_TRAFFIC_SNAP_MODE emSnapMode; /// ????? }DHDEV_TRAFFICWORKSTATE_INFO; ///@brief ???????? typedef enum tagEM_NET_DEFENCE_AREA_TYPE { EM_NET_DEFENCE_AREA_TYPE_UNKNOW, /// ??? EM_NET_DEFENCE_AREA_TYPE_INTIME, /// ??????? EM_NET_DEFENCE_AREA_TYPE_DELAY, /// ??????? EM_NET_DEFENCE_AREA_TYPE_FULLDAY, /// 24??????? EM_NET_DEFENCE_AREA_TYPE_Follow, /// ??????? EM_NET_DEFENCE_AREA_TYPE_MEDICAL, /// ?????????? EM_NET_DEFENCE_AREA_TYPE_PANIC, /// ?????? EM_NET_DEFENCE_AREA_TYPE_FIRE, /// ????? EM_NET_DEFENCE_AREA_TYPE_FULLDAYSOUND, /// 24??????????? EM_NET_DEFENCE_AREA_TYPE_FULLDATSLIENT, /// 24??????????? EM_NET_DEFENCE_AREA_TYPE_ENTRANCE1, /// ???????1 EM_NET_DEFENCE_AREA_TYPE_ENTRANCE2, /// ???????2 EM_NET_DEFENCE_AREA_TYPE_INSIDE, /// ??????? EM_NET_DEFENCE_AREA_TYPE_OUTSIDE, /// ?????? EN_NET_DEFENCE_AREA_TYPE_PEOPLEDETECT, /// ????????? EM_NET_DEFENCE_AREA_TYPE_ROBBERY, /// ???????(???????????????) } EM_NET_DEFENCE_AREA_TYPE; ///@brief ??????????(??DH_ALARM_ALARM_EX????) typedef struct tagALARM_ALARM_INFO_EX2 { DWORD dwSize; int nChannelID; /// ????? int nAction; /// 0:??? 1:?? NET_TIME stuTime; /// ???????????????? NET_SENSE_METHOD emSenseType; /// ?????????? DH_MSG_HANDLE_EX stuEventHandler; /// ??????? EM_NET_DEFENCE_AREA_TYPE emDefenceAreaType; /// ???????? UINT nEventID; ///???ID char szName[DH_COMMON_STRING_32]; /// ??????? int nCount; /// ??????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? char szUserID[32]; /// ????????????????ID char szUserName[128]; /// ?????????????????? char szSN[32]; /// ????????? BOOL bExAlarmIn; /// ???????? int nAreaNums; /// ??????????????????? int nAreas[64]; /// ????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szDelayUploadSeq[128]; /// ????????? BYTE byReserved[440]; /// ??????? }ALARM_ALARM_INFO_EX2; ///@brief ???????EVENT_IVS_ALARM_IPC(DVR/NVR??????IPC???? )????????????????? typedef struct tagDEV_EVENT_ALARM_IPC_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 0:??? 1:?? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_ALARM_IPC_INFO; //////////////////////////////?????????????????///////////////////////////////// ///@brief ???????? typedef struct RESERVED_DATA_INTEL_BOX { DWORD dwEventCount; ///??????? DWORD* dwPtrEventType; ///???????????????????????????????????,?????sizeof(DWORD)*dwEventCount DWORD dwInternalTime; /// ???????????,??????s BYTE bReserved[1020]; ///??????? }ReservedDataIntelBox; ///@brief MACRO_GROUP_RESERVED_TYPE_25_BEGIN #define RESERVED_TYPE_FOR_INTEL_BOX 0x00000001 #define RESERVED_TYPE_FOR_PATH 0x00000100 #define RESERVED_TYPE_FOR_COMMON 0x00000010 ///@brief MACRO_GROUP_RESERVED_TYPE_25_END ///@brief ReservedPara typedef struct RESERVED_PARA { DWORD dwType; ///pData?????????? ///??[dwType]? RESERVED_TYPE_FOR_INTEL_BOX ?,pData ????????ReservedDataIntelBox???? ///??[dwType]? RESERVED_TYPE_FOR_COMMON ?,[pData]????????NET_RESERVED_COMMON??????? ///??[dwType]? RESERVED_TYPE_FOR_PATH ?,[pData]???????NET_RESERVED_PATH??????? void* pData; ///????,????????????????????????????? }ReservedPara; ///@brief ?????????? typedef enum tagNET_PICTURE_PATH_TYPE { NET_PATH_LOCAL_PATH , ///??????????sd????????????? NET_PATH_FTP_PATH , ///??????????ftp???????????? NET_PATH_VIDEO_PATH , ///?????????????????????????????FTP??????? }NET_PICTURE_PATH_TYPE; #define MAX_PIC_PATH_NUM 16 ///@brief ???????? typedef struct tagNET_RESERVED_PATH { int nMaxPathNum; ///??????????,?0??????????????? NET_PICTURE_PATH_TYPE emPictruePaths[MAX_PIC_PATH_NUM]; ///?????????? }NET_RESERVED_PATH; ///@brief ?????????? typedef struct tagNET_OFFLINE_PARAM { char szClientID[20]; /// ?????mac????????????? BYTE byReserved[108]; /// ???? }NET_OFFLINE_PARAM; ///@brief ???????????????? typedef enum tagEM_PATH_MODE { EM_PATH_MODE_UNKNOWN = -1, /// ??? EM_PATH_MODE_ASYNC, /// ?? EM_PATH_MODE_SYNC, /// ??? } EM_PATH_MODE; ///@brief ??????????? typedef enum tagNET_FILTER_IMAGE_TYPE { EM_FILTER_IMAGE_UNKNOWN, /// ??? EM_FILTER_IMAGE_OBJECT, /// ???????? EM_FILTER_IMAGE_SCENE, /// ?????????? }EM_FILTER_IMAGE_TYPE; ///@brief ??????????? typedef enum tagNET_EVENT_TYPE_DESCEIBEINFO { EM_EVENT_NORMAL = 0, /// ????????? EM_EVENT_EMAIL, /// ???????????? }EM_EVENT_TYPE_DESCEIBEINFO; ///@brief ???????????????????????????? typedef enum tagEM_EVENT_ORDER { EM_EVENT_ORDER_UNKNOWN, /// ??? EM_EVENT_ORDER_ASCENT, /// ??????? EM_EVENT_ORDER_DESCENT, /// ??????? }EM_EVENT_ORDER; ///@brief ????? typedef struct tagNET_RESERVED_COMMON { DWORD dwStructSize; ReservedDataIntelBox* pIntelBox; /// ????RESERVED_TYPE_FOR_INTEL_BOX DWORD dwSnapFlagMask; /// ?????(????),0??:"*",1??:"Timing",2??:"Manual",3??:"Marked",4??:"Event",5??:"Mosaic",6??:"Cutout", 7??:"Task"(??Flags?"Task"?,channel?????-1) NET_OFFLINE_PARAM* pstuOfflineParam; /// ?????????? NET_RESERVED_PATH* pstuPath; /// ????RESERVED_TYPE_FOR_PATH EM_PATH_MODE emPathMode; /// ???????????????? EM_FILTER_IMAGE_TYPE* pImageType; /// ???????????, ???????????? int nImageTypeNum; /// pImageType ???????? BOOL bFlagCustomInfo; /// szCustomInfo ????? TRUE? ???szCustomInfo??? char szCustomInfo[512]; /// ??????????? customInfo??getFiltercaps???????????????????????????????,????????????????????&??????????????????????=???? BOOL bSetEventsType; /// ?????????????? UINT nVOLayer; /// ???????????, 0:??? 1:????? 2:GUI?? 3:?????????? EM_EVENT_ORDER emOrder; /// ???????????????????????????????????????:??????????????????????????? int nVOImageType; /// ????????????? 0:??? 1:NV12 2:YUV422?? 3:RGB565 4:XRGB8888 5:JPEG }NET_RESERVED_COMMON; //////////////////////////////??????????????///////////////////////////////// ///@brief ????????? typedef struct { DWORD dwSize; int nScene; ///??????? }DHDEV_INTELLI_SCENE_INFO; ///@brief ?????????????? typedef struct { DWORD dwSize; int nScene; ///??????? int nType; ///0:????????,1:?????????,2:????,3:???? }DHDEV_INTELLI_SCENELIMIT_INFO; ///@brief ???????????????? typedef struct { DWORD dwSize; int nObjectID; /// ????ID,-1 ???web????????????????????????????????,>=0???????????????????????? RECT stuBound; /// ????????,?????????????[0,8191]???? int nTrackTimeOut; /// ????????????????? int nStaticTimeOut; /// ???????????????? char szLinkTargetUUID[32]; /// ?????????????????????????????????????? }DHDEV_INTELLI_TRACKOBJECT_INFO; ///@brief ???????? typedef enum __TRACKCONTROL_TYPE { DH_TRACK_MARKSCENE, /// ??????, ?????DHDEV_INTELLI_SCENE_INFO???? DH_TRACK_GOTOSCENE, /// ?????????,?????DHDEV_INTELLI_SCENE_INFO???? DH_TRACK_MARKSCENELIMIT, /// ?????????????,?????DHDEV_INTELLI_SCENELIMIT_INFO???? DH_TRACK_GOTOSCENELIMIT, /// ??????????????????,?????DHDEV_INTELLI_SCENELIMIT_INFO???? DH_TRACK_MARKSCENEMAXZOOM, /// ???????????????, ?????DHDEV_INTELLI_SCENE_INFO???? DH_TRACK_OBJECT, /// ?????????????????,?????DHDEV_INTELLI_TRACKOBJECT_INFO?????? DH_TRACK_START, /// ??????????,?????????????? DH_TRACK_STOP, /// ?????????,?????????????? DH_TRACK_TYPE_NUM, }DH_TRACKCONTROL_TYPE; ///@brief ?????????????????? typedef struct tagNET_IN_CONTROL_INTELLITRACKER { DWORD dwSize; int nChannelID; /// ???ID DH_TRACKCONTROL_TYPE emCtrlType; /// ???????? void* pCtrlInfo; /// ????????????????????????,????DH_TRACKCONTROL_TYPE????^???????????? int nMaxLen; /// ?????????????? int nWaittime; /// ????????? }NET_IN_CONTROL_INTELLITRACKER; ///@brief ?????????????????? typedef struct tagNET_OUT_CONTROL_INTELLITRACKER { DWORD dwSize; }NET_OUT_CONTROL_INTELLITRACKER; ///@brief CLIENT_GetLastEventInfo ??? typedef struct tagNET_IN_GET_LAST_EVENT_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? EM_CLASS_TYPE emClassType; /// ?????? DWORD dwAlarmType; /// ?????????????? BOOL bOnlySendFrame; /// ??????????????????? }NET_IN_GET_LAST_EVENT_INFO; ///@brief CLIENT_GetLastEventInfo ???? typedef struct tagNET_OUT_GET_LAST_EVENT_INFO { DWORD dwSize; /// ??????? int nState; /// ???????????????? 0-???????1-?????? LPVOID pEventInfo; /// ???????-???????????????? LDWORD dwBufferSize; /// ?????????? DWORD dwOutBufferSize; /// ?????????? }NET_OUT_GET_LAST_EVENT_INFO; //////////////////////////////?????????????///////////////////////////////// #define MAX_TEMPLATEIMAGE_NUM 32 ///?????????????? ///@brief ????????????????????? typedef struct tagNET_IN_VIDEOANALYSE_GETTEMPLATEIMAGE { DWORD dwSize; int nChannelID; /// ???ID char szRule[DH_COMMON_STRING_128]; /// ????????????? }NET_IN_VIDEOANALYSE_GETTEMPLATEIMAGE; ///@brief ????????????????????? typedef struct tagNET_OUT_VIDEOANALYSE_GETTEMPLATEIMAGE { DWORD dwSize; unsigned int nImageNum; /// ?????????? DH_PIC_INFO_EX2 stuImage[MAX_TEMPLATEIMAGE_NUM]; /// ????? char* pBuffer; /// ???????????, ???????????? int nBufLen; /// ????????????, ???????????? int nRetLen; /// ????????????????, ???????????, ????????????????????????????????? }NET_OUT_VIDEOANALYSE_GETTEMPLATEIMAGE; ///@brief ?????????????????????? typedef struct tagNET_IN_VIDEOANALYSE_SETTEMPLATEIMAGE { DWORD dwSize; int nChannelID; /// ???ID char szRule[DH_COMMON_STRING_128]; /// ????????????? unsigned int nImageNum; /// ?????????? DH_PIC_INFO_EX2 stuImage[MAX_TEMPLATEIMAGE_NUM]; /// ????? char* pBuffer; /// ???????????,??????????????????nBufLen int nBufLen; /// ???????????? }NET_IN_VIDEOANALYSE_SETTEMPLATEIMAGE; ///@brief ?????????????????????? typedef struct tagNET_OUT_VIDEOANALYSE_SETTEMPLATEIMAGE { DWORD dwSize; }NET_OUT_VIDEOANALYSE_SETTEMPLATEIMAGE; //////////////////////////////???????///////////////////////////////// ///@brief ??????????????????,??????????,?????? typedef struct { BYTE byRecordStatic; /// ???????????0???????,1????????,2???????? BYTE bySignalStatic; /// ????????????0??????,1??????? BYTE byHardwareStatic; /// ??????????0??????,1????,????DSP???? char reserve; DWORD dwBitRate; /// ??????? DWORD dwLinkNum; /// ????????????? DWORD dwClientIP[DH_MAX_LINK]; /// ??????IP??? } NET_DEV_CHANNELSTATE, *LPNET_DEV_CHANNELSTATE; ///@brief ????????????,??????????,?????? typedef struct { DWORD dwDeviceStatic; /// ?????????0x00??????,0x01??CPU???????,0x02????????? NET_DEV_DISKSTATE stHardDiskStatic[DH_MAX_DISKNUM]; NET_DEV_CHANNELSTATE stChanStatic[DH_MAX_CHANNUM]; ///??????? BYTE byAlarmInStatic[DH_MAX_ALARMIN]; ///????????????0?????????,1???????? BYTE byAlarmOutStatic[DH_MAX_ALARMOUT]; ///???????????????0????????,1??????????? DWORD dwLocalDisplay; /// ???????????0??????,1???????? } NET_DEV_WORKSTATE, *LPNET_DEV_WORKSTATE; ///@brief ??????? typedef struct { char protocolname[12]; /// ?????? unsigned int baudbase; /// ?????? unsigned char databits; /// ?????? unsigned char stopbits; /// ???? unsigned char parity; /// ?????? unsigned char reserve; } PROTOCOL_INFO, *LPPROTOCOL_INFO; ///@brief ??????????????? typedef struct { /* ?????????? */ BYTE byInFormatTag; /// ????????,??PCM BYTE byInChannels; /// ?????? WORD wInBitsPerSample; /// ??????? DWORD dwInSamplesPerSec; /// ?????? /* ?????????? */ BYTE byOutFormatTag; /// ????????,??PCM BYTE byOutChannels; /// ?????? WORD wOutBitsPerSample; /// ??????? DWORD dwOutSamplesPerSec; /// ?????? } DHDEV_TALK_CFG, *LPDHDEV_TALK_CFG; /////////////////////////////// ???? /////////////////////////////////////// #define DH_MATRIX_INTERFACE_LEN 16 /// ???????????? #define DH_MATRIX_MAX_CARDS 128 /// ?????????????? #define DH_SPLIT_PIP_BASE 1000 /// ????????????????? #define DH_MAX_SPLIT_MODE_NUM 64 /// ????????? #define DH_MATRIX_MAX_CHANNEL_IN 1500 /// ???????????????? #define DH_MATRIX_MAX_CHANNEL_OUT 256 /// ??????????????? #define DH_DEVICE_NAME_LEN 64 /// ?????????? #define DH_MAX_CPU_NUM 16 /// ???CPU???? #define DH_MAX_FAN_NUM 16 /// ?????????? #define DH_MAX_POWER_NUM 16 /// ????????? #define DH_MAX_BATTERY_NUM 16 /// ????????? #define DH_MAX_TEMPERATURE_NUM 256 /// ??????????????? #define DH_MAX_ISCSI_NAME_LEN 128 /// ISCSI??????? #define DH_VERSION_LEN 64 /// ?????????? #define DH_MAX_STORAGE_PARTITION_NUM 32 /// ?????????????? #define DH_STORAGE_MOUNT_LEN 64 /// ??????? #define DH_STORAGE_FILE_SYSTEM_LEN 16 /// ???????????? #define DH_MAX_MEMBER_PER_RAID 32 /// RAID?????????? #define DH_DEV_ID_LEN_EX 128 /// ???ID???? #define DH_MAX_BLOCK_NUM 32 /// ??????????? #define DH_MAX_SPLIT_WINDOW 128 /// ??????????? #define DH_FILE_TYPE_LEN 64 /// ?????????? #define DH_DEV_ID_LEN 128 /// ???ID???? #define DH_DEV_NAME_LEN 128 /// ??????????? #define DH_TSCHE_DAY_NUM 8 /// ????????????, ??????? #define DH_TSCHE_SEC_NUM 6 /// ????????????, ???????? #define DH_SPLIT_INPUT_NUM 256 /// ?????????????????split????????????? #define DH_TSCHE_SEC_NUM_EX 36 /// ????????????, ???????? #define DH_DEVICE_ID_LOCAL "Local" /// ???????ID #define DH_DEVICE_ID_REMOTE "Remote" /// ??????ID #define DH_DEVICE_ID_UNIQUE "Unique" /// ?????????? ///@brief ????? typedef enum tagDH_SPLIT_MODE { DH_SPLIT_1 = 1, /// 1???? DH_SPLIT_2 = 2, /// 2???? DH_SPLIT_4 = 4, /// 4???? DH_SPLIT_5 = 5, /// 5???? DH_SPLIT_6 = 6, /// 6???? DH_SPLIT_8 = 8, /// 8???? DH_SPLIT_9 = 9, /// 9???? DH_SPLIT_12 = 12, /// 12???? DH_SPLIT_16 = 16, /// 16???? DH_SPLIT_20 = 20, /// 20???? DH_SPLIT_25 = 25, /// 25???? DH_SPLIT_36 = 36, /// 36???? DH_SPLIT_64 = 64, /// 64???? DH_SPLIT_144 = 144, /// 144???? DH_PIP_1 = DH_SPLIT_PIP_BASE + 1, /// ????????, 1?????????+1??????????? DH_PIP_3 = DH_SPLIT_PIP_BASE + 3, /// ????????, 1?????????+3??????????? DH_SPLIT_FREE = DH_SPLIT_PIP_BASE * 2, /// ?????????,???????????????????,?????????????????Z????? DH_COMPOSITE_SPLIT_1 = DH_SPLIT_PIP_BASE * 3 + 1, /// ????????1??? DH_COMPOSITE_SPLIT_4 = DH_SPLIT_PIP_BASE * 3 + 4, /// ????????4??? DH_SPLIT_3 = 10, /// 3???? DH_SPLIT_3B = 11, /// 3?????? DH_SPLIT_4A = DH_SPLIT_PIP_BASE * 4 + 1, /// 4??????, ?????????????3??????????????????? } DH_SPLIT_MODE; #define DH_PROTOCOL_DAHUA2 DH_PROTOCOL_PRIVATE2 #define DH_PROTOCOL_DAHUA3 DH_PROTOCOL_PRIVATE3 ///@brief ??????????? typedef enum tagDH_DEVICE_PROTOCOL { DH_PROTOCOL_PRIVATE2, /// ???2?????? DH_PROTOCOL_PRIVATE3, /// ???3?????? DH_PROTOCOL_ONVIF, /// Onvif DH_PROTOCOL_VNC, /// ???????????? DH_PROTOCOL_TS, /// ???TS DH_PROTOCOL_ECLOUD, /// ?????? DH_PROTOCOL_GENERAL, /// ??URL??????? DH_PROTOCOL_GB28181, /// GB28181 DH_PROTOCOL_PRIVATE = 100, /// ??????? DH_PROTOCOL_AEBELL, /// ??????? DH_PROTOCOL_PANASONIC, /// ???? DH_PROTOCOL_SONY, /// ???? DH_PROTOCOL_DYNACOLOR, /// Dynacolor DH_PROTOCOL_TCWS, /// ??????? DH_PROTOCOL_SAMSUNG, /// ???? DH_PROTOCOL_YOKO, /// YOKO DH_PROTOCOL_AXIS, /// ????? DH_PROTOCOL_SANYO, /// ???? DH_PROTOCOL_BOSH, /// Bosch DH_PROTOCOL_PECLO, /// Peclo DH_PROTOCOL_PROVIDEO, /// Provideo DH_PROTOCOL_ACTI, /// ACTi DH_PROTOCOL_VIVOTEK, /// Vivotek DH_PROTOCOL_ARECONT, /// Arecont DH_PROTOCOL_PRIVATEEH, /// PrivateEH DH_PROTOCOL_IMATEK, /// IMatek DH_PROTOCOL_SHANY, /// Shany DH_PROTOCOL_VIDEOTREC, /// ??????? DH_PROTOCOL_URA, /// Ura DH_PROTOCOL_BITICINO, /// Bticino DH_PROTOCOL_ONVIF2, /// Onvif????????, ?DH_PROTOCOL_ONVIF DH_PROTOCOL_SHEPHERD, /// ??? DH_PROTOCOL_YAAN, /// ??? DH_PROTOCOL_AIRPOINT, /// Airpop DH_PROTOCOL_TYCO, /// TYCO DH_PROTOCOL_XUNMEI, /// XM DH_PROTOCOL_HIKVISION, /// HIK DH_PROTOCOL_LG, /// LG DH_PROTOCOL_AOQIMAN, /// ?????? DH_PROTOCOL_BAOKANG, /// ???? DH_PROTOCOL_WATCHNET, /// Watchnet DH_PROTOCOL_XVISION, /// Xvision DH_PROTOCOL_FUSITSU, /// ???? DH_PROTOCOL_CANON, /// Canon DH_PROTOCOL_GE, /// GE DH_PROTOCOL_Basler, /// ????? DH_PROTOCOL_Patro, /// ?????? DH_PROTOCOL_CPKNC, /// CPPLUS K??? DH_PROTOCOL_CPRNC, /// CPPLUS R??? DH_PROTOCOL_CPUNC, /// CPPLUS U??? DH_PROTOCOL_CPPLUS, /// CPPLUS IPC DH_PROTOCOL_XunmeiS, /// Xms DH_PROTOCOL_GDDW, /// GDDW DH_PROTOCOL_PSIA, /// PSIA DH_PROTOCOL_GB2818, /// GB2818 DH_PROTOCOL_GDYX, /// GDYX DH_PROTOCOL_OTHER, /// ?????????? DH_PROTOCOL_MULTICAST = 179, /// ?????????????????????????????????????? DH_PROTOCOL_MULTICASTTS = 185, /// ?????????TS?????????????????????????????? } DH_DEVICE_PROTOCOL; ///@brief ????????????? typedef struct tagDH_SPLIT_MODE_INFO { DWORD dwSize; DH_SPLIT_MODE emSplitMode; /// ????? int nGroupID; /// ??????? DWORD dwDisplayType; /// ?????????????DH_SPLIT_DISPLAY_TYPE???????????????????"PicInPic"????, ??????????????NVD???????????????DisChn???????????????,???????????,??????????????,??"General"?? } DH_SPLIT_MODE_INFO; ///@brief ??????? typedef struct tagDH_SPLIT_CAPS { DWORD dwSize; int nModeCount; /// ???????????? DH_SPLIT_MODE emSplitMode[DH_MAX_SPLIT_MODE_NUM]; /// ???????? int nMaxSourceCount; /// ????????????? int nFreeWindowCount; /// ????????????????? BOOL bCollectionSupported; /// ????????????? DWORD dwDisplayType; /// ????????????????,?????DH_SPLIT_DISPLAY_TYPE???????????????????"PicInPic"????, ??????????????NVD???????????????DisChn???????????????,???????????,??????????????,??"General"?? int nPIPModeCount; /// ?????????????????? DH_SPLIT_MODE emPIPSplitMode[DH_MAX_SPLIT_MODE_NUM]; /// ?????????????? int nInputChannels[DH_SPLIT_INPUT_NUM]; /// ??????????? int nInputChannelCount; /// ???????????????, 0????????????????? int nBootModeCount; /// ????????????? DH_SPLIT_MODE emBootMode[DH_MAX_SPLIT_MODE_NUM]; /// ?????????????????? } DH_SPLIT_CAPS; ///@brief ????????????? typedef struct tagDH_CASCADE_AUTHENTICATOR { DWORD dwSize; char szUser[DH_NEW_USER_NAME_LENGTH]; /// ????? char szPwd[DH_NEW_USER_PSW_LENGTH]; /// ???? char szSerialNo[DH_SERIALNO_LEN]; /// ????????? } DH_CASCADE_AUTHENTICATOR; ///@brief ????????????????? typedef enum tagEM_SRC_PUSHSTREAM_TYPE { EM_SRC_PUSHSTREAM_AUTO, /// ??????????????????????? EM_SRC_PUSHSTREAM_HIKVISION, /// ??????? EM_SRC_PUSHSTREAM_PS, /// PS?? EM_SRC_PUSHSTREAM_TS, /// TS?? EM_SRC_PUSHSTREAM_SVAC, /// SVAC???? }EM_SRC_PUSHSTREAM_TYPE; ///@brief ?????? typedef enum tagEM_ENCRYPT_LEVEL { EM_ENCRYPT_LEVEL_UNKNOWN, /// ??? EM_ENCRYPT_LEVEL_NONE, /// ?????? EM_ENCRYPT_LEVEL_IFRAME256, /// ????I??256??? EM_ENCRYPT_LEVEL_IFRAME_WHOLE, /// ????????I? EM_ENCRYPT_LEVEL_IAXFRAME, /// ??I?, ??????????????????????? }EM_ENCRYPT_LEVEL; ///@brief ?????????? typedef enum tagEM_ENCRYPT_ALGORITHM_TYPE { EM_ENCRYPT_ALGORITHM_UNKNOWN, /// ??? EM_ENCRYPT_ALGORITHM_AES, /// AES???? EM_ENCRYPT_ALGORITHM_DES, /// DES???? EM_ENCRYPT_ALGORITHM_3DES, /// 3DES???? }EM_ENCRYPT_ALGORITHM_TYPE; ///@brief ?????????? typedef enum tagEM_KEY_EXCHANGE_TYPE { EM_KEY_EXCHANGE_UNKNOWN, /// ??? EM_KEY_EXCHANGE_MIKEY, /// Mikey??? EM_KEY_EXCHANGE_PSK, /// ???????? EM_KEY_EXCHANGE_PK, /// ??????? EM_KEY_EXCHANGE_DH, /// ????????? }EM_KEY_EXCHANGE_TYPE; ///@brief ?????????????? typedef struct tagNET_SOURCE_STREAM_ENCRYPT { EM_ENCRYPT_LEVEL emEncryptLevel; /// ?????? EM_ENCRYPT_ALGORITHM_TYPE emAlgorithm; /// ?????? EM_KEY_EXCHANGE_TYPE emExchange; /// ?????????? BOOL bUnvarnished; /// MTS???????,true?????MIKEY???????????????/???? char szPSK[1032]; /// ??? BYTE byReserved[1024]; /// ??????? }NET_SOURCE_STREAM_ENCRYPT; ///@brief ???? typedef struct tagDH_SPLIT_SOURCE { DWORD dwSize; BOOL bEnable; /// ??? char szIp[DH_MAX_IPADDR_LEN]; /// IP, ???????????,Ip??szDeviceID????????? char szUser[DH_USER_NAME_LENGTH]; /// ?????, ???????szUserEx char szPwd[DH_USER_PSW_LENGTH]; /// ????, ???????szPwdEx int nPort; /// ??? int nChannelID; /// ????? int nStreamType; /// ???????, -1-???, 0-??????, 1-??????1, 2-??????2, 3-??????3, 4-snap, 5-???, 6-??????? int nDefinition; /// ??????, 0-????, 1-???? DH_DEVICE_PROTOCOL emProtocol; /// ???????? char szDevName[DH_DEVICE_NAME_LEN]; /// ??????? int nVideoChannel; /// ???????????? int nAudioChannel; /// ???????????? /*--------------------------------------------------------------------------------------*/ /* ???????????????? */ BOOL bDecoder; /// ?????????? BYTE byConnType; /// -1: auto, 0??TCP??1??UDP??2????? BYTE byWorkMode; /// 0???????1????? WORD wListenPort; /// ?????????????,????????; byConnType?????,?????????? char szDevIpEx[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// szDevIp???,???DVR??IP???(????????????) BYTE bySnapMode; /// ????(nStreamType==4?????) 0???????????,1???????????????? BYTE byManuFactory; /// ??????????????, ???????EM_IPC_TYPE?? BYTE byDeviceType; /// ???????????????, 0:IPC BYTE byDecodePolicy; /// ??????????????, 0:??????? /// 1:??????? 2:??????? /// 3:??????? 4:????? /// 5:????????? 6:????????? /// 7:????????? /*--------------------------------------------------------------------------------------*/ DWORD dwHttpPort; /// Http????, 0-65535 DWORD dwRtspPort; /// Rtsp????, 0-65535 char szChnName[DH_DEVICE_NAME_LEN]; /// ??????????, ????????????????????????????????????? char szMcastIP[DH_MAX_IPADDR_LEN]; /// ??IP???, byConnType????????? char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID, ""-null, "Local"-???????, "Remote"-??????, ????????????RemoteDevice???????ID BOOL bRemoteChannel; /// ?????????(???) unsigned int nRemoteChannelID; /// ??????ID(???), bRemoteChannel=TRUE????? char szDevClass[DH_DEV_TYPE_LEN]; /// ???????, ??IPC, DVR, NVR?? char szDevType[DH_DEV_TYPE_LEN]; /// ??????????, ??IPC-HF3300 char szMainStreamUrl[MAX_PATH]; /// ??????url???, byManuFactory?DH_IPC_OTHER????? char szExtraStreamUrl[MAX_PATH]; /// ??????url???, byManuFactory?DH_IPC_OTHER????? int nUniqueChannel; /// ???????????????????, ??? DH_CASCADE_AUTHENTICATOR stuCascadeAuth; /// ??????????, ???ID?"Local/Cascade/SerialNo"?????, ????SerialNo??????????? int nHint; /// 0-???????, 1-???????? int nOptionalMainUrlCount; /// ????????????????? char szOptionalMainUrls[DH_MAX_OPTIONAL_URL_NUM][MAX_PATH]; /// ????????????????? int nOptionalExtraUrlCount; /// ???????????????? char szOptionalExtraUrls[DH_MAX_OPTIONAL_URL_NUM][MAX_PATH]; /// ???????????????? /*--------------------------------------------------------------------------------------*/ /*??????????????*/ int nInterval; /// ???????? ???????? char szUserEx[DH_NEW_USER_NAME_LENGTH]; /// ????? char szPwdEx[DH_NEW_USER_PSW_LENGTH]; /// ???? EM_SRC_PUSHSTREAM_TYPE emPushStream; /// ?????????????????,???byConnType?TCP-Push??UDP-Push????????? NET_RECT stuSRect; /// ????????,??szDeviceID??????????,???????(0,0,0,0)???????????????????????(0,0,8192,8192) NET_SOURCE_STREAM_ENCRYPT stuSourceStreamEncrypt; /// ?????????? char szSerialNo[DH_SERIALNO_LEN]; /// ?????????,??????????????????????????????????? char szCaption[128]; /// ????????????????OSD??? BOOL bUserStreamUrlEx; /// ??????szMainStreamUrlEx/szExtraStreamUrlEx??? char szMainStreamUrlEx[1024]; /// ??????url???, byManuFactory?DH_IPC_OTHER????? char szExtraStreamUrlEx[1024]; /// ??????url???, byManuFactory?DH_IPC_OTHER????? } DH_SPLIT_SOURCE; ///@brief ???????????? typedef struct tagDH_VIDEO_OUT_CAPS { DWORD dwSize; BOOL bColor; /// ???????????????? BOOL bMargin; /// ???????????? int nLayers; /// ??????????????? BOOL bPowerMode; /// ???????????? int bSplitMode; /// ???????????, 0-??????, 1-'#'??????(??????????), 2-?????? unsigned int nBackground; /// ??????????, ???????, 0-???, 1-?? BOOL bBindOutput; /// ????????????????????? BOOL bAudioSupport; /// ???????????? DWORD dwAudioMode; /// ?????????, ???????, bit0-???????, bit1-?????? } DH_VIDEO_OUT_CAPS; ///@brief ???BCSH typedef struct tagDH_COLOR_BCSH { int nBirghtness; /// ???? int nContrast; /// ???? int nSaturation; /// ????? int nHue; /// ??? } DH_COLOR_BCSH; ///@brief ??? typedef struct tagDH_SIZE { int nWidth; /// ???? int nHeight; /// ??? } DH_SIZE; ///@brief ??????? typedef struct tagDH_HOT_PLUG_MODE { DWORD dwSize; int nMode; /// ???????, 0-??????, 1-???????? } DH_HOT_PLUG_MODE; ///@brief ????????? typedef struct tagDH_VIDEO_OUT_OPT { DWORD dwSize; DH_RECT* pstuMargin; /// ?????? DH_COLOR_BCSH* pstuColor; /// ?????? DH_COLOR_RGBA* pstuBackground; /// ????? DH_SIZE* pstuSize; /// ?????? DH_HOT_PLUG_MODE* pstuHotPlugMode; /// ??????? } DH_VIDEO_OUT_OPT; #define NET_VIDEOANALYSE_SCENES (32) #define NET_VIDEOANALYSE_RULES (64) ///@brief ??????? typedef struct tagNET_PD_VIDEOANALYSE { BOOL bSupport; /// ????????????? char szSupportScenes[NET_VIDEOANALYSE_SCENES][DH_COMMON_STRING_64]; /// ??????? char SupportRules[NET_VIDEOANALYSE_RULES][DH_COMMON_STRING_64]; /// ??????? } NET_PD_VIDEOANALYSE; ///@brief ?????????????? typedef enum tagEM_AUDIO_CHANNEL_TYPE { EM_AUDIO_CHANNEL_SINGLE, /// ?????? EM_AUDIO_CHANNEL_DOUBLE, /// ????? }EM_AUDIO_CHANNEL_TYPE; ///@brief WIFI????????????????? typedef enum tagEM_WLAN_SCAN_AND_CONFIG_TYPE { EM_WLAN_SCAN_AND_CONFIG_UNKNOWN, /// ??? EM_WLAN_SCAN_AND_CONFIG_V2, /// V2:???????? EM_WLAN_SCAN_AND_CONFIG_V3, /// v3:???????? }EM_WLAN_SCAN_AND_CONFIG_TYPE; ///@brief ??????? typedef struct tagDH_PRODUCTION_DEFNITION { DWORD dwSize; int nVideoInChannel; /// ???????????? int nVideoOutChannel; /// ??????????? int nRemoteDecChannel; /// ??????????? char szDevType[DH_DEV_TYPE_LEN]; /// ??????? char szVendor[DH_MAX_NAME_LEN]; /// OEM??? int nOEMVersion; /// OEM??? int nMajorVerion; /// ??????? int nMinorVersion; /// ?????? int nRevision; /// ?????? char szWebVerion[DH_MAX_NAME_LEN]; /// Web??? char szDefLanguage[DH_MAX_NAME_LEN]; /// ??????? NET_TIME stuBuildDateTime; /// ???????, ??????? int nAudioInChannel; /// ???????????? int nAudioOutChannel; /// ??????????? BOOL bGeneralRecord; /// ??????????? BOOL bLocalStore; /// ??????????? BOOL bRemoteStore; /// ???????????? BOOL bLocalurgentStore; /// ?????????????????? BOOL bRealtimeCompress; /// ?????????????? DWORD dwVideoStandards; /// ??????????????, bit0-PAL, bit1-NTSC int nDefVideoStandard; /// ?????????, 0-PAL, 1-NTSC int nMaxExtraStream; /// ??????????? int nRemoteRecordChannel; /// ??????????? int nRemoteSnapChannel; /// ?????????? int nRemoteVideoAnalyseChannel; /// ??????????????? int nRemoteTransmitChannel; /// ?????????????????? int nRemoteTransmitFileChannel; /// ?????????????????? int nStreamTransmitChannel; /// ????????????????? int nStreamReadChannel; /// ???????????????? int nMaxStreamSendBitrate; /// ??????????????????, kbps int nMaxStreamRecvBitrate; /// ?????????????????, kbps BOOL bCompressOldFile; /// ???????????, ???P?, ????I? BOOL bRaid; /// ??????RAID int nMaxPreRecordTime; /// ????????, s BOOL bPtzAlarm; /// ????????????? BOOL bPtz; /// ????????? BOOL bATM; /// ??????ATM?????? BOOL b3G; /// ??????3G??? BOOL bNumericKey; /// ????????? BOOL bShiftKey; /// ????Shift?? BOOL bCorrectKeyMap; /// ????????????????? BOOL bNewATM; /// ??????ATM???? BOOL bDecoder; /// ?????????? DEV_DECODER_INFO stuDecoderInfo; /// ?????????, bDecoder=true????? int nVideoOutputCompositeChannels; /// ??????????????? BOOL bSupportedWPS; /// ??????WPS???? int nVGAVideoOutputChannels; /// VGA??????????? int nTVVideoOutputChannels; /// TV??????????? int nMaxRemoteInputChannels; /// ??????????? int nMaxMatrixInputChannels; /// ??????????? int nMaxRoadWays; /// ???????????? 1~6 int nMaxParkingSpaceScreen; /// ????????????????????????? 0~20 int nPtzHorizontalAngleMin; /// ????????????, [0-360] int nPtzHorizontalAngleMax; /// ??????????, [0-360] int nPtzVerticalAngleMin; /// ?????????????, [-90,90] int nPtzVerticalAngleMax; /// ???????????, [-90,90] BOOL bPtzFunctionMenu; /// ??????????????? BOOL bLightingControl; /// ??????????? DWORD dwLightingControlMode; /// ???????????, ????, ??NET_LIGHTING_CTRL_ON_OFF int nNearLightNumber; /// ???????????, 0???????? int nFarLightNumber; /// ??????????, 0???????? BOOL bFocus; /// ??????????? BOOL bIris; /// ??????????? char szPtzProtocolList[DH_COMMON_STRING_1024];/// ???????????????, ????????, ?????';'??? BOOL bRainBrushControl; /// ????????????? int nBrushNumber; /// ???????, ?0????????? int nLowerMatrixInputChannels[DH_MAX_LOWER_MITRIX_NUM]; /// ??????????????????, ???????????? int nLowerMatrixOutputChannels[DH_MAX_LOWER_MITRIX_NUM];/// ?????????????????, ???????????? BOOL bSupportVideoAnalyse; /// ????????????? BOOL bSupportIntelliTracker; /// ????????????? DWORD nSupportBreaking; ///???????????????????(???????) ///0-????? 1-??? 2-???? 3-??? 4-???? 5-??????? 6-??????? 7-???????????????????????? ///8-???????????? 9-??????? 10-?????? 11-??????????? 12-??????? 13-????? 14-??????? ///15-?????? 16-???????? 17-?????????????? 18-???????? 19-???????? 20-??????? 21-??????? ///22-????? 23-????? 24-??????????? 25-???????? 26-??????? 27-??????????? 28-??????? ///29-???? 30-???????? 31-???????? DWORD nSupportBreaking1; ///0-???????? 1-???????? 2-?????????? 3-?????????????????? NET_PD_VIDEOANALYSE stuVideoAnalyse; ///??????? BOOL bTalkTransfer; ///???????????????? BOOL bCameraAttribute; /// ????????????????????? BOOL bPTZFunctionViaApp; /// ?????????????????????????? BOOL bAudioProperties; /// ?????????????????? BOOL bIsCameraIDOsd; /// ????????????????? BOOL bIsPlaceOsd; /// ??????????????? unsigned int nMaxGeographyTitleLine; /// ????????????????????? EM_AUDIO_CHANNEL_TYPE emAudioChannel; /// ?????????????? char szVendorAbbr[DH_COMMON_STRING_32]; /// ???? char szTypeVersion[DH_COMMON_STRING_32]; /// ???????????? BOOL bIsVideoNexus; EM_WLAN_SCAN_AND_CONFIG_TYPE emWlanScanAndConfig; /// WIFI????????????????? BOOL bSupportLensMasking; /// IPC???????????????????????????? } DH_PRODUCTION_DEFNITION; ///@brief MACRO_GROUP_LIGHTING_CTRL_26_BEGIN /// ??????????? #define NET_LIGHTING_CTRL_ON_OFF 0x01 /// ???????? #define NET_LIGHTING_CTRL_ADJUST_BRIGHTNESS 0x02 /// ????????????? #define NET_LIGHTING_CTRL_ZOOM_PRIO 0x04 /// ???????? ///@brief MACRO_GROUP_LIGHTING_CTRL_26_END ///@brief MACRO_GROUP_MATRIX_CARD_27_BEGIN /// ???????????, ?????????????? #define DH_MATRIX_CARD_MAIN 0x10000000 /// ???? #define DH_MATRIX_CARD_INPUT 0x00000001 /// ???? #define DH_MATRIX_CARD_OUTPUT 0x00000002 /// ????? #define DH_MATRIX_CARD_ENCODE 0x00000004 /// ???? #define DH_MATRIX_CARD_DECODE 0x00000008 /// ???? #define DH_MATRIX_CARD_CASCADE 0x00000010 /// ?????? #define DH_MATRIX_CARD_INTELLIGENT 0x00000020 /// ????? #define DH_MATRIX_CARD_ALARM 0x00000040 /// ?????? #define DH_MATRIX_CARD_RAID 0x00000080 /// ?Raid?? #define DH_MATRIX_CARD_NET_DECODE 0x00000100 /// ??????? #define DH_MATRIX_CARD_NET_ENCODE 0x00000200 /// ??????? ///@brief MACRO_GROUP_MATRIX_CARD_27_END ///@brief ?????????? typedef struct tagDH_MATRIX_CARD { DWORD dwSize; BOOL bEnable; /// ??????? DWORD dwCardType; /// ??????? char szInterface[DH_MATRIX_INTERFACE_LEN]; /// ??????????, "CVBS", "VGA", "DVI", "BT656","BT1120", "Fiber","HD-SDI", "HDCVI","HDMI","Dual-Link","3G-SDI", "RJ45"... char szAddress[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ???ip??????, ??????????????????? int nPort; /// ????, ?????????????????0 int nDefinition; /// ??????, 0=????, 1=???? int nVideoInChn; /// ???????????? int nAudioInChn; /// ???????????? int nVideoOutChn; /// ??????????? int nAudioOutChn; /// ??????????? int nVideoEncChn; /// ???????????? int nAudioEncChn; /// ???????????? int nVideoDecChn; /// ???????????? int nAudioDecChn; /// ???????????? int nStauts; /// ??: -1-???, 0-????, 1-?????, 2-???????, 3-???, 4-????????, 5-????????, 6-???????????, 7-?????????? int nCommPorts; /// ?????? int nVideoInChnMin; /// ????????????????? int nVideoInChnMax; /// ???????????????? int nAudioInChnMin; /// ????????????????? int nAudioInChnMax; /// ???????????????? int nVideoOutChnMin; /// ???????????????? int nVideoOutChnMax; /// ??????????????? int nAudioOutChnMin; /// ???????????????? int nAudioOutChnMax; /// ??????????????? int nVideoEncChnMin; /// ????????????????? int nVideoEncChnMax; /// ???????????????? int nAudioEncChnMin; /// ????????????????? int nAudioEncChnMax; /// ???????????????? int nVideoDecChnMin; /// ????????????????? int nVideoDecChnMax; /// ???????????????? int nAudioDecChnMin; /// ????????????????? int nAudioDecChnMax; /// ???????????????? int nCascadeChannels; /// ????????? int nCascadeChannelBitrate; /// ???????????, ????Mbps int nAlarmInChnCount; /// ????????????? int nAlarmInChnMin; /// ?????????????????? int nAlarmInChnMax; /// ????????????????? int nAlarmOutChnCount; /// ???????????? int nAlarmOutChnMin; /// ?????????????????? int nAlarmOutChnMax; /// ????????????????? int nVideoAnalyseChnCount; /// ???????????? int nVideoAnalyseChnMin; /// ????????????????? int nVideoAnalyseChnMax; /// ???????????????? int nCommPortMin; /// ?????????? int nCommPortMax; /// ????????? char szVersion[DH_COMMON_STRING_32]; /// ?????? NET_TIME stuBuildTime; /// ??????? char szBIOSVersion[DH_COMMON_STRING_64]; /// BIOS????? char szMAC[DH_MACADDR_LEN]; /// MAC??? } DH_MATRIX_CARD; ///@brief ??????????? typedef struct tagDH_MATRIX_CARD_LIST { DWORD dwSize; int nCount; /// ??????? DH_MATRIX_CARD stuCards[DH_MATRIX_MAX_CARDS]; /// ??????? } DH_MATRIX_CARD_LIST; ///@brief ?????????? typedef struct tagDH_VIDEO_OUT_WINDOW { DWORD dwSize; int nBackboardID; /// ????? int nScreenID; /// ????? int nWindowID; /// ????? } DH_VIDEO_OUT_WINDOW; ///@brief ???????????,??????? typedef struct tagNET_IN_SETBACKUP_SOURCES_INFO { DWORD dwSize; int nSetSourcesNum; /// ???????????? DH_SPLIT_SOURCE * pSource; /// ???????(???????????????) } NET_IN_SETBACKUP_SOURCES_INFO; ///@brief ???????????,??????? typedef struct tagNET_OUT_SETBACKUP_SOURCES_INFO { DWORD dwSize; } NET_OUT_SETBACKUP_SOURCES_INFO; ///@brief CLIENT_GetISCSITargets?????????? typedef struct tagDH_IN_ISCSI_TARGETS { DWORD dwSize; const char* pszAddress; /// ????????? int nPort; /// ??? const char* pszUser; /// ????? const char* pszPwd; /// ???? } DH_IN_ISCSI_TARGETS; ///@brief ISCSI Target??? typedef struct tagDH_ISCSI_TARGET { DWORD dwSize; char szName[DH_MAX_ISCSI_NAME_LEN]; /// ???? char szAddress[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ????????? char szUser[DH_NEW_USER_NAME_LENGTH]; /// ????? int nPort; /// ??? UINT nStatus; /// ??, 0-???, 1-??????, 2-??????, 3-???????, 4-??????, 5-??????, 6-?????? } DH_ISCSI_TARGET; ///@brief CLIENT_GetISCSITargets?????????? typedef struct tagDH_OUT_ISCSI_TARGETS { DWORD dwSize; DH_ISCSI_TARGET* pstuTargets; /// iscsi????,??????????????????sizeof(DH_ISCSI_TARGET)*nMaxCount int nMaxCount; /// iscsi??????? int nRetCount; /// ???????iscsi????? } DH_OUT_ISCSI_TARGETS; ///@brief ??????? typedef enum tagDH_BITMAP_ACCURACY { BA_DAY , ///?? BA_HOUR , ///??? BA_5MIN , ///5???? }DH_BITMAP_ACCURACY; #define DH_MAX_BITMAPS 256 /// ????????,DH_MAX_BITMAPS*8?? #define DH_MAX_CHN_NUM 256 /// ???????? ///@brief CLIENT_GetBitmap?????????? typedef struct tagDH_IN_BITMAP { DWORD dwSize; NET_TIME stuStartTime; /// ??????, ??????? NET_TIME stuEndTime; /// ???????, ??????? int nChnList[DH_MAX_CHN_NUM]; /// [1, ??, 10] ?????????,-1?????????,0??????????? DH_BITMAP_ACCURACY emAccuracy; /// ??????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }DH_IN_BITMAP; ///@brief bitmap typedef struct tagDH_BITMAP_INFO { DWORD dwSize; int nChnID; ///?????,???????0,??????????? BYTE bBitmap[DH_MAX_BITMAPS]; ///???(????????????????????,?????????????) ///???DH_MAX_BITMAPS * 8????? int nBitNum; ///???????????? }DH_BITMAP_INFO; ///@brief CLIENT_GetBitmap?????????? typedef struct tagDH_OUT_BITMAP { DWORD dwSize; DH_BITMAP_INFO *pstBitmapInfos; /// ??????????????????sizeof(DH_BITMAP_INFO)*nMaxBitmapInfo int nGetBitmapInfo; int nMaxBitmapInfo; }DH_OUT_BITMAP; ///@brief ?????????? typedef struct tagDH_STORAGE_DEVICE_NAME { DWORD dwSize; char szName[DH_STORAGE_NAME_LEN]; } DH_STORAGE_DEVICE_NAME; /// RAID?? #define DH_RAID_STATE_ACTIVE 0x00000001 #define DH_RAID_STATE_INACTIVE 0x00000002 #define DH_RAID_STATE_CLEAN 0x00000004 #define DH_RAID_STATE_FAILED 0x00000008 #define DH_RAID_STATE_DEGRADED 0x00000010 #define DH_RAID_STATE_RECOVERING 0x00000020 #define DH_RAID_STATE_RESYNCING 0x00000040 #define DH_RAID_STATE_RESHAPING 0x00000080 #define DH_RAID_STATE_CHECKING 0x00000100 #define DH_RAID_STATE_NOTSTARTED 0x00000200 ///@brief RAID?????? typedef struct tagNET_RAID_MEMBER_INFO { DWORD dwSize; DWORD dwID; /// ?????, ?????????????????????? BOOL bSpare; /// ????????, true-??????, false-RAID???? } NET_RAID_MEMBER_INFO; ///@brief RAID??? typedef struct tagDH_STORAGE_RAID { DWORD dwSize; int nLevel; /// ??? int nState; /// RAID?????, ?? DH_RAID_STATE_ACTIVE | DH_RAID_STATE_DEGRADED int nMemberNum; /// ??????? char szMembers[DH_MAX_MEMBER_PER_RAID][DH_STORAGE_NAME_LEN]; /// RAID??? float fRecoverPercent; /// ???????, 0~100, RAID??????"Recovering"??"Resyncing"????? float fRecoverMBps; /// ??????, ????MBps, RAID??????"Recovering"??"Resyncing"????? float fRecoverTimeRemain; /// ?????????, ????????, RAID??????"Recovering"??"Resyncing"????? NET_RAID_MEMBER_INFO stuMemberInfos[DH_MAX_MEMBER_PER_RAID]; /// RAID?????? int nRaidDevices; /// RAID??????? int nTotalDevices; /// RAID??????? int nActiveDevices; /// ????????? int nWorkingDevices; /// ??????????? int nFailedDevices; /// ?????????? int nSpareDevices; /// ?????????? char szAliasName[DH_COMMON_STRING_24]; /// RAID????,UTF-8???????????szAliasNameEx char szAliasNameEx[32]; /// RAID????,UTF-8???? } DH_STORAGE_RAID; ///@brief ?????????? typedef struct tagDH_STORAGE_PARTITION { DWORD dwSize; char szName[DH_STORAGE_NAME_LEN]; /// ???? INT64 nTotalSpace; /// ????, byte INT64 nFreeSpace; /// ?????, byte char szMountOn[DH_STORAGE_MOUNT_LEN]; /// ????? char szFileSystem[DH_STORAGE_FILE_SYSTEM_LEN]; /// ????? int nStatus; /// ??????, 0-LV??????, 1-LV???? BOOL bIsSupportFs; /// ????????????????, TRUE:???? FALSE:????? } DH_STORAGE_PARTITION; ///@brief ???????? typedef struct tagDH_STORAGE_TANK { DWORD dwSize; int nLevel; /// ????, ???????0??,???????????????? int nTankNo; /// ???????????????????, ??0??? int nSlot; /// ??????????????, ??0?????? } DH_STORAGE_TANK; ///@brief MACRO_GROUP_STORAGE_DEV_28_BEGIN /// ???????? #define NET_STORAGE_DEV_OFFLINE 0 /// ???????????? #define NET_STORAGE_DEV_RUNNING 1 /// ????????????? #define NET_STORAGE_DEV_ACTIVE 2 /// RAID?? #define NET_STORAGE_DEV_SYNC 3 /// RAID??? #define NET_STORAGE_DEV_SPARE 4 /// RAID???(???) #define NET_STORAGE_DEV_FAULTY 5 /// RAID??? #define NET_STORAGE_DEV_REBUILDING 6 /// RAID??? #define NET_STORAGE_DEV_REMOVED 7 /// RAID??? #define NET_STORAGE_DEV_WRITE_ERROR 8 /// RAID?????? #define NET_STORAGE_DEV_WANT_REPLACEMENT 9 /// RAID???????I #define NET_STORAGE_DEV_REPLACEMENT 10 /// RAID???????? #define NET_STORAGE_DEV_GLOBAL_SPARE 11 /// ?????? #define NET_STORAGE_DEV_ERROR 12 /// ????, ??????????? #define NET_STORAGE_DEV_RAIDSUB 13 /// ???????????, ??????Raid????, ?????????????????????Raid #define NET_STORAGE_DEV_FATAL 14 /// ???????,?????????(DVR????????????) #define NET_STORAGE_DEV_SNAPSHOT_PARENT 15 /// ??????? #define NET_STORAGE_DEV_SNAPSHOT_CHILD 16 /// ???????? #define NET_STORAGE_DEV_VOLUMECLONE_PARENT 17 /// ???????? #define NET_STORAGE_DEV_VOLUMECLONE_CHILD 18 /// ????????? #define NET_STORAGE_DEV_UNFORMATTED 19 /// ??????? ///@brief MACRO_GROUP_STORAGE_DEV_28_END ///@brief ??????? typedef enum tagEM_STORAGE_DISK_POWERMODE { EM_STORAGE_DISK_POWERMODE_UNKNOWN, /// UNKnown????????????????????? EM_STORAGE_DISK_POWERMODE_NONE, /// ????? EM_STORAGE_DISK_POWERMODE_ACTIVE, /// ???? EM_STORAGE_DISK_POWERMODE_STANDBY, /// ?????? EM_STORAGE_DISK_POWERMODE_IDLE, /// ?????? }EM_STORAGE_DISK_POWERMODE; ///@brief ????????(EVS,??????????????) typedef enum tagEM_STORAGE_DISK_PREDISKCHECK { EM_STORAGE_DISK_PREDISKCHECK_UNKNOWN, /// UnKnown?? EM_STORAGE_DISK_PREDISKCHECK_GOOD, /// ????????120????,smart????????????????,?????????????. EM_STORAGE_DISK_PREDISKCHECK_WARN, /// cmd?????????????????,smart??????????? EM_STORAGE_DISK_PREDISKCHECK_ERROR, /// cmd???????????,smart??????????.????????????????? EM_STORAGE_DISK_PREDISKCHECK_WILLFAIL, /// ?????????64M????.cmd???????????,smart??????????.????????????????? EM_STORAGE_DISK_PREDISKCHECK_FAIL, /// ????????? EM_STORAGE_DISK_PREDISKCHECK_NONE, /// ????? EM_STORAGE_DISK_PREDISKCHECK_BECHECK, /// ?????????? EM_STORAGE_DISK_PREDISKCHECK_CHECKFAIL, /// ???????? }EM_STORAGE_DISK_PREDISKCHECK; ///@brief ????????? typedef struct tagDH_STORAGE_DEVICE { DWORD dwSize; char szName[DH_STORAGE_NAME_LEN]; /// ???? INT64 nTotalSpace; /// ????, byte INT64 nFreeSpace; /// ?????, byte BYTE byMedia; /// ????, 0-DISK, 1-CDROM, 2-FLASH BYTE byBUS; /// ????, 0-ATA, 1-SATA, 2-USB, 3-SDIO, 4-SCSI BYTE byVolume; /// ??????, 0-??????, 1-Raid??, 2-VG?????, 3-ISCSI, 4-??????????, 5-????????, 6-NAS??(????FTP, SAMBA, NFS) BYTE byState; /// ?????????, ??? NET_STORAGE_DEV_OFFLINE ?? NET_STORAGE_DEV_RUNNING ?? int nPhysicNo; /// ???????????????????? int nLogicNo; /// ??????????????????? char szParent[DH_STORAGE_NAME_LEN]; /// ???????????? char szModule[DH_STORAGE_NAME_LEN]; /// ?????? char szSerial[DH_SERIALNO_LEN]; /// ????????? char szFirmware[DH_VERSION_LEN]; /// ?????? int nPartitionNum; /// ?????? DH_STORAGE_PARTITION stuPartitions[DH_MAX_STORAGE_PARTITION_NUM]; /// ??????? DH_STORAGE_RAID stuRaid; /// RAID???, ???RAID????(byVolume == 1) DH_ISCSI_TARGET stuISCSI; /// ISCSI???, ???ISCSI??????(byVolume == 3) BOOL abTank; /// ???????? DH_STORAGE_TANK stuTank; /// ???????????????, abTank?TRUE????? EM_STORAGE_DISK_POWERMODE emPowerMode; /// ??????? EM_STORAGE_DISK_PREDISKCHECK emPreDiskCheck; /// ????????(EVS????????????????) int nOpState; /// ?????????: 0: ??????????, 1: ??????, 2: ????????, 3: ???????????, /// 4: ??????????, 5: ?????????, 6: ???????RAID 7: ????RAID??, 8: ??????RAID, 9: ???RAID??, /// 10: ???????????, 11: ??????????, 12: ??????, 13: ??????? } DH_STORAGE_DEVICE; ///@brief ?????OSD??? typedef struct tagNET_SPLIT_OSD { DWORD dwSize; BOOL bEnable; /// ??? DH_COLOR_RGBA stuFrontColor; /// ?????? DH_COLOR_RGBA stuBackColor; /// ??????? DH_RECT stuFrontRect; /// ??????? DH_RECT stuBackRect; /// ???????? BOOL bRoll; /// ?????????, ?????????? BYTE byRollMode; /// ??????, ??????????, 0-????????, 1-????????, 2-???????????, 3-??????????? BYTE byRoolSpeed; /// ????????, ??????????, 0~4, ???????????? BYTE byFontSize; /// ???????, ?????????? BYTE byTextAlign; /// ?????, 0-????, 1-????, 2-???? BYTE byType; /// OSD????, 0-???, 1-???, 2-???, 3-????? 4-????? 5-????+????, 6-????+???, 7-????+???, 8-????+????+??? BYTE Reserved[3]; /// ??????? char szContent[MAX_PATH]; /// OSD????(????????????szContentEx) /// ??????????, ???????????? /// ???????Time?????????Date??(????),??Week??(????),??Time??(???),??\n??(????)?????????? /// ????????????????????????????"Date\nTime",???????????? /// 2018??4??23?? /// 16:49:15 /// ?????????????????????"DateTime",???????????? /// 2018??4??23??16:49:15 float fPitch; /// ??????, 0.0 ~ 5.0 char szFontType[DH_COMMON_STRING_64]; /// ???????? char szPattern[8]; /// ???????? Row:????(???) Column:???? char szContentEx[1024]; /// OSD???? } NET_SPLIT_OSD; ///@brief CLIENT_GetSplitOSD ??????????(????????????OSD???) typedef struct tagDH_IN_SPLIT_GET_OSD { DWORD dwSize; int nChannel; /// ????? int nWindow; /// ????? } DH_IN_SPLIT_GET_OSD; ///@brief CLIENT_GetSplitOSD ??????????(????????????OSD???) typedef struct tagDH_OUT_SPLIT_GET_OSD { DWORD dwSize; int nOSDNum; /// OSD???? NET_SPLIT_OSD stuOSD[DH_VIDEO_CUSTOM_OSD_NUM]; /// OSD??? } DH_OUT_SPLIT_GET_OSD; ///@brief CLIENT_SetSplitOSD ??????????(????????????OSD???) typedef struct tagDH_IN_SPLIT_SET_OSD { DWORD dwSize; int nChannel; /// ????? int nWindow; /// ????? int nOSDNum; /// OSD???? NET_SPLIT_OSD stuOSD[DH_VIDEO_CUSTOM_OSD_NUM]; /// OSD??? } DH_IN_SPLIT_SET_OSD; ///@brief CLIENT_SetSplitOSD ??????????(????????????OSD???) typedef struct tagDH_OUT_SPLIT_SET_OSD { DWORD dwSize; } DH_OUT_SPLIT_SET_OSD; ///@brief CLIENT_GetSplitOSDEx ??????????(????????????OSD???) typedef struct tagNET_IN_SPLIT_GET_OSD_EX { DWORD dwSize; int nChannel; /// ????? int nWindow; /// ????? } NET_IN_SPLIT_GET_OSD_EX; ///@brief CLIENT_GetSplitOSDEx ??????????(????????????OSD???) typedef struct tagNET_OUT_SPLIT_GET_OSD_EX { DWORD dwSize; int nOSDNum; /// OSD???? NET_SPLIT_OSD stuOSD[DH_VIDEO_CUSTOM_OSD_NUM_EX]; /// OSD??? } NET_OUT_SPLIT_GET_OSD_EX; ///@brief CLIENT_SetSplitOSDEx??????????(????????????OSD???) typedef struct tagNET_IN_SPLIT_SET_OSD_EX { DWORD dwSize; int nChannel; /// ????? int nWindow; /// ????? int nOSDNum; /// OSD???? NET_SPLIT_OSD stuOSD[DH_VIDEO_CUSTOM_OSD_NUM_EX]; /// OSD??? }NET_IN_SPLIT_SET_OSD_EX; ///@brief CLIENT_SetSplitOSDEx ??????????(????????????OSD???) typedef struct tagNET_OUT_SPLIT_SET_OSD_EX { DWORD dwSize; } NET_OUT_SPLIT_SET_OSD_EX; ///@brief ???????????? typedef enum { EM_VIDEO_OUT_CTRL_CHANNEL, /// ?????????????, ????????????????????? EM_VIDEO_OUT_CTRL_COMPOSITE_ID, /// ?????ID??????, ???????????? } EM_VIDEO_OUT_CTRL_TYPE; ///@brief CLIENT_SetSplitSourceEx ??????????? typedef struct tagNET_IN_SET_SPLIT_SOURCE { DWORD dwSize; EM_VIDEO_OUT_CTRL_TYPE emCtrlType; /// ???????????? int nChannel; /// ??????????????, emCtrlType?EM_VIDEO_OUT_CTRL_CHANNEL????? const char* pszCompositeID; /// ?????ID, emCtrlType?EM_VIDEO_OUT_CTRL_COMPOSITE_ID????? int nWindow; /// ?????, -1?????????????????????? DH_SPLIT_SOURCE* pstuSources; /// ???????, ??nWindow=-1?, ???????????, ??????????????? /// ??????????????????sizeof(DH_SPLIT_SOURCE)*nSourceCount int nSourceCount; /// ???????? } NET_IN_SET_SPLIT_SOURCE; ///@brief ??????????????? typedef struct tagNET_SET_SPLIT_SOURCE_RESULT { DWORD dwSize; int nPushPort; /// ???????????????????? } NET_SET_SPLIT_SOURCE_RESULT; ///@brief CLIENT_SetSplitSourceEx ??????????? typedef struct tagNET_OUT_SET_SPLIT_SOURCE { DWORD dwSize; NET_SET_SPLIT_SOURCE_RESULT* pstuResults; /// ??????????????, ???NET_IN_SET_SPLIT_SOURCE???????????, ??????????,?????sizeof(NET_SET_SPLIT_SOURCE_RESULT)*nMaxResultCount, ?????????????NULL int nMaxResultCount; /// pstuResults???????? int nRetCount; /// ????????? } NET_OUT_SET_SPLIT_SOURCE; ///@brief CLIENT_SplitExchangeSource ?????????? typedef struct tagNET_IN_SPLIT_EXCHANGE_SOURCE { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindowID1; /// ?????1 int nWindowID2; /// ?????2 }NET_IN_SPLIT_EXCHANGE_SOURCE; ///@brief CLIENT_SplitExchangeSource ?????????? typedef struct tagNET_OUT_SPLIT_EXCHANGE_SOURCE { DWORD dwSize; }NET_OUT_SPLIT_EXCHANGE_SOURCE; ///@brief ????????? typedef enum tagNET_VOLUME_TYPE { VOLUME_TYPE_ALL = 0 , ///?????? VOLUME_TYPE_PHYSICAL , ///?????? VOLUME_TYPE_RAID , ///Raid?? VOLUME_TYPE_VOLUME_GROUP , ///VG??????? VOLUME_TYPE_ISCSI , ///iSCSI?? VOLUME_TYPE_INVIDUAL_PHY , ///?????????????????????,???????, RAID,??????????????? VOLUME_TYPE_GLOBAL_SPARE , ///???????? VOLUME_TYPE_NAS , ///NAS??(????FTP, SAMBA, NFS) VOLUME_TYPE_INVIDUAL_RAID, ///????RAID???????????????????????????? VOLUME_TYPE_MAX , }NET_VOLUME_TYPE; #define MAX_DEVICE_VOLUME_NUMS 128 ///?????????????? ///@brief CLIENT_QueryDevInfo , NET_QUERY_DEV_STORAGE_NAMES????????????? typedef struct tagNET_IN_STORAGE_DEV_NAMES { DWORD dwSize; NET_VOLUME_TYPE emVolumeType; ///??????????? } NET_IN_STORAGE_DEV_NAMES; ///@brief CLIENT_QueryDevInfo , NET_QUERY_DEV_STORAGE_NAMES????????????? typedef struct tagNET_OUT_STORAGE_DEV_NAMES { DWORD dwSize; int nDevNamesNum; ///????????????????????? char szStoregeDevNames[MAX_DEVICE_VOLUME_NUMS][DH_STORAGE_NAME_LEN]; ///????????? }NET_OUT_STORAGE_DEV_NAMES; ///@brief CLIENT_QueryDevInfo , NET_QUERY_DEV_STORAGE_INFOS?????????? typedef struct tagNET_IN_STORAGE_DEV_INFOS { DWORD dwSize; NET_VOLUME_TYPE emVolumeType; ///??????????? } NET_IN_STORAGE_DEV_INFOS; ///@brief CLIENT_QueryDevInfo , NET_QUERY_DEV_STORAGE_INFOS?????????? typedef struct tagNET_OUT_STORAGE_DEV_INFOS { DWORD dwSize; int nDevInfosNum; ///?????????????????????? DH_STORAGE_DEVICE stuStoregeDevInfos[MAX_DEVICE_VOLUME_NUMS]; ///??????????,DH_STORAGE_DEVICE??dwsize??w? } NET_OUT_STORAGE_DEV_INFOS; ///@brief ???????????????? typedef enum tagNET_RECENCY_CAR_INFO { RECENCY_CAR_INFO_UNKNOW = 0 , RECENCY_CAR_INFOO_NEWEST , ///???? RECENCY_CAR_INFO_ODLEST , ///??? RECENCY_CAR_INFO_MAX , }NET_RECENCY_CAR_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_RECENCY_JNNCTION_CAR_INFO?????????? typedef struct tagNET_IN_GET_RECENCY_JUNCTION_CAR_INFO { DWORD dwSize; int nChannel; ///???????? NET_RECENCY_CAR_INFO emRecencyType; ///????????????????,???????????? DWORD nIndex; ///????????????,??1???,????0??????1?? }NET_IN_GET_RECENCY_JUNCTION_CAR_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_RECENCY_JNNCTION_CAR_INFO?????????? typedef struct tagNET_OUT_GET_RECENCY_JUNCTION_CAR_INFO { DWORD dwSize; DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? }NET_OUT_GET_RECENCY_JUNCTION_CAR_INFO; #define NET_MAX_FISHEYE_WINDOW_NUM 8 /// ???????????? ///@brief ??????????? typedef struct tagNET_FISHEYE_WINDOW_INFO { DWORD dwSize; DWORD dwWindowID; /// ????ID int nFocusX; /// EPtz????????????????????? int nFocusY; /// EPtz (???????????????????? int nHorizontalAngle; /// EPtz??????? int nVerticalAngle; /// EPtz??????? }NET_FISHEYE_WINDOW_INFO; ///@brief ???CLIENT_QueryDevInfo???,NET_QUERY_DEV_FISHEYE_WININFO???????????????????? typedef struct tagNET_IN_FISHEYE_WININFO { DWORD dwSize; int nChannelId; /// ????? int nWindowNum; /// ???????????? int nWindows[NET_MAX_FISHEYE_WINDOW_NUM]; /// ????id,??????? }NET_IN_FISHEYE_WININFO; ///@brief ???CLIENT_QueryDevInfo???,NET_QUERY_DEV_FISHEYE_WININFO???????????????????? typedef struct tagNET_OUT_FISHEYE_WININFO { DWORD dwSize; int nWindowNum; ///??????? NET_FISHEYE_WINDOW_INFO stuWindows[NET_MAX_FISHEYE_WINDOW_NUM]; /// ?????????? }NET_OUT_FISHEYE_WININFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_LANES_STATE?????????? typedef struct tagNET_IN_GET_LANES_STATE { DWORD dwSize; int nLaneNumber; ///-1???????????????,>=0?????????????? }NET_IN_GET_LANES_STATE; ///@brief ???????? typedef enum tagNET_TRAFFIC_LIGHT_STATUS { LIGHT_STATUS_UNKNOWN = 0 , ///??? LIGHT_STATUS_RED , ///??? LIGHT_STATUS_GREEN , ///??? LIGHT_STATUS_YELLOW , ///??? }NET_TRAFFIC_LIGHT_STATUS; ///@brief ????????? typedef struct tatNET_TRAFFIC_LIGHT_INFO { DWORD dwSize; NET_TRAFFIC_LIGHT_STATUS emStraightLightInfo; ///????????? NET_TRAFFIC_LIGHT_STATUS emLeftLightInfo; ///????????? NET_TRAFFIC_LIGHT_STATUS emRightLightInfo; ///????????? NET_TRAFFIC_LIGHT_STATUS emUTurnLightInfo; ///????????? }NET_TRAFFIC_LIGHT_INFO; ///@brief ???????? typedef enum tagNET_TRAFFIC_DIRECTION { DIRECTION_UNKNOW = 0 , ///??? DIRECTION_STRAIGHT , ///??? DIRECTION_LEFT , ///??? DIRECTION_RIGHT , ///??? DIRECTION_UTURN , ///??? }NET_TRAFFIC_DIRECTION; ///@brief ??????? typedef struct tagNET_TRAFFIC_LANE_INFO { DWORD dwSize; UINT nLaneNumber; ///??????,0??? UINT nSupportDirectionNum; ///?????????????????? NET_TRAFFIC_DIRECTION emTrafficDirections[MAX_LANE_DIRECTION_NUM]; ///????????,????????????????????????? NET_TRAFFIC_JAM_STATUS emJamState; ///?????????? /*???????*/ UINT nLargeVehicleNum; ///????????? UINT nMediumVehicleNum; ///????????? UINT nSmallVehicleNum; ///????????? UINT nMotoNum; ///????????? }NET_TRAFFIC_LANE_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_LANES_STATE?????????? typedef struct tagNET_OUT_GET_LANES_STATE { DWORD dwSize; int nGetLaneInfoNum; ///??????????????? NET_TRAFFIC_LANE_INFO stLaneInfos[MAX_LANE_INFO_NUM]; ///????????????? NET_TRAFFIC_LIGHT_INFO stLightInfo; ///???????? }NET_OUT_GET_LANES_STATE; ///@brief CLIENT_QueryDevInfo , NET_QUERY_SYSTEM_INFO ????????????? typedef struct tagNET_IN_SYSTEM_INFO { DWORD dwSize; } NET_IN_SYSTEM_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_SYSTEM_INFO ????????????? typedef struct tagNET_OUT_SYSTEM_INFO { DWORD dwSize; BOOL bHasRTC; ///?????RTC???(??????????)???TRUE,?????RTC int nRetMCUNum; /// ????????????? char szMCUVersion[MAX_MCU_NUM][DH_MAX_VERSION_LEN]; /// ?????????????? }NET_OUT_SYSTEM_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_REG_DEVICE_NET_INFO ????????????? typedef struct tagNET_IN_REGDEV_NET_INFO { DWORD dwSize; char szDevSerial[DH_DEV_SERIALNO_LEN]; /// ?????????????????????? }NET_IN_REGDEV_NET_INFO; ///@brief ??????????????????????? typedef enum tagNET_CELLUAR_NET_TYPE { EM_CELLUAR_NET_UNKNOW = -1 , ///??? EM_CELLUAR_NET_PRIVATE_3G_4G = 0 , ///???3G/4G????,(??M??????) EM_CELLUAR_NET_COMMERCIAL_3G_4G = 1 , ///?????3G/4G????,(????????????) EM_CELLUAR_NET_MAX , }NET_CELLUAR_NET_TYPE; ///@brief CLIENT_QueryDevInfo , NET_QUERY_REG_DEVICE_NET_INFO ????????????? typedef struct tagNET_OUT_REGDEV_NET_INFO { DWORD dwSize; NET_CELLUAR_NET_TYPE emCelluarNetType; ///??????????????????????? }NET_OUT_REGDEV_NET_INFO; ///@brief ???????????????????????? typedef enum tagNET_VIDEO_CHANNEL_TYPE { NET_VIDEO_CHANNEL_TYPE_ALL, /// ??? NET_VIDEO_CHANNEL_TYPE_INPUT, /// ???? NET_VIDEO_CHANNEL_TYPE_OUTPUT, /// ??? } NET_VIDEO_CHANNEL_TYPE; ///@brief CLIENT_QueryDevInfo , NET_QUERY_VIDEOCHANNELSINFO ??????????? typedef struct tagNET_IN_GET_VIDEOCHANNELSINFO { DWORD dwSize; NET_VIDEO_CHANNEL_TYPE emType; /// ??????????????? } NET_IN_GET_VIDEOCHANNELSINFO; ///@brief ?????????? typedef struct tagNET_VIDEOCHANNELS_INPUT { int nThermographyCount; /// ???????????? int nThermography[64]; /// ??????????????? int nMultiPreviewCount; /// ?????????????? int nMultiPreview[4]; /// ???????????? int nPIPCount; /// ????????????? int nPIP[4]; /// ??????????? int nCompressPlayCount; /// ????????????????? int nCompressPlay[4]; /// ??????????????? int nSDCount; /// ?????????? int nSD[64]; /// ???????? int nPTZCount; /// ?????????????????? short nPTZ[64]; /// ???????????????? int nFuseRadarCount; /// ??????????????????????????????????? int nFuseRadar[64]; /// ????????????????????????????????? int nPureRadarCount; /// ????????????????????????? int nPureRadar[64]; /// ??????????????????????? BOOL bIsPTZValid; /// nPTZ??????? char reserved[4092]; } NET_VIDEOCHANNELS_INPUT; ///@brief ????????????? typedef struct tagNET_VIDEOCHANNELS_INPUT_EX { int nSDCount; /// ?????????? unsigned short nSD[1024]; /// ??????????????????(???) int nPTZCount; /// ?????????????????? unsigned short nPTZ[1024]; /// ????????????????(???) BOOL bIsPTZValid; /// nPTZ??????? char reserved[1020]; /// ?????? }NET_VIDEOCHANNELS_INPUT_EX; ///@brief ????????? typedef struct tagNET_VIDEOCHANNELS_OUTPUT { int nVGACount; /// VGA??????? int nVGA[128]; /// VGA??? int nTVCount; /// TV??????? int nTV[128]; /// TV??? char reserved[512]; } NET_VIDEOCHANNELS_OUTPUT; ///@brief CLIENT_QueryDevInfo , NET_QUERY_VIDEOCHANNELSINFO ??????????? typedef struct tagNET_OUT_GET_VIDEOCHANNELSINFO { DWORD dwSize; NET_VIDEOCHANNELS_INPUT stInputChannels; /// ??????????,????????NET_VIDEO_CHANNEL_TYPE_ALL/INPUT????? NET_VIDEOCHANNELS_OUTPUT stOutputChannels; /// ?????????,????????NET_VIDEO_CHANNEL_TYPE_ALL/OUTPUT????? NET_VIDEOCHANNELS_INPUT_EX stInputChannelsEx; /// ?????????????,????????NET_VIDEO_CHANNEL_TYPE_ALL/INPUT????? } NET_OUT_GET_VIDEOCHANNELSINFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_WORKGROUP_NAMES ??????????? typedef struct tagNET_IN_WORKGROUP_NAMES { DWORD dwSize; } NET_IN_WORKGROUP_NAMES; /// ?????????????? #define WORKGROUP_NAME_LEN 32 ///@brief CLIENT_QueryDevInfo , NET_QUERY_WORKGROUP_NAMES ??????????? typedef struct tagNET_OUT_WORKGROUP_NAMES { DWORD dwSize; int nCount; /// ????????? char szName[64][WORKGROUP_NAME_LEN]; /// ?????????????? } NET_OUT_WORKGROUP_NAMES; ///@brief CLIENT_QueryDevInfo , NET_QUERY_WORKGROUP_INFO ??????????? typedef struct tagNET_IN_WORKGROUP_INFO { DWORD dwSize; char szName[WORKGROUP_NAME_LEN]; /// ???????????????? } NET_IN_WORKGROUP_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_WORKGROUP_INFO ??????????? typedef struct tagNET_OUT_WORKGROUP_INFO { DWORD dwSize; int nState; /// ????0 ??????,1 ????,2 ??,3 ???? int nTotalSpace; /// ???? ??????MB -1????????? int nFreeSpace; /// ????? ??????MB -1????????? } NET_OUT_WORKGROUP_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_WLAN_ACCESSPOINT ??????????? typedef struct tagNET_IN_WLAN_ACCESSPOINT { DWORD dwSize; char szSSID[DH_MAX_SSID_LEN]; /// ???????????????????????,???????????????? char szName[MAX_COMMON_STRING_32]; /// ????????, ????, ????eth2 } NET_IN_WLAN_ACCESSPOINT; ///@brief ???????? typedef struct tagNET_WLAN_ACCESSPOINT_INFO { char szSSID[DH_MAX_SSID_LEN]; /// ???????????? int nStrength; /// ?????? ????0-100 int nAuthMode; /// ?????0:OPEN;1:SHARED;2:WPA;3:WPA-PSK;4:WPA2;5:WPA2-PSK; /// 6:WPA-NONE(????adhoc??????), /// 7-11??????,?????????????????????????? /// 7:WPA-PSK | WPA2-PSK; 8:WPA | WPA2; 9:WPA | WPA-PSK; /// 10:WPA2 | WPA2-PSK; 11:WPA | WPA-PSK |WPA2 |WPA2-PSK ///12: UnKnown int nEncrAlgr; /// 0:NONE, 1:WEP, 2:TKIP, 3:AES(CCMP), 4:TKIP+AES( mix Mode), 5:UnKnown char reserved[1016]; } NET_WLAN_ACCESSPOINT_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_WLAN_ACCESSPOINT ??????????? typedef struct tagNET_OUT_WLAN_ACCESSPOINT { DWORD dwSize; int nCount; /// ??????????????? NET_WLAN_ACCESSPOINT_INFO stuInfo[128]; /// ???????? } NET_OUT_WLAN_ACCESSPOINT; ///@brief CLIENT_QueryDevInfo , NET_QUERY_TRAFFICRADAR_VERSION ??????????? typedef struct tagNET_IN_TRAFFICRADAR_VERSION { DWORD dwSize; int nChannel; /// ????? } NET_IN_TRAFFICRADAR_VERSION; ///@brief CLIENT_QueryDevInfo , NET_QUERY_TRAFFICRADAR_VERSION ??????????? typedef struct tagNET_OUT_TRAFFICRADAR_VERSION { DWORD dwSize; char szVersion[DH_MAX_VERSION_LEN]; /// ????? } NET_OUT_TRAFFICRADAR_VERSION; typedef NET_OUT_GET_LANES_STATE NET_CB_LANES_STATE; ///@brief ??? CLIENT_AttachLanesState ??????? typedef void (CALLBACK *fNotifyLanesState)(LLONG lLanesStateHandle, NET_CB_LANES_STATE* pLanesStateInfo, LDWORD dwUser, void *reserved); ///@brief ??? CLIENT_AttachLanesState ????????? typedef struct tagNET_IN_ATTACH_LANES_STATE { DWORD dwSize; /// ???????? int nChannelID; /// ????? int nLaneNumber; /// -1????????????????,>=0??????????????? fNotifyLanesState cbNotifyLanesState; /// ??????? LDWORD dwUser; /// ??????????? } NET_IN_ATTACH_LANES_STATE; ///@brief ??? CLIENT_AttachLanesState ????????? typedef struct tagNET_OUT_ATTACH_LANES_STATE { DWORD dwSize; /// ???????? } NET_OUT_ATTACH_LANES_STATE; ///@brief CLIENT_MatrixSwitch ??????? typedef struct tagNET_IN_MATRIX_SWITCH { DWORD dwSize; DH_SPLIT_MODE emSplitMode; /// ????? int* pnOutputChannels; /// ??????, ???????????????????????, ??????? /// ??????????????????sizeof(int)*nOutputChannelCount int nOutputChannelCount; /// ???????? int* pnInputChannels; /// ???????, ???????????????????????? /// ??????????????????sizeof(int)*nInputChannelCount int nInputChannelCount; /// ????????? } NET_IN_MATRIX_SWITCH; ///@brief CLIENT_MatrixSwitch ??????? typedef struct tagNET_OUT_MATRIX_SWITCH { DWORD dwSize; } NET_OUT_MATRIX_SWITCH; ///@brief CLIENT_SplitSetMultiSource ??????????? typedef struct tagNET_IN_SPLIT_SET_MULTI_SOURCE { DWORD dwSize; EM_VIDEO_OUT_CTRL_TYPE emCtrlType; /// ???????????? int nChannel; /// ??????????????, emCtrlType?EM_VIDEO_OUT_CTRL_CHANNEL????? const char* pszCompositeID; /// ?????ID, emCtrlType?EM_VIDEO_OUT_CTRL_COMPOSITE_ID????? BOOL bSplitModeEnable; /// ????????? DH_SPLIT_MODE emSplitMode; /// ?????, bSplitModeEnable=TRUE????? int nGroupID; /// ???????, bSplitModeEnable=TRUE????? int* pnWindows; /// ?????????,??????????????????sizeof(int)*nWindowCount int nWindowCount; /// ???????? DH_SPLIT_SOURCE* pstuSources; /// ???????, ????????????, ???????????,??????????????????sizeof(DH_SPLIT_SOURCE)*nWindowCount } NET_IN_SPLIT_SET_MULTI_SOURCE; ///@brief CLIENT_SplitSetMultiSource ??????????? typedef struct tagNET_OUT_SPLIT_SET_MULTI_SOURCE { DWORD dwSize; } NET_OUT_SPLIT_SET_MULTI_SOURCE; ///@brief ????????????? typedef enum tagNET_SPLIT_OPERATE_TYPE { NET_SPLIT_OPERATE_SET_BACKGROUND, /// ?????????, ??? NET_IN_SPLIT_SET_BACKGROUND ?? NET_OUT_SPLIT_SET_BACKBROUND NET_SPLIT_OPERATE_GET_BACKGROUND, /// ?????????, ??? NET_IN_SPLIT_GET_BACKGROUND ?? NET_OUT_SPLIT_GET_BACKGROUND NET_SPLIT_OPERATE_SET_PREPULLSRC, /// ??????????, ??? NET_IN_SPLIT_SET_PREPULLSRC ?? NET_OUT_SPLIT_SET_PREPULLSRC NET_SPLIT_OPERATE_SET_HIGHLIGHT, /// ?????????????????, ??? NET_IN_SPLIT_SET_HIGHLIGHT ?? NET_OUT_SPLIT_SET_HIGHLIGHT NET_SPLIT_OPERATE_SET_ZORDER, /// ????????Z??, ??? NET_IN_SPLIT_SET_ZORDER ?? NET_OUT_SPLIT_SET_ZORDER NET_SPLIT_OPERATE_SET_TOUR, /// ???????????, ??? NET_IN_SPLIT_SET_TOUR ?? NET_OUT_SPLIT_SET_TOUR NET_SPLIT_OPERATE_GET_TOUR_STATUS, /// ????????????, ??? NET_IN_SPLIT_GET_TOUR_STATUS ?? NET_OUT_SPLIT_GET_TOUR_STATUS NET_SPLIT_OPERATE_GET_SCENE, /// ?????????????, ??? NET_IN_SPLIT_GET_SCENE ?? NET_OUT_SPLIT_GET_SCENE NET_SPLIT_OPERATE_OPEN_WINDOWS, /// ????????, ??? NET_IN_SPLIT_OPEN_WINDOWS ?? NET_OUT_SPLIT_OPEN_WINDOWS NET_SPLIT_OPERATE_SET_WORK_MODE, /// ??????????, ??? NET_IN_SPLIT_SET_WORK_MODE ?? NET_OUT_SPLIT_SET_WORK_MODE NET_SPLIT_OPERATE_GET_PLAYER, /// ????????????,??? NET_IN_SPLIT_GET_PLAYER ?? NET_OUT_SPLIT_GET_PLAYER NET_WM_OPERATE_SET_WORK_MODE, /// ????????????,??? NET_IN_WM_SET_WORK_MODE ?? NET_OUT_WM_SET_WORK_MODE NET_WM_OPERATE_GET_WORK_MODE, /// ????????????,??? NET_IN_WM_GET_WORK_MODE ?? NET_OUT_WM_GET_WORK_MODE NET_SPLIT_OPERATE_CLOSE_WINDOWS, /// ???????, ??? NET_IN_SPLIT_CLOSE_WINDOWS ?? NET_OUT_SPLIT_CLOSE_WINDOWS NET_WM_OPERATE_SET_FISH_EYE_PARAM, /// ?????????????????????? , ???NET_IN_WM_SET_FISH_EYE_PARAM ?? NET_OUT_WM_SET_FISH_EYE_PARAM NET_WM_OPERATE_SET_CORRIDOR_MODE, /// ??????????????????NET_IN_WM_SET_CORRIDOR_MODE??NET_OUT_WM_SET_CORRIDOR_MODE NET_WM_OPERATE_GET_CORRIDOR_MODE, /// ??????????????????NET_IN_WM_GET_CORRIDOR_MODE??NET_OUT_WM_GET_CORRIDOR_MODE NET_WM_OPERATE_SET_VOLUME_COLUMN, /// ???????????????????????NET_IN_WM_SET_VOLUME_COLUMN??NET_OUT_WM_SET_VOLUME_COLUMN NET_WM_OPERATE_GET_VOLUME_COLUMN, /// ??????????????????????NET_IN_WM_GET_VOLUME_COLUMN??NET_OUT_WM_GET_VOLUME_COLUMN NET_WM_OPERATE_SET_BACKGROUND, /// ?????????????????NET_IN_WM_SET_BACKGROUND??NET_OUT_WM_SET_BACKGROUND NET_WM_OPERATE_GET_BACKGROUND, /// ?????????????????NET_IN_WM_GET_BACKGROUND??NET_OUT_WM_GET_BACKGROUND NET_WM_OPERATE_SET_ROTATE_MODE, /// ???????????????????NET_IN_WM_SET_ROTATE_MODE??NET_OUT_WM_SET_ROTATE_MODE NET_WM_OPERATE_SET_MEETING_MODE, /// ???????????????????????NET_IN_WM_SET_MEETING_MODE??NET_OUT_WM_SET_MEETING_MODE NET_WM_OPERATE_SET_LOCK_POSITION, /// ??????????????????????NET_IN_WM_SET_LOCK_POSITION??NET_OUT_WM_SET_LOCK_POSITION NET_WM_OPERATE_SET_COLLECTION_CTRL_ID, /// ??????????ID?????NET_IN_WM_SET_COLLECTION_CTRL_ID??NET_OUT_WM_SET_COLLECTION_CTRL_ID NET_SPLIT_OPERATES_SET_SOURCE_ATTRIBUTE, /// ????????????????NET_IN_SPLIT_SET_SOURCE_ATTRIBUTE??NET_OUT_SPLIT_SET_SOURCE_ATTRIBUTE NET_SPLIT_OPERATES_SET_DOCK_CONTROL, /// ?????????????????NET_IN_SPLIT_SET_DOCK_CONTROL??NET_OUT_SPLIT_SET_DOCK_CONTROL NET_WM_OPERATE_SET_MODE, /// ????????????????NET_IN_WM_SET_MODE??NET_OUT_WM_SET_MODE NET_SPLIT_OPERATE_SET_WATERMARK, /// ??????????????????????NET_IN_SPLIT_SET_WATERMARK??NET_OUT_SPLIT_SET_WATERMARK } NET_SPLIT_OPERATE_TYPE; ///@brief ???????????????????????? typedef struct tagNET_IN_SPLIT_SET_HIGHLIGHT { DWORD dwSize; int nChannel; /// ????????? int nWindow; /// ????? BOOL bHighLightEn; /// ?????????,TRUE-??????? DH_COLOR_RGBA stuColor; /// ?????? int nBlinkTimes; /// ?????????? int nBlinkInterval; /// ?????????,????ms }NET_IN_SPLIT_SET_HIGHLIGHT; ///@brief ???????????????????????? typedef struct tagNET_OUT_SPLIT_SET_HIGHLIGHT { DWORD dwSize; }NET_OUT_SPLIT_SET_HIGHLIGHT; ///@brief ????????????????? typedef struct tagNET_IN_SPLIT_SET_PREPULLSRC { DWORD dwSize; int nChannel; /// ????????? int nWindow; /// ????? int nSrcCount; /// ?????????? DH_SPLIT_SOURCE* pSources; /// ?????????,??????????????????sizeof(DH_SPLIT_SOURCE)*nSrcCount } NET_IN_SPLIT_SET_PREPULLSRC; ///@brief ????????????????? typedef struct tagNET_SPLIT_SET_PREPULLSRC_RESULT { DWORD dwSize; BOOL bResult; /// ??????, TRUE-???, FALSE-??? DWORD dwErrorCode; /// ???????? } NET_SPLIT_SET_PREPULLSRC_RESULT; ///@brief ????????????????? typedef struct tagNET_OUT_SPLIT_SET_PREPULLSRC { DWORD dwSize; int nResultCount; /// ???????, ??????????????? NET_SPLIT_SET_PREPULLSRC_RESULT* pResults; /// ??? } NET_OUT_SPLIT_SET_PREPULLSRC; ///@brief ?????????????????????? typedef struct tagNET_IN_SPLIT_SET_BACKGROUND { DWORD dwSize; int nChannel; /// ??????????? BOOL bEnable; /// ??? const char* pszFileName; /// ????????? } NET_IN_SPLIT_SET_BACKGROUND; ///@brief ?????????????????????? typedef struct tagNET_OUT_SPLIT_SET_BACKGROUND { DWORD dwSize; } NET_OUT_SPLIT_SET_BACKGROUND; ///@brief ????????????????????? typedef struct tagNET_IN_SPLIT_GET_BACKGROUND { DWORD dwSize; int nChannel; /// ??????????? } NET_IN_SPLIT_GET_BACKGROUND; ///@brief ????????????????????? typedef struct tagNET_OUT_SPLIT_GET_BACKGROUND { DWORD dwSize; BOOL bEnable; /// ??? char szFileName[DH_COMMON_STRING_256]; /// ????????? } NET_OUT_SPLIT_GET_BACKGROUND; ///@brief ?????????????????? typedef struct tagNET_IN_WM_SET_BACKGROUND { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? char *pszCompositeID; /// ?????ID int nWindowID; /// ????? BOOL bEnable; /// ???????? char szFileName[DH_COMMON_STRING_128]; /// ?????????? } NET_IN_WM_SET_BACKGROUND; ///@brief ?????????????????? typedef struct tagNET_OUT_WM_SET_BACKGROUND { DWORD dwSize; } NET_OUT_WM_SET_BACKGROUND; ///@brief ?????????????????? typedef struct tagNET_IN_WM_GET_BACKGROUND { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? char *pszCompositeID; /// ?????ID int nWindowID; /// ????? } NET_IN_WM_GET_BACKGROUND; ///@brief ?????????????????? typedef struct tagNET_OUT_WM_GET_BACKGROUND { DWORD dwSize; BOOL bEnable; /// ???????? char szFileName[DH_COMMON_STRING_128]; /// ????????? } NET_OUT_WM_GET_BACKGROUND; ///@brief ????Z???? typedef enum tagNET_WINDOW_ZORDER { NET_WINDOW_ZORDER_TOP, /// ???? NET_WINDOW_ZORDER_BOTTOM, /// ??? NET_WINDOW_ZORDER_UP, /// ??????? NET_WINDOW_ZORDER_DOWN, /// ??????? } NET_WINDOW_ZORDER; ///@brief ?????????? typedef struct tagDH_WND_ZORDER { DWORD dwSize; unsigned int nWindowID; /// ??????? unsigned int nZOrder; /// Z???? } DH_WND_ZORDER; ///@brief ???????Z????????? typedef struct tagNET_IN_SPLIT_SET_ZORDER { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ????? NET_WINDOW_ZORDER emZOrder; /// ??????Z?? } NET_IN_SPLIT_SET_ZORDER; ///@brief ???????Z?????????, ????????????Z??????????????, ??????????????????Z?? typedef struct tagNET_OUT_SPLIT_SET_ZORDER { DWORD dwSize; DH_WND_ZORDER* pZOders; /// ???????????, ??????????,?????sizeof(DH_WND_ZORDER)*nMaxWndCount int nMaxWndCount; /// ?????????????? int nWndCount; /// ???????????? } NET_OUT_SPLIT_SET_ZORDER; ///@brief ??????????? typedef enum tagEM_NET_WINDOW_TOUR_ACTION { EM_NET_WND_TOUR_ACTION_START, /// ??? EM_NET_WND_TOUR_ACTION_STOP, /// ?? } EM_NET_WINDOW_TOUR_ACTION; ///@brief ??????????????????, ???NET_SPLIT_OPERATE_SET_TOUR typedef struct tagNET_IN_SPLIT_SET_TOUR { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ????? EM_NET_WINDOW_TOUR_ACTION emAction; /// ??????? } NET_IN_SPLIT_SET_TOUR; ///@brief ??????????????????, ???NET_SPLIT_OPERATE_SET_TOUR typedef struct tagNET_OUT_SPLIT_SET_TOUR { DWORD dwSize; } NET_OUT_SPLIT_SET_TOUR; ///@brief ???????????????????, ???NET_SPLIT_OPERATE_GET_TOUR_STATUS typedef struct tagNET_IN_SPLIT_GET_TOUR_STATUS { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ?????, -1??????????? } NET_IN_SPLIT_GET_TOUR_STATUS; ///@brief ????? typedef enum tagNET_TOUR_STATUS { NET_TOUR_UNKNOWN, /// ??? NET_TOUR_START, /// ????? NET_TOUR_STOP, /// ????? }NET_TOUR_STATUS; ///@brief ???????????? typedef struct tagNET_WINDOW_TOUR_STATUS_INFO { DWORD dwSize; int nWindow; /// ????? NET_TOUR_STATUS emStatus; /// ?? } NET_WINDOW_TOUR_STATUS_INFO; ///@brief ???????????????????, ???NET_SPLIT_OPERATE_GET_TOUR_STATUS typedef struct tagNET_OUT_SPLIT_GET_TOUR_STATUS { DWORD dwSize; NET_WINDOW_TOUR_STATUS_INFO* pstuStatus; /// ????????, ??????????. ?????????-1???????????????????. int nMaxStatusCount; /// ????????????, ??????? int nRetStatusCount; /// ????????????, ?????? } NET_OUT_SPLIT_GET_TOUR_STATUS; ///@brief ???????????????, ???NET_SPLIT_OPERATE_OPEN_WINDOWS typedef struct tagNET_IN_SPLIT_OPEN_WINDOWS { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????id int nWindowNum; /// ???????? NET_RECT* pstuWindowRects; /// ????????????,??????????????????sizeof(NET_RECT)*nWindowNum BOOL bDirectable; /// ?????????? } NET_IN_SPLIT_OPEN_WINDOWS; ///@brief ??????? typedef struct tagNET_SPLIT_WINDOW_INFO { DWORD dwSize; int nWindowID; /// ????? int nZOrder; /// Z???? char szControlID[DH_DEV_ID_LEN]; /// ?????? } NET_SPLIT_WINDOW_INFO; ///@brief ???????????????, ???NET_SPLIT_OPERATE_OPEN_WINDOWS typedef struct tagNET_OUT_SPLIT_OPEN_WINDOWS { DWORD dwSize; NET_SPLIT_WINDOW_INFO* pstuWindows; /// ???????, ??????????,?????sizeof(NET_SPLIT_WINDOW_INFO)*nMaxWindowCount int nMaxWindowCount; /// ??????????????, ??????? int nRetWindowCount; /// ???????? } NET_OUT_SPLIT_OPEN_WINDOWS; ///@brief ?????????? typedef enum tagNET_SPLIT_WORK_MODE { NET_SPLIT_WORK_MODE_UNKNOWN, /// ??? NET_SPLIT_WORK_MODE_LOCAL, /// ????????? NET_SPLIT_WORK_MODE_REPLAY, /// ????? }NET_SPLIT_WORK_MODE; ///@brief ?????????????????, ??? NET_SPLIT_OPERATE_SET_WORK_MODE typedef struct tagNET_IN_SPLIT_SET_WORK_MODE { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID NET_SPLIT_WORK_MODE emMode; /// ?????? }NET_IN_SPLIT_SET_WORK_MODE; ///@brief ?????????????????, ??? NET_SPLIT_OPERATE_SET_WORK_MODE typedef struct tagNET_OUT_SPLIT_SET_WORK_MODE { DWORD dwSize; }NET_OUT_SPLIT_SET_WORK_MODE; ///@brief ?????????? typedef enum tagNET_SPLIT_PLAYER_TYPE { NET_SPLIT_PLAYER_TYPE_UNKNOWN, /// ??? NET_SPLIT_PLAYER_TYPE_FILE_LIST, /// ????????????? NET_SPLIT_PLAYER_TYPE_FILE, /// ????????? }NET_SPLIT_PLAYER_TYPE; ///@brief ???????????????????, ??? NET_SPLIT_OPERATE_GET_PLAYER typedef struct tagNET_IN_SPLIT_GET_PLAYER { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID NET_SPLIT_PLAYER_TYPE emType; /// ?????????? int nWindow; /// ??????????????? }NET_IN_SPLIT_GET_PLAYER; ///@brief ???????????????????, ??? NET_SPLIT_OPERATE_GET_PLAYER typedef struct tagNET_OUT_SPLIT_GET_PLAYER { DWORD dwSize; LLONG lPlayerID; /// ?????????ID }NET_OUT_SPLIT_GET_PLAYER; ///@brief ????????? typedef enum tagNET_WM_WORK_MODE { NET_WM_WORK_MODE_UNKNOWN, /// ??? NET_WM_WORK_MODE_DISPLAY, /// ????? NET_WM_WORK_MODE_REPLAY, /// ????? }NET_WM_WORK_MODE; ///@brief ???????????????????, ??? NET_WM_OPERATE_SET_WORK_MODE typedef struct tagNET_IN_WM_SET_WORK_MODE { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ????? NET_WM_WORK_MODE emMode; /// ????????? }NET_IN_WM_SET_WORK_MODE; ///@brief ???????????????????, ??? NET_WM_OPERATE_SET_WORK_MODE typedef struct tagNET_OUT_WM_SET_WORK_MODE { DWORD dwSize; }NET_OUT_WM_SET_WORK_MODE; ///@brief ???????????????????, ??? NET_WM_OPERATE_GET_WORK_MODE typedef struct tagNET_IN_WM_GET_WORK_MODE { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ????? }NET_IN_WM_GET_WORK_MODE; ///@brief ???????????????????, ??? NET_WM_OPERATE_GET_WORK_MODE typedef struct tagNET_OUT_WM_GET_WORK_MODE { DWORD dwSize; NET_WM_WORK_MODE emMode; /// ????????? }NET_OUT_WM_GET_WORK_MODE; ///@brief ?????????????????????????NET_WM_OPERATE_SET_CORRIDOR_MODE typedef struct tagNET_IN_WM_SET_CORRIDOR_MODE { DWORD dwSize; /// ?????????????????? int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ????? BOOL bIsCorridor; /// ??????????(TRUE:?? FALSE:???) } NET_IN_WM_SET_CORRIDOR_MODE; ///@brief ?????????????????????????NET_WM_OPERATE_SET_CORRIDOR_MODE typedef struct tagNET_OUT_WM_SET_CORRIDOR_MODE { DWORD dwSize; /// ?????????????????? } NET_OUT_WM_SET_CORRIDOR_MODE; ///@brief ?????????????????????????NET_WM_OPERATE_GET_CORRIDOR_MODE typedef struct tagNET_IN_WM_GET_CORRIDOR_MODE { DWORD dwSize; /// ?????????????????? int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindow; /// ????? } NET_IN_WM_GET_CORRIDOR_MODE; ///@brief ?????????????????????????NET_WM_OPERATE_GET_CORRIDOR_MODE typedef struct tagNET_OUT_WM_GET_CORRIDOR_MODE { DWORD dwSize; /// ?????????????????? BOOL bIsCorridor; /// ??????????(TRUE:?? FALSE:???) } NET_OUT_WM_GET_CORRIDOR_MODE; ///@brief ??????????????????????????????NET_WM_OPERATE_SET_VOLUME_COLUMN typedef struct tagNET_IN_WM_SET_VOLUME_COLUMN { DWORD dwSize; /// ?????????????????? int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID BOOL bIsEnable; /// ????????????(TRUE:??? FALSE:???) } NET_IN_WM_SET_VOLUME_COLUMN; ///@brief ??????????????????????????????NET_WM_OPERATE_SET_VOLUME_COLUMN typedef struct tagNET_OUT_WM_SET_VOLUME_COLUMN { DWORD dwSize; /// ?????????????????? } NET_OUT_WM_SET_VOLUME_COLUMN; ///@brief ?????????????????????????????NET_WM_OPERATE_GET_VOLUME_COLUMN typedef struct tagNET_IN_WM_GET_VOLUME_COLUMN { DWORD dwSize; /// ?????????????????? int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID } NET_IN_WM_GET_VOLUME_COLUMN; ///@brief ?????????????????????????????NET_WM_OPERATE_GET_VOLUME_COLUMN typedef struct tagNET_OUT_WM_GET_VOLUME_COLUMN { DWORD dwSize; /// ?????????????????? BOOL bIsEnable; /// ????????????(TRUE:??? FALSE:???) } NET_OUT_WM_GET_VOLUME_COLUMN; ///@brief ??????????????, ???NET_SPLIT_OPERATE_CLOSE_WINDOWS typedef struct tagNET_IN_SPLIT_CLOSE_WINDOWS { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int* pnWindows; /// ????????????,????????????,?????sizeof(int)*nWindowCount int nWindowCount; /// ???????? } NET_IN_SPLIT_CLOSE_WINDOWS; ///@brief ?????????? typedef struct tagNET_SPLIT_CLOSE_WINDOW_RESULT { BOOL bResult; /// ??? char reserved[256]; /// ??????? } NET_SPLIT_CLOSE_WINDOW_RESULT ; ///@brief ??????????????, ???NET_SPLIT_OPERATE_CLOSE_WINDOWS typedef struct tagNET_OUT_SPLIT_CLOSE_WINDOWS { DWORD dwSize; NET_SPLIT_CLOSE_WINDOW_RESULT* pstuResults; /// ???????, ??????????,?????sizeof(NET_SPLIT_CLOSE_WINDOW_RESULT)*nMaxResultCount. ??????????????, ?????NULL int nMaxResultCount; /// ??????????????, ???????. int nRetResultCount; /// ??????????? } NET_OUT_SPLIT_CLOSE_WINDOWS; ///@brief ?????????????? typedef enum tagNET_WM_FISHEYE_CALIBRATE_MODE { NET_WM_FISHEYE_CALIBRATE_MODE_UNKOWN , /// ????? NET_WM_FISHEYE_CALIBRATE_MODE_CLOSE , /// ????????? NET_WM_FISHEYE_CALIBRATE_MODE_ORIGINAL, /// ????(??????) ????????? NET_WM_FISHEYE_CALIBRATE_MODE_PANORAMA, /// 1P NET_WM_FISHEYE_CALIBRATE_MODE_PAN_PLUS_ONE, /// 1P+1 NET_WM_FISHEYE_CALIBRATE_MODE_DOUBLE_PANORAMA, /// 2P NET_WM_FISHEYE_CALIBRATE_MODE_ORI_DOUBLE_PAN, /// 1+2p NET_WM_FISHEYE_CALIBRATE_MODE_ORI_PLUS_THREEE, /// 1+3 NET_WM_FISHEYE_CALIBRATE_MODE_PAN_PLUS_THREEE, /// 1p+3 NET_WM_FISHEYE_CALIBRATE_MODE_ORI_PLUS_TWO, /// 1+2 NET_WM_FISHEYE_CALIBRATE_MODE_ORI_PLUS_FOUR, /// 1+4 NET_WM_FISHEYE_CALIBRATE_MODE_PAN_PLUS_FOUR, /// 1p+4 NET_WM_FISHEYE_CALIBRATE_MODE_PAN_PLUS_SIX, /// 1p+6 NET_WM_FISHEYE_CALIBRATE_MODE_ORI_PLUS_EIGHT, /// 1+8 NET_WM_FISHEYE_CALIBRATE_MODE_PAN_PLUS_EIGHT, /// 1P+8 }NET_WM_FISHEYE_CALIBRATE_MODE; ///@brief ?????????????????? typedef struct tagNET_WM_FISH_EYE_REGION_PARAM { int nCoordinateX; /// ?????????????????????? int nCoordinateY; /// ???????????????????????????? int nAngleH; /// ??X??Y?????,????????????????? int nAngleV; /// ??X??Y?????,????????????????? int nAvailable; /// ????????? BYTE Reserved[124]; /// ??????? }NET_WM_FISH_EYE_REGION_PARAM; #define MAX_FISH_EYE_REGION_NUM 9 ///@brief ????????????????,?????????????????????????? typedef struct tagNET_WM_SET_FISHEYE_INIT_PARAM { BOOL bUseRegion; /// ?TRUE?,??????????????????,?FALSE??????????? int nCircular; /// ???????(???????????????????????^??1+3??1+8??????1????) int nPanorama; /// ??????(?????????????????????,??1P??2P????) int nFishEyeRegionNum; /// ??????????????????????(????????????????????.??1+3,????4?????) NET_WM_FISH_EYE_REGION_PARAM stFishEyeRegions[MAX_FISH_EYE_REGION_NUM]; /// ????????????????????? BYTE Reserved[1024]; /// ??????? }NET_WM_SET_FISHEYE_INIT_PARAM; ///@brief ?????????????????? typedef struct tagNET_WM_SET_FISHEYE_EPTZ_PARAM { int nOptWayType; /// ????????(?????????????????arg1,??????????????) int nOptWinNum; /// ???????(???????????????????) int nOptWayData; /// ????????(????????????????????????????OptWayType??????) BYTE Reserved[512]; /// ??????? }NET_WM_SET_FISHEYE_EPTZ_PARAM; ///@brief ?????????????????????????????, ???NET_IN_WM_SET_FISH_EYE_PARAM typedef struct tagNET_IN_WM_SET_FISH_EYE_PARAM { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindowID; /// ?????????????? NET_FISHEYE_MOUNT_MODE emMount; /// ???????? NET_WM_FISHEYE_CALIBRATE_MODE emCalibrate; /// ????????? NET_WM_SET_FISHEYE_INIT_PARAM stInitParam; /// ???????????????? NET_WM_SET_FISHEYE_EPTZ_PARAM stEPtzParam; /// ?????????????????? }NET_IN_WM_SET_FISH_EYE_PARAM; ///@brief ?????????????????????????????, ???NET_OUT_WM_SET_FISH_EYE_PARAM typedef struct tagNET_OUT_WM_SET_FISH_EYE_PARAM { DWORD dwSize; }NET_OUT_WM_SET_FISH_EYE_PARAM; ///@brief ????????? typedef enum tagEM_WM_ROTATE_TYPE { EM_WM_ROTATE_TYPE_NO_ROTATE, /// ????? EM_WM_ROTATE_TYPE_90_ROTATE, /// ???90?? EM_WM_ROTATE_TYPE_180_ROTATE, /// ???180?? EM_WM_ROTATE_TYPE_270_ROTATE, /// ???270?? }EM_WM_ROTATE_TYPE; ///@brief ??????????????????? typedef struct tagNET_IN_WM_SET_ROTATE_MODE { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID int nWindowID; /// ????? EM_WM_ROTATE_TYPE emRotateType; /// ????????? } NET_IN_WM_SET_ROTATE_MODE; ///@brief ??????????????????? typedef struct tagNET_OUT_WM_SET_ROTATE_MODE { DWORD dwSize; } NET_OUT_WM_SET_ROTATE_MODE; ///@brief ???????? typedef struct tagNET_SOURCE_ATTRIBUTE_INFO { unsigned char ucBrightness; /// ????,????0~255 unsigned char ucContrast; /// ????,????0~255 unsigned char ucSaturation; /// ???????,????0~255 unsigned char ucEQ; /// ?????????????????,????0~10 BYTE byReserver1[4]; /// ?????????????????? int nMargin[4]; /// ???,????????????????????????????,???-50~50 BYTE byReserver[512]; /// ??????? }NET_SOURCE_ATTRIBUTE_INFO; ///@brief ???????????? ??????? typedef struct tagNET_IN_SPLIT_SET_SOURCE_ATTRIBUTE { DWORD dwSize; /// ??????? char szCompositeID[64]; /// ?????ID int nChannel; /// ????? int nWindow; /// ????? NET_SOURCE_ATTRIBUTE_INFO stuAttribute; /// ???????? }NET_IN_SPLIT_SET_SOURCE_ATTRIBUTE; ///@brief ???????????? ??????? typedef struct tagNET_OUT_SPLIT_SET_SOURCE_ATTRIBUTE { DWORD dwSize; /// ??????? }NET_OUT_SPLIT_SET_SOURCE_ATTRIBUTE; ///@brief ???????????? ??????? typedef struct tagNET_IN_SPLIT_SET_DOCK_CONTROL { DWORD dwSize; /// ??????? char szCompositeID[64]; /// ?????ID int nChannel; /// ????? int nWindow; /// ????? BOOL bDock; /// ???????????????? }NET_IN_SPLIT_SET_DOCK_CONTROL; ///@brief ???????????? ??????? typedef struct tagNET_OUT_SPLIT_SET_DOCK_CONTROL { DWORD dwSize; /// ??????? }NET_OUT_SPLIT_SET_DOCK_CONTROL; ///@brief ?????????????????? ??????? typedef struct tagNET_IN_WM_SET_MEETING_MODE { DWORD dwSize; /// ??????? char szComposite[64]; /// ??????? int nChannel; /// ???????????????????????, szComposite???????? int nWindow; /// ????? BOOL bEnable; /// TRUE??????????; FALSE??????? }NET_IN_WM_SET_MEETING_MODE; ///@brief ?????????????????? ??????? typedef struct tagNET_OUT_WM_SET_MEETING_MODE { DWORD dwSize; /// ??????? }NET_OUT_WM_SET_MEETING_MODE; ///@brief ?????????????????? ??????? typedef struct tagNET_IN_WM_SET_LOCK_POSITION { DWORD dwSize; /// ??????? char szComposite[64]; /// ??????? int nChannel; /// ???????????????????????, szComposite???????? int nWindow; /// ????ID,-1???????????? BOOL bLock; /// ??????? }NET_IN_WM_SET_LOCK_POSITION; ///@brief ?????????????????? ??????? typedef struct tagNET_OUT_WM_SET_LOCK_POSITION { DWORD dwSize; /// ??????? }NET_OUT_WM_SET_LOCK_POSITION; ///@brief ??????????ID ??????? typedef struct tagNET_IN_WM_SET_COLLECTION_CTRL_ID { DWORD dwSize; /// ??????? int nChannel; /// ???????????????????????, szComposite???????? char szComposite[64]; /// ??????? char szName[128]; /// ??????? char szControlID[8]; /// ?????????ID(?????????1-255) }NET_IN_WM_SET_COLLECTION_CTRL_ID; ///@brief ??????????ID ??????? typedef struct tagNET_OUT_WM_SET_COLLECTION_CTRL_ID { DWORD dwSize; /// ??????? }NET_OUT_WM_SET_COLLECTION_CTRL_ID ; ///@brief ??????????? ??????? typedef struct tagNET_IN_WM_SET_MODE { DWORD dwSize; /// ??????? int nChannel; /// ??????????????????????? int nWindow; /// ????? DH_SPLIT_MODE emSplitMode; /// ????? }NET_IN_WM_SET_MODE ; ///@brief ??????????? typedef struct tagNET_SPLITED_WINDOW_INFO { NET_RECT stuRect; /// ????????,8192?????[0-8191] int nWindow; /// ?????,?????????????????????????????????? int nZOrder; /// ????Z?? char szControlID[32]; /// ???????ID BYTE byReserver[512]; /// ??????? }NET_SPLITED_WINDOW_INFO; ///@brief ??????????? ??????? typedef struct tagNET_OUT_WM_SET_MODE { DWORD dwSize; /// ??????? UINT nSplitedWindowNum; /// ??????????? NET_SPLITED_WINDOW_INFO stuSplitedWindow[144]; /// ??????????? }NET_OUT_WM_SET_MODE; ///@brief ????? typedef struct tagNET_SPLIT_WATERMARK_INFO { char szContent[1024]; /// ?????? BOOL nEnable; /// ??? UINT nFont; /// ??????? NET_COLOR_RGBA stuFrontColor; /// ???? UINT nRotationAngle; /// ?????? char szReserved[124]; /// ??????? }NET_SPLIT_WATERMARK_INFO; ///@brief ???????????????????? typedef struct tagNET_IN_SPLIT_SET_WATERMARK { DWORD dwSize; /// ??????? UINT nChannel; /// ???????????????????????, pszCompositeID?NULL????? char szCompositeID[64]; /// ?????ID int nWindow; /// ?????????????? NET_SPLIT_WATERMARK_INFO stuWaterMarkInfo; /// ????? }NET_IN_SPLIT_SET_WATERMARK ; ///@brief ????????????????????? typedef struct tagNET_OUT_SPLIT_SET_WATERMARK { DWORD dwSize; /// ??????? }NET_OUT_SPLIT_SET_WATERMARK ; ////////////////////////////// ???? //////////////////////////////////////// ///@brief CPU??? typedef struct tagDH_CPU_INFO { DWORD dwSize; int nUsage; /// CPU?????? } DH_CPU_INFO; ///@brief CPU?? typedef struct tagDH_CPU_STATUS { DWORD dwSize; BOOL bEnable; /// ???????? int nCount; /// CPU???? DH_CPU_INFO stuCPUs[DH_MAX_CPU_NUM]; /// CPU??? } DH_CPU_STATUS; ///@brief ?????? typedef struct tagDH_MEMORY_INFO { DWORD dwSize; DWORD dwTotal; /// ?????, M DWORD dwFree; /// ??????, M } DH_MEMORY_INFO; ///@brief ????? typedef struct tagDH_MEMORY_STATUS { DWORD dwSize; BOOL bEnable; /// ???????? DH_MEMORY_INFO stuMemory; /// ?????? } DH_MEMORY_STATUS; ///@brief ??????? typedef struct tagDH_FAN_INFO { DWORD dwSize; char szName[DH_DEVICE_NAME_LEN]; /// ???? DWORD nSpeed; /// ??? } DH_FAN_INFO; ///@brief ?????? typedef struct tagDH_FAN_STATUS { DWORD dwSize; BOOL bEnable; /// ???????? int nCount; /// ???????? DH_FAN_INFO stuFans[DH_MAX_FAN_NUM]; /// ?????? } DH_FAN_STATUS; ///@brief ????????????? typedef enum __EM_CURRENT_STATE_TYPE { EM_CURRENT_STATE_UNKNOWN = 0, EM_CURRENT_STATE_OVER_CURRENT, /// ???????? EM_CURRENT_STATE_NORMAL, /// ???????? EM_CURRENT_STATE_UNDER_CURRENT, /// ?????? }EM_CURRENT_STATE_TYPE; ///@brief ???????????? typedef enum tagEM_VOLTAGE_STATE_TYPE { EM_VOLTAGE_STATE_UNKNOWN, /// ??? EM_VOLTAGE_STATE_OVER, /// ??? EM_VOLTAGE_STATE_NORMAL, /// ???? EM_VOLTAGE_STATE_UNDER, /// ?? } EM_VOLTAGE_STATE_TYPE; ///@brief ?????? typedef struct tagDH_POWER_INFO { DWORD dwSize; BOOL bPowerOn; /// ?????, 0-???, 1-??, 2-????????? EM_CURRENT_STATE_TYPE emCurrentState; /// ????????? EM_VOLTAGE_STATE_TYPE emVoltageState; /// ???????? } DH_POWER_INFO; ///@brief ????????? typedef enum __EM_BATTERY_EXIST_STATE { EM_BATTERY_EXIST_STATE_UNKNOWN = 0, EM_BATTERY_EXIST_STATE_EXIST, /// ??????? EM_BATTERY_EXIST_STATE_MISSING, /// ????? }EM_BATTERY_EXIST_STATE; ///@brief ???????? typedef enum __EM_BATTERY_STATE { EM_BATTERY_STATE_UNKNOWN = 0, EM_BATTERY_STATE_NORMAL, /// ???????? EM_BATTERY_STATE_LOW, /// ?????? }EM_BATTERY_STATE; ///@brief ???????? typedef enum tagEM_BATTERY_TEMPER_STATE { EM_BATTERY_TEMPER_STATE_UNKNOWN, EM_BATTERY_TEMPER_STATE_LOW_TEMPER, EM_BATTERY_TEMPER_STATE_NORMAL_TEMPER, EM_BATTERY_TEMPER_STATE_HIGH_TEMPER, EM_BATTERY_TEMPER_STATE_OVER_TEMPER, EM_BATTERY_TEMPER_STATE_ABNORMAL_TEMPER, }EM_BATTERY_TEMPER_STATE; ///@brief ??????, CLIENT_QueryDevState???? DH_DEVSTATE_POWER_STATE ??????? typedef struct tagDH_BATTERY_INFO { DWORD dwSize; int nPercent; /// ??????????? BOOL bCharging; /// ????????? EM_BATTERY_EXIST_STATE emExistState; /// ????????? EM_BATTERY_STATE emState; /// ???????? float fVoltage; /// ????? EM_BATTERY_TEMPER_STATE emTemperState; /// ???????? } DH_BATTERY_INFO; ///@brief ????? typedef struct tagDH_POWER_STATUS { DWORD dwSize; BOOL bEnable; /// ???????? int nCount; /// ??????? DH_POWER_INFO stuPowers[DH_MAX_POWER_NUM]; /// ????? int nBatteryNum; /// ??????? DH_BATTERY_INFO stuBatteries[DH_MAX_BATTERY_NUM]; /// ????? } DH_POWER_STATUS; ///@brief ?????? typedef struct tagDH_TEMPERATURE_INFO { DWORD dwSize; char szName[DH_DEVICE_NAME_LEN]; /// ?????????? float fTemperature; /// ??? } DH_TEMPERATURE_INFO; ///@brief ????? typedef struct tagDH_TEMPERATURE_STATUS { DWORD dwSize; BOOL bEnable; /// ???????? int nCount; /// ??????? DH_TEMPERATURE_INFO stuTemps[DH_MAX_TEMPERATURE_NUM]; /// ?????? } DH_TEMPERATURE_STATUS; ///@brief ???? typedef struct tagDH_SYSTEM_STATUS { DWORD dwSize; DH_CPU_STATUS* pstuCPU; /// CPU?? DH_MEMORY_STATUS* pstuMemory; /// ????? DH_FAN_STATUS* pstuFan; /// ?????? DH_POWER_STATUS* pstuPower; /// ????? DH_TEMPERATURE_STATUS* pstuTemp; /// ????? } DH_SYSTEM_STATUS; ///@brief ???CLIENT_QueryDevState()???? DH_DEVSTATE_ALL_ALARM_CHANNELS_STATE??????? ///@brief ???????????? typedef enum tagNET_ALARM_CHANNEL_TYPE { NET_ALARM_CHANNEL_TYPE_ALL, /// ??????????????????????? NET_ALARM_CHANNEL_TYPE_ALARMIN, /// ??????????? NET_ALARM_CHANNEL_TYPE_ALARMOUT, /// ?????????? NET_ALARM_CHANNEL_TYPE_ALARMBELL, /// ??????? NET_ALARM_CHANNEL_TYPE_EXALARMIN, /// ??????l????????? NET_ALARM_CHANNEL_TYPE_EXALARMOUT, /// ??????l???????? }NET_ALARM_CHANNEL_TYPE; ///@brief ???????????? typedef struct tagNET_CLIENT_ALARM_CHANNELS_STATE { DWORD dwSize; NET_ALARM_CHANNEL_TYPE emType; /// ???????????????? int nAlarmInCount; /// ???????????,???????? int nAlarmInRetCount; /// ????????????? BOOL* pbAlarmInState; /// ??????????????,????????????,????????????????,TRUE???????,FALSE??????? /// ????????????,????sizeof(BOOL)*nAlarmInCount int nAlarmOutCount; /// ???????????,???????? int nAlarmOutRetCount; /// ??????????? BOOL* pbAlarmOutState; /// ?????????????,????????????,????????????????,TRUE??????,FALSE???? /// ????????????,????sizeof(BOOL)*nAlarmOutCount int nAlarmBellCount; /// ???????,???????? int nAlarmBellRetCount; /// ?????????? BOOL* pbAlarmBellState; /// ??????????,????????????,????????????????,TRUE??????,FALSE?????? /// ????????????,????sizeof(BOOL)*nAlarmBellCount int nExAlarmInCount; /// ??????l?????????,???????? int nExAlarmInRetCount; /// ??????l??????????? BOOL* pbExAlarmInState; /// ??????l????????????,????????????,????????????????,TRUE??????,FALSE?????? /// ????????????,????sizeof(BOOL)*nExAlarmInCount int* pnExAlarmInDestionation; /// ??????l???????????????????,????????????,????sizeof(int)*nExAlarmInCount int nExAlarmOutCount; /// ??????l?????????,???????? int nExAlarmOutRetCount; /// ??????l????????? BOOL* pbExAlarmOutState; /// ??????l???????????,????????????,????????????????,TRUE??????,FALSE?????? /// ??????????????????sizeof(BOOL)*nExAlarmOutCount int* pnExAlarmOutDestionation; /// ??????l??????????????????,??????????????????sizeof(int)*nExAlarmOutCount }NET_CLIENT_ALARM_CHANNELS_STATE; ///@brief ???????????????????? typedef struct tagNET_ALARMKEYBOARD_COUNT { DWORD dwSize; int nAlarmKeyboardCount; /// ????????????????? }NET_ALARMKEYBOARD_COUNT; ///@brief ??????????????????? typedef enum tagEM_COM_PORT_DEVICE_TYPE { EM_COM_PORT_DEVICE_TYPE_UNKNOWN, /// ????? EM_COM_PORT_DEVICE_TYPE_PTZ, /// ptz EM_COM_PORT_DEVICE_TYPE_GPS, /// GPS EM_COM_PORT_DEVICE_TYPE_ALARMKEYBOARD, /// ???????? EM_COM_PORT_DEVICE_TYPE_EXALARMBOX, /// ??????????? }EM_COM_PORT_DEVICE_TYPE; ///@brief ??????COM?????????????????(???) typedef struct tagNET_IN_GET_COM_PORT_DEVICE_CHANNEL_INFO { DWORD dwSize; EM_COM_PORT_DEVICE_TYPE emDeviceType; /// ??????? }NET_IN_GET_COM_PORT_DEVICE_CHANNEL_INFO; ///@brief ??????COM?????????????????(????) typedef struct tagNET_OUT_GET_COM_PORT_DEVICE_CHANNEL_INFO { DWORD dwSize; int nDeviceCount; /// ??????(????,????????????????) int nMaxOnlineDeviceCount; /// ????????????????(???) int nRetOnlineDeviceCount; /// ??????????????????????(????) int* pOnlineChannel; /// ????????????????????????(???,???????????????) }NET_OUT_GET_COM_PORT_DEVICE_CHANNEL_INFO; ///@brief ??????COM?????????????????,pInParam??pInParamOut???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetComPortDeviceChannelInfo(LLONG lLoginID,const NET_IN_GET_COM_PORT_DEVICE_CHANNEL_INFO* pInParam,NET_OUT_GET_COM_PORT_DEVICE_CHANNEL_INFO* pOutParam,int nWaitTime); ////////////////////////////// ???????? //////////////////////////////////////// ///@brief CLIENT_OpenSplitWindow??????????(????) typedef struct tagDH_IN_SPLIT_OPEN_WINDOW { DWORD dwSize; int nChannel; /// ?????(????) DH_RECT stuRect; /// ????????, 0~8191 BOOL bDirectable; /// ?????????????????, ???????????????,???????????????????????? } DH_IN_SPLIT_OPEN_WINDOW; ///@brief CLIENT_OpenSplitWindow??????????(????) typedef struct tagDH_OUT_SPLIT_OPEN_WINDOW { DWORD dwSize; unsigned int nWindowID; /// ??????? unsigned int nZOrder; /// ??????? } DH_OUT_SPLIT_OPEN_WINDOW; ///@brief CLIENT_CloseSplitWindow??????????(???) typedef struct tagDH_IN_SPLIT_CLOSE_WINDOW { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? UINT nWindowID; /// ??????? const char* pszCompositeID; /// ?????ID } DH_IN_SPLIT_CLOSE_WINDOW; ///@brief CLIENT_CloseSplitWindow??????????(???) typedef struct tagDH_OUT_SPLIT_CLOSE_WINDOW { DWORD dwSize; } DH_OUT_SPLIT_CLOSE_WINDOW; ///@brief CLIENT_SetSplitWindowRect???????(???????????) typedef struct tagDH_IN_SPLIT_SET_RECT { DWORD dwSize; int nChannel; /// ?????(????) UINT nWindowID; /// ??????? DH_RECT stuRect; /// ????????, 0~8191 BOOL bDirectable; /// ?????????????????, ???????????????,???????????????????????? } DH_IN_SPLIT_SET_RECT; ///@brief CLIENT_SetSplitWindowRect??????????(???????????) typedef struct tagDH_OUT_SPLIT_SET_RECT { DWORD dwSize; } DH_OUT_SPLIT_SET_RECT; ///@brief CLIENT_GetSplitWindowRect??????????(???????????) typedef struct tagDH_IN_SPLIT_GET_RECT { DWORD dwSize; int nChannel; /// ?????(????) UINT nWindowID; /// ??????? } DH_IN_SPLIT_GET_RECT; ///@brief CLIENT_GetSplitWindowRect??????????(???????????) typedef struct tagDH_OUT_SPLIT_GET_RECT { DWORD dwSize; DH_RECT stuRect; /// ????????, 0~8191 } DH_OUT_SPLIT_GET_RECT; ///@brief CLIENT_SetSplitWindowLevels??????????(??????????) typedef struct tagDH_IN_SPLIT_SET_TOP_WINDOW { DWORD dwSize; int nChannel; /// ?????(????) int nWindowID; /// ??????? } DH_IN_SPLIT_SET_TOP_WINDOW; ///@brief CLIENT_SetSplitWindowLevels??????????(??????????) typedef struct tagDH_OUT_SPLIT_SET_TOP_WINDOW { DWORD dwSize; DH_WND_ZORDER* pZOders; /// ???????????,????????????,?????sizeof(DH_WND_ZORDER)*nMaxWndCount int nMaxWndCount; /// ?????????????? int nWndCount; /// ???????????? } DH_OUT_SPLIT_SET_TOP_WINDOW; ///@brief CLIENT_SetDisplayMode??????????(??????????????) typedef struct tagDH_IN_WM_SET_DISPLAY_MODE { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszBlockID; /// ????ID, NULL/""-???????? int nTVID; /// ?????????, -1??????????????????? UINT nDisplayMode; /// ?????, 0-???, 1-????, 2-???? } DH_IN_WM_SET_DISPLAY_MODE; ///@brief CLIENT_SetDisplayMode??????????(??????????????) typedef struct tagDH_OUT_WM_SET_DISPLAY_MODE { DWORD dwSize; } DH_OUT_WM_SET_DISPLAY_MODE; ///@brief ??????????????????????? typedef struct tagDH_BLOCK_DISPLAY_MODE { DWORD dwSize; int* pTVModes; /// TV????????? int nMaxTVCount; /// TV???????????? int nRetTVCount; /// ???TV???? } DH_BLOCK_DISPLAY_MODE; ///@brief CLIENT_GetDisplayMode???????????(?????????????) typedef struct tagDH_IN_WM_GET_DISPLAY_MODE { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszBlockID; /// ????ID, NULL/""-???????? int nTVID; /// ?????????, -1??????????????????? } DH_IN_WM_GET_DISPLAY_MODE; ///@brief CLIENT_GetDisplayMode???????????(?????????????) typedef struct tagDH_OUT_WM_GET_DISPLAY_MODE { DWORD dwSize; DH_BLOCK_DISPLAY_MODE* pBlockModes; /// ?????????????,??????????????????sizeof(DH_BLOCK_DISPLAY_MODE)*nMaxBlockCount int nMaxBlockCount; /// ???????????????? int nRetBlockCount; /// ??????????? } DH_OUT_WM_GET_DISPLAY_MODE; ///@brief CLIENT_PowerControl??????????(????????????) typedef struct tagDH_IN_WM_POWER_CTRL { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszBlockID; /// ????ID, NULL/""-???????? int nTVID; /// ?????????, -1??????????????????? BOOL bPowerOn; /// ?????? } DH_IN_WM_POWER_CTRL; ///@brief CLIENT_PowerControl??????????(????????????) typedef struct tagDH_OUT_WM_POWER_CTRL { DWORD dwSize; } DH_OUT_WM_POWER_CTRL; ///@brief CLIENT_LoadMonitorWallCollection??????????(???????????) typedef struct tagDH_IN_WM_LOAD_COLLECTION { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszName; /// ??????? } DH_IN_WM_LOAD_COLLECTION; ///@brief CLIENT_LoadMonitorWallCollection??????????(???????????) typedef struct tagDH_OUT_WM_LOAD_COLLECTION { DWORD dwSize; } DH_OUT_WM_LOAD_COLLECTION; ///@brief ??????? typedef enum tagEM_SAVE_COLLECTION_TYPE { EM_SAVE_COLLECTION_UNKNOWN, /// ??? EM_SAVE_COLLECTION_VIDEO, /// ?????? EM_SAVE_COLLECTION_ADDITIONAL, /// ??????? }EM_SAVE_COLLECTION_TYPE; ///@brief CLIENT_SaveMonitorWallCollection??????????(???????????) typedef struct tagDH_IN_WM_SAVE_COLLECTION { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszName; /// ??????? const char* pszControlID; /// ????id BYTE bReserverd[4]; /// ?????????????????? EM_SAVE_COLLECTION_TYPE emType; /// ??????? } DH_IN_WM_SAVE_COLLECTION; ///@brief CLIENT_SaveMonitorWallCollection??????????(???????????) typedef struct tagDH_OUT_WM_SAVE_COLLECTION { DWORD dwSize; } DH_OUT_WM_SAVE_COLLECTION; ///@brief CLIENT_RenameMonitorWallCollection??????????(?????????) typedef struct tagDH_IN_WM_RENAME_COLLECTION { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszOldName; /// ????? const char* pszNewName; /// ?????? } DH_IN_WM_RENAME_COLLECTION; ///@brief CLIENT_RenameMonitorWallCollection??????????(?????????) typedef struct tagDH_OUT_WM_RENAME_COLLECTION { DWORD dwSize; } DH_OUT_WM_RENAME_COLLECTION; ///@brief ????????? typedef struct tagNET_MONITOR_WALL_DEVICE_INFO { char szName[64]; /// ???????? char szPassword[64]; /// ???? char szUserName[64]; /// ????? UINT nPort; /// ??? char byReserverd[256]; /// ??????? }NET_MONITOR_WALL_DEVICE_INFO; ///@brief ????????????????? typedef enum tagEM_STREAM_TRANSMISSION_SERVICE_TYPE { EM_STREAM_TRANSMISSION_SERVICE_TYPE_UNKNOWN, /// ??? EM_STREAM_TRANSMISSION_SERVICE_TYPE_TCP, /// TCP EM_STREAM_TRANSMISSION_SERVICE_TYPE_UDP, /// UDP EM_STREAM_TRANSMISSION_SERVICE_TYPE_MCAST, /// MCAST EM_STREAM_TRANSMISSION_SERVICE_TYPE_AUTO, /// AUTO } EM_STREAM_TRANSMISSION_SERVICE_TYPE; ///@brief ????????????? typedef struct tagDH_VIDEO_INPUTS { DWORD dwSize; char szChnName[DH_DEVICE_NAME_LEN]; /// ??????? BOOL bEnable; /// ??? char szControlID[DH_DEV_ID_LEN_EX]; /// ????ID char szMainStreamUrl[MAX_PATH]; /// ??????url??? char szExtraStreamUrl[MAX_PATH]; /// ??????url??? int nOptionalMainUrlCount; /// ????????????????? char szOptionalMainUrls[DH_MAX_OPTIONAL_URL_NUM][MAX_PATH]; /// ????????????????? int nOptionalExtraUrlCount; /// ???????????????? char szOptionalExtraUrls[DH_MAX_OPTIONAL_URL_NUM][MAX_PATH]; /// ???????????????? char szCaption[32]; /// ?????? EM_STREAM_TRANSMISSION_SERVICE_TYPE emServiceType; /// ????????????????? NET_SOURCE_STREAM_ENCRYPT stuSourceStreamEncrypt; /// ?????????? } DH_VIDEO_INPUTS; ///@brief ???????????? typedef struct tagNET_REMOTE_DEVICE_EX { char szPwdEx2[128]; /// ???? BOOL bUsePwdEx2; /// ??????szPwdEx2???? char szIpEx[64]; /// IP BOOL bUseIpEx; /// ??????szIpEx IP char szReserved[952]; /// ??????? }NET_REMOTE_DEVICE_EX; ///@brief ????????? typedef struct tagDH_REMOTE_DEVICE { DWORD dwSize; BOOL bEnable; /// ??? char szIp[DH_MAX_IPADDR_LEN]; /// IP char szUser[DH_USER_NAME_LENGTH]; /// ?????,???????szUserEx char szPwd[DH_USER_PSW_LENGTH]; /// ????,???????szPwdEx int nPort; /// ??? int nDefinition; /// ??????, 0-????, 1-???? DH_DEVICE_PROTOCOL emProtocol; /// ???????? char szDevName[DH_DEVICE_NAME_LEN]; /// ??????? int nVideoInputChannels; /// ???????????? int nAudioInputChannels; /// ???????????? char szDevClass[DH_DEV_TYPE_LEN]; /// ???????, ??IPC, DVR, NVR?? char szDevType[DH_DEV_TYPE_LEN]; /// ??????????, ??IPC-HF3300 int nHttpPort; /// Http??? int nMaxVideoInputCount; /// ??????????????? int nRetVideoInputCount; /// ?????????????? DH_VIDEO_INPUTS* pstuVideoInputs; /// ?????????????,??????????????????sizeof(DH_VIDEO_INPUTS)*nMaxVideoInputCount char szMachineAddress[DH_MAX_CARD_INFO_LEN]; /// ???????? char szSerialNo[DH_SERIALNO_LEN]; /// ????????? int nRtspPort; /// Rtsp??? /*???????????????*/ char szUserEx[DH_USER_NAME_LEN_EX]; /// ????? char szPwdEx[DH_USER_PSW_LEN_EX]; /// ????szPwdEx????31?????????????????????????32????????pstuRemoteDevEx???szPwdEx2 char szVendorAbbr[DH_COMMON_STRING_32]; /// ???? char szSoftwareVersion[DH_COMMON_STRING_64]; /// ?????????? NET_TIME stuActivationTime; /// ??????? char szMac[20]; /// MAC??? int nHttpsPort; /// HttpsPort BYTE byReserved[4]; /// ??????? NET_REMOTE_DEVICE_EX* pstuRemoteDevEx; /// ????DH_REMOTE_DEVICE??????????,??????????????????sizeof(NET_REMOTE_DEVICE_EX) } DH_REMOTE_DEVICE; ///@brief ?????????? typedef struct tagDH_WINDOW_COLLECTION { DWORD dwSize; int nWindowID; /// ????ID BOOL bWndEnable; /// ??????????? DH_RECT stuRect; /// ????????, ?????????????? BOOL bDirectable; /// ????????????????? int nZOrder; /// ????Z???? BOOL bSrcEnable; /// ??????????? char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID int nVideoChannel; /// ???????? int nVideoStream; /// ??????????? int nAudioChannel; /// ?????? int nAudioStream; /// ??????????? int nUniqueChannel; /// ??????????????????? NET_MONITOR_WALL_DEVICE_INFO stuDeviceInfo; /// ????????? int nInterval; /// ????????,?????? (????????????????????) DH_REMOTE_DEVICE stuDeviceInfoEx; /// ???????????? } DH_WINDOW_COLLECTION; ///@brief ??????????? typedef struct tagNET_SCREEEN_BACKGROUD { BOOL bEnable; /// ???????? char szName[130]; /// ???????,?????????????????????????????? BYTE byReserved[130]; /// ????????? } NET_SCREEEN_BACKGROUD; ///@brief ??????? typedef struct tagDH_BLOCK_COLLECTION { DWORD dwSize; DH_SPLIT_MODE emSplitMode; /// ????? DH_WINDOW_COLLECTION stuWnds[DH_MAX_SPLIT_WINDOW]; /// ??????????? int nWndsCount; /// ???????? char szName[DH_DEVICE_NAME_LEN]; /// ???????? int nScreen; /// ????????, ????????? char szCompositeID[DH_DEV_ID_LEN_EX]; /// ?????ID DH_WINDOW_COLLECTION* pstuWndsEx; /// ??????????????, ????????????. ??stuWnds????????????????????? int nMaxWndsCountEx; /// ????????, ???????. pstuWndsEx??????????? int nRetWndsCountEx; /// ??????????? int nSplitOsdCount; /// OSD????? NET_SPLIT_OSD stuSplitOsd[20]; /// ?????OSD????????? NET_SCREEEN_BACKGROUD stuScreenBackground; /// ??????????????????????????? } DH_BLOCK_COLLECTION; ///@brief ????????????? typedef struct tagNET_MONITOR_WALL_OUT_MODE_INFO { int nWidth; /// ??????? int nHeight; /// ???????? BYTE byReserved[256]; /// ??????? }NET_MONITOR_WALL_OUT_MODE_INFO; ///@brief ??????????? typedef struct tagDH_MONITORWALL_OUTPUT { DWORD dwSize; char szDeviceID[DH_DEV_ID_LEN]; /// ???ID, ??????"" int nChannel; /// ????? char szName[DH_DEV_NAME_LEN]; /// ??????? BOOL bIsVirtual; /// ????????????????????????????????????????TRUE:?????? FALSE:???????? char szAddress[40]; /// ??????????IP NET_MONITOR_WALL_OUT_MODE_INFO stuOutMode; /// ???????? } DH_MONITORWALL_OUTPUT; ///@brief ???????????? typedef struct tagDH_MONITORWALL_BLOCK { DWORD dwSize; char szName[DH_DEV_NAME_LEN]; /// ???????? char szCompositeID[DH_DEV_ID_LEN]; /// ?????ID char szControlID[DH_DEV_ID_LEN]; /// ????ID int nSingleOutputWidth; /// ??????????????????????? int nSingleOutputHeight; /// ??????????????????????? DH_RECT stuRect; /// ???????? DH_TSECT stuPowerSchedule[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ????????, ???????????????~?????????? DH_MONITORWALL_OUTPUT* pstuOutputs; /// ??????????, ?????????? int nMaxOutputCount; /// ?????????????, ??????? int nRetOutputCount; /// ??????????????? char szBlockType[DH_COMMON_STRING_32]; /// ????????????,??????????????????????LED?????????????,??????????????????"LCD",???????????,??????LCD int nOutputDelay; /// ??????,?????????? } DH_MONITORWALL_BLOCK; ///@brief ????????? typedef struct tagDH_MONITORWALL { DWORD dwSize; char szName[DH_DEV_NAME_LEN]; /// ???? int nGridLine; /// ???????? int nGridColume; /// ???????? DH_MONITORWALL_BLOCK* pstuBlocks; /// ???????????, ?????????? int nMaxBlockCount; /// ??????????????, ??????? int nRetBlockCount; /// ???????????????? BOOL bDisable; /// ??????, 0-??????????, 1-?????????? char szDesc[DH_COMMON_STRING_256]; /// ???????????? } DH_MONITORWALL; ///@brief ???????? typedef struct tagDH_MONITORWALL_COLLECTION { DWORD dwSize; char szName[DH_DEVICE_NAME_LEN]; /// ???????????? DH_BLOCK_COLLECTION stuBlocks[DH_MAX_BLOCK_NUM]; /// ???????? int nBlocksCount; /// ???????? char szControlID[DH_DEV_ID_LEN_EX]; /// ????ID DH_MONITORWALL stuMonitorWall; /// ????????? EM_SAVE_COLLECTION_TYPE emType; /// ??????? BYTE byReserved[4]; /// ?????????????????? } DH_MONITORWALL_COLLECTION; ///@brief CLIENT_GetMonitorWallCollections??????????(??????????????) typedef struct tagDH_IN_WM_GET_COLLECTIONS { DWORD dwSize; int nMonitorWallID; /// ?????ID } DH_IN_WM_GET_COLLECTIONS; ///@brief CLIENT_GetMonitorWallCollections??????????(??????????????) typedef struct tagDH_OUT_WM_GET_COLLECTIONS { DWORD dwSize; DH_MONITORWALL_COLLECTION* pCollections; /// ???????????? int nMaxCollectionsCount; /// ??????????????? int nCollectionsCount; /// ???????????? } DH_OUT_WM_GET_COLLECTIONS; ///@brief CLIENT_GetSplitWindowsInfo?????????? typedef struct tagDH_IN_SPLIT_GET_WINDOWS { DWORD dwSize; int nChannel; /// ????? } DH_IN_SPLIT_GET_WINDOWS; ///@brief CLIENT_GetSplitWindowsInfo?????????? typedef struct tagDH_OUT_SPLIT_GET_WINDOWS { DWORD dwSize; DH_BLOCK_COLLECTION stuWindows; /// ??????? } DH_OUT_SPLIT_GET_WINDOWS; ///@brief CLIENT_LoadSplitCollection??????????(???????) typedef struct tagDH_IN_SPLIT_LOAD_COLLECTION { DWORD dwSize; int nChannel; /// ???????? const char* pszName; /// ???????? } DH_IN_SPLIT_LOAD_COLLECTION; ///@brief CLIENT_LoadSplitCollection??????????(???????) typedef struct tagDH_OUT_SPLIT_LOAD_COLLECTION { DWORD dwSize; } DH_OUT_SPLIT_LOAD_COLLECTION; ///@brief CLIENT_SaveSplitCollection??????????(???????) typedef struct tagDH_IN_SPLIT_SAVE_COLLECTION { DWORD dwSize; int nChannel; /// ???????? const char* pszName; /// ???????? } DH_IN_SPLIT_SAVE_COLLECTION; ///@brief CLIENT_SaveSplitCollection??????????(???????) typedef struct tagDH_OUT_SPLIT_SAVE_COLLECTION { DWORD dwSize; } DH_OUT_SPLIT_SAVE_COLLECTION; ///@brief CLIENT_RenameSplitCollection??????????(?????????) typedef struct tagDH_IN_SPLIT_RENAME_COLLECTION { DWORD dwSize; int nChannel; /// ???????? const char* pszOldName; /// ????? const char* pszNewName; /// ?????? } DH_IN_SPLIT_RENAME_COLLECTION; ///@brief CLIENT_RenameSplitCollection??????????(?????????) typedef struct tagDH_OUT_SPLIT_RENAME_COLLECTION { DWORD dwSize; } DH_OUT_SPLIT_RENAME_COLLECTION; ///@brief CLIENT_GetSplitCollections??????????(??????????) typedef struct tagDH_IN_SPLIT_GET_COLLECTIONS { DWORD dwSize; int nChannel; /// ???????? } DH_IN_SPLIT_GET_COLLECTIONS; ///@brief CLIENT_GetSplitCollections??????????(??????????) typedef struct tagDH_OUT_SPLIT_GET_COLLECTIONS { DWORD dwSize; DH_BLOCK_COLLECTION* pCollections; /// ????????,??????????????????sizeof(DH_BLOCK_COLLECTION)*nMaxCollectionsCount int nMaxCollectionsCount; /// ??????????? int nCollectionsCount; /// ????????????? } DH_OUT_SPLIT_GET_COLLECTIONS; ///@brief CLIENT_DeleteSplitCollection???????????(???????) typedef struct tagDH_IN_SPLIT_DELETE_COLLECTION { DWORD dwSize; int nChannel; /// ???????? const char** ppszNames; /// ???????????? int nNameCount; /// ??????????????? } DH_IN_SPLIT_DELETE_COLLECTION; ///@brief CLIENT_DeleteSplitCollection???????????(???????) typedef struct tagDH_OUT_SPLIT_DELETE_COLLECTION { DWORD dwSize; } DH_OUT_SPLIT_DELETE_COLLECTION; ///@brief ??????????? typedef struct tagDH_COMPOSITE_CHANNEL { DWORD dwSize; char szMonitorWallName[DH_DEVICE_NAME_LEN]; /// ????????? char szCompositeID[DH_DEV_ID_LEN_EX]; /// ?????ID int nVirtualChannel; /// ????????? } DH_COMPOSITE_CHANNEL; ///@brief ?????????? typedef struct tagDHDEV_TOUR_ENABLE { DWORD dwSize; BOOL bEnable; /// ?????? BOOL bStart; /// ??????????(???). ????????????????????????, bStart=FALSE } DHDEV_TOUR_ENABLE_CFG; ///@brief CLIENT_SetDecodePolicy??????????(??????????) typedef struct tagDH_IN_SET_DEC_POLICY { DWORD dwSize; int nChannel; /// ????? int nWindow; /// ?????, -1???????????????? int nPolicyLevel; /// ?????????, ??5??(-2, -1, 0, 1, 2), ????????????????? /// -2??????????, 2????????????, 0??? } DH_IN_SET_DEC_POLICY; ///@brief CLIENT_SetDecodePolicy??????????(??????????) typedef struct tagDH_OUT_SET_DEC_POLICY { DWORD dwSize; } DH_OUT_SET_DEC_POLICY; ///@brief CLIENT_GetDecodePolicy??????????(??????????) typedef struct tagDH_IN_GET_DEC_POLICY { DWORD dwSize; int nChannel; /// ????? int nWindow; /// ?????, -1???????????????? } DH_IN_GET_DEC_POLICY; ///@brief CLIENT_GetDecodePolicy??????????(??????????) typedef struct tagDH_OUT_GET_DEC_POLICY { DWORD dwSize; int nPolicyLevel; /// ?????????, ??5??(-2, -1, 0, 1, 2), ????????????????? /// -2??????????, 2????????????, 0??? } DH_OUT_GET_DEC_POLICY; ///@brief ???????? typedef enum { DH_AUDIO_AUTO, /// ?????????????, ????????????? DH_AUDIO_DISABLE, /// ????????????? DH_AUDIO_FORCE, /// ?????????????????????????, ????????????? DH_AUDIO_ENABLE_ONE, /// ??????????????, ???????????????? DH_AUDIO_DISABLE_ONE, /// ?????????????, ???????????????? DH_AUDIO_MULTI, /// ??????????, ????????, ???????????? } DH_AUDIO_OUTPUT_MODE; ///@brief CLIENT_SetSplitAudioOuput??????????(????????????) typedef struct tagDH_IN_SET_AUDIO_OUTPUT { DWORD dwSize; int nChannel; /// ????? DH_AUDIO_OUTPUT_MODE emMode; /// ???????? int nWindow; /// ????????, emMode?DH_AUDIO_FORCE/DH_AUDIO_ENABLE_ONE/DH_AUDIO_DISABLE_ONE?????, ??????????????? } DH_IN_SET_AUDIO_OUTPUT; ///@brief CLIENT_SetSplitAudioOuput??????????(????????????) typedef struct tagDH_OUT_SET_AUDIO_OUTPUT { DWORD dwSize; } DH_OUT_SET_AUDIO_OUTPUT; ///@brief CLIENT_GetSplitAudioOuput??????????(???????????) typedef struct tagDH_IN_GET_AUDIO_OUTPUT { DWORD dwSize; int nChannel; /// ????? } DH_IN_GET_AUDIO_OUTPUT; ///@brief CLIENT_GetSplitAudioOuput??????????(???????????) typedef struct tagDH_OUT_GET_AUDIO_OUTPUT { DWORD dwSize; DH_AUDIO_OUTPUT_MODE emMode; /// ???????? int nWindow; /// ????????, emMode?DH_AUDIO_FORCE????? int* pMultiWindows; /// ????????????, emMode?DH_AUDIO_MULTI?????, ??????????,?????sizeof(int)*nMaxMultiWindowCount int nMaxMultiWindowCount; /// ???????????????????, ??????? int nRetMultiWindowCount; /// ????????????, emMode?DH_AUDIO_MULTI????? } DH_OUT_GET_AUDIO_OUTPUT; ///@brief CLIENT_GetEncodePlan ??????????(?????????????????????) typedef struct tagDH_IN_GET_ENCODE_PLAN { DWORD dwSize; unsigned int nChannel; /// ????????????????? unsigned int nExpectTime; /// ????????? ????,?????????? unsigned int nCapacity; /// ????????????,????,????:M }DH_IN_GET_ENCODE_PLAN; ///@brief CLIENT_GetEncodePlan ??????????(?????????????????????) typedef struct tagDH_OUT_GET_ENCODE_PLAN { DWORD dwSize; int nResolutionType; /// emResolutionTypes??????? CAPTURE_SIZE emResolutionTypes[DH_MAX_CAPTURE_SIZE_NUM];/// ??????????? CAPTURE_SIZE emResolution; /// ??????????? unsigned int nBitRate; /// ??????????? }DH_OUT_GET_ENCODE_PLAN; ///@brief CLIENT_GetEncodePlanByResolution ??????????(???????????????????????????????????) typedef struct tagNET_IN_GET_ENCODEPLANE_BY_RESOLUTION { DWORD dwSize; unsigned int nChannel; /// ????????????????? CAPTURE_SIZE emResolution; /// ???????? unsigned int nBitRate; /// ???????? unsigned int nCapacity; /// ???????????? } NET_IN_GET_ENCODEPLANE_BY_RESOLUTION; ///@brief CLIENT_GetEncodePlanByResolution ??????????(???????????????????????????????????) typedef struct tagNET_OUT_GET_ENCODEPLANE_BY_RESOLUTION { DWORD dwSize; unsigned int nExpectTime; /// ????????? } NET_OUT_GET_ENCODEPLANE_BY_RESOLUTION; ///@brief ???????????? typedef struct tagDH_ORGANIZATION_NODE_LOGIC_OBJECT { DWORD dwSize; char szName[DH_NODE_NAME_LEN]; /// ???? char szType[DH_DEV_TYPE_LEN]; /// ???? char szDevID[DH_DEV_ID_LEN_EX]; /// ???ID char szControlID[DH_DEV_ID_LEN_EX]; /// ????ID, ??? int nChannel; /// ????? } DH_ORGANIZATION_NODE_LOGIC_OBJECT; ///@brief ????? typedef struct tagDH_ORGANIZATION_NODE_DIRECTORY { DWORD dwSize; char szName[DH_NODE_NAME_LEN]; /// ???? char szControlID[DH_DEV_ID_LEN_EX]; /// ????ID } DH_ORGANIZATION_NODE_DIRECTORY; ///@brief ??????????? typedef struct tagDH_ORGANIZATION_NODE { DWORD dwSize; int nNodeType; /// ???????, 0-???????, 1-?? DH_ORGANIZATION_NODE_LOGIC_OBJECT stuLogicObject; /// ???????, nNodeType==0????? DH_ORGANIZATION_NODE_DIRECTORY stuDirectory; /// ??, nNodeType==1????? } DH_ORGANIZATION_NODE; ///@brief ????????? typedef struct tagDH_ORGANIZATION_ADD_NODE_PARAM { DWORD dwSize; int nPosition; /// ????????, -1-???, -2-???, 0~n DH_ORGANIZATION_NODE stuNode; /// ?????? } DH_ORGANIZATION_ADD_NODE_PARAM; ///@brief CLIENT_OrganizationAddNodes???????????(??????) typedef struct tagDH_IN_ORGANIZATION_ADD_NODES { DWORD dwSize; char* pszPath; /// ???? DH_ORGANIZATION_ADD_NODE_PARAM* pstuNodes; /// ?????????????,??????????????????sizeof(DH_ORGANIZATION_ADD_NODE_PARAM)*nNodeCount int nNodeCount; /// ??????? } DH_IN_ORGANIZATION_ADD_NODES; ///@brief ????????? typedef struct tagDH_ORGANIZATION_ADD_NODE_RESULT { DWORD dwSize; BOOL bResult; /// ??? char szPath[MAX_PATH]; /// ????, ???????node????,??????????node??????? } DH_ORGANIZATION_ADD_NODE_RESULT; ///@brief CLIENT_OrganizationAddNodes???????????(??????) typedef struct tagDH_OUT_ORGANIZATION_ADD_NODES { DWORD dwSize; DH_ORGANIZATION_ADD_NODE_RESULT* pstuResults; /// ?????????? int nMaxResultCount; /// ?????????? int nRetResultCount; /// ??????????? } DH_OUT_ORGANIZATION_ADD_NODES; ///@brief ??????? typedef struct tagDH_ORGANIZATION_NODE_PATH { DWORD dwSize; char szPath[MAX_PATH]; /// ???? } DH_ORGANIZATION_NODE_PATH; ///@brief CLIENT_OrganizationDeleteNodes???????????(??????) typedef struct tagDH_IN_ORGANIZATION_DELETE_NODES { DWORD dwSize; DH_ORGANIZATION_NODE_PATH* pstuPath; /// ???????????,??????????????????sizeof(DH_ORGANIZATION_NODE_PATH)*nPathCount int nPathCount; /// ??????? } DH_IN_ORGANIZATION_DELETE_NODES; ///@brief CLIENT_OrganizationDeleteNodes???????????(??????) typedef struct tagDH_OUT_ORGANIZATION_DELETE_NODES { DWORD dwSize; } DH_OUT_ORGANIZATION_DELETE_NODES; ///@brief CLIENT_OrganizationGetNodes???????????(?????????) typedef struct tagDH_IN_ORGANIZATION_GET_NODES { DWORD dwSize; char* pszPath; /// ???? int nLevel; /// ????, 0-????, 1-????? } DH_IN_ORGANIZATION_GET_NODES; ///@brief CLIENT_OrganizationGetNodes???????????(?????????) typedef struct tagDH_OUT_ORGANIZATION_GET_NODES { DWORD dwSize; DH_ORGANIZATION_NODE* pstuNodes; /// ???????, ??????????,?????sizeof(DH_ORGANIZATION_NODE)*nMaxNodeCount int nMaxNodeCount; /// ?????????? int nRetNodeCount; /// ??????????? } DH_OUT_ORGANIZATION_GET_NODES; ///@brief CLIENT_OrganizationSetNode???????????(??????) typedef struct tagDH_IN_ORGANIZATION_SET_NODE { DWORD dwSize; char* pszPath; /// ???? DH_ORGANIZATION_NODE stuNode; /// ?????? } DH_IN_ORGANIZATION_SET_NODE; ///@brief CLIENT_OrganizationSetNode???????????(??????) typedef struct tagDH_OUT_ORGANIZATION_SET_NODE { DWORD dwSize; } DH_OUT_ORGANIZATION_SET_NODE; ///@brief ??????? typedef enum tagNET_LOGIC_CHANNEL_TYPE { LOGIC_CHN_UNKNOWN, /// ??? LOGIC_CHN_LOCAL, /// ??????? LOGIC_CHN_REMOTE, /// ?????? LOGIC_CHN_COMPOSE, /// ??????, ??????????????????????????????? LOGIC_CHN_MATRIX, /// ????????? LOGIC_CHN_CASCADE, /// ??????? } NET_LOGIC_CHN_TYPE; ///@brief ??????? typedef enum tagEM_VIDEO_STREAM { EM_VIDEO_STREAM_UNKNOWN, /// ??? EM_VIDEO_STREAM_MAIN, /// ?????? EM_VIDEO_STREAM_EXTRA1, /// ??????1 EM_VIDEO_STREAM_EXTRA2, /// ??????2 EM_VIDEO_STREAM_EXTRA3, /// ??????3 EM_VIDEO_STREAM_AUTO, /// ????????????? EM_VIDEO_STREAM_PREVIEW, /// ????????????? EM_VIDEO_STREAM_NO_VIDEO_JUST_AUDIO, /// ?????????(???????) } EM_VIDEO_STREAM; ///@brief ???????????? typedef struct tagDH_MATRIX_CAMERA_INFO { DWORD dwSize; char szName[DH_DEV_ID_LEN_EX]; /// ???? char szDevID[DH_DEV_ID_LEN_EX]; /// ???ID char szControlID[DH_DEV_ID_LEN_EX]; /// ????ID int nChannelID; /// ?????, DeviceID???????? int nUniqueChannel; /// ??????????????????? BOOL bRemoteDevice; /// ????????? DH_REMOTE_DEVICE stuRemoteDevice; /// ????????? NET_STREAM_TYPE emStreamType; /// ??????????? NET_LOGIC_CHN_TYPE emChannelType; /// ??????? BOOL bEnable; /// ???????DeviceID????/????????????????DeviceInfo?????????? EM_VIDEO_STREAM emVideoStream; /// ??????? } DH_MATRIX_CAMERA_INFO; ///@brief CLIENT_MatrixGetCameras??????????? typedef struct tagDH_IN_MATRIX_GET_CAMERAS { DWORD dwSize; } DH_IN_MATRIX_GET_CAMERAS; ///@brief CLIENT_MatrixGetCameras??????????? typedef struct tagDH_OUT_MATRIX_GET_CAMERAS { DWORD dwSize; DH_MATRIX_CAMERA_INFO* pstuCameras; /// ???????????, ??????????,?????sizeof(DH_MATRIX_CAMERA_INFO)*nMaxCameraCount int nMaxCameraCount; /// ??????????? int nRetCameraCount; /// ????????????? } DH_OUT_MATRIX_GET_CAMERAS; ///@brief CLIENT_QueryDevInfo , NET_QUERY_DEV_REMOTE_DEVICE_INFO ??????????????????? typedef struct tagNET_IN_GET_DEVICE_INFO { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_IN_GET_DEVICE_INFO) char szDevice[DH_DEV_ID_LEN_EX]; /// ???ID /* ???????,?? szDevice ???????,??????????? */ char szAttributeIP[DH_COMMON_STRING_32]; /// ?????? int nAttributePort; /// ?????? char szAttributeUsername[DH_COMMON_STRING_128]; /// ????? char szAttributePassword[DH_COMMON_STRING_128]; /// ???? char szAttributeManufacturer[DH_COMMON_STRING_128]; /// ???? }NET_IN_GET_DEVICE_INFO; ///@brief CLIENT_QueryDevInfo , NET_QUERY_DEV_REMOTE_DEVICE_INFO ??????????????????? typedef struct tagNET_OUT_GET_DEVICE_INFO { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_GET_DEVICE_INFO) DH_REMOTE_DEVICE stuInfo; /// ??????,??????????? dwSize ???????? }NET_OUT_GET_DEVICE_INFO; ///@brief CLIENT_MatrixSetCameras??????????? typedef struct tagDH_IN_MATRIX_SET_CAMERAS { DWORD dwSize; DH_MATRIX_CAMERA_INFO* pstuCameras; /// ???????????, ????????????????sizeof(DH_MATRIX_CAMERA_INFO)*nCameraCount int nCameraCount; /// ??????????? } DH_IN_MATRIX_SET_CAMERAS; ///@brief CLIENT_MatrixSetCameras??????????? typedef struct tagDH_OUT_MATRIX_SET_CAMERAS { DWORD dwSize; } DH_OUT_MATRIX_SET_CAMERAS; ///@brief ??????????? typedef struct tagDH_SPLIT_WND_SOURCE { DWORD dwSize; BOOL bEnable; /// ??????????? char szDeviceID[DH_DEV_ID_LEN]; /// ???ID char szControlID[DH_DEV_ID_LEN]; /// ????ID int nVideoChannel; /// ???????? int nVideoStream; /// ??????????? int nAudioChannel; /// ?????? int nAudioStream; /// ??????????? int nUniqueChannel; /// ???????????????????, ??? BOOL bRemoteDevice; /// ????????? DH_REMOTE_DEVICE stuRemoteDevice; /// ????????? NET_RECT stuSRect; /// ????????,???????(0,0,0,0)???????????????????????(0,0,8192,8192) int nInterval; /// ????????,???????? } DH_SPLIT_WND_SOURCE; ///@brief ???????? typedef struct tagDH_SPLIT_WINDOW { DWORD dwSize; BOOL bEnable; /// ????????????? int nWindowID; /// ????ID char szControlID[DH_DEV_ID_LEN]; /// ????ID DH_RECT stuRect; /// ????????, ?????????????? BOOL bDirectable; /// ????????????????? int nZOrder; /// ????Z???? DH_SPLIT_WND_SOURCE stuSource; /// ?????? UINT nOSDNum; /// OSD???? NET_SPLIT_OSD stuOSD[DH_VIDEO_CUSTOM_OSD_NUM_EX]; /// OSD??? BOOL bLock; /// ??????????????? BOOL bDock; /// ????????????????? BOOL bMeetingMode; /// ???????????????? BOOL bAudioEnable; /// ??????????????? BOOL bTourEnable; /// ???????????? } DH_SPLIT_WINDOW; ///@brief ???????? typedef struct tagDH_SPLIT_WINDOW_EX { DWORD dwSize; BOOL bEnable; /// ????????????? int nWindowID; /// ????ID char szControlID[DH_DEV_ID_LEN]; /// ????ID DH_RECT stuRect; /// ????????, ?????????????? BOOL bDirectable; /// ????????????????? int nZOrder; /// ????Z???? DH_SPLIT_WND_SOURCE stuSource; /// ?????? BOOL bLock; /// ??????????????? BOOL bDock; /// ????????????????? BOOL bMeetingMode; /// ???????????????? BOOL bAudioEnable; /// ??????????????? BOOL bTourEnable; /// ???????????? UINT nMaxOSDNum; /// ????????OSD???? UINT nRetOSDNum; /// ?????OSD???? NET_SPLIT_OSD* pstuOSD; /// OSD???????????????? } DH_SPLIT_WINDOW_EX; ///@brief ????????? typedef struct tagDH_SPLIT_SCENE { DWORD dwSize; char szCompositeID[DH_DEV_ID_LEN]; /// ?????ID char szControlID[DH_DEV_ID_LEN]; /// ????ID DH_SPLIT_MODE emSplitMode; /// ????? DH_SPLIT_WINDOW* pstuWnds; /// ???????????, ??????????,?????sizeof(DH_SPLIT_WINDOW)*nMaxWndCount int nMaxWndCount; /// ??????????????, ??????? int nRetWndCount; /// ???????????? DH_SPLIT_WINDOW_EX* pstuWndsEx; /// ???????????-???, ??????????,?????sizeof(DH_SPLIT_WINDOW_EX)*nMaxWndCount ///pstuWndsEx ?? pstuWnds??????????? int nMaxWndCountEx; /// ??????????????-???, ??????? int nRetWndCountEx; /// ????????????-??? } DH_SPLIT_SCENE; ///@brief ????????? typedef struct tagDH_MONITORWALL_SCENE { DWORD dwSize; char szName[DH_DEV_NAME_LEN]; /// ?????????? char szControlID[DH_DEV_ID_LEN]; /// ????ID DH_MONITORWALL stuMonitorWall; /// ????????? DH_SPLIT_SCENE* pstuSplitScene; /// ????????????????, ??????????,?????sizeof(DH_SPLIT_SCENE)*nMaxSplitSceneCount int nMaxSplitSceneCount; /// ????????????????, ??????? int nRetSplitSceneCount; /// ?????????????????? } DH_MONITORWALL_SCENE; ///@brief CLIENT_MonitorWallGetScene??????????(????????????) typedef struct tagDH_IN_MONITORWALL_GET_SCENE { DWORD dwSize; int nMonitorWallID; /// ???????? } DH_IN_MONITORWALL_GET_SCENE; ///@brief CLIENT_MonitorWallGetScene??????????(????????????) typedef struct tagDH_OUT_MONITORWALL_GET_SCENE { DWORD dwSize; char szName[DH_DEV_NAME_LEN]; /// ??????????, ??????? DH_MONITORWALL_SCENE stuScene; /// ????????? } DH_OUT_MONITORWALL_GET_SCENE; ///@brief CLIENT_MonitorWallSetScene??????????(????????????) typedef struct tagDH_IN_MONITORWALL_SET_SCENE { DWORD dwSize; int nMonitorWallID; /// ???????? DH_MONITORWALL_SCENE stuScene; /// ????????? } DH_IN_MONITORWALL_SET_SCENE; ///@brief CLIENT_MonitorWallSetScene??????????(????????????) typedef struct tagDH_OUT_MONITORWALL_SET_SCENE { DWORD dwSize; } DH_OUT_MONITORWALL_SET_SCENE; ///@brief CLIENT_QueryNetStat???,????????NET_APP_DATA_STAT??????????(???????????????) typedef struct tagNET_IN_NETAPP_NET_DATA_STAT { DWORD dwSize; char szEthName[DH_MAX_ETH_NAME]; ///?????? }NET_IN_NETAPP_NET_DATA_STAT; ///@brief ??????????????,??????ifconfig? typedef struct tagNET_NETAPP_RECEIVE_STAT { DWORD dwSize; DWORD dwPackets; DWORD dwBytes; DWORD dwErrors; DWORD dwDroped; DWORD dwOverruns; DWORD dwFrame; DWORD dwSpeed; /// ??????????? }NET_NETAPP_RECEIVE_STAT; ///@brief ??????????????,??????ifconfig? typedef struct tagNET_NETAPP_TRANSMIT_STAT { DWORD dwSize; DWORD dwPackets; DWORD dwBytes; DWORD dwErrors; DWORD dwDroped; DWORD dwOverruns; DWORD dwCarrier; DWORD dwCollisions; DWORD dwTxQueue; DWORD dwSpeed; /// ??????????? }NET_NETAPP_TRANSMIT_STAT; ///@brief CLIENT_QueryNetStat???,????????NET_APP_DATA_STAT??????????(???????????????) typedef struct tagNET_OUT_NETAPP_NET_DATA_STAT { DWORD dwSize; NET_NETAPP_RECEIVE_STAT stuReceiveStat; /// ??????????????,??????ifconfig? NET_NETAPP_TRANSMIT_STAT stuTransmitStat; /// ??????????????,??????ifconfig? int nSpeed; /// ???????,????Mbps }NET_OUT_NETAPP_NET_DATA_STAT; ///@brief CLIENT_QueryNetStat???,????????NET_APP_LINK_STAT ??????????(?????????????) typedef struct tagNET_IN_NETAPP_LINK_STATUS { DWORD dwSize; char szEthName[DH_MAX_ETH_NAME]; ///?????? }NET_IN_NETAPP_LINK_STATUS; ///@brief CLIENT_QueryNetStat???,????????NET_APP_LINK_STAT ??????????(?????????????) typedef struct tagNET_OUT_NETAPP_LINK_STATUS { DWORD dwSize; BOOL bWorking; /// ?????????? BOOL bIPConflict; /// IP????? }NET_OUT_NETAPP_LINK_STATUS; ///@brief MACRO_GROUP_VIDEO_SIGNAL_29_BEGIN /// ??????????? #define DH_VIDEO_SIGNAL_CVBS 0x0001 #define DH_VIDEO_SIGNAL_SDI 0x0002 #define DH_VIDEO_SIGNAL_VGA 0x0004 #define DH_VIDEO_SIGNAL_DVI 0x0008 #define DH_VIDEO_SIGNAL_HDMI 0x0010 #define DH_VIDEO_SIGNAL_YPBPR 0x0020 #define DH_VIDEO_SIGNAL_SFP 0x0040 #define DH_VIDEO_SIGNAL_HDCVI 0x0080 #define DH_VIDEO_SIGNAL_DUAL_LINK 0x0100 ///@brief MACRO_GROUP_VIDEO_SIGNAL_29_END ///@brief ????????????? typedef struct tagDH_VIDEO_IN_CAPS { DWORD dwSize; DWORD dwSignalType; /// ??????????? BOOL bAutoFocusPeak; /// ??????????????? BOOL bElectricFocus; /// ???????T???? BOOL bSyncFocus; /// ???????????? BOOL bSetColor; /// ???????????????? BOOL bGain; /// ????????????? BOOL bPhase; /// ?????????????? int nSubChannel; /// ????????(?????)???? DH_RECT stuRect[MAX_SUBCHANNEL_NUM]; /// ???sensor???????????????????????? } DH_VIDEO_IN_CAPS; ///@brief CLIENT_GetVideoInCaps?????????? typedef struct tagDH_IN_GET_VIDEO_IN_CAPS { DWORD dwSize; int nChannel; /// ???????????? } DH_IN_GET_VIDEO_IN_CAPS; ///@brief CLIENT_GetVideoInCaps?????????? typedef struct tagDH_OUT_GET_VIDEO_IN_CAPS { DWORD dwSize; DH_VIDEO_IN_CAPS stuCaps; /// ???? } DH_OUT_GET_VIDEO_IN_CAPS; ///@brief ???????? typedef struct tagDH_VIDEO_OUT_MODE { DWORD dwSize; int nWidth; /// ??????? int nHeight; /// ???????? int nBPP; /// ?????? int nFormat; /// ????????, 0-Auto, 1-TV, 2-VGA, 3-DVI int nRefreshRate; /// ?????? int nPhysicalPort; /// ?????????, VGA, TV, DVI??????????, ?????0??? int nScanFormat; /// ?????, 0-????, 1-???? } DH_VIDEO_OUT_MODE; ///@brief CLIENT_EnumVideoOutModes?????????? typedef struct tagDH_IN_ENUM_VIDEO_OUT_MODES { DWORD dwSize; int nChannel; } DH_IN_ENUM_VIDEO_OUT_MODES; ///@brief CLIENT_EnumVideoOutModes?????????? typedef struct tagDH_OUT_ENUM_VIDEO_OUT_MODES { DWORD dwSize; DH_VIDEO_OUT_MODE* pstuModes; /// ??????, ??????????,?????sizeof(DH_VIDEO_OUT_MODE)*nMaxModeCount int nMaxModeCount; /// ?????????, ??????? int nRetModeCount; /// ??????????? } DH_OUT_ENUM_VIDEO_OUT_MODES; ///@brief ???????????????? typedef enum tagDH_OUTPUT_ATTRIBUTE_TYPE { DH_OUTPUT_ATTRIBUTE_VIDEO, DH_OUTPUT_ATTRIBUTE_YPBPR, DH_OUTPUT_ATTRIBUTE_VGA, DH_OUTPUT_ATTRIBUTE_DVI, DH_OUTPUT_ATTRIBUTE_MENU, } DH_OUTPUT_ATTRIBUTE_TYPE; ///@brief MACRO_GROUP_ATTR_VIDEO_30_BEGIN /// ????????????????????????(DH_OUTPUT_ATTRIBUTE_CAPS) Video???? #define DH_ATTR_VIDEO_BRIGHTNESS 0X00000001 #define DH_ATTR_VIDEO_CONTRAST 0X00000002 #define DH_ATTR_VIDEO_SATURATION 0X00000004 #define DH_ATTR_VIDEO_SHAPENESS 0X00000008 #define DH_ATTR_VIDEO_DENOISE 0X00000010 ///@brief MACRO_GROUP_ATTR_VIDEO_30_END ///@brief MACRO_GROUP_ATTR_YPBPR_31_BEGIN /// ????????????????????????(DH_OUTPUT_ATTRIBUTE_CAPS) YPbPr???? #define DH_ATTR_YPBPR_BRIGHTNESS 0X00000001 #define DH_ATTR_YPBPR_CONTRAST 0X00000002 #define DH_ATTR_YPBPR_SATURATION 0X00000004 #define DH_ATTR_YPBPR_SHAPENESS 0X00000008 #define DH_ATTR_YPBPR_DENOISE 0X00000010 ///@brief MACRO_GROUP_ATTR_YPBPR_31_END ///@brief MACRO_GROUP_ATTR_VGA_32_BEGIN /// ????????????????????????(DH_OUTPUT_ATTRIBUTE_CAPS) VGA???? #define DH_ATTR_VGA_BRIGHTNESS 0X00000001 #define DH_ATTR_VGA_CONTRAST 0X00000002 #define DH_ATTR_VGA_HORPOSITION 0X00000004 #define DH_ATTR_VGA_VERPOSITION 0X00000008 #define DH_ATTR_VGA_CLOCK 0X00000010 ///@brief MACRO_GROUP_ATTR_VGA_32_END ///@brief MACRO_GROUP_ATTR_DVI_33_BEGIN /// ????????????????????????(DH_OUTPUT_ATTRIBUTE_CAPS) DVI???? #define DH_ATTR_DVI_BRIGHTNESS 0X00000001 #define DH_ATTR_DVI_CONTRAST 0X00000002 #define DH_ATTR_DVI_HORPOSITION 0X00000004 #define DH_ATTR_DVI_VERPOSITION 0X00000008 #define DH_ATTR_DVI_CLOCK 0X00000010 ///@brief MACRO_GROUP_ATTR_DVI_33_END ///@brief MACRO_GROUP_ATTR_MENU_34_BEGIN /// ????????????????????????(DH_OUTPUT_ATTRIBUTE_CAPS) Menu???? #define DH_ATTR_MENU_MENU 0X00000001 #define DH_ATTR_MENU_UP 0X00000002 #define DH_ATTR_MENU_DOWN 0X00000004 #define DH_ATTR_MENU_LEFT 0X00000008 #define DH_ATTR_MENU_RIGHT 0X00000010 #define DH_ATTR_MENU_FACTORYMENU 0X00000020 ///@brief MACRO_GROUP_ATTR_MENU_34_END ///@brief ???????????????????????? typedef struct tagDH_OUTPUT_ATTRIBUTE_CAPS { DWORD dwSize; BOOL abVideo; /// Video??????????? DWORD dwVideo; /// Video????, ???????, ?????DH_ATTR_VIDEO_BRIGHTNESS?? BOOL abYPbPr; /// YPbPr??????????? DWORD dwYPbPr; /// YPbPr????, ???????, ?????DH_ATTR_VGA_BRIGHTNESS?? BOOL abVGA; /// VGA??????????? DWORD dwVGA; /// VGA????, ???????, ?????DH_ATTR_VGA_BRIGHTNESS?? BOOL abDVI; /// DVI??????????? DWORD dwDVI; /// DVI????, ???????, ?????DH_ATTR_DVI_BRIGHTNESS BOOL abMenu; /// Menu??????????? DWORD dwMemu; /// Menu????, ???????, ?????DH_ATTR_MENU_MENU?? } DH_OUTPUT_ATTRIBUTE_CAPS; ///@brief CLIENT_MonitorWallGetAttributeCaps ?????????? typedef struct tagDH_IN_MONITORWALL_GET_ARRT_CAPS { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID int nOutputID; /// ????????? } DH_IN_MONITORWALL_GET_ARRT_CAPS; ///@brief CLIENT_MonitorWallGetAttributeCaps ?????????? typedef struct tagDH_OUT_MONITORWALL_GET_ARRT_CAPS { DWORD dwSize; DH_OUTPUT_ATTRIBUTE_CAPS stuCaps; /// ?????????? } DH_OUT_MONITORWALL_GET_ARRT_CAPS; ///@brief CLIENT_MonitorWallAutoAdjust ?????????? typedef struct tagDH_IN_MONITORWALL_AUTO_ADJUST { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID int* pOutputs; /// ????????????????, ???????????????ID, ??????????,?????sizeof(int)*nOutputCount int nOutputCount; /// ??????????, pOutputs??????? } DH_IN_MONITORWALL_AUTO_ADJUST; ///@brief CLIENT_MonitorWallAutoAdjust ?????????? typedef struct tagDH_OUT_MONITORWALL_AUTO_ADJUST { DWORD dwSize; } DH_OUT_MONITORWALL_AUTO_ADJUST; ///@brief ?????????????? typedef struct tagDH_ATTR_PAIR { DWORD dwKey; /// ????? /// ?????DH_OUTPUT_ATTRIBUTE_VIDEO?, ?????DH_ATTR_VIDEO_BRIGHTNESS?? /// ?????DH_OUTPUT_ATTRIBUTE_YPBPR?, ?????DH_ATTR_YPBPR_BRIGHTNESS?? /// ????????????????? int nValue; /// ?????, 0-???? 1-????, 2-???? } DH_ATTR_PAIR; ///@brief CLIENT_MonitorWallSetAttribute ?????????? typedef struct tagDH_IN_MONITORWALL_SET_ATTR { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID int nOutputID; /// ????????? DH_OUTPUT_ATTRIBUTE_TYPE emAttrType; /// ????????, ???????, ?????????(stuAttrs)???? DH_ATTR_PAIR stuAttrs[DH_MAX_ATTR_NUM]; /// ????? } DH_IN_MONITORWALL_SET_ATTR; ///@brief CLIENT_MonitorWallSetAttribute ?????????? typedef struct tagDH_OUT_MONITORWALL_SET_ATTR { DWORD dwSize; } DH_OUT_MONITORWALL_SET_ATTR; ///@brief CLIENT_MonitorWallSetBackLight ?????????? typedef struct tagDH_IN_MONITORWALL_SET_BACK_LIGHT { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID int nOutputID; /// ????????? int nMode; /// ??????, 0-????????????,1-??????? } DH_IN_MONITORWALL_SET_BACK_LIGHT; ///@brief CLIENT_MonitorWallSetBackLight ?????????? typedef struct tagDH_OUT_MONITORWALL_SET_BACK_LIGHT { DWORD dwSize; } DH_OUT_MONITORWALL_SET_BACK_LIGHT; ///@brief CLIENT_MonitorWallGetPowerSchedule ?????????? typedef struct tagNET_IN_WM_GET_POWER_SCHEDULE { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID } NET_IN_MW_GET_POWER_SCHEDULE; ///@brief CLIENT_MonitorWallGetPowerSchedule ?????????? typedef struct tagNET_OUT_MW_GET_POWER_SCHEDULE { DWORD dwSize; DH_TSECT stuPowerSchedule[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ????????, ???????????????~?????????? } NET_OUT_MW_GET_POWER_SCHEDULE; ///@brief CLIENT_MonitorWallSetPowerSchedule ?????????? typedef struct tagNET_IN_MW_SET_POWER_SCHEDULE { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID, NULL????????? DH_TSECT stuPowerSchedule[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ????????, ???????????????~?????????? } NET_IN_MW_SET_POWER_SCHEDULE; ///@brief CLIENT_MonitorWallSetPowerSchedule ?????????? typedef struct tagNET_OUT_MW_SET_POWER_SCHEDULE { DWORD dwSize; } NET_OUT_MW_SET_POWER_SCHEDULE; ///@brief CLIENT_MonitorWallGetScrnCtrlParam ?????????? typedef struct tagNET_IN_MW_GET_SCRN_CTRL_PARAM { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID } NET_IN_MW_GET_SCRN_CTRL_PARAM; #define DH_MAX_SCREEN_PORT_NUM 16 /// ?????????????? #define DH_MAX_COMPSITE_SCREEN_NUM 256 /// ???????????? ///@brief ???????????? typedef struct tagNET_SCREEN_PORT_INFO { DWORD dwSize; char szType[DH_COMMON_STRING_16]; /// ???????, "DVI", "VGA", "HDMI"??, ????????????????????? char szAddress[DH_COMMON_STRING_16]; /// ????? char szDeviceID[DH_DEV_ID_LEN_EX]; /// ?????????????? int nOutputChannel; /// ??????????? } NET_SCREEN_PORT_INFO; ///@brief ???????????? typedef struct tagNET_SCREEN_PORT_GROUP { DWORD dwSize; int nPortNum; /// ????? NET_SCREEN_PORT_INFO stuPorts[DH_MAX_SCREEN_PORT_NUM]; /// ?????? } NET_SCREEN_PORT_GROUP; ///@brief ??????????????? typedef struct tagNET_WM_SCRN_CTRL_PARAM { DWORD dwSize; int nCommPort; /// ????? DH_COMM_PROP stuCommProp; /// ???????? char szProtocol[DH_COMMON_STRING_32]; /// ???????? int nResolutionNum; /// ????????? CAPTURE_SIZE emResolutions[DH_MAX_CAPTURE_SIZE_NUM]; /// ???????????? int nScreenCodeNum; /// ????????? char szScreenCode[DH_MAX_COMPSITE_SCREEN_NUM][DH_COMMON_STRING_16]; /// ???????, ????????????, ??????????????, ??????? int nScreenPortsNum; /// ???????????????? NET_SCREEN_PORT_GROUP stuScreenPorts[DH_MAX_COMPSITE_SCREEN_NUM]; /// ???????????? } NET_WM_SCRN_CTRL_PARAM; ///@brief CLIENT_MonitorWallGetScrnCtrlParam ?????????? typedef struct tagNET_OUT_MW_GET_SCRN_CTRL_PARAM { DWORD dwSize; NET_WM_SCRN_CTRL_PARAM stuScrnCtrlParam; /// ?????????? } NET_OUT_MW_GET_SCRN_CTRL_PARAM; ///@brief CLIENT_MonitorWallSetScrnCtrlParam ?????????? typedef struct tagNET_IN_MW_SET_SCRN_CTRL_PARAM { DWORD dwSize; int nMonitorWallID; /// ???????? const char* pszCompositeID; /// ?????ID NET_WM_SCRN_CTRL_PARAM stuScrnCtrlParam; /// ?????????? } NET_IN_MW_SET_SCRN_CTRL_PARAM; ///@brief CLIENT_MonitorWallSetScrnCtrlParam ?????????? typedef struct tagNET_OUT_MW_SET_SCRN_CTRL_PARAM { DWORD dwSize; } NET_OUT_MW_SET_SCRN_CTRL_PARAM; ///@brief CLIENT_MonitorWallGetBackgroudColor ?????????? typedef struct tagNET_IN_MW_GET_BACKGROUDND_COLOR { DWORD dwSize; int nMonitorWallID; /// ???????? } NET_IN_MW_GET_BACKGROUDND_COLOR; ///@brief CLIENT_MonitorWallGetBackgroudColor ?????????? typedef struct tagNET_OUT_MW_GET_BACKGROUDND_COLOR { DWORD dwSize; DH_COLOR_RGBA stuScreenColor; /// ???????? DH_COLOR_RGBA stuWindowColor; /// ???????? } NET_OUT_MW_GET_BACKGROUDND_COLOR; ///@brief CLIENT_MonitorWallSetBackgroudColor ?????????? typedef struct tagNET_IN_MW_SET_BACKGROUD_COLOR { DWORD dwSize; int nMonitorWallID; /// ???????? DH_COLOR_RGBA stuScreenColor; /// ???????? DH_COLOR_RGBA stuWindowColor; /// ???????? } NET_IN_MW_SET_BACKGROUD_COLOR; ///@brief CLIENT_MonitorWallSetBackgroudColor ?????????? typedef struct tagNET_OUT_MW_SET_BACKGROUD_COLOR { DWORD dwSize; } NET_OUT_MW_SET_BACKGROUD_COLOR; ///@brief ???????? typedef enum tagEM_SIGNAL_TYPE { EM_SIGNAL_TYPE_UNKNOWN, /// ??????? EM_SIGNAL_TYPE_VIDEO, /// "Video" EM_SIGNAL_TYPE_VGA, /// "VGA" EM_SIGNAL_TYPE_YPBPR, /// "YPbPr" EM_SIGNAL_TYPE_HDMI, /// "HDMI" EM_SIGNAL_TYPE_DVI, /// "DVI" EM_SIGNAL_TYPE_SDI, /// "SDI" EM_SIGNAL_TYPE_CVBS, /// "CVBS" }EM_SIGNAL_TYPE; ///@brief CLIENT_MonitorWallSwitchDisplaySignal ?????????? typedef struct tagNET_IN_MW_SWITCH_DISPLAY_SIGNAL { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_INT_SWITCH_DISPLAYSIGNAL) int nMonitorWallID; /// ???????? char* pszCompositeID; /// ????????ID int nOutputID; /// ????????????, -1????????????????????? EM_SIGNAL_TYPE emSignalType; /// ???????? int nIndex; /// ?????????????, ??0???, ?????????????????, ?????????????? }NET_IN_MW_SWITCH_DISPLAY_SIGNAL; ///@brief CLIENT_MonitorWallSwitchDisplaySignal ?????????? typedef struct tagNET_OUT_MW_SWITCH_DISPLAY_SIGNAL { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_SWICH_DISPLAYSIGNAL) }NET_OUT_MW_SWITCH_DISPLAY_SIGNAL; ////////////////////////////////////////////////////////////////////// ///@brief CLIENT_OperateMonitorWall?????? ////////////////////////////////////////////////////////////////////// ///@brief ????????????? typedef enum tagNET_MONITORWALL_OPERATE_TYPE { NET_MONITORWALL_OPERATE_ADD, /// ????????, ??? NET_IN_MONITORWALL_ADD ?? NET_OUT_MONITORWALL_ADD NET_MONITORWALL_OPERATE_CTRL_TOUR, /// ??????????, ??? NET_IN_CTRL_COLLECTIONTOUR ?? NET_OUT_CTRL_COLLECTIONTOUR NET_MONITORWALL_OPERATE_GET_STATUS, /// ??????????, ??? NET_IN_MONITORWALL_GET_STATUS ?? NET_OUT_MONITORWALL_GET_STATUS NET_MONITORWALL_OPERATE_SET_COLL_SCHD, /// ???????????, ??? NET_IN_MONITORWALL_SET_COLL_SCHD ?? NET_OUT_MONITORWALL_SET_COLL_SCHD NET_MONITORWALL_OPERATE_GET_COLL_SCHD, /// ??????????, ??? NET_IN_MONITORWALL_GET_COLL_SCHD ?? NET_OUT_MONITORWALL_GET_COLL_SCHD NET_MONITORWALL_OPERATE_REMOVE, /// ????????, ??? NET_IN_MONITORWALL_REMOVE ?? NET_OUT_MONITORWALL_REMOVE NET_MONITORWALL_OPERATE_SET_ENABLE, /// ???????, ??? NET_IN_MONITORWALL_SET_ENABLE ?? NET_OUT_MONITORWALL_SET_ENABLE NET_MONITORWALL_OPERATE_GET_ENABLE, /// ??????, ??? NET_IN_MONITORWALL_GET_ENABLE ?? NET_OUT_MONITORWALL_GET_ENABLE NET_MONITORWALL_OPERATE_NAME_EXIST, /// ???????????, ??? NET_IN_MONITORWALL_NAME_EXIST ?? NET_OUT_MONITORWALL_NAME_EXIST NET_MONITORWALL_OPERATE_RENAME, /// ???????????, ??? NET_IN_MONITORWALL_RENAME ?? NET_OUT_MONITORWALL_RENAME NET_MONITORWALL_OPERATE_UPDATE_SOURCE_URL, /// ???????????????URL, ??? NET_IN_MONITORWALL_UPDATE_SOURCE_URL ?? NET_OUT_MONITORWALL_UPDATE_SOURCE_URL NET_MONITORWALL_OPERATE_GET_LOCK_STATUS,/// ??????????????, ??? NET_IN_MONITORWALL_GET_LOCK_STATUS ?? NET_OUT_MONITORWALL_GET_LOCK_STATUS NET_MONITORWALL_OPERATE_LOCK, /// ?????????(?????????????????????????????????), ??? NET_IN_MONITORWALL_LOCK ?? NET_OUT_MONITORWALL_LOCK NET_MONITORWALL_OPERATE_SET_VSYNC, /// ?????Vsync???, ???NET_IN_MONITORWALL_SET_VSYNC ?? NET_OUT_MONITORWALL_SET_VSYNC } NET_MONITORWALL_OPERATE_TYPE; ///@brief ??????????????? typedef struct tagNET_IN_MONITORWALL_ADD { DWORD dwSize; DH_MONITORWALL stuMonitorWall; /// ???????? } NET_IN_MONITORWALL_ADD; ///@brief ??????????????? typedef struct tagNET_OUT_MONITORWALL_ADD { DWORD dwSize; unsigned int nMonitorWallID; /// ?????ID } NET_OUT_MONITORWALL_ADD; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_CTRL_TOUR typedef struct tagNET_IN_CTRL_COLLECTIONTOUR { DWORD dwSize; int nChannel; /// ????? int nAction; /// ???????, 0:????, 1:??? } NET_IN_CTRL_COLLECTIONTOUR; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_CTRL_TOUR typedef struct tagNET_OUT_CTRL_COLLECTIONTOUR { DWORD dwSize; } NET_OUT_CTRL_COLLECTIONTOUR; ///@brief ?????????? typedef enum tagNET_MATRIX_STATUS { MATRIX_STATUS_UNKNOWN, /// ??? MATRIX_STATUS_TOUR, /// ?????? MATRIX_STATUS_NORMAL, /// ?????? } NET_MATRIX_STATUS; #define DH_MAX_COLLECTION_NUM 64 /// ???????? ///@brief ????????? typedef struct tagNET_MONITORWALL_STATUS_INFO { DWORD dwSize; int nInterval; /// ???????? int nCollectionNum; /// ???????? char szCollections[DH_MAX_COLLECTION_NUM][DH_DEVICE_NAME_LEN]; /// ???????????? char szName[DH_DEVICE_NAME_LEN]; /// ??????????????? } NET_MONITORWALL_STATUS_INFO; ///@brief /// CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_STATUS typedef struct tagNET_IN_MONITORWALL_GET_STATUS { DWORD dwSize; int nChannel; /// ????? } NET_IN_MONITORWALL_GET_STATUS; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_STATUS typedef struct tagNET_OUT_MONITORWALL_GET_STATUS { DWORD dwSize; NET_MATRIX_STATUS emMatrixStatus; /// ?????? NET_MONITORWALL_STATUS_INFO stuStatusInfo; /// ????? } NET_OUT_MONITORWALL_GET_STATUS; ///@brief ???????????? typedef struct tagMONITORWALL_COLLECTION_SCHEDULE { DWORD dwSize; char szName[DH_DEVICE_NAME_LEN]; /// ??????? DH_TSECT stuSchedule[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ????, ???????????????~?????????? } MONITORWALL_COLLECTION_SCHEDULE; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_COLL_SCHD typedef struct tagNET_IN_MONITORWALL_SET_COLL_SCHD { DWORD dwSize; int nCollectionNum; /// ????? MONITORWALL_COLLECTION_SCHEDULE stuCollShedule[DH_MAX_COLLECTION_NUM]; /// ??????? int nMonitorWallID; /// ?????ID } NET_IN_MONITORWALL_SET_COLL_SCHD; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_COLL_SCHD typedef struct tagNET_OUT_MONITORWALL_SET_COLL_SCHD { DWORD dwSize; } NET_OUT_MONITORWALL_SET_COLL_SCHD; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_COLL_SCHD typedef struct tagNET_IN_MONITORWALL_GET_COLL_SCHD { DWORD dwSize; BOOL bAllCollections; /// TRUE-??????????, ???????????????. FALSE-????????????????? int nCollectionNum; /// ?????, bAllCollections?FALSE????? char szCollections[DH_MAX_COLLECTION_NUM][DH_DEVICE_NAME_LEN]; /// ??????? int nMonitorWallID; /// ?????ID } NET_IN_MONITORWALL_GET_COLL_SCHD; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_COLL_SCHD typedef struct tagNET_OUT_MONITORWALL_GET_COLL_SCHD { DWORD dwSize; int nCollectionNum; /// ????? MONITORWALL_COLLECTION_SCHEDULE stuCollShedule[DH_MAX_COLLECTION_NUM]; /// ??????? } NET_OUT_MONITORWALL_GET_COLL_SCHD; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_REMOVE typedef struct tagNET_IN_MONITORWALL_REMOVE { DWORD dwSize; int nMonitorWallNum; /// ?????????????? char szNames[DH_MAX_MONITORWALL_NUM][DH_COMMON_STRING_128]; /// ????????? } NET_IN_MONITORWALL_REMOVE; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_REMOVE typedef struct tagNET_OUT_MONITORWALL_REMOVE { DWORD dwSize; } NET_OUT_MONITORWALL_REMOVE; ///@brief ??????????? typedef struct tagNET_MONITORWALL_ENABLE_INFO { DWORD dwSize; BOOL bEanble; /// ??? char szName[DH_COMMON_STRING_128]; /// ????????? } NET_MONITORWALL_ENABLE_INFO; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_ENABLE typedef struct tagNET_IN_MONITORWALL_SET_ENABLE { DWORD dwSize; int nMonitorWallNum; /// ?????????????? NET_MONITORWALL_ENABLE_INFO stuEnable[DH_MAX_MONITORWALL_NUM]; /// ???????? } NET_IN_MONITORWALL_SET_ENABLE; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_ENABLE typedef struct tagNET_OUT_MONITORWALL_SET_ENABLE { DWORD dwSize; } NET_OUT_MONITORWALL_SET_ENABLE; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_ENABLE typedef struct tagNET_IN_MONITORWALL_GET_ENABLE { DWORD dwSize; int nMonitorWallNum; /// ??????????????, -1??????????????? char szNames[DH_MAX_MONITORWALL_NUM][DH_COMMON_STRING_128]; /// ?????????, nMonitorWallNum>0????? } NET_IN_MONITORWALL_GET_ENABLE; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_ENABLE typedef struct tagNET_OUT_MONITORWALL_GET_ENABLE { DWORD dwSize; int nMonitorWallNum; /// ????????? NET_MONITORWALL_ENABLE_INFO stuEnable[DH_MAX_MONITORWALL_NUM]; /// ???????? } NET_OUT_MONITORWALL_GET_ENABLE; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_NAME_EXIST typedef struct tagNET_IN_MONITORWALL_NAME_EXIST { DWORD dwSize; const char* pszName; /// ????????? } NET_IN_MONITORWALL_NAME_EXIST; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_NAME_EXIST typedef struct tagNET_OUT_MONITORWALL_NAME_EXIST { DWORD dwSize; BOOL bExist; /// ????????????? } NET_OUT_MONITORWALL_NAME_EXIST; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_RENAME??????????? typedef struct tagNET_IN_MONITORWALL_RENAME { DWORD dwSize; unsigned int unMonitorWallID; /// ?????ID char szNewName[MAX_MONITORWALL_NAME_LEN]; /// ??????????? } NET_IN_MONITORWALL_RENAME; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_RENAME??????????? typedef struct tagNET_OUT_MONITORWALL_RENAME { DWORD dwSize; } NET_OUT_MONITORWALL_RENAME; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_LOCK_STATUS?????????????? typedef struct tagNET_IN_MONITORWALL_GET_LOCK_STATUS { DWORD dwSize; int nChannel; /// ??? } NET_IN_MONITORWALL_GET_LOCK_STATUS; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_GET_LOCK_STATUS?????????????? typedef struct tagNET_OUT_MONITORWALL_GET_LOCK_STATUS { DWORD dwSize; BOOL bLock; /// ???????,true:????;false????????? } NET_OUT_MONITORWALL_GET_LOCK_STATUS; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_LOCK????????? typedef struct tagNET_IN_MONITORWALL_LOCK { DWORD dwSize; int nChannel; /// ??? BOOL bLock; /// ???????,true:????;false????????? BYTE byReserved[4]; /// ??????? } NET_IN_MONITORWALL_LOCK; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_LOCK????????? typedef struct tagNET_OUT_MONITORWALL_LOCK { DWORD dwSize; } NET_OUT_MONITORWALL_LOCK; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_VSYNC ?????Vsync??? typedef struct tagNET_IN_MONITORWALL_SET_VSYNC { DWORD dwSize; /// ??????? int nChannel; /// ????? char szCompositeID[64]; /// ?????ID }NET_IN_MONITORWALL_SET_VSYNC; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_SET_VSYNC ?????Vsync??? typedef struct tagNET_OUT_MONITORWALL_SET_VSYNC { DWORD dwSize; /// ??????? }NET_OUT_MONITORWALL_SET_VSYNC; ///@brief ????????URL??? typedef struct tagNET_UPDATE_URL_INFO { char szOldURL[512]; /// ???????????URL char szNewURL[512]; /// ??????????URL BYTE bReserved[1024]; /// ??????? } NET_UPDATE_URL_INFO; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_UPDATE_SOURCE_URL ???????????????URL typedef struct tagNET_IN_MONITORWALL_UPDATE_SOURCE_URL { DWORD dwSize; /// ??????? UINT nUpdateURLNum; /// ????????URL???????, ??????256?? NET_UPDATE_URL_INFO *pstuUpdateURL; /// ????????URL???, ????????????????????????nUpdateURLNum*sizeof(NET_UPDATE_URL_INFO) } NET_IN_MONITORWALL_UPDATE_SOURCE_URL; ///@brief CLIENT_OperateMonitorWall??????????=>NET_MONITORWALL_OPERATE_UPDATE_SOURCE_URL ???????????????URL typedef struct tagNET_OUT_MONITORWALL_UPDATE_SOURCE_URL { DWORD dwSize; /// ??????? } NET_OUT_MONITORWALL_UPDATE_SOURCE_URL; /************************************************************************/ /* U????? */ /************************************************************************/ ///@brief ???????????? typedef enum tagEM_SNIFFER_FILTER_PROTOCOL { EM_SNIFFER_FILTER_PROTOCOL_UNKNOWN, /// ??? EM_SNIFFER_FILTER_PROTOCOL_TCP, /// TCP EM_SNIFFER_FILTER_PROTOCOL_UDP, /// UDP }EM_SNIFFER_FILTER_PROTOCOL; ///@brief ?????????? typedef struct tagNET_SNIFFER_FILTER_ELEMENT { char szSrcIP[64]; /// ???? char szDstIP[64]; /// ????? int nSrcPort; /// ???? int nDstPort; /// ????? EM_SNIFFER_FILTER_PROTOCOL emProtocol; /// ???????? BYTE byReserved[60]; /// ??????? }NET_SNIFFER_FILTER_ELEMENT; ///@brief ?????????? typedef struct tagNET_SNIFFER_FILTER { int nMaxElemet; /// ??????stElemetsge???? NET_SNIFFER_FILTER_ELEMENT stuElemets[8]; /// ?????????????? int nFilterType; /// 0: ??????????????????????????; 1: ????????????????????????? BYTE byReserved[256]; /// ??????? }NET_SNIFFER_FILTER; ///@brief CLIENT_StartSniffer ?????????? typedef struct tagDH_IN_START_SNIFFER { DWORD dwSize; const char* pszNetInterface; /// ???????? const char* pszPath; /// ???????????, ???????????????? int nSaveType; /// ???????, 0-Wireshark/Tcpdump 1-Remotecap ???????????????? CLIENT_AttachSniffer const char* pszFilter; /// ????????, ??"host 172.9.88.200 and port 8080 and tcp" int nCaptureTime; /// ?????????????????, 0 ?????????. unsigned int nCurrentFileSize; /// ?????????????????, ????kb BOOL bFilterEx; /// ??????????????????????????pszFilter????????? NET_SNIFFER_FILTER stuFilterEx; /// ??????????????? } DH_IN_START_SNIFFER; ///@brief CLIENT_StartSniffer ?????????? typedef struct tagDH_OUT_START_SNIFFER { DWORD dwSize; } DH_OUT_START_SNIFFER; ///@brief ?????? typedef struct tagDH_SNIFFER_INFO { DWORD dwSize; DWORD nSnifferID; /// ???ID, ?????ID?0 char szPath[256]; /// ????????????????????????????????????????????? char szPathEx[10][256]; /// ?????????start?????????????????????????????????? int nRetPathEx; /// ???????szPathEx???????? UINT nFileSize[10]; /// szPathEx????????????, ??????? } DH_SNIFFER_INFO; ///@brief CLIENT_GetSnifferInfo ?????????? typedef struct tagDH_IN_GET_SNIFFER_INFO { DWORD dwSize; const char* pszNetInterface; } DH_IN_GET_SNIFFER_INFO; ///@brief CLIENT_GetSnifferInfo ?????????? typedef struct tagDH_OUT_GET_SNIFFER_INFO { DWORD dwSize; DH_SNIFFER_INFO* pstuSniffers; /// ??????????, ?????????? int nMaxSnifferCount; /// ?????????????, ??????? int nRetSnifferCount; /// ??????????????? } DH_OUT_GET_SNIFFER_INFO; ///@brief ?????????????? typedef void (CALLBACK *fAttachSniffer)(LLONG lAttchHandle, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief CLIENT_AttachSniffer ?????? typedef struct tagNET_IN_ATTACH_SNIFFER { DWORD dwSize; fAttachSniffer cbSniffer; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_SNIFFER; ///@brief CLIENT_AttachSniffer ?????? typedef struct tagNET_OUT_ATTACH_SNIFFER { DWORD dwSize; }NET_OUT_ATTACH_SNIFFER; ///@brief CLIENT_GetSnifferCaps ?????? typedef struct tagNET_IN_GET_SNIFFER_CAP { DWORD dwSize; }NET_IN_GET_SNIFFER_CAP; ///@brief CLIENT_GetSnifferCaps ?????? typedef struct tagNET_OUT_GET_SNIFFER_CAP { DWORD dwSize; BOOL bRemoteCap; /// ??????????????? }NET_OUT_GET_SNIFFER_CAP; /************************************************************************/ /* ??????? */ /************************************************************************/ ///@brief ???????????? typedef struct tagDH_FORMAT_PATITION { DWORD dwSize; const char* pszStorageName; /// ?????????? const char* pszPatitionName; /// ?????? const char* pszFileSystem; /// ???????? } DH_FORMAT_PATITION; ///@brief CLIENT_CreateRemoteFile ?????????? typedef struct tagDH_IN_CREATE_REMOTE_FILE { DWORD dwSize; const char* pszPath; /// ????? BOOL bDirectory; /// ???????? } DH_IN_CREATE_REMOTE_FILE; ///@brief CLIENT_CreateRemoteFile ?????????? typedef struct tagDH_OUT_CREATE_REMOTE_FILE { DWORD dwSize; } DH_OUT_CREATE_REMOTE_FILE; ///@brief CLIENT_RemoveRemoteFiles ?????????? typedef struct tagDH_IN_REMOVE_REMOTE_FILES { DWORD dwSize; const char** pszPath; /// ?????????????? int nFileCount; /// ??????????? } DH_IN_REMOVE_REMOTE_FILES; ///@brief CLIENT_RemoveRemoteFiles ?????????? typedef struct tagDH_OUT_REMOVE_REMOTE_FILES { DWORD dwSize; } DH_OUT_REMOVE_REMOTE_FILES; ///@brief CLIENT_RenameRemoteFile ?????????? typedef struct tagDH_IN_RENAME_REMOTE_FILE { DWORD dwSize; const char* pszOldPath; /// ??????? const char* pszNewPath; /// ??????? } DH_IN_RENAME_REMOTE_FILE; ///@brief CLIENT_RenameRemoteFile ?????????? typedef struct tagDH_OUT_RENAME_REMOTE_FILE { DWORD dwSize; } DH_OUT_RENAME_REMOTE_FILE; ///@brief ???/????? typedef struct tagDH_REMOTE_FILE_INFO { DWORD dwSize; BOOL bDirectory; /// ???????? char szPath[MAX_PATH]; /// ???? NET_TIME stuCreateTime; /// ??????? NET_TIME stuModifyTime; /// ?????? INT64 nFileSize; /// ??????? char szFileType[DH_FILE_TYPE_LEN]; /// ??????? } DH_REMOTE_FILE_INFO; ///@brief ???????????? typedef enum tagDH_REMOTE_FILE_COND { DH_REMOTE_FILE_COND_NONE, /// ?????? DH_REMOTE_FILE_COND_VOICE, /// ?????????????,*???*?????????,*???*????????????? } DH_REMOTE_FILE_COND; ///@brief CLIENT_ListRemoteFile ?????????? typedef struct tagDH_IN_LIST_REMOTE_FILE { DWORD dwSize; const char* pszPath; /// ???? ??emCondition?DH_REMOTE_FILE_COND_VOICE????????????? BOOL bFileNameOnly; /// ???????????, ??????????????, ???????????????????? ??emCondition?DH_REMOTE_FILE_COND_VOICE????????????? DH_REMOTE_FILE_COND emCondition; /// ??????????????? } DH_IN_LIST_REMOTE_FILE; ///@brief CLIENT_ListRemoteFile ?????????? typedef struct tagDH_OUT_LIST_REMOTE_FILE { DWORD dwSize; DH_REMOTE_FILE_INFO* pstuFiles; /// ??????????, ??????????,?????sizeof(DH_REMOTE_FILE_INFO)*nMaxFileCount int nMaxFileCount; /// ?????????????, ??????? int nRetFileCount; /// ???????????? } DH_OUT_LIST_REMOTE_FILE; ///@brief ???????????????????? typedef enum tagNET_SET_FILEATTR_ACTION { EM_SET_FILEATTR_ACTION_UNKNOWN = 0, /// ??? EM_SET_FILEATTR_ACTION_MARK, /// ??????? } NET_SET_FILEATTR_ACTION; ///@brief CLIENT_SetFileAttribute ?????????? typedef struct tagDH_IN_SET_FILEATTRIBUTE { DWORD dwSize; unsigned int nDriveNo; /// ????? unsigned int nPartition; /// ?????? unsigned int nCluster; /// ??? NET_SET_FILEATTR_ACTION emAction; /// ????????????key,???????value???? /// ????key:Mark ???????,???value,??????????(????:??) char szValue[DH_COMMON_STRING_64]; /// ????? } DH_IN_SET_FILEATTRIBUTE; ///@brief CLIENT_SetFileAttribute ?????????? typedef struct tagDH_OUT_SET_FILEATTRIBUTE { DWORD dwSize; } DH_OUT_SET_FILEATTRIBUTE; ///@brief ????????????? typedef struct tagDH_EJECT_STORAGE_DEVICE { DWORD dwSize; const char* pszStorageName; /// ?????????? } DH_EJECT_STORAGE_DEVICE; ///@brief ??????????? typedef struct tagDH_LOAD_STORAGE_DEVICE { DWORD dwSize; const char* pszStorageName; /// ?????????? } DH_LOAD_STORAGE_DEVICE; ///@brief CLIENT_UploadRemoteFile ??????????(???????????) typedef struct tagDH_IN_UPLOAD_REMOTE_FILE { DWORD dwSize; const char* pszFileSrc; /// ???????? const char* pszFileDst; /// ?????????? const char* pszFolderDst; /// ?????????????????NULL, NULL?????????????? unsigned int nPacketLen; /// ??????????(???): 0???????? unsigned int nTimeOut; /// ??????????????0????10s?????CLIENT_StartUploadRemoteFile??????? } DH_IN_UPLOAD_REMOTE_FILE; ///@brief CLIENT_UploadRemoteFile ??????????(???????????) typedef struct tagDH_OUT_UPLOAD_REMOTE_FILE { DWORD dwSize; } DH_OUT_UPLOAD_REMOTE_FILE; ///@brief CLIENT_DownloadRemoteFile ??????????(???????) typedef struct tagDH_IN_DOWNLOAD_REMOTE_FILE { DWORD dwSize; const char* pszFileName; /// ????????????? const char* pszFileDst; /// ?????????? } DH_IN_DOWNLOAD_REMOTE_FILE; ///@brief CLIENT_DownloadRemoteFile ??????????(???????) typedef struct tagDH_OUT_DOWNLOAD_REMOTE_FILE { DWORD dwSize; DWORD dwMaxFileBufLen; /// ?????????pstFileBuf?????, ???????? char *pstFileBuf; /// ?????????, ????????????? DWORD dwRetFileBufLen; /// ?????????????????????????? BYTE byReserved[4]; /// ?????? } DH_OUT_DOWNLOAD_REMOTE_FILE; ///@brief CLIENT_DownloadPieceFile ???????????????????? typedef struct tagNET_IN_DOWNLOAD_PIECE_FILE { DWORD dwSize; char szFileName[MAX_PATH]; /// ?????????????,???????? UINT nOffSet; /// ???????,??????? /// ????????????50KB,??????????????????32KB,?????????????,nOffSet?0,?????????nOffSet?32KB UINT nNeedLength; /// ??????????????,?????????????32KB,??????4MB } NET_IN_DOWNLOAD_PIECE_FILE; ///@brief CLIENT_DownloadPieceFile ???????????????????? typedef struct tagNET_OUT_DOWNLOAD_PIECE_FILE { DWORD dwSize; UINT nFileLength; /// ???????? UINT nPacketLength; /// ????????????????,???????,?????32KB,??????4MB char* szBuffer; /// ????????????????,????????????,?????nBufferLen UINT nBufferLen; /// ???????????????????,??????? } NET_OUT_DOWNLOAD_PIECE_FILE; ///@brief CLIENT_GetMediaFileInfo ?????????? typedef struct tagNET_IN_GET_NEDIA_FILE_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? char szFilePath[640]; /// ??????? } NET_IN_GET_NEDIA_FILE_INFO; ///@brief ????????? typedef struct tagNET_MEDIA_FILE_INFO { UINT nDuration; /// ??????????( ??????) BYTE byReserved[2044]; /// ??????? } NET_MEDIA_FILE_INFO; ///@brief CLIENT_GetMediaFileInfo ?????????? typedef struct tagNET_OUT_GET_NEDIA_FILE_INFO { DWORD dwSize; /// ??????? NET_MEDIA_FILE_INFO stuMediaFileInfo; /// ????????? } NET_OUT_GET_NEDIA_FILE_INFO; ///@brief CLIENT_StartListMediaFileInfo ?????????? typedef struct tagNET_IN_START_LIST_FILE_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? char szFilePath[600]; /// ??????? } NET_IN_START_LIST_FILE_INFO; ///@brief CLIENT_StartListMediaFileInfo ?????????? typedef struct tagNET_OUT_START_LIST_FILE_INFO { DWORD dwSize; /// ??????? } NET_OUT_START_LIST_FILE_INFO; ///@brief CLIENT_DoListMediaFileInfo ?????????? typedef struct tagNET_IN_DO_LIST_FILE_INFO { DWORD dwSize; /// ??????? UINT nCount; /// ????????????? } NET_IN_DO_LIST_FILE_INFO; ///@brief ?????????? typedef enum tagEM_LIST_ELEMENT_TYPE { EM_LIST_ELEMENT_TYPE_UNKNOWN, /// ??? EM_LIST_ELEMENT_TYPE_FILE, /// ??? EM_LIST_ELEMENT_TYPE_DIRECTORY, /// ?? } EM_LIST_ELEMENT_TYPE; ///@brief ?????? typedef struct tagNET_FILE_ELEMENT_INFO { NET_TIME stuCreateTime; /// ??????? NET_TIME stuModifyTime; /// ?????? TP_U64 nFileSize; /// ???????, ????:??? char szPath[600]; /// ???????? char szFileType[32]; /// ??????? BYTE byReserved[2048]; /// ??????? } NET_FILE_ELEMENT_INFO; ///@brief ????? typedef struct tagNET_DIRECTORY_ELEMENT_INFO { NET_TIME stuCreateTime; /// ??????? char szPath[600]; /// ???????? BYTE byReserved[2048]; /// ??????? } NET_DIRECTORY_ELEMENT_INFO; ///@brief ????????? typedef struct tagNET_LIST_ELEMENT_INFO { NET_FILE_ELEMENT_INFO stuFileInfo; /// ??????, emElementType ? EM_LIST_ELEMENT_TYPE_FILE ????? NET_DIRECTORY_ELEMENT_INFO stuDirectoryInfo; /// ?????, emElementType ? EM_LIST_ELEMENT_TYPE_DIRECTORY ????? EM_LIST_ELEMENT_TYPE emElementType; /// ?????????? BYTE byReserved[2044]; /// ??????? } NET_LIST_ELEMENT_INFO; ///@brief CLIENT_DoListMediaFileInfo ?????????? typedef struct tagNET_OUT_DO_LIST_FILE_INFO { DWORD dwSize; /// ??????? UINT nMaxListElementNum; /// ??????????????? UINT nRetListElementNum; /// ?????????????????? NET_LIST_ELEMENT_INFO *pstListElementInfo; /// ?????????, ????????????????, ???????sizeof(NET_LIST_ELEMENT_INFO)*nMaxListElementNum } NET_OUT_DO_LIST_FILE_INFO; ///@brief ???????? typedef enum tagEM_STATE_MODE { EM_STATE_MODE_UNKNOWN, /// ??? EM_STATE_MODE_PREPARING, /// ?????????? EM_STATE_MODE_LOADING, /// ????????? EM_STATE_MODE_SUCCEEDED, /// ?????????? EM_STATE_MODE_FAILED, /// ?????????? EM_STATE_MODE_CANCELLED, /// ?????????? }EM_STATE_MODE; ///@brief CLIENT_NotifyFileUploadProgress ?????????? typedef struct tagNET_IN_NOTIFY_FILE_UPLOAD_PROGRESS_INFO { DWORD dwSize; /// ??????? /*??????????????????????????????????*/ UINT nProgress; /// ?????????????????0~100 /*??????????????????????????????????CLIENT_FindFileEx, emType=DH_FILE_QUERY_MOBILE_ENFORCE??????*/ char szFileName[256]; /// ????????????szFilePath char szUniqueID[128]; /// ????????? char szFilePath[256]; /// ??????? EM_STATE_MODE emState; /// ???????? UINT nErrorCode; /// ??emState?EM_STATE_MODE_FAILED???????0xff-???????(255)??0x01-?????????(1)??0x02-?????????(2) char szReserved[1784]; /// ??????? } NET_IN_NOTIFY_FILE_UPLOAD_PROGRESS_INFO; ///@brief CLIENT_NotifyFileUploadProgress ?????????? typedef struct tagNET_OUT_NOTIFY_FILE_UPLOAD_PROGRESS_INFO { DWORD dwSize; /// ??????? } NET_OUT_NOTIFY_FILE_UPLOAD_PROGRESS_INFO; ///@brief ?????? typedef struct tagNET_REMOVE_MEDIA_FILE_INFO { char szFileName[128]; /// ??????????????????????????????????????? UINT nPicId; /// ?????????????????????????????????????? int nChannelsNum; /// ???????? int nChannels[256]; /// ??????????????256?????????????????,???????????????????????-1??????????? char szReserved[128]; /// ??????? }NET_REMOVE_MEDIA_FILE_INFO; ///@brief CLIENT_RemoveMediaFilesInfo ?????????? typedef struct tagNET_IN_REMOVE_MEDIA_FILES_INFO { DWORD dwSize; /// ??????? int nFileInfoNum; /// ???????????? NET_REMOVE_MEDIA_FILE_INFO stuFileInfo[256]; /// ?????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? }NET_IN_REMOVE_MEDIA_FILES_INFO; ///@brief ????????????????? typedef struct tagNET_BEING_STORED_VIDEO { char szVideoFileName[128]; /// ???????? char szReserved[128]; /// ??????? }NET_BEING_STORED_VIDEO; ///@brief CLIENT_RemoveMediaFilesInfo ?????????? typedef struct tagNET_OUT_REMOVE_MEDIA_FILES_INFO { DWORD dwSize; /// ??????? int nBeingStoredVideoNum; /// ?????????????? NET_BEING_STORED_VIDEO stuBeingStoredVideo[128]; /// ????????????????? }NET_OUT_REMOVE_MEDIA_FILES_INFO; /************************************************************************/ /* ??????? */ /************************************************************************/ ///@brief ??????????????? typedef struct tagDH_IN_SEARCH_CONDITON { DWORD dwSize; const char* pMachineName; /// ?????????? const char* pMachineAddr; /// ?????????(?????????.??????.??????) const char* pSerialNo; /// ????????? const char* pChannelName; /// ???????????? } DH_MATRIX_SEARCH_CONDITON; ///@brief CLIENT_MatrixSearch ??????????(???????????) typedef struct tagDH_IN_MATIRX_SEARCH { DWORD dwSize; const char* pSerialNo; /// ?????????????,"Local"-?????,"Root"-?????,?????????????????????? DH_MATRIX_SEARCH_CONDITON stuCondition; /// ????????, ????????????????? } DH_IN_MATRIX_SEARCH; ///@brief CLIENT_MatrixSearch ??????????(???????????) typedef struct tagDH_OUT_MATRIX_SEARCH { DWORD dwSize; DH_REMOTE_DEVICE* pstuRemoteDevices; /// ???????, ??????????,?????sizeof(DH_REMOTE_DEVICE)*nMaxDeviceCount int nMaxDeviceCount; /// ???????????, ??????? int nRetDeviceCount; /// ????????????? } DH_OUT_MATRIX_SEARCH; ///@brief CLIENT_GetMatrixTree ?????????? typedef struct tagDH_IN_GET_MATRIX_TREE { DWORD dwSize; const char* pSerialNo; /// ?????????????,"Local"-?????,"Root"-?????,?????????????????????? int nLevel; /// ?????????????,0-?????????,1-???????,2-???????+?????????????????, /// 3-???????+?????????????????+?????????????????? } DH_IN_GET_MATRIX_TREE; ///@brief ?????????? typedef struct tagDH_CASCADE_DEVICE_INFO { DWORD dwSize; int nLevel; /// ?????????????? char szPath[MAX_PATH]; /// ???????????,?????name1.name2.name3... DH_REMOTE_DEVICE stuDeviceInfo; /// ????????? } DH_CASCADE_DEVICE_INFO; ///@brief CLIENT_GetMatrixTree ?????????? typedef struct tagDH_OUT_GET_MATRIX_TREE { DWORD dwSize; DH_CASCADE_DEVICE_INFO* pstuRemoteDevices; /// ?????????? int nMaxDeviceCount; /// ?????????????? int nRetDeviceCount; /// ??????????????? } DH_OUT_GET_MATRIX_TREE; ///@brief CLIENT_GetSuperiorMatrixList ?????????? typedef struct tagDH_IN_GET_SUPERIOR_MATRIX_LIST { DWORD dwSize; } DH_IN_GET_SUPERIOR_MATRIX_LIST; ///@brief CLIENT_GetSuperiorMatrixList ?????????? typedef struct tagDH_OUT_GET_SUPERIOR_MATRIX_LIST { DWORD dwSize; DH_REMOTE_DEVICE* pstuRemoteDevices; /// ???????, ?????????? int nMaxDeviceCount; /// ???????????, ??????? int nRetDeviceCount; /// ????????????? } DH_OUT_GET_SUPERIOR_MATRIX_LIST; /////////////////////////////////??????/////////////////////////////////////// ///@brief ????????????????? typedef enum tagENUM_RECORDBACKUP_FILE_PROGRESS_TYPE { ENUM_RECORDBACKUP_FILE_PROGRESS_UNKNOWN, /// ??? ENUM_RECORDBACKUP_FILE_PROGRESS_HEADER_PACKAGE, /// ?????? ENUM_RECORDBACKUP_FILE_PROGRESS_INDEX_PACKAGE, /// ?????? ENUM_RECORDBACKUP_FILE_PROGRESS_STREAM_PACKET, /// ?????? ENUM_RECORDBACKUP_FILE_PROGRESS_EMPTY_PACKET, /// ???????? }ENUM_RECORDBACKUP_FILE_PROGRESS_TYPE; ///@brief ??????? typedef struct tagNET_RECORD_BACKUP_PROGRESS { char szFilePath[256]; /// ???????????? ENUM_RECORDBACKUP_FILE_PROGRESS_TYPE emType; /// ????????????????? int nPosition; /// ????????????????? UINT nPercent; /// ??????????,0-100 int nRemainingTime; /// ?????????????,??????-1 ?C ????? 0 ?C ???? char szReserved[512]; /// ??????? } NET_RECORD_BACKUP_PROGRESS; ///@brief ??????? typedef enum tagEM_RECORD_BACKUP_FAIL_REASON { EM_RECORD_BACKUP_FAIL_REASON_UNKNOW, /// ??? EM_RECORD_BACKUP_FAIL_REASON_LOGIN_FAIL, /// ??????? EM_RECORD_BACKUP_FAIL_REASON_NO_FILES, /// ??????????? EM_RECORD_BACKUP_FAIL_REASON_DOWNLOAD_NET_ERROR, /// ??????????????? EM_RECORD_BACKUP_FAIL_REASON_UNKNOW_ERROR, /// ??????? EM_RECORD_BACKUP_FAIL_REASON_USER_NAME_NOT_VALID, /// ????????? EM_RECORD_BACKUP_FAIL_REASON_PASSWORD_NOT_VALID, /// ??????? EM_RECORD_BACKUP_FAIL_REASON_PEER_HAS_BEEN_BLOCKED, /// ????????? EM_RECORD_BACKUP_FAIL_REASON_PEER_IN_BLOCK_LIST, /// ????????????????? EM_RECORD_BACKUP_FAIL_REASON_TOO_MANY_CONNECTIONS, /// ????????????? EM_RECORD_BACKUP_FAIL_REASON_ACCOUNT_HAS_BEEN_BLOCKED, /// ???????? EM_RECORD_BACKUP_FAIL_REASON_LOGIN_CONNECT_FAILED, /// ???????????????? EM_RECORD_BACKUP_FAIL_REASON_USER_OR_PWD_NOT_VALID, /// ???????????????????? EM_RECORD_BACKUP_FAIL_REASON_LOGIN_CONNECT_TIMEOUT, /// ????? } EM_RECORD_BACKUP_FAIL_REASON; ///@brief ????????????? typedef struct tagDH_RECORD_BACKUP_RESTORE_TASK { DWORD dwSize; unsigned int nTaskID; /// ????ID char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID int nChannelID; /// ????? NET_TIME stuStartTime; /// ??????? NET_TIME stuEndTime; /// ????????? int nState; /// ?????????, 0-???, 1-??????, 2-???, 3-???, 4-??? NET_RECORD_BACKUP_PROGRESS stuProgress; /// ?????????? EM_RECORD_BACKUP_FAIL_REASON emFailReason; /// ???????, ??nState????3????????????? NET_TIME stuTaskStartTime; /// ????????, nState?"??????"??"?????"??"???"????????????????; NET_TIME stuTaskEndTime; /// ??????????, nState?"?????"??"???"????????????????; int nRemoteChannel; /// ???????? } DH_REC_BAK_RST_TASK; ///@brief CLIENT_AddRecordBackupRestoreTask?????????? typedef struct tagDH_IN_ADD_RECORD_BACKUP_RESTORE_TASK { DWORD dwSize; const char* pszDeviceID; /// ???ID int* pnChannels; /// ??????? int nChannelCount; /// ??????????,????????????,?????sizeof(int)*nChannelCount NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szUrl[256]; /// RTSP URL } DH_IN_ADD_REC_BAK_RST_TASK; ///@brief ?????????????? typedef enum tagENUM_RECORDBACKUP_FILE_TYPE { ENUM_RECORDBACKUP_FILE_COMMON, /// ?????? ENUM_RECORDBACKUP_FILE_ALARM, /// ??????? ENUM_RECORDBACKUP_FILE_MOTIONDETECT, /// ??????? }ENUM_RECORDBACKUP_FILE_TYPE; ///@brief ??????? typedef struct tagNET_RECORDBACKUP_REMOTE_TASK { UINT nChannelCount; /// ??????????? UINT nChannels[512]; /// ????????? UINT nRemoteChannels[512]; /// ???????????? char szDeviceIP[64]; /// IP??? UINT nPort; /// ??? char szUserName[64]; /// ????? char szPassword[64]; /// ???? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? ENUM_RECORDBACKUP_FILE_TYPE emFileType; /// ??????? NET_STREAM_TYPE emStreamType; /// ??????? BYTE byReserved[512]; /// ??????? }NET_RECORDBACKUP_REMOTE_TASK; ///@brief ????ID??? typedef struct tagNET_RECORDBACKUP_TASKID_INFO { UINT nTaskIDs[512]; /// ???????ID UINT nTaskIDCount; /// ???????ID???????? BYTE byReserved[1024];/// ??????? }NET_RECORDBACKUP_TASKID_INFO; ///@brief CLIENT_AddRecordBackupRestoreRemoteTask ?????? typedef struct tagNET_IN_ADD_RECORDBACKUP_REMOTE_TASK { DWORD dwSize; int nTaskCount; /// ????????????, ??????16?? NET_RECORDBACKUP_REMOTE_TASK *pstuTask; /// ???????, ????????????, ????? sizeof(NET_RECORDBACKUP_REMOTE_TASK)*nTaskCount }DH_IN_ADD_REC_BAK_RST_REMOTE_TASK; ///@brief CLIENT_AddRecordBackupRestoreRemoteTask ?????? typedef struct tagNET_OUT_ADD_RECORDBACKUP_REMOTE_TASK { DWORD dwSize; NET_RECORDBACKUP_TASKID_INFO *pstuID; /// ????ID???, ????????????, ????? sizeof(NET_RECORDBACKUP_TASKID_INFO)*nTaskCount }DH_OUT_ADD_REC_BAK_RST_REMOTE_TASK; ///@brief CLIENT_RemoveRecordBackupRestoreTask?????????? typedef struct tagDH_IN_REMOVE_RECORD_BACKUP_RESTORE_TASK { DWORD dwSize; unsigned int* pnTaskIDs; /// ????ID????,??????????????????sizeof(int)*nTaskCount int nTaskCount; /// ???????? } DH_IN_REMOVE_REC_BAK_RST_TASK; ///@brief CLIENT_QueryRecordBackupRestoreTask?????????? typedef struct tagDH_IN_QUERY_RECORD_BACKUP_RESTORE_TASK { DWORD dwSize; } DH_IN_QUERY_REC_BAK_RST_TASK; ///@brief CLIENT_QueryRecordBackupRestoreTask?????????? typedef struct tagDH_OUT_QUERY_RECORD_BACKUP_RESTORE_TASK { DWORD dwSize; DH_REC_BAK_RST_TASK* pTasks; /// ????????,??????????????????sizeof(DH_REC_BAK_RST_TASK)*nMaxCount int nMaxCount; /// ??????? int nReturnCount; /// ????????????? } DH_OUT_QUERY_REC_BAK_RST_TASK; ///@brief ????????????????????????? typedef enum tagEM_RECORD_BACKUP_FIND_TYPE { EM_RECORD_BACKUP_FIND_TYPE_UNKNOWN, /// ??? EM_RECORD_BACKUP_FIND_TYPE_BY_TASKID, /// ??????????? EM_RECORD_BACKUP_FIND_TYPE_BY_CHN_AND_TIME, /// ??????????????????? EM_RECORD_BACKUP_FIND_TYPE_BY_DEVICE_ID, /// ???????????????ID?? } EM_RECORD_BACKUP_FIND_TYPE; ///@brief CLIENT_FindRecordBackupRestoreTaskInfos?????????? typedef struct tagNET_IN_FIND_REC_BAK_RST_TASK { DWORD dwSize; EM_RECORD_BACKUP_FIND_TYPE emFindType; /// ????????????????????????? DWORD dwTaskID; /// ????ID,emFindType? EM_RECORD_BACKUP_FIND_TYPE_BY_TASKID ?????,???????? int nLocalChannelID; /// ?????????????,emFindType? EM_RECORD_BACKUP_FIND_TYPE_BY_CHN_AND_TIME ?????,???????? NET_TIME stuStartTime; /// ?????????????,emFindType? EM_RECORD_BACKUP_FIND_TYPE_BY_CHN_AND_TIME ?????,?EM_RECORD_BACKUP_FIND_TYPE_BY_DEVICE_ID?????????????? NET_TIME stuEndTime; /// ??????????????,emFindType? EM_RECORD_BACKUP_FIND_TYPE_BY_CHN_AND_TIME ?????,?EM_RECORD_BACKUP_FIND_TYPE_BY_DEVICE_ID?????????????? char szDeviceID[128]; /// ???????????ID, emFindType?EM_RECORD_BACKUP_FIND_TYPE_BY_DEVICE_ID?????????????????? } NET_IN_FIND_REC_BAK_RST_TASK; ///@brief CLIENT_FindRecordBackupRestoreTaskInfos?????????? typedef struct tagNET_OUT_FIND_REC_BAK_RST_TASK { DWORD dwSize; DH_REC_BAK_RST_TASK* pTasks; /// ????????,??????????????????sizeof(DH_REC_BAK_RST_TASK)*nMaxCount int nMaxCount; /// ??????? int nRetCount; /// ????????????? } NET_OUT_FIND_REC_BAK_RST_TASK; ///@brief ??????? typedef struct tagDH_LOGIC_DEVICE_ADD_CAMERA_PARAM { DWORD dwSize; const char* pszDeviceID; /// ???ID int nChannel; /// ????? } DH_LOGIC_DEVICE_ADD_CAMERA_PARAM; ///@brief ??????????? typedef struct tagDH_LOGIC_DEVICE_ADD_CAMERA_RESULT { DWORD dwSize; char szDeviceID[DH_DEV_ID_LEN]; /// ???ID int nChannel; /// ????? int nUniqueChannel; /// ????? int nFailedCode; /// ?????, 0-???,1-Unique?????????? 2-??????? } DH_LOGIC_DEVICE_ADD_CAMERA_RESULT; ///@brief CLIENT_MatrixAddCameras ?????????? typedef struct tagDH_IN_ADD_LOGIC_DEVICE_CAMERA { DWORD dwSize; DH_LOGIC_DEVICE_ADD_CAMERA_PARAM* pCameras; /// ???????????,??????????????????sizeof(DH_LOGIC_DEVICE_ADD_CAMERA_PARAM)*nCameraCount int nCameraCount; /// ??????????? } DH_IN_ADD_LOGIC_DEVICE_CAMERA; ///@brief CLIENT_MatrixAddCameras ?????????? typedef struct tagDH_OUT_ADD_LOGIC_DEVICE_CAMERA { DWORD dwSize; DH_LOGIC_DEVICE_ADD_CAMERA_RESULT* pResults; /// ???????????????, ??????????,?????sizeof(DH_LOGIC_DEVICE_ADD_CAMERA_RESULT)*nMaxResultCount int nMaxResultCount; /// ??????????, ??????? int nRetResultCount; /// ????????? } DH_OUT_ADD_LOGIC_DEVICE_CAMERA; ///@brief ??????? typedef struct tagDH_LOGIC_BYDEVICE_ADD_CAMERA_PARAM { DWORD dwSize; int nUniqueChannel; /// ????? int nChannel; /// ????? } DH_LOGIC_BYDEVICE_ADD_CAMERA_PARAM; ///@brief ?????????????? typedef struct tagDH_LOGIC_BYDEVICE_ADD_CAMERA_RESULT { DWORD dwSize; int nUniqueChannel; /// ????? int nFailedCode; /// ?????, 0-???,1-???????????? } DH_LOGIC_BYDEVICE_ADD_CAMERA_RESULT; ///@brief CLIENT_MatrixAddCamerasByDevice ?????????? typedef struct tagDH_IN_ADD_LOGIC_BYDEVICE_CAMERA { DWORD dwSize; char pszDeviceID[DH_DEV_ID_LEN]; /// ???ID DH_REMOTE_DEVICE stuRemoteDevice; /// ????????? int nCameraCount; /// ??????????? DH_LOGIC_BYDEVICE_ADD_CAMERA_PARAM* pCameras; /// ???????????,??????????,?????sizeof(DH_LOGIC_BYDEVICE_ADD_CAMERA_PARAM)*nCameraCount }DH_IN_ADD_LOGIC_BYDEVICE_CAMERA; ///@brief CLIENT_MatrixAddCamerasByDevice ?????????? typedef struct tagDH_OUT_ADD_LOGIC_BYDEVICE_CAMERA { DWORD dwSize; char szDeviceID[DH_DEV_ID_LEN]; /// ???ID int nMaxResultCount; /// ??????????, ??????? int nRetResultCount; /// ????????? DH_LOGIC_BYDEVICE_ADD_CAMERA_RESULT* pResults; /// ???????????????,??????????,?????sizeof(DH_LOGIC_BYDEVICE_ADD_CAMERA_RESULT)*nMaxResultCount }DH_OUT_ADD_LOGIC_BYDEVICE_CAMERA; ///@brief ??????????? typedef enum tagEM_CAMERA_CHANNEL_TYPE { EM_CAMERA_CHANNEL_TYPE_UNKNOWN, /// ??? EM_CAMERA_CHANNEL_TYPE_LOCAL, /// ???????????????????? EM_CAMERA_CHANNEL_TYPE_REMOTE, /// ?????? EM_CAMERA_CHANNEL_TYPE_RESERVED32, /// ????32?????(??????????????) EM_CAMERA_CHANNEL_TYPE_OUTPUT, /// ?????? EM_CAMERA_CHANNEL_TYPE_MATRIX, /// ????????? EM_CAMERA_CHANNEL_TYPE_COMPOSE, /// ?????? EM_CAMERA_CHANNEL_TYPE_CASCADE, /// ?????????? } EM_CAMERA_CHANNEL_TYPE; ///@brief ??????? typedef struct tagNET_CAMERA_INFO { int nUniqueChannel; /// ?????, -1?????????????????? unsigned int nChannel; /// ????? char szControlID[128]; /// ??????, ???????????????????????????????? BOOL bEnable; /// ??????????, ???true char szName[128]; /// ???? char szDeviceID[128]; /// ?????????????ID EM_CAMERA_CHANNEL_TYPE emChannelType; /// ??????????? EM_VIDEO_STREAM emVideoStream; /// ??????? BYTE reserved[128]; /// ??????? } NET_CAMERA_INFO; ///@brief ???????? typedef struct tagNET_CAMERA_GROUP_INFO { char szDeviceID[DH_DEV_ID_LEN]; /// ???ID int nCameraCount; /// ??????????? NET_CAMERA_INFO *pCameras; /// ???????????,??????????,?????sizeof(NET_CAMERA_INFO)*nCameraCount DH_REMOTE_DEVICE stuRemoteDevice; /// ?????????, szDeviceID ????????? BYTE reserved[1024]; /// ??????? } NET_CAMERA_GROUP_INFO; ///@brief CLIENT_MatrixAddCamerasByGroup (????????????) ?????????? typedef struct tagNET_IN_ADD_LOGIC_BYGROUP_CAMERA { DWORD dwSize; int nCameraGroup; /// ???????? NET_CAMERA_GROUP_INFO *pstCameraGroupInfo; /// ???????? } NET_IN_ADD_LOGIC_BYGROUP_CAMERA; ///@brief ??????????????????????????? typedef struct tagNET_ADD_BYGROUP_RESULT_CAMERA { unsigned int nUniqueChannel; /// ????? unsigned int nFailedCode; /// ?????, 0-???,1-???????????? BYTE reserved[128]; /// ??????? } NET_ADD_BYGROUP_RESULT_CAMERA; ///@brief ?????????????????? typedef struct tagNET_ADD_BYGROUP_RESULT { char szDeviceID[DH_DEV_ID_LEN]; /// ???ID int nResultCam; /// ???????????????NET_CAMERA_GROUP_INFO ????nCameraCount ??? NET_ADD_BYGROUP_RESULT_CAMERA *pstResultCamera; /// ??????????????? /// ??????????????????sizoef(NET_ADD_BYGROUP_RESULT_CAMERA)*nRetResultCamera BYTE reserved[1024]; /// ??????? } NET_ADD_BYGROUP_RESULT; ///@brief CLIENT_MatrixAddCamerasByGroup (????????????) ?????????? typedef struct tagNET_OUT_ADD_LOGIC_BYGROUP_CAMERA { DWORD dwSize; int nGroupCount; /// ?????group???????????NET_IN_ADD_LOGIC_BYGROUP_CAMERA ????nCameraGroup??? NET_ADD_BYGROUP_RESULT *pstAddByGroupResult; /// ???????????????????? /// ????????????, ?????sizeof(NET_ADD_BYGROUP_RESULT)*nGroupCount } NET_OUT_ADD_LOGIC_BYGROUP_CAMERA; ///@brief CLIENT_MatrixGetCameraAllByGroup ?????????? typedef struct tagNET_IN_GET_CAMERA_ALL_BY_GROUP { DWORD dwSize; /// ??????? EM_CAMERA_CHANNEL_TYPE emChannelType; /// ??????????? } NET_IN_GET_CAMERA_ALL_BY_GROUP; ///@brief CLIENT_MatrixGetCameraAllByGroup ?????????? typedef struct tagNET_OUT_GET_CAMERA_ALL_BY_GROUP { DWORD dwSize; /// ??????? int nMaxCameraGroup; /// ???????????, ????1024 int nCameraGroup; /// ??????????? NET_CAMERA_GROUP_INFO *pstCameraGroupInfo; /// ???????? } NET_OUT_GET_CAMERA_ALL_BY_GROUP; ///@brief ?????????????? typedef struct tagNET_DELETE_CAMERA_GROUP_INFO { char szDeviceID[DH_DEV_ID_LEN]; /// ???ID, ???"uniqueChannels"????????1???????-1????"DeviceID"????????????? int nUniqueChannelNum; /// unique?????????, ????1024 int szUniqueChannels[1024]; /// unique?????, ????????????1???????-1???????????????????? } NET_DELETE_CAMERA_GROUP_INFO; ///@brief CLIENT_MatrixDeleteCameraByGroup ?????????? typedef struct tagNET_IN_DELETE_CAMERA_BY_GROUP { DWORD dwSize; /// ??????? int nCameraGroup; /// ??????????? NET_DELETE_CAMERA_GROUP_INFO *pstCameraGroupInfo; /// ?????????????? } NET_IN_DELETE_CAMERA_BY_GROUP; ///@brief CLIENT_MatrixDeleteCameraByGroup ?????????? typedef struct tagNET_OUT_DELETE_CAMERA_BY_GROUP { DWORD dwSize; /// ??????? } NET_OUT_DELETE_CAMERA_BY_GROUP; ///@brief ??????????????????? typedef enum tagEM_GET_VIDEO_INPUT_TYPE { EM_GET_VIDEO_INPUT_TYPE_UNKNOWN, /// ??? EM_GET_VIDEO_INPUT_TYPE_BANDWIDTH, /// ???????????? NET_VIDEO_INPUT_BANDWIDTH_INFO } EM_GET_VIDEO_INPUT_TYPE; ///@brief CLIENT_GetVideoInputInfo ?????????? typedef struct tagNET_IN_GET_VIDEO_INPUT_INFO { DWORD dwSize; /// ??????? EM_GET_VIDEO_INPUT_TYPE emType; /// ?????????????? } NET_IN_GET_VIDEO_INPUT_INFO; ///@brief ????????????? typedef struct tagNET_VIDEO_INPUT_BANDWIDTH_INFO { double dbBandWidthLimit; /// ???????????:Mbps double dbBandWidthLeft; /// ???????????:Mbps BYTE byReserved[256]; /// ??????? } NET_VIDEO_INPUT_BANDWIDTH_INFO; ///@brief CLIENT_GetVideoInputInfo ?????????? typedef struct tagNET_OUT_GET_VIDEO_INPUT_INFO { DWORD dwSize; /// ??????? void* pInfo; /// ???????????????????????????????????????????EM_GET_VIDEO_INPUT_TYPE?????????? } NET_OUT_GET_VIDEO_INPUT_INFO; /************************************************************************/ /* ??????????? */ /************************************************************************/ #define MAX_ORDER_NUMBER 6 /// ??????????????? ///@brief ???????? typedef enum tagEM_RECORD_ORDER_TYPE { EM_RECORD_ORDER_TYPE_UNKNOWN, /// ??? EM_RECORD_ORDER_TYPE_ASCENT, /// ???? EM_RECORD_ORDER_TYPE_DESCENT /// ???? }EM_RECORD_ORDER_TYPE; ///@brief ??????? typedef struct tagNET_AUTHORITY_TYPE { DWORD dwSize; EM_NET_AUTHORITY_TYPE emAuthorityType; ///??????? BOOL bAuthorityEnable; ///?????? }NET_AUTHORITY_TYPE; ///@brief ??????/?????????????? typedef struct tagNET_TRAFFIC_LIST_RECORD { DWORD dwSize; int nRecordNo; /// ????????????? char szMasterOfCar[DH_MAX_NAME_LEN]; /// ???????? char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? EM_NET_PLATE_TYPE emPlateType; /// ???????? EM_NET_PLATE_COLOR_TYPE emPlateColor; /// ??????? EM_NET_VEHICLE_TYPE emVehicleType; /// ???????? EM_NET_VEHICLE_COLOR_TYPE emVehicleColor; /// ??????? NET_TIME stBeginTime; /// ?????? NET_TIME stCancelTime; /// ??????? int nAuthrityNum; /// ?????? NET_AUTHORITY_TYPE stAuthrityTypes[DH_MAX_AUTHORITY_LIST_NUM];/// ??????? , ???????????? EM_NET_TRAFFIC_CAR_CONTROL_TYPE emControlType; /// ???????? ,??????????? UINT nControlledRouteID; /// ????????ID UINT nLocation; /// ???????????? BOOL bLocation; /// ?????????????????????TRUE:??????FALSE:?????? char szCustomParkNo[32]; /// ?????t???????????????????? char szProvince[64]; /// ??????? char szMasterOfCarEx[64]; /// ????????(???) BOOL bIsMasterOfCarExValid; /// ??????szMasterOfCarEx???? }NET_TRAFFIC_LIST_RECORD; ///@brief ??????/????????????????????? typedef struct { DWORD dwSize; char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ????? char szPlateNumberVague[DH_MAX_PLATE_NUMBER_LEN]; /// ????????????? int nQueryResultBegin; /// ????????????????????????????? BOOL bRapidQuery; /// ????????, TRUE:?????,???????????????????????????????????????????? char szProvince[64]; /// ??????? EM_NET_PLATE_TYPE emPlateType; /// ???????? }FIND_RECORD_TRAFFICREDLIST_CONDITION; ///@brief ?????????????, ?????????? DH_ALARM_TRAFFIC_SUSPICIOUSCAR typedef struct tagALARM_TRAFFIC_SUSPICIOUSCAR_INFO { DWORD dwSize; int nAction; /// ???????, -1:???,0:Start, 1:Stop, 2:Pulse DH_MSG_OBJECT stuVehicle; /// ??????? NET_TRAFFIC_LIST_RECORD stuCarInfo; /// ??????????????? EVENT_COMM_INFO stCommInfo; /// ??????? }ALARM_TRAFFIC_SUSPICIOUSCAR_INFO; ///@brief ????????????????? typedef struct { DWORD dwSize; NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? }FIND_RECORD_BURN_CASE_CONDITION; ///@brief ??????????????? typedef struct tagFIND_RECORD_ACCESSCTLCARD_CONDITION { DWORD dwSize; char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? char szUserID[DH_MAX_USERID_LEN]; /// ???ID BOOL bIsValid; /// ???????, TRUE:????,FALSE:???? BOOL abCardNo; /// ?????????????????,????? szCardNo BOOL abUserID; /// ???ID??????????????,????? szUserID BOOL abIsValid; /// IsValid??????????????,????? bIsValid }FIND_RECORD_ACCESSCTLCARD_CONDITION; ///@brief ???????????????? typedef struct tagFIND_RECORD_ACCESSCTLPWD_CONDITION { DWORD dwSize; char szUserID[DH_MAX_USERID_LEN]; /// ???ID }FIND_RECORD_ACCESSCTLPWD_CONDITION; ///@brief ???????????????? typedef enum tagEM_RECORD_ACCESSCTLCARDREC_ORDER_FIELD { EM_RECORD_ACCESSCTLCARDREC_ORDER_FIELD_UNKNOWN = 0, /// ??? EM_RECORD_ACCESSCTLCARDREC_ORDER_FIELD_RECNO, /// ???????? EM_RECORD_ACCESSCTLCARDREC_ORDER_FIELD_CREATETIME, /// ??????? }EM_RECORD_ACCESSCTLCARDREC_ORDER_FIELD; ///@brief ???????????????????? typedef struct tagFIND_RECORD_ACCESSCTLCARDREC_ORDER { EM_RECORD_ACCESSCTLCARDREC_ORDER_FIELD emField; /// ??????? EM_RECORD_ORDER_TYPE emOrderType; /// ???????? char byReverse[64]; /// ??????? }FIND_RECORD_ACCESSCTLCARDREC_ORDER; ///@brief ???????????????? typedef struct tagFIND_RECORD_ACCESSCTLCARDREC_CONDITION { DWORD dwSize; char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? }FIND_RECORD_ACCESSCTLCARDREC_CONDITION; ///@brief ???????????????? typedef struct tagFIND_RECORD_ACCESSCTLCARDREC_CONDITION_EX { DWORD dwSize; BOOL bCardNoEnable; /// ????????? char szCardNo[DH_MAX_CARDNO_LEN]; /// ???? BOOL bTimeEnable; /// ??????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? int nOrderNum; /// ?????? FIND_RECORD_ACCESSCTLCARDREC_ORDER stuOrders[MAX_ORDER_NUMBER]; /// ???????? BOOL bRealUTCTimeEnable; /// ????RealUTC?????, bRealUTCTimeEnable?TRUE?bTimeEnable???? UINT nStartRealUTCTime; /// ???UTC???????????? UINT nEndRealUTCTime; /// ???UTC????????????? char szReserved[40]; /// ?????? }FIND_RECORD_ACCESSCTLCARDREC_CONDITION_EX; ///@brief ??????????????? typedef struct tagFIND_RECORD_SENSORRECORD_CONDITION { DWORD dwSize; NET_TIME stStartTime; /// ????????????????????? NET_TIME stEndTime; /// ?????????????????????? UINT uDeviceID; /// ??????ID???uint_32???????8???????????????24????????????????????????????0-?????? 1-????????????,0xffff??????????? BOOL bDeviceIDEnable; /// ??????????ID??? BOOL bStatusEnable; /// ????????????? BYTE byStatus; /// ??????0????????1:???????0xff??????? BYTE byReserved[3]; /// ??????? } FIND_RECORD_SENSORRECORD_CONDITION; ///@brief ??????????????? typedef struct tagFIND_RECORD_ACCESSCTLHOLIDAY_CONDITION { DWORD dwSize; char szHolidayNo[DH_COMMON_STRING_32]; /// ?????? }FIND_RECORD_ACCESSCTLHOLIDAY_CONDITION; ///@brief ????????????? typedef struct tagFIND_RECORD_ELECTRONICSTAG_CONDITION { DWORD dwSize; NET_TIME stStartTime; /// ?????????????????????, ???? NET_TIME stEndTime; /// ??????????????????????, ???? BOOL abDevId; /// ?????????????????????? UINT unDevID; /// ?????????????????????0???, ??? BOOL abMatchPic; /// ?????????????????? BOOL bMatch; /// ?????????????????, ??? BOOL abPlateNumber; /// ????????????????? char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ?????????, ??? } FIND_RECORD_ELECTRONICSTAG_CONDITION; ///@brief ?????????? typedef struct tagFIND_RECORD_RESIDENT_CONDTION { DWORD dwSize; char szICNum[DH_MAX_IC_LEN]; /// ????? }FIND_RECORD_RESIDENT_CONDTION; ///@brief ????????????????? typedef struct tagFIND_RECORD_TRAFFICFLOW_CONDITION { DWORD dwSize; BOOL abChannelId; /// ?????????????????? int nChannelId; /// ????? BOOL abLane; /// ??????????????????? int nLane; /// ?????? BOOL bStartTime; /// ??????????????????? NET_TIME stStartTime; /// ?????? BOOL bEndTime; /// ???????????????????? NET_TIME stEndTime; /// ??????? BOOL bStatisticsTime; /// ?????????????bStartTime??bEndTime???TRUE }FIND_RECORD_TRAFFICFLOW_CONDITION; #define DH_MAX_CALLTYPE_LIST_NUM 16 /// ???????????????????????? #define DH_MAX_ENDSTATE_LIST_NUM 16 /// ??????????????????????? ///@brief ????????????? typedef struct tagFIND_RECORD_VIDEO_TALK_LOG_CONDITION { DWORD dwSize; BOOL bCallTypeEnable; /// ????????????????????? int nCallTypeListNum; /// ??? emCallTypeList ???????????? EM_VIDEO_TALK_LOG_CALLTYPE emCallTypeList[DH_MAX_CALLTYPE_LIST_NUM]; /// ??????????????? BOOL bEndStateEnable; /// ???????????????????? int nEndStateListNum; /// ??? emEndStateList ???????????? EM_VIDEO_TALK_LOG_ENDSTATE emEndStateList[DH_MAX_ENDSTATE_LIST_NUM]; /// ????????????? BOOL bTimeEnable; /// ??????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? }FIND_RECORD_VIDEO_TALK_LOG_CONDITION; ///@brief ???????????? typedef struct tagFIND_RECORD_REGISTER_USER_STATE_CONDITION { DWORD dwSize; BOOL bUserIDEnable; /// ???ID?????????????? char szUserID[DH_MAX_USERID_LEN]; /// ???ID BOOL bOnlineEnable; /// ???????????????????? int nOnline; /// ??????? BOOL bVideoTalkingEnable; /// ??????????????????????? EM_REGISTER_USER_STATE emVideoTalking; /// ????????? }FIND_RECORD_REGISTER_USER_STATE_CONDITION; ///@brief ?????????????? typedef struct tagFIND_RECORD_VIDEO_TALK_CONTACT_CONDITION { DWORD dwSize; BOOL bVTShortNumberEnable; /// ?????????????????????? char szVTShortNumber[DH_COMMON_STRING_32]; /// ????????? BOOL bVTLongNumberEnable; /// ??????????????????????? char szVTLongNumber[DH_COMMON_STRING_64]; /// ?????????? }FIND_RECORD_VIDEO_TALK_CONTACT_CONDITION; ///@brief ????????????????? typedef struct tagFIND_RECORD_HOSPITAL_USER_CONDITION { DWORD dwSize; char szID[32]; /// ???ID }FIND_RECORD_HOSPITAL_USER_CONDITION; ///@brief ????????????????? typedef struct tagFIND_RECORD_HOSPITAL_DEVICE_CONDITION { DWORD dwSize; char szDeviceCode[64]; /// ?????? }FIND_RECORD_HOSPITAL_DEVICE_CONDITION; ///@brief ????????????????? typedef struct tagFIND_RECORD_COMMODITY_NOTICE_CONDITION { DWORD dwSize; BOOL bIDEnable; /// ID??????????????? char szID[DH_COMMON_STRING_64]; /// ID?? }FIND_RECORD_COMMODITY_NOTICE_CONDITION; ///@brief ????????????????? typedef struct tagFIND_RECORD_HEALTH_CARE_NOTICE_CONDITION { DWORD dwSize; BOOL bIDEnable; /// ID??????????????? char szID[DH_COMMON_STRING_64]; /// ID?? }FIND_RECORD_HEALTH_CARE_NOTICE_CONDITION; ///@brief ?????????? typedef struct tagNET_RECORD_TRAFFIC_FLOW_STATE { DWORD dwSize; int nRecordNum; /// ?????? int nChannel; /// ????? int nLane; /// ?????? int nVehicles; /// ??????????? float fAverageSpeed; /// ???????,????km/h float fTimeOccupyRatio; /// ????????,????????????????????????????????????????????? float fSpaceOccupyRatio; /// ????????,??????????????????????????????????????????????? float fSpaceHeadway; /// ??????,??????????????,??????/?? float fTimeHeadway; /// ??????,??????/?? int nLargeVehicles; /// ??????(9??dwSize * n == nBufLen typedef void (CALLBACK *fAttachRecordInfoCB)(LLONG lLoginID, LLONG lAttachHandle, NET_CB_RECORD_INFO* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttachRecordInfo ??????? typedef struct tagNET_IN_ATTACH_RECORD_INFO { DWORD dwSize; int nInterval; /// ?????, ??????nInterval??, ?????????? int nDelay; /// ??????, ?????1??nDelay?????????????,???????????, nDelay????????nInterval fAttachRecordInfoCB cbAttachRecordInfo; /// ???????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_RECORD_INFO; ///@brief CLIENT_AttachRecordInfo ??????? typedef struct tagNET_OUT_ATTACH_RECORD_INFO { DWORD dwSize; } NET_OUT_ATTACH_RECORD_INFO; ///@brief ??????????????????????? /// pBuf ???????? DH_PTZ_LOCATION_INFO ???? typedef void (CALLBACK *fPTZStatusProcCallBack)(LLONG lLoginID, LLONG lAttachHandle, void* pBuf, int nBufLen, LDWORD dwUser); ///@brief ????????????????????? typedef struct tagNET_IN_PTZ_STATUS_PROC { DWORD dwSize; int nChannel; /// ?????? fPTZStatusProcCallBack cbPTZStatusProc; /// ????????? LDWORD dwUser; /// ??????? }NET_IN_PTZ_STATUS_PROC; ///@brief ??????????????????????? typedef struct tagNET_OUT_PTZ_STATUS_PROC { DWORD dwSize; }NET_OUT_PTZ_STATUS_PROC; ///@brief ????????????? typedef struct tagDH_OUT_PTZ_VIEW_RANGE_STATUS { DWORD dwSize; double dbDistance; /// ???????, ????:?? int nAngelH; /// ????????, 0~1800, ????:??????? int nAzimuthH; /// ?????????, 0~3600, ????:??????? int nInclinationH; /// ?????????, -900~900, ????:??????? int nAngelV; /// ?????????, 0~1800, ????:??????? int nAzimuthV; /// ??????????, 0~3600, ????:??????? int nPan; /// ??????????100?????[0-36000] int nTilt; /// ???????????100?????[-18000-18000] int nZoom; /// ??????????????100?????[0-MaxZoom*100] }DH_OUT_PTZ_VIEW_RANGE_STATUS; ///@brief ?????????????????????? typedef void (CALLBACK *fViewRangeStateCallBack)(LLONG lLoginID, LLONG lAttachHandle, DH_OUT_PTZ_VIEW_RANGE_STATUS* pBuf, int nBufLen, LDWORD dwUser); ///@brief ???????????????? typedef struct tagNET_IN_VIEW_RANGE_STATE { DWORD dwSize; int nChannel; /// ?????? fViewRangeStateCallBack cbViewRange; /// ????????? LDWORD dwUser; /// ??????? }NET_IN_VIEW_RANGE_STATE; ///@brief ???????????????? typedef struct tagNET_OUT_VIEW_RANGE_STATE { DWORD dwSize; }NET_OUT_VIEW_RANGE_STATE; ///@brief ????????? typedef struct tagNET_WEATHER_INFO { float fWindSpeed; /// ????,????m/s, ????[0.0,60.0] float fTemperature; /// ???,??????????????[-40.0,+80.0] float fHumidity; /// ???%,????[0.0,100.0] unsigned int nLight; /// ????,????W/(m*m),????[0,2000] float fWindDirection; /// ????,??????,????[0,360) float fAirPressure; /// ???,????????,????[10~1100] int nRainfall; /// ???????,????0.01mm BYTE byReserved[2044]; /// ??????? }NET_WEATHER_INFO; ///@brief ????????????????????? typedef void (CALLBACK *fWeatherInfoCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_WEATHER_INFO* pBuf, int nBufLen, LDWORD dwUser); ///@brief ?????????????????? typedef struct tagNET_IN_WEATHER_INFO { DWORD dwSize; int nChannel; /// ?????? fWeatherInfoCallBack cbWeatherInfo; /// ??????? LDWORD dwUser; /// ??????? }NET_IN_WEATHER_INFO; ///@brief ?????????????????? typedef struct tagNET_OUT_WEATHER_INFO { DWORD dwSize; }NET_OUT_WEATHER_INFO; ///@brief ?????????????????????????????? ??????? typedef struct tagNET_IN_SET_VIEW_RANGE_BY_OBJECT { DWORD dwSize; int nChannel; /// ????? int nDistance; /// ??????? ????????????? int nWidth; /// ??????? ????????????? int nScreenRatio; /// ????????????????????? }NET_IN_SET_VIEW_RANGE_BY_OBJECT; ///@brief ?????????????????????????????? ??????? typedef struct tagNET_OUT_SET_VIEW_RANGE_BY_OBJECT { DWORD dwSize; }NET_OUT_SET_VIEW_RANGE_BY_OBJECT; ///@brief ???????GPS????????????? ???????(CLIENT_SetViewRangeByGPS) typedef struct tagNET_IN_SET_VIEW_RANGE_BY_GPS { DWORD dwSize; int nChannel; /// ????? double dLongitude; /// ????,[-180, 180],????:??(??),??????? double dLatitude; /// ????,[-90, 90],????:??(??),??????? }NET_IN_SET_VIEW_RANGE_BY_GPS; ///@brief ???????GPS????????????? ???????(CLIENT_SetViewRangeByGPS) typedef struct tagNET_OUT_SET_VIEW_RANGE_BY_GPS { DWORD dwSize; }NET_OUT_SET_VIEW_RANGE_BY_GPS; ///@brief ???????????????? typedef struct tagPTZ_VIEW_RANGE_INFO { int nStructSize; int nAzimuthH; /// ?????????, 0~3600, ????:?? }PTZ_VIEW_RANGE_INFO; ///@brief ??????????????,??????? DH_DEVSTATE_PTZ_ZOOM_INFO typedef struct tagDH_OUT_PTZ_ZOOM_INFO { int dwSize; int nZoomValue; /// ?????? }DH_OUT_PTZ_ZOOM_INFO; ///@brief ?????? typedef enum tagEM_TRACKSTATUS_TYPE { EM_TRACKSTATUS_TYPE_UNKNOWN = -1, /// ??? EM_TRACKSTATUS_TYPE_FREE, /// ???? EM_TRACKSTATUS_TYPE_TRACKING, /// ??????? EM_TRACKSTATUS_TYPE_TRACKINGEND, /// ??????? }EM_TRACKSTATUS_TYPE; ///@brief ?????????????????????? typedef struct tagPTZ_GET_TRACKMOVESTATUS_INFO { DWORD dwSize; /// ??????? char szControlSource[64]; /// ???????? EM_TRACKSTATUS_TYPE emTrackStatus; /// ?????? }PTZ_GET_TRACKMOVESTATUS_INFO; ///@brief ?????????? typedef struct tagNET_CHN_COUNT_INFO { DWORD dwSize; int nMaxTotal; /// ??????????(????????????????) int nCurTotal; /// ???????????? int nMaxLocal; /// ?????????, ???????????????? int nCurLocal; /// ?????????????? int nMaxRemote; /// ??????????? int nCurRemote; /// ?????????????? } NET_CHN_COUNT_INFO; ///@brief ????????????? typedef struct tagNET_DEV_CHN_COUNT_INFO { DWORD dwSize; NET_CHN_COUNT_INFO stuVideoIn; /// ?????????? NET_CHN_COUNT_INFO stuVideoOut; /// ????????? } NET_DEV_CHN_COUNT_INFO; ///@brief ??????????? typedef struct tagNET_RECORD_STATE_DETAIL { DWORD dwSize; BOOL bMainStream; /// ??????, TRUE-???????, FALSE-?????? BOOL bExtraStream1; /// ??????1, TRUE-???????, FALSE-?????? BOOL bExtraStream2; /// ??????2, TRUE-???????, FALSE-?????? BOOL bExtraStream3; /// ??????3, TRUE-???????, FALSE-?????? } NET_RECORD_STATE_DETAIL; ///@brief ?????????????? typedef struct tagPTZ_Focus_Absolutely { DWORD dwValue; ///??????????,??????(0~8191) DWORD dwSpeed; ///?????????,??????(0~7) char szReserve[64]; ///???64??? }PTZ_FOCUS_ABSOLUTELY; ///@brief CLIENT_PlayAudioFile ?????????? typedef struct tagNET_IN_PLAY_AUDIO_FILE { DWORD dwSize; const char* pszFilePath; /// ??????? DWORD dwOutput; /// ??????, ????????????, ???????, bit0-mic, bit1-speaker } NET_IN_PLAY_AUDIO_FILE; ///@brief CLIENT_PlayAudioFile ?????????? typedef struct tagNET_OUT_PLAY_FILE_STREAM { DWORD dwSize; } NET_OUT_PLAY_AUDIO_FILE; ///@brief RTSP URL????????? typedef struct tagNET_DEV_RTSPURL_LIST { DWORD dwSize; int nChannelID; /// ?????(??????????) int nUrlNum; /// Url??????? char szURLList[DH_MAX_URL_NUM][DH_MAX_URL_LEN]; /// Url??????? }NET_DEV_RTSPURL_LIST; ///@brief ???????-???????? typedef struct tagPTZ_Control_SectorScan { int nBeginAngle; ///??????,????:[-180,180] int nEndAngle; ///???????,????:[-180,180] int nSpeed; ///???,????:[0,255] char szReserve[64]; ///???64??? }PTZ_CONTROL_SECTORSCAN; ///@brief ????????????????? typedef struct tagPTZ_CONTROL_SET_FISHEYE_EPTZ { DWORD dwSize; /// ??????? DWORD dwWindowID; /// ????EPtz?????????? DWORD dwCommand; /// ??????????? DWORD dwParam1; /// ??????????1 DWORD dwParam2; /// ??????????2 DWORD dwParam3; /// ??????????3 DWORD dwParam4; /// ??????????4 }PTZ_CONTROL_SET_FISHEYE_EPTZ; ///@brief ???????????? typedef struct tagPTZ_CONTROL_SET_TRACK_CONTROL { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_SET_TRACK_CONTROL) DWORD dwChannelID; /// ????? DWORD dwCommand; /// ???????????,??????NET_TRACK_CONTROL_CMD DWORD dwParam1; /// ??????????1 DWORD dwParam2; /// ??????????2 DWORD dwParam3; /// ??????????3 } PTZ_CONTROL_SET_TRACK_CONTROL; ///@brief ===============???????k???????============================= ///@brief ??????????????????(CLIENT_DHPTZAreaScan) typedef enum tagNET_AREASCAN_EPTZ_CMD { NET_AREASCAN_EPTZ_CMD_SET, /// ????????????????????????(????????? PTZ_CONTROL_SET_AREA_SCAN_LIMIT,???????????) NET_AREASCAN_EPTZ_CMD_DEL, /// ?????????????(????????? PTZ_CONTROL_DEL_AREA_SCAN,???????????) NET_AREASCAN_EPTZ_CMD_GET, /// ?????????????????????????(????????? PTZ_CONTROL_GET_AREA_SCAN_IN,???????? PTZ_CONTROL_GET_AREA_SCAN_OUT ) NET_AREASCAN_EPTZ_CMD_START, /// ??????????(????????? PTZ_CONTROL_START_AREA_SCAN,???????????) NET_AREASCAN_EPTZ_CMD_STOP, /// ?????????(????????? PTZ_CONTROL_STOP_AREA_SCAN,???????????) }NET_AREASCAN_EPTZ_CMD; ///@brief ???????????????????????? typedef struct tagPTZ_CONTROL_SET_AREA_SCAN_LIMIT { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_SET_AREA_SCAN_LIMIT) int nChannelID; /// ?????,??????0??? int nIndex; /// ???????????1??? char szLimitMode[16]; /// ???????"Left":???? "Right":???? int nZoom; /// ?????,????0~128??????0???????????1~128????????????? } PTZ_CONTROL_SET_AREA_SCAN_LIMIT; ///@brief ????????????? typedef struct tagPTZ_CONTROL_DEL_AREA_SCAN { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_DEL_AREA_SCAN) int nChannelID; /// ?????,??????0??? int nIndex; /// ???????????1??? } PTZ_CONTROL_DEL_AREA_SCAN; ///@brief ?????????????????????????,??????? typedef struct tagPTZ_CONTROL_GET_AREA_SCAN_IN { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_GET_AREA_SCAN) int nChannelID; /// ?????,??????0??? int nSize; /// ???????????????? } PTZ_CONTROL_GET_AREA_SCAN_IN; ///@brief ??????????? typedef struct tagNET_AREASCAN_STATE { BOOL bValid; /// ??????????? BYTE Reserved[128]; /// ??????? }NET_AREASCAN_STATE; ///@brief ?????????????????????????,??????? typedef struct tagPTZ_CONTROL_GET_AREA_SCAN_OUT { DWORD dwSize; /// ???????, ?????????????????? UINT nValidNum; /// ???? stuStateInfo ?????????? NET_AREASCAN_STATE stuStateInfo[DH_COMMON_STRING_32]; /// ????????? }PTZ_CONTROL_GET_AREA_SCAN_OUT; ///@brief ?????????? typedef struct tagPTZ_CONTROL_START_AREA_SCAN { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_START_AREA_SCAN) int nChannelID; /// ?????,??????0??? int nIndex; /// ???????????1??? int nSpeed; /// ?????????????1~255 int nTitleAngle; /// ??????????????????????????????????k????0~90?? } PTZ_CONTROL_START_AREA_SCAN; ///@brief ????????? typedef struct tagPTZ_CONTROL_STOP_AREA_SCAN { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_STOP_AREA_SCAN) int nChannelID; /// ?????,??????0??? int nIndex; /// ???????????1??? } PTZ_CONTROL_STOP_AREA_SCAN; ///@brief ===============???????k???????============================= ///@brief ???????? typedef enum tagEM_NET_FOCUS_REGION_MODE { EM_NET_FOCUS_REGION_MODE_GLOBAL, /// ??? EM_NET_FOCUS_REGION_MODE_AUTO, /// ??? EM_NET_FOCUS_REGION_MODE_INROIREGION, /// ROI ??????????? EM_NET_FOCUS_REGION_MODE_OUTROIREGION, /// ROI ??????????? }EM_NET_FOCUS_REGION_MODE; ///@brief ??????(??????DH_EXTPTZ_SET_FOCUS_REGION) typedef struct tagPTZ_CONTROL_SET_FOCUS_REGION { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(PTZ_CONTROL_SET_FOCUS_REGION) EM_NET_FOCUS_REGION_MODE emMode; /// ????? NET_RECT stuRect; /// ???????,????????????????????0-8191 } PTZ_CONTROL_SET_FOCUS_REGION; ///@brief CLIENT_TransmitInfoForWeb ?????????? typedef struct tagNET_TRANSMIT_EXT_INFO { DWORD dwSize; unsigned char* pInBinBuf; /// ????????????????? DWORD dwInBinBufSize; /// ????????????????? int nJsonDataLen; /// Json?????????? int nBinDataLen; /// ???????????????? } NET_TRANSMIT_EXT_INFO; ///@brief ????CAN???????? ///@brief fAttachProxyCB ???? typedef struct tagNET_CB_CANDATA { DWORD dwSize; int nDataLength; /// ?????????? unsigned char* pDataContent; /// ??????????? }NET_CB_CANDATA; ///@brief ????CAN?????????????????,lAttachHandle??CLIENT_AttachCAN????? typedef void (CALLBACK *fAttachCANCB) (LLONG lLoginID, LLONG lAttachHandle, NET_CB_CANDATA* pBuf, LDWORD dwUser); ///@brief CLIENT_AttachCAN()??????? typedef struct tagNET_IN_ATTACH_CAN { DWORD dwSize; int nChannel; /// ??????CAN????? fAttachCANCB cbAttachCAN; /// ????????????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_CAN; ///@brief CLIENT_AttachCAN()??????? typedef struct tagNET_OUT_ATTACH_CAN { DWORD dwSize; }NET_OUT_ATTACH_CAN; ///@brief CLIENT_SendCAN()??????? typedef struct tagNET_IN_SEND_CAN { DWORD dwSize; int nChannel; /// CAN????? int nSendDataLength; /// ??????????? unsigned char* pSendData; /// ???????????? }NET_IN_SEND_CAN; ///@brief CLIENT_SendCAN()??????? typedef struct tagNET_OUT_SEND_CAN { DWORD dwSize; }NET_OUT_SEND_CAN; ///@brief ?????????????????fAttachDevCommCB ???? typedef struct tagNET_CB_DEVCOMMDATA { DWORD dwSize; int nDataLength; /// ?????????? unsigned char* pDataContent; /// ??????????? }NET_CB_DEVCOMMDATA; ///@brief ????????????????????????,lAttachHandle??CLIENT_AttachDevComm????? typedef void (CALLBACK *fAttachDevCommCB) (LLONG lLoginID, LLONG lAttachHandle, NET_CB_DEVCOMMDATA* pBuf, LDWORD dwUser); ///@brief CLIENT_AttachDevComm()??????? typedef struct tagNET_IN_ATTACH_DEVCOMM { DWORD dwSize; int nChannel; /// ?????????????? fAttachDevCommCB cbAttachDevComm; /// ???????????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_DEVCOMM; ///@brief CLIENT_AttachDevComm()??????? typedef struct tagNET_OUT_ATTACH_DEVCOMM { DWORD dwSize; }NET_OUT_ATTACH_DEVCOMM; ///@brief ????????????????,???CLIENT_QueryDevState()???? DH_DEVSTATE_GET_COMM_COUNT ??????? typedef struct tagNET_GET_COMM_COUNT { DWORD dwSize; int nChannelCout; /// ???????????? }NET_GET_COMM_COUNT; ///@brief CLIENT_ExChangeData ?????????? typedef struct tagNET_IN_EXCHANGEDATA { DWORD dwSize; int nChannel; /// ????? BOOL bFlag; /// TRUE ????????????????,FALSE ????????? int nCollectTime; /// ?????????(??????????) int nSendDataLength; /// ???????????,bFlag = TRUE ???? unsigned char* pSendData; /// ????????????,bFlag = TRUE ???? }NET_IN_EXCHANGEDATA; ///@brief CLIENT_ExChangeData ?????????? typedef struct tagNET_OUT_EXCHANGEDATA { DWORD dwSize; }NET_OUT_EXCHANGEDATA; ///@brief ??????? typedef struct tagNET_PTZ_PRESET { int nIndex; /// ??? char szName[PTZ_PRESET_NAME_LEN]; /// ???? int nPosition[3]; /// ?????????????? /// ?????????????????,????[0,3599]?????0???359.9??,????????10????? /// ?????????????????,????[-1800,1800],???-180.0???+180.0??,????????10????? /// ?????????????????,????[0,128],???????????????????? BOOL bSetNameEx; /// ?????????????????TRUE char szNameEx[256]; /// ????????256?????? char szReserve[52]; /// ?????? } NET_PTZ_PRESET; ///@brief ??????????? typedef struct tagNET_PTZ_PRESET_LIST { DWORD dwSize; DWORD dwMaxPresetNum; /// ?????????? DWORD dwRetPresetNum; /// ??????????? NET_PTZ_PRESET *pstuPtzPorsetList; /// ????????(???????????????????????),???????sizeof(NET_PTZ_PRESET)*dwMaxPresetNum } NET_PTZ_PRESET_LIST; ///@brief ??????? EVENT_IVS_TRAFFIC_RESTRICTED_PLATE (??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_RESTRICTED_PLATE { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE byReserved[984]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_RESTRICTED_PLATE; ///@brief ??????? EVENT_IVS_TRAFFIC_OVERSTOPLINE (?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OVERSTOPLINE { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? int nSpeed; /// ??????????,Km/h NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE byReserved[984]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? BOOL bHasNonMotor; /// stuNonMotor ?????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }DEV_EVENT_TRAFFIC_OVERSTOPLINE; ///@brief ???????EVENT_IVS_TRAFFIC_WITHOUT_SAFEBELT(?????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_WITHOUT_SAFEBELT { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved1[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLane; /// ????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? int nSpeed; /// ??????????,Km/h NET_SAFEBELT_STATE emMainSeat; /// ???????????????? NET_SAFEBELT_STATE emSlaveSeat; /// ???????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? NET_GPS_INFO stuGPSInfo; /// GPS??? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[724-POINTERSIZE]; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? char szVideoPath[256]; /// ??????????FTP??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }DEV_EVENT_TRAFFIC_WITHOUT_SAFEBELT; ///@brief ???????EVENT_IVS_TRAFFIC_DRIVER_SMOKING (???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVER_SMOKING { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved1[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLane; /// ????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? int nSpeed; /// ??????????,Km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??? char szDriverID[32]; /// ???ID int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[948-POINTERSIZE]; /// ??????? }DEV_EVENT_TRAFFIC_DRIVER_SMOKING; ///@brief ???????EVENT_IVS_TRAFFIC_DRIVER_CALLING(???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVER_CALLING { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved1[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLane; /// ????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? int nSpeed; /// ??????????,Km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??? char szDriverID[32]; /// ???ID int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[948-POINTERSIZE]; /// ??????? }DEV_EVENT_TRAFFIC_DRIVER_CALLING; ///@brief ???????EVENT_IVS_OBJECT_DETECTION(??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OBJECT_DETECTION { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? int nObjectNum; ///????????? DH_MSG_OBJECT_EX *pstObjectInfo; ///??????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BYTE byReserved2[892]; ///??????? }DEV_EVENT_TRAFFIC_OBJECT_DETECTION; ///@brief ???????????? typedef struct tagALARM_POWER_ABNORMAL_INFO { DWORD dwSize; int nChannelID; /// ????? NET_TIME stuTime; /// ??? DWORD dwAction; /// ???????, 0:Start, 1:Stop NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_POWER_ABNORMAL_INFO; ///@brief ?????? typedef enum tagNET_THREE_STATE_ENABLE { EM_STATE_ENABLE_INVALID = 0, /// ???? EM_STATE_ENABLE_OFF, /// ?? EM_STATE_ENABLE_ON, /// ?? } NET_THREE_STATE_ENABLE; ///@brief ??????????????? typedef struct tagCONFIG_ENABLE_CHANGE_INFO { DWORD dwSize; int nChannelID; /// ?????, ??0??? NET_THREE_STATE_ENABLE emMotionDetect; /// ???????, 0:????, 1:?????, 2:???? NET_THREE_STATE_ENABLE emLossDetect; /// ?????????, 0:????, 1:?????, 2:???? NET_THREE_STATE_ENABLE emBlindDetect; /// ?????????, 0:????, 1:?????, 2:???? NET_THREE_STATE_ENABLE emAlarmLocal; /// ?????????, 0:????, 1:?????, 2:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_CONFIG_ENABLE_CHANGE_INFO; ///@brief ???????????????? typedef enum tagEM_ITC_HWS000_IT_TYPE { EM_ITC_HWS000_IT_TYPE_UNKNOWN, /// ??? EM_ITC_HWS000_IT_TYPE_HIGH_SPEED, /// ???? EM_ITC_HWS000_IT_TYPE_LOW_SPEED, /// ???? }EM_ITC_HWS000_IT_TYPE; ///@brief ????????????? typedef enum tagEM_ITC_HWS000_RS_TYPE { EM_ITC_HWS000_RS_TYPE_UNKNOWN, /// ??? EM_ITC_HWS000_RS_TYPE_ONLINE, /// ???? EM_ITC_HWS000_RS_TYPE_OFFLINE, /// ???? }EM_ITC_HWS000_RS_TYPE; ///@brief ??????????????? typedef enum tagEM_ITC_HWS000_FS_TYPE { EM_ITC_HWS000_FS_TYPE_UNKNOWN, /// ??? EM_ITC_HWS000_FS_TYPE_ONLINE, /// ???? EM_ITC_HWS000_FS_TYPE_OFFLINE, /// ???? }EM_ITC_HWS000_FS_TYPE; ///@brief ?????????????????? typedef struct tagALARM_ITC_HWS000 { DWORD dwSize; EM_ITC_HWS000_IT_TYPE emItType; /// ???????? EM_ITC_HWS000_RS_TYPE emRsType; /// ????????? EM_ITC_HWS000_FS_TYPE emFsType; /// ??????????? int nOcNum; /// ???????? int nLcNum; /// ??????? int nAcNum; /// ?????????? int nFcNum; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_ITC_HWS000; ///@brief ?????? +- typedef enum tagEM_CAR_COME_STATUS { EM_CAR_COME_STATUS_UNKNOWN, ///??? EM_CAR_COME_STATUS_COME_IN, ///?? EM_CAR_COME_STATUS_COME_OUT, ///???? }EM_CAR_COME_STATUS; ///@brief ????????????? typedef struct tagALARM_TELEPHONE_CHECK_INFO { DWORD dwSize; EM_CAR_COME_STATUS emCarStatus; ///?????? char szTelephoneNum[32]; ///??????? }ALARM_TELEPHONE_CHECK_INFO; #define UPDATE_VERSION_LEN 64 ///@brief ??????????????????? typedef struct tagDHDEV_UPGRADE_STATE_INFO { int nState; /// 0:None-??????????, ?????; 1:Regular-???????; /// 2:Emergency-???????; 3:Upgrading-?????? char szOldVersion[UPDATE_VERSION_LEN]; /// ???? char szNewVersion[UPDATE_VERSION_LEN]; /// ???? DWORD dwProgress; /// ???????? int reserved[256]; /// ??????? }DHDEV_UPGRADE_STATE_INFO; ///@brief ????????????? typedef enum tagNET_CROSSLINE_DIRECTION_INFO { EM_CROSSLINE_DIRECTION_UNKNOW = 0 , EM_CROSSLINE_DIRECTION_LEFT2RIGHT , ///???? EM_CROSSLINE_DIRECTION_RIGHT2LEFT , ///????? EM_CROSSLINE_DIRECTION_ANY , }NET_CROSSLINE_DIRECTION_INFO; ///@brief ???????????(?????? DH_EVENT_CROSSLINE_DETECTION) typedef struct tagALARM_EVENT_CROSSLINE_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; NET_CROSSLINE_DIRECTION_INFO emCrossDirection; /// ??????? int nOccurrenceCount; /// ????????????? int nLevel; /// ???????,GB30147?????? BOOL bIsObjectInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ???????????? int nRetObjectNum; /// ???????????????????? DH_MSG_OBJECT stuObjects[MAX_TARGET_OBJECT_NUM]; /// ??????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_EVENT_CROSSLINE_INFO; ///@brief ??????(??????DH_ALARM_MOVEDETECTION) typedef struct tagALARM_MOVE_DETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nCount; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; ///??????? } ALARM_MOVE_DETECTION_INFO; ///@brief ??????(??????DH_ALARM_WANDERDETECTION) typedef struct tagALARM_WANDERDETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nCount; /// ???????????? int nLevel; /// ???????,GB31047???? short nPreserID; /// ?????????????????1???????????????? char szPresetName[64]; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[958]; ///??????? } ALARM_WANDERDETECTION_INFO; ///@brief ??????????(??????DH_ALARM_CROSSFENCEDETECTION) typedef struct tagALARM_CROSSFENCEDETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_CROSSLINE_DIRECTION_INFO emCrossDirection; /// ??????? int nCount; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; ///??????? } ALARM_CROSSFENCEDETECTION_INFO; ///@brief ????????(?????? ALARM_TRAFFIC_PEDESTRIAN_RUN_REDLIGHT_DETECTION) typedef struct tagALARM_TRAFFIC_PEDESTRIAN_RUN_REDLIGHT_DETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID BYTE byReserved[1024]; ///??????? } ALARM_TRAFFIC_PEDESTRIAN_RUN_REDLIGHT_DETECTION_INFO; ///@brief ??????(??????DH_ALARM_FIGHTDETECTION) typedef struct tagNET_ALARM_FIGHTDETECTION { int nAction; /// ???????,0:???1:?? int nChannelID; /// ??????0??? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[892]; ///??????? }NET_ALARM_FIGHTDETECTION; #define VTO_BUILDING_LEN 8 #define VTO_UNIT_LEN 8 ///@brief VTO?????????(??????DH_ALARM_ACCESSIDENTIFY) typedef struct tagNET_ALARM_ACCESSIDENTIFY_INFO { NET_TIME_EX stuTime; /// ???????????? char szVTOBuilding[VTO_BUILDING_LEN]; /// ???????? char szVTOUnit[VTO_UNIT_LEN]; /// ????????? BYTE byReserved[1024]; /// ??????? }NET_ALARM_ACCESSIDENTIFY_INFO; ///@brief ????????????????????(??????DH_ALARM_CALL_NO_ANSWERED) typedef struct tagNET_ALARM_CALL_NO_ANSWERED_INFO { NET_TIME_EX stuTime; /// ???????????? char szCallID[MAX_CALL_ID_LEN]; /// ????ID int nAction; /// ???????, 1???????????????,2????????????????; int nChannelID; /// ????? BYTE byReserved[1016]; /// ??????? } NET_ALARM_CALL_NO_ANSWERED_INFO; ///@brief ?????????(??????DH_ALARM_PARKINGDETECTION) typedef struct tagALARM_PARKINGDETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nCount; /// ???????????? char szCustomParkNo[64]; /// ???????? DH_POINT stuDetectRegion[20]; /// ?????????? int nDetectRegionNum; /// ????????????? BYTE byReserved[876]; /// ??????? } ALARM_PARKINGDETECTION_INFO; ///@brief ?????????(??????DH_ALARM_RIOTERDETECTION) typedef struct tagALARM_RIOTERDETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nCount; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? } ALARM_RIOTERDETECTION_INFO; ///@brief ??????? DH_ALARM_TRAFFIC_PARKING(?????????????)????????????????? typedef struct tagALARM_TRAFFIC_PARKING_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } ALARM_TRAFFIC_PARKING_INFO; ///@brief ???????DH_ALARM_TRAFFIC_JAM(?????????)????????????????? typedef struct tagALARM_TRAFFIC_JAM_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } ALARM_TRAFFIC_JAM_INFO; ///@brief ??????? DH_ALARM_TRAFFIC_PEDESTRAIN(??????????)??????????????? typedef struct tagALARM_TRAFFIC_PEDESTRAIN_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } ALARM_TRAFFIC_PEDESTRAIN_INFO; ///@brief ??????? DH_ALARM_TRAFFIC_THROW(?????????????)??????????????? typedef struct tagALARM_TRAFFIC_THROW_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID BYTE byReserved[1024]; /// ??????? } ALARM_TRAFFIC_THROW_INFO; ///@brief ???????DH_ALARM_TRAFFIC_RETROGRADE(??????????)????????????????? typedef struct tagALARM_TRAFFIC_RETROGRADE_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } ALARM_TRAFFIC_RETROGRADE_INFO; ///@brief ???????DH_ALARM_TRAFFIC_OVERSPEED(??????????)????????????????? typedef struct tagALARM_TRAFFIC_OVERSPEED_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nSpeed; /// ???? int nSpeedUpperLimit; /// ??????? int nSpeedLowerLimit; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } ALARM_TRAFFIC_OVERSPEED_INFO; ///@brief ???????DH_ALARM_TRAFFIC_UNDERSPEED(?????????)????????????????? typedef struct tagALARM_TRAFFIC_UNDERSPEED_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nSpeed; /// ???? int nSpeedUpperLimit; /// ??????? int nSpeedLowerLimit; /// ??????? int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } ALARM_TRAFFIC_UNDERSPEED_INFO; ///@brief ???????DH_ALARM_TRAFFIC_ROADALERT(?????????????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_ROADALERT_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_ROADALERT_INFO; ///@brief ???????DH_ALARM_TRAFFIC_CROSSLANE(??????????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_CROSSLANE_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_CROSSLANE_INFO; ///@brief ???????DH_ALARM_TRAFFIC_OVERYELLOWLINE(??????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_OVERYELLOWLINE_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_OVERYELLOWLINE_INFO; ///@brief ???????DH_ALARM_TRAFFIC_ACCIDENT(?????????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_ACCIDENT_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID unsigned int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_ACCIDENT_INFO; ///@brief ???????DH_ALARM_TRAFFIC_ROADBLOCK(????????????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_ROADBLOCK_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID unsigned int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_ROADBLOCK_INFO; ///@brief ???????DH_ALARM_TRAFFIC_ROADCONSTRUCTION(????????????????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_ROADCONSTRUCTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID unsigned int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_ROADCONSTRUCTION_INFO; ///@brief ???????DH_ALARM_TRAFFIC_CARDISTANCESHORT(???????????????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_CARDISTANCESHORT_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_CARDISTANCESHORT_INFO; ///@brief ???????DH_ALARM_TRAFFIC_VEHICLERACING(?????)????????????????? typedef struct tagNET_ALARM_TRAFFIC_VEHICLERACING_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nLane; /// ?????? BYTE byReserved[1020]; /// ??????? } NET_ALARM_TRAFFIC_VEHICLERACING_INFO; ///@brief ???????DH_ALARM_STORAGE_OVERLOAD(??????????)????????????????? typedef struct tagNET_ALARM_STORAGE_OVERLOAD_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID char szName[32]; /// ?????????????????????? "storageQuota"/"storageGroup" char szGroup[128][32]; /// ??????????????????? int nGroupNum; /// ???????? char byReserved[1020]; /// ??????? } NET_ALARM_STORAGE_OVERLOAD_INFO; ///@brief ???????DH_ALARM_RETROGRADE_DETECTION(??????????)????????????????? typedef struct tagALARM_RETROGRADE_DETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nCount; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? } ALARM_RETROGRADE_DETECTION_INFO; ///@brief AIO???????(??????DH_ALARM_AIO_APP_CONFIG_EVENT) typedef struct tagALARM_AIO_APP_CONFIG_EVENT_INFO { NET_TIME_EX stuTime; /// ???????????? char szAddress[DH_MAX_IPADDR_LEN]; /// ?????????ip??? BYTE byReserved[1024]; /// ??????? }ALARM_AIO_APP_CONFIG_EVENT_INFO; ///@brief ???????DH_ALARM_BOX(??????????????)????????????????? typedef struct tagALARM_BOX_INFO { int nAction; /// ???????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nAlarmBoxIndex; /// ?????????????????????????????0??? int nAlarmIndex; /// ???????????????????0??? BYTE byReserved[1024]; /// ??????? } ALARM_BOX_INFO; ///@brief ??????? DH_ALARM_UNDER_VOLTAGE (???????????) ????????????????? typedef struct tagALARM_UNDER_VOLTAGE_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[512]; /// ??????? }ALARM_UNDER_VOLTAGE_INFO; ///@brief ??????? DH_ALARM_OVER_VOLTAGE (????????????) ????????????????? typedef struct tagALARM_OVER_VOLTAGE_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID BYTE byReserved[512]; /// ??????? }ALARM_OVER_VOLTAGE_INFO; ///@brief ??????? DH_ALARM_TIRED_PHYSIOLOGICAL (??????????) ????????????????? typedef struct tagALARM_TIRED_PHYSIOLOGICAL { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_TIRED_PHYSIOLOGICAL; ///@brief ??????? DH_ALARM_CALLING_WHEN_DRIVING (???????????) ????????????????? typedef struct tagALARM_CALLING_WHEN_DRIVING { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_CALLING_WHEN_DRIVING; ///@brief ??????? DH_ALARM_TRAFFIC_DRIVER_SMOKING (???????????) ????????????????? typedef struct tagALARM_TRAFFIC_DRIVER_SMOKING { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_TRAFFIC_DRIVER_SMOKING; ///@brief ??????? DH_ALARM_TRAFFIC_DRIVER_LOWER_HEAD (??????????????) ????????????????? typedef struct tagALARM_TRAFFIC_DRIVER_LOWER_HEAD { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_TRAFFIC_DRIVER_LOWER_HEAD; ///@brief ??????? DH_ALARM_TRAFFIC_DRIVER_LOOK_AROUND (??????????????????) ????????????????? typedef struct tagALARM_TRAFFIC_DRIVER_LOOK_AROUND { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_TRAFFIC_DRIVER_LOOK_AROUND; ///@brief ??????? DH_ALARM_TRAFFIC_DRIVER_LEAVE_POST (?????????????) ????????????????? typedef struct tagALARM_TRAFFIC_DRIVER_LEAVE_POST { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_TRAFFIC_DRIVER_LEAVE_POST; ///@brief ??????? DH_ALARM_TRAFFIC_DRIVER_YAWN (???????????????) ????????????????? typedef struct tagALARM_TRAFFIC_DRIVER_YAWN { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[512]; /// ??????? } ALARM_TRAFFIC_DRIVER_YAWN; ///@brief ??????? typedef enum tagEM_VEHICLE_HEAD_DIRECTION { EM_VEHICLE_HEAD_DIRECTION_UNKNOWN, /// ??? EM_VEHICLE_HEAD_DIRECTION_LEFT, /// ?? EM_VEHICLE_HEAD_DIRECTION_MIDDLE, /// ?? EM_VEHICLE_HEAD_DIRECTION_RIGHT, /// ?? }EM_VEHICLE_HEAD_DIRECTION; ///@brief ???????????? typedef enum tagEM_VEHICLE_POSITION { EM_VEHICLE_POSITION_UNKNOWN, /// ??? EM_VEHICLE_POSITION_HEAD, /// ? EM_VEHICLE_POSITION_TAIL, /// ?? }EM_VEHICLE_POSITION; ///@brief ????????????????????? typedef enum tagEM_VEHICLE_DRIVING_DIRECTION { EM_VEHICLE_DRIVING_DIRECTION_UNKNOWN, /// ??? EM_VEHICLE_DRIVING_DIRECTION_OBVERSE, /// ???? EM_VEHICLE_DRIVING_DIRECTION_REVERSE, /// ???? }EM_VEHICLE_DRIVING_DIRECTION; ///@brief ??????????????(DH_ALARM_TRAFFIC_VEHICLE_POSITION) typedef struct tagALARM_TRAFFIC_VEHICLE_POSITION { int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szEventName[DH_COMMON_STRING_128]; /// ??????? unsigned int nObjectID; /// ????ID char szPlateNumber[DH_COMMON_STRING_128]; /// ????? int nPosition; /// ?????????????????????(0????????????????????????????????????????????????????????????????) BYTE byOpenStrobeState; /// ?????,??????? EM_OPEN_STROBE_STATE UINT nPlateConfidence; /// ??????????????[0, 255] char szPlateColor[32]; /// ??????? char szPlateType[32]; /// ???????? UINT nVehicleConfidence; /// ??????????????[0, 255] EM_VEHICLE_HEAD_DIRECTION emVehicleHeadDirection; /// ???????,??????????????????????????????? EM_VEHICLE_POSITION emVehiclePosition; /// ?????????? EM_VEHICLE_DRIVING_DIRECTION emDrivingDirection; /// ???????????(??????????) BYTE byReserved[427]; /// ??????? } ALARM_TRAFFIC_VEHICLE_POSITION; ///@brief ??????? DH_ALARM_MPTBASE_CONNECT (?????????????????) ????????????????? typedef struct tagALARM_MPTBASE_CONNECT { int nAction; /// ???????, 1 ???????????????, 2 ???????????????? BYTE byReserved[512]; /// ??????? } ALARM_MPTBASE_CONNECT; ///@brief ?????? typedef enum tagEM_SHUTDOWN_REASON_TYPE { EM_SHUTDOWN_REASON_UNKNOWN, /// ??? EM_SHUTDOWN_REASON_LOWERPOWER, /// ????? EM_SHUTDOWN_REASON_LOSTPOWER, /// ?????? EM_SHUTDOWN_REASON_CRASH, /// ?????? } EM_SHUTDOWN_REASON_TYPE; ///@brief ???????DH_ALARM_CGIRECORD,???CGI?????????? typedef struct tagALARM_CGIRECORD { int nAction; /// ???????,1?????????,2??????????; int nChannelID; /// ???????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_TIME_EX stuStartTime; /// ??????? NET_TIME_EX stuStopTime; /// ????????? BYTE byReserved[512]; /// ??????? } ALARM_CGIRECORD; ///@brief ????????????????????DH_ALARM_BATTERY_TEMPERATURE typedef struct tagALARM_BATTERY_TEMPERATURE_INFO { int nBatteryIndex; /// ?????? NET_TIME_EX stuTime; /// ?????? float fTemperature; /// ????????,????:??C BYTE byReserved[1024]; /// ??????? }ALARM_BATTERY_TEMPERATURE_INFO; ///@brief ??????? DH_ALARM_TIRE_PRESSURE ,??????????? typedef struct tagALARM_TIRE_PRESSURE_INFO { int nAction; /// ???????,1?????????,2??????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nTireIndex; /// ??????,??1??? int nAlarmType; /// ????????,1-???????,2-??????? float fUpperLimit; /// ??????,????BAR float fLowerLimit; /// ??????,????BAR float fCurrentPressure; /// ?????,????BAR BYTE byReserved[512]; /// ??????? } ALARM_TIRE_PRESSURE_INFO; ///@brief ????????????????,??? DH_ALARM_ACCESS_CTL_BLACKLIST typedef struct tagALARM_ACCESS_CTL_BLACKLIST { int nChannel; /// ??????? char szAccessName[DH_COMMON_STRING_64]; /// ??????? char szUserID[DH_COMMON_STRING_32]; /// ???ID char szCardNo[DH_COMMON_STRING_64]; /// ??????????? char szCitizenIDNo[20]; /// ????? NET_TIME_EX UTC; /// ???????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? BYTE byReserved[416]; /// ??????? }ALARM_ACCESS_CTL_BLACKLIST; ///@brief ?????????????????, ??? DH_ALARM_ACCESS_CTL_UNAUTHORIZED_MALICIOUSWIP typedef struct tagALARM_ACCESS_CTL_UNAUTHORIZED_MALICIOUSWIP { int nChannel; /// ??????? char szDoorName[DH_MAX_DOORNAME_LEN]; /// ??????? char szUserID[MAX_COMMON_STRING_16]; /// ???ID char szCardNo[DH_COMMON_STRING_64]; /// ???? NET_TIME_EX stuTime; /// ???????????? BYTE byReserved[476]; }ALARM_ACCESS_CTL_UNAUTHORIZED_MALICIOUSWIP; ///@brief ??????????????,??? DH_ALARM_USERLOCK typedef struct tagALARM_USERLOCK_INFO { double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID char szUserName[MAX_USER_NAME_LEN]; /// ????? char szGroup[MAX_GROUP_LEN]; /// ???? char szIllegalLoginIP[MAX_ILLEGAL_LOGIN_IP_LEN]; /// ????????IP NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? }ALARM_USERLOCK_INFO; ///@brief ?????????????,??? DH_ALARM_DOWNLOAD_REMOTE_FILE typedef struct tagALARM_DOWNLOAD_REMOTE_FILE_INFO { double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID char szURL[DH_COMMON_STRING_256]; /// ????????????URL??? UINT nProgress; /// ???????[0,100] UINT nVelocity; /// ??????????, ????: Kb/s BYTE byReserved[1016]; /// ??????? }ALARM_DOWNLOAD_REMOTE_FILE_INFO; ///@brief ?????? typedef struct tagNET_CONFLICT_INFO { char szSlaveMac[DH_COMMON_STRING_32]; /// ??????MAC??? int nSlaveID; /// ??????ID int nSlavePort; /// ??????????????????? BYTE byReserved[64]; /// ??????? } NET_CONFLICT_INFO; /// ????????????? #define MAX_COUNT_CONFLICT 16 ///@brief ??????? DH_ALARM_VTH_CONFLICT, ???????????????? typedef struct tagALARM_VTH_CONFLICT_INFO { int nAction; /// ???????,0??????????,1?????????,2??????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nConflictNum; /// ??????? NET_CONFLICT_INFO stConflictInfo[MAX_COUNT_CONFLICT]; /// ?????? char szVTNCNum[DH_COMMON_STRING_32]; /// ?????????????????/???????? char szVTHNum[DH_COMMON_STRING_32]; /// ????? BYTE byReserved[512]; /// ??????? } ALARM_VTH_CONFLICT_INFO; ///@brief ???????DH_ALARM_LATEST_SHUTDOWN (??????????????) ????????????????? typedef struct tagALARM_LATEST_SHUTDOWN { EM_SHUTDOWN_REASON_TYPE emShutdownReason; /// ?????? BYTE byReserved[512]; /// ??????? } ALARM_LATEST_SHUTDOWN; ///@brief ????? typedef enum tagEM_MOBILE_ENFORCE_FLAGS { EM_MOBILE_ENFORCE_FLAGS_UNKNOWN, /// ??? EM_MOBILE_ENFORCE_FLAGS_TIMING, /// ????????? EM_MOBILE_ENFORCE_FLAGS_EVENT, /// ????????? EM_MOBILE_ENFORCE_FLAGS_MARKED, /// ?????????? EM_MOBILE_ENFORCE_FLAGS_CARD, /// ?????????? EM_MOBILE_ENFORCE_FLAGS_TAG, /// ????????? EM_MOBILE_ENFORCE_FLAGS_RESTRICT, /// ?????????? }EM_MOBILE_ENFORCE_FLAGS; ///@brief ?????? typedef struct tagNET_EMERGENCY_FILE_INFO { char szUniqueID[128]; /// ????????????????????? char szOriginalDeviceID[128]; /// ????????????????????ID EM_MOBILE_ENFORCE_FORMAT emFormat; /// ???????????? EM_MOBILE_ENFORCE_FILE_TYPE emFileType; /// ?????????? char szFileName[260]; /// ??????? char szFilePath[260]; /// ????????? NET_TIME stStartTime; /// ????????? NET_TIME stEndTime; /// ?????????? UINT nLength; /// ??????? NET_TIME stuStartTimeRealUTC; /// UTC?????? NET_TIME stuEndTimeRealUTC; /// UTC??????? EM_MOBILE_ENFORCE_FLAGS emFlags[64]; /// ????????? BYTE byReserved[192]; /// ??????? } NET_EMERGENCY_FILE_INFO; ///@brief ???????DH_ALARM_EMERGENCY_FILE_UPLOAD (MPT??????????????????????????) ????????????????? typedef struct tagALARM_EMERGENCY_FILE_UPLOAD { NET_EMERGENCY_FILE_INFO stFileInfo[50]; NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[512]; /// ??????? } ALARM_EMERGENCY_FILE_UPLOAD; ///@brief MPT????????????????? typedef struct tagNET_EMERGENCY_CANCEL_FILE_INFO { char szUniqueID[128]; /// ????????????????????? char byReserved[512]; /// ??????? } NET_EMERGENCY_CANCEL_FILE_INFO; ///@brief ???????DH_ALARM_EMERGENCY_FILE_UPLOAD_CANCEL (MPT??????????????????) ????????????????? typedef struct tagALARM_EMERGENCY_FILE_UPLOAD_CANCEL_INFO { int nAction; /// ???????,0?????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? UINT nFileNum; /// ?????????????????? NET_EMERGENCY_CANCEL_FILE_INFO stuFileList[50]; /// ?????????????????? char byReserved[1024]; /// ??????? } ALARM_EMERGENCY_FILE_UPLOAD_CANCEL_INFO; ///@brief ?????????? typedef enum tagEM_RECORD_BACKUP_FAILURE_TYPE { EM_RECORD_BACKUP_FAILURE_UNKNOWN, /// ??? EM_RECORD_BACKUP_FAILURE_RECORD_NO_EXIST, /// ????????????? EM_RECORD_BACKUP_FAILURE_LOGIN_FAILED, /// ????????????? EM_RECORD_BACKUP_FAILURE_DOWNLOAD_FAILED, /// ???????????? EM_RECORD_BACKUP_FAILURE_STORAGE_FAILED, /// ????? EM_RECORD_BACKUP_FAILURE_DISCONNETED, /// ?????????? }EM_RECORD_BACKUP_FAILURE_TYPE; ///@brief ??????? DH_ALARM_RECORD_BACKUP_FAILURE (??????????) ????????????????? typedef struct tagALARM_RECORD_BACKUP_FAILURE_INFO { NET_TIME_EX stuTime; /// ???????????? UINT nTaskId; /// ???????ID char szDeviceIP[64]; /// ???????IP UINT nPort; /// ?????????? UINT nChannel; /// ??????? UINT nRemoteChannel; /// ?????? NET_TIME stuBackupStartTime; /// ????????????? NET_TIME stuBackupEndTime; /// ????????????? ENUM_RECORDBACKUP_FILE_TYPE emFileType; /// ??????? NET_STREAM_TYPE emStreamType; /// ??????? EM_RECORD_BACKUP_FAILURE_TYPE emResson; /// ????? char reserved[256]; /// ?????? }ALARM_RECORD_BACKUP_FAILURE_INFO; ///@brief ???????DH_ALARM_COAXIAL_HIGH_TEMPERATURE (???????????) ????????????????? typedef struct tagALARM_COAXIAL_HIGH_TEMPERATURE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nAlarmChannel; /// ????????????? char szName[128]; /// ???????? float fValue; /// ???????,??????????? BYTE byReserved[1024]; /// ?????? } ALARM_COAXIAL_HIGH_TEMPERATURE_INFO; ///@brief ???????DH_ALARM_COAXIAL_LOW_TEMPERATURE (??????????) ????????????????? typedef struct tagALARM_COAXIAL_LOW_TEMPERATURE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nAlarmChannel; /// ????????????? char szName[128]; /// ???????? float fValue; /// ???????,??????????? BYTE byReserved[1024]; /// ?????? } ALARM_COAXIAL_LOW_TEMPERATURE_INFO; ///@brief ???????DH_ALARM_CHANNEL_RECSHORTAGE (????????????????????) ????????????????? typedef struct tagALARM_CHANNEL_RECSHORTAGE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; int nDays; /// ??????? DWORD dwTime; /// ???????????????????UTC????????? char byReserved[1024]; /// ?????? } ALARM_CHANNEL_RECSHORTAGE_INFO; ///@brief ???????DH_ALARM_SECURITY_INSPECTOR_OVERTIME_ON_DUTY (??????????????) ????????????????? typedef struct tagALARM_SECURITY_INSPECTOR_OVERTIME_ON_DUTY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuUTC; /// ???????????? char szUserName[128]; /// ????????? char szReserved[1024]; /// ?????? } ALARM_SECURITY_INSPECTOR_OVERTIME_ON_DUTY_INFO; ///@brief ???????DH_ALARM_SECURITY_INSPECTOR_NOT_CONFIRM_PACKAGE (????????????????) ????????????????? typedef struct tagALARM_SECURITY_INSPECTOR_NOT_CONFIRM_PACKAGE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuUTC; /// ???????????? char szUserName[128]; /// ????????? char szReserved[1024]; /// ?????? } ALARM_SECURITY_INSPECTOR_NOT_CONFIRM_PACKAGE_INFO; ///@brief ???????DH_ALARM_SMOKING_DETECT (??????????????) ????????????????? typedef struct tagNET_ALARM_SMOKING_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? int nDetectRegionNum; /// ????????????? NET_POINT_EX stuDetectRegion[20]; /// ?????????? DH_MSG_OBJECT stuObject; /// ????????? SCENE_IMAGE_INFO stuSceneImageInfo; /// ??????? char szUserName[32]; /// ??????? UINT nPresetID; /// ??????????????,??1???, 0?????? char szReserved[1020]; /// ??????? } NET_ALARM_SMOKING_DETECT_INFO; ///@brief ??????? DH_ALARM_SITE_OVERTIME_ALARM (????????) ????????????????? typedef struct tagNET_ALARM_SITE_OVERTIME_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nDepartureID; /// ?????ID int nTerminusID; /// ?????ID NET_TIME stuStartTimeUTC; /// ???????????????????UTC NET_TIME stuEndTimeUTC; /// ???????????????????UTC UINT nTimeLimit; /// ??????????????????? UINT nDriveTime; /// ??????????????????? char szReserved[1024]; /// ??????? }NET_ALARM_SITE_OVERTIME_ALARM_INFO; ///@brief ??????? DH_ALARM_SMART_SOUND_DETECT (??????????????)????????????????? typedef struct tagNET_ALARM_SMART_SOUND_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? UINT nACK; /// ????????ID int nGroupID; /// GroupID?????ID????????????????GroupID??? NET_TIME stuStartTime; /// ?????? UINT nEventID; /// ??????????????????????? NET_TIME_EX stuUTC; /// ???????????? double dbPTS; /// ??????????,???????? EM_AUDIO_MUTATION_ALARM_TYPE emType; /// ???????? int nAlarmChannel; /// ?????????????, ??0???, -1?????? char szName[32]; /// ??????? char szReserved[1024]; /// ?????? }NET_ALARM_SMART_SOUND_DETECT_INFO; ///@brief ??????? DH_ALARM_REQ_WORK_TIME_CALC (?????????????)????????????????? typedef struct tagNET_ALARM_REQ_WORK_TIME_CALC_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szUserID[32]; /// ?????? char szUserName[128]; /// ??????? int nType; /// ????????, -1: ???, 0: ??????????, 1: ????????? float fOverTime; /// ??????, nType?1????? NET_TIME stuCurrentTime; /// ?????? NET_TIME stuWorkStartTime; /// ???????????type?1?????? char szReserved[976]; /// ?????? }NET_ALARM_REQ_WORK_TIME_CALC_INFO; ///@brief ??????? DH_ALARM_XRAY_EMERGENCY_ALARM (X?????????????)????????????????? typedef struct tagNET_ALARM_XRAY_EMERGENCY_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1024]; /// ?????? }NET_ALARM_XRAY_EMERGENCY_ALARM_INFO; ///@brief ???????????? typedef struct tagNET_SPECIAL_FILE_UPLOAD_INFO { UINT nFormat; /// ????????????, 0: ??? 1: ??? 2: ??? 3: ?? char szFileType[32]; /// ?????????? char szUniqueID[128]; /// ?????????????? char szFilePath[260]; /// ??????? UINT nLength; /// ??????? NET_TIME stuAlarmRealUTC; /// ??????????????????? char szReserved[256]; /// ?????? }NET_SPECIAL_FILE_UPLOAD_INFO; ///@brief ??????? DH_ALARM_SPECIAL_FILE_DELAY_UPLOAD (??????????????)????????????????? typedef struct tagNET_ALARM_SPECIAL_FILE_DELAY_UPLOAD_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szUploadSeq[128]; /// ?????? int nFilesNum; /// ????????????????? NET_SPECIAL_FILE_UPLOAD_INFO stuFiles[50]; /// ????????????? char szReserved[1024]; /// ?????? }NET_ALARM_SPECIAL_FILE_DELAY_UPLOAD_INFO; /****************************** ???????????? ******************************/ ///@brief ???????DH_ALARM_XRAY_PIP_COMMUNICATION_ABNORMITY (X????????????????) ????????????????? typedef struct tagALARM_XRAY_PIP_COMMUNICATION_ABNORMITY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ?????? } ALARM_XRAY_PIP_COMMUNICATION_ABNORMITY_INFO; ///@brief ???????DH_ALARM_XRAY_ACQUISITION_SYSTEM_ABNORMITY (X??????????????????) ????????????????? typedef struct tagALARM_XRAY_ACQUISITION_SYSTEM_ABNORMITY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ?????? } ALARM_XRAY_ACQUISITION_SYSTEM_ABNORMITY_INFO; ///@brief ???????DH_ALARM_XRAY_EMERGENCY_STOP (X????????????) ????????????????? typedef struct tagALARM_XRAY_EMERGENCY_STOP_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ?????? } ALARM_XRAY_EMERGENCY_STOP_INFO; ///@brief ???????DH_ALARM_XRAY_DETECTOR_PROTECTION_OPEN (X??????????????????????) ????????????????? typedef struct tagALARM_XRAY_DETECTOR_PROTECTION_OPEN_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ?????? } ALARM_XRAY_DETECTOR_PROTECTION_OPEN_INFO; ///@brief X???????????? typedef enum tagEM_XRAY_SHELL_OPEN_POSITION { EM_XRAY_SHELL_OPEN_POSITION_UNKNWON = -1, /// ??? EM_XRAY_SHELL_OPEN_POSITION_INSENSITIVE, /// ?????????? EM_XRAY_SHELL_OPEN_POSITION_A_LEFT, /// A?????????A???????? EM_XRAY_SHELL_OPEN_POSITION_A_RIGHT, /// A?????????A???????? EM_XRAY_SHELL_OPEN_POSITION_B_LEFT, /// B?????????B???????? EM_XRAY_SHELL_OPEN_POSITION_B_RIGHT /// B?????????B???????? } EM_XRAY_SHELL_OPEN_POSITION; ///@brief ???????DH_ALARM_XRAY_MACHINE_SHELL_OPEN (X???????????) ????????????????? typedef struct tagALARM_XRAY_MACHINE_SHELL_OPEN_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? EM_XRAY_SHELL_OPEN_POSITION nPosition[32]; /// ????????? int nPositionCnt; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ?????? } ALARM_XRAY_MACHINE_SHELL_OPEN_INFO; ///@brief ???????DH_ALARM_XRAY_KEYBOARD_ABNORMITY (X???????????????????) ????????????????? typedef struct tagALARM_XRAY_KEYBOARD_ABNORMITY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ?????? } ALARM_XRAY_KEYBOARD_ABNORMITY_INFO; ///@brief ???????DH_ALARM_XRAY_TRANSMISSION_BELT_ABNORMITY (X????????????????) ????????????????? typedef struct tagALARM_XRAY_TRANSMISSION_BELT_ABNORMITY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? char szReserved[1024]; /// ?????? } ALARM_XRAY_TRANSMISSION_BELT_ABNORMITY_INFO; ///@brief ???????DH_ALARM_POWER_GROUND_DETECTION_ABNORMAL (X??????????????) ????????????????? typedef struct tagALARM_POWER_GROUND_DETECTION_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? char szReserved[1024]; /// ?????? } ALARM_POWER_GROUND_DETECTION_ABNORMAL_INFO; ///@brief X??????????? typedef enum tagEM_XRAY_COMM_ABNORMITY_TYPE { EM_XRAY_COMM_ABNORMITY_TYPE_UNKNWON = -1, /// ??? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_SUPERVISION_FAILURE, /// ??????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_INTERLOCK_FAILURE, /// ????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_HIGH_NEGATIVE_PRESSURE, /// ???????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_HIGH_POSITIVE_PRESSURE, /// ???????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_HIGH_TEMPERATURE, /// ??????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_ARC_FAULT, /// ??????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_OVERCURRENT, /// ????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_POWER_LIMIT, /// ????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_HIGH_VOLTAGE, /// ???????????? EM_XRAY_COMM_ABNORMITY_TYPE_COMMUNICATION_ERROR1, /// ????????????????? EM_XRAY_COMM_ABNORMITY_TYPE_COMMUNICATION_ERROR2, /// ???????????????? EM_XRAY_COMM_ABNORMITY_TYPE_COMMUNICATION_ERROR3, /// ?????????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SENSOR1_A_BLOCKED, /// A??????????????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SENSOR1_B_BLOCKED, /// B??????????????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SENSOR2_A_BLOCKED, /// A???????????????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SENSOR2_B_BLOCKED, /// B???????????????????????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_UNDERVOLTAGE, /// ??????? EM_XRAY_COMM_ABNORMITY_TYPE_SOURCE_UNDERCURRENT, /// ???????? EM_XRAY_COMM_ABNORMITY_TYPE_MOTOR_OVERHEATED /// ??????? } EM_XRAY_COMM_ABNORMITY_TYPE; ///@brief ???????DH_ALARM_XRAY_SOURCE_ABNORMITY ??X???X????????????????) ????????????????? typedef struct tagALARM_XRAY_SOURCE_ABNORMITY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? unsigned int nEventID; /// ???ID double dbPTS; /// ????(?????????) char szName[128]; /// ??????? EM_XRAY_COMM_ABNORMITY_TYPE nAbnormalDetail[32]; /// X??????????? int nAbnormalDetailCnt; /// X?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ?????? } ALARM_XRAY_SOURCE_ABNORMITY_INFO; ///@brief ?????? typedef struct tagRELATED_IMAGE { UINT nImageType; /// ?????? 0??????????????????? 1?????????????? UINT nOffset; /// ??????????????????? UINT nLength; /// ??????,????????? char szReserved[128]; /// ?????? }RELATED_IMAGE; ///@brief ??????? typedef struct tagIDENTITY_INFO { char szCitizenName[128]; /// ???????? EM_SEX_TYPE emSex; /// ??? char szCitizenIDNo[20]; /// ?????18?? UINT nAge; /// ???? char szReserved[512]; /// ?????? }IDENTITY_INFO; ///@brief ??????? typedef enum tagEM_PROCESS_MODE { EM_PROCESS_MODE_UNKNOWN = -1, /// ??? EM_PROCESS_MODE_ABANDON_ONESELF, /// ???? EM_PROCESS_MODE_RELEASE, /// ???? EM_PROCESS_MODE_STORAGE_OF_ARTICLES, /// ??????? EM_PROCESS_MODE_TRANSFER_TO_SECURITY, /// ??????? EM_PROCESS_MODE_DISCRETION, /// ???????? EM_PROCESS_MODE_FALSE_ALARM, /// ?? }EM_PROCESS_MODE; ///@brief ???????????? typedef struct tagNET_XRAY_INSIDE_ONJECT_TYPE { char szObjType[32]; /// ???????? char byReserved[256]; /// ??????? }NET_XRAY_INSIDE_ONJECT_TYPE; ///@brief ?????????? typedef struct tagUNPACKING_CHECK_INFO { UINT nUTC; /// ???????????????????UTC????????? UINT nUTCMS; /// ??????????? char szPackageTag[32]; /// ????????????????????????????? RELATED_IMAGE stuRelatedImage[64]; /// ?????? int nRelatedImageRetNum; /// ?????????? UINT nAlarmTime; /// ???????UTC????????? IDENTITY_INFO stuIdentityInfo; /// ??????? char szContrabandClass[16][32]; /// ???????????? int nContrabandRetNum; /// ??????? EM_PROCESS_MODE emProcessMode; /// ??????? char szChecker[128]; /// ??????????????? char szAlarmLocation[256]; /// ??????? EM_INSIDE_OBJECT_TYPE emContrabandClass[64]; /// ??????? char szPlaceOfDeparture[256]; /// ????????? char szDestination[256]; /// ???????? NET_XRAY_INSIDE_ONJECT_TYPE stuContrabandClass[64]; /// ???????????? char szReserved[256]; /// ?????? }UNPACKING_CHECK_INFO; ///@brief ??????? EVENT_IVS_XRAY_UNPACKING_CHECK (X??????????)????????????????? typedef struct tagDEV_EVENT_XRAY_UNPACKING_CHECK_INFO { int nChannelID; /// ????? int nAction; /// ???????,0?????????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????(?????????) UNPACKING_CHECK_INFO stuCheckInfo; /// ?????????? int nEventID; /// ???ID char szReserved[1024]; /// ?????? }DEV_EVENT_XRAY_UNPACKING_CHECK_INFO; ///@brief ?????????? typedef struct tagNET_BLIND_SPOT_DETECTION_OBJECT_INFO { float fLateralDistance; /// ???????, ????: ?? DH_MSG_OBJECT stuObject; /// ????????? char szReserved[256]; /// ??????? } NET_BLIND_SPOT_DETECTION_OBJECT_INFO; ///@brief ???????EVENT_IVS_DRIVE_BLIND_SPOT (?????????)????????????????? typedef struct tagDEV_EVENT_BLIND_SPOT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID UINT nAlarmLevel; /// ??????? int nObjectNum; /// ?????????? NET_BLIND_SPOT_DETECTION_OBJECT_INFO stuObjectInfo[32]; /// ?????????? char szVideoPath[256]; /// ??????????FTP??????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? int nTargetCount; /// ????/??????/????????????? UINT nEventType; /// ???????, 0:???, 1:???, 2:???, 3:???, 4:?? char szReserved[760]; /// ??????? } DEV_EVENT_BLIND_SPOT_DETECTION_INFO; /****************************** ????????????? ******************************/ ///@brief ???????????? typedef enum tagEM_WORKSUIT_ABSTRACT_ERRCODE { EM_WORKSUIT_ABSTRACT_ERRCODE_UNKNWON, /// ??? EM_WORKSUIT_ABSTRACT_ERRCODE_FAILED, /// ?????? EM_WORKSUIT_ABSTRACT_ERRCODE_SYSERR, /// ????????Licence????????????????????????????? EM_WORKSUIT_ABSTRACT_ERRCODE_DB_ERROR, /// ??????????? EM_WORKSUIT_ABSTRACT_ERRCODE_OVER_NUM, /// ??????????????? EM_WORKSUIT_ABSTRACT_ERRCODE_NO_STORAGE, /// ??????????????? } EM_WORKSUIT_ABSTRACT_ERRCODE; ///@brief ???????????? typedef struct tagNET_WORKSUIT_ABSTRACT_INFO { char szGroupID[64]; /// ????????ID UINT nProcess; /// ??????????,???? UINT nToken; /// ???????????token? UINT nSucceedCnt; /// ???????????????? UINT nFailedCnt; /// ??????????????? UINT nFailedSourceFileNamesNum; /// ????????????????????????? UINT nFailedSourceUIDNum; /// ??????????????????????????? char szFailedSourceFileNames[200][64]; /// ????????????????????? char szFailedSourceUID[200][64]; /// ??????????????????????? char szReserved1[4]; /// ?????? UINT nErrCodeNum; /// ??????????????? EM_WORKSUIT_ABSTRACT_ERRCODE emErrCode[200]; /// ???????????? char szReserved[1024]; /// ?????? } NET_WORKSUIT_ABSTRACT_INFO; ///@brief ???????DH_ALARM_WORKSUIT_FEATURE_ABSTRACT (???????????????????????)????????????????? typedef struct tagALARM_WORKSUIT_FEATURE_ABSTRACT_INFO { int nAction; /// ???????,0?????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? UINT nAbstractInfoNum; /// ????????????? NET_WORKSUIT_ABSTRACT_INFO stuAbstractInfo[20]; /// ???????????? char szReserved[1024]; /// ?????? } ALARM_WORKSUIT_FEATURE_ABSTRACT_INFO; ///@brief ???????DH_ALARM_RUN_DETECTION (?????????) ????????????????? typedef struct tagALARM_RUN_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_TIME_EX stuTime; /// ???????????? UINT UTCMS; /// ??????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nPresetID; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1020]; /// ??????? } ALARM_RUN_DETECTION_INFO; ///@brief ???????DH_ALARM_NONMOTOR_ENTRYING (??????????????) ????????????????? typedef struct tagALARM_NONMOTOR_ENTRYING_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID UINT nSequence; /// ??????? int nObjectNum; /// ?????? VA_OBJECT_NONMOTOR stuObjects[8]; /// ?????????? BYTE byReserved[1024]; /// ?????? } ALARM_NONMOTOR_ENTRYING_INFO; ///@brief ???????DH_ALARM_DISTANCE_DETECTION (????????) ????????????????? typedef struct tagALARM_DISTANCE_DETECTION_INFO { int nAction; /// ???????,0??????????,1?????????,2??????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) int nChannel; /// ????? NET_TIME_EX stuTime; /// ???????????? int nPresetID; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[508]; /// ??????? } ALARM_DISTANCE_DETECTION_INFO; ///@brief ???????DH_ALARM_STAY_DETECTION (??????) ????????????????? typedef struct tagALARM_STAY_DETECTION_INFO { int nAction; /// ???????,0??????????,1?????????,2??????????; int nEventID; /// ???ID double dbPTS; /// ????(?????????) int nChannel; /// ????? NET_TIME_EX stuTime; /// ???????????? int nGroupId; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? int nCount; /// ????????????? int nPresetID; /// ????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[508]; /// ??????? } ALARM_STAY_DETECTION_INFO; ///@brief ??????? DH_ALARM_AUTO_INSPECTION (?????????) ????????????????? typedef struct tagALARM_AUTO_INSPECTION { double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_TIME_EX stuStartTime; /// ???????????? BOOL bCheckResult; /// ????????,FALSE????,TRUE???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? }ALARM_AUTO_INSPECTION; ///@brief ??????? typedef enum tagEM_FACE_VERIFICATION_ACCESS_SNAP_TYPE { EM_FACE_VERIFICATION_ACCESS_SNAP_TYPE_UNKNOWN, /// ??????? EM_FACE_VERIFICATION_ACCESS_SNAP_TYPE_ENTRY, /// ???? EM_FACE_VERIFICATION_ACCESS_SNAP_TYPE_EXIT, /// ???? }EM_FACE_VERIFICATION_ACCESS_SNAP_TYPE; ///@brief ?????? typedef struct tagNET_PERSON_INFO { BOOL bCheckResult; /// ???????,????TRUE,????FALSE char szName[MAX_NAME_LENGTH]; /// ????,?????????? char szSnapURL[MAX_SNAP_URL_LEN]; /// ???????? BYTE byReserved[512]; /// ??????? }NET_PERSON_INFO; ///@brief ?????? typedef struct tagNET_GOOD_INFO { char szCode[MAX_CODE_LEN]; /// ?????? char szSnapURL[MAX_SNAP_URL_LEN]; /// ???????? BYTE byReserved[512]; /// ??????? }NET_GOOD_INFO; ///@brief ???????? typedef enum tagEM_OPERATION_TYPE { EM_OPERATION_TYPE_UNKNOWN, /// ??????? EM_OPERATION_TYPE_FETCH, /// ???? EM_OPERATION_TYPE_STORE, /// ????? EM_OPERATION_TYPE_EXCHANGE, /// ????? EM_OPERATION_TYPE_CHECK, /// ??? }EM_OPERATION_TYPE; ///@brief ??????? DH_ALARM_FACE_VERIFICATION_ACCESS_SNAP??????????????????????????????????????? typedef struct tagALARM_FACE_VERIFICATION_ACCESS_SNAP_INFO { double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nRecNo; /// ?????????AccessControl??????????????? EM_FACE_VERIFICATION_ACCESS_SNAP_TYPE emEventType; /// ??????? NET_PERSON_INFO stuPersonInfo[MAX_PERSON_INFO_NUM]; /// ?????? int nRetPersonInfoNum; /// ??????????????? NET_GOOD_INFO stuGoodInfo[MAX_GOOD_INFO_NUM]; /// ?????? int nRetGoodInfoNum; /// ??????????????? EM_OPERATION_TYPE emOperation; /// ???????? BYTE byReserved[1020]; /// ??????? }ALARM_FACE_VERIFICATION_ACCESS_SNAP_INFO; ///@brief ???????DH_ALARM_VIDEOBLIND(?????????)????????????????? typedef struct tagALARM_VIDEO_BLIND_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_TIME_EX stuStartTime; /// ??????,nAction?2????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? } ALARM_VIDEO_BLIND_INFO; ///@brief ???????DH_ALARM_DRIVER_NOTCONFIRM (???????????????????)????????????????? typedef struct tagALARM_DRIVER_NOTCONFIRM_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX stuTime; /// ???????????? double dbPTS; /// ????(?????????) BYTE byReserved[512]; /// ??????? } ALARM_DRIVER_NOTCONFIRM_INFO; ///@brief ??????? DH_ALARM_VIOLATE_NO_FLY_TIME (???????????) ????????????????? typedef struct tagALARM_VIOLATE_NO_FLY_TIME_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX stuTime; /// ???????????? double dbPTS; /// ????(?????????) BYTE byReserved[512]; /// ??????? }ALARM_VIOLATE_NO_FLY_TIME_INFO; ///@brief ??????? DH_ALARM_BOX_ALARM (?????????????????????)????????????????? typedef struct tagALARM_BOX_ALARM_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID char szAlarmChannelName[DH_COMMON_STRING_64]; /// ??????????? int nAlarmBoxIndex; /// ??????????????????????????,??0??? int nAlarmIndex; /// ???????????????????0??? BYTE byReserved[1016]; /// ??????? }ALARM_BOX_ALARM_INFO; ///@brief ??????? DH_ALARM_SOSALERT typedef struct tagALARM_SOSALERT_INFO { int nChannelID; /// ????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ?????????? char szPlateNumber[DH_COMMON_STRING_128]; /// ???????? NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? BYTE byReserved[1024]; /// ??????? }ALARM_SOSALERT_INFO; ///@brief ??????? DH_ALARM_GYROABNORMALATTITUDE typedef struct tagALARM_GYROABNORMALATTITUDE_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ?????????? int nEventID; /// ???ID double dbGyroCurRoll; /// ?????????????????? double dbGyroCurPitch; /// ?????????????????? double dbGyroCurAccel; /// ???????????????m/s^2 BYTE byReserved[1024]; /// ??????? }ALARM_GYROABNORMALATTITUDE_INFO; ///@brief ???????DH_ALARM_ALARMOUTPUT(??????????????)????????????????? typedef struct tagALARM_ALARMOUTPUT_INFO { int nAction; /// ???????,1:Start 2:Stop NET_TIME_EX UTC; /// ?????????? int nChannel; /// ????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? UTC ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? }ALARM_ALARMOUTPUT_INFO; ///@brief ???????DH_ALARM_PSTNREPORTFAILURE(???????????????)????????????????? typedef struct tagALARM_PSTNREPORTFAILURE_INFO { NET_TIME_EX UTC; ///???????????? }ALARM_PSTNREPORTFAILURE_INFO; ///@brief ?????????????????? typedef enum tagGSMFIELD_FAULT_TYPE { GSMFIELD_FAULT_UNKNOWN, ///??? GSMFIELD_FAULT_GSMModule, ///????????? GSMFIELD_FAULT_SIMCard, ///????SIM?? }GSMFIELD_FAULT_TYPE; ///@brief ???????DH_ALARM_NOGSMFIELD(????????????sim??????)??????????????? typedef struct tagALARM_NOGSMFIELD_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ?????????? GSMFIELD_FAULT_TYPE emFaultType; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_NOGSMFIELD_INFO; ///@brief ???????DH_ALARM_MOTION_RECORD_ALARM(???????????)??????????????? typedef struct tagALARM_MOTION_RECORD_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannel; /// ??? BOOL bMotionIsOpen; /// ?????????? BOOL bRecordIsOpen; /// ?????????? BYTE byReserved[512]; /// ??????? }ALARM_MOTION_RECORD_INFO; ///@brief ???????DH_ALARM_FACEINFO_COLLECT (????????????)????????????????? typedef struct tagALARM_FACEINFO_COLLECT_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX stuTime; /// ???????????? double dbPTS; /// ????(?????????) char szUserID[DH_MAX_USERID_LEN]; /// ???ID BYTE byReserved[512]; /// ??????? } ALARM_FACEINFO_COLLECT_INFO; ///@brief ???????DH_ALARM_HIGH_SPEED (??????????????)????????????????? typedef struct tagALARM_HIGH_SPEED_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX stuTime; /// ???????????? double dbPTS; /// ????(?????????) NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? int nSpeedLimit; /// ?????????km/h int nCurSpeed; /// ??????????km/h int nMaxSpeed; /// ??????Km/h NET_TIME_EX stuStartTime; /// ??????,nAction?2????????? char szDriverID[32]; /// ???ID float fOverSpeedMileage; /// ??????? BYTE byReserved[436]; /// ??????? } ALARM_HIGH_SPEED_INFO; ///@brief ????????? typedef enum tagEM_NET_VIFORMAT_TYPE { EM_NET_VIFORMAT_TYPE_UNKNOWN = -1, /// ??? EM_NET_VIFORMAT_TYPE_NORMAL, /// ???????????? EM_NET_VIFORMAT_TYPE_UNSUPPORT, /// ????????????? EM_NET_VIFORMAT_TYPE_NOT_CONNECTED, /// ?????????? } EM_NET_VIFORMAT_TYPE; ///@brief ???????DH_ALARM_VIDEO_LOSS (?????????)????????????????? typedef struct tagALARM_VIDEO_LOSS_INFO { int nAction; /// ???????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) BYTE byReserved1[4]; /// ?????? NET_TIME_EX stuTime; /// ???????????? NET_TIME_EX stuStartTime; /// ??????,nAction?2????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? EM_NET_VIFORMAT_TYPE emViFormat; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1020]; /// ??????? } ALARM_VIDEO_LOSS_INFO; ///@brief ??????? DH_ALARM_SMARTHOME_GET_AUTHORIZED (????????????????????????)????????????????? typedef struct tagALARM_SMARTHOME_GET_AUTHORIZED { int nAction; /// 0:???? 1:??? 2:?? NET_TIME_EX UTC; /// ???????????? BOOL bIsTest; /// ???????????????; TRUE: ????????????, FALSE:???????????? char byReserved[1020]; /// ?????? }ALARM_SMARTHOME_GET_AUTHORIZED; ///@brief ??????? DH_ALARM_SMARTHOME_UPDATE_SCENE (??????????????????????????????)????????????????? typedef struct tagALARM_SMARTHOME_UPDATE_SCENE { int nAction; /// 0:???? 1:??? 2:?? NET_TIME_EX UTC; /// ???????????? char byReserved[1024]; /// ?????? }ALARM_SMARTHOME_UPDATE_SCENE; ///@brief ASG ???????? typedef enum tagEM_ASG_ALARM_TYPE { EM_ASG_ALARM_BREAK_UNKNOWN, /// ??? EM_ASG_ALARM_BREAK_DOWN, /// ???? EM_ASG_ALARM_ANTI_DEMOLITION, /// ???? EM_ASG_ALARM_FOLLOW, /// ???? EM_ASG_ALARM_TIMEOUT, /// ??? EM_ASG_ALARM_STAY, /// ???? EM_ASG_ALARM_FORCIBLY_OPEN, /// ???????? EM_ASG_ALARM_MISTAKENLY_ENTER, /// ?? EM_ASG_ALARM_REVERSE_ENTER, /// ?? EM_ASG_ALARM_CLIMB, /// ??? EM_ASG_ALARM_TWO_WAY_CONFLICT, /// ?????????????? EM_ASG_ALARM_POWER_ON_SELF_TEST_FAILED, /// ??????????????? }EM_ASG_ALARM_TYPE; ///@brief ??????? DH_ALARM_ASG (ASG????)????????????????? typedef struct tagALARM_ASG_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? EM_ASG_ALARM_TYPE emAlarmType; /// ???????? char byReserved[1024]; /// ?????? }ALARM_ASG_INFO; ///@brief ??????? DH_ALARM_ASGSTAY (??????????????) ????????????????? typedef struct tagALARM_ASGSTAY_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1020]; /// ?????? } ALARM_ASGSTAY_INFO; ///@brief ??????? DH_ALARM_ASGFOLLOWING (?????????????) ????????????????? typedef struct tagALARM_ASGFOLLOWING_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1020]; /// ?????? } ALARM_ASGFOLLOWING_INFO; ///@brief ??????? DH_ALARM_ASGCLIMBOVER (?????????????) ????????????????? typedef struct tagALARM_ASGCLIMBOVER_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1020]; /// ?????? } ALARM_ASGCLIMBOVER_INFO; ///@brief ???????? typedef enum tagEM_ASGBREAKDOWN_ALARM_TYPE { EM_ASGBREAKDOWN_ALARM_TYPE_UNKNOWN, /// ??? EM_ASGBREAKDOWN_ALARM_TYPE_INFRARED, /// ???? EM_ASGBREAKDOWN_ALARM_TYPE_COMMUNICATION, /// ?? EM_ASGBREAKDOWN_ALARM_TYPE_DOOR_WING, /// ???? } EM_ASGBREAKDOWN_ALARM_TYPE; ///@brief ??????? DH_ALARM_ASGBREAKDOWN (??????????) ????????????????? typedef struct tagALARM_ASGBREAKDOWN_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? EM_ASGBREAKDOWN_ALARM_TYPE emAlarmType; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1016]; /// ?????? } ALARM_ASGBREAKDOWN_INFO; ///@brief ??????? DH_ALARM_PARKING_OVERLOAD (????????????) ????????????????? typedef struct tagALARM_PARKING_OVERLOAD_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID char szName[128]; /// ??????? UINT nParkingCapacity; /// ???????????? UINT nTotalParkingCount; /// ???????????? DEV_OCCUPIED_WARNING_INFO stuParkingInfo[64]; /// ?????????? BYTE byReserved[2048]; /// ?????? } ALARM_PARKING_OVERLOAD_INFO; ///@brief ??????? DH_ALARM_LIFTCONTROL_REQUEST (??????) ????????????????? typedef struct tagALARM_LIFTCONTROL_REQUEST_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? NET_ACCESS_DOOROPEN_METHOD emDoorOpenMethod; /// ?????? char szUserID[32]; /// ???ID char szSrcAddr[64]; /// ????????IP??? char byReserved[1024]; /// ?????? }ALARM_LIFTCONTROL_REQUEST_INFO; ///@brief ??????? DH_ALARM_REMOTE_DEVICE_GPS (??????GPS???) ????????????????? typedef struct tagALARM_REMOTE_DEVICE_GPS_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? char byReserved[1024]; /// ?????? }ALARM_REMOTE_DEVICE_GPS_INFO; ///@brief ?????????????? typedef enum tagEM_ENTRANCE_STAT_DEVICE_TYPE { EM_ENTRANCE_STAT_DEVICE_TYPE_UNKNOWN, /// ??? EM_ENTRANCE_STAT_DEVICE_TYPE_RADAR, /// ??? EM_ENTRANCE_STAT_DEVICE_TYPE_STROBE, /// ??? EM_ENTRANCE_STAT_DEVICE_TYPE_CAMERA, /// ??? }EM_ENTRANCE_STAT_DEVICE_TYPE; ///@brief ??????? DH_ALARM_ENTRANCE_CAR_STAT_INFO (??????????????????) ????????????????? typedef struct tagALARM_ENTRANCE_CAR_STAT_INFO { int nAction; /// 0:???? int nChannelID; /// ????? char szName[128]; /// ??????? NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nCarCount; /// ??????????????????? EM_ENTRANCE_STAT_DEVICE_TYPE emStatDeviceType; /// ?????????? char byReserved[1024]; /// ?????? }ALARM_ENTRANCE_CAR_STAT_INFO; ///@brief ?????? typedef enum tagEM_ASG_ROLE_TYPE { EM_ASG_ROLE_TYPE_UNKNOWN, /// ??? EM_ASG_ROLE_TYPE_MASTER, /// ???? EM_ASG_ROLE_TYPE_SLAVE, /// ??? }EM_ASG_ROLE_TYPE; ///@brief ??????? DH_ALARM_ASG_INTRUDED (?????????????) ????????????????? typedef struct tagALARM_ASG_INTRUDED_INFO { int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? int nASGChannel; /// ???????? EM_ASG_ROLE_TYPE emASGRole; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1024]; /// ?????? }ALARM_ASG_INTRUDED_INFO; ///@brief ??????? DH_ALARM_ASG_ANTIPINCH (??????????????) ????????????????? typedef struct tagALARM_ASG_ANTIPINCH_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? char byReserved[1024]; /// ?????? } ALARM_ASG_ANTIPINCH_INFO; ///@brief ??????? DH_ALARM_IDCARDINFO_CHECK (????????????????????) ????????????????? typedef struct tagALARM_IDCARDINFO_CHECK_INFO { int nChannel; /// ??? int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? BYTE byReserved1[4]; /// ?????? char szCitizenID[64]; /// ????? char szCitizenName[64]; /// ???? char szIssueAuthority[128]; /// ??????? char szCitizenAddress[128]; /// ?????? NET_TIME stuBirthDay; /// ????????????????????? NET_TIME stuBeginValidTime; /// ?????????????????????????? NET_TIME stuEndValidTime; /// ??????????????????????????? char szLatestAddress[128]; /// ?????? EM_CITIZENIDCARD_EC_TYPE emMZ; EM_CITIZENIDCARD_SEX_TYPE emSex; /// ??? char byReserved[1024]; /// ?????? }ALARM_IDCARDINFO_CHECK_INFO; ///@brief SIP???????? typedef struct tagNET_SIP_REGISTER_USER_INFO { char szID[32]; /// SIP???????? char szIpAddr[32]; /// ????IP??? UINT nPort; /// ????? BOOL bOnline; /// ?????????????????????????bOnline=TRUE??????bOnline=FALSE char szDevType[32]; /// ???????????? char szVtoType[32]; /// VTO?????????? char szUserAgent[32]; /// ??????????? char szGroupNbr[32]; /// ??????????? char szReserved[512]; /// ?????? }NET_SIP_REGISTER_USER_INFO; ///@brief ??????? DH_ALARM_SIP_REGISTER_RESULT(????????) ????????????????? typedef struct tagALARM_SIP_REGISTER_RESULT_INFO { int nChannelID; /// ??? int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? BOOL bSuccess; /// ????? char szDate[32]; /// ??????????????? NET_SIP_REGISTER_USER_INFO stuUserInfo; /// SIP???????? char szReserved[1024]; /// ?????? }ALARM_SIP_REGISTER_RESULT_INFO; ///@brief ??????? typedef struct tagNET_GESTURE_INFO { char szType[32]; /// ???????? UINT nCount; /// ???????????? char szReserved[256]; /// ?????? }NET_GESTURE_INFO; ///@brief ??????? DH_ALARM_GESTURE_DETECTION(?????????) ????????????????? typedef struct tagALARM_GESTURE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID NET_GESTURE_INFO stuGestureInfo; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? char szReserved[1024]; /// ?????? }ALARM_GESTURE_DETECTION_INFO; ///@brief ??????? DH_ALARM_ABNORMAL_RESTART(?????????) ????????????????? typedef struct tagALARM_ABNORMAL_RESTART_INFO { int nChannelID; /// ????? int nAction; /// 0:???? UINT uAlarmCode; /// ???????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1024]; /// ?????? }ALARM_ABNORMAL_RESTART_INFO; ///@brief ?????? typedef enum tagEM_DEFENSE_STATE { EM_DEFENSE_STATE_UNKNOWN, /// ??? EM_DEFENSE_STATE_ARMING, /// ???? EM_DEFENSE_STATE_DISARMING, /// ???? }EM_DEFENSE_STATE; ///@brief ?????????????10?????? typedef struct tagNET_DEFENSE_STATE { EM_DEFENSE_STATE emState; /// ?????? int nDefenseID; /// ????ID char szReserved[256]; /// ?????? }NET_DEFENSE_STATE; ///@brief ??????? DH_ALARM_DEFENSE_CHANGE (?????????) ????????????????? typedef struct tagALARM_DEFENSE_CHANGE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nDefenseStateNum; /// ???????????? NET_DEFENSE_STATE stuDefenseState[10]; /// ?????????????10?????? int nSourceFlag; /// ?????????????????????(0???????1???????????) NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ?????? }ALARM_DEFENSE_CHANGE_INFO; ///@brief ??????????? typedef enum tagNET_COURSE_RECORD_UPLOAD_PROCESS_STATUS { NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS_UNKNOW, /// ???????? NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS_UPLOADING, /// ????? NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS_COMPLETE, /// ?????? NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS_FAILED /// ?????? }NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS; ///@brief ???????????????????? typedef enum tagNET_COURSE_RECORD_UPLOAD_ERROR_CODE { NET_COURSE_RECORD_UPLOAD_ERROR_CODE_UNKNOW = -1, /// ????????? NET_COURSE_RECORD_UPLOAD_NORMAL, /// ???? NET_COURSE_RECORD_UPLOAD_FAIL_OBTAIN_PUBLIC_KEY, /// ????????? NET_COURSE_RECORD_UPLOAD_FAIL_OBTAIN_TOKEN, /// ???token??? NET_COURSE_RECORD_UPLOAD_FAIL_OBTAIN_OSS_ADDRESS, /// ???OSS?????? NET_COURSE_RECORD_UPLOAD_FAIL_CONNECT_OSS_ADDRESS, /// OSS?????????? NET_COURSE_RECORD_UPLOAD_FAILED, /// ????????? NET_COURSE_RECORD_UPLOAD_RETURN_VALUE_ERROR /// ??????????????? }NET_COURSE_RECORD_UPLOAD_ERROR_CODE; ///@brief ???????????? typedef struct tagCOURSE_RECORD_UPLOAD_FILE_INFO { char szFilePath[256]; /// ????????? TP_U64 nFileTime; /// ???????????????? TP_U64 nFileLength; /// ??????????????Kb int nIndex; /// ?????? int nFileUploadProcess; /// ????????????????0~100% NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS emStatus; /// ?????????? NET_COURSE_RECORD_UPLOAD_ERROR_CODE emErrorCode; /// ?????????????? char byReserved[1008]; /// ?????? } COURSE_RECORD_UPLOAD_FILE_INFO; ///@brief ?????????? typedef enum tagEM_COURSE_RECORD_UPLOAD_RECORD_TYPE { EM_COURSE_RECORD_UPLOAD_RECORD_TYPE_UNKNOWN, /// ??? EM_COURSE_RECORD_UPLOAD_RECORD_TYPE_ORDINARY_RECORDING, /// ?????? EM_COURSE_RECORD_UPLOAD_RECORD_TYPE_INTERACTIVE_RECORDING, /// ??????? EM_COURSE_RECORD_UPLOAD_RECORD_TYPE_DEMONSTRATION, /// ??? }EM_COURSE_RECORD_UPLOAD_RECORD_TYPE; ///@brief ???????????????? typedef struct tagALARM_COURSE_RECORD_UPLOAD_INFO { int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? BOOL bUploadResult; /// ?????? int nFileNum; /// ????????????? COURSE_RECORD_UPLOAD_FILE_INFO stuFileInfo[64]; /// ???????????? UINT nId; /// ???????ID NET_TIME stuFileStartTime; /// ???????(??????)????????????????????????????????????????????????????????? NET_TIME stuFileEndTime; /// ???????(??????)??????????????????????????????????????????????????????????? NET_COURSE_RECORD_UPLOAD_PROCESS_STATUS emStatus; /// ????? UINT nFileId; /// ??????????id???????????????????????????id?? int nChannel; /// ???????????0??? char szCallID[64]; /// ????ID EM_COURSE_RECORD_UPLOAD_RECORD_TYPE emRecordType; /// ?????????? char byReserved[892]; /// ?????? } ALARM_COURSE_RECORD_UPLOAD_INFO; ///@brief ???????????????? typedef enum tagEM_APPOINTMENT_PROOF_TYPE { EM_APPOINTMENT_PROOF_TYPE_UNKNOWN, /// ??? EM_APPOINTMENT_PROOF_TYPE_CITIZENID, /// ??? EM_APPOINTMENT_PROOF_TYPE_APPOINTCODE, /// ???? }EM_APPOINTMENT_PROOF_TYPE; ///@brief ??????? DH_ALARM_REQUEST_APPOINTMENT_INFO (????????????) ????????????????? typedef struct tagALARM_REQUEST_APPOINTMENT_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? EM_APPOINTMENT_PROOF_TYPE emProofType; /// ?????? char szProofInfo[64]; /// ????? /// emProofType ? EM_APPOINTMENT_PROOF_TYPE_CITIZENID ??????????? /// emProofType ? EM_APPOINTMENT_PROOF_TYPE_APPOINTCODE ???????? UINT nUniqueID; /// ?????????? }ALARM_REQUEST_APPOINTMENT_INFO; ///@brief ???????? typedef enum tagEM_VIDEO_COLLECT_MODE { EM_VIDEO_COLLECT_MODE_UNKNOWN, /// ??? EM_VIDEO_COLLECT_MODE_NON, /// ????? EM_VIDEO_COLLECT_MODE_SINGLE, /// ??????? EM_VIDEO_COLLECT_MODE_INTERVAL, /// ???????? EM_VIDEO_COLLECT_MODE_CONTINUOUSLY, /// ??????? }EM_VIDEO_COLLECT_MODE; ///@brief ??????? DH_ALARM_REQUEST_RECORD (?????????????) ????????????????? typedef struct tagALARM_REQUEST_RECORD_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ??????????????????????? EM_VIDEO_COLLECT_MODE emCollectMode; /// ???????? int nCollectInterval; /// ???????????emCollectMode ? EM_VIDEO_COLLECT_MODE_INTERVAL ????? int nCollectDuration; /// ?????????????????emCollectMode ? EM_VIDEO_COLLECT_MODE_INTERVAL ????? BYTE byReserved[1020]; /// ?????? }ALARM_REQUEST_RECORD_INFO; ///@brief ??????? typedef enum tagEM_PICTURE_COLLECT_MODE { EM_PICTURE_COLLECT_MODE_UNKNOWN, /// ??? EM_PICTURE_COLLECT_MODE_NON, /// ????? EM_PICTURE_COLLECT_MODE_SINGLE, /// ??????? EM_PICTURE_COLLECT_MODE_INTERVAL, /// ???????? }EM_PICTURE_COLLECT_MODE; ///@brief ??????? DH_ALARM_REQUEST_SNAP (?????????????) ????????????????? typedef struct tagALARM_REQUEST_SNAP_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ??????????????????????? EM_PICTURE_COLLECT_MODE emCollectMode; /// ??????? int nCollectInterval; /// ??????????emCollectMode ? EM_PICTURE_COLLECT_MODE_INTERVAL ????? BYTE byReserved[1024]; /// ?????? }ALARM_REQUEST_SNAP_INFO; ///@brief ??????????????? typedef enum tagEM_PTZ_ABNORMAL_PRE_ACTION_TYPE { EM_PTZ_ABNORMAL_PRE_ACTION_TYPE_UNKNOWN, /// ??? EM_PTZ_ABNORMAL_PRE_ACTION_TYPE_NONE, /// ????? EM_PTZ_ABNORMAL_PRE_ACTION_TYPE_PATROL_TRACK, /// ??? EM_PTZ_ABNORMAL_PRE_ACTION_TYPE_HORIZONTAL_LINE_SCANNING, /// ????? EM_PTZ_ABNORMAL_PRE_ACTION_TYPE_CRUISE_GROUP, /// ????? EM_PTZ_ABNORMAL_PRE_ACTION_TYPE_HORIZONTAL_ROTATION, /// ????? }EM_PTZ_ABNORMAL_PRE_ACTION_TYPE; ///@brief ???????? typedef enum tagEM_PTZ_ABNORMAL_REASON_TYPE { EM_PTZ_ABNORMAL_REASON_TYPE_UNKNOWN, /// ??? EM_PTZ_ABNORMAL_REASON_TYPE_COMMUNICATION, /// ???? EM_PTZ_ABNORMAL_REASON_TYPE_STOP, /// ?? EM_PTZ_ABNORMAL_REASON_TYPE_OUT_OF_STEP, /// ??? }EM_PTZ_ABNORMAL_REASON_TYPE; ///@brief ??????? DH_ALARM_PTZ_ABNORMAL (???????????)????????????????? typedef struct tagALARM_PTZ_ABNORMAL_INFO { int nAction; /// 0:???? 1:??? 2:?? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? EM_PTZ_ABNORMAL_PRE_ACTION_TYPE emPtzAbnormalPreAction; /// ??????????? EM_PTZ_ABNORMAL_REASON_TYPE emPtzAbnormalReason; /// ???????? BYTE byReserved[1024]; /// ??????? }ALARM_PTZ_ABNORMAL_INFO; ///@brief ??????? DH_ALRAM_STORAGEFORMAT (??????????) typedef struct tagALARM_STORAGEFORMAT_INFO { int nAction; /// 1:??? 2:?? NET_TIME_EX UTC; /// ???????????? char szDeviceName[64]; /// ??????? char szPath[256]; /// ?????? int nResult; /// 0-???, 1-???, 2-??? BYTE byReserved[260]; /// ??????? }ALARM_STORAGEFORMAT_INFO; ///@brief ???????? typedef enum tagEM_CMD_TO_APP_TYPE { EM_CMD_TO_APP_TYPE_UNKNOWN, /// ??? EM_CMD_TO_APP_TYPE_UPGRADECUSTOM /// ????????????? } EM_CMD_TO_APP_TYPE; ///@brief ?????? typedef enum tagEM_APP_UPGRADE_STATE { EM_APP_UPGRADE_STATE_UNKNOWN, /// ??? EM_APP_UPGRADE_STATE_PREPARING, /// ??????? EM_APP_UPGRADE_STATE_DOWNLOADING, /// ???????????? EM_APP_UPGRADE_STATE_UPGRADING, /// ???????? EM_APP_UPGRADE_STATE_INVALID, /// ??????????? EM_APP_UPGRADE_STATE_FAILED, /// ??????? EM_APP_UPGRADE_STATE_SUCCEEDED, /// ??????? EM_APP_UPGRADE_STATE_CANCELLED, /// ??????? EM_APP_UPGRADE_STATE_NOT_ENOUGH_MEMORY, /// ?????? EM_APP_UPGRADE_STATE_FILE_UNMATCH, /// ??????????? EM_APP_UPGRADE_STATE_OEM_NOT_COMPARE, /// ????????OEM????????????? EM_APP_UPGRADE_STATE_UNMATCH_VERSION, /// ?????????????? EM_APP_UPGRADE_STATE_PART_UPGRADED, /// ?????????????????????????????? EM_APP_UPGRADE_STATE_SETURL, /// URL???????? } EM_APP_UPGRADE_STATE; ///@brief ??????? DH_ALARM_APPCMDSTATE (???????Dhop??App???) typedef struct tagALARM_APPCMDSTATE_INFO { int nAction; /// 1:??? 2:?? NET_TIME_EX UTC; /// ???????????? char szUUID[64]; /// ???????????????UUID EM_CMD_TO_APP_TYPE emCmdType; /// ???????? EM_APP_UPGRADE_STATE emState; /// ?????? int nProgress; /// ???????? BYTE byReserved[508]; /// ??????? }ALARM_APPCMDSTATE_INFO; ///@brief ??????? DH_ALARM_BLUE_TOOTH_HEADSET_ALARM (????????"???????"???) typedef struct tagALARM_BLUE_TOOTH_HEADSET_ALARM_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID char szName[128]; /// ??????? char szDeviceSerialNum[32]; /// ????????? BYTE byReserved[256]; /// ??????? }ALARM_BLUE_TOOTH_HEADSET_ALARM_INFO; ///@brief ???????????? typedef struct tagSOLARCELL_BATTERY_INFO { int nElectricityQuantityPercent;/// ???????????????0~100?? float fVoltage; /// ???????????V?? float fTemperature; /// ????????????? float fControllerTemper; /// ????????????????? BYTE byReserved[256]; /// ??????? }SOLARCELL_BATTERY_INFO; ///@brief ????????? typedef struct tagSOLARCELL_PANEL_INFO { float fVoltage; /// ???????????V?? float fElectricCurrent; /// ????????????A?? float fChargingPower; /// ???H?? BYTE byReserved[252]; /// ??????? }SOLARCELL_PANEL_INFO; ///@brief ????????????????? typedef struct tagSOLARCELL_SYSTEM_HISTORY_INFO { int nSystemTotalRunDay; /// ????????????????? int nBatteryOverDischargeCount; /// ???????????? int nBatteryTotalChargeCount; /// ?????????????? BYTE byReserved[252]; /// ??????? }SOLARCELL_SYSTEM_HISTORY_INFO; ///@brief ?????????????? typedef enum tagEM_SOLARCELL_SYSTEM_FAULT_TYPE { EM_SOLARCELL_FAULT_UNKNOWN, /// ??? EM_SOLARCELL_FAULT_BATTERY_OVER_DISCHARGE, /// ?????? EM_SOLARCELL_FAULT_BATTERY_PRESSURE, /// ????? EM_SOLARCELL_FAULT_UNDERVOLTAGE_WARNING, /// ?????? EM_SOLARCELL_FAULT_LOAD_SHORT_CIRCUIT, /// ??????? EM_SOLARCELL_FAULT_EXCESSIVE_LOAD_ABNORMAL, /// ???????????????? EM_SOLARCELL_FAULT_CONTROLLER_TEMPERATURE_HIGH, /// ???????????? EM_SOLARCELL_FAULT_HIGH_EXTERNAL_TEMPERATURE, /// ???????????? EM_SOLARCELL_FAULT_EXCESSIVE_INPUT_POWER, /// ???????????? EM_SOLARCELL_FAULT_INPUT_SHORT_CIRCUIT, /// ??????????? EM_SOLARCELL_FAULT_INPUT_TERMINAL_OVERPRESSURE, /// ?????????? EM_SOLARCELL_FAULT_SOLAR_PLATE_COUNTERCURRENT, /// ????????? EM_SOLARCELL_FAULT_SOLAR_PLATE_OVERPRESSURE, /// ??????????? EM_SOLARCELL_FAULT_REVERSE_CONNECTION_OF_SOLAR_PANEL, /// ???????? EM_SOLARCELL_FAULT_ANTI_REVERSE_MOS_SHORT, /// Anti-reverse MOS short EM_SOLARCELL_FAULT_CIRCUIT_CHARGE_MOS_SHORT_CIRCUI, /// Circuit,charge MOS short circui }EM_SOLARCELL_SYSTEM_FAULT_TYPE; ///@brief ??????? DH_ALARM_SOLARCELL_SYSTEM_INFO(?????????????) typedef struct tagALARM_SOLARCELL_SYSTEM_INFO { int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) SOLARCELL_BATTERY_INFO stuBatteryInfo; /// ??????? SOLARCELL_PANEL_INFO stuSolarPanel; /// ????????? SOLARCELL_SYSTEM_HISTORY_INFO stuHistoryInfo; /// ?????????? EM_SOLARCELL_SYSTEM_FAULT_TYPE emSystemFault[32]; /// ?????? int nSystemFault; /// ????????? BYTE byReserved[1020]; /// ??????? }ALARM_SOLARCELL_SYSTEM_INFO; ///@brief ??????? DH_ALARM_REGION_PARKING_TIMEOUT(????????????) typedef struct tagALARM_REGION_PARKING_TIMEOUT_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? NET_TIME_EX stuCarInParkingLotTime;/// ???????????????(????????) char szPlateNumber[64]; /// ??????? char szInParkRegionInfo[128];/// ?????????? BYTE byReserved[1024]; /// ??????? }ALARM_REGION_PARKING_TIMEOUT_INFO; ///@brief ??????? DH_ALARM_REGION_PARKING_NO_ENTRY_RECORD(????????????????????) typedef struct tagALARM_REGION_PARKING_NO_ENTRY_RECORD_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? NET_TIME_EX stuCarOutParkingSpaceTime;/// ???????????????????(????????) char szPlateNumber[64]; /// ??????? char szInParkRegionInfo[128];/// ?????????? BYTE byReserved[1024]; /// ??????? }ALARM_REGION_PARKING_NO_ENTRY_RECORD_INFO; ///@brief ??????? DH_ALARM_OVER_LOAD(????) typedef struct tagALARM_OVER_LOAD_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? UINT nEnteredTotal; /// ???????? UINT nExitedTotal; /// ?????? UINT nInsideTotal; /// ???????? BYTE byReserved[1024]; /// ??????? }ALARM_OVER_LOAD_INFO; ///@brief ???????????????? typedef enum tagEM_WIRELESS_DATA_TYPE { EM_WIRELESS_DATA_TYPE_UNKNOWN, /// ??? EM_WIRELESS_DATA_TYPE_BINARY, /// ?????? EM_WIRELESS_DATA_TYPE_LOG, /// ??? }EM_WIRELESS_DATA_TYPE; ///@brief ??????? DH_ALARM_WIRELESS_LOG_INFO????????????????????????? typedef struct tagALARM_WIRELESS_LOG_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? EM_WIRELESS_DATA_TYPE emDataType; /// ???????? char szBinaryData[1024]; /// ???????????emDataType ? EM_WIRELESS_DATA_TYPE_BINARY ?????? char szLogInfo[2048]; /// ??????(emDataType ? EM_WIRELESS_DATA_TYPE_LOG ????) }ALARM_WIRELESS_LOG_INFO; ///@brief ??????? DH_ALARM_TIME_TO_POWEROFF (?????????????????????????????) typedef struct tagALARM_TIME_TO_POWEROFF_INFO { int nAction; /// 0:???? int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? UINT nCountdown; /// ????????????, ???????? }ALARM_TIME_TO_POWEROFF_INFO; ///@brief ??????????? typedef enum tagEM_FAULT_DETECT_SOURCE_TYPE { EM_FAULT_DETECT_SOURCE_TYPE_UNKNOWN, /// ??? EM_FAULT_DETECT_SOURCE_TYPE_COIL, /// ??? EM_FAULT_DETECT_SOURCE_TYPE_VIDEO, /// ??? }EM_FAULT_DETECT_SOURCE_TYPE; ///@brief ??????? DH_ALARM_TRAFFIC_LIGHT_FAULT_STATE(??????????????) typedef struct tagALARM_TRAFFIC_LIGHT_FAULT_INFO { int nAction; /// 1:??? 2:?? int nChannelID; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_FAULT_DETECT_SOURCE_TYPE emDetectSource; /// ??????????? UINT nStraightLightMask[3]; /// ??????????,0-??? 1-??? 2-???,??0????????????? UINT nTurnLeftLightMask[3]; /// ??????????,0-??? 1-??? 2-???,??0????????????? UINT nTurnRightLightMask[3]; /// ??????????,0-??? 1-??? 2-???,??0????????????? UINT nUTurnLightMask[3]; /// ??????????,0-??? 1-??? 2-???,??0????????????? EVENT_COMM_INFO stCommInfo; /// ??????? BYTE byReserved[1024]; /// ??????? }ALARM_TRAFFIC_LIGHT_FAULT_INFO; ///@brief ???????????? typedef enum tagEM_VEHICLE_PERIPHERAL_TYPE { EM_VEHICLE_PERIPHERAL_TYPE_UNKNOWN, /// ??????? EM_VEHICLE_PERIPHERAL_TYPE_CAN, /// CAN }EM_VEHICLE_PERIPHERAL_TYPE; ///@brief ????g????? typedef enum tagEM_VEHICLE_PERIPHERAL_ALARM { EM_VEHICLE_PERIPHERAL_ALARM_UNKNOWN, /// ??????? EM_VEHICLE_PERIPHERAL_ISD_COLLISION_WARNING, /// ISD?????? EM_VEHICLE_PERIPHERAL_ISD_TURTLE_SPEED_OVERSPEED, /// ISD??????? EM_VEHICLE_PERIPHERAL_ISD_SNAIL_SPEED_OVERSPEED, /// ISD??????? EM_VEHICLE_PERIPHERAL_ISD_COLLISION_SQUEEZE_WARNING, /// ISD????????? EM_VEHICLE_PERIPHERAL_ISD_FAILURE, /// ISD???? EM_VEHICLE_PERIPHERAL_ISD_CANCELLED_INSIDE, /// ISD?????? EM_VEHICLE_PERIPHERAL_ISD_CANCELLED_OUTSIDE /// ISD?????? }EM_VEHICLE_PERIPHERAL_ALARM; ///@brief ??????? DH_ALARM_VEHICLE_PERIPHERAL ?????????????? typedef struct tagALARM_VEHICLE_PERIPHERAL_INFO { int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? EM_VEHICLE_PERIPHERAL_TYPE emPeripheralType; /// ???????? EM_VEHICLE_PERIPHERAL_ALARM emAlarm; /// ???????? double dbSpeed; /// ???, ????km/h(??????????) double dbDistance; /// ????, ????m BYTE byReserved[1024]; /// ??????? }ALARM_VEHICLE_PERIPHERAL_INFO; ///@brief ??????? DH_ALARM_FIRE_LANE_DETECTION (?????????????)????????????????? typedef struct tagALARM_FIRE_LANE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:?????2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? DH_MSG_OBJECT stuObjects[32]; /// ????????? UINT nObjectNum; /// ???????????? int nEventID; /// ???ID int nRuleID; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[1020]; /// ?????? } ALARM_FIRE_LANE_DETECTION_INFO; ///@brief ??????? DH_ALARM_FIRE_LINE_DETECTION ????????????????????????????????? typedef struct tagALARM_FIRE_LINE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ?????? DH_MSG_OBJECT stuObjects[32]; /// ????????? int nObjectNum; /// ???????????? BYTE byReserved[1020]; /// ??????? }ALARM_FIRE_LINE_DETECTION_INFO; ///@brief ?????????? typedef enum tagEM_DISK_ERROR_TYPE { EM_DISK_ERROR_TYPE_UNKNOWN, /// ??? EM_DISK_ERROR_TYPE_TEMPERATURE, /// ????? EM_DISK_ERROR_TYPE_VIBRATION, /// ???? EM_DISK_ERROR_TYPE_PHYSICAL_SHOCK, /// ????????? EM_DISK_ERROR_TYPE_HARD_DRIVER, /// ?????? EM_DISK_ERROR_TYPE_HOST_RESET, /// ?????? EM_DISK_ERROR_TYPE_OTHER, /// ???????? }EM_DISK_ERROR_TYPE; ///@brief ??????????? typedef enum tagEM_STORAGE_MEDIA_TYPE { EM_STORAGE_MEDIA_TYPE_UNKNOWN, /// ??? EM_STORAGE_MEDIA_TYPE_CDROM, /// ???? EM_STORAGE_MEDIA_TYPE_DISK, /// ??? EM_STORAGE_MEDIA_TYPE_FLASH, /// SD?? EM_STORAGE_MEDIA_TYPE_FROCK, /// ?????? }EM_STORAGE_MEDIA_TYPE; ///@brief ??????? DH_ALARM_DISKMIX_MODE_ALARM(?????????????)????????????????? typedef struct tagNET_ALARM_DISKMIX_MODE_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? UINT nPhysicNo; /// ?????????????????????????????1??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szDevice[32]; /// ????? char szGroup[32]; /// ????????????? char szSerialNo[128]; /// ????????? EM_STORAGE_MEDIA_TYPE emMedia; /// ???????? char szReserved[1020]; /// ?????? } NET_ALARM_DISKMIX_MODE_ALARM_INFO; ///@brief ????????? typedef enum tagEM_DISK_MANU_FACTORY { EM_DISK_MANU_FACTORY_UNKNOWN, /// ???????? EM_DISK_MANU_FACTORY_WD, EM_DISK_MANU_FACTORY_SG, }EM_DISK_MANU_FACTORY; ///@brief ??????? DH_ALARM_DISK_HEALTH_FAILURE ???????????????????????????????? typedef struct tagALARM_DISK_HEALTH_FAILURE_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szEventName[128]; /// ??????? char szGroup[32]; /// ??????????? char szDeviceName[64]; /// ??????? EM_STORAGE_DISK_PREDISKCHECK emDiskStatus; /// ????? EM_DISK_ERROR_TYPE emDiskError; /// ?????????? NET_TIME_EX UTC; /// ???????????? int nPhysicNo; /// ??????? EM_DISK_MANU_FACTORY emDiskManuFactory; /// ????????? EM_STORAGE_MEDIA_TYPE emStrobeMedia; /// ??????? char szSerialNo[32]; /// ????????? UINT nCmdErrMask; /// ?????????????? BYTE byReserved[1020]; /// ??????? }ALARM_DISK_HEALTH_FAILURE_INFO; ///@brief ????????????????? typedef enum tagEM_DETECT_SENSOR_TYPE { EM_DETECT_SENSOR_TYPE_UNKNOWN, /// ??? EM_DETECT_SENSOR_TYPE_COIL, /// ??? EM_DETECT_SENSOR_TYPE_VIDEO, /// ??? EM_DETECT_SENSOR_TYPE_RADAR, /// ??? EM_DETECT_SENSOR_TYPE_5G, /// 5G EM_DETECT_SENSOR_TYPE_FUSION /// ??? }EM_DETECT_SENSOR_TYPE; ///@brief ??????? DH_ALARM_REFRIGE_SHUT_DOWN(?????????????????????????) ????????????????? typedef struct tagALARM_REFRIGE_SHUT_DOWN_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? UINT nLeftTime; /// ???????????????????????? BYTE byReserved[1020]; /// ??????? }ALARM_REFRIGE_SHUT_DOWN_INFO; ///@brief ???????? typedef enum tagEM_WIRELESS_APN_TYPE { EM_WIRELESS_APN_UNKNOWN = -1, /// ??? EM_WIRELESS_APN_CUSTOMIZED, /// ????? EM_WIRELESS_APN_CTNET, /// ???????? EM_WIRELESS_APN_CMNET, /// ??????? EM_WIRELESS_APN_UNINET, /// ??????? }EM_WIRELESS_APN_TYPE; ///@brief ??????? DH_ALARM_AROUD_4G_PROBE_SEARCH ???????? ????????????????? typedef struct tagALARM_AROUD_4G_PROBE_SEARCH_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szIMSI[20]; /// ????????????????????? char szIMEI[20]; /// ?????????????????????? EM_WIRELESS_APN_TYPE emAPN; /// ????????, ?????? ????????????????? int nStrength; /// ?????? NET_TIME stuTime; /// ??????????? BYTE byReserved[1020]; /// ??????? }ALARM_AROUD_4G_PROBE_SEARCH_INFO; ///@brief ???????? typedef enum tagEM_VEHICLEINOUT_CAR_TYPE { EM_VEHICLEINOUT_CAR_TYPE_UNKNOWN, /// ??????? EM_VEHICLEINOUT_CAR_TYPE_CAR, /// ?????? EM_VEHICLEINOUT_CAR_TYPE_VAN, /// ????? EM_VEHICLEINOUT_CAR_TYPE_TRUCK, /// ???? EM_VEHICLEINOUT_CAR_TYPE_BUS, /// ?????? EM_VEHICLEINOUT_CAR_TYPE_LORRY, /// ????? EM_VEHICLEINOUT_CAR_TYPE_CART, /// ?? EM_VEHICLEINOUT_CAR_TYPE_NONMOTOR, /// ??????? EM_VEHICLEINOUT_CAR_TYPE_HUMAN, /// ?? EM_VEHICLEINOUT_CAR_TYPE_SPECAIL, /// ????? }EM_VEHICLEINOUT_CAR_TYPE; ///@brief ??????? typedef struct tagNET_VEHICLE_OBJECT { UINT nObjectID; /// ????ID UINT nSpeed; /// ?????????km/h char szObjectType[16]; /// ???????? Vehicle NonMotor Plate EM_CATEGORY_TYPE emSubObject; /// ????????????????? UINT nLane; /// ?????????? UINT nRoadwayNumber; /// ?????t???? EM_DETECT_SENSOR_TYPE emSensorType; /// ????????????????? UINT nObjectRVID; /// ??????????????ID UINT nObjectRID; /// ????????ID char szDrivingDirection[3][32]; /// ???????"Approach"-????,??????????????????????; "Leave"-????,?????????????????????,???????????????????????????????????????,UTF-8???? char szPlateNumber[32]; /// ??????? char szPlateColor[16]; /// ??????? double dbLongitude; /// ???????? double dbLatitude; /// ???????? char szCarColor[16]; /// ??????? EM_VEHICLEINOUT_CAR_TYPE emCarType; /// ???????? NET_FLOWSTAT_DIRECTION emVirtualCoilDirection; /// ????????????????????? double dbDistanceToStop; /// ???????????? double dbCarX; /// ?????????????????????(??????????????????????????????????????)??X????(????????????)????? double dbCarY; /// ?????????????????????(??????????????????????????????????????)??Y????(????????????)????? double dbCarAngle; /// ?????????????????????(?????????????????????????????????????)????? UINT nObjectInVideoLane; /// ??????????????????, 0:???, 1:????I???????????, 2:??????????????? int nDirection; /// ????????????????? 0-?????1-?????2-?????3-?????4-??? float fSpeedX; /// ???????????? float fSpeedY; /// ????????????? double dbHeadingAngle; /// ????? NET_RECT stuCarBoundingBox; /// ??????????????0~8191??????? float fSpeedFloat; /// ????, ????km/h float fAccelerationX; /// ??????????ax,??????: ????????x????;??????:-10.0~10.0,?????m/s2?? float fAccelerationY; /// ??????????ay,??????:??????y????;??????:-10.0~10.0,?????m/s2?? BYTE byReserverd[204]; /// ??????? }NET_VEHICLE_OBJECT; ///@brief ?????? typedef enum tagEM_TRAFFIC_FLOW_STATUS { EM_TRAFFIC_FLOW_STATUS_UNKNOWN, /// ??? EM_TRAFFIC_FLOW_STATUS_CONGESTION, /// ?????? EM_TRAFFIC_FLOW_STATUS_SMOOTH /// ?????? }EM_TRAFFIC_FLOW_STATUS; ///@brief ???????????? typedef enum tagEM_VIRTUAL_COIL_OCCUPANCY_STATUS { EM_VIRTUAL_COIL_OCCUPANCY_STATUS_UNKNOWN = -1, /// ??? EM_VIRTUAL_COIL_OCCUPANCY_STATUS_UNOCCUPY, /// ????? EM_VIRTUAL_COIL_OCCUPANCY_STATUS_OCCUPY, /// ??? }EM_VIRTUAL_COIL_OCCUPANCY_STATUS; ///@brief ??????????? typedef struct tagNET_TRAFFIC_FLOW_STAT { UINT nLane; /// ?????????? UINT nRoadwayNumber; /// ?????t???? EM_TRAFFIC_FLOW_STATUS emStatus; /// ?????? EM_VIRTUAL_COIL_OCCUPANCY_STATUS emHeadCoil; /// ????????????, ????????? EM_VIRTUAL_COIL_OCCUPANCY_STATUS emTailCoil; /// ?????????????, ????????? UINT nSpeed; /// ??????????(??????km/h) UINT nQueueLen; /// ??????(??????cm) UINT nCarsInQueue; /// ???????? EM_DETECT_SENSOR_TYPE emSensorType; /// ????????????????? double dbSpaceHeadway; /// ??????????????????????????/?? double dbTimeHeadWay; /// ????????????/?? double dbSpaceOccRatio; /// ???????????????????????????????????????????????????????? UINT nCarVehicles; /// ???????????????????????????????? BYTE byReserverd[228]; /// ??????? }NET_TRAFFIC_FLOW_STAT; ///@brief ??????? DH_ALARM_VEHICLE_INOUT ???????????????????????????????? typedef struct tagALARM_VEHICLE_INOUT_INFO { int nAction; /// ???????,0?????????? int nChannel; /// ????? char szName[128]; /// ??????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_VEHICLE_OBJECT *pstObjets; /// ???????? int nObjectNum; /// ???????????? int nStatNum; /// ??????????? NET_TRAFFIC_FLOW_STAT stuStats[8]; /// ???????????????????????, ??????8???? double dbRadarInstallAngle; /// ????????????????Y?????????????????????????????? (0 ~ 360) BYTE byReserverd[1016]; /// ??????? }ALARM_VEHICLE_INOUT_INFO; ///@brief ??????? DH_ALARM_DISS_ASSEMBLY ???????????? typedef struct tagALARM_DISS_ASSEMBLY_INFO { int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? }ALARM_DISS_ASSEMBLY_INFO; ///@brief ????? typedef enum tagEM_DEVICE_STATUS { EM_DEVICE_STATUS_UNKNOWN, /// ??? EM_DEVICE_STATUS_WORKING, /// ???? EM_DEVICE_STATUS_SLEEPING, /// ???? }EM_DEVICE_STATUS; ///@brief ?????????? typedef enum tagEM_SLEEP_TRIGGER_MODE { EM_SLEEP_TRIGGER_MODE_UNKNOWN, EM_SLEEP_TRIGGER_MODE_TIMING, /// ?????? EM_SLEEP_TRIGGER_MODE_SHORT_MESSAGE, /// ?????? EM_SLEEP_TRIGGER_MODE_TIME_PERIOD, /// ??????? EM_SLEEP_TRIGGER_MODE_MOVECTRL /// ????????? }EM_SLEEP_TRIGGER_MODE; ///@brief ??????? DH_ALARM_SLEEP_CONTROL_STATUS ???????????? typedef struct tagALARM_SLEEP_CONTROL_STATUS_INFO { int nChannelID; /// ????? int nAction; /// 0:???? NET_TIME_EX UTC; /// ???????????? EM_DEVICE_STATUS emStatus; /// ????? EM_SLEEP_TRIGGER_MODE emMode; /// ??????????? }ALARM_SLEEP_CONTROL_STATUS_INFO; ///@brief ??????? DH_ALARM_REMOTE_DISASSEMBLY ??????????????? typedef struct tagALARM_REMOTE_DISASSEMBLY_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2???? NET_TIME_EX UTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? BYTE bReserved[512]; /// ??????? }ALARM_REMOTE_DISASSEMBLY_INFO; ///@brief ?????? typedef enum tagEM_SCREENSAVER_STATUS { EM_SCREENSAVER_STATUS_UNKNOWN, /// ????? EM_SCREENSAVER_STATUS_OPEN, /// ?????? EM_SCREENSAVER_STATUS_CLOSE, /// ??????? }EM_SCREENSAVER_STATUS; ///@brief ??????? ??????? typedef struct tagALARM_SCREENSAVER_INFO { int nAction; /// 0:???? EM_SCREENSAVER_STATUS emStatus; /// ?????? BOOL bClosePage; /// ???????? ??EM_SCREENSAVER_STATUS??"Open"???? BOOL bScreenOff; /// ?????? BYTE bReserved[128]; /// ??????? }ALARM_SCREENSAVER_INFO; ///@brief ?????????????????? typedef struct tagALARM_ABN_POST_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? UINT nEventID; /// ??????????????????????? NET_TIME_EX UTC; /// ????????????,?????? UINT UTCMS; /// UTC???????????? double dbPTS; /// ????(?????????) }ALARM_ABN_POST_DETECTION_INFO; ///@brief ?????? typedef enum tagEM_VIDEO_ABNORMAL_DETECT_TYPE { EM_VIDEO_ABNORMAL_DETECT_UNKNOWN, /// ????? EM_VIDEO_ABNORMAL_DETECT_LOSS, /// ?????? EM_VIDEO_ABNORMAL_DETECT_COVER, /// ?????? EM_VIDEO_ABNORMAL_DETECT_FROZEN, /// ??????? EM_VIDEO_ABNORMAL_DETECT_LIGHT, /// ???? EM_VIDEO_ABNORMAL_DETECT_DARK, /// ???? EM_VIDEO_ABNORMAL_DETECT_SCENECHANGE, /// ??????? EM_VIDEO_ABNORMAL_DETECT_STRIATION, /// ?????? EM_VIDEO_ABNORMAL_DETECT_NOISE, /// ??????? EM_VIDEO_ABNORMAL_DETECT_UNBALANCE, /// ????? EM_VIDEO_ABNORMAL_DETECT_BLUR, /// ????????? EM_VIDEO_ABNORMAL_DETECT_CONTRAST, /// ????????? EM_VIDEO_ABNORMAL_DETECT_MOTION, /// ?????? EM_VIDEO_ABNORMAL_DETECT_FILCKERING, /// ?????? EM_VIDEO_ABNORMAL_DETECT_COLOR, /// ??????-13 EM_VIDEO_ABNORMAL_DETECT_UNFOCUS, /// ?????? EM_VIDEO_ABNORMAL_DETECT_OVEREXPOSURE, /// ?????? EM_VIDEO_ABNORMAL_DETECT_DRAMATICCHANGE, /// ??????? EM_VIDEO_ABNORMAL_DETECT_BLACKWHITE, /// ?????? EM_VIDEO_ABNORMAL_DETECT_SNOWNOISE, /// ??????? }EM_VIDEO_ABNORMAL_DETECT_TYPE; ///@brief ??????????,??????????????????,????????????????????????? typedef struct tagDEV_EVENT_VIDEO_NORMAL_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? UINT nEventID; /// ??????????????????????? NET_TIME_EX UTC; /// ????????????,?????? double dbPTS; /// ????(?????????) EM_VIDEO_ABNORMAL_DETECT_TYPE emDetectType; /// ?????????? BYTE bReserved[260]; /// ??????? }DEV_EVENT_VIDEO_NORMAL_DETECTION_INFO; ///@brief ???? typedef enum tagEM_BUSINESS_STATUS { EM_BUSINESS_STATUS_UNKNOWN = -1, /// ????? EM_BUSINESS_STATUS_NOSTART, /// ??????? EM_BUSINESS_STATUS_START, /// ????? EM_BUSINESS_STATUS_NORAML, /// ?????? EM_BUSINESS_STATUS_AUTOCLOSE, /// ?????? EM_BUSINESS_STATUS_ABMONALCLOSE, /// ????? }EM_BUSINESS_STATUS; ///@brief ???????????? typedef enum tagEM_INTERLOCK_SCENE { EM_INTERLOCK_SCENE_UNKNOWN = -1, /// ????? EM_INTERLOCK_SCENE_NORMAL, /// ???? EM_INTERLOCK_SCENE_ALLOPEN, /// ???? EM_INTERLOCK_SCENE_ALLCLOSE, /// ????? }EM_INTERLOCK_SCENE; ///@brief ????????AB?????/??????(???DH_ALARM_DOUBLEDOOR) typedef struct tagALARM_DOUBLEDOOR_INFO { int nAction; /// 0:???? EM_INTERLOCK_SCENE emInterLockScene; /// ???????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? UTC ??? char szReserved1[4]; /// ?????? NET_TIME_EX RealUTC; /// ???????????????UTC?? NET_TIME_EX UTC; /// ???????????? char szReserverd[128]; /// ??????? }ALARM_DOUBLEDOOR_INFO; ///@brief ??????????????(???DH_ALARM_OPENOUT_TIMESECTION) typedef struct tagALARM_OPENOUT_TIMESECTION_INFO { int nAction; /// 0:???? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? UTC ??? NET_TIME_EX UTC; /// ???????????? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szReserverd[128]; /// ??????? }ALARM_OPENOUT_TIMESECTION_INFO; ///@brief ???????(???DH_ALARM_SERVICESTART) typedef struct tagALARM_SERVICESTART_INFO { int nAction; /// 0:???? EM_BUSINESS_STATUS emBusinessStatus; /// ???? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? UTC ??? char szReserved1[4]; /// ?????? NET_TIME_EX UTC; /// ???????????? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szReserverd[128]; /// ??????? }ALARM_SERVICESTART_INFO; ///@brief ?????????P????(???DH_ALARM_WIRELESSDEV_POWERLESS) typedef struct tagALARM_WIRELESSDEV_POWERLESS_INFO { int nAction; /// 0:???? 1:??? 2:?? int nIndex; /// ???????? NET_TIME_EX stuLoacalTime; /// ???????????? char szModel[32]; /// ????????? char szName[32]; /// ????????? char szSN[32]; /// ??????????? char szAreaName[32]; /// ????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserverd[128]; /// ??????? }ALARM_WIRELESSDEV_POWERLESS_INFO; ///@brief ????????????????????????? (??? DH_ALARM_PUBLISHINFO_CONFIRM) typedef struct tagALARM_PUBLISHINFO_CONFIRM_INFO { int nAction; /// 0:???? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? UTC ??? NET_TIME_EX UTC; /// ???????????? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szDeviceIP[64]; /// ????????IP char szDeviceUserID[64]; /// ??????????ID char szReadInfoID[256][32]; /// ????????ID???? int nReadInfoIDNum; /// ????????ID??????? char szReserverd[508]; /// ??????? }ALARM_PUBLISHINFO_CONFIRM_INFO; ///@brief ??????????? typedef enum tagEM_FUNCTION_TYPE { EM_FUNCTION_TYPE_UNKNOWN, /// ??? EM_FUNCTION_TYPE_WIGHT_LIGHT, /// ??? EM_FUNCTION_TYPE_SIREN, /// ?????? EM_FUNCTION_TYPE_LENS_MASK, /// ??????? EM_FUNCTION_TYPE_SUPPER_LIGHT, /// ???? EM_FUNCTION_TYPE_VLOG_STATE, /// Vlog?? }EM_FUNCTION_TYPE; ///@brief App?????????????????????????? (??? DH_ALARM_LEFUNCTION_STATUS_SYNC) typedef struct tagALARM_LEFUNCTION_STATUS_SYNC_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? EM_FUNCTION_TYPE emFunction; /// ??????????? BOOL bStatus; /// ???????? true???????? false???????? char szReserverd[1024]; /// ??????? }ALARM_LEFUNCTION_STATUS_SYNC_INFO; ///@brief ????????? typedef struct tagTRAFFIC_QUEUE_INFO { UINT nLane; /// ?????? UINT nQueueLen; /// ?????? UINT nQueueStartPos; /// ???????????????1m UINT nQueueVehNum; /// ?????????????? UINT nQueueVehSpeed; /// ???????????????????????1km/h UINT nOccTime; /// ???????????????????????????????????ms NET_EM_OVER_FLOW_STATE emOverflowState; /// ????????????????????????????????????????????????????????????????????????????? char szReserverd[252]; /// ??????? }TRAFFIC_QUEUE_INFO; ///@brief ?????????????? typedef struct tagTRAFFIC_FLOW_QUEUE_INFO { UINT nDecStatus; /// ??????? 0-???? 1-???? UINT nAreaNo; /// ????? UINT nJunNo; /// ????? UINT nDirNo; /// ??????????????????0/1/2/3 UINT nLaneDirType; /// ???????????????? 0??????? 1 int nQueueInfoNum; /// ??????????? TRAFFIC_QUEUE_INFO stuQueueInfo[32]; /// 0~7????????? char szReserverd[256]; /// ??????? }TRAFFIC_FLOW_QUEUE_INFO; ///@brief ????????????? (??? DH_ALARM_TRAFFIC_FLOW_QUEUE) typedef struct tagALARM_TRAFFIC_FLOW_QUEUE_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? int nSequence; /// ????????? 1?????????????? 0???????????? TRAFFIC_FLOW_QUEUE_INFO stuFlowQueueInfo; /// ?????????????? char szReserverd[1024]; /// ??????? }ALARM_TRAFFIC_FLOW_QUEUE_INFO; ///@brief ?????????????? typedef struct tagTRAFFIC_FLOW_JUNTION_INFO { UINT nAreaNo; /// ????? UINT nJunNo; /// ????? UINT nDirNo; /// ??????????????????0/1/2/3 UINT nLaneDirType; /// ???????????????? 0??????? 1 UINT nSecNo; /// ??????? UINT nLaneNo; /// ??????0~7 UINT nVehType; /// ???????? UINT nVehSpeed; /// ????????????1km/h UINT nOccTime; /// ??????????ms char szReserverd[252]; /// ??????? }TRAFFIC_FLOW_JUNTION_INFO; ///@brief ????????????? (??? DH_ALARM_TRAFFIC_FLOW_JUNTION) typedef struct tagALARM_TRAFFIC_FLOW_JUNTION_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? int nSequence; /// ????????? 1?????????????? 0???????????? TRAFFIC_FLOW_JUNTION_INFO stuFlowJunction; /// ?????????????? char szReserverd[1024]; /// ??????? }ALARM_TRAFFIC_FLOW_JUNTION_INFO; ///@brief ?????????????? typedef struct tagTRAFFIC_FLOW_VEHICLE_STOP_INFO { UINT nAreaNo; /// ????? UINT nJunNo; /// ????? UINT nDirNo; /// ??????????????????0/1/2/3 UINT nLaneDirType; /// ???????????????? 0??????? 1 UINT nLaneNo; /// ??????0~7 UINT nStopPos; /// ????????????1m UINT nStopTimes; /// ????????????????? UINT nStopOccTime; /// ?????????????ms char szReserverd[256]; /// ??????? }TRAFFIC_FLOW_VEHICLE_STOP_INFO; ///@brief ????????????? (??? DH_ALARM_TRAFFIC_FLOW_VEHICLE_STOP) typedef struct tagALARM_TRAFFIC_FLOW_VEHICLE_STOP_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? int nSequence; /// ????????? 1?????????????? 0???????????? TRAFFIC_FLOW_VEHICLE_STOP_INFO stuFlowVehicleStop; /// ?????????????? char szReserverd[1024]; /// ??????? }ALARM_TRAFFIC_FLOW_VEHICLE_STOP_INFO; ///@brief ???????????????? (??? DH_ALARM_TRAFFIC_FLOW_STAT) typedef struct tagALARM_TRAFFIC_FLOW_STAT_INFO { int nAction; /// ??????? 0:???? int nChannelID; /// ????? char szName[128]; /// ??????? DWORD PTS; /// ????(?????????) int nEventID; /// ???ID NET_TIME_EX stuUTC; /// ???????????? int nSequence; /// ??? int nStateNum; /// ?????????? NET_TRAFFIC_FLOW_STATE stuStates[8]; /// ??????, ?????????????????????? int nStopVehiclenum; /// ????????????????????????????????????????????????????? int nDetectionAreaVehicleNum; /// ?????????????????????????????????????????????????????? char szReserverd[1024]; /// ??????? }ALARM_TRAFFIC_FLOW_STAT_INFO; ///@brief ??????????????? typedef struct tagTRAFFIC_FLOW_LANE_INFO { UINT nFlow; /// ???????? UINT nAveSpeed; /// ???????????1km/h???? UINT nOccupancy; /// ????????? char szReserverd[252]; /// ??????? }TRAFFIC_FLOW_LANE_INFO; ///@brief ????????????? typedef struct tagTRAFFIC_FLOW_STAT_EX_INFO { UINT nAreaNo; /// ????? UINT nJunNo; /// ????? UINT nDirNo; /// ??????????????????0/1/2/3 UINT nSecNo; /// ??????? TRAFFIC_FLOW_LANE_INFO stuLaneInfo[32]; /// 0~7??????????????? int nLaneInfoNum; /// ?????????????? char szReserverd[252]; /// ??????? }TRAFFIC_FLOW_STAT_EX_INFO; ///@brief ??????????????????? (??? DH_ALARM_TRAFFIC_FLOW_STAT_EX) typedef struct tagALARM_TRAFFIC_FLOW_STAT_EX_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? int nSequence; /// ????????? 1?????????????? 0???????????? TRAFFIC_FLOW_STAT_EX_INFO stuFlowStatEx; /// ????????????? char szReserverd[1024]; /// ??????? }ALARM_TRAFFIC_FLOW_STAT_EX_INFO; ///@brief ???????????????????????????? (??? DH_ALARM_SCREEN_DISPLAY_ALARM) typedef struct tagALARM_SCREEN_DISPLAY_ALARM_INFO { int nAction; /// ??????? 0:???? BOOL bHdmiStatus; /// ?????????, TRUE:?????????FALSE:????????? NET_TIME_EX stuUTC; /// ???????????? BYTE byReserved[1020]; /// ??????? }ALARM_SCREEN_DISPLAY_ALARM_INFO; ///@brief ??????????????????? typedef enum tagEM_HUMAN_ANIMAL_ALARM_TYPE { EM_HUMAN_ANIMAL_ALARM_TYPE_UNKNOWN, /// ??? EM_HUMAN_ANIMAL_ALARM_TYPE_NORMAL_TO_ABNORMAL, /// ?????????????????? EM_HUMAN_ANIMAL_ALARM_TYPE_ABNORMAL_TO_NORMAL, /// ?????????????????? }EM_HUMAN_ANIMAL_ALARM_TYPE; ///@brief ??????????????????? typedef enum tagEM_DETECTION_SCENE_TYPE { EM_DETECTION_SCENE_TYPE_UNKNOWN , /// ??? EM_DETECTION_SCENE_TYPE_ANIMAL, /// ??????????????????? EM_DETECTION_SCENE_TYPE_BIRD, /// ????????????????????? EM_DETECTION_SCENE_TYPE_PIG, /// ??????????????? }EM_DETECTION_SCENE_TYPE; ///@brief ???????????(??? DH_ALARM_HUMAN_ANIMAL_COEXISTENCE) typedef struct tagALARM_HUMAN_ANIMAL_COEXISTENCE_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nUTCMS; /// ??????????? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????ID, ??????????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ?????????????????, ??1??? UINT nEventID; /// ???ID int nPresetID; /// ?????????????????1???, 0 ??????? EM_HUMAN_ANIMAL_ALARM_TYPE emAlarmType; /// ??????????? EM_DETECTION_SCENE_TYPE emDetectionSceneType; /// ???????? char szReserved[1020]; /// ??????? }ALARM_HUMAN_ANIMAL_COEXISTENCE_INFO; ///@brief Mini????????(??? DH_ALARM_MINIINDOOR_RADAR_ALARM) typedef struct tagNET_ALARM_MINIINDOOR_RADAR_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? char szClass[128]; /// ??????????? UINT nEventID; /// ??????????????????????? NET_TIME_EX stuUTC; /// ????????????,?????? double dbPTS; /// ????(?????????) UINT nUTCMS; /// UTC???????????? BOOL bBreatheAbnormal; /// ??????(??????????????) BOOL bHeartBeatAbnormal; /// ??????(??????????????) BOOL bAFBStatusAbnormal; /// ??????(??????????????) BOOL bFallAlarm; /// ????????(???????) BOOL bNumAbnormal; /// ??????(???????) char szReserved[1024]; /// ??????? }NET_ALARM_MINIINDOOR_RADAR_ALARM_INFO; ///@brief ?????????????? (??? DH_ALARM_MEMORY_OVER_LOAD) typedef struct tagNET_ALARM_MEMORY_OVER_LOAD_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0:Pulse NET_TIME_EX stuUTC; /// ???????????? double dbTotal; /// ????????????????? double dbFree; /// ?????????????????? UINT nUsage; /// ????????? [0-99] char szReserved[1024]; /// ??????? }NET_ALARM_MEMORY_OVER_LOAD_INFO; ///@brief CPU??????????? (??? DH_ALARM_CPU_OVER_LOAD) typedef struct tagNET_ALARM_CPU_OVER_LOAD_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0:Pulse NET_TIME_EX stuUTC; /// ???????????? UINT nUsage; /// ????????? [0-99] char szReserved[1024]; /// ??????? }NET_ALARM_CPU_OVER_LOAD_INFO; ///@brief EAS???????????(??? DH_ALARM_EAS_ANTITHEFT) typedef struct tagNET_ALARM_EAS_ANTITHEFT { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ???????????? char szAlarmChannelName[128]; /// EAS??????????? UINT nAlarmChannel; /// EAS??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ??????? }NET_ALARM_EAS_ANTITHEFT; ///@brief EAS??????????????(??? DH_ALARM_EAS_TRANSMIT_COIL) typedef struct tagNET_ALARM_EAS_TRANSMIT_COIL { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ???????????? char szAlarmChannelName[128]; /// EAS??????????? UINT nAlarmChannel; /// EAS??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ??????? }NET_ALARM_EAS_TRANSMIT_COIL; ///@brief EAS??????????????(??? DH_ALARM_EAS_RECEIVE_COIL) typedef struct tagNET_ALARM_EAS_RECEIVE_COIL { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ???????????? char szAlarmChannelName[128]; /// EAS??????????? UINT nAlarmChannel; /// EAS??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ??????? }NET_ALARM_EAS_RECEIVE_COIL; ///@brief EAS?????????????(??? DH_ALARM_EAS_TAG_RESIDENT) typedef struct tagNET_ALARM_EAS_TAG_RESIDENT { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ???????????? char szAlarmChannelName[128]; /// EAS??????????? UINT nAlarmChannel; /// EAS??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1020]; /// ??????? }NET_ALARM_EAS_TAG_RESIDENT; ///@brief EAS????????????????(??? DH_ALARM_EAS_ANTENNA_POWER_FAULT) typedef struct tagNET_ALARM_EAS_ANTENNA_POWER_FAULT { int nChannelID; /// ????? int nAction; /// ???????, 0: ???? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ??????? }NET_ALARM_EAS_ANTENNA_POWER_FAULT; ///@brief ????????????(??? DH_ALARM_PARKING_SPACE_DETECTOR_STATE) typedef struct tagNET_ALARM_PARKING_SPACE_DETECTOR_STATE_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0: ???? NET_TIME_EX stuUTC; /// ???????????? int nTriggerSource; /// ???????, 0:???, 1:???????, 2:??????????? UINT nLane; /// ?????? char szDetectionEquipmentID[32]; /// ?????????????ID char szCustomParkNo[32]; /// ?????t???? int nParkingState; /// ??????, 0:???, 1:????, 2:??? char szReserved[1024]; /// ??????? }NET_ALARM_PARKING_SPACE_DETECTOR_STATE_INFO; ///@brief ????????? typedef enum tagEM_EXCEPTION_TYPE { EM_EXCEPTION_KNOWN, /// ??????? EM_EXCEPTION_NOTALLOWED_IPLOGIN, /// ??????????IP??????? EM_EXCEPTION_NOTALLOWED_TIMELOGIN, /// ?????????????????????? EM_EXCEPTION_URLERROR_OVERLIMIT, /// Web??????????? EM_EXCEPTION_SESSIONNUM_OVERLIMIT, /// ???????????? EM_EXCEPTION_SESSIONID_ERROR_OVERLIMIT, /// ??ID??????? EM_EXCEPTION_FDEXHAUSTION, /// ???????????????? EM_EXCEPTION_EXCEPTIONPROGRAMRUN, /// ???????????????????? EM_EXCEPTION_ACCOUNTORPWDERROROVERLIMIT, /// ?????????????? EM_EXCEPTION_ROOTKIT_DETECTION, /// Rootkit??? EM_EXCEPTION_HIDE_PROCESS_DETECTION, /// ????????? }EM_EXCEPTION_TYPE; ///@brief ??????????(??? DH_ALARM_SAFETY_ABNORMAL) typedef struct tagNET_ALARM_SAFETY_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0: ???? NET_TIME_EX stuUTC; /// ???????????? EM_EXCEPTION_TYPE emExceptionType; /// ????????? char szAddress[64]; /// ???IP??? NET_TIME stuAbnormalTime; /// ????????? char szUser[128]; /// ??????????? char szReserved[1024]; /// ??????? }NET_ALARM_SAFETY_ABNORMAL_INFO; ///@brief ????????????? (??? DH_ALARM_REQUEST_IDLE_MODE) typedef struct tagNET_ALARM_REQUEST_IDLE_MODE { int nChannelID; /// ????? int nAction; /// ???????, 0:Pulse char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1024]; /// ??????? }NET_ALARM_REQUEST_IDLE_MODE; ///@brief ?????????????? (??? DH_ALARM_FORCE_INTO_IDLE_MODE) typedef struct tagNET_ALARM_FORCE_INTO_IDLE_MODE { int nChannelID; /// ????? int nAction; /// ???????, 0:Pulse char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1024]; /// ??????? }NET_ALARM_FORCE_INTO_IDLE_MODE; ///@brief ?????????????? (??? DH_ALARM_REMOTE_APPROVAL) typedef struct tagNET_ALARM_REMOTE_APPROVAL_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? int nApprovalNo; /// ???????? int nType; /// ????????, 0-????, 1-??? int nCabinIndex; /// ????????????????, ???????????, ????? char szAccessorID[64]; /// ?????ID char szAccessorName[64]; /// ????????? char szReviewerID[64]; /// ??????ID char szReviewerName[64]; /// ?????????? int nCabinListNum; /// ????????????????????????????????, ?????32, ???nCabinList[32]?????? int nCabinList[32]; /// ???????????????? char szReserved[888]; /// ??????? }NET_ALARM_REMOTE_APPROVAL_INFO; ///@brief ?????????????????????? (??? DH_ALARM_DYNAMIC_PWDLOCK_FOR_INIT) typedef struct tagNET_ALARM_DYNAMIC_PWDLOCK_FOR_INIT_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? char szID[32]; /// ??????ID char szReserved[1024]; /// ??????? }NET_ALARM_DYNAMIC_PWDLOCK_FOR_INIT_INFO; ///@brief ????????????????? (??? DH_ALARM_DYNAMIC_PWDLOCK_UPLOAD_RANDOMCODE) typedef struct tagNET_ALARM_DYNAMIC_LOCK_UPLOAD_RANDOMCODE_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? char szID[32]; /// ??????ID char szRandCode[512]; /// ?????????????????? char szOpenKeyVer[64]; /// ?????????? char szReserved[1024]; /// ??????? }NET_ALARM_DYNAMIC_LOCK_UPLOAD_RANDOMCODE_INFO; ///@brief ????????????????????? (??? DH_ALARM_DYNAMIC_PWDLOCK_FOR_OPEN) typedef struct tagNET_ALARM_DYNAMIC_PWDLOCK_FOR_OPEN_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? char szID[32]; /// ??????ID char szReserved[1024]; /// ??????? }NET_ALARM_DYNAMIC_PWDLOCK_FOR_OPEN_INFO; ///@brief ????????????? (??? DH_ALARM_DYNAMIC_PWDLOCK_CLOSE) typedef struct tagNET_ALARM_DYNAMIC_PWDLOCK_CLOSE_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? char szID[32]; /// ??????ID char szCloseCode[512]; /// ?????? char szReserved[576]; /// ??????? }NET_ALARM_DYNAMIC_PWDLOCK_CLOSE_INFO; ///@brief ???????? typedef enum tagEM_SYNCUSER_TYPE { EM_SYNCUSER_TYPE_UNKNOWN = -1, /// ??? EM_SYNCUSER_TYPE_ADD, /// ???? EM_SYNCUSER_TYPE_UPDATE, /// ???? EM_SYNCUSER_TYPE_REMOVE, /// ??? }EM_SYNCUSER_TYPE; ///@brief ??????????????????????? (??? DH_ALARM_SYNCUSER_INFO) typedef struct tagNET_ALARM_SYNCUSER_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? char szUserID[32]; /// ???ID EM_SYNCUSER_TYPE emType; /// ???????? char szReserved[1020]; /// ??????? }NET_ALARM_SYNCUSER_INFO; ///@brief ???????? (??? DH_ALARM_ABNORMALLOGIN) typedef struct tagNET_ALARM_ABNORMALLOGIN_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? char szReserved[1024]; /// ??????? }NET_ALARM_ABNORMALLOGIN_INFO; ///@brief PTZ?????? (??? DH_ALARM_INTELLITRACK_EVENT) typedef struct tagNET_ALARM_INTELLITRACK_EVENT_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,?????? UINT nUTCMS; /// UTC???????????? UINT nEventID; /// ??????????????????????? UINT nTrackStatus; /// ?????? 0 - ???? 1 - ?????? 2 - ??????? 3 - ?????? NET_PTZSPACE_UNNORMALIZED stuAbsPosition; /// ???????????????????100??????? /// ???????????????0-36000?? /// ??????????????????-18000??-??18000???? /// ????????????????????0-MaxZoom*100 char szObjectType[32]; /// ????????,"Boat" char szLinkTargetUUID[32]; /// ???????????????????? UINT nObjectID; /// ???????????????? char szReserved[988]; /// ??????? }NET_ALARM_INTELLITRACK_EVENT_INFO; ///@brief ???????????(??? DH_ALARM_GAS_TANK_DETECTION) typedef struct tagNET_ALARM_GAS_TANK_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[128]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? char byReserved[4]; /// ????????????,????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID DH_MSG_OBJECT_EX2 stuObject; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[100]; /// ?????????????????? int nObjectNum; /// ????????????(???stuObjects???) int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? int nCount; /// ????????????? EM_EVENT_LEVEL emEventLevel; /// ??????? UINT nPresetID; /// ?????????????????1???,???????????????????? char szPresetName[64]; /// ????????????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szReserved[1024]; /// ??????? }NET_ALARM_GAS_TANK_DETECTION_INFO; ///@brief ???????????(??? DH_ALARM_LOSS_FRAME_ALARM) typedef struct tagNET_ALARM_LOSS_FRAME_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szGroup[32]; /// ?????????ReadWrite????????Redundant???????? char szReserved[1024]; /// ??????? }NET_ALARM_LOSS_FRAME_ALARM_INFO; ///@brief ???????????????(??? DH_ALARM_INTELLI_MODULE_HIGH_TEMP) typedef struct tagNET_ALARM_INTELLI_MODULE_HIGH_TEMP_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szChip[16]; /// ?????????????ID??????????ID???????? int nCPUTemperature; /// CPU?????? int nGPUTemperature; /// GPU?????? char szReserved[1024]; /// ??????? }NET_ALARM_INTELLI_MODULE_HIGH_TEMP_INFO; ///@brief ?????????????(??? DH_ALARM_INTELLI_MODULE_OFFLINE) typedef struct tagNET_ALARM_INTELLI_MODULE_OFFLINE_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szChip[16]; /// ?????????????ID??????????ID???????? char szReserved[1024]; /// ??????? }NET_ALARM_INTELLI_MODULE_OFFLINE_INFO; ///@brief SSD??????????????? typedef enum tagEM_SSD_ERROR_TYPE { EM_SSD_ERROR_TYPE_UNKNOWN, EM_SSD_ERROR_TYPE_SSD_REMAIN_LIFE_FAILURE, /// SSD????????? }EM_SSD_ERROR_TYPE; ///@brief SSD???????????(??? DH_ALARM_SSD_HEALTH_FAILURE) typedef struct tagNET_ALARM_SSD_HEALTH_FAILURE_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ??????? char szDevice[64]; /// ??????? EM_SSD_ERROR_TYPE emError; /// ???????? char szReserved[1024]; /// ??????? }NET_ALARM_SSD_HEALTH_FAILURE_INFO; ///@brief ???????????????? (??? DH_ALARM_YE_BAO_ALARM) typedef struct tagALARM_YE_BAO_ALARM_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? int nEventID; /// ???ID NET_TIME_EX stuRealUTC; /// ??????????????????????????????UTC??? char szDeviceID[64]; /// ???ID int nFileType; /// ??????????, 0: ???, 1: ???????URL??, 2: ?????????URL?????????????? char szFileUrl[2][256]; /// ????????URL???????URL?????????URL?????????????? NET_TIME_EX stuAlarmTime; /// ???????????UTC??? UINT nSignalStrength; /// ??????????????[0,100] UINT nPower; /// ???????????????[0,100] UINT nSDTotal; /// SD??????????MB UINT nSDFree; /// SD???????????MB double dbTemperature; /// ????????????? double dbLongitude; /// ???? double dbLatitude; /// ???? char szReserved[1024]; /// ??????? }ALARM_YE_BAO_ALARM_INFO; ///@brief ??????????? typedef enum tagEM_AI_PICKUP_WORK_STATE { EM_AI_PICKUP_WORK_STATE_UNKNOWN, /// ??? EM_AI_PICKUP_WORK_STATE_WORKING, /// ?????? EM_AI_PICKUP_WORK_STATE_OFFLINE, /// ???? EM_AI_PICKUP_WORK_STATE_ERROR, /// ?????????? }EM_AI_PICKUP_WORK_STATE; ///@brief ?????????????????? (??? DH_ALARM_AI_PICKUP_WORK_STATE) typedef struct tagALARM_AI_PICKUP_WORK_STATE_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? int nEventID; /// ???ID NET_TIME_EX stuUTC; /// ???????????? EM_AI_PICKUP_WORK_STATE emState; /// ??????????? char szReserved[1020]; /// ??????? }ALARM_AI_PICKUP_WORK_STATE_INFO; ///@brief ???????????????????? (??? DH_ALARM_INTELLI_TYPE_CHANGE) typedef struct tagALARM_INTELLI_TYPE_CHANGE_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? int nTypeListAfterChangeCount; /// ?????????????????????????? int nTypeListBeforeChangeCount; /// ????????????????????????? EM_SCENE_CLASS_TYPE emTypeListAfterChange[16]; /// ?????????????????????? EM_SCENE_CLASS_TYPE emTypeListBeforeChange[16]; /// ????????????????????? NET_TIME_EX stuUTC; /// ???????????? NET_TIME_EX stuLocaleTime; /// ??????????(????????????????) char szReserved[1024]; /// ??????? }ALARM_INTELLI_TYPE_CHANGE_INFO; ///@brief ??????????? typedef enum tagEM_CAR_PASSING_MOVE_STATE { EM_CAR_PASSING_MOVE_STATE_UNKNOWN, /// ??? EM_CAR_PASSING_MOVE_STATE_ENTER, /// ???? EM_CAR_PASSING_MOVE_STATE_LEAVE, /// ?? }EM_CAR_PASSING_MOVE_STATE; ///@brief ??????????? typedef struct tagNET_CAR_PASSING_INFO { UINT nCarId; /// ????????ID UINT nLane; /// ?????? char szPlateNumber[32]; /// ??????? char szPlateColor[32]; /// ??????? int nSpeed; /// ?????????:km/h??255???????? UINT nCarSize; /// ??????????, 0?? 1???? EM_CAR_PASSING_MOVE_STATE emMoveState; /// ??????????? NET_TIME_EX stuTime; /// ????????????????????? UINT nRoadwayNumber; /// ?????t???? UINT nCoilID; /// ?????????????0-65535 double dbCarX; /// ?????????????????????(??????????????????????????????????????)??X????(????????????)????? double dbCarY; /// ?????????????????????(??????????????????????????????????????)??Y????(????????????)????? double dbCarAngle; /// ?????????????????????(?????????????????????????????????????)???? char szReserved[128]; /// ??????? }NET_CAR_PASSING_INFO; ///@brief ???????????????????? (??? DH_ALARM_TRAFFIC_CAR_PASSING) typedef struct tagALARM_TRAFFIC_CAR_PASSING_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szName[128]; /// ??????? int nEventID; /// ???ID NET_TIME_EX stuUTC; /// ?????????????????????? UINT nUTCMS; /// ????????????????? UINT nTimeZone; /// ????????????????????DH_TIME_ZONE_TYPE UINT nFrameSequence; /// ??????????? int nCarPassingCount; /// ???????????? NET_CAR_PASSING_INFO stuCarPassing[16]; /// ??????????? char szReserved[1024]; /// ??????? }ALARM_TRAFFIC_CAR_PASSING_INFO; ///@brief ?????? typedef enum tagEM_SMELLY_LEVEL { EM_SMELLY_LEVEL_UNKNOWN, /// ??? EM_SMELLY_LEVEL_NORMAL, /// ???? EM_SMELLY_LEVEL_LIGHT, /// ?????? EM_SMELLY_LEVEL_HEAVY, /// ?????? }EM_SMELLY_LEVEL; ///@brief ??????????????? typedef struct tagNET_WATER_DETECTION_UPLOAD_INFO { float fPH; /// PH? ????(1-14) float fNTU; /// ???? ????(0-500NTU) float fNH3_N; /// ????? ????(0-50mg/l) float fTN; /// ???? ????(0-50mg/l) float fSD; /// ?????? ????(0-30 m) float fCOD; /// ????????? ????(0-100mg/l) float fNN; /// ?????????? ????(0-500mg/l) float fDO; /// ????? ????(0-10 mg/l) float fChl_a; /// ?????a ????(0-300 ug/l) float fTP; /// ???? ????0-5mg/L float fCODMn; /// ???????????????(0-100mg/l) float fSS; /// ?????? ????(0-1000mg/l) float fBOD_5; /// ?????????????? ????(0-50mg/l) float fNO3_N; /// ?????? ????(0-500mg/l) float fTSI; /// ??????????? ?????? EM_SMELLY_LEVEL emSmellyLevel; /// ?????? char szReserved[512]; /// ?????? }NET_WATER_DETECTION_UPLOAD_INFO; ///@brief ??????????? typedef enum tagEM_WATER_DETECTION_ALARM_TYPE { EM_WATER_DETECTION_ALARM_TYPE_UNKNOWN, /// ??? EM_WATER_DETECTION_ALARM_TYPE_QUALITY, /// ?????? EM_WATER_DETECTION_ALARM_TYPE_PH, /// PH EM_WATER_DETECTION_ALARM_TYPE_NTU, /// ???? EM_WATER_DETECTION_ALARM_TYPE_NH3_N, /// ????? EM_WATER_DETECTION_ALARM_TYPE_TN, /// ???? EM_WATER_DETECTION_ALARM_TYPE_SD, /// ?????? EM_WATER_DETECTION_ALARM_TYPE_COD, /// ????????? EM_WATER_DETECTION_ALARM_TYPE_NN, /// ?????????? EM_WATER_DETECTION_ALARM_TYPE_DO, /// ????? EM_WATER_DETECTION_ALARM_TYPE_CHL_A, /// ?????a EM_WATER_DETECTION_ALARM_TYPE_TP, /// ???? EM_WATER_DETECTION_ALARM_TYPE_CODMN, /// ??????????????? EM_WATER_DETECTION_ALARM_TYPE_SS, /// ?????? EM_WATER_DETECTION_ALARM_TYPE_BOD_5, /// ?????????????? EM_WATER_DETECTION_ALARM_TYPE_NO3_N, /// ?????? EM_WATER_DETECTION_ALARM_TYPE_TSI, /// ??????????? EM_WATER_DETECTION_ALARM_TYPE_SMELLY_LEVEL, /// ?????? }EM_WATER_DETECTION_ALARM_TYPE; ///@brief ??????????? ??? DH_ALARM_WATER_QUALITY_DETECTION typedef struct tagALARM_WATER_QUALITY_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? NET_TIME_EX stuUTC; /// ???????????? NET_WATER_DETECTION_UPLOAD_INFO stuUploadInfo; /// ??????????????? EM_WATER_DETECTION_ALARM_TYPE emAlarmType[32]; /// ??????????? int nAlarmTypeNum; /// ?????????????? char szReserved[1024]; /// ?????? }ALARM_WATER_QUALITY_DETECTION_INFO; #define VTS_STATE_LONGNUMBER_LEN 24 ///@brief VTS typedef enum tagVTS_STATE { EM_VTS_STATE_UNKNOWN = 0 , EM_VTS_STATE_BUSY , /// "Busy" ?? EM_VTS_STATE_IDLE , /// "Idle" ???? }VTS_STATE; ///@brief VTS????? typedef struct tagALARM_VTSTATE_UPDATE_INFO { int nChannelID; /// ????? NET_TIME stuTime; /// ???????????? VTS_STATE emState; /// ???????? char szLongNum[VTS_STATE_LONGNUMBER_LEN]; /// ???? BYTE byReserved[1024]; /// ??????? } ALARM_VTSTATE_UPDATE_INFO; ///@brief ???????DH_ALARM_VIDEO_TALK_PATH(??????????)????????????????? typedef struct tagALARM_VIDEO_TALK_PATH_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? char szSrcDevID[DH_COMMON_STRING_128]; /// ???????????ID(ID??????DevList????) char szDstDevID[DH_COMMON_STRING_128]; /// ?????????????ID(ID??????DevList????) BYTE byReserved[1024]; /// ??????? } ALARM_VIDEO_TALK_PATH_INFO; ///@brief ?????????(?????? DH_EVENT_CROSSREGION_DETECTION) typedef struct tagALARM_EVENT_CROSSREGION_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; NET_CROSSREGION_DIRECTION_INFO emDirection; /// ????????????? NET_CROSSREGION_ACTION_INFO emActionType; /// ??????????????? int nOccurrenceCount; /// ????????????? int nLevel; /// ???????,GB30147?????? char szName[DH_COMMON_STRING_128]; /// ???? BOOL bIsObjectInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ???????????? int nRetObjectNum; /// ???????????????????? DH_MSG_OBJECT stuObjects[MAX_TARGET_OBJECT_NUM]; /// ??????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szMac[32]; /// ??????????Mac??? char szReserved[1024]; /// ?????? }ALARM_EVENT_CROSSREGION_INFO; ///@brief ??????????(?????? DH_EVENT_LEFT_DETECTION) typedef struct tagALARM_EVENT_LEFT_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; int nOccurrenceCount; /// ????????????? int nLevel; /// ???????,GB30147?????? short nPreserID; /// ?????????????????1???????????????? char szPresetName[64]; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_EVENT_LEFT_INFO; ///@brief ?????? typedef struct tagNET_EVENT_WHOLE_FACE_INFO { NET_EULER_ANGLE stuFaceCaptureAngle; /// ???????????????????, nPitch:????????????, nYaw?????????????, nRoll????????????????????? /// ??????????[-90,90], ???????????999?????????????? NET_ANGEL_RANGE stuAngelRange[3]; /// ???????????(????????,????), ????????????????Pitch?????,??????;yaw????????,?????;Roll???????????????????????? BYTE byReserved[256]; /// ??????? } NET_EVENT_WHOLE_FACE_INFO; ///@brief ????????(?????? DH_EVENT_FACE_DETECTION) typedef struct tagALARM_EVENT_FACE_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; int nFaceCount; /// ?????? NET_EVENT_WHOLE_FACE_INFO stuFaces[10]; /// ?????? UINT nPresetID; /// ??????????????, ??1??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_EVENT_FACE_INFO; ///@brief IPC????,IPC???DVR??NVR???????????(?????? DH_ALARM_IPC) typedef struct tagALARM_IPC_INFO { DWORD dwSize; int nChannelID; /// ????? int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? char szName[MAX_ALARM_CHANNEL_NAME_LEN]; /// ??????????? int nAlarmChannel; /// ????????????????0???????????????????????????????? }ALARM_IPC_INFO; ///@brief NAS??????????? typedef enum tagNASFILE_STATUS_TYPE { EM_NASFILE_STATUS_TYPE_UNKNOW, EM_NASFILE_STATUS_TYPE_COPY, ///???? EM_NASFILE_STATUS_TYPE_MOVE, ///??? }NASFILE_STATUS_TYPE; ///@brief NAS????????? typedef enum tagNASFILE_STATUS_STATE { EM_NASFILE_STATUS_STATE_UNKNOW, EM_NASFILE_STATUS_STATE_FAILED, ///??? EM_NASFILE_STATUS_STATE_SUCCESSED, ///??? }NASFILE_STATUS_STATE; ///@brief NAS????????(?????? DH_ALARM_NASFILE_STATUS) typedef struct tagALARM_NASFILE_STATUS_INFO { double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? NASFILE_STATUS_STATE emTaskState; /// ?????? char szTaskID[DH_COMMON_STRING_128]; /// ????ID NASFILE_STATUS_TYPE emTaskType; /// ??????????? int nSrcNum; /// ????(??)???? char szSrcList[MAX_NASFILE_NUM][DH_COMMON_STRING_128]; /// ????(??)?????? char szDstPath[DH_COMMON_STRING_128]; /// ??????? int nProgress; /// ??????? BYTE byReserved[1028]; /// ??????? } ALARM_NASFILE_STATUS_INFO; ///@brief ???????????????????(?????? DH_ALARM_TALKING_CANCELCALL) typedef struct tagALARM_TALKING_CANCELCALL_INFO { NET_TIME_EX stuTime; /// ???????????? char szCallID[DH_COMMON_STRING_32]; /// ????ID }ALARM_TALKING_CANCELCALL_INFO; ///@brief ???????????(?????? DH_ALARM_CROWD_DETECTION) typedef struct tagALARM_CROWD_DETECTION_INFO { int nChannelID; /// ????? int nEventID; /// ???ID double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventAction; /// ???????,1???????????????,2????????????????; EM_ALARM_TYPE emAlarmType; /// ??????????? char szName[MAX_CROWD_DETECTION_NAME_LEN]; /// ??????? int nCrowdListNum; /// ????????????????????????? int nRegionListNum; /// ?????????????????????ID???????? NET_CROWD_LIST_INFO stuCrowdList[MAX_CROWD_LIST_NUM]; /// ??????????????????? NET_REGION_LIST_INFO stuRegionList[MAX_REGION_LIST_NUM]; /// ????????????????ID??????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[896]; /// ?????????? }ALARM_CROWD_DETECTION_INFO; ///@brief VTS ???????? typedef enum tagEM_VTS_CALLING_STATE { EM_VTS_CALLING_STATE_UNKNOWN, /// ??? EM_VTS_CALLING_STATE_ANSWER, /// ???? EM_VTS_CALLING_STATE_HANGUP, /// ??? EM_VTS_CALLING_STATE_MISSED, /// ???? }EM_VTS_CALLING_STATE; ///@brief VTS?????????????(?????? DH_ALARM_VTS_CALLING_STATE) typedef struct tagALARM_VTS_CALLING_STATE_INFO { char szName[128]; /// ??????? int nChannelID; /// ????? int nAction; /// ???????,0?????????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_VTS_CALLING_STATE emCallingState; /// ???????? char szDevID[32]; /// ????????????????? char szDevIp[64]; /// ???????????ip BYTE byReserved[896]; /// ?????? }ALARM_VTS_CALLING_STATE_INFO; ///@brief ????????????? typedef enum tagEM_DETECT_SAFE_GRADE { EM_DETECT_SAFE_GRADE_UNKNOWN, /// ????????? EM_DETECT_SAFE_GRADE_SAFE, /// ?????????? EM_DETECT_SAFE_GRADE_DANGER, /// ??????????? }EM_DETECT_SAFE_GRADE; ///@brief ???????????? typedef struct tagITEM_INFO_ARRAY { char szName[128]; /// ??????? UINT nConcentration; /// ??? BYTE bReserved[892]; /// ?????? } NET_ITEM_INFO; ///@brief ??????????? (?????? DH_ALARM_DRUG_EXPLOSIVE_DETECTION) typedef struct tagALARM_DRUG_EXPLOSIVE_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? int nAction; /// ??????? 0?????????? NET_TIME_EX UTC; /// ???????????? char szUserName[128]; /// ??????????? EM_DETECT_SAFE_GRADE emDetectSafeGrade; /// ??????????? NET_ITEM_INFO stuObjectInfo[16]; /// ??????? int nObjectNum; /// ????????????? }ALARM_DRUG_EXPLOSIVE_DETECTION_INFO; ///@brief ???????????? typedef enum tagEM_METAL_CONTAINER { EM_METAL_CONTAINER_UNKNOWN, /// ??? EM_METAL_CONTAINER_NOMETAL, /// ????????? EM_METAL_CONTAINER_METAL, /// ???????? }EM_METAL_CONTAINER_TYPE; ///@brief ??????????????? typedef struct tagITEM_LIQUID_INFO_ARRY { EM_METAL_CONTAINER_TYPE emMetalcontainer; /// ???????????? EM_DETECT_SAFE_GRADE emItemGrade; /// ?????? BYTE bReserved[892]; /// ?????? } NET_LIQUID_ITEM_INFO; ///@brief ????????? (?????? DH_ALARM_LIQUID_DETECTION) typedef struct tagALARM_LIQUID_DETECTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? int nAction; /// ??????? 0?????????? NET_TIME_EX UTC; /// ???????????? EM_DETECT_SAFE_GRADE emDetectSafeGrade; /// ??????????? NET_LIQUID_ITEM_INFO stuLiquidObjectInfo[16]; /// ????????????? int nObjectNum; /// ????????????? }ALARM_LIQUID_DETECTION_INFO; ///@brief ??????????????? typedef enum tagEM_ABSTRACT_STATE { EM_ABSTRACT_UNKNOWN, /// ??? EM_ABSTRACT_SUCCESS, /// ?????? EM_ABSTRACT_FALSE, /// ?????? EM_ABSTRACT_PROCESS, /// ?????????(?????GroupID) } EM_ABSTRACT_STATE; ///@brief ??????????????? typedef enum tagEM_FEATURE_ERROR_CODE { EM_FEATURE_ERROR_SUCCESS, /// ??? EM_FEATURE_ERROR_UNKNOWN, /// ??? EM_FEATURE_ERROR_IMAGE_FORMAT_ERROR, /// ????????? EM_FEATURE_ERROR_NOFACE_OR_NOTCLEAR, /// ??????????? EM_FEATURE_ERROR_MULT_FACES, /// ?????? EM_FEATURE_ERROR_IMAGH_DECODE_FAILED, /// ????????? EM_FEATURE_ERROR_NOT_SUGGEST_STORAGE, /// ???????? EM_FEATURE_ERROR_DATABASE_OPERATE_FAILED, /// ??????????? EM_FEATURE_ERROR_GET_IMAGE_FAILED, /// ???????? EM_FEATURE_ERROR_SYSTEM_EXCEPTION, /// ????????Licence????????????????????????????? EM_FEATURE_ERROR_UNDERSIZED_WIDTH, /// ????????? EM_FEATURE_ERROR_UNDERSIZED_INTERPUPILLARY_DISTANCE,/// ???????????? EM_FEATURE_ERROR_FACE_ALIGNMENT_SCORE_LOW, /// ???????????????? EM_FEATURE_ERROR_OVERSIZED_FACE_PITCH_ANGLE, /// ?????????? EM_FEATURE_ERROR_OVERSIZED_FACE_YAW_ANGLE, /// ??????????? EM_FEATURE_ERROR_OVERSIZED_FACE_ROLL_ANGLE, /// ?????????? EM_FEATURE_ERROR_FACE_QUALITY_LOW, /// ???????????? EM_FEATURE_ERROR_FACE_DEFINITION_LOW, /// ???????????? EM_FEATURE_ERROR_EYE_OCCLUSION, /// ????????? EM_FEATURE_ERROR_FOREHEAD_OCCLUSION, /// ???????? EM_FEATURE_ERROR_MOUTH_OCCLUSION, /// ????????? EM_FEATURE_ERROR_INCOMPLETE_FACE, /// ??????? EM_FEATURE_ERROR_ABNORMAL_FACE_EXPOSURE, /// ??????????????? EM_FEATURE_ERROR_FACE_SATURATION_LOW, /// ????????? EM_FEATURE_ERROR_FACE_AREA_OVER_PROPORTION, /// ???????????????????? EM_FEATURE_ERROR_FACE_DETECTION_FAILED /// ????????????? }EM_FEATURE_ERROR_CODE; ///@brief ???????????????????? typedef struct tagFACE_FEATURE_ABSTRACT_INFO { EM_ABSTRACT_STATE emAbstractState; /// ??????????????? int nProcess; /// ????????????,???? char szUID[DH_MAX_PERSON_ID_LEN]; /// ?????????????, IVSS??? char szGroupId[DH_COMMON_STRING_64]; /// ????????????ID, IPC??? UINT nSucceedCnt; /// ?????n???????????IPC??? UINT nFailedCnt; /// ?????n??????????IPC??? EM_FEATURE_ERROR_CODE emFeatureError; /// ????????????????(??FailedCnt????0?????)??IPC??? UINT nToken; /// ????????token?????????????????IPC??? BYTE byReserved[496]; /// ?????????? } FACE_FEATURE_ABSTRACT_INFO; ///@brief ????????????????????(??????DH_ALARM_FACE_FEATURE_ABSTRACT) typedef struct tagALARM_FACE_FEATURE_ABSTRACT_INFO { int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) BYTE byReserved1[4]; /// ?????? int nRetAbstractInfo; /// ???????????????????????????? FACE_FEATURE_ABSTRACT_INFO stuAbstractInfo[MAX_ABSTRACT_INFO_NUM]; /// ????????????????? BYTE byReserved[512]; /// ?????????? } ALARM_FACE_FEATURE_ABSTRACT_INFO; ///@brief ???????????(?????? DH_ALARM_RECORD_SCHEDULE_CHANGE) typedef struct tagALARM_RECORD_SCHEDULE_CHANGE_INFO { int nChannelID; /// ????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; char szUser[DH_COMMON_STRING_128]; /// ??????? BYTE byReserved[1024]; /// ??????? } ALARM_RECORD_SCHEDULE_CHANGE_INFO; ///@brief NTP??????????(?????? DH_ALARM_NTP_CHANGE) typedef struct tagALARM_NTP_CHANGE_INFO { int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? char szUser[DH_COMMON_STRING_128]; /// ??????? BYTE byReserved[1028]; /// ?????????? } ALARM_NTP_CHANGE_INFO; ///@brief Raid????? typedef enum tagEM_RAID_SYNC_STATE { EM_RAID_SYNC_STATE_UNKNOWN = -1, /// ??? EM_RAID_SYNC_STATE_SELFADAPTION, /// ?????(????) EM_RAID_SYNC_STATE_SYNCPRIORITY, /// ????????I/O??????Raid??? EM_RAID_SYNC_STATE_BUSINESSPRIORITY, /// ????????I/O??????????????? EM_RAID_SYNC_STATE_EQUILIBRIUM, /// ???? }EM_RAID_SYNC_STATE; ///@brief ???Smart??? typedef struct tagNET_HDDSMART_INFO { int nID; /// ????ID int nCurrent; /// ????? char szName[DH_COMMON_STRING_64]; /// ?????? int nWorst; /// ??????? int nThreshold; /// ??? char szRaw[DH_COMMON_STRING_32]; /// ????,?????????????????????????? int nPredict; /// ??,?????????????,????????? EM_RAID_SYNC_STATE emSync; /// Raid????? BYTE byReserved[512]; /// ??????? }NET_HDDSMART_INFO; ///@brief ????????????( DH_ALARM_HDD_TEMPERATUREALARM ) typedef struct tagALARM_HDD_TEMPERATUREALARM_INFO { int nAction; /// ???????1:Start 2:Stop int nTemperature; /// ????????? NET_TIME_EX stuTime; /// ???????????? char szHDDName[DH_COMMON_STRING_64]; /// ??????? NET_HDDSMART_INFO stuHDDSmartInfo; /// ???Smart??? BYTE byReserved[512]; /// ??????? }ALARM_HDD_TEMPERATUREALARM_INFO; ///@brief ???????????( DH_ALARM_HDD_SHAKEALARM ) typedef struct tagALARM_HDD_SHAKEALARM_INFO { int nAction; /// ???????1:Start 2:Stop NET_TIME_EX stuTime; /// ???????????? char szHDDName[DH_COMMON_STRING_64]; /// ??????? NET_HDDSMART_INFO stuHDDSmartInfo; /// ???Smart??? BYTE byReserved[512]; /// ??????? }ALARM_HDD_SHAKEALARM_INFO; ///@brief ????? typedef enum tagEM_PATROL_STATUS { EM_PATROL_STATUS_UNKNOWN, ///??? EM_PATROL_STATUS_START, ///?????? EM_PATROL_STATUS_END, ///??????? EM_PATROL_STATUS_FAIL, ///?????? }EM_PATROL_STATUS; ///@brief ????????????( DH_ALARM_PATROL_STATUS ) typedef struct tagALARM_PATROL_STATUS_INFO { NET_TIME_EX stuTime; ///?????????? EM_PATROL_STATUS emPatrolStatus; ///????? BYTE byReserved[512]; ///??????? }ALARM_PATROL_STATUS_INFO; ///@brief ?????????????? typedef enum tagEM_AREAARM_TRIGGERMODE { EM_AREAARM_TRIGGERMODE_UNKNOWN, /// ??? EM_AREAARM_TRIGGERMODE_KEYPAD, /// ???? EM_AREAARM_TRIGGERMODE_REMOTECONTROL, /// ????? EM_AREAARM_TRIGGERMODE_USER, /// ??????? EM_AREAARM_TRIGGERMODE_LOCAL, /// ???? EM_AREAARM_TRIGGERMODE_TIMER, /// ????? EM_AREAARM_TRIGGERMODE_KEY, /// Key??????? EM_AREAARM_TRIGGERMODE_REMOTE, /// ??????(???????????????????App??????????) EM_AREAARM_TRIGGERMODE_DSS, /// DSS??????? EM_AREAARM_TRIGGERMODE_DSSPRO, /// DSSPro??????? EM_AREAARM_TRIGGERMODE_DMSS, /// ???????? EM_AREAARM_TRIGGERMODE_PLATFORM, /// Smart pss??ICC?? }EM_AREAARM_TRIGGERMODE; ///@brief ?????????????? typedef enum tagEM_AREAARM_USER { EM_AREAARM_USER_UNKNOWN, /// ??? EM_AREAARM_USER_SUPERVISOR, EM_AREAARM_USER_MANAGER, /// ??????? EM_AREAARM_USER_MASTER, /// ????? EM_AREAARM_USER_USER, /// ?????? EM_AREAARM_USER_TEMPORARY, /// ?????? EM_AREAARM_USER_DURESS, /// ??????? EM_AREAARM_USER_PATROL, /// ?????? }EM_AREAARM_USER; ///@brief ???????? typedef enum tagEM_ARM_STATE { EM_ARM_STATE_UNKNOWN, /// ??? EM_ARM_STATE_TOTAL_ARMING, /// Total???? EM_ARM_STATE_PARTIAL1_ARMING, /// partial1???? EM_ARM_STATE_PARTIAL2_ARMING, /// partial2???? EM_ARM_STATE_PARTIAL1_PARTIAL2_ARMING, /// partial1+2???? EM_ARM_STATE_FORCEARMING, /// ?????? EM_ARM_STATE_DISARMING, /// ???? }EM_ARM_STATE; ///@brief ???????????????(?????? DH_ALARM_AREAARM_MODECHANGE) typedef struct tagALARM_AREAARM_MODECHANGE_INFO { int nAreaIndex; /// ?????? int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? EM_AREAARM_TRIGGERMODE emTriggerMode; /// ??????? EM_AREAARM_USER emUser; /// ???????????emTriggerMode = EM_AREAARM_USER_USER????? UINT nID; /// ID??,emTriggerMode = EM_AREAARM_TRIGGERMODE_KEYPAD /// ?????????;emTriggerMode =EM_AREAARM_TRIGGERMODE_REMOTECONTROL???????????? EM_ARM_STATE emArmState; /// ???????? BYTE byReserved[1024]; /// ?????????? }ALARM_AREAARM_MODECHANGE_INFO; ///@brief ??????? typedef struct tagNET_ALARM_ZONE_MODE_CHANGE_STATUS { int nIndex; /// ??????,1-256 int nAreasCount; /// Area????? int nAreas[64]; /// Area??,1-64 char szMode[32]; /// ?????????? char szReserved[64]; /// ??????? }NET_ALARM_ZONE_MODE_CHANGE_STATUS; ///@brief ???????DH_ALARM_ZONE_MODE_CHANGE(????????????)????????????????? typedef struct tagNET_ALARM_ZONE_MODE_CHANGE_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? EM_AREAARM_TRIGGERMODE emTriggerMode; /// ??????? char szUser[16]; /// ???????, ??emTriggerMode?EM_AREAARM_TRIGGERMODE_KEYPAD/EM_AREAARM_TRIGGERMODE_REMOTECONTROL????? UINT nID; /// ID???????????????????????????????key????????????TriggerMode?EM_AREAARM_TRIGGERMODE_KEYPAD/EM_AREAARM_TRIGGERMODE_REMOTECONTROL/EM_AREAARM_TRIGGERMODE_TIMER/EM_AREAARM_TRIGGERMODE_KEY????? UINT nUserCode; /// ?????????TriggerMode?EM_AREAARM_TRIGGERMODE_KEYPAD/EM_AREAARM_TRIGGERMODE_REMOTE????? int nStatusCount; /// ??????????? NET_ALARM_ZONE_MODE_CHANGE_STATUS stuStatus[256]; /// ??????? char szReserved[1024]; /// ??????? } NET_ALARM_ZONE_MODE_CHANGE_INFO; ///@brief ???????DH_ALARM_PSTN_PERIODIC_TEST(PSTN??????????)????????????????? typedef struct tagNET_ALARM_PSTN_PERIODIC_TEST_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannelID; /// ????? NET_TIME_EX stuTime; /// ???????????? char szReserved[1024]; /// ??????? } NET_ALARM_PSTN_PERIODIC_TEST_INFO; ///@brief ??????????? typedef enum tagEM_LOSTMODULE_TYPE { EM_LOSTMODULE_TYPE_UNKNOWN, /// ??? EM_LOSTMODULE_TYPE_WIRED, /// ?????????? EM_LOSTMODULE_TYPE_WIRELESS, /// ??????? }EM_LOSTMODULE_TYPE; #define MAX_ZONE_NUMBER 72 ///?????????? #define MAX_ZONE_NUMBER_EX 256 ///????????????? ///@brief ?????????????(?????? DH_ALARM_ZONEMODULELOST) typedef struct tagALARM_ZONEMODULE_LOST_INFO { EM_LOSTMODULE_TYPE emType; /// ??????????? int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? int nZones; /// ???????????????? int arrZones[MAX_ZONE_NUMBER]; /// ?????????????? bool bOnLine; /// ??????,false:?????? true:???? BYTE byReserved1[3]; /// ?????? BYTE byReserved[1024]; /// ?????????? }ALARM_ZONEMODULE_LOST_INFO; ///@brief ???????? typedef enum tagEM_DEFENCE_AREA_TYPE { EM_DEFENCE_AREA_TYPE_UNKNOWN, /// ??? EM_DEFENCE_AREA_TYPE_INTIME, /// ???????? EM_DEFENCE_AREA_TYPE_DELAY, /// ??????? EM_DEFENCE_AREA_TYPE_DELAY2, /// ???????2 EM_DEFENCE_AREA_TYPE_FOLLOW, /// ??????? EM_DEFENCE_AREA_TYPE_EXITEND, /// ??????? EM_DEFENCE_AREA_TYPE_FULLDAY, /// 24??????? EM_DEFENCE_AREA_TYPE_FIRE, /// ????? EM_DEFENCE_AREA_TYPE_PANIC, /// ?????? EM_DEFENCE_AREA_TYPE_ROBBERY, /// ??????? EM_DEFENCE_AREA_TYPE_MEDICAL, /// ?????????? EM_DEFENCE_AREA_TYPE_KEY, /// key???? }EM_DEFENCE_AREA_TYPE; ///@brief ????????????? typedef enum tagEM_AREAALARM_TRIGGER_TYPE { EM_AREAALARM_TRIGGER_TYPE_UNKNOWN, ///??? EM_AREAALARM_TRIGGER_TYPE_ALARM, /// ????? EM_AREAALARM_TRIGGER_TYPE_TAMPER, /// ??????? EM_AREAALARM_TRIGGER_TYPE_MASK, /// ?????? EM_AREAALARM_TRIGGER_TYPE_SHORT, /// ??????? }EM_AREAALARM_TRIGGER_TYPE; ///@brief ????????(?????? DH_ALARM_AREAALARM) typedef struct tagALARM_AREAALARM_INFO { int nAreaIndex; /// ????? int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? char szName[128]; /// ???? EM_DEFENCE_AREA_TYPE emDefenceAreaType; /// ???????? int nIndex; /// ??????????? EM_AREAALARM_TRIGGER_TYPE emTrigerType; /// ???????? BYTE byReserved[1024]; /// ?????????? }ALARM_AREAALARM_INFO; #define MAX_AREA_NUMBER 8 ///???area???? #define MAX_AREA_NUMBER_EX 64 ///???area??????? ///@brief ?????????(?????? DH_ALARM_ZONEOPEN) typedef struct tagALARM_ZONEOPEN_INFO { int nAction; /// ???????1:Start 2:Stop int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? char szName[128]; /// ???? int nAreaNum; /// ??????? int arrAreas[MAX_AREA_NUMBER]; ///????? int nChannelID; /// ?????? BYTE byReserved[1024]; /// ?????????? }ALARM_ZONEOPEN_INFO; ///@brief ???????(?????? DH_ALARM_SYSTEMTAMPER) typedef struct tagALARM_SYSTEMTAMPER_INFO { int nAction; /// ???????1:Start 2:Stop int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? BYTE byReserved[1024]; /// ?????????? }ALARM_SYSTEMTAMPER_INFO; ///@brief ?????????(?????? DH_ALARM_CITIZEN_PICTURE_COMPARE) typedef struct tagALARM_CITIZEN_PICTURE_COMPARE_INFO { int nChannelID; /// ????? int nEventID; /// ???ID NET_TIME_EX stuTime; /// ???????????? BOOL bCompareResult; /// ????????,??????????????????????,true??????,false?????? BYTE nSimilarity; /// ?????????????,????????,????[1,100] BYTE nThreshold; /// ??????,????[1,100] BYTE byReserved1[2]; /// ?????? EM_CITIZENIDCARD_SEX_TYPE emSex; /// ??? int nECType; /// ????(????DEV_EVENT_ALARM_CITIZENIDCARD_INFO??nECType????) char szCitizen[DH_COMMON_STRING_64]; /// ???????? char szAddress[DH_COMMON_STRING_256]; /// ?? char szNumber[DH_COMMON_STRING_64]; /// ????? char szAuthority[DH_COMMON_STRING_256]; /// ??????? NET_TIME stuBirth; /// ????????(??????) NET_TIME stuValidityStart; /// ???????????????(??????) BOOL bLongTimeValidFlag; /// ???? TRUE, ??????? ???????????,??? stuValidityEnd ??????? /// ???? FALSE, ??? ??????? ?? stuValidityEnd ? NET_TIME stuValidityEnd; /// ???????????????(??????) char szCardNo[DH_COMMON_STRING_32]; /// IC???? char szCellPhone[DH_COMMON_STRING_32]; /// ?????????????????????? UINT nEventType; /// ????????0?????????? 1?????????? char szUserID[32]; /// ????????????ID UINT nFaceIndex; /// ?????? EM_MASK_STATE_TYPE emMask; /// ?????? int nScore; /// ??????????? char szIDPhysicalNumber[20]; /// ???????????????????? BYTE byReserved[956]; /// ??????? } ALARM_CITIZEN_PICTURE_COMPARE_INFO; ///@brief ????????????????( DH_ALARM_HDD_HEALTHALARM ) typedef struct tagALARM_HDD_HEALTHALARM_INFO { int nAction; /// ???????1:Start 2:Stop NET_TIME_EX stuTime; /// ???????????? char szHDDName[DH_COMMON_STRING_64]; /// ??????? NET_HDDSMART_INFO stuHDDSmartInfo; /// ???Smart??? BYTE byReserved[512]; /// ??????? }ALARM_HDD_HEALTHALARM_INFO; ///@brief ????????????????( DH_ALARM_STORAGE_WORKDIRECTORY_SWITCH ) typedef struct tagALARM_STORAGE_WORKDIRECTORY_SWITCH_INFO { NET_TIME_EX stuTime; /// ???????????? char szGroup[DH_COMMON_STRING_64]; /// ??????????? }ALARM_STORAGE_WORKDIRECTORY_SWITCH_INFO; ///@brief ???? typedef struct tagHOMESCENE_STATE_INFO { char szName[128]; ///?????? BOOL bOnline; ///?????? BYTE byReserved[512]; ///??????? }HOMESCENE_STATE_INFO; ///@brief ??????????????????(DH_ALARM_HOMESCENE_CHANGE) typedef struct tagALARM_HOMESCENE_CHANGE_INFO { char szSceneID[32]; ///?????? HOMESCENE_STATE_INFO stuState; ///???? BYTE byReserved[512]; ///??????? }ALARM_HOMESCENE_CHANGE_INFO; ///@brief ????N?? typedef enum tagEM_BOARDHOTPLUG_ACTION { EM_BOARDHOTPLUG_ACTION_UNKNOWN, /// ??? EM_BOARDHOTPLUG_ACTION_ADD, /// ??????? EM_BOARDHOTPLUG_ACTION_REMOVE, /// ??????? }EM_BOARDHOTPLUG_ACTION; ///@brief ?????????????(DH_ALARM_DEVBOARDHOTPLUG) typedef struct tagALARM_DEVBOARDHOTPLUG_INFO { NET_TIME_EX stuTime; /// ???????????? EM_BOARDHOTPLUG_ACTION emBoardAction; /// ????N?? int nBoardSlot; /// ???????????????????? BYTE byReserved[512]; /// ??????? }ALARM_DEVBOARDHOTPLUG_INFO; ///@brief ????????????????????????? (DH_ALARM_TRAFFIC_LINKAGEALARM) typedef struct tagALARM_TRAFFIC_LINKAGEALARM_INFO { NET_TIME_EX stuTime; /// ???????????? char szCode[DH_COMMON_STRING_32]; /// ??????????????? BYTE byReserved[1024]; /// ??????? }ALARM_TRAFFIC_LINKAGEALARM_INFO; ///@brief ??????????? (DH_ALARM_COAXIAL_ALARM_LOCAL) typedef struct tagALARM_COAXIAL_ALARM_LOCAL_INFO { int nAction; /// ???????1:Start 2:Stop NET_TIME_EX UTC; /// ???????????? int nAlarmChannel; /// ????????????? NET_SENSE_METHOD emSenseMethod; /// ?????????? char szName[MAX_COMMON_STRING_64]; /// ????????? int nChannelID; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1020]; /// ??????? } ALARM_COAXIAL_ALARM_LOCAL_INFO; ///@brief NAS????????????????( DH_ALARM_NAS_FILE_REMOVE_STATUS ) typedef struct tagALARM_NAS_FILE_REMOVE_STATUS_INFO { int nEventID; /// ???ID int nAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? NASFILE_STATUS_STATE emStatus; /// ?????? char szID[MAX_COMMON_STRING_128]; /// ????ID UINT nProgress; /// ???????: 0 ~ 100 BYTE byReserved[1028]; /// ?????????? } ALARM_NAS_FILE_REMOVE_STATUS_INFO; ///@brief ??????????APK???( DH_ALARM_NAS_APK_INSTALL_REQUEST ) typedef struct tagALARM_NAS_APK_INSTALL_REQUEST_INFO { DWORD dwSize; char szApkPath[MAX_COMMON_STRING_128]; /// ???????????? } ALARM_NAS_APK_INSTALL_REQUEST_INFO; ///@brief APK????? typedef enum tagEM_NAS_APK_INSTALL_STATUS { EM_NAS_APK_INSTALL_STATUS_UNKNOWN, /// ??? EM_NAS_APK_INSTALL_STATUS_FAILED, /// ??? EM_NAS_APK_INSTALL_STATUS_SUCCEED, /// ??? EM_NAS_APK_INSTALL_STATUS_INSTALLING, /// ????? } EM_NAS_APK_INSTALL_STATUS; ///@brief ??????APK?????( DH_ALARM_NAS_APK_INSTALL_STATUS ) typedef struct tagALARM_NAS_APK_INSTALL_STATUS_INFO { int nEventID; /// ???ID int nAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? EM_NAS_APK_INSTALL_STATUS emStatus; /// ?????? char szApkPath[MAX_COMMON_STRING_128]; /// ???????????? UINT nProgress; /// ???????: 0 ~ 100 BYTE byReserved[1028]; /// ?????????? } ALARM_NAS_APK_INSTALL_STATUS_INFO; ///@brief ????????????????? typedef enum tagEM_FILE_COMPRESS_TYPE { EM_FILE_COMPRESS_TYPE_UNKNOWN, /// ??? EM_FILE_COMPRESS_TYPE_COMPRESS, /// ??????, ???????pInParam = NET_IN_COMPRESS_FILE,pOutParam = NET_OUT_COMPRESS_FILE EM_FILE_COMPRESS_TYPE_DECOMPRESS, /// ??????, ???????pInParam = NET_IN_DECOMPRESS_FILE,pOutParam = NET_OUT_DECOMPRESS_FILE } EM_FILE_COMPRESS_TYPE; ///@brief ??????????????? typedef enum tagEM_FILE_COMPRESS_STATUS { EM_FILE_COMPRESS_STATUS_UNKNOWN, /// ??? EM_FILE_COMPRESS_STATUS_FAILED, /// ??? EM_FILE_COMPRESS_STATUS_SUCCEED, /// ??? EM_FILE_COMPRESS_STATUS_NEED_PWD, /// ??????? EM_FILE_COMPRESS_STATUS_WRONG_PWD, /// ??????? EM_FILE_COMPRESS_STATUS_NO_FILE, /// ????????? } EM_FILE_COMPRESS_STATUS ; ///@brief ???????????????????( DH_ALARM_FILE_COMPRESS_STATUS ) typedef struct tagALARM_FILE_COMPRESS_STATUS_INFO { int nEventID; /// ???ID int nAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? char szID[MAX_COMMON_STRING_128]; /// ????ID EM_FILE_COMPRESS_TYPE emType; /// ???????? int nSrcNum; /// ????(??)?????? char szSrcList[MAX_NASFILE_NUM][MAX_COMMON_STRING_128]; /// ????(??)?????? char szDstPath[MAX_COMMON_STRING_128]; /// ??????? EM_FILE_COMPRESS_STATUS emStatus; /// ?????? UINT nProgress; /// ???????: 0 ~ 100 BYTE byReserved[1024]; /// ?????????? } ALARM_FILE_COMPRESS_STATUS_INFO; ///@brief ??????????????( DH_ALARM_STRANGER_ALARM ) typedef struct tagALARM_STRANGER_ALARM_INFO { int nChannelID; /// ???????????????? int nEventID; /// ???ID int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? BYTE byReserved[1024]; /// ?????? }ALARM_STRANGER_ALARM_INFO; ///@brief ??????????????( DH_ALARM_QR_CODE_CHECK ) typedef struct tagALARM_QR_CODE_CHECK_INFO { int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? double dbPTS; /// ????(?????????) char szQRCode[256]; /// ?????????? int nChannelID; /// ???????????????? BYTE byReserved[1020]; /// ?????? }ALARM_QR_CODE_CHECK_INFO; ///@brief ?????????? typedef enum tagEM_LOCK_MODE { EM_MODE_UNKNOWN = -1, /// ??? EM_MODE_NORMAL = 0, /// ?????? EM_MODE_CHANNEL = 1, /// ?????(???????????????????) EM_MODE_UNDISTURBED = 2, /// ??????(????????????????) } EM_LOCK_MODE ; ///@brief ????????????( DH_ALARM_ACCESS_CTL_LOCK_MODE ) typedef struct tagALARM_ACCESS_CTL_LOCK_MODE_INFO { int nEventID; /// ???ID NET_TIME_EX UTC; /// ?????????? double dbPTS; /// ????(?????????) char szSN[32]; /// ????????? EM_LOCK_MODE emLockMode; /// ?????????? BYTE byReserved[1020]; /// ??????? }ALARM_ACCESS_CTL_LOCK_MODE_INFO; ///@brief ????????????( DH_ALARM_LOCK_ROOM_NUM_BIND ) typedef struct tagALARM_LOCK_ROOM_NUM_BIND_INFO { int nEventID; /// ???ID NET_TIME_EX UTC; /// ???????????? double dbPTS; /// ????(?????????) char szSN[32]; /// ????????? char szName[64]; /// ???????????????????? UINT nTaskID; /// ????ID char szRoomNo[64]; /// ??????????? BYTE byReserved[956]; /// ?????? }ALARM_LOCK_ROOM_NUM_BIND_INFO; ///@brief ???????????(DH_ALARM_LEAVE_DETECTION) typedef struct tagALARM_LEAVE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0????????????1?????????????????2???????????????? NET_TIME_EX UTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ?????? }ALARM_LEAVE_DETECTION_INFO; ///@brief ??????? typedef struct tagALARM_LANE_INFO { UINT nQueueLen; /// ??????????????? UINT nLane; /// ?????????0?????????????????????0??1??2??3??4 UINT nUserDefinedLaneNumber; /// ????????t???? BYTE byReserved[256]; /// ?????? }ALARM_LANE_INFO; ///@brief ?????????????????DH_ALARM_TRAFFICGZJJ_QUEUE_LEN?? typedef struct tagALARM_TRAFFICGZJJ_QUEUE_LEN_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nPeriodByMs; /// ?????????????????? ALARM_LANE_INFO stuAlarmLane[5]; /// ??????? BYTE byReserved[1024];/// ?????? } ALARM_TRAFFICGZJJ_QUEUE_LEN_INFO; ///@brief ???????? typedef enum _EM_NET_CARTYPE { NET_CARTYPE_UNKNOW = 0, /// ??? NET_CARTYPE_PASSENGERCAR, /// ??? NET_CARTYPE_LARGETRUCK, /// ????? NET_CARTYPE_MIDTRUCK, /// ?????? NET_CARTYPE_SALOONCAR, /// ???? NET_CARTYPE_MICROBUS, /// ????? NET_CARTYPE_MICROTRUCK, /// ?????? NET_CARTYPE_TRICYCLE, /// ????? NET_CARTYPE_MOTOR, /// ????? NET_CARTYPE_PASSERBY, /// ???? NET_CARTYPE_SUVMPV, /// SUV-MPV NET_CARTYPE_MIDPASSENGERCAR, /// ????? NET_CARTYPE_TANKCAR, /// ?????????(??????) NET_CARTYPE_SUV, /// SUV NET_CARTYPE_MPV, /// MPV NET_CARTYPE_BUS, /// ?????? NET_CARTYPE_PICKUP, /// ????? NET_CARTYPE_MINICARRIAGE, /// ???? NET_CARTYPE_OILTANKTRUCK, /// ????(??????) NET_CARTYPE_SLOTTANKCAR, /// ????(??????) NET_CARTYPE_RESERVED1, /// ????1(??????) NET_CARTYPE_DREGSCAR, /// ??????(??????) NET_CARTYPE_CONCRETEMIXERTRUCK, /// ??????????(??????) NET_CARTYPE_TAXI, /// ????(??????) NET_CARTYPE_POLICE, /// ????(??????) NET_CARTYPE_AMBULANCE, /// ?????(??????) NET_CARTYPE_GENERAL, /// ?????(??????) NET_CARTYPE_WATERINGCAR, /// ?????(??????) NET_CARTYPE_RESERVED2, /// ????2(??????) NET_CARTYPE_FIREENGINE, /// ??????(??????) NET_CARTYPE_TRACTOR, /// ??????(??????) NET_CARTYPE_MACHINESHOPTRUCK, /// ?????(??????) NET_CARTYPE_POWERLOTVEHICLE, /// ?????????(??????) NET_CARTYPE_SUCTIONSEWAGETRUCK, /// ?????(??????) NET_CARTYPE_NORMALVEHICLETANKTRUCK, /// ??????(??????) NET_CARTYPE_TWOCYCLE, /// ????? } EM_NET_CARTYPE; ///@brief ?????????????????????????? typedef struct tagCOILS_INFO { UINT nCarId; /// ????Id???????????ID??????????????????) char PlateNum[64]; /// ????? EM_NET_CARTYPE emCarType; /// ???????? UINT nDirection; /// ????????????????0-?????1-?????2-?????3-?????4-??? BYTE byReserved[1020];/// ?????? } COILS_INFO; ///@brief ??????? typedef struct tagLANE_INFO { UINT nLane; /// ???????????????0~4?? int nLaneType; /// ??????????????????0?? ????????1 double dbLaneOcc; /// ????????????,????[0.0~1.0] UINT nRoadwayNumber; /// ?????t?????????0~128?? int nCurrentLaneVehicleNum; /// ??????????????? int nVehicleNum; /// ?????????????????????????????(???0.5?????????) UINT nCarId; /// ?????????????????ID?????????????CarId?????????????????? double dbCarEnterTime; /// ???CarId???????????????????? double dbCarLeaveTime; /// ???CarId????????????????? UINT nCarDistance; /// ???CarId???????????????????? int nQueueLen; /// ????????????????????????? double dbCarSpeed; /// ???CarId????????????????????/?? int nCoilsInfoNum; /// ???????????????? COILS_INFO stuCoilsInfo[70][2]; /// ??????????????????????????? int nRetSolidLanNum; /// ????????????????? int nSolidLaneNum[6]; /// ???????????????????????t???? int nVehicleNumByTypeNum; /// ??????????????????? UINT nVehicleNumByType[64]; /// ??????????,????????????????????????? EM_NET_CARTYPE???????????????????????????? int nEndLen; /// ??????????????????????????????????? ?????????? BYTE byReserved[1024]; /// ?????? } LANE_INFO; ///@brief ???????????DH_ALARM_TRAFFIC_XINKONG?? typedef struct tagALARM_TRAFFIC_XINKONG_INFO { int nChannelID; /// ????? int nAction; /// ?????????????0???????????? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID char szName[128]; /// ??????? BYTE byReserved1[4]; /// ?????? int nLaneInfoNum; /// ???????????????? LANE_INFO stuLaneInfo[6]; /// ??????? UINT nVirtualCoilHeight; /// ?????????????????????????1???????: [1, 20] UINT nVirtualCoilNumber; /// ????????????? int nRangeTime; /// ??????????????????????????????????????????ms?? int nCurrentAllVehicleNum; /// ???????????????? int nPedestrationNum; /// ???????????????????? int nNonMotorNum; /// ????????????????????????? BYTE byReserved[1000]; /// ?????? } ALARM_TRAFFIC_XINKONG_INFO; ///@brief ?????????? typedef enum tagEM_PERIPHERAL_EXCEPTION_TYPE { EM_PERIPHERAL_EXCEPTION_TYPE_UNKNOWN = 0, /// ??? EM_PERIPHERAL_EXCEPTION_TYPE_RFID_OFFLINE, /// RFID???? EM_PERIPHERAL_EXCEPTION_TYPE_RFID_OUTAGE, /// RFID??? EM_PERIPHERAL_EXCEPTION_TYPE_LIDAR_OFFLINE, /// ??????????? EM_PERIPHERAL_EXCEPTION_TYPE_LIDAR_OUTAGE, /// ????????? EM_PERIPHERAL_EXCEPTION_TYPE_SCREEN_OUTAGE, /// ?????? EM_PERIPHERAL_EXCEPTION_TYPE_TRUMPET_OUTAGE, /// ?????? EM_PERIPHERAL_EXCEPTION_TYPE_ALARMLIGHT_OUTAGE, /// ???????? } EM_PERIPHERAL_EXCEPTION_TYPE; ///@brief ?????????? typedef enum tagEM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE { EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_UNKNOWN = 0, /// ??? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_RFID_OFFLINE, /// RFID???? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_RFID_OUTAGE, /// RFID??? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_LIDAR_OFFLINE, /// ??????????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_LIDAR_OUTAGE, /// ????????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_SCREEN_OUTAGE, /// ?????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_TRUMPET_OUTAGE, /// ?????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_ALARMLIGHT_OUTAGE, /// ???????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_CAMERA_OFFLINE, /// ??????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_RCD_OFFLINE, /// ??????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_RADAR_OFFLINE, /// ??????????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_FLASHLAMP_OFFLINE, /// ?????????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_STROBOLAMP_OFFLINE, /// ????????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE_FLASHLAMELIF_WARNING, /// ???????? } EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE; ///@brief ???????? (DH_ALARM_DEVICE_ABNORMAL) typedef struct tagALARM_DEVICE_ABNORMAL_INFO { int nIndex; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szName[128]; /// ??????? EM_PERIPHERAL_EXCEPTION_TYPE emPeripheralType; /// ?????????? EM_ABNORMAL_PERIPHERAL_EXCEPTION_TYPE emAbnormalTypeList[4]; /// ?????????? unsigned int nAbnormalTypeListRealLen; /// ????????????????????? BYTE byReserved[1000]; /// ?????? } ALARM_DEVICE_ABNORMAL_INFO; ///@brief Jablotron??????????? typedef enum tagEM_JABLOTRON_ALARM_TYPE { EM_JABLOTRON_ALARM_TYPE_UNKNOWN, /// ??? EM_JABLOTRON_ALARM_TYPE_INTRUSION, /// Intrusion EM_JABLOTRON_ALARM_TYPE_FIRE, /// Fire EM_JABLOTRON_ALARM_TYPE_PANIC, /// Panic EM_JABLOTRON_ALARM_TYPE_ARMED, /// BuFang EM_JABLOTRON_ALARM_TYPE_DISARMED, /// WeiBuFang EM_JABLOTRON_ALARM_TYPE_PG, /// PG }EM_JABLOTRON_ALARM_TYPE; ///@brief Jablotron??????????????? typedef struct tagHMS_TIME { DWORD dwHour; /// ? DWORD dwMinute; /// ?? DWORD dwSecond; /// ?? }HMS_TIME; ///@brief ?????????????( DH_ALARM_JABLOTRON_ALARM ) typedef struct tagALARM_JABLOTRONALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????,1???????????????,2????????????????; char szName[128]; /// ??????? EM_JABLOTRON_ALARM_TYPE emAlarmType; /// Jablotron??????????? unsigned int nDefenceZone; /// ??????,1~15 HMS_TIME stuTime; /// Jablotron??????????????? BYTE byReserved[1024]; /// ??????? }ALARM_JABLOTRONALARM_INFO; ///@brief ??????????? typedef struct tagNET_CFG_FACE_BOX_COLOR { int nFaceID; /// ID NET_COLOR_RGBA stuColor; /// ???? BYTE byReserved[108]; /// ??????? }NET_CFG_FACE_BOX_COLOR; ///@brief ?????????( DH_ALARM_FACE_RECOGNITION ) typedef struct tagALARM_FACE_RECOGNITION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? NET_CFG_FACE_BOX_COLOR stuFaceBoxColor; /// ??????????? BYTE byReserved[4096]; /// ??????? }ALARM_FACE_RECOGNITION_INFO; ///@brief ?????????????( DH_ALARM_VEHICLE_OILLEVEL ) typedef struct tagALARM_VEHICLE_OILLEVEL_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? float fOilLevel; /// ??????????,??????% BYTE byReserved[1024]; /// ??????? }ALARM_VEHICLE_OILLEVEL_INFO; ///@brief ??????????????( DH_ALARM_VEHICLE_LOAD ) typedef struct tagALARM_VEHICLE_LOAD_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? UINT nADValue; /// AD????? float fLoad; /// ???????,??????kg BYTE byReserved[1024]; /// ??????? }ALARM_VEHICLE_LOAD_INFO; ///@brief ???????????? typedef enum tagEM_ENGINE_FAILURE_STATUS { EM_ENGINE_FAILURE_UNKNOWN = 0, /// ??? EM_ENGINE_FAILURE_NOTACTIVE, /// "Not active" EM_ENGINE_FAILURE_ACTIVE, /// "Active" EM_ENGINE_FAILURE_BLINK, /// "Blink" EM_ENGINE_FAILURE_NOTAVAILABLE, /// "Not Available" }EM_ENGINE_FAILURE_STATUS; ///@brief ??????????????????( DH_ALARM_ENGINE_FAILURE_STATUS ) typedef struct tagALARM_ENGINE_FAILURE_STATUS_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? EM_ENGINE_FAILURE_STATUS emStatus; /// ???????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? BYTE byReserved[1024]; /// ??????? }ALARM_ENGINE_FAILURE_STATUS_INFO; ///@brief ????????? typedef enum tagEM_VEHICLE_STATE { EM_VEHICLE_STATE_UNKNOWN = 0, EM_VEHICLE_STATE_PARK, /// ????? EM_VEHICLE_STATE_MOTION, /// ??????(??????0km/h) EM_VEHICLE_STATE_SPORT, /// ?????(??????10km/h) }EM_VEHICLE_STATE; ///@brief ??????????? typedef enum tagEM_VEHICLE_GEARS_TYPE { EM_VEHICLE_GEARS_UNKNOWN = -1, EM_VEHICLE_GEARS_P, ///P?? EM_VEHICLE_GEARS_R, ///R?? EM_VEHICLE_GEARS_N, ///N?? EM_VEHICLE_GEARS_D, ///D?? EM_VEHICLE_GEARS_S, ///S?? }EM_VEHICLE_GEARS_TYPE; ///@brief ????? typedef enum tagEM_COVER_STATUS { EM_COVER_STATUS_UNKNOWN = 0, /// ??? EM_COVER_STATUS_NOT_COVER, /// ????? EM_COVER_STATUS_COVER, /// ??? }EM_COVER_STATUS; ///@brief ?????? typedef enum tagEM_LIFT_STATUS { EM_LIFT_STATUS_UNKNOWN = 0, /// ??? EM_LIFT_STATUS_NOT_LIFT, /// ?????? EM_LIFT_STATUS_LIFT, /// ???? }EM_LIFT_STATUS; ///@brief ?????? typedef enum tagEM_LOAD_STATUS { EM_LOAD_STATUS_UNKNOWN = 0, /// ??? EM_LOAD_STATUS_NOT_LOAD, /// ??? EM_LOAD_STATUS_LOAD, /// ???? }EM_LOAD_STATUS; ///@brief ?????????( DH_ALARM_VEHICLE_STATE ) typedef struct tagALARM_VEHICLE_STATE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? EM_VEHICLE_STATE emVehicleState; /// ?????? UINT nOilTankage; /// ?????????????0.1L UINT nCurrentFuel; /// ????????????, ????0.1L UINT nConsumptionOil; /// ???????L/100???? ????0.1L UINT nTotalUsedFuel; /// ?????????????????0.1L UINT nTotalDistance; /// ??????????0.1 Km int nServiceDistance; /// ????????????0.1Km EM_VEHICLE_GEARS_TYPE emCurrentGear; /// ??????? UINT nSpeed; /// ?????????????0.1Km/h char szTaskID[64]; /// ????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? int nAlarmFlag; /// ???????????2000km?????????0:???? 1:???? 2:?????? EM_COVER_STATUS emCoverStatus; /// ????? EM_LIFT_STATUS emLiftStatus; /// ?????? EM_LOAD_STATUS emLoadStatus; /// ?????? BYTE byReserved[1008]; /// ??????? }ALARM_VEHICLE_STATE_INFO; ///@brief IMSI???????( DH_ALARM_IMSI_CHECK ) typedef struct tagALARM_IMSI_CHECK_INFO { int nIndex; /// SIM??????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? char szIMSI[32]; /// ?????IMSI?? BYTE byReserved[1024]; /// ??????? }ALARM_IMSI_CHECK_INFO; ///@brief ??????????( DH_ALARM_BLIND_ALARM ) typedef struct tagALARM_BLIND_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? BYTE byReserved[1024]; /// ??????? }ALARM_BLIND_ALARM_INFO; ///@brief ?????????????( DH_ALARM_VEHICLE_MAINTAINCE ) typedef struct tagALARM_VEHICLE_MAINTAINCE_INFO { int nIndex; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? char szMaintainer[32]; /// ?????? char szMaintainerID[32]; /// ??????ID char szInfo[256]; /// ??????????? BYTE byReserved[1024]; /// ??????? }ALARM_VEHICLE_MAINTAINCE_INFO; ///@brief ????? (DH_ALARM_FIRE_DETECTION) typedef struct tagALARM_FIRE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? }ALARM_FIRE_DETECTION_INFO; ///@brief ???????? typedef enum tagEM_PARKINGLOCK_STATE { EM_PARKINGLOCK_STATE_UNKNOWN = 0, /// ??? EM_PARKINGLOCK_STATE_LOCKRISE, /// ?????????? EM_PARKINGLOCK_STATE_LOCKDOWN, /// ?????????? EM_PARKINGLOCK_STATE_LOCKERROR, /// ???? }EM_PARKINGLOCK_STATE; ///@brief ????? typedef enum tagEM_TRIGGER_SOURCE { EM_TRIGGER_SOURCE_UNKNOWN = 0, /// ??? EM_TRIGGER_SOURCE_SWING_ARM, /// ?????? EM_TRIGGER_SOURCE_BLUETOOTH, /// ???????? EM_TRIGGER_SOURCE_RS485, /// 485?????? EM_TRIGGER_SOURCE_ULTRASOUND, /// ??????? EM_TRIGGER_SOURCE_REMOTE_CONTROL, /// ????????? }EM_TRIGGER_SOURCE; ///@brief ??????????????( DH_ALARM_PARKINGLOCK_STATE ) typedef struct tagALARM_PARKINGLOCK_STATE_INFO { int nIndex; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? UINT nLane; /// ?????? EM_PARKINGLOCK_STATE emState; /// ?? EM_TRIGGER_SOURCE emTriggerSource; /// ????? BYTE byReserved[1024]; /// ??????? }ALARM_PARKINGLOCK_STATE_INFO; ///@brief NAS?????????? typedef enum tagEM_SERVERNAME { EM_SERVERNAME_UNKNOWN, /// ??? EM_SERVERNAME_NFS, /// NFS EM_SERVERNAME_FTP, /// FTP EM_SERVERNAME_SAMBA, /// SAMBA EM_SERVERNAME_ISCSI, /// ISCSI }EM_SERVERNAME; ///@brief NAS???????????????????(??? DH_ALARM_NAS_SERVER_STATE) typedef struct tagALARM_NAS_SERVER_STATE_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? EM_SERVERNAME emServerNames[4]; /// NAS?????????? int nRetServerNamesNum; /// ???????NAS????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? }ALARM_NAS_SERVER_STATE_INFO; ///@brief ?????????????????(??? DH_ALARM_VOLUME_GROUP_FAULT) typedef struct tagALARM_VOLUME_GROUP_FAULT_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? char szName[32]; /// ??????????? char szMembers[512][32]; /// ??????????? int nRetMembersNum; /// ???????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? }ALARM_VOLUME_GROUP_FAULT_INFO; ///@brief ???????????????(??? DH_ALARM_DISK_CHECK) typedef struct tagALARM_DISK_CHECK_INFO { int nAction; /// ???????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? char szName[128]; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? }ALARM_DISK_CHECK_INFO; ///@brief ???????????????????(??? DH_ALARM_CITY_MOTORPARKING) typedef struct tagALARM_CITY_MOTORPARKING_INFO { int nChannelID; /// ????? int nAction; /// ???????: 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[64]; /// ????????? char szPresetName[64]; /// ???????????????? UINT nPresetID; /// ?????????????? int nDetectRegionNum; /// ?????????? DH_POINT DetectRegion[20]; /// ??????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? UINT nParkingDuration; /// ???????????????????? ???0????????? BOOL bPtzPosition; /// stuPtzPosition ??????? PTZ_NORMALIZED_POSITION_UNIT stuPtzPosition; /// ?????? EM_CITYMOTOR_STATUS emMotorStatus; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[2028]; /// ??????? } ALARM_CITY_MOTORPARKING_INFO; ////////////////////////////// ????? ////////////////////////////////////////// ///@brief CLIENT_StartBurnSession ?????????? typedef struct tagNET_IN_START_BURN_SESSION { DWORD dwSize; unsigned int nSessionID; /// ??ID } NET_IN_START_BURN_SESSION; ///@brief CLIENT_StartBurnSession ?????????? typedef struct tagNET_OUT_START_BURN_SESSION { DWORD dwSize; } NET_OUT_START_BURN_SESSION; ///@brief ????? typedef enum tagNET_BURN_MODE { BURN_MODE_SYNC, /// ??? BURN_MODE_TURN, /// ???? BURN_MODE_CYCLE, /// ??? } NET_BURN_MODE; ///@brief ???????? typedef enum tagNET_BURN_EXTMODE { BURN_EXTMODE_UNKNOWN, /// ??? BURN_EXTMODE_NORMAL = 1, /// ??????? BURN_EXTMODE_NODISK, /// ?????? } NET_BURN_EXTMODE; ///@brief ???????? typedef enum tagNET_BURN_RECORD_PACK { BURN_PACK_DHAV, /// DHAV BURN_PACK_PS, /// PS BURN_PACK_ASF, /// ASF BURN_PACK_MP4, /// MP4 BURN_PACK_TS, /// TS } NET_BURN_RECORD_PACK; ///@brief CLIENT_StartBurn ?????????? typedef struct tagNET_IN_START_BURN { DWORD dwSize; DWORD dwDevMask; /// ??????????, ??????????????????? int nChannels[DH_MAX_BURN_CHANNEL_NUM]; /// ?????????? int nChannelCount; /// ???????? NET_BURN_MODE emMode; /// ????? NET_BURN_RECORD_PACK emPack; /// ???????? NET_BURN_EXTMODE emExtMode; /// ???????? } NET_IN_START_BURN; ///@brief CLIENT_StartBurn ?????????? typedef struct tagNET_OUT_START_BURN { DWORD dwSize; } NET_OUT_START_BURN; ///@brief CLIENT_BurnMarkTag ?????????? typedef struct tagNET_IN_BURN_MAAK_TAG { DWORD dwSize; const char* pszDescInfo; /// ?????????? } NET_IN_BURN_MARK_TAG; ///@brief CLIENT_BurnMarkTag ?????????? typedef struct tagNET_OUT_BURN_MAAK_TAG { DWORD dwSize; } NET_OUT_BURN_MARK_TAG; ///@brief CLIENT_BurnChangeDisk ?????????? typedef struct tagNET_IN_BURN_CHANGE_DISK { DWORD dwSize; BOOL nAction; /// ???????, 0-???, 1-???? } NET_IN_BURN_CHANGE_DISK; ///@brief CLIENT_BurnChangeDisk ?????????? typedef struct tagNET_OUT_BURN_CHANGE_DISK { DWORD dwSize; } NET_OUT_BURN_CHANGE_DISK; ///@brief ????? typedef enum tagNET_BURN_STATE { BURN_STATE_STOP, /// ?? BURN_STATE_STOPING, /// ???? BURN_STATE_INIT, /// ????? BURN_STATE_BURNING, /// ????? BURN_STATE_PAUSE, /// ??? BURN_STATE_CHANGE_DISK, /// ?????? BURN_STATE_PREPARE_EXTRA_FILE, /// ????????? BURN_STATE_WAIT_EXTRA_FILE, /// ?????????? BURN_STATE_UPLOAD_FILE_START, /// ????????? BURN_STATE_CHECKING_DISK, /// ???????? BURN_STATE_DISK_READY, /// ??????????? } NET_BURN_STATE; ///@brief ????????? typedef enum tagNET_BURN_ERROR_CODE { BURN_CODE_NORMAL, /// ???? BURN_CODE_UNKNOWN_ERROR, /// ??????? BURN_CODE_SPACE_FULL, /// ????? BURN_CODE_START_ERROR, /// ?????????? BURN_CODE_STOP_ERROR, /// ????????? BURN_CODE_WRITE_ERROR, /// ??????? BURN_CODE_UNKNOWN, /// ??? } NET_BURN_ERROR_CODE; ///@brief CLIENT_BurnGetState ?????????? typedef struct tagNET_IN_BURN_GET_STATE { DWORD dwSize; } NET_IN_BURN_GET_STATE; ///@brief ????????? typedef enum tagEM_NET_BURN_DEV_USED_STATE { EM_NET_BURN_DEV_USED_STATE_UNKNOWN, ///??? EM_NET_BURN_DEV_USED_STATE_STOP, ///?? EM_NET_BURN_DEV_USED_STATE_BURNING, ///????? }EM_NET_BURN_DEV_USED_STATE; ///@brief ?????? typedef enum tagEM_DISK_STATE { EM_DISK_STATE_UNKNOWN, /// ??? EM_DISK_STATE_EXIST, /// ?????? EM_DISK_STATE_NO_EXIST, /// ??????? EM_DISK_STATE_NEED_CHANGE, /// ??????? }EM_DISK_STATE; ///@brief ???????? typedef struct tagNET_BURN_DEV_STATE { DWORD dwSize; int nDeviceID; /// ???????ID char szDevName[DH_BURNING_DEV_NAMELEN]; /// ??????????? DWORD dwTotalSpace; /// ??????????, ????KB DWORD dwRemainSpace; /// ???????????, ????KB EM_NET_BURN_DEV_USED_STATE emUsedType; /// ????????? NET_BURN_ERROR_CODE emError; /// ?????????????? EM_DISK_STATE emDiskState; /// ?????? } NET_BURN_DEV_STATE; ///@brief CLIENT_BurnGetState ?????????? typedef struct tagNET_OUT_BURN_GET_STATE { DWORD dwSize; NET_BURN_STATE emState; /// ????? NET_BURN_ERROR_CODE emErrorCode; /// ?????? DWORD dwDevMask; /// ??????????, ??????????????????? int nChannels[DH_MAX_BURN_CHANNEL_NUM]; /// ?????????? int nChannelCount; /// ???????? NET_BURN_MODE emMode; /// ????? NET_BURN_RECORD_PACK emPack; /// ???????? int nFileIndex; /// ???????????? NET_TIME stuStartTime; /// ????????? NET_BURN_DEV_STATE stuDevState[DH_MAX_BURNING_DEV_NUM]; /// ???????? int nRemainTime; /// ?????????, ??????, -1???????? NET_BURN_EXTMODE emExtMode; /// ?????,????????????stuDevState???????? } NET_OUT_BURN_GET_STATE; ///@brief fAttachBurnStateCB ???? typedef struct tagNET_CB_BURNSTATE { DWORD dwSize; const char* szState; /// ??????? ///"UploadFileStart"??????????????? ///"InitBurnDevice":??????????? ///"Burning":????? ///"BurnExtraFileStop"??????? ///"BurnFilePause":?????? ///"SpaceFull":???????? ///"BurnFileError":??????? const char* szFileName; /// ???????????????,????"UploadFileStart"????????????? unsigned int dwTotalSpace; /// ??????,????KB,????"Burning"?????,??????????????? unsigned int dwRemainSpace; /// ???????,????KB,????"Burning"????? const char* szDeviceName; /// ??????????,????????????????? int nRemainTime; /// ?????????, ??????, -1???????? }NET_CB_BURNSTATE; ///@brief ????????????????,lAttachHandle??CLIENT_AttachBurnState?????, ???1??,pBuf->dwSize == nBufLen typedef void (CALLBACK *fAttachBurnStateCB) (LLONG lLoginID, LLONG lAttachHandle, NET_CB_BURNSTATE* pBuf, int nBufLen, LDWORD dwUser); ///@brief ??????????????????? typedef void (CALLBACK *fAttachBurnStateCBEx)(LLONG lLoginID, LLONG lAttachHandle, NET_OUT_BURN_GET_STATE* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttachBurnState()??????? typedef struct tagNET_IN_ATTACH_STATE { DWORD dwSize; const char* szDeviceName; /// ????????,??"/dev/sda" fAttachBurnStateCB cbAttachState; /// ?????????? LDWORD dwUser; /// ??????? LLONG lBurnSession; /// ????????, CLIENT_StartBurnSession??????. ????0?, szDeviceName????, ??????????????????? fAttachBurnStateCBEx cbAttachStateEx; /// ????????????? LDWORD dwUserEx; /// ???????????????????? }NET_IN_ATTACH_STATE; ///@brief CLIENT_AttachBurnState ??????? typedef struct tagNET_OUT_ATTACH_STATE { DWORD dwSize; }NET_OUT_ATTACH_STATE; ///@brief ????????????????,lUploadHandle??CLIENT_StartUploadFileBurned????? typedef void (CALLBACK *fBurnFileCallBack) (LLONG lLoginID, LLONG lUploadHandle, int nTotalSize, int nSendSize, LDWORD dwUser); ///@brief CLIENT_StartUploadFileBurned()??????? typedef struct tagNET_IN_FILEBURNED_START { DWORD dwSize; const char* szMode; /// ????????? /// "append", ?????,???????????????" FILE.zip ",filename?????? /// "evidence", ??????, ?????????????? const char* szDeviceName; /// ????????,???/dev/sda?? const char* szFilename; /// ??????????? fBurnFileCallBack cbBurnPos; /// ????????? LDWORD dwUser; /// ??????? LLONG lBurnSession; /// ??????, CLIENT_StartBurnSession??????. ????0?, szDeviceName????, ??????????????????? }NET_IN_FILEBURNED_START; ///@brief CLIENT_StartUploadFileBurned ??????? typedef struct tagNET_OUT_FILEBURNED_START { DWORD dwSize; char szState[DH_MAX_NAME_LEN]; /// "start"???????????,?????????; "busy"?????,????????"error"????????????,???????,??????? }NET_OUT_FILEBURNED_START; ///@brief ?????????? typedef struct tagNET_BURN_CASE_INFO { DWORD dwSize; int nChannel; /// ????? NET_TIME stuStartTime; /// ????????? NET_TIME stuEndTime; /// ?????????? int nIndex; /// ??? int nCode; /// ??? int nDiscNum; /// ?????? char szName[DH_COMMON_STRING_128]; /// ???? char szPlace[DH_COMMON_STRING_128]; /// ????? char szInvestigator[DH_MAX_CASE_PERSON_NUM][DH_COMMON_STRING_32]; /// ????? char szXyfs[DH_MAX_CASE_PERSON_NUM][DH_COMMON_STRING_32]; /// ArgXyf char szMemo[DH_COMMON_STRING_256]; /// ??? char szVideoName[DH_COMMON_STRING_128]; /// ??????? char szRecorder[DH_COMMON_STRING_32]; /// ????? } NET_BURN_CASE_INFO; ///@brief ????????????????,lAttachHandle??CLIENT_AttachBurnCase????? typedef void (CALLBACK *fBurnCaseCallBack) (LLONG lAttachHandle, NET_BURN_CASE_INFO* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief CLIENT_AttachBurnCase ?????????? typedef struct tagNET_IN_ATTACH_BURN_CASE { DWORD dwSize; fBurnCaseCallBack cbBurnCase; /// ?????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_BURN_CASE; ///@brief CLIENT_AttachBurnCase ?????????? typedef struct tagNET_OUT_ATTACH_BURN_CASE { DWORD dwSize; } NET_OUT_ATTACH_BURN_CASE; ///@brief ?????????????? typedef enum tagEM_NET_BURN_DEV_BUS_TYPE { EM_NET_BURN_DEV_BUS_TYPE_UNKNOWN, /// ??? EM_NET_BURN_DEV_BUS_TYPE_IDE, /// IDE EM_NET_BURN_DEV_BUS_TYPE_USB, /// USB EM_NET_BURN_DEV_BUS_TYPE_1394, /// 1394 EM_NET_BURN_DEV_BUS_TYPE_SATA, /// SATA EM_NET_BURN_DEV_BUS_TYPE_ESATA, /// ESATA }EM_NET_BURN_DEV_BUS_TYPE; ///@brief ?????????????? typedef enum tagEM_NET_BURN_DEV_BK_TYPE { EM_NET_BURN_DEV_BK_TYPE_UNKNOWN, /// ??? EM_NET_BURN_DEV_BK_TYPE_DHFS, /// ????? EM_NET_BURN_DEV_BK_TYPE_DISK, /// ?????? EM_NET_BURN_DEV_BK_TYPE_CDRW, /// ?????? }EM_NET_BURN_DEV_BK_TYPE; ///@brief ??????????? typedef struct tagNET_BURN_DEV_STATE_INFO { char szName[DH_COMMON_STRING_256]; /// ?????????? unsigned int nTotalSpace; /// ????????????????KB unsigned int nFreeSpace; /// ?????????????????KB EM_NET_BURN_DEV_TRAY_TYPE emTrayType; /// ?????????? EM_NET_BURN_DEV_OPERATE_TYPE emOperateType; /// ????????? EM_NET_BURN_DEV_BUS_TYPE emBusType; /// ?????????????? EM_NET_BURN_DEV_BK_TYPE emBkType; /// ?????????????? } NET_BURN_DEV_STATE_INFO; ///@brief ??????????????? typedef struct tagNET_BURN_DEV_STATE_INFO_LIST { unsigned int nListCount; /// ??????????????????????????? pstuNetBurnDevStateInfo ?????? NET_BURN_DEV_STATE_INFO *pstuNetBurnDevStateInfo; /// ???????????????? nListCount ?????? }NET_BURN_DEV_STATE_INFO_LIST; ///@brief ??????????????????,lAttachHandle ?? CLIENT_AttachBurnDevState ????? typedef void (CALLBACK *fBurnDevStateCallBack) (LLONG lAttachHandle, const NET_BURN_DEV_STATE_INFO_LIST* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief CLIENT_AttachBurnDevState ?????????? typedef struct tagNET_IN_ATTACH_BURN_DEV_STATE { DWORD dwSize; fBurnDevStateCallBack cbBurnDevState; /// ??????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_BURN_DEV_STATE; ///@brief CLIENT_AttachBurnDevState ?????????? typedef struct tagNET_OUT_ATTACH_BURN_DEV_STATE { DWORD dwSize; } NET_OUT_ATTACH_BURN_DEV_STATE; /////////////////////////////// ???????????????????? /////////////////////////////////////// #define CASE_BACK_UP_CHANNEL_MAX_NUM 32 /// ???????????????? #define CASE_BACK_UP_FILE_TYPE_MAX_NUM 8 /// ???????????????????? #define CASE_BACK_UP_INQUEST_INFO_MAX_NUM 8 /// ????????????????????? #define CASE_BACK_UP_DEVICE_MAX_NUM 8 /// ???????????????? ///@brief ?????????????? typedef enum tagEM_CASE_BACK_UP_FILE_TYPE { EM_CASE_BACK_UP_FILE_TYPE_UNKNOWN, /// ??? EM_CASE_BACK_UP_FILE_TYPE_DAV, /// DAV EM_CASE_BACK_UP_FILE_TYPE_JPG, /// JPG EM_CASE_BACK_UP_FILE_TYPE_TXT, /// TXT }EM_CASE_BACK_UP_FILE_TYPE; ///@brief ??????????????? typedef enum tagEM_CASE_BACK_UP_MODE_TYPE { EM_CASE_BACK_UP_MODE_TYPE_UNKNOWN, /// ????? EM_CASE_BACK_UP_MODE_TYPE_SYNC, /// ?????????? ?????????????? EM_CASE_BACK_UP_MODE_TYPE_CYCLE, /// ?????????? ???????????????????????? }EM_CASE_BACK_UP_MODE_TYPE; ///@brief ???????????? typedef enum tagEM_CASE_BACK_UP_PACK_TYPE { EM_CASE_BACK_UP_PACK_TYPE_UNKNOWN, /// ????? EM_CASE_BACK_UP_PACK_TYPE_DHAV, /// DHAV EM_CASE_BACK_UP_PACK_TYPE_MP4, /// MP4 EM_CASE_BACK_UP_PACK_TYPE_PS, /// PS }EM_CASE_BACK_UP_PACK_TYPE; ///@brief ???????????????? typedef struct tagNET_CASE_BACK_UP_INQUEST_INFO { char szTitle[128]; /// ??????? char szText[128]; /// ??????? BYTE byReserved[512]; /// ??????? }NET_CASE_BACK_UP_INQUEST_INFO; ///@brief ????????????????? typedef struct tagNET_CASE_BACK_UP_QUERY_CONDITION { int nChannelNum; /// ????????? int nChannels[CASE_BACK_UP_CHANNEL_MAX_NUM]; /// ?????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nFileTypeNum; /// ?????????? EM_CASE_BACK_UP_FILE_TYPE emFileTypes[CASE_BACK_UP_FILE_TYPE_MAX_NUM]; /// ??????????? char szCaseNumber[256]; /// ??????? int nInquestInfoNum; /// ????????? NET_CASE_BACK_UP_INQUEST_INFO stuInquestInfo[CASE_BACK_UP_INQUEST_INFO_MAX_NUM]; /// ?????????? BYTE byReserved[1024]; /// ??????? }NET_CASE_BACK_UP_QUERY_CONDITION; ///@brief ??????????????? typedef struct tagNET_CASE_BACK_UP_MODE { EM_CASE_BACK_UP_MODE_TYPE emBackupMode; /// ?????? int nDeviceNum; /// ?????? char szDeviceName[CASE_BACK_UP_DEVICE_MAX_NUM][256]; /// ??????? EM_CASE_BACK_UP_PACK_TYPE emPackType; /// ??????????? BOOL bExtraFile; /// ????????? BOOL bDataCheck; /// ????????????? BYTE byReserved[1024]; /// ??????? }NET_CASE_BACK_UP_MODE; ///@brief ???????????????? typedef struct tagNET_IN_START_CASE_BACK_UP { DWORD dwSize; /// ??????? NET_CASE_BACK_UP_QUERY_CONDITION stuCondition; /// ??????? NET_CASE_BACK_UP_MODE stuMode; /// ?????? }NET_IN_START_CASE_BACK_UP; ///@brief ????????????????????????? typedef enum tagEM_CASE_BACK_UP_START_ERROR_CODE { EM_CASE_BACK_UP_START_ERROR_CODE_UNKNOWN, /// ????? EM_CASE_BACK_UP_START_ERROR_CODE_NORMAL, /// ???? EM_CASE_BACK_UP_START_ERROR_CODE_BACKUPING, /// ?????????????? EM_CASE_BACK_UP_START_ERROR_CODE_NO_FINDFILE, /// ????????? EM_CASE_BACK_UP_START_ERROR_CODE_DEVICE_BUSY, /// ???? EM_CASE_BACK_UP_START_ERROR_CODE_NO_SUPPORT_MEDIA_FORMAT, /// ??????????? EM_CASE_BACK_UP_START_ERROR_CODE_DEVICE_ERROR, /// ??????????? EM_CASE_BACK_UP_START_ERROR_CODE_BACKUP_FILE_OVER_LIMIT, /// ???????????????????? EM_CASE_BACK_UP_START_ERROR_CODE_OTHER_ERROR, /// ???????? }EM_CASE_BACK_UP_START_ERROR_CODE; ///@brief ????????????????? typedef struct tagNET_OUT_START_CASE_BACK_UP { DWORD dwSize; /// ??????? EM_CASE_BACK_UP_START_ERROR_CODE emErrorCode; /// ?????? }NET_OUT_START_CASE_BACK_UP; ///@brief ??????????????? typedef struct tagNET_IN_STOP_CASE_BACK_UP { DWORD dwSize; /// ??????? }NET_IN_STOP_CASE_BACK_UP; ///@brief ???????????????? typedef struct tagNET_OUT_STOP_CASE_BACK_UP { DWORD dwSize; /// ??????? }NET_OUT_STOP_CASE_BACK_UP; ///@brief ???????????? typedef enum tagEM_CASE_BACK_UP_STATE_TYPE { EM_CASE_BACK_UP_STATE_TYPE_UNKNOWN, /// ????? EM_CASE_BACK_UP_STATE_TYPE_INIT, /// ????? EM_CASE_BACK_UP_STATE_TYPE_STOP, /// ?? EM_CASE_BACK_UP_STATE_TYPE_STOPPING, /// ???? EM_CASE_BACK_UP_STATE_TYPE_BACKUPING, /// ?????? EM_CASE_BACK_UP_STATE_TYPE_CHANGE_DISK, /// ?????? EM_CASE_BACK_UP_STATE_TYPE_PREPARE_EXTRA_FILE, /// ????????? EM_CASE_BACK_UP_STATE_TYPE_WAIT_EXTRA_FILE, /// ?????????? EM_CASE_BACK_UP_STATE_TYPE_UPLOAD_FILE_START, /// ????????? }EM_CASE_BACK_UP_STATE_TYPE; ///@brief ??????????????????? typedef enum tagEM_CASE_BACK_UP_ERROR_CODE { EM_CASE_BACK_UP_ERROR_CODE_UNKNOWN, /// ????? EM_CASE_BACK_UP_ERROR_CODE_NORMAL, /// ???? EM_CASE_BACK_UP_ERROR_CODE_SPACE_FULL, /// ????? EM_CASE_BACK_UP_ERROR_CODE_START_ERROR, /// ?????????? EM_CASE_BACK_UP_ERROR_CODE_STOP_ERROR, /// ????????? EM_CASE_BACK_UP_ERROR_CODE_WRITE_ERROR, /// ?????????? EM_CASE_BACK_UP_ERROR_CODE_OTHER_ERROR, /// ???????? }EM_CASE_BACK_UP_ERROR_CODE; ///@brief ???????????????? typedef struct tagNET_CASE_BACK_UP_STATE { EM_CASE_BACK_UP_STATE_TYPE emBackUpState; /// ???????? EM_CASE_BACK_UP_ERROR_CODE emErrorCode; /// ??????? BYTE byReserved[512]; /// ??????? }NET_CASE_BACK_UP_STATE; ///@brief ???????????????? typedef struct tagNET_CASE_BACK_UP_FILE_INFO { int nFileCount; /// ??????????????????????? int nCurFileIndex; /// ?????????????????????? TP_U64 nFileTotalLength; /// ????????????????? TP_U64 nCurBackupTotalLength; /// ?????????????????? TP_U64 nCurBackupFileTotalLength; /// ??????????????????? TP_U64 nCurBackupFileLength; /// ????????????????????????????? BYTE byReserved[512]; /// ??????? }NET_CASE_BACK_UP_FILE_INFO; ///@brief ???????????????? typedef struct tagNET_CASE_BACK_UP_DEVICE_INFO { int nDeviceID; /// ???ID char szDeviceName[256]; /// ??????? int nTotalSpace; /// ?????????? ????KB int nRemainSpace; /// ?????????? ????KB EM_CASE_BACK_UP_STATE_TYPE emBackUpState; /// ?????? EM_CASE_BACK_UP_ERROR_CODE emErrorCode; /// ??????? BYTE byReserved[512]; /// ??????? }NET_CASE_BACK_UP_DEVICE_INFO; ///@brief ???????????? typedef struct tagNET_OUT_CASE_BACK_UP_STATE { DWORD dwSize; /// ??????? NET_CASE_BACK_UP_STATE stuBackUpState; /// ????????? NET_CASE_BACK_UP_FILE_INFO stuFileInfo; /// ?????????? int nDeviceNum; /// ??????? NET_CASE_BACK_UP_DEVICE_INFO stuDeviceInfo[CASE_BACK_UP_DEVICE_MAX_NUM]; /// ?????????? }NET_OUT_CASE_BACK_UP_STATE; ///@brief ??????????????????? typedef void (CALLBACK *fAttachCaseBackUpState)(LLONG lLoginID, LLONG lAttachHandle, const NET_OUT_CASE_BACK_UP_STATE* pBuf, int nBufLen, LDWORD dwUser); ///@brief ????????????attach??????? typedef struct tagNET_IN_ATTACH_CASE_BACK_UP_STATE { DWORD dwSize; /// ??????? fAttachCaseBackUpState cbAttachState; /// ??????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_CASE_BACK_UP_STATE; ///@brief ????????????attach???????? typedef struct tagNET_OUT_ATTACH_CASE_BACK_UP_STATE { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_CASE_BACK_UP_STATE; ///@brief ????????????detach??????? typedef struct tagNET_IN_DETACH_CASE_BACK_UP_STATE { DWORD dwSize; /// ??????? }NET_IN_DETACH_CASE_BACK_UP_STATE; ///@brief ????????????detach???????? typedef struct tagNET_OUT_DETACH_CASE_BACK_UP_STATE { DWORD dwSize; /// ??????? }NET_OUT_DETACH_CASE_BACK_UP_STATE; ///@brief ??????????????????? typedef struct tagNET_IN_GET_CASE_BACK_UP_INFO { DWORD dwSize; /// ??????? }NET_IN_GET_CASE_BACK_UP_INFO; ///@brief ???????????????????? typedef struct tagNET_OUT_GET_CASE_BACK_UP_INFO { DWORD dwSize; /// ??????? NET_CASE_BACK_UP_QUERY_CONDITION stuCondition; /// ???????? NET_CASE_BACK_UP_MODE stuMode; /// ?????? }NET_OUT_GET_CASE_BACK_UP_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartBackUpCase(LLONG lLoginID, const NET_IN_START_CASE_BACK_UP* pstInParam, NET_OUT_START_CASE_BACK_UP *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopBackUpCase(LLONG lLoginID, const NET_IN_STOP_CASE_BACK_UP* pstInParam, NET_OUT_STOP_CASE_BACK_UP *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachBackUpCaseState(LLONG lLoginID, const NET_IN_ATTACH_CASE_BACK_UP_STATE* pstInParam, NET_OUT_ATTACH_CASE_BACK_UP_STATE *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ??????????????????? ///@param[in] lAttachHandle ?????????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachBackUpCaseState(LLONG lAttachHandle, const NET_IN_DETACH_CASE_BACK_UP_STATE* pstInParam, NET_OUT_DETACH_CASE_BACK_UP_STATE *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCaseBackUpInfo(LLONG lLoginID, const NET_IN_GET_CASE_BACK_UP_INFO* pstInParam, NET_OUT_GET_CASE_BACK_UP_INFO *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); /////////////////////////////// ???????????????????? /////////////////////////////////////// /////////////////////////////// ?????? /////////////////////////////////////// #define NET_COMPOSE_CHANNEL_MAX_SPLIT_WINDOW_NUM 36 /// ???????????????? ///@brief ??????????? typedef struct tagNET_TEMP_SPLIT_WINDOW_INFO { int nChannel; /// ???????????? BOOL bAudio; /// ???????? DH_RECT stuPosition; /// ????????,????8192????? BYTE byReserved[128]; /// ??????? }NET_TEMP_SPLIT_WINDOW_INFO; ///@brief ????????????????? typedef struct tagNET_IN_GET_TEMP_SPLIT { DWORD dwSize; /// ??????? int nComposeChannel; /// ???????? }NET_IN_GET_TEMP_SPLIT; ///@brief ?????????????????? typedef struct tagNET_OUT_GET_TEMP_SPLIT { DWORD dwSize; /// ??????? DH_SPLIT_MODE emSplitMode; /// ????????????????32???????? int nSplitNum; /// ????????????,?????????32?????? NET_TEMP_SPLIT_WINDOW_INFO stuWindowInfo[NET_COMPOSE_CHANNEL_MAX_SPLIT_WINDOW_NUM]; /// ??????????????? }NET_OUT_GET_TEMP_SPLIT; ///@brief ?????????????????? typedef struct tagNET_IN_SET_TEMP_SPLIT { DWORD dwSize; /// ??????? int nComposeChannel; /// ???????? DH_SPLIT_MODE emSplitMode; /// ????????????????32???????? int nSplitNum; /// ????????????,?????????32?????? NET_TEMP_SPLIT_WINDOW_INFO stuWindowInfo[NET_COMPOSE_CHANNEL_MAX_SPLIT_WINDOW_NUM]; /// ??????????????? }NET_IN_SET_TEMP_SPLIT; ///@brief ??????????????????? typedef struct tagNET_OUT_SET_TEMP_SPLIT { DWORD dwSize; /// ??????? }NET_OUT_SET_TEMP_SPLIT; ///@brief ???????? typedef struct tagNET_TEMP_SOURCE_WINDOW_INFO { int nWindowID; /// ??????,??0??? int nUniqueChannel; /// ?????????? BYTE byReserved[128]; /// ??????? }NET_TEMP_SOURCE_WINDOW_INFO; ///@brief ????????????????????? typedef struct tagNET_IN_SET_TEMP_SOURCE { DWORD dwSize; /// ??????? int nComposeChannel; /// ???????? int nWindowNum; /// ???????? NET_TEMP_SOURCE_WINDOW_INFO stuWindowInfo[NET_COMPOSE_CHANNEL_MAX_SPLIT_WINDOW_NUM]; /// ??????????? }NET_IN_SET_TEMP_SOURCE; ///@brief ?????????????????????? typedef struct tagNET_OUT_SET_TEMP_SOURCE { DWORD dwSize; /// ??????? }NET_OUT_SET_TEMP_SOURCE; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetTempSplit(LLONG lLoginID, const NET_IN_SET_TEMP_SPLIT* pstInParam, NET_OUT_SET_TEMP_SPLIT *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetTempSplit(LLONG lLoginID, const NET_IN_GET_TEMP_SPLIT* pstInParam, NET_OUT_GET_TEMP_SPLIT *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetTempSource(LLONG lLoginID, const NET_IN_SET_TEMP_SOURCE* pstInParam, NET_OUT_SET_TEMP_SOURCE *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); /////////////////////////////// ?????? /////////////////////////////////////// /////////////////////////////// Storage /////////////////////////////////////// ///@brief ??????????? typedef enum tagNET_STORAGE_WRITE_STATE { NS_WRITE_UNKNOWN, /// ??? NS_WRITE_OK, /// ??? NS_WRITE_DISK_IO_ERROR, /// ????IO???? NS_WRITE_DISK_NOT_READY, /// ??????????? NS_WRITE_DISK_FAULT, /// ??????? NS_WRITE_STREAM_NOT_EXIST, /// ??????ID?????? NS_WRITE_MOUNT_DISK_ERROR, /// ?????????? } NET_STORAGE_WRITE_STATE; ///@brief ?????????? typedef struct tagNET_STORAGE_BLOCK { DWORD dwSize; unsigned int nID; /// CQFS??ID unsigned int nStreamID; /// ???????????? unsigned int nRecycleTimestamp; /// CQFS???????? unsigned int nBeginTimestamp; /// ?????????????? unsigned int nEndTimestamp; /// ??????????????? unsigned int nLockCount; /// ?????????, 0????????? char szDiskUUID[DH_COMMON_STRING_64]; /// ????UUID } NET_STORAGE_BLOCK; ///@brief ???????????? typedef struct tagNET_STORAGE_WRITE_INFO { DWORD dwSize; NET_STORAGE_WRITE_STATE emState; /// ?????? int nBlockCount; /// ?????? NET_STORAGE_BLOCK stuBlocks[DH_MAX_NET_STRORAGE_BLOCK_NUM]; /// ????? } NET_STORAGE_WRITE_INFO; ///@brief \fn ??????????????????????????? typedef void (CALLBACK *fNetStorageAttachWriteInfoCB)(LLONG lAttachHandle, NET_STORAGE_WRITE_INFO* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_NetStorageAttachWriteInfo ?????????? typedef struct tagNET_IN_STORAGE_ATTACH_WRITE_INFO { DWORD dwSize; const char* pszName; /// ?????????, ???NAS????????? fNetStorageAttachWriteInfoCB cbISCSIBlcok; /// ??????? LDWORD dwUser; /// ??????? } NET_IN_STORAGE_ATTACH_WRITE_INFO; ///@brief CLIENT_NetStorageAttachWriteInfo ?????????? typedef struct tagNET_OUT_STORAGE_ATTACH_WRITE_INFO { DWORD dwSize; } NET_OUT_STORAGE_ATTACH_WRITE_INFO; ///@brief CLIENT_NetStorageGetWriteInfo ?????????? typedef struct tagNET_IN_STORAGE_GET_WRITE_INFO { DWORD dwSize; const char* pszName; /// ????????? } NET_IN_STORAGE_GET_WRITE_INFO; ///@brief CLIENT_NetStorageGetWriteInfo ?????????? typedef struct tagNET_OUT_STORAGE_GET_WRITE_INFO { DWORD dwSize; int nBlockCount; /// ?????? NET_STORAGE_BLOCK stuBlocks[DH_MAX_NET_STRORAGE_BLOCK_NUM]; /// ????? } NET_OUT_STORAGE_GET_WRITE_INFO; ///@brief RAID???????? typedef enum tagNET_RAID_OPERATE_TYPE { NET_RAID_OPERATE_ADD, /// ????RAID, ??????? NET_IN_RAID_ADD ?? NET_OUT_RAID_ADD NET_RAID_OPERATE_REMOVE, /// ???RAID, ??????? NET_IN_RAID_REMOVE ?? NET_OUT_RAID_REMOVE NET_RAID_OPERATE_GET_SUBDEVICE, /// ???RAID????????, ??????? NET_IN_RAID_GET_SUBDEVICE ?? NET_OUT_RAID_GET_SUBDEVICE NET_RAID_OPERATE_GET_SUBSMART, /// ???RAID?????SMART???, ??????? NET_IN_RAID_GET_SUBSMART ?? NET_OUT_RAID_GET_SUBSMART NET_RAID_OPERATE_MODIFY, /// ???RAID, ??????? NET_IN_RAID_MODIFY ?? NET_OUT_RAID_MODIFY } NET_RAID_OPERATE_TYPE; ///@brief RAID??? typedef struct tagNET_RAID_INFO { DWORD dwSize; char szName[DH_COMMON_STRING_64]; /// ????, ????????????????? char szLevel[DH_COMMON_STRING_16]; /// ???, ????"RAID0", "RAID5"?? int nMemberNum; /// ??????? char szMembers[DH_MAX_MEMBER_PER_RAID][DH_COMMON_STRING_64]; /// ?????? } NET_RAID_INFO; ///@brief ????RAID??????? typedef struct tagNET_RAID_ADD_RESULT { DWORD dwSize; BOOL bResult; DWORD dwErrorCode; /// ???????? char szName[DH_COMMON_STRING_64]; /// ???? } NET_RAID_ADD_RESULT; ///@brief ????RAID??????? typedef struct tagNET_IN_RAID_ADD { DWORD dwSize; int nRaidNun; /// RAID???? NET_RAID_INFO stuRaids[DH_MAX_RAID_NUM]; /// RAID??? } NET_IN_RAID_ADD; ///@brief ????RAID??????? typedef struct tagNET_OUT_RAID_ADD { DWORD dwSize; int nResultNum; /// ????? NET_RAID_ADD_RESULT stuResults[DH_MAX_RAID_NUM]; /// RAID???????? } NET_OUT_RAID_ADD; ///@brief ???RAID??????? typedef struct tagNET_RAID_REMOVE_RESULT { DWORD dwSize; BOOL bResult; DWORD dwErrorCode; /// ???????? } NET_RAID_REMOVE_RESULT; ///@brief ???RAID??????? typedef struct tagNET_IN_RAID_REMOVE { DWORD dwSize; int nRaidNum; /// RAID???? char szRaids[DH_MAX_RAID_NUM][DH_COMMON_STRING_64]; /// RAID???????? } NET_IN_RAID_REMOVE; ///@brief ???RAID??????? typedef struct tagNET_OUT_RAID_REMOVE { DWORD dwSize; int nResultNum; /// ????? NET_RAID_REMOVE_RESULT stuResults[DH_MAX_RAID_NUM]; /// RAID???????? } NET_OUT_RAID_REMOVE; ///@brief ???RAID??????????????? typedef struct tagNET_IN_RAID_GET_SUBDEVICE { DWORD dwSize; const char* pszRaidName; /// RAID???? } NET_IN_RAID_GET_SUBDEVICE; ///@brief ???RAID??????????????? typedef struct tagNET_OUT_RAID_GET_SUBDEVICE { DWORD dwSize; int nSubDeviceNum; /// ????????? DH_STORAGE_DEVICE stuSubDevices[DH_MAX_MEMBER_PER_RAID]; /// ???????? } NET_OUT_RAID_GET_SUBDEVICE; ///@brief RAID?????SMART??? typedef struct tagNET_RAID_SMART_INFO { DWORD dwSize; unsigned int nID; /// ????ID char szName[DH_COMMON_STRING_64]; /// ?????? int nCurrent; /// ????? int nWorst; /// ??????? int nThreshold; /// ??? int nPredict; /// ?? char szRaw[DH_COMMON_STRING_16]; /// ???? } NET_RAID_SMART_INFO; ///@brief ???RAID?????SMART?????????? typedef struct tagNET_IN_RAID_GET_SUBSMART { DWORD dwSize; const char* pszSubDevName; /// RAID????????? } NET_IN_RAID_GET_SUBSMART; ///@brief ???RAID?????SMART?????????? typedef struct tagNET_OUT_RAID_GET_SUBSMART { DWORD dwSize; int nSmartNum; /// SMART????? NET_RAID_SMART_INFO stuSmartInfos[MAX_SMART_VALUE_NUM]; /// SMART??? } NET_OUT_RAID_GET_SUBSMART; ///@brief ???RAID??????? typedef struct tagNET_RAID_MODIFY_RESULT { DWORD dwSize; BOOL bResult; DWORD dwErrorCode; /// ???????? } NET_RAID_MODIFY_RESULT; ///@brief ???RAID??????? typedef struct tagNET_IN_RAID_MODIFY { DWORD dwSize; int nRaidNun; /// RAID???? NET_RAID_INFO stuRaids[DH_MAX_RAID_NUM]; /// RAID??? } NET_IN_RAID_MODIFY; ///@brief ???RAID??????? typedef struct tagNET_OUT_RAID_MODIFY { DWORD dwSize; int nResultNum; /// ????? NET_RAID_MODIFY_RESULT stuResults[DH_MAX_RAID_NUM]; /// RAID???????? } NET_OUT_RAID_MODIFY; ///@brief ?????? typedef enum tagEM_SYNC_MODE { EM_SYNC_MODE_UNKNOWN = -1, /// ??? EM_SYNC_MODE_ADAPTIVE, /// ????? EM_SYNC_MODE_SYNC_FIRST, /// ??????? EM_SYNC_MODE_BUSINESS_FIRST, /// ??????? EM_SYNC_MODE_BALANCED, /// ???? }EM_SYNC_MODE; ///@brief ??????? typedef enum tagEM_HOT_SPARE_POLICY { EM_HOT_SPARE_POLICY_UNKNOWN, /// ??? EM_HOT_SPARE_POLICY_HIGH, /// ?? EM_HOT_SPARE_POLICY_NORMAL, /// ???? EM_HOT_SPARE_POLICY_LOWER, /// ?? }EM_HOT_SPARE_POLICY; ///@brief RAID???? typedef enum tagEM_RAID_TYPE { EM_RAID_TYPE_UNKNOWN, /// ??? EM_RAID_TYPE_RAID5, /// RAID5 EM_RAID_TYPE_RAID6, /// RAID6 }EM_RAID_TYPE; ///@brief ?????????RAIDJ?? typedef struct tagNET_RAIDJ_INFO { UINT nCheckDiskNum; /// ????????????????????RAIDJ??????????????????? char szReserved[256]; /// ??????? }NET_RAIDJ_INFO; ///@brief RAID2.0 typedef struct tagNET_RAID20_INFO { UINT nCheckDiskNum; /// ????????? UINT nDataDiskNums; /// ????????? EM_HOT_SPARE_POLICY emHotSparePolicy; /// ??????????????RAID2.0?????? EM_RAID_TYPE emRaidType; /// RAID???????????RAID2.0?????? char szReserved[256]; /// ??????? }NET_RAID20_INFO; ///@brief RAID???? typedef struct tagNET_RAID_CONFIG_INFO { char szLevel[16]; /// ???, ????????????getCaps??? EM_SYNC_MODE emSyncMode; /// ?????? char szAlias[24]; /// RAID???? NET_RAIDJ_INFO stuRaidJ; /// ?????????RAIDJ????????Level?????????? BOOL bRaidJEnable; /// ???????????RAIDJ?? NET_RAID20_INFO stuRaid20; /// RAID2.0??????Level?????????? BOOL bRaid20Enable; /// ???RAID2.0 BOOL bAliasExEnable; /// RAID??????????szAliasEx???????,?TRUE?szAliasEx??????szAlias???? char szAliasEx[32]; /// RAID???? char szReserved[220]; /// ??????? } NET_RAID_CONFIG_INFO; ///@brief ??????RAID??????? typedef struct tagNET_IN_RAID_ADD_ASYN { DWORD dwSize; int nMemberNums; /// RAID???????? char szMembers[128][16]; /// RAID??? NET_RAID_CONFIG_INFO stuRaidConfig; /// RAID???? } NET_IN_RAID_ADD_ASYN; ///@brief ??????RAID??????? typedef struct tagNET_OUT_RAID_ADD_ASYN { DWORD dwSize; UINT nId; /// ??????ID } NET_OUT_RAID_ADD_ASYN; ///@brief ??????RAID ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddRaidAsyn(LLONG lLoginID, const NET_IN_RAID_ADD_ASYN* pstInParam, NET_OUT_RAID_ADD_ASYN* pstOutParam, int nWaitTime); ///@brief RAID??? typedef struct tagNET_RAID_OBJECT_INFO { char szName[16]; /// RAID???? char szAliasName[32]; /// RAID???? char szReserved[256]; /// ??????? }NET_RAID_OBJECT_INFO; ///@brief RAID?? typedef enum tagEM_RAID_STATE { EM_RAID_STATE_UNKNOWN = 0, /// ??? EM_RAID_STATE_CREATING_RAID, /// ???????RAID EM_RAID_STATE_CREATE_RAID_SUCCESS, /// ????RAID ??? EM_RAID_STATE_CREATE_RAID_FAIL, /// ????RAID ??? }EM_RAID_STATE; ///@brief CLIENT_AttachRaidAdd??????? typedef struct tagNET_CB_RAID_ADD_INFO { DWORD dwSize; /// ??????? UINT nId; /// ??????ID NET_RAID_OBJECT_INFO stuRaid; /// RAID??? EM_RAID_STATE emRaidState; /// RAID?? int nPercent; /// ???????????????? }NET_CB_RAID_ADD_INFO; ///@brief CLIENT_AttachRaidAdd???????? typedef void (CALLBACK *fRaidAddCallBack)(LLONG lAttachHandle, NET_CB_RAID_ADD_INFO* pstuRaidAdd, LDWORD dwUser); ///@brief CLIENT_AttachRaidAdd ??????? typedef struct tagNET_IN_ATTACH_RAID_ADD { DWORD dwSize; /// ????????,????? fRaidAddCallBack cbRaidAdd; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_RAID_ADD; ///@brief CLIENT_AttachRaidAdd ??????? typedef struct tagNET_OUT_ATTACH_RAID_ADD { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_RAID_ADD; ///@brief ??????RAID ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRaidAdd(LLONG lLoginID, NET_IN_ATTACH_RAID_ADD* pstInParam, NET_OUT_ATTACH_RAID_ADD* pstOutParam , int nWaitTime); ///@brief ?????????RAID ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRaidAdd(LLONG lAttachHandle); ///@brief ????????? typedef enum tagEM_FS_TYPE { EM_FS_TYPE_UNKNWON, /// ??? EM_FS_TYPE_EXT3, EM_FS_TYPE_EXT4, EM_FS_TYPE_XFS, EM_FS_TYPE_VFAT, EM_FS_TYPE_DHFS, EM_FS_TYPE_CQFS, EM_FS_TYPE_NTFS, } EM_FS_TYPE; ///@brief ?????????? typedef struct tagNET_PART_FORMAT_INFO { EM_FS_TYPE emFsType; /// ?????????, ???EM_FS_TYPE_UNKNWON ???????????? char szVolumeLabel[64]; /// ???? BYTE byReserved[2044]; /// ??????? } NET_PART_FORMAT_INFO; ///@brief CLIENT_DevStorageFormatPartitionAsyn ?????????? typedef struct tagNET_IN_DEVSTORAGE_FORMAT_PARTITION_ASYN { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? char szPartName[32]; /// ????????, ??"" ??????????????? NET_PART_FORMAT_INFO stuPartFormatInfo; /// ?????????? } NET_IN_DEVSTORAGE_FORMAT_PARTITION_ASYN; ///@brief CLIENT_DevStorageFormatPartitionAsyn ?????????? typedef struct tagNET_OUT_DEVSTORAGE_FORMAT_PARTITION_ASYN { DWORD dwSize; /// ??????? } NET_OUT_DEVSTORAGE_FORMAT_PARTITION_ASYN; ///@brief ???????????? typedef enum tagEM_STORAGE_FORMAT_STATE { EM_STORAGE_FORMAT_UNKNOWN, /// ??? EM_STORAGE_FORMAT_FORMATTING, /// ???????? EM_STORAGE_FORMAT_SUCCESS, /// ???????? EM_STORAGE_FORMAT_FAILED, /// ???????? } EM_STORAGE_FORMAT_STATE; ///@brief ??????????? typedef struct tafNET_DEVSTORAGE_INFO { char szDevName[32]; /// ??????? char szAliasName[32]; /// RAID????,RAID???? UINT nPhysicNo; /// ?????????,??1???,???????? BYTE byReserved[2044]; /// ??????? } NET_DEVSTORAGE_INFO; ///@brief ?????????????????? typedef struct tagNET_CB_DEVSTORAGE_FORMAT_INFO { NET_DEVSTORAGE_INFO stuDevStorageInfo; /// ??????????? EM_STORAGE_FORMAT_STATE emStorageFormatState; /// ???????????? UINT nPercent; /// ???????????? BYTE byReserved[2048]; /// ??????? } NET_CB_DEVSTORAGE_FORMAT_INFO; ///@brief ?????????????????????????, lAttachHandle ?? CLIENT_AttachDevStorageDevFormat???????? typedef int (CALLBACK *fDevStorageFormatCallBack)(LLONG lAttachHandle, NET_CB_DEVSTORAGE_FORMAT_INFO *pstDevStorageFormatInfo, LDWORD dwUser); ///@brief CLIENT_AttachDevStorageDevFormat ?????????? typedef struct tagNET_IN_DEVSTORAGE_ATTACH_DEV_FORMAT { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ???? fDevStorageFormatCallBack cbDevStorageFormatInfo; /// ?????????????????????? LDWORD dwUser; /// ??????? } NET_IN_DEVSTORAGE_ATTACH_DEV_FORMAT; ///@brief ????????????? typedef struct tagNET_DEVICE_OPERATE_INFO { char szName[128]; /// ???????? char szAliasName[32]; /// ???????(RAID?????) UINT nPhysicNo; /// ?????????(?????????) char szReserved[512]; /// ??????? }NET_DEVICE_OPERATE_INFO; ///@brief ?????????????????? typedef struct tagNET_CB_DEVICE_OPERATE_INFO { NET_DEVICE_OPERATE_INFO stuDevOpInfo; /// ????????????? UINT nState; /// ???????????? char szReserved[512]; /// ??????? } NET_CB_DEVICE_OPERATE_INFO; ///@brief ????????????????????????????, lAttachHandle ?? CLIENT_AttachDevStorageOpState???????? typedef void (CALLBACK *fDevStorageOpStateCallBack)(LLONG lAttachHandle, NET_CB_DEVICE_OPERATE_INFO *pstDeviceOperateInfo, LDWORD dwUser); ///@brief CLIENT_AttachDevStorageOpState ?????????? typedef struct tagNET_IN_ATTACH_DEVSTORAGE_OP_STATE { DWORD dwSize; /// ??????? char szReserved[4]; /// ???? fDevStorageOpStateCallBack cbDevStorageOpStateInfo; /// ????????????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_DEVSTORAGE_OP_STATE; ///@brief CLIENT_AttachDevStorageOpState ?????????? typedef struct tagNET_OUT_ATTACH_DEVSTORAGE_OP_STATE { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_DEVSTORAGE_OP_STATE; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachDevStorageOpState(LLONG lLoginID, const NET_IN_ATTACH_DEVSTORAGE_OP_STATE* pInParam, NET_OUT_ATTACH_DEVSTORAGE_OP_STATE *pOutParam,const int nWaitTime); ///@brief ?????????????????????, lAttachHandle ?CLIENT_AttachDevStorageOpState ??????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachDevStorageOpState(LLONG lAttachHandle); ///@brief ??????????????????? typedef enum tagNET_EM_CHANGE_TYPE { NET_EM_CHANGE_TYPE_UNKOWN, /// ??? NET_EM_CHANGE_TYPE_LOGIN, /// ???????????????????????????? NET_EM_CHANGE_TYPE_LOGOUT, /// ??????????????ID????????????????? NET_EM_CHANGE_TYPE_KICKOUT, /// ??????????????ID????????????????? NET_EM_CHANGE_TYPE_BLOCK, /// ??????????????ID????????????????? } NET_EM_CHANGE_TYPE; ///@brief ????????????????????? typedef enum tagNET_EM_LINK_TYPE { NET_EM_LINK_TYPE_UNKOWN, /// ??? NET_EM_LINK_TYPE_TCP, /// TCP NET_EM_LINK_TYPE_UDP, /// UDP NET_EM_LINK_TYPE_HTTP, /// HTTP NET_EM_LINK_TYPE_HTTPS, /// HTTPS NET_EM_LINK_TYPE_OTHERS, /// others } NET_EM_LINK_TYPE; ///@brief CLIENT_AttachActiveUserState??????? typedef struct tagNET_CB_ACTIVE_USER_STATE_INFO { DWORD dwSize; /// ??????? NET_EM_CHANGE_TYPE emChangeType; /// ??????????????????? UINT nId; /// ???ID char szName[128]; /// ????????????????? char szGroup[128]; /// ????????????????? char szClientType[16]; /// ?????????????????????? char szClientAddress[40]; /// ?????IP?????????????? char szLoginTime[20]; /// ????????????????????? UINT nTimeSinceLogin; /// ???????????????????????,???????? char szClientMac[20]; /// ???????Mac?????????????? NET_EM_LINK_TYPE emLinkType; /// ????????????????????? char szMemo[256]; /// ????????? }NET_CB_ACTIVE_USER_STATE_INFO; ///@brief CLIENT_AttachActiveUserState???????? typedef void (CALLBACK *fActiveUserStateCallBack)(LLONG lAttachHandle, NET_CB_ACTIVE_USER_STATE_INFO* pstuActiveUserState, LDWORD dwUser); ///@brief CLIENT_AttachActiveUserState ??????? typedef struct tagNET_IN_ATTACH_ACTIVE_USER_STATE { DWORD dwSize; /// ????????,????? fActiveUserStateCallBack cbActiveUserState; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_ACTIVE_USER_STATE; ///@brief CLIENT_AttachActiveUserState ?????????? typedef struct tagNET_OUT_ATTACH_ACTIVE_USER_STATE { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_ACTIVE_USER_STATE; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachActiveUserState(LLONG lLoginID, NET_IN_ATTACH_ACTIVE_USER_STATE* pstInParam, NET_OUT_ATTACH_ACTIVE_USER_STATE* pstOutParam , int nWaitTime); ///@brief ??????????, lAttachHandle?CLIENT_AttachActiveUserState?????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachActiveUserState(LLONG lAttachHandle); ///@brief CLIENT_GetTemporaryToken ?????? typedef struct tagNET_IN_GET_TEMPORARY_TOKEN { DWORD dwSize; /// ??????? char szclientIP[48]; /// ????token??????IP. ?????("") int nkeepAliveTime; /// token???????, ????:??, ????5-90s BOOL bRemoteMode; /// ?????????Token int nChannelID; /// ????????????,??0???????bRemoteMode?TRUE????? }NET_IN_GET_TEMPORARY_TOKEN; ///@brief ???????????? typedef struct tagNET_TEMP_USER_INFO { char szUsername[128]; /// ????????????????, ??Token????? char szToken[128]; /// ??????token, ?????64 char szReserved[1024]; /// ??????? } NET_TEMP_USER_INFO; ///@brief CLIENT_GetTemporaryToken ?????? typedef struct tagNET_OUT_GET_TEMPORARY_TOKEN { DWORD dwSize; /// ??????? NET_TEMP_USER_INFO stuTempUserInfo; /// ???????????? }NET_OUT_GET_TEMPORARY_TOKEN; ///@brief ??????token ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetTemporaryToken(LLONG lLoginID, const NET_IN_GET_TEMPORARY_TOKEN* pstuInParam, NET_OUT_GET_TEMPORARY_TOKEN* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetPwdValidPeriod ?????? typedef struct tagNET_IN_GET_PWD_VALID_PERIOD { DWORD dwSize; /// ??????? char szBytes[4]; /// ?????? char szName[128]; /// ????? }NET_IN_GET_PWD_VALID_PERIOD; ///@brief CLIENT_GetPwdValidPeriod ?????? typedef struct tagNET_OUT_GET_PWD_VALID_PERIOD { DWORD dwSize; /// ??????? int nRemainDays; /// ??????????????? -1-??????,>=0-?????????????? UINT nTotalDays; /// ?????????????? 0-??????,>0-??????????? char szBytes[4]; /// ?????? }NET_OUT_GET_PWD_VALID_PERIOD; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPwdValidPeriod(LLONG lLoginID, const NET_IN_GET_PWD_VALID_PERIOD* pstuInParam, NET_OUT_GET_PWD_VALID_PERIOD* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetUserManagerCaps ?????? typedef struct tagNET_IN_GET_USER_MANAGER_CAPS { DWORD dwSize; /// ??????? }NET_IN_GET_USER_MANAGER_CAPS; ///@brief CLIENT_GetUserManagerCaps ?????? typedef struct tagNET_OUT_GET_USER_MANAGER_CAPS { DWORD dwSize; /// ??????? BOOL bSupportTokenLoginType; /// ???????????????Token?????????????Web?????????????? }NET_OUT_GET_USER_MANAGER_CAPS; ///@brief ???????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ?????????? ///@param[out] pstuOutParam: ?????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetUserManagerCaps(LLONG lLoginID, NET_IN_GET_USER_MANAGER_CAPS* pstuInParam, NET_OUT_GET_USER_MANAGER_CAPS* pstuOutParam, int nWaitTime); //////////////////////////// ????? ////////////////////////////////////////// ///@brief ?????? typedef enum tagEM_STATE_MANAGER_STATE { EM_STATE_MANAGER_STATE_UNKNOWN, /// ??? EM_STATE_MANAGER_STATE_SERIALDATAUPLOAD, /// ?????????????????????????NET_SERIALDATAUPLOAD_INFO } EM_STATE_MANAGER_STATE; ///@brief ?????/????? typedef enum tagEM_TEMP_HUM_STATE { EM_TEMP_HUM_STATE_UNKNOWN = -1, /// ??? EM_TEMP_HUM_STATE_NORMAL, /// ???? EM_TEMP_HUM_STATE_HIGH, /// ??? EM_TEMP_HUM_STATE_LOW, /// ??? } EM_TEMP_HUM_STATE; ///@brief ??????????????????? typedef struct tagNET_SERIALDATAUPLOAD_INFO { EM_TEMP_HUM_STATE emTempAlarmStatus; /// ????? EM_TEMP_HUM_STATE emHumAlarmStatus; /// ????? double dbTemperature; /// ????????????????????????? double dbHumidity; /// ???????????????????????RH?????? NET_TIME_EX stuTime; /// UTC??? char szReserved[252]; /// ??????? } NET_SERIALDATAUPLOAD_INFO; ///@brief CLIENT_AttachStateManager??????? typedef struct tagNET_CB_STATE_MANAGER_INFO { EM_STATE_MANAGER_STATE emCallBackStateName; /// ????????????? BYTE byReserved1[4]; /// ?????? NET_SERIALDATAUPLOAD_INFO stuSerialDataUpLoadState; /// ?????????????????????????????????????????????????????????????????????????????????,???EM_STATE_MANAGER_STATE_SERIALDATAUPLOAD BYTE byReserved[2048]; /// ?????? }NET_CB_STATE_MANAGER_INFO; ///@brief CLIENT_AttachStateManager???????? typedef void (CALLBACK *fStateManagerCallBack)(LLONG lAttachHandle, NET_CB_STATE_MANAGER_INFO* pstuStateManager, LDWORD dwUser); ///@brief CLIENT_AttachStateManager ?????????? typedef struct tagNET_IN_ATTACH_STATE_MANAGER { DWORD dwSize; /// ????????,????? fStateManagerCallBack cbStateManager; /// ??????? LDWORD dwUser; /// ?????? EM_STATE_MANAGER_STATE emStateName; /// ?????? }NET_IN_ATTACH_STATE_MANAGER; ///@brief CLIENT_AttachStateManager ?????????? typedef struct tagNET_OUT_ATTACH_STATE_MANAGER { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_STATE_MANAGER; ///@brief ???????????? ///@param[in] lLoginID: ?????? ///@param[in] pstInParam: ??????????, ??????????????????? ///@param[out] pstOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachStateManager(LLONG lLoginID, NET_IN_ATTACH_STATE_MANAGER* pstInParam, NET_OUT_ATTACH_STATE_MANAGER* pstOutParam , int nWaitTime); ///@brief ??????????? ///@param[in] lAttachHandle ??????????? ///@return TRUE??????, FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachStateManager(LLONG lAttachHandle); ///@brief ???????? typedef struct tagNET_CASEABNORMAL_OUTV_INFO { char szDc12v1[32]; /// DC12v1????00??01???? char szDc12v2[32]; /// DC12v2????00??01???? char szAc24v1[32]; /// AC24V1????00??01???? char szAc24v2[32]; /// AC24V2????00??01???? char szAc220v1[32]; /// AC220V1????00??01???? char szAc220v2[32]; /// AC220V2????00??01???? char szAc220v3[32]; /// AC220V3????00??01???? char szReserved[256]; /// ??????? } NET_CASEABNORMAL_OUTV_INFO; ///@brief ??????????? typedef struct tagNET_CASEABNORMAL_SWITCHWARN_INFO { char szAlarmType[32]; /// ??????? char szAlarmInfo[64]; /// ??????? char szReserved[128]; /// ??????? } NET_CASEABNORMAL_SWITCHWARN_INFO; ///@brief ????????????????? typedef struct tagNET_CASEABNORMAL_STATE_INFO { char szWater[32]; /// ???????00??01???? char szEnv[32]; /// ?????????00??01???? char szTf[32]; /// tf??????00??01???? char szIllegalOpen[32]; /// ????????00??01???? char szSwitchStatus[32]; /// ??????????00??01???? char szFan[32]; /// ????????00??01???? char szLan[32]; /// ????????????00??01???? char szMobileNetwork[32]; /// 4G????????00??01???? NET_CASEABNORMAL_OUTV_INFO stuOutV; /// ???????? char szInV[32]; /// ?????????????????????????1 <<0????1 <<1??????1 <<2????1 <<3????1<<4, ??????????????+????11 char szIpcStatus[32]; /// ???????????00??01???? char szAirSwitch[32]; /// ????????????????32???????????????????1<<0????1<<1??????1<<2????1<<3????1<<4?????1<<5???1<<6?????1<<7,??????????????+????11 char szIsWet[32]; /// ???????00??01???? char szLightDecay[32]; /// ???????00??01???? NET_CASEABNORMAL_SWITCHWARN_INFO stuSwitchWarn; /// ??????????? char szReserved[256]; /// ??????? } NET_CASEABNORMAL_STATE_INFO; ///@brief ????? typedef struct tagNET_STATEMANAGER_V_INFO { char szV[32]; /// ????????????v char szC[32]; /// ?????????????c char szP[32]; /// ?????????????w char szW[32]; /// ?????????????w.h char szReserved[128]; /// ??????? } NET_STATEMANAGER_V_INFO; ///@brief ???????? typedef struct tagNET_CASERUNNING_OUTV_INFO { char szDc12v1[32]; /// DC12v1???????????????????v char szDc12v2[32]; /// DC12v2?????????????????:w char szDc12v1State[32]; /// DC12v1????????????????00??01?? char szDc12v2State[32]; /// DC12v2????????????????00??01?? char szAc24v1State[32]; /// AC24V1????????????????00??01?? char szAc24v2State[32]; /// AC24V2????????????????00??01?? char szAc220v1State[32]; /// AC220V1????????????????00??01?? char szAc220v2State[32]; /// AC220V2????????????????00??01?? char szAc220v3State[32]; /// AC220V3????????????????00??01?? char szReserved[256]; /// ??????? } NET_CASERUNNING_OUTV_INFO; ///@brief ?????????? typedef struct tagNET_CASERUNNING_AIRSWITCH_INFO { char szVol[32]; /// ???????????v char szECurrent[32]; /// ????????????a char szPower[32]; /// ???????????w char szOnPosition[32]; /// ???????????01 ?????? ??00 ???????? char szState[32]; /// ????????01 ??????00 ????? char szVersion[32]; /// ??? char szMac[32]; /// mac??? char szSn[32]; /// ?????? char szId[32]; /// ??? char szReserved[256]; /// ??????? } NET_CASERUNNING_AIRSWITCH_INFO; ///@brief tf???? typedef struct tagNET_CASERUNNING_TF_INFO { char szTotal[32]; /// ??????????????M char szUsed[32]; /// ???????????M char szRemaining[32]; /// ?????????M char szReserved[128]; /// ??????? } NET_CASERUNNING_TF_INFO; ///@brief ????????????? typedef struct tagNET_CASERUNNING_COMM_INFO { char szPortSN[32]; /// ????????????? char szSn[32]; /// ????????? char szReserved[256]; /// ??????? } NET_CASERUNNING_COMM_INFO; ///@brief ?????????????????? typedef struct tagNET_CASERUNNING_STATE_INFO { NET_STATEMANAGER_V_INFO stuInV; /// ???????? NET_CASERUNNING_OUTV_INFO stuOutV; /// ???????? NET_STATEMANAGER_V_INFO stuAc220v1Value; /// AC220V1??????????????????????? NET_STATEMANAGER_V_INFO stuAc220v2Value; /// AC220V2??????????????????????? NET_STATEMANAGER_V_INFO stuAc220v3Value; /// AC220V3??????????????????????? char szReserved1[4]; /// ?????? int nPoewNum; /// POE??????????? char szPoe_w[4][32]; /// POE??????? char szWater[32]; /// ???????00??01???? char szHasIPC[32]; /// ?????IPC?????00 ?? 01 ?? char szHasFourG[32]; /// ?????4G??00 ?? 01 ?? char szIccid[32]; /// SIM??iccid char szLight[32]; /// ????????00?? 01?? char szTemp[32]; /// ??? char szHumidity[32]; /// ??? char szLon[32]; /// ???? char szLat[32]; /// ??? char szRom[32]; /// ??????? char szScm[32]; /// ???????? char szReclosing[32]; /// ???? char szHasReclosing[32]; /// ???????????00 ?? 01 ?? char szBordIp[32]; /// ???IP char szDevName[32]; /// ??????? NET_CASERUNNING_TF_INFO stuTf; /// tf???? int nAirSwitchNum; /// ?????????????? int nCommNum; /// ????????????????? NET_CASERUNNING_AIRSWITCH_INFO stuAirSwitch[16]; /// ?????????? NET_CASERUNNING_COMM_INFO stuComm[16]; /// ????????????? char szReserved[1024]; /// ??????? } NET_CASERUNNING_STATE_INFO; ///@brief ?????? typedef enum tagEM_STATEMANAGER_STATE { EM_STATEMANAGER_STATE_CASEABNORMAL, /// ??????????????, ???????NET_CASEABNORMAL_STATE_INFO EM_STATEMANAGER_STATE_CASERUNNING, /// ??????????????????? ???????NET_CASERUNNING_STATE_INFO } EM_STATEMANAGER_STATE; ///@brief CLIENT_GetStateManager ?????? typedef struct tagNET_IN_GET_STATEMANAGER_INFO { DWORD dwSize; /// ??????? EM_STATEMANAGER_STATE emState; /// ????? }NET_IN_GET_STATEMANAGER_INFO; ///@brief CLIENT_GetStateManager ?????? typedef struct tagNET_OUT_GET_STATEMANAGER_INFO { DWORD dwSize; /// ??????? char szReserved1[4]; /// ?????? void* pStateInfo; /// ?????????????????????????????????????????EM_STATEMANAGER_STATE?????? }NET_OUT_GET_STATEMANAGER_INFO; ///@brief ??????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ?????????? ///@param[out] pstuOutParam: ?????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStateManager(LLONG lLoginID, NET_IN_GET_STATEMANAGER_INFO* pstuInParam, NET_OUT_GET_STATEMANAGER_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetStateManager ?????? typedef struct tagNET_IN_SET_STATEMANAGER_INFO { DWORD dwSize; /// ??????? EM_STATEMANAGER_STATE emState; /// ????? void* pStateInfo; /// ???????????????????????????????EM_STATEMANAGER_STATE?????? }NET_IN_SET_STATEMANAGER_INFO; ///@brief CLIENT_SetStateManager ?????? typedef struct tagNET_OUT_SET_STATEMANAGER_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_STATEMANAGER_INFO; ///@brief ???????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ?????????? ///@param[out] pstuOutParam: ?????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetStateManager(LLONG lLoginID, NET_IN_SET_STATEMANAGER_INFO* pstuInParam, NET_OUT_SET_STATEMANAGER_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? typedef enum tagNET_EXT_DEV_TYPE { EXT_DEV_UNKNOWN, /// ??? EXT_DEV_PROJECTOR, /// ???? EXT_DEV_SEQUENCE_POWER, /// ????????? } NET_EXT_DEV_TYPE; ///@brief ????????? typedef struct tagNET_EXTERNAL_DEVICE { DWORD dwSize; NET_EXT_DEV_TYPE emType; /// ??????? char szDevID[DH_DEV_ID_LEN_EX]; /// ???ID, ?????? char szDevName[DH_DEV_ID_LEN_EX]; /// ??????? } NET_EXTERNAL_DEVICE; ///@brief ??????????????? typedef struct tagNET_CTRL_SEQPOWER_PARAM { DWORD dwSize; const char* pszDeviceID; /// ???ID int nChannel; /// ?????????????? } NET_CTRL_SEQPOWER_PARAM; ///@brief ?????????? typedef struct tagNET_CTRL_PROJECTOR_PARAM { DWORD dwSize; const char* pszDeviceID; /// ???ID } NET_CTRL_PROJECTOR_PARAM; ///@brief ?????? typedef struct tagNET_CTRL_INFRARED_KEY_PARAM { DWORD dwSize; int nChannel; /// ???????????? unsigned int nKey; /// ??????ID } NET_CTRL_INFRARED_KEY_PARAM; ///@brief ???????? typedef struct tagALARM_NO_DISK_INFO { DWORD dwSize; NET_TIME stuTime; /// ??? DWORD dwAction; /// ???????, 0:Start, 1:Stop NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_NO_DISK_INFO; ///@brief ??????????? typedef enum __EM_CAPSULE_STATE { CAPSULE_STATE_UNKNOW , ///?????? CAPSULE_STATE_NORMAL , ///???? CAPSULE_STATE_TIME_OUT , ///??? CAPSULE_STATE_EMERGENCY_CALL, ///???????? }EM_CAPSULE_STATE; ///@brief ????????? typedef struct tagALARM_PROTECTIVE_CAPSULE_INFO { DWORD dwSize; EM_CAPSULE_STATE emCapsuleState; ///???????? DWORD nLock; ///0:????,1:????; ????emCapsuleState?CAPSULE_STATE_NORMAL????? DWORD nInfrared; ///0:????(????),1:????(????);????emCapsuleState?CAPSULE_STATE_NORMAL????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_PROTECTIVE_CAPSULE_INFO; ///@brief ?????????????????? typedef struct tagNET_IN_VIDEOIN_FISHEYE_CAPS { DWORD dwSize; int nChannel; ///????? }NET_IN_VIDEOIN_FISHEYE_CAPS; ///@brief ?????????????????? typedef struct tagNET_OUT_VIDEOIN_FISHEYE_CAPS { DWORD dwSize; int nMountModeNum; /// ???????????? NET_FISHEYE_MOUNT_MODE emMountModes[NET_MAX_FISHEYE_MOUNTMODE_NUM]; /// ???????????? int nCalibrateModeNum; /// ????????????????? NET_FISHEYE_CALIBRATE_MODE emCalibrateModes[NET_MAX_FISHEYE_CALIBRATEMODE_NUM]; /// ????????????????? int nEPtzCmdNum; /// ?????????????????????? NET_FISHEYE_EPTZ_CMD emEPtzCmds[NET_MAX_FISHEYE_EPTZCMD_NUM]; /// ?????????????????????? NET_FISHEYE_TYPE emType; ///???????? }NET_OUT_VIDEOIN_FISHEYE_CAPS; ///@brief ?????????????????????? typedef struct tagNET_IN_CAP_SEQPOWER { DWORD dwSize; const char* pszDeviceID; /// ???ID } NET_IN_CAP_SEQPOWER; ///@brief ?????????????????????? typedef struct tagNET_OUT_CAP_SEQPOWER { DWORD dwSize; int nChannelNum; /// ????? } NET_OUT_CAP_SEQPOWER; ///@brief ??????????????????????????? typedef struct tagNET_IN_ENCODE_CFG_CAPS { DWORD dwSize; int nChannelId; /// ????? int nStreamType; /// ????????,0??????????1????????1??2????????2??3????????3??4???????? /// ????????????,?????????????,????????????????????????????? char* pchEncodeJson; /// Encode????,???????dhconfigsdk.dll?????CLIENT_PacketData?????? /// ???????????? CFG_CMD_ENCODE }NET_IN_ENCODE_CFG_CAPS; ///@brief ?????????????? typedef struct tagNET_STREAM_CFG_CAPS { DWORD dwSize; int nAudioCompressionTypes[DH_MAX_AUDIO_ENCODE_TYPE]; /// ???????????????,???DH_TALK_CODING_TYPE int nAudioCompressionTypeNum; /// ????????????? int dwEncodeModeMask; /// ?????????????,???"??????" DH_RESOLUTION_INFO stuResolutionTypes[DH_MAX_CAPTURE_SIZE_NUM];/// ???????????? int nResolutionFPSMax[DH_MAX_CAPTURE_SIZE_NUM]; /// ?????????????????,??????nResolutionTypes??? int nResolutionTypeNum; /// ??????????? int nMaxBitRateOptions; /// ??????????(kbps) int nMinBitRateOptions; /// ???????????(kbps) BYTE bH264ProfileRank[DH_PROFILE_HIGH]; /// ????H.264 Profile???,??????????? EM_H264_PROFILE_RANK; int nH264ProfileRankNum; /// ????H.264 Profile??????? int nCifPFrameMaxSize; /// ????????cif????p?(Kbps) int nCifPFrameMinSize; /// ????????cif?????p?(Kbps) int nFPSMax; /// ??????????,?0?,??nResolutionFPSMax?? DH_RESOLUTION_INFO stuIndivResolutionTypes[DH_MAX_COMPRESSION_TYPES_NUM][DH_MAX_CAPTURE_SIZE_NUM];/// ???????????? BOOL abIndivResolution; /// 0: stuResolutionTypes,nResolutionTypeNum ???? /// 1: stuIndivResolutionTypes, nIndivResolutionNums ???? int nIndivResolutionNums[DH_MAX_COMPRESSION_TYPES_NUM];/// ??????????????????????????? }NET_STREAM_CFG_CAPS; ///@brief ??????????????????????????? typedef struct tagNET_OUT_ENCODE_CFG_CAPS { DWORD dwSize; NET_STREAM_CFG_CAPS stuMainFormatCaps[DH_REC_TYPE_NUM]; /// ????????????????, ????????, ??????????????????, ???????????????????, ???????????????????? NET_STREAM_CFG_CAPS stuExtraFormatCaps[DH_N_ENCODE_AUX]; /// ????????????????, ????????, ??????????????1, ??????????????2, ???????????????3 NET_STREAM_CFG_CAPS stuSnapFormatCaps[SNAP_TYP_NUM]; /// ????????????????, ????????, ?????????????, ??????????????, ??????????????? int nMainFormCaps; /// ???????????????????????????? int nExtraFormCaps; /// ??????????????????????????? int nSnapFormatCaps; /// ???????????????????????????? }NET_OUT_ENCODE_CFG_CAPS; ///@brief ??????????????????? typedef struct tagNET_IN_VIDEO_DETECT_CAPS { DWORD dwSize; int nChannel; ///????? }NET_IN_VIDEO_DETECT_CAPS; ///@brief ????????????? typedef enum tagNET_MEDIA_CAP_TYPE { NET_MEDIA_CAP_TYPE_SENSORINFO, /// ???????????? } NET_MEDIA_CAP_TYPE; ///@brief CLIENT_GetDevCaps NET_MEDIAMANAGER_CAPS ??????? typedef struct tagNET_IN_MEDIAMANAGER_GETCAPS { DWORD dwSize; NET_MEDIA_CAP_TYPE emType; /// ?????????????????? } NET_IN_MEDIAMANAGER_GETCAPS; ///@brief ??????????????????????????? typedef struct tagNET_IN_SNAP_CFG_CAPS { int nChannelId; /// ?????(??????0) BYTE bReserved[1024]; /// ???? }NET_IN_SNAP_CFG_CAPS; #define DH_MAX_FPS_NUM 128 /// ????????????? #define DH_MAX_QUALITY_NUM 32 /// ????????????? ///@brief ?????????? typedef struct tagNET_OUT_SNAP_CFG_CAPS { int nResolutionTypeNum; /// ??????????????? DH_RESOLUTION_INFO stuResolutionTypes[DH_MAX_CAPTURE_SIZE_NUM]; DWORD dwFramesPerSecNum; /// ?????????? int nFramesPerSecList[DH_MAX_FPS_NUM]; /// -25??25??1???-24??24??1??????? /// 0????????1??1??1???2??1??2???3??1??3? /// 4??1??4???5??1??5???17??1??17???18??1??18? /// 19??1??19???20??1??20????? DWORD dwQualityMun; /// ?????????? DWORD nQualityList[DH_MAX_QUALITY_NUM]; /// 1-6????6???????? DWORD dwMode; /// ??,?????????????????????????????? DWORD dwFormat; /// ???????,?????????????bmp?????????jpg?? BYTE bReserved[2048]; /// ???? } NET_OUT_SNAP_CFG_CAPS; ///@brief ????????????? typedef enum tagNET_CAMERA_SENSOR { NET_CAMERA_SENSOR_NORMAL, /// ???????? NET_CAMERA_SENSOR_LEPTON, /// Lepton ????? NET_CAMERA_SENSOR_TAU, /// Tau ????? } NET_CAMERA_SENSOR; ///@brief ???????????? typedef struct tagNET_CAMERA_SENSORINFO { NET_CAMERA_SENSOR emSensorType; /// ?????????? int nChannelsCount; /// ?????????????????????? int nChannels[512]; /// ???????????????????? char reserved[512]; } NET_CAMERA_SENSORINFO; ///@brief ??????????????????? typedef struct tagNET_MEDIA_SENSORINFO { BOOL bSupport; /// ??????????????,?TRUE??????????? int nSensorTypeCount; /// ???????????????????????? NET_CAMERA_SENSORINFO stuDetail[16]; /// ????????????????????,?????????? nSensorTypeCount ??? char reserved[1024]; } NET_MEDIA_SENSORINFO; ///@brief CLIENT_GetDevCaps NET_MEDIAMANAGER_CAPS ??????? typedef struct tagNET_OUT_MEDIAMANAGER_GETCAPS { DWORD dwSize; NET_MEDIA_SENSORINFO stuSensorInfo; /// ???????????? } NET_OUT_MEDIAMANAGER_GETCAPS; ///@brief ??????????????? typedef enum tagNET_ENUM_VIDEOIN_CAP_TYPE { NET_VIDEOIN_CAP_TYPE_CONFLICT, /// ?????????????????????????????NET_OUT_VIDEOIN_CONFLICT_CAPS }NET_ENUM_VIDEOIN_CAP_TYPE; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_CAPS { DWORD dwSize; int nChannel; /// ????? NET_ENUM_VIDEOIN_CAP_TYPE emCapType; /// ????????????????? }NET_IN_VIDEOIN_CAPS; ///@brief ??????? typedef enum tagNET_ENUM_CONFLICT_TYPE { NET_ENUM_CONFLICT_TYPE_UNKNOWN, /// ??? NET_ENUM_CONFLICT_TYPE_MAIN, /// ?????? NET_ENUM_CONFLICT_TYPE_EXTRA1, /// ??????1 NET_ENUM_CONFLICT_TYPE_EXTRA2, /// ??????2 NET_ENUM_CONFLICT_TYPE_TVOUT, /// ?????? NET_ENUM_CONFLICT_TYPE_DSP, /// ???? NET_ENUM_CONFLICT_TYPE_SMARTENC, /// Smart????(??GOP) NET_ENUM_CONFLICT_TYPE_SETGOP, /// ????GOP NET_ENUM_CONFLICT_TYPE_ROI, /// ????????? NET_ENUM_CONFLICT_TYPE_CBR, /// ?????????? NET_ENUM_CONFLICT_TYPE_SVC, /// SVC???? NET_ENUM_CONFLICT_TYPE_MJPEG, /// MJPEG???? NET_ENUM_CONFLICT_TYPE_ROTATE_90, /// ???90?? }NET_ENUM_CONFLICT_TYPE; ///@brief ????? typedef struct tagNET_CONFLICT_TYPE { NET_ENUM_CONFLICT_TYPE emConflict1; /// ?????1 NET_ENUM_CONFLICT_TYPE emConflict2; /// ?????2 char reserved[64]; }NET_CONFLICT_TYPE; ///@brief ?????????? typedef struct tagNET_VIDEOIN_CONFLICT_CAPS { BOOL bConflict; /// ?????????????? int nConflictNum; /// ????????? NET_CONFLICT_TYPE stuConflict[MAX_VIDEOIN_CONFLICT_NUM]; /// ????? }NET_VIDEOIN_CONFLICT_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_CAPS { DWORD dwSize; NET_VIDEOIN_CONFLICT_CAPS stuConflictCap; /// ?????????? }NET_OUT_VIDEOIN_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEO_MOSAIC_CAPS??????? typedef struct tagNET_IN_MEDIA_VIDEOMOSAIC_GETCAPS { DWORD dwSize; /// ?????????????????? } NET_IN_MEDIA_VIDEOMOSAIC_GETCAPS; ///@brief CLIENT_GetDevCaps NET_VIDEO_MOSAIC_CAPS??????? typedef struct tagNET_OUT_MEDIA_VIDEOMOSAIC_GETCAPS { DWORD dwSize; /// ?????????????????? int nSupportCount; /// ??????????????????????? short snSupport[MAX_MOSAIC_CHANNEL_NUM]; /// ?????????????????[-1]??????? int nMosaicCount; /// ???????????????????? char szMosaic[MAX_MOSAIC_NUM]; /// ????????????????? DH_SIZE stuRectMax; /// ??????????????? DH_SIZE stuRectMin; /// ???????????????? } NET_OUT_MEDIA_VIDEOMOSAIC_GETCAPS; ///@brief CLIENT_GetDevCaps NET_FACE_BOARD_CAPS ??????? typedef struct tagNET_IN_FACEBOARD_CAPS { DWORD dwSize; /// ???????? }NET_IN_FACEBOARD_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEO_IMAGECONTROL_CAPS ??????? typedef struct tagNET_IN_VIDEO_IMAGECONTROL_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEO_IMAGECONTROL_CAPS; ///@brief ???????? typedef enum tagNET_EM_STABLE_CAPS_TYPE { EM_STABLE_UNSPPORT, /// ??????????? EM_STABLE_ELEC, /// ????????? EM_STABLE_LIGHT, /// ????????? EM_STAVLE_ELEC_AND_LIGHT, /// ????????????????? EM_STABLE_CONTROL, /// ????????? EM_STABLE_ELEC_AND_CONTROL, /// ????????????????? EM_STABLE_LIGHT_AND_CONTROL, /// ????????????????? } NET_EM_STABLE_CAPS_TYPE; ///@brief CLIENT_GetDevCaps NET_VIDEO_IMAGECONTROL_CAPS ??????? typedef struct tagNET_OUT_VIDEO_IMAGECONTROL_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// Mirror,Flip,Rotate90????????????true BOOL bMirror; /// ?????????????? BOOL bFlip; /// ?????????180??????? BOOL bRotate90; /// ???????90/270????? BOOL bFreeze; /// ???????????? NET_EM_STABLE_CAPS_TYPE emStable; /// ?????????????? } NET_OUT_VIDEO_IMAGECONTROL_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_EXPOSURE_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_EXPOSURE_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_EXPOSURE_CAPS; #define MAX_EXPOSURE_COUNT 8 ///@brief ????? typedef enum tagNET_EM_EXPOSURE_MODE { NET_EM_EXPOSURE_AUTO, /// ?????? NET_EM_EXPOSURE_LOWNICE, /// ?????? NET_EM_EXPOSURE_ANTISHADOW, /// ????? NET_EM_EXPOSURE_MANUALRANGE = 4, /// ??????? NET_EM_EXPOSURE_APERTUREFIRST, /// ??????? NET_EM_EXPOSURE_MANUALFIXATION, /// ?????? NET_EM_EXPOSURE_GIANFIRST, /// ???????? NET_EM_EXPOSURE_SHUTTERFIRST, /// ???????? NET_EM_EXPOSURE_FLASHMATCH, /// ?????????? } NET_EM_EXPOSURE_MODE; ///@brief ??????? typedef enum tagNET_EM_ANTIFLICKER_MODE { NET_EM_ANTIFLICKER_OUTDOOR, /// ???? NET_EM_ANTIFLICKER_50HZ, /// 50Hz NET_EM_ANTIFLICKER_60HZ, /// 60Hz } NET_EM_ANTIFLICKER_MODE; ///@brief ?????????????????????????????????100???1/100????????? ///@brief "-1"???????????????????????????????????????????????? typedef struct tagNET_SPEED_CAPS { int nRetManual; /// ????????????????? int nManual[DH_COMMON_STRING_16]; /// ??????????????? int nRetManual50Hz; /// ?????50HZ ???????????????????????? int nManual50Hz[DH_COMMON_STRING_16]; /// ?????50HZ ?????????????????????? int nRetManual60Hz; /// ?????60HZ ???????????????????????? int nManual60Hz[DH_COMMON_STRING_16]; /// ?????60HZ ?????????????????????? int nRetShutterPAL; /// ???????????P??????????? int nShutterPAL[DH_COMMON_STRING_16]; /// ???????????P????????? int nRetShutterNTSC; /// ???????????N??????????? int nShutterNTSC[DH_COMMON_STRING_16]; /// ???????????N????????? BYTE bReserved[128]; /// ?????? } NET_SPEED_CAPS; ///@brief ?????????????? typedef struct tagNET_SLOW_SPEED_CAPS { int nRetPal; int nPal[DH_COMMON_STRING_16]; int nRetNtsc; int nNtsc[DH_COMMON_STRING_16]; BYTE bReserved[128]; /// ?????? } NET_SLOW_SPEED_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_EXPOSURE_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_EXPOSURE_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ????????????????? int nExposureMode; /// ???????????????? NET_EM_EXPOSURE_MODE emExposureMode[MAX_EXPOSURE_COUNT]; /// ????????? BOOL bAntiFlicker; /// ?????????? int nAntiFlicker; /// ?????????????????? NET_EM_ANTIFLICKER_MODE emAntiFlicker[MAX_ANTIFLICKERMODE_COUNT]; /// ????????????? int nMinCompensation; /// ?????????? int nMaxCompensation; /// ????????? BOOL bGainUpperLimit; /// ?????????????????? /// true:??????????????????????????????????????? /// false: ???????????????????????????????????????? int nMinGain; /// ????????? int nMaxGain; /// ???????? BOOL bSlowAutoExposure; /// ???????????????????, ?????? /// ??????????????false?????????????????????????????????true????????????????? int nMinSlowAutoExposure; /// ?????????? int nMaxSlowAutoExposure; /// ????????? BOOL bSlowShutter; /// ???????????? float fMinValueLow; /// ?????????????????? float fMaxValueLow; /// ????????????????? float fMinValueUp; /// ?????????????????? float fMaxValueUp; /// ????????????????? NET_SPEED_CAPS stuSpeedCaps; /// ???????????? NET_SLOW_SPEED_CAPS stuSlowSpeedCaps; /// ?????????????? BOOL bIrisAuto; /// ???????????? int nIrisMin; /// ??????????????? int nIrisMax; /// ?????????????? BOOL bSupportIrisRange; /// ??????????????? BOOL bDoubleExposure; /// ??????ITC???????? BOOL bRecoveryTime; /// ?????????????? } NET_OUT_VIDEOIN_EXPOSURE_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_DENOISE_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_DENOISE_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_DENOISE_CAPS; ///@brief ????3D???????? typedef enum tagNET_EM_3DSUPPORT_TYPE { NET_EM_3DSUPPORT_UNKOWN, /// ??? NET_EM_3DSUPPORT_OFF, /// ??? NET_EM_3DSUPPORT_AUTO, /// ??? NET_EM_3DSUPPORT_MANUAL, /// ??? } NET_EM_3DSUPPORT_TYPE; ///@brief 3D???????????? typedef struct tagNET_3D_ALGORITHM_MODE { /* ????????????bit0,bit1,bit2...???????????bit0????????bit1?? */ /* ??????bit2?????????.??0????????????????? */ DWORD dwSingleExposure; /// ????????????? DWORD dwDoubleExposureFullRate; /// ITC???????????????? DWORD dwDoubleExposureHalfRate; /// ITC???????????????? DWORD dsThreeExposure; /// ????????????? BYTE bReserved[128]; /// ?????? } NET_3DALGORITHM_MODE; #define MAX_3DTYPE_COUNT 8 /// ???????3D??????????? #define MAX_GROUP_COUNT 2 /// ??????????? #define MAX_PROGRAM_COUNT 8 /// ???????????????????? ///@brief 2D???????? typedef struct tagNET_SUPPORT2D_CAPS { BOOL bSupport2D; /// ??????2D???? int n2DLevelMin; /// 2D??????????? int n2DLevelMax; /// 2D?????????? int nMaxRAWLevel; /// ?????RAW???2D?????, 0 ???????? BYTE bReserved[128]; /// ?????? } NET_SUPPORT2D_CAPS; ///@brief ???{??????????????? typedef struct tagNET_DENOISEGROUP_PROGRAM { int nProgramCount; /// ??????????? int nProgram[MAX_PROGRAM_COUNT]; /// ??????????? } NET_DENOISEGROUP_PROGRAM; ///@brief 3D???????? typedef struct tagNET_SUPPORT3D_CAPS { BOOL bSupport3D; /// ??????3D???? int n3DTypeCount; /// ????3D??????????? NET_EM_3DSUPPORT_TYPE em3DSupportType[MAX_3DTYPE_COUNT]; /// ????3D???????? int n3DLevelMin; /// 3D??????????? int n3DLevelMax; /// 3D?????????? int nAutoLevelMin; /// 3D?????????????? int nAutoLevelMax; /// 3D????????????? NET_3DALGORITHM_MODE stuAlgorithmSDMode; /// 3D???????????? int nGroupCount; /// ????????? NET_DENOISEGROUP_PROGRAM stuDenoiseGroup[MAX_GROUP_COUNT]; /// ???????????????????????????????????????????????????????n???, DenoiseMode??bit(n)???????? int nDenoiseScheme; /// ??????, 1??????????????????????????,0???????????????????????????????????? BYTE bReserved[128]; /// ?????? } NET_SUPPORT3D_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_DENOISE_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_DENOISE_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ????????????? NET_SUPPORT2D_CAPS stu2DCaps; /// 2D???????? NET_SUPPORT3D_CAPS stu3DCaps; /// 3D???????? BOOL bSupportAlgorithm1; /// ???????????1 int nTnfLevelRangeMin; /// ?????????? int nTnfLevelRangeMax; /// ????????? int nSnfLevelRangeMin; /// ??????????? int nSnfLevelRangeMax; /// ?????????? int nSeniotTypeCount; /// ????????????????? NET_EM_3DSUPPORT_TYPE emSeniorType[MAX_3DTYPE_COUNT]; /// ?????????????? } NET_OUT_VIDEOIN_DENOISE_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_BACKLIGHT_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_BACKLIGHT_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_BACKLIGHT_CAPS; ///@brief ?????? typedef enum tagNET_EM_BACK_MODE { NET_EM_BACKLIGHT_MODE_UNKNOW, /// ????? NET_EM_BACKLIGHT_MODE_OFF, /// ??? NET_EM_BACKLIGHT_MODE_BACKLIGHT, /// ?????? NET_EM_BACKLIGHT_MODE_WIDEDYNAMIC, /// ????? NET_EM_BACKLIGHT_MODE_GLAREINHIBITION, /// ??????? NET_EM_BACKLIGHT_MODE_SSA, /// ????????? } NET_EM_BACK_MODE; ///@brief ???????? typedef enum tagNET_EM_BLACKLIGHT_MODE { NET_EM_BLACKLIGHT_UNKNOW, /// ????? NET_EM_BLACKLIGHT_DEFAULT, /// ????? NET_EM_BLACKLIGHT_REGION, /// ??????????? } NET_EM_BLACKLIGHT_MODE; ///@brief ????????????????????? typedef enum tagNET_EM_BACK_INTENSITY_MODE { NET_EM_INTENSITY_UNKNOWN, /// ??? NET_EM_INTENSITY_OFF, /// ??? NET_EM_INTENSITY_AUTO, /// ??? NET_EM_INTENSITY_MANUAL, /// ??? } NET_EM_BACK_INTENSITY_MODE; ///@brief ???????????????????????? typedef enum tagNET_EM_GLAREINHIBITION_MODE { NET_EM_GLAREINHIBITION_UNKNOWN, /// ??? NET_EM_GLAREINHIBITION_DEFAULT, /// ?????(????) NET_EM_GLAREINHIBITION_FPGA, /// Fpga??????? } NET_EM_GLAREINHIBITION_MODE; #define MAX_MODE_COUNT 8 /// ?????????? ///@brief CLIENT_GetDevCaps NET_VIDEOIN_BACKLIGHT_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_BACKLIGHT_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ????????????????? int nBackModeCount; /// ???????????????? NET_EM_BACK_MODE emBackMode[MAX_MODE_COUNT]; /// ????????? int nBackLightModeCount; /// ???????????????? NET_EM_BLACKLIGHT_MODE emBackLightMode[MAX_MODE_COUNT]; /// ??????????? int nWideDynamicRange; /// ??????????, 0-??????1-???????????(???0-100??)??2-???????????(???0-100??)??3-??????????????????(???0-1??)??4-???????????????????0-100(???0-100??) 5-?????????????????????+?????????????????0~100 int nSSAIntensity; /// ????????????????????????????? NET_EM_BACK_INTENSITY_MODE emIntensityMode[MAX_MODE_COUNT]; /// ????????????????????????? NET_EM_GLAREINHIBITION_MODE emGlareInhibition[MAX_MODE_COUNT]; /// ???????????????????????? UINT nGlareInhibition; /// ????????????????? } NET_OUT_VIDEOIN_BACKLIGHT_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_WHITEBALANCE_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_WHITEBALANCE_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_WHITEBALANCE_CAPS; ///@brief ??????? typedef enum tagNET_EM_WHITEBALANCE_TYPE { NET_EM_WHITEBALANCE_UNKNOW, /// ??????? NET_EM_WHITEBALANCE_DISABLE, /// Unable NET_EM_WHITEBALANCE_AUTO, /// Auto NET_EM_WHITEBALANCE_SUNNY, /// Sunny????,6500K???? NET_EM_WHITEBALANCE_CLOUDY, /// Cloudy????,7500K???? NET_EM_WHITEBALANCE_HOME, /// Home???? 5000K???? NET_EM_WHITEBALANCE_OFFICE, /// Office?? 4400K???? NET_EM_WHITEBALANCE_NIGHT, /// Night??? 2800K???? NET_EM_WHITEBALANCE_CUSTOM, /// Custom????? NET_EM_WHITEBALANCE_HIGHCOLORTEMP, /// HighColorTemperature????????? NET_EM_WHITEBALANCE_LOWCOLORTEMP, /// LowColorTemperature????????? NET_EM_WHITEBALANCE_AUTOCOLORTEMP, /// AutoColorTemperature?????????? NET_EM_WHITEBALANCE_CUSTOMCOLORTEMP, /// CustomColorTemperature?????????? NET_EM_WHITEBALANCE_INDOOR, /// Indoor???? NET_EM_WHITEBALANCE_OUTDOOR, /// Outdoor????,???????????????? NET_EM_WHITEBALANCE_ATW, /// ATW???? NET_EM_WHITEBALANCE_MANUAL, /// Manual??? NET_EM_WHITEBALANCE_AUTOOUTDOOR, /// AutoOutdoor NET_EM_WHITEBALANCE_SODIUMAUTO, /// SodiumAuto?????? NET_EM_WHITEBALANCE_SODIUM, /// Sodium???, 2000K???? NET_EM_WHITEBALANCE_MANUALDATUM, /// ManualDatum?????????????? NET_EM_WHITEBALANCE_PARTWHITEBALANCE, /// PartWhiteBalance?????????????? NET_EM_WHITEBALANCE_NATURAL, /// Natural?????, 2000K-12000K ????????+?????? NET_EM_WHITEBALANCE_STREETLAMP, /// StreetLamp????, 1000K-5000K } NET_EM_WHITEBALANCE_TYPE; #define MAX_BALANCEMODES_COUNT 16 /// ????????????? ///@brief CLIENT_GetDevCaps NET_VIDEOIN_WHITEBALANCE_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_WHITEBALANCE_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ?????????????? int nWhiteBalance; /// ????????????????? NET_EM_WHITEBALANCE_TYPE emWhiteBalance[MAX_BALANCEMODES_COUNT]; /// ?????????????? } NET_OUT_VIDEOIN_WHITEBALANCE_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_DAYNIGHT_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_DAYNIGHT_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_DAYNIGHT_CAPS; ///@brief ICR???????? typedef enum tagNET_EM_ICR_TYPE { NET_EM_ICR_UNKONOW, /// ??? NET_EM_ICR_ELECTRON, /// ???? NET_EM_ICR_MECHANISM, /// ???? } NET_EM_ICR_TYPE; ///@brief ??????? typedef enum tagNET_EM_COLORBLACK_MODE { NET_EM_COLORBLACK_UNKNOWN, /// ??? NET_EM_COLORBLACK_COLOR, /// ?????? NET_EM_COLORBLACK_BRIGHTNESS, /// ??????????????? NET_EM_COLORBLACK_BLACKWHITE, /// ?????? NET_EM_COLORBLACK_PHOTORESISTOR, /// ???????? NET_EM_COLORBLACK_GAIN, /// ???????????? NET_EM_COLORBLACK_ALARMINPUT, /// ?????????? NET_EM_COLORBLACK_IO, /// ??IO???? } NET_EM_COLORBLACK_MODE; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_DAYNIGHT_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_DAYNIGHT_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ?????????????????? int nICRType; /// ???????ICR??????????? NET_EM_ICR_TYPE emICRType[MAX_MODE_COUNT]; /// ICR???????????? int nColorBlackMode; /// ????????????????? NET_EM_COLORBLACK_MODE emColorBlackMode[MAX_MODE_COUNT]; /// ?????????????? int nSensitivityRangeMin; /// ???????????????? int nSensitivityRangeMax; /// ??????????????? int nDelayRangeMin; /// ????????????????? int nDelayRangeMax; /// ???????????????? } NET_OUT_VIDEOIN_DAYNIGHT_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_ZOOM_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_ZOOM_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_ZOOM_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_ZOOM_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_ZOOM_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ??????????? int nSpeedRangeMin; /// ??????????? int nSpeedRangeMax; /// ?????????? BOOL bDigitalZoomSupport; /// ??????????? int nZoomLimitRangeMin; /// ????????????????????????? int nZoomLimitRangeMax; /// ???????????????????????? } NET_OUT_VIDEOIN_ZOOM_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_FOCUS_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_FOCUS_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_FOCUS_CAPS; ///@brief ????? typedef enum tagNET_EM_FOCUS_MODE { NET_EM_FOCUS_OFF, /// ??? NET_EM_FOCUS_ASSIST, /// ??????? NET_EM_FOCUS_AUTO, /// ?????? NET_EM_FOCUS_SEMI_AUTO, /// ???????? NET_EM_FOCUS_MANUAL, /// ?????? } NET_EM_FOCUS_MODE; ///@brief ??????????? typedef enum tagNET_EM_FOCUS_LIMITSELECT_MODE { NET_EM_FOCUS_LIMITSELECT_UNKNOW, /// ????? NET_EM_FOCUS_LIMITSELECT_MANUAL, /// ??? NET_EM_FOCUS_LIMITSELECT_AUTO, /// ??? } NET_EM_FOCUS_LIMITSELECT_MODE; ///@brief ??????? typedef enum tagNET_EM_FOCUS_TYPE { NET_EM_FOCUS_UNKNOWN, /// ??????? NET_EM_FOCUS_AUTOTRACE, /// ?????????? } NET_EM_FOCUS_TYPE; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_FOCUS_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_FOCUS_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ???????????? int nFcousMode; /// ?????????????? NET_EM_FOCUS_MODE emFocusMode[MAX_MODE_COUNT]; /// ???????????? int nLimitMode; /// ????????????????????? NET_EM_FOCUS_LIMITSELECT_MODE emLimitMode[MAX_MODE_COUNT]; /// ?????????????????? BOOL bSupportFocusRegion; /// ?????????? BOOL bSensitivity; /// ?????????????? BOOL bIRCorrection; /// ???????????????? BOOL bFocusLimit; /// ???????????? int nFocusTypeCount; /// ???????????????? NET_EM_FOCUS_TYPE emFocusType[MAX_MODE_COUNT]; /// ?????????????? int nFocusLimitRangeCount; /// ???????????????? int nFocusLimitRange[16]; /// ????????????????????????????????? /// 1. ????[100, 1000, 2000, 3000, 5000]??????????? /// 2. ????????????xxxx1????????????1??I?0???????????????+???????200001?????200000mm+ (???????????????????????????200m+) } NET_OUT_VIDEOIN_FOCUS_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_SHARPNESS_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_SHARPNESS_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_SHARPNESS_CAPS; ///@brief ????? typedef enum tagNET_EM_SHARPNESS_MODE { NET_EM_SHARPNESS_AUTO, ///??? NET_EM_SHARPNESS_MANAUL, /// ??? }NET_EM_SHARPNESS_MODE; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_SHARPNESS_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_SHARPNESS_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ????????????? int nSharpnessMode; /// ???????????????? NET_EM_SHARPNESS_MODE emSharpnessMode[MAX_MODE_COUNT]; /// ????????????? int nSharpnessMin; /// ???????? int nSharpnessMax; /// ??????? BOOL bSupportRestrain; /// ????????????? int nRestrainLevelMin; /// ?????????????? int nRestrainLevelMax; /// ????????????? } NET_OUT_VIDEOIN_SHARPNESS_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_COLOR_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_COLOR_CAPS { DWORD dwSize; /// ?????????????????? int nChannel; /// ????? } NET_IN_VIDEOIN_COLOR_CAPS; ///@brief ????????????? typedef enum tagNET_EM_STYLE_TYPE { NET_EM_STYLE_UNKONWON, /// ??? NET_EM_STYLE_GENTLE, /// ??? NET_EM_STYLE_STANDARD, /// ??? NET_EM_STYLE_FLAMBOYANT, /// ???? } NET_EM_STYLE_TYPE; ///@brief ????????????? typedef struct tagNET_COLOR_STYLE_CAPS { BOOL bSupport; /// ??????????????? int nStyleType; /// ???????????????????? NET_EM_STYLE_TYPE emStyleType[MAX_MODE_COUNT]; /// ????????????????? BYTE bReserved[128]; /// ?????? } NET_COLOR_STYLE_CAPS; #define MAX_GRAYVALUE_COUNT 8 /// ???????????? ///@brief ?????????? typedef struct tagNET_GRAY_SCALE_CAPS { BOOL bSupport; /// ??????????????? int nValueCount; /// ???????????????? int nValue[MAX_GRAYVALUE_COUNT][2]; /// ??????????????? BYTE bReserved[128]; /// ?????? } NET_GRAY_SCALE_CAPS; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_COLOR_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_COLOR_CAPS { DWORD dwSize; /// ?????????????????? BOOL bSupport; /// ????????????????? BOOL bBrightness; /// ?????????? BOOL bContrast; /// ????????? BOOL bSaturation; /// ?????????? BOOL bHue; /// ????????? BOOL bGamma; /// ??????Gamma BOOL bChromaSuppress; /// ????????????? NET_COLOR_STYLE_CAPS stuColorStype; /// ????????? NET_GRAY_SCALE_CAPS stuGrayScale; /// ?????????? } NET_OUT_VIDEOIN_COLOR_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_VIDEOIN_RAWFRAME_CAPS ??????? typedef struct tagNET_IN_VIDEOIN_RAWFRAME_CAPS { DWORD dwSize; }NET_IN_VIDEOIN_RAWFRAME_CAPS; ///@brief YUV???????????? typedef struct tagNET_RAWFRAMETYPE_DATA { int nListNum; /// ????????????????? char szList[DH_COMMON_STRING_16][DH_COMMON_STRING_8];/// ????YUV?????????? BYTE byReserved[1024]; }NET_RAWFRAMETYPE_DATA; ///@brief CLIENT_GetDevCaps ??? NET_VIDEOIN_RAWFRAME_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_RAWFRAME_CAPS { DWORD dwSize; NET_RAWFRAMETYPE_DATA stuFrameData; }NET_OUT_VIDEOIN_RAWFRAME_CAPS; #define MAX_UNIT_COUNT 8 /// ????????????????? ///@brief CLIENT_GetDevCaps NET_FACE_BOARD_CAPS ??????? typedef struct tagNET_OUT_FACEBOARD_CAPS { DWORD dwSize; /// ???????? BOOL bHasBattery; /// ???????? BOOL bSupportPowerVoltageDetect; /// ?????????????? BOOL bTemperatures; /// ?????????????? BOOL bOSDTemperatureUnit; /// ??????????????? int nRetUnitCount; /// ????????????????? EM_TEMPERATURE_UNIT emTempreatureUnit[MAX_UNIT_COUNT]; /// OSD??????????????? BOOL bSupportDevStateLight; /// ???????????? }NET_OUT_FACEBOARD_CAPS; ///@brief CLIENT_GetDevCaps??? NET_COAXIAL_CONTROL_IO_CAPS ??????? typedef struct tagNET_IN_GET_COAXIAL_CONTROL_IO_CAPS { DWORD dwSize; /// ??????? int nChannel; /// ????? } NET_IN_GET_COAXIAL_CONTROL_IO_CAPS; ///@brief CLIENT_GetDevCaps??? NET_COAXIAL_CONTROL_IO_CAPS ??????? typedef struct tagNET_OUT_GET_COAXIAL_CONTROL_IO_CAPS { DWORD dwSize; /// ??????? BOOL bSupportControlLight; /// ????????? BOOL bSupportControlSpeaker; /// ??????speaker?????? BOOL bSupportControlFullcolorLight; /// ???????????? BOOL bSupportControlSuperLight; /// ????????????? BOOL bSupportControlIntelliLight; /// ??????????????????? BOOL bSupportControlIntelliSpeaker; /// ????????????????? BOOL bSupportControlWhiteBlueLight; /// ?????????????? } NET_OUT_GET_COAXIAL_CONTROL_IO_CAPS; ///@brief CLIENT_GetDevCaps??? NET_FACEINFO_CAPS ??????? typedef struct tagNET_IN_GET_FACEINFO_CAPS { DWORD dwSize; /// ??????? }NET_IN_GET_FACEINFO_CAPS; ///@brief ???????? typedef enum tagEM_RECOGNITIONALGORITHM_TYPE { EM_RECOGNITIONALGORITHM_UNKNOWN, EM_RECOGNITIONALGORITHM_DAHUA, EM_RECOGNITIONALGORITHM_SHANGTANG, EM_RECOGNITIONALGORITHM_YITU, EM_RECOGNITIONALGORITHM_HANWANG, EM_RECOGNITIONALGORITHM_FIREEYE, }EM_RECOGNITIONALGORITHM_TYPE; ///@brief CLIENT_GetDevCaps??? NET_FACEINFO_CAPS ??????? typedef struct tagNET_OUT_GET_FACEINFO_CAPS { DWORD dwSize; /// ??????? int nRecognitionType; /// ???????????????0:???,1:???? EM_RECOGNITIONALGORITHM_TYPE emRecognitionAlgorithm; /// ???????? DWORD nRecognitionVersion; /// ???????,??1.5.2?????0x00010502 UINT nMaxFaces; /// ??????? int nMaxPhotoSize; /// ???????????,????:KB UINT nMaxInsertRate; /// ??????????? BOOL bIsSupportGetPhoto; /// ?????????????? BOOL bIsSupportFaceEigen; /// ??????????????????? BOOL bIsSupportMultiFace; /// ???????????? BOOL bIsSupportOnlyImportFaceEigen; /// ???????????????? }NET_OUT_GET_FACEINFO_CAPS; ///@brief ???????????? typedef enum tagEM_DETECT_VERSION_TYPE { EM_DETECT_VERSION_UNKNOW = 0 , EM_DETECT_VERSION_V1_0 , ///?????????? EM_DETECT_VERSION_V3_0 , ///??????????? }EM_DETECT_VERSION_TYPE; #define MAX_DETECT_VERSION_NUM 64 ///@brief ?????????????????? typedef enum tagEM_BLIND_DETECT_VERSION_TYPE { EM_BLIND_DETECT_VERSION_UNKNOW = 0 , EM_BLIND_DETECT_VERSION_FULL_SCREEN , ///????????? EM_BLIND_DETECT_VERSION_MULTI_WINDOW , ///?????? }EM_BLIND_DETECT_VERSION_TYPE; #define MAX_BLIND_DETECT_VERSION_NUM 64 ///@brief ????????????? typedef enum tagEM_SMART_MOTION_TYPE { EM_SMART_MOTION_UNKNOWN, /// ??? EM_SMART_MOTION_HUMAN, /// ???? EM_SMART_MOTION_VEHICLE, /// ?????? } EM_SMART_MOTION_TYPE; ///@brief ?????????????? typedef struct tagNET_SMART_MOTION_CAPS { BOOL bSupport; /// ????????????? UINT nSmartTypeNum; /// ???????????????????? EM_SMART_MOTION_TYPE emSmartMotionType[8]; /// ????????????????? BYTE byReserved[512]; /// ??????? } NET_SMART_MOTION_CAPS; ///@brief ??????????????????? typedef struct tagNET_OUT_VIDEO_DETECT_CAPS { DWORD dwSize; BOOL bSupportBlind; ///???????????? BOOL bSupportLoss; ///??????????????? BOOL bSupportMotion; ///??????????? BOOL bMotionResult; ///????????????????????? DWORD nMotionColumns; ///???????????????? DWORD nMotionRows; ///???????????????? DWORD nMotionDetectWindow; ///????????????????? DWORD nBlindColumns; ///??????????????????? DWORD nBlindRows; ///??????????????????? DWORD nBlindDetectWindow; ///??????????????? BOOL bPositionDetect; ///???????????????? DWORD nDetectVersionNum; ///??????????? EM_DETECT_VERSION_TYPE emDetectVersions[MAX_DETECT_VERSION_NUM]; ///???????????? DWORD nBlindDetectVersionNum; ///????????????????? EM_BLIND_DETECT_VERSION_TYPE emBlindDetectVersions[MAX_BLIND_DETECT_VERSION_NUM]; ///?????????????????? BOOL bMotionLinkPtzPreset; ///????????????????????? BOOL bMotionLinkPtzTour; ///???????????????????? BOOL bMotionLinkPtzPattern; ///???????????????????? BOOL bUnFocusDetect; ///???????????? BOOL bAlarmDetect; ///?????????????????????? BOOL bSupportMoveDetect; /// ??????????????? NET_SMART_MOTION_CAPS stuSmartMotionCaps; /// ?????????????? }NET_OUT_VIDEO_DETECT_CAPS; ///@brief ??????????? typedef struct tagALARM_FALLING_INFO { DWORD dwStructSize; /// ??????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byRserved[3]; /// ???? char szUserID[32]; /// ??????????????????????ID char szUserName[128]; /// ???????????????????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_FALLING_INFO; ///@brief ????Bus???????????? typedef void (CALLBACK *fBusStateCallBack)(LLONG lAttachHandle, LONG lCommand, char *pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief ??????? typedef enum tagNET_DRIVER_CHECK_TYPE { NET_DRIVER_CHECK_TYPE_UNKNOWN, /// ??? NET_DRIVER_CHECK_TYPE_SIGNIN, /// ??? NET_DRIVER_CHECK_TYPE_SIGNOUT, /// ??? } NET_DRIVER_CHECK_TYPE; ///@brief ?????? typedef enum tagNET_DRIVER_CHECK_METHOD { NET_DRIVER_CHECK_METHOD_UNKNOWN, /// ??? NET_DRIVER_CHECK_METHOD_POS, /// POS?? NET_DRIVER_CHECK_METHOD_HAND, /// ??????? } NET_DRIVER_CHECK_METHOD; ///@brief ???????????DH_ALARM_BUS_DRIVER_CHECK( ???????????)???????????????? typedef struct tagALARM_BUS_DRIVER_CHECK_INFO { DWORD dwSize; char szCarNo[DH_MAX_PLATE_NUMBER_LEN]; /// ???? char szDriverName[DH_COMMON_STRING_16]; /// ??????? char szDriverID[DH_MAX_PERSON_ID_LEN]; /// ???? char szOrganize[DH_COMMON_STRING_128]; /// ??????????????? NET_TIME_EX stUsefulLife; /// ????????? NET_GPS_STATUS_INFO stGPSStatusInfo; /// GPS??? NET_TIME_EX stCheckTime; /// ????? NET_DRIVER_CHECK_METHOD emCheckMethod; /// ???? NET_DRIVER_CHECK_TYPE emCheckType; /// ?????? }ALARM_BUS_DRIVER_CHECK_INFO; ///@brief ???????????DH_ALARM_DEVICE_MSG_NOTIFY(????????????????)???????????????? typedef struct tagALARM_DEVICE_MSG_NOTIFY_INFO { DWORD dwSize; char szMsg[DH_COMMON_STRING_256]; /// ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? } ALARM_DEVICE_MSG_NOTIFY_INFO; ///@brief ?????????? typedef enum tagEM_ENCLOSURE_STATUS { EM_ENCLOSURE_STATUS_UNKNOWN, /// ??? EM_ENCLOSURE_STATUS_INSIDE, /// ??????????? EM_ENCLOSURE_STATUS_OUTSIDE, /// ????????????? } EM_ENCLOSURE_STATUS; ///@brief ???????????DH_ALARM_VEHICLE_STANDING_OVER_TIME(??????????)???????????????? typedef struct tagALARM_VEHICLE_STANDING_OVER_TIME_INFO { DWORD dwSize; NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME_EX stuTime; /// ?????????????? NET_TIME_EX stuUtc; /// ???????????????? DWORD dwUtc; /// ????????????????, ??stuUtc????,??????,??????????????? BOOL bEventConfirm; /// ????????? UINT nParkingTime; /// ?????????????? char szDeviceID[32]; /// ??????? EM_ENCLOSURE_STATUS emEnclosureStatus; /// ?????????? } ALARM_VEHICLE_STANDING_OVER_TIME_INFO; ///@brief ???????? typedef enum tagNET_LINE_DIRECTION { NET_LINE_DIRECTION_UNKNOWN, /// ??? NET_LINE_DIRECTION_POSTIVE, /// ???? NET_LINE_DIRECTION_NEGATIVE, /// ???? NET_LINE_DIRECTION_AROUND, /// ???? NET_LINE_DIRECTION_DISPERSE, /// ??? } NET_LINE_DIRECTION; ///@brief ???????? typedef enum tagNET_BUS_STATE { NET_BUS_STATE_UNKNOWN, /// ??? NET_BUS_STATE_ILLEGAL, /// ??? NET_BUS_STATE_LEGAL, /// ??? } NET_BUS_STATE; ///@brief ?????? typedef enum tagNET_PORT_TYPE { NET_PORT_TYPE_UNKOWN, /// ??? NET_PORT_TYPE_MANUAL, /// ?????? NET_PORT_TYPE_GPS, /// GPS??? } NET_PORT_TYPE; ///@brief ???????????????????? typedef enum tagEM_VEHICLE_DATA_TYPE { EM_VEHICLE_DOOR_OPEN_DATA_UNKNOWN = 0, EM_VEHICLE_DOOR_OPEN_DATA_REALTIME, /// ???????? EM_VEHICLE_DOOR_OPEN_DATA_HISTORY, /// ????????? }EM_VEHICLE_DATA_TYPE; ///@brief ???????????DH_ALARM_BUS_IMPORT_SITE(??????)???????????????? typedef struct tagALARM_BUS_IMPORT_SITE_INFO { DWORD dwSize; char szSiteID[DH_COMMON_STRING_64]; /// ????? DWORD dwSiteNum; /// ??? NET_LINE_DIRECTION emDirection; /// ???????? char szLineID[DH_COMMON_STRING_64]; /// ??????? NET_TIME_EX stuTime; /// ????????? int nTime; /// ????????????????, UTC??, ??????? NET_BUS_STATE emState; /// ?????????? NET_PORT_TYPE emType; /// ?????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? DWORD dwSiteCount; /// ??????? char szSiteName[DH_COMMON_STRING_64]; /// ??????? char szDesignation[DH_COMMON_STRING_64]; /// ???????? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nFromMileage; /// ??????????????????????m unsigned int nTotalMileage; /// ??????????????????????m unsigned int nFromCostTime; /// ??????????????????????s unsigned int nTotalCostTime; /// ??????????????????????s char szScheduleUniqueId[64]; /// ?????? } ALARM_BUS_IMPORT_SITE_INFO; ///@brief ??????????????????? typedef struct tagNET_SUBTOTAL { unsigned int nDevNum; /// ??????? ???????????????????? unsigned int nInside; /// ?????????? unsigned int nExited; /// ?????????? BYTE byRserved[256]; /// ??????? }NET_SUBTOTAL; ///@brief ???????????DH_ALARM_BUS_EXPORT_SITE(??????)???????????????? typedef struct tagALARM_BUS_EXPORT_SITE_INFO { DWORD dwSize; char szSiteID[DH_COMMON_STRING_64]; /// ????? DWORD dwSiteNum; /// ??? NET_LINE_DIRECTION emDirection; /// ???????? char szLineID[DH_COMMON_STRING_64]; /// ??????? NET_TIME_EX stuTime; /// ????????? int nTime; /// ????????????????, UTC??, ??????? NET_BUS_STATE emState; /// ??????????? NET_PORT_TYPE emType; /// ?????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? DWORD dwSiteCount; /// ??????? char szSiteName[DH_COMMON_STRING_64]; /// ??????? char szDesignation[DH_COMMON_STRING_64]; /// ???????? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nFromMileage; /// ??????????????????????m unsigned int nTotalMileage; /// ??????????????????????m unsigned int nFromCostTime; /// ??????????????????????s unsigned int nTotalCostTime; /// ??????????????????????s int nCurrentPeople; /// ?????????????????????????????????????????????????????????????????????????? unsigned int nTotalIn; /// ????????????????? unsigned int nTotalOut; /// ????????????????? unsigned int nSubtotalCount; /// ???????????????? NET_SUBTOTAL stuSubtotal[32]; /// ??????????????????????????32????????????????????????????????? char szScheduleUniqueId[64]; /// ?????? } ALARM_BUS_EXPORT_SITE_INFO; ///@brief ????????? typedef enum tagEM_ALARM_BUS_ABNORMAL_EVENT_TYPE { EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_UNKNOWN, /// ??? EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_RUNNING, /// ??????,"Running" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_MEAL, /// ???,"Meal" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_BLOCK, /// ????,"Block" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_CALL, /// ???,"Call" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_BREAKDOWN, /// ????,"Breakdown" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_DISCONTINUED, /// ?????,"Discontinued" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_ROBING, /// ????,"Robing" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_OVERLOAD, /// ????,"Overload" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_DISPUTE, /// ????,"Dispute" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_ACCIDENT, /// ???,"Accident" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_OVERSPEED, /// ????,"OverSpeed" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_RENTAL, /// ????,"Rental" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_MAINTENANCE, /// ????,"Maintenance" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_CLOSURE, /// ??????,"Closure" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_PUBSECURITY, /// ??????, "PubSecurity" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_ENTER_PARK, /// ?????????, "EnterPark" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_LEAVE_PARK, /// ???????, "LeavePark" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_REFUEL, /// ????, "Refuel" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_FIRE, /// ???????, "Fire" EM_ALARM_BUS_ABNORMAL_EVENT_TYPE_HELP, /// ??????, "Help" }EM_ALARM_BUS_ABNORMAL_EVENT_TYPE; ///@brief ???????????DH_ALARM_BUS_ABNORMAL(?????????)???????????????? typedef struct tagALARM_BUS_ABNORMAL_INFO { DWORD dwSize; EM_ALARM_BUS_ABNORMAL_EVENT_TYPE emEventType; /// ????????? char szCarNo[DH_MAX_PLATE_NUMBER_LEN]; /// ???? char szLineID[DH_COMMON_STRING_64]; /// ??????? NET_LINE_DIRECTION emLineDirection; /// ???????? NET_TIME_EX stuTime; /// ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? } ALARM_BUS_ABNORMAL_INFO; ///@brief ???????????DH_ALARM_ENCLOSURE_ALARM(???????????)???????????????? typedef struct tagALARM_ENCLOSURE_ALARM_INFO { DWORD dwSize; DWORD dwAlarmType; /// ????????, ?????????, /// 0:LimitSpeed, 1:DriveAllow, 2:ForbidDrive, 3:LoadGoods, 4:UploadGoods DWORD dwAlarmDetail; /// ????????, ?????????, /// 0:DriveIn, 1:DriveOut, 2:Overspeed, 3:SpeedClear NET_BUS_STATE emState; /// ????????????? DWORD dwDriverNo; /// ?????? DWORD dwEnclosureID; /// ????ID DWORD dwLimitSpeed; /// ???? DWORD dwCurrentSpeed; /// ?????? NET_TIME_EX stuTime; /// ?????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? } ALARM_ENCLOSURE_ALARM_INFO; typedef NET_ACCESS_CTL_STATUS_TYPE NET_VEHICLE_DOOR_STATUS; ///@brief ??????????, ?????????? DH_VEHICLE_DOOR_OPEN typedef struct tagALARM_VEHICLE_DOOR_OPEN_INFO { DWORD dwSize; NET_VEHICLE_DOOR_STATUS emStatus; /// ???? int nDoor; /// ?????, 1:???,2:????,3:???? NET_TIME stuTime; /// ??????, UTC?? int nTime; /// ????????????????, UTC??, ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? }ALARM_VEHICLE_DOOR_OPEN_INFO; ///@brief ?????????, ?????????? DH_ALARM_BUS_CUR_MILEAGE typedef struct tagALARM_BUS_CUR_MILEAGE_INFO { DWORD dwSize; BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? int nTime; /// ????????????????, UTC??, ??????? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? NET_TIME stuTime; /// ??????, UTC?? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuStartTime; /// ??????????????, UTC?? NET_GPS_STATUS_INFO stuStartGPSStatusInfo; /// ?????????????????GPS???, ?????????????????????????? unsigned int nMileage; /// ??????????????, ????:0.1km char szDriverID[32]; /// ???? }ALARM_BUS_CUR_MILEAGE_INFO; ///@brief ???????????? typedef struct tagNET_SUB_OIL_LIST_INFO { UINT nCurOilSub; /// ???????????????0.1L UINT nOilTankageSub; /// ???????????????0.1L int nOilChangeSub; /// ????????????????????????0.1L ????????? ????????? BYTE byReserved[252]; /// ??????? }NET_SUB_OIL_LIST_INFO; ///@brief ????????????, ?????????? DH_ALARM_BUS_CUR_OIL typedef struct tagALARM_BUS_CUR_OIL_INFO { DWORD dwSize; BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? int nTime; /// ????????????????, UTC??, ??????? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? NET_TIME stuTime; /// ??????, UTC?? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuStartTime; /// ??????????????, UTC?? NET_GPS_STATUS_INFO stuStartGPSStatusInfo; /// ?????????????????GPS???, ?????????????????????????? unsigned int nCurOil; /// ???????, ????: 0.1L unsigned int nOilTankage; /// ???????, ????: 0.1L int nOilChange; /// ????????????????, ????: 0.1L, ???????????, ??????????? char szCarNO[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? NET_SUB_OIL_LIST_INFO stuSubOilList[10]; /// ???????????? int nSubOilNum; /// ??????????? }ALARM_BUS_CUR_OIL_INFO; ///@brief ?????????????, ?????????? DH_ALARM_BUS_LOW_OIL typedef struct tagALARM_BUS_LOW_OIL_INFO { DWORD dwSize; BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? int nTime; /// ????????????????, UTC??, ??????? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? NET_TIME stuTime; /// ??????, UTC?? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? unsigned int nCurOil; /// ???????, ????: 0.1L unsigned int nOilLine; /// ???????, ????: 0.1L unsigned int nOilTankage; /// ???????, ????: 0.1L char szCarNO[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? }ALARM_BUS_LOW_OIL_INFO; ///@brief ?????????, ?????????? DH_ALARM_BUS_STEAL_OIL typedef struct tagALARM_BUS_STEAL_OIL_INFO { DWORD dwSize; BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? int nTime; /// ????????????????, UTC??, ??????? EM_VEHICLE_DATA_TYPE emDataType; /// ???????????? NET_TIME stuTime; /// ??????, UTC?? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? unsigned int nCurOil; /// ???????, ????: 0.1L unsigned int nOilTankage; /// ???????, ????: 0.1L char szCarNO[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? }ALARM_BUS_STEAL_OIL_INFO; ///@brief ?????? typedef enum tagEM_LINE_STATE { EM_LINE_STATE_UNKNOWN, /// ??? EM_LINE_STATE_NORMAL, /// ???????? EM_LINE_STATE_AWAY, /// ???????? }EM_LINE_STATE; ///@brief ??????????, ????????,?????????? DH_ALARM_BUS_CIRCUIT_SHIFT typedef struct tagALARM_BUS_CIRCUIT_SHIFT_INFO { BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nTime; /// ????????????????, UTC??, ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuTime; /// ??????????,UTC?? EM_LINE_STATE emLineState; /// ?????? BOOL bShiftAndPark; /// ??????????? BYTE byReserved[1016]; /// ??????? }ALARM_BUS_CIRCUIT_SHIFT_INFO; ///@brief ??????????,????????,?????????? DH_ALARM_BUS_ROUTE_OVERTIME typedef struct tagALARM_BUS_ROUTE_OVERTIME_INFO { BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nTime; /// ????????????????, UTC??, ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuTime; /// ??????????,UTC?? BYTE byReserved[1024]; /// ??????? }ALARM_BUS_ROUTE_OVERTIME_INFO; ///@brief ??????????,??????????,?????? DH_ALARM_BUS_VEHICLE_CARRY_ALARM typedef struct tagALARM_BUS_VEHICLE_CARRY_ALARM_INFO { int nAction; /// ???????, 0: ????, 1: ???? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nTime; /// ????????????????, UTC??, ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuTime; /// ??????????,UTC?? BYTE byReserved[1024]; /// ??????? } ALARM_BUS_VEHICLE_CARRY_ALARM_INFO; ///@brief ??????????,??????????,?????? DH_ALARM_BUS_VEHICLE_PAULIN_ALARM typedef struct tagALARM_BUS_VEHICLE_PAULIN_ALARM_INFO { int nAction; /// ???????, 0: ???, 1: ??? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nTime; /// ????????????????, UTC??, ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuTime; /// ??????????,UTC?? BYTE byReserved[1024]; /// ??????? } ALARM_BUS_VEHICLE_PAULIN_ALARM_INFO; ///@brief ???????????,??????????,?????? DH_ALARM_BUS_VEHICLE_LIFT_ALARM typedef struct tagALARM_BUS_VEHICLE_LIFT_ALARM_INFO { int nAction; /// ???????, 0: ????????, 1: ??????? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nTime; /// ????????????????, UTC??, ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS???, ?????????????????????????? NET_TIME stuTime; /// ??????????,UTC?? BYTE byReserved[1024]; /// ??????? } ALARM_BUS_VEHICLE_LIFT_ALARM_INFO; ///@brief ????????????????????,?????? DH_ALARM_BUS_FIRE_PRESSURE_ALARM typedef struct tagALARM_BUS_FIRE_PRESSURE_ALARM_INFO { int nAction; /// ???????, 0: ???, 1: ?? unsigned int nTime; /// ????????????????, UTC??, ??????? double dbFirePressureThreshold; /// ???????????????? double dbFirePressureValue; /// ????????????????? NET_TIME stuTime; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char byReserved[1024]; /// ??????? }ALARM_BUS_FIRE_PRESSURE_ALARM_INFO; ///@brief ??????????? typedef enum tagEM_EVENT_DATA_TYPE { EM_EVENT_DATA_TYPE_UNKNOWN, /// ??? EM_EVENT_DATA_TYPE_REALTIME, /// ?????? EM_EVENT_DATA_TYPE_HISTORY, /// ???????, ??????? }EM_EVENT_DATA_TYPE; ///@brief ?????????????, ?????? DH_ALARM_BUS_ADD_OIL typedef struct tagNET_ALARM_BUS_ADD_OIL_INFO { int nAction; /// ???????, 0: ????, 1: ???, 2: ?? BOOL bNeedConfirm; /// ?????????, ???????CLIENT_BusConfirmEvent?????? unsigned int nTime; /// ????????????????, UTC??, ??????? NET_TIME stuTime; /// ??????????,UTC?? EM_EVENT_DATA_TYPE emDataType; /// ??????????? char szCarNo[12]; /// ???? UINT nAddOilVolume; /// ??????, ????: 0.1L NET_TIME stuStartTime; /// ?????????? NET_TIME stuEndTime; /// ??????????? char szReserved[512]; /// ?????? }NET_ALARM_BUS_ADD_OIL_INFO; ///@brief ????Bus????????? typedef struct tagNET_IN_BUS_ATTACH { DWORD dwSize; fBusStateCallBack cbBusState; /// ????????? LDWORD dwUser; /// ??????? }NET_IN_BUS_ATTACH; ///@brief ????Bus????????? typedef struct tagNET_OUT_BUS_ATTACH { DWORD dwSize; }NET_OUT_BUS_ATTACH; ///@brief ??????l???????? typedef struct tagNET_EXALARMCHANNELS_INFO { DWORD dwSize; int nExAlarmBoxNum; /// ?????????????? int nChannelNum; /// ???????????????????????? char szChannelName[DH_MAX_EXALARMCHANNEL_NAME_LEN]; /// ??????????? } NET_EXALARMCHANNELS_INFO; ///@brief CLIENT_QueryDevState ?????????? typedef struct tagNET_EXALARMCHANNELS { DWORD dwSize; int nExAlarmInCount; /// ??????l?????????????,??????????????? int nRetExAlarmInCount; /// ??????l???????????????? NET_EXALARMCHANNELS_INFO* pstuExAlarmInInfo; /// ??????l???????????? /// ??????????????????sizeof(NET_EXALARMCHANNELS_INFO)*nExAlarmInCount int nExAlarmOutCount; /// ??????l????????????,??????????????? int nRetExAlarmOutCount; /// ??????l??????????????? NET_EXALARMCHANNELS_INFO* pstuExAlarmOutInfo; /// ??????l??????????? /// ??????????????????sizeof(NET_EXALARMCHANNELS_INFO)*nExAlarmOutCount } NET_EXALARMCHANNELS; ///@brief ??????????? typedef struct tagNET_ACTIVATEDDEFENCEAREA_INFO { DWORD dwSize; int nChannel; /// ????????? NET_TIME stuActivationTime; /// ??????????? }NET_ACTIVATEDDEFENCEAREA_INFO; ///@brief CLIENT_QueryDevState ?????????? typedef struct tagNET_ACTIVATEDEFENCEAREA { DWORD dwSize; int nAlarmInCount; /// ????????????????????????,???????????? int nRetAlarmInCount; /// ??????????????????????? NET_ACTIVATEDDEFENCEAREA_INFO* pstuAlarmInDefenceAreaInfo; /// ????????????????? /// ??????????????????sizeof(NET_ACTIVATEDDEFENCEAREA_INFO)*nAlarmInCount int nExAlarmInCount; /// ?????????l?????????????,???????????? int nRetExAlarmInCount; /// ??????l?????????????????? NET_ACTIVATEDDEFENCEAREA_INFO* pstuExAlarmInDefenceAreaInfo; /// ??????l???????????? /// ??????????????????sizeof(NET_ACTIVATEDDEFENCEAREA_INFO)*nExAlarmInCount }NET_ACTIVATEDDEFENCEAREA; ///@brief ????????? typedef enum tagEM_NET_DOOR_STATUS_TYPE { EM_NET_DOOR_STATUS_UNKNOWN, EM_NET_DOOR_STATUS_OPEN, /// ??? EM_NET_DOOR_STATUS_CLOSE, /// ???? EM_NET_DOOR_STATUS_BREAK, /// ?????? EM_NET_DOOR_STATUS_CLOSEALWAYS, /// ????? EM_NET_DOOR_STATUS_OPENALWAYS, /// ????? }EM_NET_DOOR_STATUS_TYPE; ///@brief ????????(CLIENT_QueryDevState ??????????) typedef struct tagNET_DOOR_STATUS_INFO { DWORD dwSize; int nChannel; /// ???????? EM_NET_DOOR_STATUS_TYPE emStateType; /// ???????? }NET_DOOR_STATUS_INFO; ///@brief CLIENT_QueryRecordCount?????????? typedef struct _NET_IN_QUEYT_RECORD_COUNT_PARAM { DWORD dwSize; /// ??????? LLONG lFindeHandle; /// ?????? }NET_IN_QUEYT_RECORD_COUNT_PARAM; ///@brief CLIENT_QueryRecordCount?????????? typedef struct _NET_OUT_QUEYT_RECORD_COUNT_PARAM { DWORD dwSize; /// ??????? int nRecordCount; /// ?????????????? }NET_OUT_QUEYT_RECORD_COUNT_PARAM; ///@brief ??????????????????? typedef struct tagNET_ANALOGALARM_CHANNELS_INFO { DWORD dwSize; int nSlot; /// ?????, 0??????????, 1??????????????????????????, 2??3...??????? int nLevel1; /// ????????????, ??????????nSlot????????nLevel1???????, ??0??? int nLevel2; /// ????????????, ??????????nLevel1???????nLevel2???????,??0???,-1???????????? char szName[DH_COMMON_STRING_128]; /// ??????? char szSenseMethod[DH_COMMON_STRING_32]; /// ???????????? BYTE byIsNull; /// ???????????????0????????1????? }NET_ANALOGALARM_CHANNELS_INFO; ///@brief ?????????????????????(???DH_DEVSTATE_ANALOGALARM_CHANNELS????) typedef struct tagNET_ANALOGALARM_CHANNELS { DWORD dwSize; int nMaxAnalogAlarmChannels; /// ???????? int nRetAnalogAlarmChannels; /// ?????????? NET_ANALOGALARM_CHANNELS_INFO* pstuChannelInfo; /// ??????,??????????,?????sizeof(NET_ANALOGALARM_CHANNELS_INFO)*nMaxAnalogAlarmChannels int nVideoChannel; /// ??????????? }NET_ANALOGALARM_CHANNELS; ///@brief ????????????? typedef struct tagNET_ANALOGALARM_SENSE_INFO { DWORD dwSize; int nChannelID; /// ?????(??0???) NET_SENSE_METHOD emSense; /// ?????????? float fData; /// ????????? NET_TIME stuTime; /// ?????? int nStatus; /// ??????, -1:???,0:????,1:????????(????????), /// 2:???????1,3:???????2,4:???????3,5:???????4, /// 6:???????1,7:???????2,8:???????3,9:???????4 NET_GPS_STATUS_INFO stuGpsSatus; /// GPS?? int nUint; /// ??????????????,?? emSense ????????????? /// NET_SENSE_TEMP,????????? NET_TEMPERATURE_UNIT int nVideoChannel; /// ???????? }NET_ANALOGALARM_SENSE_INFO; ///@brief ????????????????????????????? typedef void (CALLBACK *fAnalogAlarmDataCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_ANALOGALARM_SENSE_INFO* pInfo, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttachAnalogAlarmData()?????????? typedef struct tagNET_IN_ANALOGALARM_DATA { DWORD dwSize; int nChannelId; /// ??0???, -1????????? fAnalogAlarmDataCallBack cbCallBack; /// ?????????? LDWORD dwUser; /// ?????????? }NET_IN_ANALOGALARM_DATA; ///@brief CLIENT_AttachAnalogAlarmData()?????????? typedef struct tagNET_OUT_ANALOGALARM_DATA { DWORD dwSize; }NET_OUT_ANALOGALARM_DATA; /// ?????????????????? #define DH_MAX_RECORD_INSERT_NUM 128 #define DH_MAX_RECORD_DELETE_NUM 128 #define DH_MAX_RECORD_UPDATE_NUM 128 ///@brief ?????? typedef struct tagNET_RECORDUPDATER_INFO { DWORD dwSize; int nInsertNum; /// ????????,??????????? int nInsertNumberList[DH_MAX_RECORD_INSERT_NUM]; /// ????????????????? int nDeleteNum; /// ????????,??????????? int nDeleteNumberList[DH_MAX_RECORD_DELETE_NUM]; /// ????????????????,-1????????????? int nUpdateNum; /// ????????,??????????? int nUpdateNumberList[DH_MAX_RECORD_UPDATE_NUM]; /// ???????????????? }NET_RECORDUPDATER_INFO; ///@brief ???????????? typedef void (CALLBACK *fRecordUpdaterCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_RECORDUPDATER_INFO* pInfo, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttachRecordUpdater()?????????? typedef struct tagNET_IN_RECORDUPDATER_DATA { DWORD dwSize; EM_NET_RECORD_TYPE emType; /// ???????????? fRecordUpdaterCallBack cbRecordUpdater; /// ????????????? LDWORD dwUser; /// ?????????? }NET_IN_RECORDUPDATER_DATA; ///@brief CLIENT_AttachRecordUpdater()?????????? typedef struct tagNET_OUT_RECORDUPDATER_DATA { DWORD dwSize; }NET_OUT_RECORDUPDATER_DATA; #define MAX_SUPPORT_SENSORTYPE_NUM 128 /// ????????????????????? ///@brief ??????????????????? typedef struct tagNET_SENSOR_LIST { DWORD dwSize; int nSupportSensorNum; /// ?????????????????????? char szSensorList[MAX_SUPPORT_SENSORTYPE_NUM][DH_COMMON_STRING_64]; }NET_SENSOR_LIST; ///@brief CLIENT_QueryDevLogCount????????????????? typedef struct tagNET_IN_GETCOUNT_LOG_PARAM { DWORD dwSize; QUERY_DEVICE_LOG_PARAM stuQueryCondition; /// ???????????? } NET_IN_GETCOUNT_LOG_PARAM; ///@brief CLIENT_QueryDevLogCount????????????????? typedef struct tagNET_OUT_GETCOUNT_LOG_PARAM { DWORD dwSize; int nLogCount; /// ?????(???????) } NET_OUT_GETCOUNT_LOG_PARAM; ///@brief SDK?????? typedef int (CALLBACK *fSDKLogCallBack)(const char* szLogBuffer, unsigned int nLogSize, LDWORD dwUser); ///@brief SDK???????????? typedef struct tagLogSetPrintInfo { DWORD dwSize; BOOL bSetFilePath; /// ?????????????? char szLogFilePath[MAX_LOG_PATH_LEN]; /// ???????(???"./sdk_log/sdk_log.log") BOOL bSetFileSize; /// ????????????????? unsigned int nFileSize; /// ??????????????(??????10240), ????:KB BOOL bSetFileNum; /// ????????????????? unsigned int nFileNum; /// ?????????????(??????10) BOOL bSetPrintStrategy; /// ???????????????????? unsigned int nPrintStrategy; /// ??????????, 0:????????(???); 1:????????? BYTE byReserved[4]; /// ?????? fSDKLogCallBack cbSDKLogCallBack; /// ?????????????sdk????????????????????NULL LDWORD dwUser; /// ??????? }LOG_SET_PRINT_INFO; ////////////////////////////////////////////////////////////////////// ///@brief Low Rate Wireless Personal Area Network ????????????? begin ////////////////////////////////////////////////////////////////////// ///@brief ??????????? typedef enum tagNET_WIRELESS_DEVICE_TYPE { NET_WIRELESS_DEVICE_TYPE_UNKNOWN = 0, NET_WIRELESS_DEVICE_TYPE_KEYBOARD, /// ??????? NET_WIRELESS_DEVICE_TYPE_DEFENCE, /// ??????? NET_WIRELESS_DEVICE_TYPE_REMOTECONTROL, /// ??????? NET_WIRELESS_DEVICE_TYPE_MAGNETOMER, /// ??????? NET_WIRELESS_DEVICE_TYPE_ALARMBELL, /// ??????? NET_WIRELESS_DEVICE_TYPE_SWITCHER, /// ??????? NET_WIRELESS_DEVICE_TYPE_SMARTLOCK, /// ?????????? NET_WIRELESS_DEVICE_TYPE_REPEATER, /// ?????????? } NET_WIRELESS_DEVICE_TYPE; ///@brief ????????????? typedef enum tagEM_WIRELESS_DEVICE_MODE { EM_WIRELESS_DEVICE_MODE_UNKNOWN = 0, /// ??????? EM_WIRELESS_DEVICE_MODE_NORMAL, /// Normal ????? EM_WIRELESS_DEVICE_MODE_POLLING, /// Polling ????? ???Type?RemoteControl????????????? } EM_WIRELESS_DEVICE_MODE; ///@brief ????????? typedef enum tagEM_CODEID_SENSE_METHOD_TYPE { EM_CODEID_SENSE_METHOD_TYPE_UNKOWN, /// ????? EM_CODEID_SENSE_METHOD_TYPE_DOOR_MAGNETISM, /// ??? EM_CODEID_SENSE_METHOD_TYPE_GAS_SENSOR, /// ??????? EM_CODEID_SENSE_METHOD_TYPE_CURTAIN_SENSOR, /// ????????? EM_CODEID_SENSE_METHOD_TYPE_MOBILE_SENSOR, /// ????????? EM_CODEID_SENSE_METHOD_TYPE_PASSIVEINFRA, /// ???????????? EM_CODEID_SENSE_METHOD_TYPE_URGENCY_BUTTON, /// ??????? EM_CODEID_SENSE_METHOD_TYPE_SMOKING_SENSOR, /// ?????????? EM_CODEID_SENSE_METHOD_TYPE_DOUBLEMETHOD, /// ?????????(????+???) EM_CODEID_SENSE_METHOD_TYPE_WATER_SENSOR, /// ????????? EM_CODEID_SENSE_METHOD_TYPE_THREEMETHOD, /// ?????? }EM_CODEID_SENSE_METHOD_TYPE; #define DH_WIRELESS_DEVICE_SERIAL_NUMBER_MAX_LEN 32 /// ????????????????? ///@brief ??????? typedef struct tagNET_CODEID_INFO { DWORD dwSize; TP_U64 nWirelessId; /// ????ID?? NET_WIRELESS_DEVICE_TYPE emType; /// ??????????? char szName[DH_USER_NAME_LENGTH]; /// ????? BOOL bEnable; /// ????????????? char szCustomName[DH_COMMON_STRING_64]; /// ????????? int nChannel; /// ?????????alarm?????,Alarm?????????,???Type?Defence?????????????? EM_WIRELESS_DEVICE_MODE emMode; /// ????????????? EM_CODEID_SENSE_METHOD_TYPE emSenseMethod; /// ????????? char szSerialNumber[DH_WIRELESS_DEVICE_SERIAL_NUMBER_MAX_LEN]; /// ????????????? UINT nTaskID; /// ????ID char szRoomNo[64]; /// ??????????? DWORD nMaxFingerprints; /// ???????:?0???????????? DWORD nMaxCards; /// ???????:?0??????????? DWORD nMaxPwd; /// ????????:?0????????????? char szRandSalt[128]; /// ??????????????? }NET_CODEID_INFO; ///@brief ??????????? typedef enum tagNET_CODEID_ERROR_TYPE { NET_CODEID_ERROR_TYPE_RIGHT = 0, /// ??????? NET_CODEID_ERROR_TYPE_ALREADYEXIST, /// ??????? NET_CODEID_ERROR_TYPE_OTHER, /// ???????? } NET_CODEID_ERROR_TYPE; ///@brief ????????????????????????,lAttachHandle??CLIENT_AttachLowRateWPAN????? typedef void (CALLBACK *fAttachLowRateWPANCB) (LLONG lLoginID, LLONG lAttachHandle, NET_CODEID_INFO* stuBuf, NET_CODEID_ERROR_TYPE emError, LDWORD dwUser); ///@brief CLIENT_AttachLowRateWPAN()??????? typedef struct tagNET_IN_ATTACH_LOWRATEWPAN { DWORD dwSize; fAttachLowRateWPANCB cbAttachLowRateWPANCB; /// ?????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_LOWRATEWPAN; ///@brief CLIENT_AttachLowRateWPAN()??????? typedef struct tagNET_OUT_ATTACH_LOWRATEWPAN { DWORD dwSize; }NET_OUT_ATTACH_LOWRATEWPAN; ///@brief ????????????? ///@brief CLIENT_ControlDevice ???? DH_CTRL_LOWRATEWPAN_REMOVE??????? typedef struct tagNET_CTRL_LOWRATEWPAN_REMOVE { DWORD dwSize; TP_U64 nWirelessId; /// ???????ID char szSerialNumber[DH_WIRELESS_DEVICE_SERIAL_NUMBER_MAX_LEN]; /// ????????????? ??????????????????????? }NET_CTRL_LOWRATEWPAN_REMOVE; ///@brief ????????????? ///@brief CLIENT_ControlDevice???? DH_CTRL_LOWRATEWPAN_REMOVEALL??????? typedef struct tagNET_CTRL_LOWRATEWPAN_REMOVEALL { DWORD dwSize; }NET_CTRL_LOWRATEWPAN_REMOVEALL; ///@brief ????????????? ///@brief CLIENT_ControlDevice???? DH_CTRL_LOWRATEWPAN_MODIFY ??????? typedef struct tagNET_CTRL_LOWRATEWPAN_MODIFY { DWORD dwSize; NET_CODEID_INFO stuCodeIDInfo; /// ????CodeIDInfo????CodeID,?????User??Enable???,??????????? }NET_CTRL_LOWRATEWPAN_MODIFY; ///@brief ???????????????? ///@brief CLIENT_ControlDevice???? DH_CTRL_LOWRATEWPAN_SETWORKMODE??????? typedef struct tagNET_IN_CTRL_LOWRATEWPAN_SETWORKMODE { DWORD dwSize; int nMode; ///?????? 0 :?????, 1 :???????? }NET_IN_CTRL_LOWRATEWPAN_SETWORKMODE; ///@brief ?????? typedef enum tagEM_CARPASS_STATUS { EM_CARPASS_STATUS_UNKNOWN, /// ????? EM_CARPASS_STATUS_CARPASS, /// ?????? EM_CARPASS_STATUS_NORMAL, /// ????? }EM_CARPASS_STATUS; ///@brief ??????????,???DH_CTRL_SET_PARK_INFO??????? typedef struct tagNET_CTRL_SET_PARK_INFO { DWORD dwSize; char szPlateNumber[MAX_PLATE_NUMBER_LEN]; /// ??????? unsigned int nParkTime; /// ??????,????:???? char szMasterofCar[MAX_MASTER_OF_CAR_LEN]; /// ???????? char szUserType[MAX_USER_TYPE_LEN]; /// ???????,?????,??????????????? /// monthlyCardUser?????????,yearlyCardUser????????,longTimeUser??????????,casualUser????????? unsigned int nRemainDay; /// ???????? char szParkCharge[MAX_PARK_CHARGE_LEN]; /// ????? unsigned int nRemainSpace; /// ??????????? unsigned int nPassEnable; /// 0:????????????? 1:??????????? NET_TIME stuInTime; /// ????????? NET_TIME stuOutTime; /// ??????????? EM_CARPASS_STATUS emCarStatus; /// ?????? char szCustom[MAX_CUSTOM_LEN]; /// ????????????????? char szSubUserType[MAX_SUB_USER_TYPE_LEN]; /// ????????szUserType????????????? char szRemarks[MAX_REMARKS_LEN]; /// ?????? char szResource[MAX_RESOURCE_LEN]; /// ???????????????????????:mp4???; ?????:BMP/jpg/JPG/jpeg/JPEG/png/PNG??? UINT nParkTimeout; /// ???????????????????0?????????????0????????? }NET_CTRL_SET_PARK_INFO; ///@brief ??????????????????????, ?????0??????? ///@brief CLIENT_ControlDevice???? DH_CTRL_CLEAR_SECTION_STAT??????? typedef struct tagNET_CTRL_CLEAR_SECTION_STAT_INFO { DWORD dwSize; int nChannel; /// ???????? } NET_CTRL_CLEAR_SECTION_STAT_INFO; ///@brief ????????????????? typedef struct tagNET_GET_CODEID_COUNT { DWORD dwSize; int nCodeIDCount; /// ?????????????? }NET_GET_CODEID_COUNT; ///@brief ?????????? typedef struct tagNET_GET_CODEID_LIST { DWORD dwSize; int nStartIndex; /// ???????????,????????????????0 int nQueryNum; /// ????????????????,??????????????????nMaxPageSize?????? int nRetCodeIDNum; /// ?????????????? NET_CODEID_INFO* pstuCodeIDInfo; /// ????????????,????????????,????????nQueryNum*sizeof(NET_CODEID_INFO) }NET_GET_CODEID_LIST; ///@brief ???????????????? typedef struct tagNET_DEVSIGNAL_INFO { DWORD dwSize; /// ???????? char szSN[32]; /// ????????? UINT nSignal; /// ????????????? }NET_DEVWIRELESSSIGNAL_INFO; ///@brief ???????????????? typedef struct tagNET_GET_DEVSIGNAL_LIST { DWORD dwSize; int nStartIndex; /// ????????????????????????????0 int nQueryNum; /// ??????????????????????????????CFG_CAP_CMD_LOWRATEWPAN????????nMaxPageSize?????? int nRetDevSignalNum; /// ???????????????? NET_DEVWIRELESSSIGNAL_INFO* pstuDevSignalInfo; /// ?????????????????????????????????nQueryNum*sizeof(NET_DEVWIRELESSSIGNAL_INFO) }NET_GET_DEVWIRELESSSIGNAL_LIST; ///@brief ?????????? typedef struct tagNET_CTRL_LOWRATEWPAN_ADD { DWORD dwSize; NET_CODEID_INFO stuCodeIDInfo; /// ???????? }NET_CTRL_LOWRATEWPAN_ADD; ///@brief ????????????? typedef enum tagEM_WIRELESS_DEVICE_ONLINE_STATE { EM_WIRELESS_DEVICE_STATE_UNKNOWN = 0, /// ??? EM_WIRELESS_DEVICE_STATE_OUTLINE, /// ???? EM_WIRELESS_DEVICE_STATE_ONLINE, /// ???? } EM_WIRELESS_DEVICE_ONLINE_STATE; ///@brief ????????????? typedef enum tagEM_WIRELESS_DEVICE_POWER_STATE { EM_WIRELESS_DEVICE_POWER_UNKNOWN = 0, /// ??????? EM_WIRELESS_DEVICE_POWER_NORMAL, /// ???????? EM_WIRELESS_DEVICE_POWER_LOW, /// ????? } EM_WIRELESS_DEVICE_POWER_STATE; ///@brief ???????????? typedef struct tagNET_WIRELESS_DEVICE_INFO { char szSerialNumber[DH_WIRELESS_DEVICE_SERIAL_NUMBER_MAX_LEN]; /// ????????? EM_WIRELESS_DEVICE_ONLINE_STATE emOnlineState; /// ?????? EM_WIRELESS_DEVICE_POWER_STATE emPowerState; /// ?????? BYTE byReserved[128]; /// ??????? }NET_WIRELESS_DEVICE_INFO; ///@brief ???????????? typedef struct tagNET_GET_WIRELESS_DEVICE_STATE { DWORD dwSize; int nStartIndex; /// ???????????,????????????????0, ????????? int nQueryNum; /// ??????????????????, ??????????????????nMaxPageSize??????, ??????? int nRetQueryNum; /// ???????????????????????, ???????nQueryNum NET_WIRELESS_DEVICE_INFO *pstuDeviceInfo; /// ??????????????, ????????????, ????????nQueryNum*sizeof(NET_WIRELESS_DEVICE_INFO) }NET_GET_WIRELESS_DEVICE_STATE; ///@brief ???????? typedef enum tagEM_REDUNDANCE_POWER_STATE { EM_REDUNDANCE_POWER_STATE_UNKNOWN = 0, /// ????? EM_REDUNDANCE_POWER_STATE_ON, /// ?? EM_REDUNDANCE_POWER_STATE_OFF, /// ??? EM_REDUNDANCE_POWER_STATE_ON_FAULT, /// ???? } EM_REDUNDANCE_POWER_STATE; #define MAX_REDUNDANCE_POWER_NUM 16 /// ????????????? ///@brief ???????????? typedef struct tagNET_GET_REDUNDANCE_POWER_INFO { DWORD dwSize; /// ??????? int nPowerNum; /// ??????? EM_REDUNDANCE_POWER_STATE emPowerState[MAX_REDUNDANCE_POWER_NUM]; /// ???????????? }NET_GET_REDUNDANCE_POWER_INFO; ///@brief ????????? typedef enum tagNET_EM_ACCESSORY_TAMPER_STATE { NET_EM_ACCESSORY_TAMPER_UNKNOWN, /// ??? NET_EM_ACCESSORY_TAMPER_ON, /// ?? NET_EM_ACCESSORY_TAMPER_OFF, /// ?? }NET_EM_ACCESSORY_TAMPER_STATE; ///@brief ???????? typedef enum tagNET_EM_DOOR_STATE { NET_EM_DOOR_STATE_UNKNOWN, /// ??? NET_EM_DOOR_STATE_ON, /// ?? NET_EM_DOOR_STATE_OFF, /// ?? }NET_EM_DOOR_STATE; ///@brief ?????? typedef enum tagNET_EM_ONLINE_STATE { NET_EM_ONLINE_STATE_UNKNOWN, /// ??? NET_EM_ONLINE_STATE_OFFLINE, /// ???? NET_EM_ONLINE_STATE_ONLINE, /// ???? }NET_EM_ONLINE_STATE; ///@brief ????? typedef enum tagNET_EM_ALARM_STATE { NET_EM_ALARM_STATE_UNKNOWN = -1, /// ??? NET_EM_ALARM_STATE_NORMAL, /// ???? NET_EM_ALARM_STATE_ALARM, /// ??? }NET_EM_ALARM_STATE; ///@brief ?????????? typedef struct tagNET_STATUS_INFO { char szSN[MAX_COMMON_STRING_32]; /// ????????? UINT nPercent; /// ??????????,0~100 float fVolt; /// ??????,????:?? UINT nIntensity; /// ??????????????0~5 UINT nSignal; /// ???????????????dbm??0~120 NET_EM_ACCESSORY_TAMPER_STATE emAccessoryTamperState; /// ????????? NET_EM_DOOR_STATE emDoorState; /// ???????? char szName[MAX_COMMON_STRING_32]; /// ??????? NET_EM_ONLINE_STATE emOnlineState; /// ?????? NET_EM_ALARM_STATE emAlarmState; /// ?????,???????????????????????????????????????????? char szVersion[MAX_COMMON_STRING_16];/// ?????? }NET_STATUS_INFO; ///@brief ???????? typedef struct tagNET_GET_ACCESSORY_STATUS { DWORD dwSize; /// ??????? int nSNNum; /// ?????????????????????????0?,????????????????????? char szSN[56][MAX_COMMON_STRING_32]; /// ?????????????,?????? int nStatusNum; /// ????????????????? NET_STATUS_INFO stStatusInfo[56]; /// ?????????????? }NET_GET_ACCESSORY_STATUS; ///@brief ?????????? typedef struct tagNET_PTZ_PRESET_POINT { int nIndexNum; /// ??????????0??? int nDwellTime; /// ?????????????? int nRotationalSpeed; /// ?????????????1~10?? BYTE byReserved[44]; /// ??????? }NET_PTZ_PRESET_POINT_INFO; ///@brief ????????? typedef struct tagNET_PTZ_TOURS_INFO { int nCruiseNum; /// ?????????1??? char szName[64]; /// ??????? NET_PTZ_PRESET_POINT_INFO stuPresetPoint[64]; /// ??????? int nPresetPointNum; /// ??????? BYTE byReserved[256]; /// ??????? }NET_PTZ_TOURS_INFO; ///@brief ?????????????(DH_DEVSTATE_GET_PTZ_TOURS) typedef struct tagNET_GET_PTZ_TOURS_INFO { DWORD dwSize; /// ??????? int nMaxToursNum; /// ??????????????? NET_PTZ_TOURS_INFO *pstuToursInfo; /// ???????? int nRetToursNum; /// ?????????????? }NET_GET_PTZ_TOURS_INFO; ///@brief ??????????? typedef enum tagEM_DETECTOR_STATUS_TYPE { EM_DETECTOR_STATUS_UNKNOWN = -1, /// ??? EM_DETECTOR_STATUS_ALLFUNCT_ENABLE, /// ???????????? EM_DETECTOR_STATUS_ANTITAMPER_DISABLE, /// ?????????? EM_DETECTOR_STATUS_ALLFUNCT_DISABLE, /// ???????????? }EM_DETECTOR_STATUS_TYPE; ///@brief ?????????????? typedef enum tagEM_ACCESSORY_VOLUME { EM_ACCESSORY_VOLUME_UNKNOWN, /// ??? EM_ACCESSORY_VOLUME_LOW, /// ?????? EM_ACCESSORY_VOLUME_MEDIUM, /// ?????? EM_ACCESSORY_VOLUME_HIGH, /// ?????? }EM_ACCESSORY_VOLUME; ///@brief ??????? typedef enum tagEM_EXPOWER_STATE { EM_EXPOWER_DISCONNECT = 0, /// ?????? EM_EXPOWER_CONNECT = 1, /// ???? EM_EXPOWER_UNKNOWN = 2, /// ??? }EM_EXPOWER_STATE; ///@brief ?????????????? typedef enum tagEM_RELAY_TYPE { EM_RELAY_UNKNOWN = -1, /// ??? EM_RELAY_CLOSED, /// ??? EM_RELAY_MANUAL, /// ??? EM_RELAY_AUTO, /// ??? }EM_RELAY_TYPE; ///@brief ?????? typedef struct tagNET_WPAN_RELAY_INFO { EM_RELAY_TYPE emEnable; /// ?????????????? int nRelayIndex; /// ????????? BYTE byReserved[32]; /// ?????? }NET_WPAN_RELAY_INFO; ///@brief ?????? typedef enum tagEM_ACCESSORY_SENSITIVITY { EM_ACCESSORY_SENSITIVITY_UNKNOWN, /// ??? EM_ACCESSORY_SENSITIVITY_LOW, /// ???????? EM_ACCESSORY_SENSITIVITY_MEDIUM, /// ???????? EM_ACCESSORY_SENSITIVITY_HIGH, /// ???????? }EM_ACCESSORY_SENSITIVITY; ///@brief ??????????? typedef enum tagEM_POWER_REGULATION_TYPE { EM_POWER_REGULATION_UNKNOWN = -1, /// ??? EM_POWER_REGULATION_AUTO, /// ??? EM_POWER_REGULATION_LOW, /// ?? EM_POWER_REGULATION_MEDIUM, /// ?? EM_POWER_REGULATION_HIGH, /// ?? }EM_POWER_REGULATION_TYPE; ///@brief ?????? typedef enum tagEM_ARMING_TYPE { EM_ARMING_UNKNOWN = -1, /// ??? EM_ARMING_ATHOME, /// ?????? EM_ARMING_OUT, /// ??????? }EM_ARMING_TYPE; ///@brief ??????? typedef struct tagNET_WPAN_ARMING_INFO { EM_ARMING_TYPE emType; /// ?????? BOOL bEnable; /// ???????????????????????????? BOOL bDelayEnable; /// ????????????????????????????? BYTE byReserved[32]; /// ?????? }NET_WPAN_ARMING_INFO; ///@brief ??????? typedef struct tagNET_WPAN_HEARTBEAT_INFO { UINT nInterval; /// ????????????????? UINT nOfflineTimes; /// ??????? BYTE byReserved[32]; /// ?????? }NET_WPAN_HEARTBEAT_INFO; ///@brief ?????? typedef enum tagEM_ONLINE_STATUS { EM_ONLINE_UNKNOWN, /// ??? EM_ONLINE_OFF, /// ???? EM_ONLINE_ON, /// ???? }EM_ONLINE_STATUS; ///@brief ???????? typedef enum tagEM_ACCESSORY_ALARM_TYPE { EM_ACCESSORY_ALARM_UNKNOWN = -1, /// ??? EM_ACCESSORY_ALARM_INTRUSION, /// ???? EM_ACCESSORY_ALARM_FIRE, /// ?? EM_ACCESSORY_ALARM_MEDICAL, /// ??? EM_ACCESSORY_ALARM_PANIC, /// ???? EM_ACCESSORY_ALARM_GAS, /// ??? EM_ACCESSORY_ALARM_HOLDUP, /// ??????????????????? }EM_ACCESSORY_ALARM_TYPE; ///@brief ???????? typedef enum tagEM_ACCESSORY_INPUT_TYPE { EM_ACCESSORY_INPUT_UNKNOWN = -1, /// ??? EM_ACCESSORY_INPUT_TAMPER, /// ???? EM_ACCESSORY_INPUT_SENSOR, /// ???????? }EM_ACCESSORY_INPUT_TYPE; ///@brief led?????? typedef enum tagEM_LED_BRIGHTNESS_LEVEL { EM_LED_BRIGHTNESS_UNKNOWN = -1, /// ??? EM_LED_BRIGHTNESS_CLOSED, /// ??? EM_LED_BRIGHTNESS_LOW, /// ??????? EM_LED_BRIGHTNESS_MEDIUM, /// ???????? EM_LED_BRIGHTNESS_HIGH, /// ??????? }EM_LED_BRIGHTNESS_LEVEL; ///@brief ?????? typedef enum tagEM_OPERATION_MODE { EM_OPERATION_UNKNOWN = -1, /// ??? EM_OPERATION_PANIC, /// ???????? EM_OPERATION_CONTROL, /// ??????? EM_OPERATION_MUTE_FIRE_ALARM, /// ??????????????? }EM_OPERATION_MODE; ///@brief ?????? typedef enum tagEM_ANTI_MISPRESS_TYPE { EM_ANTI_MISPRESS_UNKNOWN, /// ??? EM_ANTI_MISPRESS_OFF, /// ????0.1s???? EM_ANTI_MISPRESS_LONG, /// ????3s???? EM_ANTI_MISPRESS_DOUBLE, /// ???1s????????2?? }EM_ANTI_MISPRESS_TYPE; ///@brief ??????????? typedef enum tagEM_BUTTON_ALARM_TYPE { EM_BUTTON_ALARM_UNKNOWN = -1, /// ??? EM_BUTTON_ALARM_FIRE, /// ?? EM_BUTTON_ALARM_EMERGENCY, /// ???????? EM_BUTTON_ALARM_MEDICAL, /// ?????? }EM_BUTTON_ALARM_TYPE; ///@brief ????????? typedef struct tagNET_WPAN_ACCESSORY_CAPS_INFO { BOOL bSupportAlarmTone; /// ????????????????? BOOL bSupportCardReader; /// ??????????? BOOL bSupportChime; /// ???????????? BOOL bSupportOverTemperatureAlarm; /// ????????????? BOOL bSupportExternalWifi; /// ????????wifi???? BOOL bSupportWifiInfo; /// ??????wifi??????? BYTE byreserve[32]; /// ?????? }NET_WPAN_ACCESSORY_CAPS_INFO; ///@brief ?????? typedef struct tagNET_WPAN_ACCESSORY_BUTTON_INFO { BOOL bEnable; /// ??????? EM_BUTTON_ALARM_TYPE emType; /// ???????? UINT nSirenLinkageNum; /// ???????????? int nSirenLinkage[64]; /// ???????? BYTE byReserved[32]; /// ?????? }NET_WPAN_ACCESSORY_BUTTON_INFO; ///@brief ?????????????? typedef struct tagNET_WPAN_ACCESSORY_LOCK_INFO { BOOL bLockLoginEnable; /// ?????????? UINT nLoginFailLockTime; /// ????????????????????? BYTE byLockLoginTimes; /// ????????????? BYTE byReserved[31]; /// ?????? }NET_WPAN_ACCESSORY_LOCK_INFO; ///@brief ?????????? typedef struct tagNET_WPAN_CARD_READER_INFO { BOOL bEnable; /// ????????? BYTE byEncryption; /// ???????????????1??????(??????)??2???????? BYTE byReserved[31]; /// ?????? }NET_WPAN_CARD_READER_INFO; ///@brief ????? typedef struct tagNET_WPAN_ACCESSORY_IMAGE_INFO { CAPTURE_SIZE emResolution; /// ????? int nSnapshotNumber; /// ?????? int nSnapshotTimes; /// ?????? BYTE byReserved[32]; /// ?????? }NET_WPAN_ACCESSORY_IMAGE_INFO; ///@brief ??wifi????? typedef enum tagEM_EXTERNAL_WIFI_PRIORITY { EM_EXTERNAL_WIFI_UNKNOWN, /// ??? EM_EXTERNAL_WIFI_FIRST, /// ?????wifi EM_EXTERNAL_WIFI_ALTERNATIVE, /// ?????wifi EM_EXTERNAL_WIFI_USEONLY, /// ???????wifi }EM_EXTERNAL_WIFI_PRIORITY; ///@brief ??wifi??? typedef struct tagNET_WPAN_EXTERNAL_WIFI_INFO { BOOL bEnable; /// ??wifi??? EM_EXTERNAL_WIFI_PRIORITY emPriority; /// ??wifi????? BYTE byReserved[32]; /// ?????? }NET_WPAN_EXTERNAL_WIFI_INFO; ///@brief wifi??? typedef struct tagNET_WPAN_WIFI_INFO { BOOL bSyncEnable; /// Wi-Fi????????????? char szSSID[MAX_COMMON_STRING_128]; /// wifi???? char szPassword[MAX_COMMON_STRING_64]; /// wifi???? BYTE byReserved[32]; /// ?????? }NET_WPAN_WIFI_INFO; ///@brief ???????? typedef struct tagNET_WPAN_OVER_TEMPERATURE_ALARM_INFO { BOOL bEnable; /// ?????????????? double dbLowerLimit; /// ???????????????? double dbUpperLimit; /// ???????????????? BYTE byReserved[32]; /// ?????? }NET_WPAN_OVER_TEMPERATURE_ALARM_INFO; ///@brief ??????????? typedef struct tagNET_WPAN_ACCESSORY_INFO { DWORD dwSize; /// ??????? BOOL bRecordEnable; /// ???????????????RecordChannels BOOL bExternalAlarmEnable; /// ???????? BOOL bArmingWithoutPassword; /// ??????????? BYTE byAlarmLedIndication; /// ????Led??????0??????1???? BYTE byExPowerCheck; /// ???????????????????0??????1???? BYTE byTamper; /// ???????????0?????1???? BYTE by24HDefenceStatus; /// 24H????????0?????1???? BYTE byAlarmStatus; /// ???????0????????1?????? BYTE byExternalAlarmStatus; /// ?????????0????????1?????? BYTE byLedIndication; /// Led??????0?????1???? BYTE byBeepIndication; /// ????????????????????????BEEP??????0?????1???? BYTE bySosStatus; /// ???????????0?????1???? BYTE byViaTrace; /// ???????????0???????1????????? BYTE bySensorType; /// ???????????0???????1?????? BYTE byLockState; /// ????????1??????????2?????? BYTE bySensorFailure; /// ??????????????0????????1?????? BYTE bySignalStrengthTest; /// ??????????0?????1???? BYTE bySensitivityTest; /// ??????????0?????1???? BYTE byVolumeTest; /// ?????????0?????1???? BYTE bySnapshotTest; /// ???????0?????1???? BYTE byWifiTest; /// wifi?????0?????1???? BYTE byBlockState; /// ????????????, 1:?????????2?????????? UINT nShortAddr; /// ???????????1??? UINT nPercent; /// ???????????0~100 UINT nSignalLevel; /// ???????????? UINT nEntryDelay; /// ????????????????? UINT nExitDelay; /// ???????????????? UINT nAlarmDuring; /// ??????????????????? int nTriggerAlarmInterval; /// ?????????????????????? EM_DETECTOR_STATUS_TYPE emState; /// ??????? EM_ACCESSORY_VOLUME emBeepVolume; /// ???????????? EM_ACCESSORY_SENSITIVITY emSensentivity; /// ?????? EM_POWER_REGULATION_TYPE emPowerRegulation; /// ??????? EM_ONLINE_STATUS emOnline; /// ?????? EM_ACCESSORY_ALARM_TYPE emAlarmType; /// ???????? EM_ACCESSORY_INPUT_TYPE emInputType; /// ???????? EM_LED_BRIGHTNESS_LEVEL emLedBrightnessLevel; /// LED???? EM_OPERATION_MODE emOperationMode; /// ?????? EM_ANTI_MISPRESS_TYPE emAntiMispress; /// ?????? EM_EXPOWER_STATE emExPowerState; /// ????????????????????????????????? EM_ACCESSORY_VOLUME emVolume; /// ??????????? float fAmbientTemperature; /// ??????????????????? char szSN[MAX_COMMON_STRING_32]; /// ????????? char szName[MAX_COMMON_STRING_64]; /// ??????? char szVersion[MAX_COMMON_STRING_64]; /// ?????? char szModel[MAX_COMMON_STRING_64]; /// ?????? char szAlarmTone[MAX_COMMON_STRING_128]; /// ????????? NET_WPAN_RELAY_INFO stuRelayTran; /// ?????? NET_SENSE_METHOD emType; /// ???????????? NET_WPAN_HEARTBEAT_INFO stuHeartbeat; /// ??????? NET_WPAN_ACCESSORY_CAPS_INFO stuCaps; /// ????????? NET_WPAN_ACCESSORY_LOCK_INFO stuLockInfo; /// ?????????????? NET_WPAN_CARD_READER_INFO stuCardReader; /// ?????????? NET_WPAN_ACCESSORY_IMAGE_INFO stuImageInfo; /// ????? NET_WPAN_EXTERNAL_WIFI_INFO stuExternalWifi; /// ??wifi??? NET_WPAN_WIFI_INFO stuWifiInfo; /// Wi-Fi??? NET_WPAN_OVER_TEMPERATURE_ALARM_INFO stuOverTemperatureAlarm; /// ???????? UINT nAreaNumberCnt; /// ??????????? int nAreaNumber[64]; /// ????????????????????1??? UINT nControlAreaNumCnt; /// ??????????? int nControlAreaNum[64]; /// ????????????????????????1?????-1??????0????? UINT nRecordChannelsNum; /// ??????????? int nRecordChannels[256]; /// ????????????????????????????????????????????????????0??? UINT nSirenLinkageNum; /// ???????????? int nSirenLinkage[256]; /// ???????? UINT nArmingInfoNum; /// ??????????? NET_WPAN_ARMING_INFO stuArmingInfo[4]; /// ????????????4?? UINT nButtonNum; /// ???????? NET_WPAN_ACCESSORY_BUTTON_INFO stuButton[16]; /// ??????? }NET_WPAN_ACCESSORY_INFO; ///@brief ?????????(???DH_DEVSTATE_GET_ACCESSORY_INFO) typedef struct tagNET_GET_ACCESSORY_INFO { DWORD dwSize; /// ??????? UINT nSNNum; /// ?????????????????????????0?,????????????????????? char szSN[56][MAX_COMMON_STRING_32]; /// ????????????? UINT nMaxInfoNum; /// ???????????? NET_WPAN_ACCESSORY_INFO* pstuInfo; /// ?????????,?????????????,????????? nMaxAccessoryInfo*sizeof(NET_WPAN_ACCESSORY_INFO) UINT nInfoNum; /// ?????????? }NET_GET_ACCESSORY_INFO; ///@brief UPnP?????? typedef enum tagEM_UPNP_STATUS_TYPE { EM_UPNP_STATUS_UNKNOWN, /// ????? EM_UPNP_STATUS_SUCCESS, /// ?????? EM_UPNP_STATUS_ERROR, /// ?????? }EM_UPNP_STATUS_TYPE; ///@brief ???????????? typedef enum tagEM_PORTMAP_STATUS_TYPE { EM_PORTMAP_STATUS_UNKNOWN, /// ????? EM_PORTMAP_STATUS_SUCCESS, /// ????? EM_PORTMAP_STATUS_FAILED, /// ?????? }EM_PORTMAP_STATUS_TYPE; ///@brief ???UPnP?????(???DH_DEVSTATE_GET_UPNP_STATUS) typedef struct tagNET_GET_UPNPSTATUS_INFO { DWORD dwSize; /// ??????? BOOL bWorking; /// ?????????? EM_UPNP_STATUS_TYPE emStatus; /// ?? char szInnerAddress[MAX_COMMON_STRING_64]; /// ???IP char szOuterAddress[MAX_COMMON_STRING_64]; /// ??IP UINT nMaxPortMapStatus; /// ???????????????? UINT nReturnNum; /// ?????????????????? EM_PORTMAP_STATUS_TYPE *pemPortMapStatus; /// ???????????????????????????,????????? nMaxPortMapStatus*sizeof(EM_PORTMAP_STATUS_TYPE) }NET_GET_UPNPSTATUS_INFO; ///@brief ???????, CLIENT_ControlDeviceEx ??? ??? DH_CTRL_TEST_MAIL typedef struct tagNET_IN_TEST_MAIL { DWORD dwSize; }NET_IN_TEST_MAIL; ///@brief ???????, CLIENT_ControlDeviceEx ???? ??? DH_CTRL_TEST_MAIL typedef struct tagNET_OUT_TEST_MAIL { DWORD dwSize; }NET_OUT_TEST_MAIL; ///@brief ?????????????(???DH_CTRL_LOWRATEWPAN_SET_ACCESSORY_PARAM) typedef struct tagNET_IN_CTRL_LOWRATEWPAN_ACCESSORY_PARAM { DWORD dwSize; NET_WPAN_ACCESSORY_INFO stuInfo; /// ?????? }NET_IN_CTRL_LOWRATEWPAN_ACCESSORY_PARAM; ///@brief ???????????, CLIENT_ControlDeviceEx ??? ??? DH_CTRL_CONTROL_SMART_SWITCH typedef struct tagNET_IN_CONTROL_SMART_SWITCH { DWORD dwSize; char szSerialNumber[DH_WIRELESS_DEVICE_SERIAL_NUMBER_MAX_LEN]; /// ????????? BOOL bEnable; /// TRUE - ??, FALSE - ?? int nDelayTime; /// ??????, ????0???????????????. unit: min }NET_IN_CONTROL_SMART_SWITCH; ///@brief ???????????, CLIENT_ControlDeviceEx ???? ??? DH_CTRL_CONTROL_SMART_SWITCH typedef struct tagNET_OUT_CONTROL_SMART_SWITCH { DWORD dwSize; }NET_OUT_CONTROL_SMART_SWITCH; ///@brief ???IO???????? typedef enum tagEM_COAXIAL_CONTROL_IO_TYPE { EM_COAXIAL_CONTROL_IO_TYPE_UNKNOWN, /// ??? EM_COAXIAL_CONTROL_IO_TYPE_LIGHT, /// ???? EM_COAXIAL_CONTROL_IO_TYPE_SPEAKER, /// speak??? } EM_COAXIAL_CONTROL_IO_TYPE; ///@brief ???IO??????? typedef enum tagEM_COAXIAL_CONTROL_IO_SWITCH { EM_COAXIAL_CONTROL_IO_SWITCH_UNKNOWN, /// ??? EM_COAXIAL_CONTROL_IO_SWITCH_OPEN, /// ?? EM_COAXIAL_CONTROL_IO_SWITCH_CLOSE, /// ?? } EM_COAXIAL_CONTROL_IO_SWITCH; ///@brief ???IO??????? typedef enum tagEM_COAXIAL_CONTROL_IO_TRIGGER_MODE { EM_COAXIAL_CONTROL_IO_TRIGGER_MODE_UNKNOWN, /// ??? EM_COAXIAL_CONTROL_IO_TRIGGER_MODE_LINKAGE_TRIGGER, /// ???????? EM_COAXIAL_CONTROL_IO_TRIGGER_MODE_MANUAL_TRIGGER, /// ??????? } EM_COAXIAL_CONTROL_IO_TRIGGER_MODE; ///@brief ?????? typedef enum tagEM_COAXIAL_CONTROL_IO_LIGHT_MODE { EM_COAXIAL_CONTROL_IO_LIGHT_MODE_UNKNOWN, /// ??? EM_COAXIAL_CONTROL_IO_LIGHT_MODE_BRIGHT, /// ???? EM_COAXIAL_CONTROL_IO_LIGHT_MODE_TWINKLE, /// ??? } EM_COAXIAL_CONTROL_IO_LIGHT_MODE; ///@brief ???IO??????? typedef struct tagNET_COAXIAL_CONTROL_IO_INFO { EM_COAXIAL_CONTROL_IO_TYPE emType; /// ???IO???????? EM_COAXIAL_CONTROL_IO_SWITCH emSwicth; /// ???IO??????? EM_COAXIAL_CONTROL_IO_TRIGGER_MODE emMode; /// ???IO??????? EM_COAXIAL_CONTROL_IO_LIGHT_MODE emLightMode; /// ?????? BYTE byReserved[124]; /// ??????? } NET_COAXIAL_CONTROL_IO_INFO; /// ???IO????????? #define MAX_COAXIAL_CONTROL_IO_COUNT 8 ///@brief ???????IO????????, CLIENT_ControlDeviceEx ??? ??? DH_CTRL_COAXIAL_CONTROL_IO typedef struct tagNET_IN_CONTROL_COAXIAL_CONTROL_IO { DWORD dwSize; /// ??????? int nChannel; /// ????? int nInfoCount; /// ???IO??????? NET_COAXIAL_CONTROL_IO_INFO stInfo[MAX_COAXIAL_CONTROL_IO_COUNT]; /// ???IO??? } NET_IN_CONTROL_COAXIAL_CONTROL_IO; ///@brief ???????IO????????, CLIENT_ControlDeviceEx ???? ??? DH_CTRL_COAXIAL_CONTROL_IO typedef struct tagNET_OUT_CONTROL_COAXIAL_CONTROL_IO { DWORD dwSize; /// ??????? } NET_OUT_CONTROL_COAXIAL_CONTROL_IO; ////////////////////////////////////////////////////////////////////// ///@brief Low Rate Wireless Personal Area Network ????????????? end ////////////////////////////////////////////////////////////////////// ///@brief ??????????????(??? DH_DEVSTATE_ANALOGALARM_DATA ????) typedef struct tagNET_GET_ANALOGALARM_DATA { DWORD dwSize; int nChannelID; /// ?????????????????(??0???) NET_ANALOGALARM_SENSE_INFO stuInfo; /// ???????????????? }NET_GET_ANALOGALARM_DATA; ///@brief ????????????????????????? typedef enum tagEM_NET_SCADA_DEV_TYPE { EM_NET_SCADA_DEV_TYPE_UNKNOWN = 0, /// ??? EM_NET_SCADA_DEV_TYPE_ALL, /// ??????????? EM_NET_SCADA_DEV_TYPE_UPS, /// UPS } EM_NET_SCADA_DEV_TYPE; ///@brief ?????????????????????????????????????, ??????? typedef struct tagNET_IN_SCADA_POINT_LIST_INFO { DWORD dwSize; char szDevType[DH_COMMON_STRING_64]; /// ??????? }NET_IN_SCADA_POINT_LIST_INFO; #define MAX_SCADA_POINT_LIST_INDEX 8 /// ???SCADADev???????????, ???????? ///@brief ????????????? typedef struct tagNET_SCADA_POINT_LIST { DWORD dwSize; int nIndexValidNum; /// ????????????????? int nIndex[MAX_SCADA_POINT_LIST_INDEX];/// SCADADev?????????, ??0??? char szPath[DH_COMMON_STRING_256];/// ????????????? }NET_SCADA_POINT_LIST; #define MAX_SCADA_POINT_LIST_INFO_NUM 256 /// ???????????????? #define MAX_SCADA_POINT_LIST_ALARM_INFO_NUM 256 /// ???????????????? ///@brief ?????????????????????????????????????, ?????? typedef struct tagNET_OUT_SCADA_POINT_LIST_INFO { DWORD dwSize; int nList; /// ????????????????????? NET_SCADA_POINT_LIST stuList[MAX_SCADA_POINT_LIST_INFO_NUM];/// ????????????? }NET_OUT_SCADA_POINT_LIST_INFO; ///@brief ??????????????????????????, (??? DH_DEVSTATE_SCADA_POINT_LIST ????) typedef struct tagNET_SCADA_POINT_LIST_INFO { DWORD dwSize; NET_IN_SCADA_POINT_LIST_INFO stuIn; /// ??????? NET_OUT_SCADA_POINT_LIST_INFO stuOut; /// ?????? }NET_SCADA_POINT_LIST_INFO; ///@brief ???????? typedef enum tagEM_NET_SCADA_POINT_TYPE { EM_NET_SCADA_POINT_TYPE_UNKNOWN = 0, /// ??? EM_NET_SCADA_POINT_TYPE_ALL, /// ???????? EM_NET_SCADA_POINT_TYPE_YC, /// ??? ????????? EM_NET_SCADA_POINT_TYPE_YX, /// ??? ?????????? EM_NET_SCADA_POINT_TYPE_YT, /// ??? ???????? EM_NET_SCADA_POINT_TYPE_YK, /// ??? ????????? } EM_NET_SCADA_POINT_TYPE; ///@brief SCADA????????????? typedef struct tagNET_IN_SCADA_INFO { DWORD dwSize; EM_NET_SCADA_POINT_TYPE emPointType; /// ?????????????? }NET_IN_SCADA_INFO; #define MAX_SCADA_YX_NUM 128 /// ????????? #define MAX_SCADA_YC_NUM 128 /// ????????? #define MAX_SCADA_POINT_INFO_NUM 8 /// ????????? ///@brief ?????? typedef struct tagNET_SCADA_POINT_INFO { DWORD dwSize; char szDevName[DH_COMMON_STRING_64];/// ??????? int nYX; /// ?????????? unsigned int anYX[MAX_SCADA_YX_NUM]; /// ?????? int nYC; /// ?????????? float afYC[MAX_SCADA_YC_NUM]; /// ?????? }NET_SCADA_POINT_INFO; ///@brief SCADA???????????? typedef struct tagNET_OUT_SCADA_INFO { DWORD dwSize; int nPointInfoNum; /// ??????????? NET_SCADA_POINT_INFO stuPointInfo[MAX_SCADA_POINT_INFO_NUM];/// ?????? }NET_OUT_SCADA_INFO; ///@brief ??????????????????????????(??? DH_DEVSTATE_SCADA_INFO ????) typedef struct tagNET_SCADA_INFO { DWORD dwSize; NET_IN_SCADA_INFO stuIn; /// ??????? NET_OUT_SCADA_INFO stuOut; /// ?????? }NET_SCADA_INFO; ///@brief SCADA???????? typedef enum tagEM_NET_SCADA_CAPS_TYPE { EM_NET_SCADA_CAPS_TYPE_UNKNOWN, EM_NET_SCADA_CAPS_TYPE_ALL, /// ???????? EM_NET_SCADA_CAPS_TYPE_DEV, /// DevInfo } EM_NET_SCADA_CAPS_TYPE; ///@brief ?????????????????????????????? typedef struct tagNET_IN_SCADA_CAPS { DWORD dwSize; EM_NET_SCADA_CAPS_TYPE emType; /// ??????? } NET_IN_SCADA_CAPS; #define MAX_NET_SCADA_CAPS_TYPE (16) #define MAX_NET_SCADA_CAPS_NAME (16) ///@brief ??????????????????????????? typedef struct tagNET_OUT_SCADA_CAPS_ITEM { DWORD dwSize; char szDevType[DH_COMMON_STRING_32]; /// ??????? int nValidName; /// ?????????????? char szDevName[MAX_NET_SCADA_CAPS_NAME][DH_COMMON_STRING_32];/// ???????, ????????? } NET_OUT_SCADA_CAPS_ITEM; ///@brief ????????????????????????????? typedef struct tagNET_OUT_SCADA_CAPS { DWORD dwSize; int nValidType; /// ?????????????? NET_OUT_SCADA_CAPS_ITEM stuItems[MAX_NET_SCADA_CAPS_TYPE]; /// ???16?????? } NET_OUT_SCADA_CAPS; ///@brief ???????????????????????(??? DH_DEVSTATE_SCADA_CAPS ????) typedef struct tagNET_SCADA_CAPS { DWORD dwSize; NET_IN_SCADA_CAPS stuIn; /// ??????? NET_OUT_SCADA_CAPS stuOut; /// ?????? } NET_SCADA_CAPS; ///@brief ???????(?????????????????????) typedef struct tagNET_SCADA_POINT_BY_ID_INFO { DWORD dwSize; EM_NET_SCADA_POINT_TYPE emType; /// ???????? char szID[DH_COMMON_STRING_64]; /// ??????ID int nMeasuredVal; /// ?????????YX????? float fMeasureVal; /// ?????????YC????? int nSetupVal; /// ?????????YK????? float fSetupVal; /// ?????????YT????? int nStatus; /// ??????, -1:???, 0:????, 1:1?????, 2:2?????, 3:3?????, 4:4?????, 5:???????, 6:???????? NET_TIME stuTime; /// ?????? char szPointName[32]; /// ???????? }NET_SCADA_POINT_BY_ID_INFO; #define MAX_SCADA_ID_OF_SENSOR_NUM 128 /// ????????ID???? ///@brief ????????????????????(??? NET_SCADA_INFO_BY_ID) typedef struct tagNET_SCADA_INFO_BY_ID { DWORD dwSize; char szSensorID[DH_COMMON_STRING_64];/// ???????, ?????ID int nIDs; /// ???????, ????????ID???? char szIDs[MAX_SCADA_ID_OF_SENSOR_NUM][DH_COMMON_STRING_64];/// ???????, ????ID BOOL bIsHandle; /// ????????????????????????????????????????:"false"??????????"true"?????? int nMaxCount; /// ???????, pstuInfo?????????? int nRetCount; /// ???????, pstInfo??????????????, ?????????????????nMaxCount NET_SCADA_POINT_BY_ID_INFO* pstuInfo; /// ???????????, ??????????,?????sizeof(NET_SCADA_POINT_BY_ID_INFO)*nMaxCount }NET_SCADA_INFO_BY_ID; ///@brief ????????? typedef struct tagNET_SCADA_DEVICE_ID_INFO { char szDeviceID[DH_COMMON_STRING_64];/// ???id char szDevName[DH_COMMON_STRING_64]; /// ???????, ??CFG_SCADA_DEV_INFO????????szDevName??? char szDevCode[64]; /// ????????? int nSlot; /// ?????????????????????AlarmSlotBond????????????????0?????????????1??????????????????1???485????232??????????????????AlarmSlotBond???? int nLevel; /// ????????????????????????????????????????????????????? BYTE reserve[952]; }NET_SCADA_DEVICE_ID_INFO; ///@brief ??????????????????????ID typedef struct tagNET_SCADA_DEVICE_LIST { DWORD dwSize; int nMax; /// ?????????????? int nRet; /// ????????????????????? NET_SCADA_DEVICE_ID_INFO* pstuDeviceIDInfo; /// ?????????,??????????,?????sizeof(NET_SCADA_DEVICE_ID_INFO)*nMax }NET_SCADA_DEVICE_LIST; ///@brief ????????? typedef struct tagNET_SCADA_NOTIFY_POINT_INFO { DWORD dwSize; char szDevName[DH_COMMON_STRING_64]; /// ???????,??getInfo???????????? EM_NET_SCADA_POINT_TYPE emPointType; /// ???????? char szPointName[DH_COMMON_STRING_64]; /// ??????,?????????????? float fValue; /// Type?YC???????? int nValue; /// Type?YX?????? char szFSUID[DH_COMMON_STRING_64]; /// ????????ID(Field Unit), ????????? char szID[DH_COMMON_STRING_64]; /// ????ID char szSensorID[DH_COMMON_STRING_64]; /// ?????ID NET_TIME_EX stuCollectTime; /// ?????? } NET_SCADA_NOTIFY_POINT_INFO; ///@brief ????????????? typedef struct tagNET_SCADA_NOTIFY_POINT_INFO_LIST { DWORD dwSize; int nList; /// ????????????? NET_SCADA_NOTIFY_POINT_INFO stuList[MAX_SCADA_POINT_LIST_INFO_NUM]; /// ????????? } NET_SCADA_NOTIFY_POINT_INFO_LIST; ///@brief ?????????????????????? typedef void (CALLBACK *fSCADAAttachInfoCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_SCADA_NOTIFY_POINT_INFO_LIST *pInfo, int nBufLen, LDWORD dwUser); ///@brief CLIENT_SCADAAttachInfo()?????????? typedef struct tagNET_IN_SCADA_ATTACH_INFO { DWORD dwSize; fSCADAAttachInfoCallBack cbCallBack; /// ?????????? EM_NET_SCADA_POINT_TYPE emPointType; /// ???????? LDWORD dwUser; /// ?????????? } NET_IN_SCADA_ATTACH_INFO; ///@brief CLIENT_SCADAAttachInfo()?????????? typedef struct tagNET_OUT_SCADA_ATTACH_INFO { DWORD dwSize; } NET_OUT_SCADA_ATTACH_INFO; ////////////////////////////////////////////////////////////////////// #define MAX_SCADA_ID_NUM 1024 /// ??????id???????? ///@brief ?????????? typedef struct tagNET_SCADA_ID_THRESHOLD_INFO { DWORD dwSize; EM_NET_SCADA_POINT_TYPE emPointType; /// ???????? char szID[DH_COMMON_STRING_32]; /// ????ID float fThreshold; /// ??????? float fAbsoluteValue; /// ??????? float fRelativeValue; /// ?????? int nStatus; /// ??????, -1:???, 0:????, 1:1?????, 2:2?????, 3:3?????, 4:4?????, 5:???????, 6:???????? }NET_SCADA_ID_THRESHOLD_INFO; ///@brief CLIENT_SCADAGetThreshold??????? typedef struct tagNET_IN_SCADA_GET_THRESHOLD { DWORD dwSize; char szDeviceID[DH_COMMON_STRING_64]; /// ??????id int nIDs; /// ?????????????? char szIDs[MAX_SCADA_ID_NUM][DH_COMMON_STRING_32]; /// ????????????ID }NET_IN_SCADA_GET_THRESHOLD; ///@brief CLIENT_SCADAGetThreshold??????? typedef struct tagNET_OUT_SCADA_GET_THRESHOLD { DWORD dwSize; int nMax; /// ????????????????????? int nRet; /// ???????????????? NET_SCADA_ID_THRESHOLD_INFO* pstuThresholdInfo; /// ??????????, ??????????,?????sizeof(NET_SCADA_ID_THRESHOLD_INFO)*nMax }NET_OUT_SCADA_GET_THRESHOLD; ////////////////////////////////////////////////////////////////////// ///@brief CLIENT_SCADASetThreshold??????? typedef struct tagNET_IN_SCADA_SET_THRESHOLD { DWORD dwSize; char szDeviceID[DH_COMMON_STRING_64];/// ??????id int nMax; /// ????????????????????? NET_SCADA_ID_THRESHOLD_INFO* pstuThresholdInfo; /// ??????????, ??????????,?????sizeof(NET_SCADA_ID_THRESHOLD_INFO)*nMax }NET_IN_SCADA_SET_THRESHOLD; ///@brief CLIENT_SCADASetThreshold??????? typedef struct tagNET_OUT_SCADA_SET_THRESHOLD { DWORD dwSize; int nSuccess; /// ????????????????????id???? char szSuccessID[MAX_SCADA_ID_NUM][DH_COMMON_STRING_32]; /// ????????????id,?????????? int nFail; /// ?????????????????????id???? char szFailID[MAX_SCADA_ID_NUM][DH_COMMON_STRING_32]; /// ???????????id, ?????????? }NET_OUT_SCADA_SET_THRESHOLD; ////////////////////////////////////////////////////////////////////// ///@brief CLIENT_StartFindSCADA??????? typedef struct tagNET_IN_SCADA_START_FIND { DWORD dwSize; NET_TIME stuStartTime; /// ??????, ???? BOOL bEndTime; /// ?????????????, TRUE: ????stuEndTime, FLASE: ???????????? NET_TIME stuEndTime; /// ??????? char szDeviceID[DH_COMMON_STRING_64];/// DeviceID, ???? char szID[DH_COMMON_STRING_32]; /// ??????ID, ???? int nIDsNum; /// ????ID????A?? char szIDs[32][DH_COMMON_STRING_32]; /// ????ID??????SDT?????????????? }NET_IN_SCADA_START_FIND; ///@brief CLIENT_StartFindSCADA??????? typedef struct tagNET_OUT_SCADA_START_FIND { DWORD dwSize; DWORD dwTotalCount; /// ???????????????? }NET_OUT_SCADA_START_FIND; ///@brief CLIENT_DoFindSCADA??????? typedef struct tagNET_IN_SCADA_DO_FIND { DWORD dwSize; int nStartNo; /// ?????? int nCount; /// ???????????????? }NET_IN_SCADA_DO_FIND; ///@brief CLIENT_DoFindSCADA??????? typedef struct tagNET_OUT_SCADA_DO_FIND { DWORD dwSize; int nRetNum; /// ?????????????? NET_SCADA_POINT_BY_ID_INFO* pstuInfo; /// ??????, ??????????,?????sizeof(NET_SCADA_POINT_BY_ID_INFO)*nMaxNum int nMaxNum; /// ?????????????? }NET_OUT_SCADA_DO_FIND; ///@brief ????????????? typedef struct tagNET_SCADA_NOTIFY_POINT_ALARM_INFO { DWORD dwSize; char szDevID[DH_COMMON_STRING_16]; /// ???ID char szPointID[DH_COMMON_STRING_128]; /// ????ID BOOL bAlarmFlag; /// ??????? NET_TIME stuAlarmTime; /// ??????? int nAlarmLevel; /// ????????0~6?? int nSerialNo; /// ???????,???????????????????????????? char szAlarmDesc[DH_COMMON_STRING_128]; /// ???????? char szSignalName[64]; /// ???????? } NET_SCADA_NOTIFY_POINT_ALARM_INFO; ///@brief ????????????? typedef struct tagNET_SCADA_NOTIFY_POINT_ALARM_INFO_EX { float fEventValue; /// ???????????????????????? char szResvered[1020]; /// ??????? } NET_SCADA_NOTIFY_POINT_ALARM_INFO_EX; ///@brief ????????????????? typedef struct tagNET_SCADA_NOTIFY_POINT_ALARM_INFO_LIST { DWORD dwSize; int nList; /// ????????????????? NET_SCADA_NOTIFY_POINT_ALARM_INFO stuList[MAX_SCADA_POINT_LIST_ALARM_INFO_NUM]; /// ????????????? NET_SCADA_NOTIFY_POINT_ALARM_INFO_EX stuListEx[256]; /// ????????????? } NET_SCADA_NOTIFY_POINT_ALARM_INFO_LIST; ///@brief ?????????????????????? typedef void (CALLBACK *fSCADAAlarmAttachInfoCallBack)(LLONG lAttachHandle, NET_SCADA_NOTIFY_POINT_ALARM_INFO_LIST *pInfo, int nBufLen, LDWORD dwUser); ///@brief CLIENT_SCADAAlarmAttachInfo()?????????? typedef struct tagNET_IN_SCADA_ALARM_ATTACH_INFO { DWORD dwSize; fSCADAAlarmAttachInfoCallBack cbCallBack; /// ?????????? LDWORD dwUser; /// ?????????? } NET_IN_SCADA_ALARM_ATTACH_INFO; ///@brief CLIENT_SCADAAlarmAttachInfo()?????????? typedef struct tagNET_OUT_SCADA_ALARM_ATTACH_INFO { DWORD dwSize; } NET_OUT_SCADA_ALARM_ATTACH_INFO; ///@brief ????????????? typedef struct tagNET_SCADA_POINT_SET_INFO { DWORD dwSize; EM_NET_SCADA_POINT_TYPE emType; /// ??????????,?YK??YT???????? char szPointID[DH_COMMON_STRING_64]; /// ??????ID int nSetupVal; /// ?????????YK????? float fSetupVal; /// ?????????YT????? } NET_SCADA_POINT_SET_INFO; ///@brief ?????????????????,CLIENT_SetSCADAInfo()?????????? typedef struct tagNET_IN_SCADA_POINT_SET_INFO_LIST { DWORD dwSize; char szDevID[DH_COMMON_STRING_32]; /// ???ID int nPointNum; /// ??????? NET_SCADA_POINT_SET_INFO stuList[MAX_SCADA_ID_OF_SENSOR_NUM]; /// ??????????? } NET_IN_SCADA_POINT_SET_INFO_LIST; ///@brief ????????????????????,CLIENT_SetSCADAInfo()?????????? typedef struct tagNET_OUT_SCADA_POINT_SET_INFO_LIST { DWORD dwSize; int nSuccess; /// ?????????????????ID???? char szSuccessID[MAX_SCADA_ID_OF_SENSOR_NUM][DH_COMMON_STRING_32]; /// ????????????ID?????? int nFail; /// ?????????????????ID???? char szFailID[MAX_SCADA_ID_OF_SENSOR_NUM][DH_COMMON_STRING_32]; /// ????????????ID?????? } NET_OUT_SCADA_POINT_SET_INFO_LIST; ///@brief ????????????????(???DH_DEVSTATE_GET_ALARM_SUBSYSTEM_ACTIVATESTATUS????) typedef struct tagNET_GET_ALARM_SUBSYSTEM_ACTIVATE_STATUES { DWORD dwSize; int nChannelId; /// ?????? BOOL bActive; /// ??????????, TRUE ???????,FALSE????????? }NET_GET_ALARM_SUBSYSTEM_ACTIVATE_STATUES; ///@brief ????????????????????(???DH_CTRL_ALARM_SUBSYSTEM_ACTIVE_SET????) typedef struct tagNET_CTRL_ALARM_SUBSYSTEM_SETACTIVE { DWORD dwSize; int nChannelId; /// ?????? BOOL bActive; /// ??????????,TRUE ???????,FALSE????????? }NET_CTRL_ALARM_SUBSYSTEM_SETACTIVE; ///@brief ??????????(??? DH_CTRL_FORBID_OPEN_STROBE) typedef struct tagNET_CTRL_FORBID_OPEN_STROBE { DWORD dwSize; int nChannelID; /// ????? int nTime; /// ??????????????,????:s,?????????????????????????????? }NET_CTRL_FORBID_OPEN_STROBE; #define MAX_PLATENUMBER_LEN 64 /// ?????????? ///@brief ??????? typedef enum tagEM_OPEN_STROBE_TYPE { EM_OPEN_STROBE_TYPE_UNKNOWN, /// ??? EM_OPEN_STROBE_TYPE_NORMAL, /// ???????(???) EM_OPEN_STROBE_TYPE_TEST, /// ??????????????????????? EM_OPEN_STROBE_TYPE_MANUAL, /// ?????? }EM_OPEN_STROBE_TYPE; ///@brief ???????????(???DH_CTRL_OPEN_STROBE????) typedef struct tagNET_CTRL_OPEN_STROBE { DWORD dwSize; int nChannelId; /// ?????, nChannelId?-1??????????????, ??????????? char szPlateNumber[MAX_PLATENUMBER_LEN]; /// ??????? EM_OPEN_STROBE_TYPE emOpenType; /// ??????? int nLocation; /// ????????? char szCustomParkNo[32]; /// ?????t?????????????????t??????????t?????????????location }NET_CTRL_OPEN_STROBE; ///@brief ???????????????? /// nError = 0 ?????????; /// nError = 1 ?????????????; /// nError = 2 ??????, ?????????????????????? /// nError = 3 ??????????????????????; /// nError = 4 ????????????? typedef void (CALLBACK *fOpenStrobeCallBack)(LLONG lLoginID, NET_CTRL_OPEN_STROBE stuOpenStrobe, int nError, LDWORD dwUser); ///@brief ?????????????(???DH_CTRL_OPEN_STROBE????) typedef struct tagNET_CTRL_OPEN_STROBE_ASYN { DWORD dwSize; NET_CTRL_OPEN_STROBE stuOpenStrobe; /// ??????????? fOpenStrobeCallBack cbCallBack; /// ?????????? LDWORD dwUser; /// ?????????? int nWaitTime; /// ?????? } NET_CTRL_OPEN_STROBE_ASYN; ///@brief ?????????(???DH_CTRL_CLOSE_STROBE????) typedef struct tagNET_CTRL_CLOSE_STROBE { DWORD dwSize; int nChannelId; /// ????? int nLocation; /// ????????? }NET_CTRL_CLOSE_STROBE; ///@brief ?????????????(???DH_CTRL_FORCE_BREAKING????) typedef struct tagNET_CTRL_FORCE_BREAKING { DWORD dwSize; int nChannelId; /// ????? int nLaneMask; /// ?????????? DWORD dwBreakingType; /// ????????, ???dhnetsdk.h??"??????????????" BOOL bLastRecognized; /// ????????????????? }NET_CTRL_FORCE_BREAKING; ///@brief ?????????????(???DH_CTRL_TALKING_REFUSE????) typedef struct tagNET_CTRL_TALKING_REFUSE { DWORD dwSize; int nChannelID; /// ???????? }NET_CTRL_TALKING_REFUSE; ///@brief ????????????? typedef enum tagEM_REMOTETALK_CTRL_STATE { EM_REMOTETALK_CTRL_STATE_UNKNOWN = 0, /// ?????????? EM_REMOTETALK_CTRL_STATE_INVITE, /// ????????????? }EM_REMOTETALK_CTRL_STATE; ///@brief ???????????? typedef struct tagNET_CTRL_REMOTETALK_PARAM { DWORD dwSize; /// ????????? EM_REMOTETALK_CTRL_STATE emAction; /// ????????????????? }NET_CTRL_REMOTETALK_PARAM; ///@brief ????????? typedef enum tagEM_NET_ORDER_STATE { EM_NET_ORDER_STATE_UNKNOWN, EM_NET_ORDER_STATE_FREE, /// ????Free EM_NET_ORDER_STATE_ORDERED, /// ???Ordered }EM_NET_ORDER_STATE; ///@brief ???????????? typedef struct tagNET_ORDER_STATE_INFO { DWORD dwSize; unsigned int nLane; /// ?????? EM_NET_ORDER_STATE emOrderState; /// ?????? }NET_ORDER_STATE_INFO; ///@brief ?????????????????(???DH_CTRL_SET_ORDER_STATE????) typedef struct tagNET_CTRL_SET_ORDER_STATE { DWORD dwSize; NET_ORDER_STATE_INFO* pOrderStateInfo; /// ??????????,?????????,?????sizeof(NET_ORDER_STATE_INFO)*nStateCount unsigned int nStateCount; /// ??????????? }NET_CTRL_SET_ORDER_STATE; ///@brief ???????????????LED????????????????? typedef enum tagNET_ECK_LED_SPEED_TYPE { NET_ECK_LED_SPEED_UNKNOWN = 0, NET_ECK_LED_SPEED_LOW, /// ?? NET_ECK_LED_SPEED_NORMAL, /// ???? NET_ECK_LED_SPEED_HIGH, /// ?? }NET_ECK_LED_SPEED_TYPE; ///@brief ???????????????LED???? ????DH_CTRL_ECK_LED_SET typedef struct tagNET_CTRL_ECK_LED_SET_PARAM { DWORD dwSize; NET_ECK_LED_SPEED_TYPE emLEDSpeed; /// ?????????? int nCount; /// ???????????, ????0-255, 0??????? char szCustomData[DH_COMMON_STRING_512];/// LED?????????????????, 0-256??? }NET_CTRL_ECK_LED_SET_PARAM; ///@brief ?????????? typedef enum tagEM_SCREEN_TEXT_TYPE { EM_SCREEN_TEXT_TYPE_UNKNOWN = -1, /// ??? EM_SCREEN_TEXT_TYPE_ORDINARY, /// ??? EM_SCREEN_TEXT_TYPE_LOCAL_TIME, /// ??????? EM_SCREEN_TEXT_TYPE_QR_CODE, /// ????? EM_SCREEN_TEXT_TYPE_RESOURCE, /// ?????? }EM_SCREEN_TEXT_TYPE; ///@brief ????????? typedef enum tagEM_SCREEN_TEXT_COLOR { EM_SCREEN_TEXT_COLOR_UNKNOWN = -1, /// ??? EM_SCREEN_TEXT_COLOR_GREEN, /// ??? EM_SCREEN_TEXT_COLOR_RED, /// ??? EM_SCREEN_TEXT_COLOR_YELLOW, /// ??? EM_SCREEN_TEXT_COLOR_WHITE, /// ??? }EM_SCREEN_TEXT_COLOR; ///@brief ???????????? typedef enum tagEM_SCREEN_TEXT_ROLL_MODE { EM_SCREEN_TEXT_ROLL_MODE_UNKNOWN = -1, /// ??? EM_SCREEN_TEXT_ROLL_MODE_NO, /// ?????? EM_SCREEN_TEXT_ROLL_MODE_LEFT_RIGHT, /// ??????? EM_SCREEN_TEXT_ROLL_MODE_UP_DOWN, /// ??????????? EM_SCREEN_TEXT_ROLL_MODE_CUT_OUT, /// ???(????????????????) }EM_SCREEN_TEXT_ROLL_MODE; ///@brief ??????????? typedef enum tagEM_BROADCAST_TEXT_TYPE { EM_BROADCAST_TEXT_TYPE_UNKNOWN = -1, /// ??? EM_BROADCAST_TEXT_TYPE_ORDINARY, /// ??? EM_BROADCAST_TEXT_TYPE_PLATE_NUMBER, /// ????? EM_BROADCAST_TEXT_TYPE_TIME, /// ??? EM_BROADCAST_TEXT_TYPE_NUMBER_STRING, /// ????????? }EM_BROADCAST_TEXT_TYPE; ///@brief ?????? typedef struct tagNET_SCREEN_SHOW_INFO { UINT nScreenNo; /// ?????? char szText[256]; /// ??????(????????EM_SCREEN_TEXT_TYPE_LOCAL_TIME????????, /// %Y ?? /// %M ?? /// %D ?? /// %H ?(24???????) /// %h ?(12???) /// %m ?? /// %S ?? /// %W ???? /// %T ???????????? /// %X ???????????????? EM_SCREEN_TEXT_TYPE emTextType; /// ??????? EM_SCREEN_TEXT_COLOR emTextColor; /// ?????? EM_SCREEN_TEXT_ROLL_MODE emTextRollMode; /// ????????? UINT nRollSpeed; /// ????????????????????1~5 int nDisplayEffect; /// ???????, ??emTextRollMode?EM_SCREEN_TEXT_ROLL_MODE_NO/EM_SCREEN_TEXT_ROLL_MODE_LEFT_RIGHT?, ???0??????, 1??????, 2??????, 3??????; /// ??emTextRollMode?EM_SCREEN_TEXT_ROLL_MODE_UP_DOWN?, ???0?????, 1??????; /// ??emTextRollMode?EM_SCREEN_TEXT_ROLL_MODE_CUT_OUT?, ???0???????, 1??????, 2??????? BYTE byReserved[248]; /// ??????? }NET_SCREEN_SHOW_INFO; ///@brief ??????? typedef struct tagNET_BROADCAST_INFO { char szText[256]; /// ??????? EM_BROADCAST_TEXT_TYPE emTextType; /// ??????? BYTE byReserved[252]; /// ??????? }NET_BROADCAST_INFO; ///@brief ??????????????(?????????????????????) CLIENT_ControlDeviceEx???(??? DH_CTRL_SET_PARK_CONTROL_INFO ) typedef struct tagNET_IN_SET_PARK_CONTROL_INFO { DWORD dwSize; /// ??????? int nScreenShowInfoNum; /// ?????????? NET_SCREEN_SHOW_INFO stuScreenShowInfo[16]; /// ?????? BYTE byReserved[4]; /// ?????? int nBroadcastInfoNum; /// ??????????? NET_BROADCAST_INFO stuBroadcastInfo[16]; /// ??????? }NET_IN_SET_PARK_CONTROL_INFO; ///@brief ??????????????(?????????????????????) CLIENT_ControlDeviceEx????(??? DH_CTRL_SET_PARK_CONTROL_INFO) typedef struct tagNET_OUT_SET_PARK_CONTROL_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_PARK_CONTROL_INFO; ///@brief ???????????????????CLIENT_ControlDeviceEx???(??? DH_CTRL_CHANGE_SUSTAIN ) typedef struct tagNET_IN_CTRL_CHANGE_SUSTAIN { DWORD dwSize; /// ??????? int nSustain; /// ????????????? }NET_IN_CTRL_CHANGE_SUSTAIN; ///@brief ??????????????????? CLIENT_ControlDeviceEx????(??? DH_CTRL_CHANGE_SUSTAIN) typedef struct tagNET_OUT_CTRL_CHANGE_SUSTAIN { DWORD dwSize; /// ??????? }NET_OUT_CTRL_CHANGE_SUSTAIN; ///@brief ??????? typedef enum tagEM_DEVVIDEOINPUT_LIGHT_TYPE { EM_DEVVIDEOINPUT_LIGHTN_TYPE_UNKNOWN, /// ??? EM_DEVVIDEOINPUT_LIGHTN_TYPE_WHITELIGHT, /// ???? }EM_DEVVIDEOINPUT_LIGHT_TYPE; ///@brief ???????? typedef enum tagEM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE { EM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE_UNKNOWN, /// ??? EM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE_ON, /// ???? EM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE_OFF, /// ??? EM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE_FLICK, /// ??? }EM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE; ///@brief ??????CLIENT_ControlDeviceEx???(??? DH_CTRL_DEVVIDEOINPUT_LIGHT ) typedef struct tagNET_IN_CTRL_DEVVIDEOINPUT_LIGHT { DWORD dwSize; /// ??????? int nChannel; /// ????? EM_DEVVIDEOINPUT_LIGHT_TYPE emLightType; /// ??????? EM_DEVVIDEOINPUT_LIGHT_OPERATION_TYPE emOperateType; /// ???????? }NET_IN_CTRL_DEVVIDEOINPUT_LIGHT; ///@brief ?????? CLIENT_ControlDeviceEx????(??? DH_CTRL_DEVVIDEOINPUT_LIGHT) typedef struct tagNET_OUT_CTRL_DEVVIDEOINPUT_LIGHT { DWORD dwSize; /// ??????? }NET_OUT_CTRL_DEVVIDEOINPUT_LIGHT; ///@brief ????????? typedef struct tagNET_SNAP_TASK_REMOTE_STREAM { char szIP[64]; /// ???IP????????? UINT nPort; /// ???? char szUserName[64]; /// ????? char szPassword[64]; /// ???? char szProtocol[32]; /// ?????????. ?????????????: "Private", "RTSP", "Onvif" char szUrl[256]; /// URL???, Protocol?"RTSP"????? char szReserved[540]; /// ??????? } NET_SNAP_TASK_REMOTE_STREAM; ///@brief ????????? typedef struct tagNET_SNAP_TASK_SNAP_PARAM { UINT nWidth; /// ?????? UINT nHeight; /// ????? UINT nFormat; /// ?????, 0 : jpg, 1 : png char szReserved[244]; /// ??????? } NET_SNAP_TASK_SNAP_PARAM; ///@brief ???????? typedef struct tagNET_SNAP_TASK_INFO_LIST { char szCameraID[64]; /// ???ID, ?????????, ????????????? NET_SNAP_TASK_REMOTE_STREAM stuRemoteStream; /// ????????? NET_SNAP_TASK_SNAP_PARAM stuSnapParam; /// ????????? } NET_SNAP_TASK_INFO_LIST; ///@brief ?????????? CLIENT_ControlDeviceEx???(??? DH_CTRL_SNAP_TASK_ADD ) typedef struct tagNET_IN_CTRL_SNAP_TASK_ADD { DWORD dwSize; /// ??????? int nTaskNum; /// ??????? NET_SNAP_TASK_INFO_LIST *pstuInfoList; /// ????????, ????????????, ?????sizeof(NET_SNAP_TASK_INFO_LIST)*nTaskNum }NET_IN_CTRL_SNAP_TASK_ADD; ///@brief ?????????? CLIENT_ControlDeviceEx????(??? DH_CTRL_SNAP_TASK_ADD) typedef struct tagNET_OUT_CTRL_SNAP_TASK_ADD { DWORD dwSize; /// ??????? UINT nTaskId; /// ????ID?? }NET_OUT_CTRL_SNAP_TASK_ADD; #define NET_MAX_ECK_PANEL_NUM 12 /// ??????????????? ///@brief ???????????? typedef enum tagEM_NET_ECK_PANEL_TYPE { EM_NET_ECK_PANEL_TYPE_INTCHAR, /// ?????????????? EM_NET_ECK_PANEL_TYPE_IMAGE, /// ??? EM_NET_ECK_PANEL_TYPE_ARROWS, /// ??? }EM_NET_ECK_PANEL_TYPE; ///@brief ????? typedef enum tagEM_NET_ECK_PANEL_ISBOLD { EM_NET_ECK_PANEL_ISBOLD_FALSE, /// ????? EM_NET_ECK_PANEL_ISBOLD_TRUE, /// ??? }EM_NET_ECK_PANEL_ISBOLD; ///@brief ?????? typedef enum tagEM_NET_ECK_PANEL_COLOR { EM_NET_ECK_PANEL_COLOR_UNKNOWN, /// ??? EM_NET_ECK_PANEL_COLOR_RED, /// ??? EM_NET_ECK_PANEL_COLOR_GREEN, /// ??? EM_NET_ECK_PANEL_COLOR_YELLOW, /// ??? }EM_NET_ECK_PANEL_COLOR; ///@brief ??????????? typedef enum tagEM_NET_ECK_PANEL_DIRECTION { EM_NET_ECK_PANEL_DIRECTION_UNKNOWN, /// ??? EM_NET_ECK_PANEL_DIRECTION_LEFT, /// ?? EM_NET_ECK_PANEL_DIRECTION_UP, /// ?? EM_NET_ECK_PANEL_DIRECTION_RIGHT, /// ?? }EM_NET_ECK_PANEL_DIRECTION; ///@brief ??? typedef enum tagEM_NET_ECK_PANEL_ICON { EM_NET_ECK_PANEL_ICON_UNKNOWN, /// ??? EM_NET_ECK_PANEL_ICON_CLOSE, /// ??? EM_NET_ECK_PANEL_ICON_CLOSECUSTOM, /// ??? EM_NET_ECK_PANEL_ICON_NOT_CLOSECUSTOM, /// ???? }EM_NET_ECK_PANEL_ICON; ///@brief ??????? typedef struct tagNET_ECK_PANEL_CONTENT { EM_NET_ECK_PANEL_TYPE emType; /// ????????????,??? EM_NET_ECK_PANEL_ISBOLD emBold; /// ????????? EM_NET_ECK_PANEL_COLOR emColor; /// ??????????? EM_NET_ECK_PANEL_DIRECTION emDirection; /// ???????????,???,Type?2????? EM_NET_ECK_PANEL_ICON emIcon; /// ???????????????Type?1????? WORD nText; /// ???,?????????????,??Unicode????,??????:????????????????????????????Type?0????? char szReserved[2]; /// ?????? BOOL bUserIcon; /// ??????szIcon??????? char szIcon[16]; /// ????????? Type?1????? BYTE byReserved[1000]; /// ??????? }NET_ECK_PANEL_CONTENT; ///@brief ????????????????(DH_CTRL_ECK_GUIDINGPANEL_CONTENT) typedef struct tagNET_CTRL_ECK_GUIDINGPANEL_CONTENT { DWORD dwSize; /// ??????? int nPanelNum; /// ??????????? NET_ECK_PANEL_CONTENT stuContentInfo[NET_MAX_ECK_PANEL_NUM];/// ??????? }NET_CTRL_ECK_GUIDINGPANEL_CONTENT; ///@brief ???????????????IC????????? typedef enum tagNET_ECK_IC_CARD_USER_TYPE { NET_ECK_IC_CARD_USER_UNKNOWN, NET_ECK_IC_CARD_USER_ALL, /// ??????? NET_ECK_IC_CARD_USER_TEMP, /// ?????? NET_ECK_IC_CARD_USER_LONG, /// ??????? NET_ECK_IC_CARD_USER_ADMIN, /// ????? NET_ECK_IC_CARD_USER_BLACK_LIST, /// ??????? }NET_ECK_IC_CARD_USER_TYPE; ///@brief ???????????????????????????? typedef enum tagNET_ECK_CAR_PASS_FLAG { NET_ECK_CAR_PASS_FLAG_NORMAL = 0, /// ???? NET_ECK_CAR_PASS_FLAG_ABNORMAL = 1, /// ?? NET_ECK_CAR_PASS_FLAG_ALL, /// ??? } NET_ECK_CAR_PASS_FLAG; ///@brief ???????????????IC????? typedef struct tagNET_ECK_IC_CARD { DWORD dwSize; DWORD dwCard; /// ???? NET_ECK_IC_CARD_USER_TYPE emUserType; /// ??????? }NET_ECK_IC_CARD; #define NET_MAX_ECK_IC_CARD_IMPORT_NUM 50 /// ??????????????????????IC??????? ///@brief ???????????????IC????????? ????DH_CTRL_ECK_IC_CARD_IMPORT typedef struct tagNET_CTRL_ECK_IC_CARD_IMPORT_PARAM { DWORD dwSize; int nCardNum; /// IC?????? NET_ECK_IC_CARD stuCardInfo[NET_MAX_ECK_IC_CARD_IMPORT_NUM];/// IC????? }NET_CTRL_ECK_IC_CARD_IMPORT_PARAM; ///@brief ???????????????IC??????????? ???? DH_CTRL_ECK_SYNC_IC_CARD typedef struct tagNET_CTRL_ECK_SYNC_IC_CARD_PARAM { DWORD dwSize; int nCount; /// ?????IC??????????? }NET_CTRL_ECK_SYNC_IC_CARD_PARAM; #define ECK_SCREEN_NUM_MAX (8) /// ???????????????????????? ///@brief ?????????????????????????? ???? DH_CTRL_ECK_SET_PARK_INFO typedef struct tagNET_CTRL_ECK_SET_PARK_INFO_PARAM { DWORD dwSize; int nScreenNum; /// ??????, ?????? ECK_SCREEN_NUM_MAX int nScreenIndex[ECK_SCREEN_NUM_MAX]; /// ????, ????????????? int nFreeParkNum[ECK_SCREEN_NUM_MAX]; /// ??????????????????? /// ???????????nScreenIndex???,??????????????????????? }NET_CTRL_ECK_SET_PARK_INFO_PARAM; ///@brief ??????(???DH_CTRL_CAPTURE_FINGER_PRINT????) typedef struct tagNET_CTRL_CAPTURE_FINGER_PRINT { DWORD dwSize; int nChannelID; /// ??????(??0???) char szReaderID[DH_COMMON_STRING_32]; /// ??????ID char szUserID[12]; /// ???ID????????????????? }NET_CTRL_CAPTURE_FINGER_PRINT; ///@brief ??????????????? typedef enum tagEM_ACCESS_PASSWORD_TYPE { EM_ACCESS_PASSWORD_OPENDOOR=1, /// ???????? EM_ACCESS_PASSWORD_ALARM, /// ???????????? }EM_ACCESS_PASSWORD_TYPE; ///@brief ???????-????????(???CLIENT_ControlDevice???? DH_CTRL_ACCESS_RESET_PASSWORD ????) typedef struct tagNET_CTRL_ACCESS_RESET_PASSWORD { DWORD dwSize; /// ??????? int nChannelID; /// ??????(??0???) EM_ACCESS_PASSWORD_TYPE emType; /// ???????? char szUserID[MAX_COMMON_STRING_32]; /// ???ID char szNewPassword[MAX_COMMON_STRING_32]; /// ?????? }NET_CTRL_ACCESS_RESET_PASSWORD; ///@brief ???????????? typedef enum tagEM_CALLLIFT_CMD { EM_CALLLIFT_CMD_UNKNOWN =-1, /// ??? EM_CALLLIFT_CMD_ANY_FLOOR = 0, /// ?????????????????????????????????? EM_CALLLIFT_CMD_DEST_FLOOR, /// ????????????????????????????????? EM_CALLLIFT_CMD_CARD_UP, /// ????????????????????????????????????, ?????????? EM_CALLLIFT_CMD_AUTO_FLOOR, /// ???????????????,?????????????????????????????????? EM_CALLLIFT_CMD_CARD_DOWN, /// ????????????????????????????????????, ?????????? }EM_CALLLIFT_CMD; ///@brief ?????????? typedef enum tagEM_CALLLIFT_ACTION { EM_CALLLIFT_ACTION_UNKNOWN =-1, /// ??? EM_CALLLIFT_ACTION_USER_UNLOCK_CALL = 0, /// ??????????????????????????????????????? EM_CALLLIFT_ACTION_USER_DIRECT_CALL, /// ?????????????????????? EM_CALLLIFT_ACTION_USER_REDIRECT_CALL, /// ???????????????????? EM_CALLLIFT_ACTION_DIRECT_UNLOCK_CALL, /// ??????????????????????????? }EM_CALLLIFT_ACTION; ///@brief ???????-????(???CLIENT_ControlDevice???? DH_CTRL_ACCESS_CALL_LIFT ????) typedef struct tagNET_CTRL_ACCESS_CALL_LIFT { DWORD dwSize; int nChannelID; /// ????? char szSrcFloor[MAX_COMMON_STRING_16]; /// ??????(???+?????) char szDestFloor[MAX_COMMON_STRING_16]; /// ?????(???+?????) EM_CALLLIFT_CMD emCallLiftCmd; /// ???????????? EM_CALLLIFT_ACTION emCallLiftAction; /// ??????????? char szUserID[16]; /// ???ID int nCallLiftCount; /// ??????????? int nCallLiftNo[16]; /// ????????? EM_LIFT_CALLER_TYPE emLiftCaller; /// ???????? }NET_CTRL_ACCESS_CALL_LIFT; ///@brief ??????????(???CLIENT_ControlDevice???? DH_CTRL_ADJUST_BRIGHT ????) typedef struct tagNET_CTRL_ADJUST_BRIGHT { DWORD dwSize; /// ??????? int nLevel; /// ????????? } NET_CTRL_ADJUST_BRIGHT; ///@brief ??????(?????????????, ???CLIENT_ControlDevice???? DH_CTRL_CLEARLOG_EX ????) typedef struct tagNET_CTRL_CLEARLOG_EX { DWORD dwSize; /// ??????? } NET_CTRL_CLEARLOG_EX; ///@brief ?????????(??? DH_CTRL_VTP_DISCONNECT ????) typedef struct tagNET_CTRL_VTP_DISCONNECT { DWORD dwSize; const char* szTargetID; /// ??????????ID, ?NULL???????? EM_NET_VTP_CALL_TYPE emCallType; /// ???????? char szCallID[DH_COMMON_STRING_128]; /// ????????? }NET_CTRL_VTP_DISCONNECT; ///@brief ??????????? typedef enum tagNET_EM_VTP_ACK { NET_EM_VTP_OK, /// ???????????,??????? NET_EM_VTP_BUSY, /// ??????,?????? }NET_EM_VTP_ACK; ///@brief ?????????? typedef struct tagNET_CTRL_VTP_DIVERTACK { DWORD dwSize; EM_NET_VTP_CALL_TYPE emCallType; /// ?????????????? const char* szCallID; /// ???????????? NET_EM_VTP_ACK emAck; /// ????????????????? }NET_CTRL_VTP_DIVERTACK; ///@brief ????????????????? typedef enum tagNET_EM_SPEAK_FILE_ACTION { NET_EM_SPEAK_FILE_ACTION_UPDATE = 0, /// ?????????? NET_EM_SPEAK_FILE_ACTION_ADD, /// ??????? NET_EM_SPEAK_FILE_ACTION_DEL, /// ?????? }NET_EM_SPEAK_FILE_ACTION; ///@brief ??????????????????? typedef struct tagNET_SPEAK_FILE_INFO { DWORD dwSize; char szFilePath[MAX_PATH]; /// ???????, ???????CFG_CMD_NASEX????????? NET_EM_SPEAK_FILE_ACTION emAction; /// ????????, ????szFilePath????????????? BOOL bSave; /// ????????????????????? }NET_SPEAK_FILE_INFO; #define MAX_SPEAK_FILE_NUM 32 /// ???????????????????? ///@brief ????????????????? typedef struct tagNET_CTRL_UPDATE_FILES { DWORD dwSize; DWORD dwFileNum; /// ????????????? NET_SPEAK_FILE_INFO stuFileInfo[MAX_SPEAK_FILE_NUM];/// ??????????? }NET_CTRL_UPDATE_FILES; ///@brief ????????????? typedef enum tagEM_SPEAK_AUDIO_TYPE { EM_SPEAK_AUDIO_TYPE_UNKNOWN = 0, /// ??? EM_SPEAK_AUDIO_TYPE_PCM, /// PCM EM_SPEAK_AUDIO_TYPE_ADPCM, /// ADPCM EM_SPEAK_AUDIO_TYPE_G711A, /// G711A EM_SPEAK_AUDIO_TYPE_G711Mu, /// G711Mu EM_SPEAK_AUDIO_TYPE_G726, /// G726 EM_SPEAK_AUDIO_TYPE_G729, /// G729 EM_SPEAK_AUDIO_TYPE_MPEG2, /// MPEG2 EM_SPEAK_AUDIO_TYPE_AMR, /// AMR EM_SPEAK_AUDIO_TYPE_AAC, /// AAC }EM_SPEAK_AUDIO_TYPE; ///@brief ?????? typedef struct tagNET_SPEAK_AUDIO_FORMAT { EM_SPEAK_AUDIO_TYPE emFormat; /// ????????? BYTE byReserved[1020]; /// ??? }NET_SPEAK_AUDIO_FORMAT; ///@brief ?????????? typedef struct tagNET_SPEAK_AUDIO_PLAY_PATH { char szPath[256]; /// ??????? BOOL bSupportUpload; /// ????????? int nMaxFileUploadNum; /// ????????????? int nMaxUploadFileSize; /// ???????????????????????? BYTE byReserved[756]; /// ??? }NET_SPEAK_AUDIO_PLAY_PATH; ///@brief ?????????????????? typedef struct tagNET_SPEAK_CAPS { NET_SPEAK_AUDIO_FORMAT stuAudioFormats[32]; /// ?????? int nAudioFormatNum; /// ?????????? int nAudioPlayPathNum; /// ?????????????? NET_SPEAK_AUDIO_PLAY_PATH stuAudioPlayPaths[8]; /// ?????????? BYTE byReserved[1024]; /// ??? }NET_SPEAK_CAPS; ///@brief CLIENT_GetDevCaps NET_REMOTE_SPEAK_CAPS ??? typedef struct tagNET_IN_REMOTE_SPEAK_CAPS { DWORD dwSize; /// ??????? int nChannelNum; /// ????? int nChannels[128]; /// ??????? }NET_IN_REMOTE_SPEAK_CAPS; ///@brief CLIENT_GetDevCaps NET_REMOTE_SPEAK_CAPS ???? typedef struct tagNET_OUT_REMOTE_SPEAK_CAPS { DWORD dwSize; /// ??????? int nRetCapNum; /// ????????????????? NET_SPEAK_CAPS* pstuCaps; /// ?????? void* pReserved; /// ?????? int nMaxCapNum; /// ???????????????????????? }NET_OUT_REMOTE_SPEAK_CAPS; ///@brief Wifi ?????? typedef enum tagEM_WIFI_CAPS_TYPE { EM_CAPS_TYPE_UNKNOWN, /// Unknown EM_CAPS_TYPE_CLIENT, /// Client EM_CAPS_TYPE_AP, /// Ap EM_CAPS_TYPE_WPS, /// Wps } EM_WIFI_CAPS_TYPE; ///@brief CLIENT_GetDevCaps NET_WLAN_CAPS ??? typedef struct tagNET_IN_WLAN_CAPS_INFO { DWORD dwSize; /// ??????? } NET_IN_WLAN_CAPS_INFO; ///@brief CLIENT_GetDevCaps NET_WLAN_CAPS ???? typedef struct tagNET_OUT_WLAN_CAPS_INFO { DWORD dwSize; /// ??????? BOOL bIgnoreNetCardToConn; /// ??????????????????????????TRUE:?????? FALSE:????? ????????CLIENT_SetWlanConfigInfo ??? EM_WIFI_CAPS_TYPE emWifiCaps[8]; /// Wifi???? int nRetWifiCapsNum; /// ???????Wifi???????? } NET_OUT_WLAN_CAPS_INFO; ///@brief CLIENT_GetDevCaps NET_LOG_ONLINE_BACKUP_CAPS ??? typedef struct tagNET_IN_LOG_ONLINE_BACKUP_CAPS_INFO { DWORD dwSize; /// ??????? }NET_IN_LOG_ONLINE_BACKUP_CAPS_INFO; ///@brief CLIENT_GetDevCaps NET_LOG_ONLINE_BACKUP_CAPS ???? typedef struct tagNET_OUT_LOG_ONLINE_BACKUP_CAPS_INFO { DWORD dwSize; /// ??????? BOOL bSupportLogOnlineBackUp; /// ???????????????? }NET_OUT_LOG_ONLINE_BACKUP_CAPS_INFO; ///@brief CLIENT_GetDevCaps NET_RECEIPT_EVENT_CAPS ??? typedef struct tagNET_IN_RECEIPT_EVENT_CAPS_INFO { DWORD dwSize; /// ??????? }NET_IN_RECEIPT_EVENT_CAPS_INFO; ///@brief CLIENT_GetDevCaps NET_RECEIPT_EVENT_CAPS ???? typedef struct tagNET_OUT_RECEIPT_EVENT_CAPS_INFO { DWORD dwSize; /// ??????? BOOL bSupportReceiptEx; /// ??????????????????????????? /// TRUE ????????? CLIENT_ReceiptEvent ?????? }NET_OUT_RECEIPT_EVENT_CAPS_INFO; ///@brief WLAN?????? typedef enum tagEM_WLAN_ENCRYPTION_TYPE { EM_ENCRYPTION_TYPE_UNKNOWN, /// ??? EM_ENCRYPTION_TYPE_AUTO, /// Auto } EM_WLAN_ENCRYPTION_TYPE; ///@brief ????WLAN???????, CLIENT_SetWlanConfigInfo ??? typedef struct tagNET_IN_WLAN_CONFIG_INFO { DWORD dwSize; /// ??????? char szBSSID[18]; /// ????MAC??? BYTE byReserved[2]; /// ?????? char szSSID[32]; /// ???????? int nChannel; /// ??? int nKeyID; /// ???WEP?????????????????????????????????? EM_WLAN_ENCRYPTION_TYPE emEncryption; /// ?????? char szKeys[4][128]; /// WEP???????? /// ?????ASCII?????????64?????????5??????????????128????????13??????????????0-9??a-z??A-Z?? /// ??????16?????????64?????????10??????????????128????????26??????????????0-9??A-F?? } NET_IN_WLAN_CONFIG_INFO; ///@brief ????WLAN???????, CLIENT_SetWlanConfigInfo ???? typedef struct tagNET_OUT_WLAN_CONFIG_INFO { DWORD dwSize; /// ??????? } NET_OUT_WLAN_CONFIG_INFO; ///@brief ???????????,????????????????????(??????? DH_CTRL_RAINBRUSH_MOVEONCE) typedef struct tagNET_CTRL_RAINBRUSH_MOVEONCE { DWORD dwSize; int nChannel; /// ???????????? }NET_CTRL_RAINBRUSH_MOVEONCE; ///@brief ???????????,????????????????????(??????? DH_CTRL_RAINBRUSH_MOVECONTINUOUSLY) typedef struct tagNET_CTRL_RAINBRUSH_MOVECONTINUOUSLY { DWORD dwSize; int nChannel; /// ???????????? unsigned int nInterval; /// ?????? }NET_CTRL_RAINBRUSH_MOVECONTINUOUSLY; ///@brief ??????,????????????????????(??????? DH_CTRL_RAINBRUSH_STOPMOVE) typedef struct tagNET_CTRL_RAINBRUSH_STOPMOVE { DWORD dwSize; int nChannel; /// ???????????? }NET_CTRL_RAINBRUSH_STOPMOVE; ///@brief ??????????(??? DH_CTRL_ALARM_ACK ????) typedef struct tagNET_CTRL_ALARM_ACK { DWORD dwSize; int nEventID; /// ??????,???????????????? }NET_CTRL_ALARM_ACK; ///@brief ????????????? typedef enum tagNET_EM_VTP_INVITEACK_TYPE { NET_EM_VTP_INVITEACK_TYPE_UNKNOWN = 0, /// ??? NET_EM_VTP_INVITEACK_TYPE_BUSY /// ????? }NET_EM_VTP_INVITEACK_TYPE; ///@brief ????????? typedef struct tagNET_CTRL_VTP_INVITEACK { DWORD dwSize; int nChnId; /// ?????,???????????? NET_EM_VTP_INVITEACK_TYPE emAck; /// ????????Invite????????????????????? }NET_CTRL_VTP_INVITEACK; ///@brief ???????? typedef enum tagEM_VIDEOTALK_ACTION { EM_VIDEOTALK_ACTION_INVITE, /// ???? EM_VIDEOTALK_ACTION_HANGUP, /// ??? EM_VIDEOTALK_ACTION_ANSWER, /// ???? EM_VIDEOTALK_ACTION_REFUSE, /// ??? }EM_VIDEOTALK_ACTION; ///@brief CLIENT_RemoteTalkControl ??? typedef struct tagNET_IN_REMOTE_TALK_CONTROL { DWORD dwSize; int nChnId; /// ?????,???????????? EM_VIDEOTALK_ACTION emAction; /// ???? char byReserved[4]; /// ?????????? char szCallID[32]; /// ????ID }NET_IN_REMOTE_TALK_CONTROL; ///@brief CLIENT_RemoteTalkControl ???? typedef struct tagNET_OUT_REMOTE_TALK_CONTROL { DWORD dwSize; }NET_OUT_REMOTE_TALK_CONTROL; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ControlRemoteTalk(LLONG lLoginID, const NET_IN_REMOTE_TALK_CONTROL* pstInParam, NET_OUT_REMOTE_TALK_CONTROL* pstOutParam, int nWaitTime); ///@brief CLIENT_GetVideoTalkPeerDeviceState ??? typedef struct tagNET_IN_GET_VIDEO_TALK_PEER_DEVICE_STATE { DWORD dwSize; int nChnId; /// ?????,???????????? char szCallID[32]; /// ???????????NULL?(?????"")?????????????????????? }NET_IN_GET_VIDEO_TALK_PEER_DEVICE_STATE; ///@brief ?????? typedef enum tagEM_VIDEOTALK_STATE { EM_VIDEOTALK_STATE_UNKNOWN, /// ??? EM_VIDEOTALK_STATE_ONLINE, /// ???? EM_VIDEOTALK_STATE_OFFLINE, /// ???? }EM_VIDEOTALK_STATE; ///@brief ????????? typedef struct tagNET_VIDEO_TALK_PEER_DEVICE_STATE { EM_VIDEOTALK_STATE emState; /// ?????? char szID[32]; /// ???????? char szIpAddr[32]; /// ????IP??? UINT nPort; /// ????? char szReserved[128]; /// ??????? }NET_VIDEO_TALK_PEER_DEVICE_STATE; ///@brief CLIENT_GetVideoTalkPeerDeviceState ???? typedef struct tagNET_OUT_GET_VIDEO_TALK_PEER_DEVICE_STATE { DWORD dwSize; int nDeviceStateNodeNum; /// ?????????????? NET_VIDEO_TALK_PEER_DEVICE_STATE stuDeviceStateNode[200]; /// ????????? }NET_OUT_GET_VIDEO_TALK_PEER_DEVICE_STATE; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoTalkPeerDeviceState(LLONG lLoginID, const NET_IN_GET_VIDEO_TALK_PEER_DEVICE_STATE* pstInParam, NET_OUT_GET_VIDEO_TALK_PEER_DEVICE_STATE* pstOutParam, int nWaitTime); ///@brief ??????? typedef enum tagEM_MONITOR_TYPE { EM_MONITOR_TYPE_UNKNOWN = -1, /// ??? EM_MONITOR_TYPE_VTO, /// ??????? EM_MONITOR_TYPE_IPC, /// ???IPC }EM_MONITOR_TYPE; ///@brief CLIENT_StartVTHMonitor ??? typedef struct tagNET_IN_START_VTH_MONITOR { DWORD dwSize; UINT nIndex; /// VTO????IPC??????????????????? EM_MONITOR_TYPE emType; /// ??????? char byReserved[4]; /// ?????????? }NET_IN_START_VTH_MONITOR; ///@brief CLIENT_StartVTHMonitor ???? typedef struct tagNET_OUT_START_VTH_MONITOR { DWORD dwSize; }NET_OUT_START_VTH_MONITOR; ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartVTHMonitor(LLONG lLoginID, const NET_IN_START_VTH_MONITOR* pstInParam, NET_OUT_START_VTH_MONITOR* pstOutParam, int nWaitTime); ///@brief CLIENT_StopVTHMonitor ??? typedef struct tagNET_IN_STOP_VTH_MONITOR { DWORD dwSize; UINT nIndex; /// VTO????IPC??????????????????? EM_MONITOR_TYPE emType; /// ??????? char byReserved[4]; /// ?????????? }NET_IN_STOP_VTH_MONITOR; ///@brief CLIENT_StopVTHMonitor ???? typedef struct tagNET_OUT_STOP_VTH_MONITOR { DWORD dwSize; }NET_OUT_STOP_VTH_MONITOR; ///@brief ????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopVTHMonitor(LLONG lLoginID, const NET_IN_STOP_VTH_MONITOR* pstInParam, NET_OUT_STOP_VTH_MONITOR* pstOutParam, int nWaitTime); ///@brief CLIENT_StartRemoteSpeakPlay ?????????? typedef struct tagNET_IN_START_REMOTE_SPEAK_PLAY { DWORD dwSize; /// ??????? UINT nChannel; /// ????????? char szPath[256]; /// ?????????? }NET_IN_START_REMOTE_SPEAK_PLAY; ///@brief ????????? typedef enum tagEM_REMOTE_SPEAK_PLAY_STATE { EM_REMOTE_SPEAK_PLAY_STATE_UNKNOWN, /// ??? EM_REMOTE_SPEAK_PLAY_STATE_OK, /// ?????????? EM_REMOTE_SPEAK_PLAY_STATE_BUSY, /// ?????????????? EM_REMOTE_SPEAK_PLAY_STATE_ERROR, /// ??????????? EM_REMOTE_SPEAK_PLAY_STATE_FTP_NOT_VALID, /// ???Ftp???????NAS?? } EM_REMOTE_SPEAK_PLAY_STATE; ///@brief CLIENT_StartRemoteSpeakPlay ?????????? typedef struct tagNET_OUT_START_REMOTE_SPEAK_PLAY { DWORD dwSize; /// ??????? EM_REMOTE_SPEAK_PLAY_STATE emStatus; /// ????????? }NET_OUT_START_REMOTE_SPEAK_PLAY; ///@brief ?????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartRemoteSpeakPlay(LLONG lLoginID, const NET_IN_START_REMOTE_SPEAK_PLAY *pstuInParam, NET_OUT_START_REMOTE_SPEAK_PLAY *pstuOutParam, int nWaitTime); ///@brief CLIENT_StopRemoteSpeakPlay ?????????? typedef struct tagNET_IN_STOP_REMOTE_SPEAK_PLAY { DWORD dwSize; /// ??????? UINT nChannel; /// ????????? }NET_IN_STOP_REMOTE_SPEAK_PLAY; ///@brief CLIENT_StopRemoteSpeakPlay ?????????? typedef struct tagNET_OUT_STOP_REMOTE_SPEAK_PLAY { DWORD dwSize; /// ??????? }NET_OUT_STOP_REMOTE_SPEAK_PLAY; ///@brief ????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopRemoteSpeakPlay(LLONG lLoginID, const NET_IN_STOP_REMOTE_SPEAK_PLAY *pstuInParam, NET_OUT_STOP_REMOTE_SPEAK_PLAY *pstuOutParam, int nWaitTime); ////////////////////////////????????////////////////////////////////////////// ///@brief ?????? typedef struct __NET_PARTITION_STATE { DWORD dwSize; int nStatus; /// ??????,0-????,1-???? double dbTotalSize; /// ??????????,???????? double dbRemainSize; /// ???????,???????? }NET_PARTITION_STATE; ///@brief ????? typedef struct __NET_HDD_STATE { DWORD dwSize; int nState; /// ?????,0-????,1-????,2-????? double dbTotalSize; /// ?????????,???????? NET_PARTITION_STATE stuPartitions[DH_MAX_STORAGE_PARTITION_NUM]; /// ?????? int nPartitionNum; /// ?????? }NET_HDD_STATE; ///@brief ????? typedef struct __NET_CHANNLE_STATE { DWORD dwSize; BYTE byRecState; /// ?????,1-???,0-??? BYTE byVideoInState; /// ?????????,0-?????,1-?????????,2-??????,3-IPC???????? BYTE byReserved[2]; /// ?????? }NET_CHANNLE_STATE; ///@brief PAD/DVR?????? typedef enum tagNET_PAD_CONNECT_STATE { NET_PAD_CONNECT_STATE_UNKNOWN, /// ??? NET_PAD_CONNECT_STATE_UNCONNECTED, /// ?????? NET_PAD_CONNECT_STATE_CONNECTED, /// ???? } NET_PAD_CONNECT_STATE; ///@brief Home???? typedef enum tagNET_HOME_STATE { NET_HOME_STATE_UNKNOWN, /// ??? NET_HOME_STATE_UNPRESSED, /// ?????? NET_HOME_STATE_PRESSED, /// ???? } NET_HOME_STATE; ///@brief ?????????? typedef enum tagEM_EMERGENCYSTATUS_TYPE { EM_EMERGENCYSTATUS_UNKNOWN = -1, /// ??? EM_EMERGENCYSTATUS_CLOSE, /// ??? EM_EMERGENCYSTATUS_OPEN, /// ???? }EM_EMERGENCYSTATUS_TYPE; ///@brief ??????? typedef enum tagEM_TAMPERALTERSTATUS_TYPE { EM_TAMPERALTERSTATUS_UNKNOWN = -1, /// ??? EM_TAMPERALTERSTATUS_CLOSE, /// ??? EM_TAMPERALTERSTATUS_OPEN, /// ???? }EM_TAMPERALTERSTATUS_TYPE; ///@brief GPS ????????? typedef enum tagEM_GPS_SIGNAL_STRENGTH_TYPE { EM_GPS_SIGNAL_STRENGTH_UNKNWON = -1, /// ??? EM_GPS_SIGNAL_STRENGTH_WEAK, /// ?? EM_GPS_SIGNAL_STRENGTH_MIDDLE, /// ?? EM_GPS_SIGNAL_STRENGTH_STRONG, /// ? } EM_GPS_SIGNAL_STRENGTH_TYPE; ///@brief ??????????? typedef enum tagEM_SELFCHECK_DATA_TYPE { EM_SELFCHECK_DATA_TYPE_UNKNOWN, /// ??? EM_SELFCHECK_DATA_TYPE_REALTIME, /// ?????? EM_SELFCHECK_DATA_TYPE_HISTORY, /// ??????? ??????? }EM_SELFCHECK_DATA_TYPE; ///@brief ????????? typedef struct __NET_SELFCHECK_INFO { DWORD dwSize; int nAlarmIn; /// ????????????? int nAlarmOut; /// ???????????? NET_TIME stuTime; /// ?????? char szPlateNo[DH_MAX_PLATE_NUMBER_LEN]; /// ???? char szICCID[DH_MAX_SIM_LEN]; /// SIM????,???????szICCIDExInfo??? BYTE byOrientation; /// ??????,0-??????,1-???? BYTE byACCState; /// ACC ??,0-???,1-?? BYTE byConstantElecState; /// ??????,0-????????,1-???,2-??,3-??? BYTE byAntennaState; /// ????????,0-????,1-???????,2-????,3-???? /* ??????? */ BYTE byReportStation; /// ???????,0-????,1-????,2-?? BYTE byControlScreen; /// ????????,0-????,1-????,2-?? BYTE byPOS; /// POS????,0-????,1-????,2-?? BYTE byCoinBox; /// ???????,0-????,1-????,2-?? /* ?????? */ BOOL bTimerSnap; /// ?????,TRUE-???,FALSE-????? BOOL bElectronEnclosure; /// ????????,TRUE-???,FALSE-????? BOOL bTeleUpgrade; /// ???????,TRUE-???,FALSE-????? NET_HDD_STATE stuHddStates[DH_MAX_DISKNUM]; /// ????? int nHddNum; /// ?????? NET_CHANNLE_STATE* pChannleState; /// ?????,?????????, /// CLIENT_AttachMission???,NET_MISSION_TYPE_SELFCHECK????,???????,?????SDK????,SDK??? /// CLIENT_GetSelfCheckInfo???,????,????????????,??????,?????sizeof(NET_CHANNLE_STATE)*nChannelMax int nChannleNum; /// ??????????????? int nChannelMax; /// CLIENT_GetSelfCheckInfo???,pChannleState???????NET_CHANNLE_STATE???? NET_PAD_CONNECT_STATE emConnState; /// PAD/DVR?????? NET_HOME_STATE emHomeState; /// Home???? char szICCIDExInfo[DH_COMMON_STRING_256]; /// SIM????????????????????????? BYTE by3GState; /// 3G/4G??, 0-???????1-?????2-???????? BYTE byWifiState; /// Wifi??, 0-???????1-?????2-???????? BYTE byGpsState; /// Gps??, 0-???????1-?????2-???????? BYTE byBlackBoxState; /// BlackBox??, 0-?????1-???? int nCpuUsage; /// CPU??????, ????% int nTemperature; /// ?????????, ????? char szVendor[32]; char szFirmwareVersion[128]; /// ??????????????????????? char szSecurityBaseLineVersion[8]; /// ????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS????? char szNetworkOperName[32]; /// 4G???????????????????sim????????? EM_EMERGENCYSTATUS_TYPE emEmergencyStatus; /// ?????????? EM_TAMPERALTERSTATUS_TYPE emTamperAletStatus; /// ??????? char szImei[16]; /// ???????????????15???????? UINT nGSMsignalStrength; /// 3G??????0 - 31 UINT nMcc; /// ???????????????? UINT nMnc; /// ?????????????????????????????????????2~3????????? UINT nLAC; /// ???????? ??????????????,??????????????????????????????????????????????????????????????,?????????????????????? UINT nCi; /// ?????????,????????????????????LBS????????????????????????????????????????????????????????????????????????????????????? int nAlarmInStatusNum; /// IO?????????????? int nAlarmInStatus[32]; /// IO?????????????????????????????????????????????????0=Off; 1 =On?? int nAlarmOutStatusNum; /// IO????????????? int nAlarmOutStatus[32]; /// IO???????????????????????????????????????????????0=Off; 1 =On?? char szMasterSvrAddr[128]; /// ?????????????IPv4?????????????IPv6????x:x:x:x:x:x:x:x??????x??16???????????? char szSlaveSvrAddr[128]; /// ????????????IPv4?????????????IPv6????x:x:x:x:x:x:x:x??????x??16???????????? char szSerialNo[48]; /// ????????? EM_GPS_SIGNAL_STRENGTH_TYPE emSignalStrength; /// GPS ????????? EM_SELFCHECK_DATA_TYPE emDataType; /// ??????????? }NET_SELFCHECK_INFO; ///@brief ??????? typedef void (CALLBACK *fMissionInfoCallBack)(LLONG lAttachHandle, DWORD dwType, void* pMissionInfo, void* pReserved, LDWORD dwUserData); ///@brief ???????? typedef enum EM_MISSION_TYPE { NET_MISSION_TYPE_UNKOWN, /// ??? NET_MISSION_TYPE_SELFCHECK, /// ??????,??????? NET_SELFCHECK_INFO }EM_MISSION_TYPE; ///@brief CLIENT_AttachMission?????????? typedef struct __NET_IN_ATTACH_MISSION_PARAM { DWORD dwSize; EM_MISSION_TYPE emMissionType; /// ???????? fMissionInfoCallBack cbMissionInfofunc; /// ?????????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_MISSION_PARAM; ///@brief CLIENT_DetachMission?????????? typedef struct NET_OUT_ATTACH_MISSION_PARAM { DWORD dwSize; LLONG lAttachHandle; /// ?????? }NET_OUT_ATTACH_MISSION_PARAM; #define MAX_EVENT_TO_CONFIRM_NUM 8 /// ???????????????? ///@brief ?????????????? typedef struct tagNET_EVENT_INFO_TO_CONFIRM { DWORD dwSize; DWORD dwEventType; /// ???????, ???CLIENT_AttachBusState??????????? NET_TIME stuTime; /// ??????, UTC?? LONG lTime; /// ??????, UTC??, ?????? }NET_EVENT_INFO_TO_CONFIRM; ///@brief ??????????????? ??????? typedef struct tagNET_IN_BUS_CONFIRM_EVENT { DWORD dwSize; int nEvent; /// ????????????????? NET_EVENT_INFO_TO_CONFIRM stuEventInfo[MAX_EVENT_TO_CONFIRM_NUM];/// ????????????? }NET_IN_BUS_CONFIRM_EVENT; ///@brief ??????????????? ??????? typedef struct tagNET_OUT_BUS_CONFIRM_EVENT { DWORD dwSize; }NET_OUT_BUS_CONFIRM_EVENT; ///@brief CLIENT_SetDevicePosition???????????????????? typedef struct tagNET_IN_SET_DEVICE_POSITION { DWORD dwSize; /// ?????????, ?????????????? char szPosition[DH_COMMON_STRING_512]; /// ?????? }NET_IN_SET_DEVICE_POSITION; ///@brief CLIENT_SetDevicePosition???????????????????? typedef struct tagNET_OUT_SET_DEVICE_POSITION { DWORD dwSize; /// ?????????, ?????????????? }NET_OUT_SET_DEVICE_POSITION; ///@brief CLIENT_GetDevicePosition??????????????????? typedef struct tagNET_IN_GET_DEVICE_POSITION { DWORD dwSize; /// ?????????, ?????????????? }NET_IN_GET_DEVICE_POSITION; ///@brief CLIENT_GetDevicePosition??????????????????? typedef struct tagNET_OUT_GET_DEVICE_POSITION { DWORD dwSize; /// ?????????, ?????????????? char szPosition[DH_COMMON_STRING_512]; /// ?????? }NET_OUT_GET_DEVICE_POSITION; ///@brief CLIENT_SnapPictureByEvent??????? typedef struct tagNET_IN_SNAP_BY_EVENT { DWORD dwSize; /// ?????????, ?????????????? int nChannel; /// ????????, ??0??? DWORD dwEventID; /// ????CLIENT_RealLoadPicEx????????? char szSerial[128]; /// ???????? }NET_IN_SNAP_BY_EVENT; ///@brief CLIENT_SnapPictureByEvent??????? typedef struct tagNET_OUT_SNAP_BY_EVENT { DWORD dwSize; /// ?????????, ?????????????? }NET_OUT_SNAP_BY_EVENT; ///@brief CLIENT_StartQueryLog ??????? typedef struct tagNET_IN_START_QUERYLOG { DWORD dwSize; DH_LOG_QUERY_TYPE emLogType; /// ?????????? NET_TIME stuStartTime; /// ????????????? NET_TIME stuEndTime; /// ?????????????? BOOL bLogTypeExFlag; /// ??emLogType????????????????;TRUE ???????szLogTypeEx????,FALSE???emLogType int nLogTypeExNum; /// szLogTypeEx???????????????64?? char szLogTypeEx[64][128]; /// ?????????????????????????,??????????????????64??,?????????? EM_RESULT_ORDER_TYPE emResultOrder; /// ??????????? BOOL bSendByUTCTime; /// ??????UTC??? NET_TIME stuStartTimeRealUTC; /// UTC????????? NET_TIME stuEndTimeRealUTC; /// UTC?????????? } NET_IN_START_QUERYLOG; ///@brief CLIENT_StartQueryLog ??????? typedef struct tagNET_OUT_START_QUERYLOG { DWORD dwSize; }NET_OUT_START_QUERYLOG; ///@brief ????????? typedef struct tagNET_LOG_MESSAGE { DWORD dwSize; char szLogMessage[DH_COMMON_STRING_1024]; /// ??????? } NET_LOG_MESSAGE; ///@brief ?????? typedef struct tagNET_LOG_INFO { DWORD dwSize; NET_TIME stuTime; /// ??? char szUserName[DH_COMMON_STRING_32];/// ?????? char szLogType[DH_COMMON_STRING_128];/// ???? NET_LOG_MESSAGE stuLogMsg; /// ?????? NET_TIME stuTimeRealUTC; /// ???UTC??? } NET_LOG_INFO; ///@brief CLIENT_QueryNextLog ??????? typedef struct tagNET_IN_QUERYNEXTLOG { DWORD dwSize; int nGetCount; /// ??????????????? }NET_IN_QUERYNEXTLOG; ///@brief CLIENT_QueryNextLog ??????? typedef struct tagNET_OUT_QUERYNEXTLOG { DWORD dwSize; int nMaxCount; /// ????????????????,????????NET_IN_GETNEXTLOG??nGetCount NET_LOG_INFO* pstuLogInfo; /// ??????????,???????????????,?????nMaxCount*sizeof(NET_LOG_INFO) int nRetCount; /// ????????????? }NET_OUT_QUERYNEXTLOG; ///@brief ??????????????????(??nError????11?,???????reserved?int????????????????CLIENT_StartLoginEx?????????) /// ???????????? nError ?????????????????? CLIENT_Login ???? error??? typedef void (CALLBACK *fHaveLogin)(LLONG lLoginID, char *pchDVRIP, LONG nDVRPort, BOOL bOnline, NET_DEVICEINFO_Ex stuDeviceInfo, int nError, LDWORD dwUser, void *reserved); ///@brief CLIENT_StartLoginEx ??????? typedef struct tagNET_IN_STARTLOGINEX { DWORD dwSize; const char* szIp; /// ???ip DWORD dwPort; /// ?????? const char* szName; /// ????? const char* szPwd; /// ???? fHaveLogin cbLogin; /// ????????? LDWORD dwUser; /// ?????????? }NET_IN_STARTLOGINEX; ///@brief CLIENT_StartLoginEx ??????? typedef struct tagNET_OUT_STARTLOGINEX { DWORD dwSize; }NET_OUT_STARTLOGINEX; ///@brief ??????????????? typedef enum tagEM_DEV_PROTOCOL_TYPE { EM_DEV_PROTOCOL_UNKNOWN, /// ??? EM_DEV_PROTOCOL_V2, /// ??????? EM_DEV_PROTOCOL_V3, /// ??????? EM_DEV_PROTOCOL_ONVIF, /// onvif EM_DEV_PROTOCOL_GENERAL, /// general EM_DEV_PROTOCOL_GB28181, /// ????GB28181 EM_DEV_PROTOCOL_EHOME, EM_DEV_PROTOCOL_HIKVISION, EM_DEV_PROTOCOL_BSCP, EM_DEV_PROTOCOL_PRIVATE, /// ??? EM_DEV_PROTOCOL_RTSP, /// RTSP EM_DEV_PROTOCOL_HBGK, EM_DEV_PROTOCOL_LUAN, } EM_DEV_PROTOCOL_TYPE; ///@brief ????????????? typedef enum tagNET_VIDEOJOIN_OPERATE_TYPE { NET_VIDEOJOIN_GET_STATUS, /// ????????, ??? NET_IN_VIDEOJOIN_GET_STATUS ?? NET_OUT_VIDEOJOIN_GET_STATUS NET_VIDEOJOIN_GET_CALIBRATE_POINTS, /// ?????????, ??? tagNET_IN_VIDEOJOIN_GET_CALIBRATE_POINTS ?? tagNET_OUT_VIDEOJOIN_GET_CALIBRATE_POINTS NET_VIDEOJOIN_CALIBRATE, /// ??, ??? NET_IN_VIDEOJOIN_CALIBRATE ?? NET_OUT_VIDEOJOIN_CALIBRATE }NET_VIDEOJOIN_OPERATE_TYPE; ///@brief ???????? typedef enum tagNET_VIDEOJOIN_STATUS { NET_VIDEOJOIN_STATUS_UNKNOWN, /// ??? NET_VIDEOJOIN_STATUS_NOTSTART, /// ????? NET_VIDEOJOIN_STATUS_DOING, /// ?????? NET_VIDEOJOIN_STATUS_FINISH, /// ??? }NET_VIDEOJOIN_STATUS; ///@brief ????????? typedef enum tagNET_VIDEOJOIN_MODE { NET_VIDEOJOIN_MODE_UNKNOWN, /// ??? NET_VIDEOJOIN_MODE_AUTO, /// ??? NET_VIDEOJOIN_MODE_MANUAL, /// ??? }NET_VIDEOJOIN_MODE; ///@brief CLIENT_OperateVideoJoin ???????, ???NET_VIDEOJOIN_GET_STATUS typedef struct tagNET_IN_VIDEOJOIN_GET_STATUS { DWORD dwSize; }NET_IN_VIDEOJOIN_GET_STATUS; ///@brief CLIENT_OperateVideoJoin ???????, ???NET_VIDEOJOIN_GET_STATUS typedef struct tagNET_OUT_VIDEOJOIN_GET_STATUS { DWORD dwSize; NET_VIDEOJOIN_STATUS emStatus; /// ????? }NET_OUT_VIDEOJOIN_GET_STATUS; ///@brief ????????, ??????????? typedef struct tagNET_POINT_PAIR { DH_POINT stuPoints[POINT_NUM_IN_PAIR]; /// ??????? }NET_POINT_PAIR; ///@brief ???????????, ?????????????????????? typedef struct tagNET_VIDEOJOIN_POINT_GROUP { DWORD dwSize; int nPointPairNum; /// ???????? NET_POINT_PAIR stuPointPairs[MAX_POINT_PAIR_NUM]; /// ???? int nChannels[CHANNEL_NUM_IN_POINT_GROUP]; /// ????????, ????????????????,????0??????NET_POINT_PAIR??????0??? }NET_VIDEOJOIN_POINT_GROUP; ///@brief CLIENT_OperateVideoJoin ???????, ???NET_VIDEOJOIN_GET_CALIBRATE_POINTS typedef struct tagNET_IN_VIDEOJOIN_GET_CALIBRATE_POINTS { DWORD dwSize; }NET_IN_VIDEOJOIN_GET_CALIBRATE_POINTS; ///@brief CLIENT_OperateVideoJoin ???????, ???NET_VIDEOJOIN_GET_CALIBRATE_POINTS typedef struct tagNET_OUT_VIDEOJOIN_GET_CALIBRATE_POINTS { DWORD dwSize; NET_VIDEOJOIN_MODE emMode; /// ???? int nPointGroupNum; /// ?????????? NET_VIDEOJOIN_POINT_GROUP stuPointGroups[MAX_POINT_GROUP_NUM]; /// ??????, ??????????? }NET_OUT_VIDEOJOIN_GET_CALIBRATE_POINTS; ///@brief CLIENT_OperateVideoJoin ???????, ???NET_VIDEOJOIN_CALIBRATE typedef struct tagNET_IN_VIDEOJOIN_CALIBRATE { DWORD dwSize; NET_VIDEOJOIN_MODE emMode; /// ???? int nPointGroupNum; /// ?????????? NET_VIDEOJOIN_POINT_GROUP stuPointGroups[MAX_POINT_GROUP_NUM]; /// ??????, ????????? }NET_IN_VIDEOJOIN_CALIBRATE; ///@brief CLIENT_OperateVideoJoin ???????, ???NET_VIDEOJOIN_CALIBRATE typedef struct tagNET_OUT_VIDEOJOIN_CALIBRATE { DWORD dwSize; }NET_OUT_VIDEOJOIN_CALIBRATE; ///@brief ????????????????????, ???NET_SPLIT_OPERATE_GET_SCENE typedef struct tagNET_IN_SPLIT_GET_SCENE { DWORD dwSize; int nChannel; /// ???????????????????????, pszCompositeID?NULL????? const char* pszCompositeID; /// ?????ID }NET_IN_SPLIT_GET_SCENE; ///@brief ????????????????????, ???NET_SPLIT_OPERATE_GET_SCENE typedef struct tagNET_OUT_SPLIT_GET_SCENE { DWORD dwSize; DH_SPLIT_SCENE stuScene; /// ??????? }NET_OUT_SPLIT_GET_SCENE; ///@brief ?????????? typedef enum tagEM_NET_WM_TOUR_STATUS { EM_NET_WM_TOUR_STATUS_UNKNOWN, /// ??? EM_NET_WM_TOUR_STATUS_START, /// ????? EM_NET_WM_TOUR_STATUS_STOP, /// ????? } EM_NET_WM_TOUR_STATUS; ///@brief ???????????????? typedef struct tagNET_WM_TOUR_STATUS_INFO { DWORD dwSize; EM_NET_WM_TOUR_STATUS emStatus; /// ????? DH_MONITORWALL_SCENE stuScene; /// ?????? } NET_WM_TOUR_STATUS_INFO; ///@brief ???????????????????????, lAttachHandle??CLIENT_MonitorWallAttachTour?????? typedef void (CALLBACK *fMonitorWallTourStatusCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_WM_TOUR_STATUS_INFO* pstStatus, void* reserved, LDWORD dwUser); ///@brief CLIENT_MonitorWallAttachTour ?????????? typedef struct tagNET_IN_WM_ATTACH_TOUR { DWORD dwSize; int nMonitorWallID; /// ?????ID fMonitorWallTourStatusCallBack cbStatus; /// ???????????? LDWORD dwUser; /// ???????????? } NET_IN_WM_ATTACH_TOUR; ///@brief CLIENT_MonitorWallAttachTour ?????????? typedef struct tagNET_OUT_WM_ATTACH_TOUR { DWORD dwSize; } NET_OUT_WM_ATTACH_TOUR; ///@brief CLIENT_SnapManagerConfirmUpload ?????????? typedef struct tagNET_IN_SNAP_MANAGER_CONFIRM_UPLOAD { DWORD dwSize; char szFilePath[DH_COMMON_STRING_256]; /// ???????,??????????????????? BOOL bResult; /// ??????????? }NET_IN_SNAP_MANAGER_CONFIRM_UPLOAD; ///@brief CLIENT_SnapManagerConfirmUpload ?????????? typedef struct tagNET_OUT_SNAP_MANAGER_CONFIRM_UPLOAD { DWORD dwSize; }NET_OUT_SNAP_MANAGER_CONFIRM_UPLOAD; ///@brief CLIENT_SnapManagerGetCaps ?????????? typedef struct tagNET_IN_SNAP_MANAGER_GET_CAPS { DWORD dwSize; }NET_IN_SNAP_MANAGER_GET_CAPS; ///@brief ????????? typedef struct tagNET_MANUAL_SNAPSHOT { BOOL bDeviceSnapshot; /// ????????????? true-???????,false-?????, ?????????????? char szReserved[128]; /// ?????? }NET_MANUAL_SNAPSHOT; ///@brief ??????????? typedef struct tagNET_TRANSFER_OFFLINE { BOOL bEnable; /// ????????????? true: ??? false: ????? UINT nMaxOfflines; /// ?????????????????????? char szReserved[128]; /// ?????? }NET_TRANSFER_OFFLINE; ///@brief ????????? typedef enum tagEM_ALGORITHM_LIST { EM_ALGORITHM_LIST_UNKNOWN, /// ??? EM_ALGORITHM_LIST_AES256_OFB, /// "AES256-OFB" EM_ALGORITHM_LIST_SM1_OFB, /// "SM1-OFB" EM_ALGORITHM_LIST_SM4_OFB, /// "SM4-OFB" }EM_ALGORITHM_LIST; ///@brief ????????? typedef struct tagNET_SUPPORT_ENCRYPT_NOTIFY { BOOL bEnable; /// ??????????????? true: ??? false: ????? int nAlgorithmListNum; /// ????????????? EM_ALGORITHM_LIST emAlgorithmList[8]; /// ????????? char szReserved[128]; /// ?????? }NET_SUPPORT_ENCRYPT_NOTIFY; ///@brief ???????? typedef struct tagNET_SNAP_MANAGER_CAPS_INFO { BOOL bSupportSnapSchedule; /// ??????????? true???,false?????????false BOOL bSupportFtpPathMode; /// ??????????????PathMode??????? true-??????????????false??????????-????????? BOOL bSupportFtpUpNoplate; /// FTP???????????????????????? true????? false??????? BOOL bSupportPicLocalURL; /// ???????????URL??? true????? false??????? NET_MANUAL_SNAPSHOT stuManualSnapshot; /// ????????? NET_TRANSFER_OFFLINE stuTransferOffline; /// ??????????? NET_SUPPORT_ENCRYPT_NOTIFY stuSupportEncryptNotify; /// ????????? char szReserved[128]; /// ?????? }NET_SNAP_MANAGER_CAPS_INFO; ///@brief CLIENT_SnapManagerGetCaps ?????????? typedef struct tagNET_OUT_SNAP_MANAGER_GET_CAPS { DWORD dwSize; NET_SNAP_MANAGER_CAPS_INFO stuCaps; /// ???????? }NET_OUT_SNAP_MANAGER_GET_CAPS; ///@brief CLIENT_SnapManagerStoragePicture ?????????? typedef struct tagNET_IN_SNAP_MANAGER_STORAGE_PICTURE { DWORD dwSize; int nChannel; /// ????? -1 ??????????? BOOL bStorageWholePic; /// ?????????????? true ???? false ??? }NET_IN_SNAP_MANAGER_STORAGE_PICTURE; ///@brief CLIENT_SnapManagerStoragePicture ?????????? typedef struct tagNET_OUT_SNAP_MANAGER_STORAGE_PICTURE { DWORD dwSize; }NET_OUT_SNAP_MANAGER_STORAGE_PICTURE; ///@brief ??????????? typedef struct tagNET_VTP_CALL_STATE_INFO { DWORD dwSize; char szNumber[DH_COMMON_STRING_128]; /// ???????? char szCallID[DH_COMMON_STRING_128]; /// ????????? EM_NET_VTP_CALL_STATE_TYPE emCallState; /// ?????? }NET_VTP_CALL_STATE_INFO; ///@brief ????????????????????????? typedef void (CALLBACK *fVTPCallStateCallBack)(LLONG lAttachHandle, NET_VTP_CALL_STATE_INFO *pInfo, int nBufLen, LDWORD dwUser); ///@brief ??????????????? ??????? typedef struct tagNET_IN_VTP_CALL_STATE_ATTACH { DWORD dwSize; EM_NET_VTP_CALL_TYPE emCallType; /// ?????????????? fVTPCallStateCallBack cbCallState; /// ????????? LDWORD dwUser; /// ??????? const char* szTargetID; /// ??????????ID, ?NULL???????? }NET_IN_VTP_CALL_STATE_ATTACH; ///@brief ??????????????? ??????? typedef struct tagNET_OUT_VTP_CALL_STATE_ATTACH { DWORD dwSize; }NET_OUT_VTP_CALL_STATE_ATTACH; ////////////////////////////////////////////////////////////////////// ///@brief ??????????????? ////////////////////////////////////////////////////////////////////// ///@brief ??????????CLIENT_CheckBusLine()??????? typedef struct tagNET_IN_CHECK_BUS_LINE { DWORD dwSize; char szLineID[DH_COMMON_STRING_32]; /// ??????? char szDesignation[DH_COMMON_STRING_32]; /// ???????? NET_LINE_DIRECTION emDirection; /// ???????? int nSiteCount; /// ????????? char szDirectionName[DH_COMMON_STRING_32]; /// ???????????? char szVersion[DH_COMMON_STRING_32]; /// ????????? }NET_IN_CHECK_BUS_LINE; ///@brief ???????????????????????? typedef enum tagNET_BUS_LINE_UPDATE_TYPE { NET_BUS_LINE_UPDATE_UNKNOWN = 0, NET_BUS_LINE_UPDATE_UPDATED, /// ??????? NET_BUS_LINE_UPDATE_NOT_UPDATED, /// ????????? }NET_BUS_LINE_UPDATE_TYPE; ///@brief ??????????CLIENT_CheckBusLine()??????? typedef struct tagNET_OUT_CHECK_BUS_LINE { DWORD dwSize; char szDeviceID[DH_COMMON_STRING_32]; /// ???ID char szLineID[DH_COMMON_STRING_32]; /// ??????? NET_BUS_LINE_UPDATE_TYPE emUpdate; /// ?????????????? }NET_OUT_CHECK_BUS_LINE; #define MAX_SITE_GPS_POINT_NUM 64 /// ?????????????????GPS????? ///@brief ?????????????????? typedef enum tagNET_SITE_AREA_TYPE { NET_SITE_AREA_ENCLOSURE = 0, /// ?????? NET_SITE_AREA_CIRCLE, /// ??? }NET_SITE_AREA_TYPE; ///@brief ?????????????? typedef struct tagNET_FLEXION_INFO { int nLimitDistance; /// ??????????????????????????? int nPointArrayNum; /// ???????(???????????) GPS_POINT stuPoint[MAX_SITE_GPS_POINT_NUM]; /// ?????? GPS_POINT *pStuPoint; /// ????????????64??????????????????,??????512?? int nPointNum; /// ??????????????????????????? int nLimitDuration; /// ???????????????????????????? ?????? BYTE byReserved[1008]; /// ?????? }NET_FLEXION_INFO; ///@brief ?????????? typedef struct tagNET_BUS_SITE_INFO { DWORD dwSize; char szLineID[DH_COMMON_STRING_32]; /// ??????? int nSiteCount; /// ????????? NET_LINE_DIRECTION emDirection; /// ????????,???????NET_LINE_DIRECTION_UNKNOWN int nStopSequence; /// ?????? char szSiteID[DH_COMMON_STRING_32]; /// ???ID char szSiteName[DH_COMMON_STRING_32]; /// ??????? NET_SITE_AREA_TYPE emAreaType; /// ??????????? int nGPSPointNum; /// ????GPS???? GPS_POINT stuPoint[MAX_SITE_GPS_POINT_NUM]; /// ???GPS??? int nRadius; /// ????, ????: ??, ???????????? int nSpeedLimit; /// ???????, ????: km/H int nDriveTime; /// ?????????????, ????:???? int nTicketPrice; /// ??????? DH_TSECT stuPowerSchedule[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ????????, ???????????????~?????????? char szDesignation[DH_COMMON_STRING_64]; /// ???????? char szDirectionName[DH_COMMON_STRING_64]; /// ???????????? char szVersion[DH_COMMON_STRING_32]; BOOL bUseExName; /// ???????????????? char szSiteNameEx[DH_COMMON_STRING_128]; /// ??????????, ?????? NET_FLEXION_INFO stuInflexionInfos; /// ?????????????? DH_TSECT stuPowerScheduleEx[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM_EX]; /// ???????????????????6???????TimeSchedule???????6??????????TimeScheduleEx?????? }NET_BUS_SITE_INFO; #define MAX_BUS_STOP_NUM 32 /// ???????????????????? ///@brief ????????????CLIENT_DispatchBusLineInfo()?????????? typedef struct tagNET_IN_DISPATCH_BUS_LINE_INFO { DWORD dwSize; int nBusStopNum; /// ?????????????? NET_BUS_SITE_INFO stuStopInfo[MAX_BUS_STOP_NUM]; /// ??????????? }NET_IN_DISPATCH_BUS_LINE_INFO; ///@brief ????????????CLIENT_DispatchBusLineInfo()?????????? typedef struct tagNET_OUT_DISPATCH_BUS_LINE_INFO { DWORD dwSize; }NET_OUT_DISPATCH_BUS_LINE_INFO; ///@brief ????????????CLIENT_DispatchBusLineInfoEx()?????????? typedef struct tagNET_IN_DISPATCH_BUS_LINE_INFO_EX { DWORD dwSize; int nBusStopNum; /// ?????????????? NET_BUS_SITE_INFO *pstuStopInfo; /// ???????????,????????????,?????sizeof(NET_BUS_SITE_INFO)*nBusStopNum }NET_IN_DISPATCH_BUS_LINE_INFO_EX; ///@brief ????????????CLIENT_DispatchBusLineInfoEx()?????????? typedef struct tagNET_OUT_DISPATCH_BUS_LINE_INFO_EX { DWORD dwSize; }NET_OUT_DISPATCH_BUS_LINE_INFO_EX; ///@brief ????????????? typedef struct tagNET_BUS_HTTPS_ADDRESS_INFO { char szIPAddress[64]; int nPort; BYTE byReserved[956]; }NET_BUS_HTTPS_ADDRESS_INFO; ///@brief ????https??????????????????https?????????????????????? CLIENT_DispatchBusHttpsServers ?????????? typedef struct tagNET_IN_DISPATCH_BUS_HTTPS_SERVERS_INFO { DWORD dwSize; int nAddressNum; /// ????????????? NET_BUS_HTTPS_ADDRESS_INFO stuAddress[4]; /// ????????????? char szToken[128]; /// https???????(??32???) }NET_IN_DISPATCH_BUS_HTTPS_SERVERS_INFO; ///@brief ????https??????????????????https?????????????????????? CLIENT_DispatchBusHttpsServers ?????????? typedef struct tagNET_OUT_DISPATCH_BUS_HTTPS_SERVERS_INFO { DWORD dwSize; }NET_OUT_DISPATCH_BUS_HTTPS_SERVERS_INFO; ///@brief ???????????CLIENT_BusSchedule()?????????? typedef struct tagNET_IN_BUS_SCHEDULE_INFO { DWORD dwSize; char szLineID[DH_COMMON_STRING_64]; /// ?????????? NET_LINE_DIRECTION emDirection; /// ??????????? NET_TIME_EX stuStartTime; /// ??????? }NET_IN_BUS_SCHEDULE_INFO; ///@brief ???????????CLIENT_BusSchedule()?????????? typedef struct tagNET_OUT_BUS_SCHEDULE_INFO { DWORD dwSize; }NET_OUT_BUS_SCHEDULE_INFO; ///@brief ???????????? typedef struct tagNET_BUS_WORK_PLAN { DWORD dwSize; char szID[DH_COMMON_STRING_32]; /// ???????????, ???16????? NET_TIME_EX stuTime; /// ??????? char szDriverName[DH_COMMON_STRING_64]; /// ??????? char szStartSite[DH_COMMON_STRING_64]; /// ???????? char szEndSite[DH_COMMON_STRING_64]; /// ???????? BOOL bRunning; /// ?????, TRUE:???, FALSE:??? }NET_BUS_WORK_PLAN; ///@brief ?????????????CLIENT_DispatchWorkPlan?????????? typedef struct tagNET_IN_BUS_DISPATCH_WORK_PLAN { DWORD dwSize; NET_BUS_WORK_PLAN stuWorkPlan; /// ???????????? }NET_IN_BUS_DISPATCH_WORK_PLAN; ///@brief ?????????????CLIENT_DispatchWorkPlan?????????? typedef struct tagNET_OUT_BUS_DISPATCH_WORK_PLAN { DWORD dwSize; }NET_OUT_BUS_DISPATCH_WORK_PLAN; ///@brief ?????? typedef struct tagNET_DISPLAY_EVENT_INFO { int nChannel; /// ????? char szPlateNumber[32]; /// ????? NET_TIME stuEventTime; /// ?????? BYTE byReserved[452]; /// ??????? }NET_DISPLAY_EVENT_INFO; ///@brief ?????????? CLIENT_DispatchDisplayInfo ?????????? typedef struct tagNET_IN_DISPATCH_DISPLAY_INFO { DWORD dwSize; char szText[256]; /// ???????????? char szURL[256]; /// ?????????? NET_DISPLAY_EVENT_INFO stuEventInfo; /// ??????????? }NET_IN_DISPATCH_DISPLAY_INFO; ///@brief ?????????? CLIENT_DispatchDisplayInfo ?????????? typedef struct tagNET_OUT_DISPATCH_DISPLAY_INFO { DWORD dwSize; }NET_OUT_DISPATCH_DISPLAY_INFO; ///@brief ???????? typedef enum tagNET_THERMO_COLORIZATION { NET_THERMO_COLORIZATION_UNKNOWN, /// ??? NET_THERMO_COLORIZATION_WHITE_HOT, /// ???? NET_THERMO_COLORIZATION_BLACK_HOT, /// ???? NET_THERMO_COLORIZATION_IRONBOW2, /// ????2 NET_THERMO_COLORIZATION_ICEFIRE, /// ???? NET_THERMO_COLORIZATION_FUSION, /// ??? NET_THERMO_COLORIZATION_RAINBOW, /// ??? NET_THERMO_COLORIZATION_GLOBOW, /// NET_THERMO_COLORIZATION_IRONBOW1, /// ????1 NET_THERMO_COLORIZATION_SEPIA, /// ??? NET_THERMO_COLORIZATION_COLOR1, /// ???1 NET_THERMO_COLORIZATION_COLOR2, /// ???2 NET_THERMO_COLORIZATION_RAIN, /// ???? NET_THERMO_COLORIZATION_RED_HOT, /// ???? NET_THERMO_COLORIZATION_GREEN_HOT, /// ???? NET_THERMO_COLORIZATION_SPRING, /// ???? NET_THERMO_COLORIZATION_SUMMER, /// ???? NET_THERMO_COLORIZATION_WINTER, /// ???? NET_THERMO_COLORIZATION_AUTUMN, /// ???? NET_THERMO_COLORIZATION_ALARM, /// ???? } NET_THERMO_COLORIZATION; ///@brief ??????????????? typedef enum tagNET_THERMO_ROI { NET_THERMO_ROI_UNKNOWN, /// ??? NET_THERMO_ROI_FULL_SCREEN, /// ??? NET_THERMO_ROI_SKY, /// ???? NET_THERMO_ROI_GROUND, /// ???? NET_THERMO_ROI_HORIZONTAL, /// ??? NET_THERMO_ROI_CENTER_75, /// ????? 75% NET_THERMO_ROI_CENTER_50, /// ????? 50% NET_THERMO_ROI_CENTER_25, /// ????? 25% NET_THERMO_ROI_CUSTOM, /// ????? } NET_THERMO_ROI; ///@brief ??????? typedef enum tagNET_THERMO_MODE { NET_THERMO_MODE_UNKNOWN, /// ??? NET_THERMO_MODE_DEFAULT, /// ??? NET_THERMO_MODE_INDOOR, /// ???? NET_THERMO_MODE_OUTDOOR, /// ???? } NET_THERMO_MODE; ///@brief ???????????? typedef struct tagNET_THERMO_GRAPHY_OPT_REGION { BOOL bOptimizedRegion; /// ???????????? int nOptimizedROIType; /// ???????????,??NET_THERMO_ROI int nCustomRegion; /// ???????????? NET_RECT stCustomRegions[64]; /// ?????????,???? nOptimizedROIType ? NET_THERMO_ROI_CUSTOM ????? char Reserved[256]; } NET_THERMO_GRAPHY_OPTREGION; ///@brief ???????? typedef struct tagNET_THERMO_GRAPHY_INFO { int nBrightness; /// ???? int nSharpness; /// ??? int nEZoom; /// ???? int nThermographyGamma; /// ???? int nColorization; /// ???,??NET_THERMO_COLORIZATION int nSmartOptimizer; /// ?????? NET_THERMO_GRAPHY_OPTREGION stOptRegion; /// ??????? int nAgc; /// ?????????? int nAgcMaxGain; /// ?????????? int nAgcPlateau; /// ??????? char reserved[244]; } NET_THERMO_GRAPHY_INFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_THERMO_GRAPHY_PRESET ??????? typedef struct tagNET_IN_THERMO_GET_PRESETINFO { DWORD dwSize; int nChannel; /// ????? NET_THERMO_MODE emMode; /// ?? } NET_IN_THERMO_GET_PRESETINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_THERMO_GRAPHY_PRESET ??????? typedef struct tagNET_OUT_THERMO_GET_PRESETINFO { DWORD dwSize; NET_THERMO_GRAPHY_INFO stInfo; /// ???????? } NET_OUT_THERMO_GET_PRESETINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_THERMO_GRAPHY_EXTSYSINFO ??????? typedef struct tagNET_IN_THERMO_GET_EXTSYSINFO { DWORD dwSize; int nChannel; /// ????? } NET_IN_THERMO_GET_EXTSYSINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_LINKCHANNELS ??????? typedef struct tagNET_IN_GET_LINKCHANNELS { DWORD dwSize; int nChannel; /// ?????,?????????????????????????????? } NET_IN_GET_LINKCHANNELS; #define NET_LINKCHANNEL_MAX 512 /// ?????????????????? #define NET_LINKGROUP_MAX 64 /// ??????????????????? ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_LINKCHANNELS ??????? typedef struct tagNET_OUT_GET_LINKCHANNELS { DWORD dwSize; int nLinkedCnt; /// ????????????????? int nLinked[NET_LINKCHANNEL_MAX]; /// ??????????????,????????????????? } NET_OUT_GET_LINKCHANNELS; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_ALLLINKCHANNELS ??????? typedef struct tagNET_IN_GET_ALLLINKCHANNELS { DWORD dwSize; } NET_IN_GET_ALLLINKCHANNELS; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_ALLLINKCHANNELS ??????? typedef struct tagNET_OUT_GET_ALLLINKCHANNELS { DWORD dwSize; int nGroupCnt; /// ????????????????? int nLinkedCnt[NET_LINKGROUP_MAX]; /// ??????????????????? int nLinked[NET_LINKGROUP_MAX][NET_LINKCHANNEL_MAX]; /// ??????????????,????????????????? /// ????????????,???????????? /// ????,nLinked[1][2] ?????????????????????????? } NET_OUT_GET_ALLLINKCHANNELS; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_CAMERA_STATE ??????? typedef struct tagNET_IN_GET_CAMERA_STATEINFO { DWORD dwSize; BOOL bGetAllFlag; /// ????????????????,???????? TRUE,?? nChannels ??????????? int nValidNum; /// ?????,bGetAllFlag ? FALSE?????,??? nChannels ??????????? int nChannels[DH_MAX_CAMERA_CHANNEL_NUM]; /// ?????,bGetAllFlag ? FALSE?????,??????????????????????? } NET_IN_GET_CAMERA_STATEINFO; ///@brief ?????? typedef enum tagEM_CAMERA_STATE_TYPE { EM_CAMERA_STATE_TYPE_UNKNOWN, /// ??? EM_CAMERA_STATE_TYPE_CONNECTING, /// ???????? EM_CAMERA_STATE_TYPE_CONNECTED, /// ?????? EM_CAMERA_STATE_TYPE_UNCONNECT, /// ?????? EM_CAMERA_STATE_TYPE_EMPTY, /// ?????????,????? EM_CAMERA_STATE_TYPE_DISABLE, /// ?????????,???????? }EM_CAMERA_STATE_TYPE; ///@brief ??????????? typedef struct tagNET_CAMERA_STATE_INFO { int nChannel; /// ??????????, -1???????????? EM_CAMERA_STATE_TYPE emConnectionState; /// ?????? BOOL bCapsState; /// ?????????????????????(???????????????????????) BOOL bIsCapsStateValid; /// bCapsState??????? char szReserved[1016]; /// ??????? }NET_CAMERA_STATE_INFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_CAMERA_STATE ??????? typedef struct tagNET_OUT_GET_CAMERA_STATEINFO { DWORD dwSize; int nValidNum; /// ?????????????????????????,??sdk???? int nMaxNum; /// pCameraStateInfo ??????????,????????? NET_CAMERA_STATE_INFO* pCameraStateInfo; /// ???????????????,?????????,?????sizeof(NET_CAMERA_STATE_INFO)*nMaxNum } NET_OUT_GET_CAMERA_STATEINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_REMOTE_CHANNEL_AUDIO_ENCODE ??????? typedef struct tagNET_IN_GET_REMOTE_CHANNEL_AUDIO_ENCODEINFO { DWORD dwSize; int nChannel; /// ????? ??-1???????????????????????, 0-n????????????????????? int nStreamType; /// ????????,0??????????1????????1??2????????2??3????????3??4??????? } NET_IN_GET_REMOTE_CHANNEL_AUDIO_ENCODEINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_REMOTE_CHANNEL_AUDIO_ENCODE ??????? typedef struct tagNET_OUT_GET_REMOTE_CHANNEL_AUDIO_ENCODEINFO { DWORD dwSize; int nValidNum; /// ?????????????? DHDEV_TALKDECODE_INFO stuListAudioEncode[MAX_AUDIO_ENCODE_NUM]; /// ??????????? } NET_OUT_GET_REMOTE_CHANNEL_AUDIO_ENCODEINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_COMM_PORT_INFO ??????? typedef struct tagNET_IN_GET_COMM_PORT_INFO { DWORD dwSize; } NET_IN_GET_COMM_PORT_INFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_COMM_PORT_INFO ??????? ///@brief ???????? typedef enum tagEM_COMM_PORT_TYPE_INFO { EM_COMM_PORT_TYPE_UNKNOW = 0 , EM_COMM_PORT_TYPE_RS232 , EM_COMM_PORT_TYPE_RS485 , EM_COMM_PORT_TYPE_RS422 , EM_COMM_PORT_TYPE_RS485_422 , }EM_COMM_PORT_TYPE_INFO; ///@brief ??????? typedef struct tagNET_COMM_PORT_INFO { EM_COMM_PORT_TYPE_INFO emCommPortType; ///???????? int nCommPortNum; ///???????? BYTE bReserved[1024]; ///??????? }NET_COMM_PORT_INFO; #define MAX_COMM_PORT_NUM 8 ///@brief ????????????? typedef struct tagNET_OUT_GET_COMM_PORT_INFO { DWORD dwSize; int nPortInfosNum; ///????????? NET_COMM_PORT_INFO stCommPortInfos[MAX_COMM_PORT_NUM]; ///??????? } NET_OUT_GET_COMM_PORT_INFO; ///@brief ??????? typedef struct tagNET_THERMO_SYSINFO { char szSerialNumber[64]; /// ?????? char szSoftwareVersion[64]; /// ??????? char szFirmwareVersion[64]; /// ?????? char szLibVersion[64]; /// ???? char reserved[256]; } NET_THERMO_SYSINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_THERMO_GRAPHY_EXTSYSINFO ??????? typedef struct tagNET_OUT_THERMO_GET_EXTSYSINFO { DWORD dwSize; NET_THERMO_SYSINFO stInfo; /// ??????? } NET_OUT_THERMO_GET_EXTSYSINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_THERMO_GRAPHY_OPTREGION ??????? typedef struct tagNET_IN_THERMO_GET_OPTREGION { DWORD dwSize; int nChannel; /// ????? } NET_IN_THERMO_GET_OPTREGION; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_THERMO_GRAPHY_OPTREGION ??????? typedef struct tagNET_OUT_THERMO_GET_OPTREGION { DWORD dwSize; NET_THERMO_GRAPHY_OPTREGION stInfo; /// ?????????? } NET_OUT_THERMO_GET_OPTREGION; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_VIDEOOUTPUTCHANNELS ??????? typedef struct tagNET_IN_GET_VIDEOOUTPUTCHANNELS { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_IN_GET_VIDEOOUTPUTCHANNELS) } NET_IN_GET_VIDEOOUTPUTCHANNELS; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_VIDEOOUTPUTCHANNELS ??????? typedef struct tagNET_OUT_GET_VIDEOOUTPUTCHANNELS { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_GET_VIDEOOUTPUTCHANNELS) int nMaxLocal; /// ??????????????,???????????????? } NET_OUT_GET_VIDEOOUTPUTCHANNELS; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_VIDEOINFO ??????? typedef struct tagNET_IN_GET_VIDEOINFO { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_IN_GET_VIDEOINFO) } NET_IN_GET_VIDEOINFO; ///@brief ????????? typedef enum tagNET_VIDEOCHANNEL_STATE { NET_VIDEOCHANNEL_STATE_UNKNOWN, /// ????? NET_VIDEOCHANNEL_STATE_IDLE, /// ???? NET_VIDEOCHANNEL_STATE_PLAY, /// ???? NET_VIDEOCHANNEL_STATE_MONITOR, /// ??? NET_VIDEOCHANNEL_STATE_TOUR, /// ??? } NET_VIDEOCHANNEL_STATE; ///@brief ?????????? typedef struct tagNET_VIDEOCHANNELINFO { BOOL bEnable; /// ????????, ???true?,GB28181???????????????????? NET_VIDEOCHANNEL_STATE emVideoChannelState; /// ????????? int nNetflow; /// ????????(??????kbps) int nBitrate; /// ????(??????kbps) int nFrame; /// ??? CAPTURE_SIZE emResolution; /// ????? BYTE byReserved[512]; /// ?????? } NET_VIDEOCHANNELINFO; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_GET_VIDEOINFO ??????? typedef struct tagNET_OUT_GET_VIDEOINFO { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_GET_VIDEOINFO) int nVideoInfoNum; /// ????????????????????????,??0??????,?????? NET_VIDEOCHANNELINFO* pNetVideoChannelInfo; /// ??????????????,?????????,?????????????????nVideoInfoNum???,???????????sizeof(NET_VIDEOCHANNELINFO)*nVideoInfoNum int nRetVideoInfoNum; /// ??????????????????????????,SDK???? } NET_OUT_GET_VIDEOINFO; ///@brief CLIENT_ControlDeviceEx ??? NET_CTRL_DEV_THERMO_GRAPHY_ENSHUTTER ??????? typedef struct tagNET_IN_THERMO_EN_SHUTTER { DWORD dwSize; int nChannel; /// ????? BOOL bEnable; /// ????shutter,TRUE ??,FALSE ?? } NET_IN_THERMO_EN_SHUTTER; ///@brief CLIENT_ControlDeviceEx ??? NET_CTRL_DEV_THERMO_GRAPHY_ENSHUTTER ??????? typedef struct tagNET_OUT_THERMO_EN_SHUTTER { DWORD dwSize; } NET_OUT_THERMO_EN_SHUTTER; ///@brief CLIENT_ControlDeviceEx ??? DH_CTRL_THERMO_DO_FFC ??????? typedef struct tagNET_IN_THERMO_DO_FFC { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_IN_THERMO_DO_FFC) int nChannel; /// ????????????????????????????1??; } NET_IN_THERMO_DO_FFC; ///@brief CLIENT_ControlDeviceEx ??? DH_CTRL_THERMO_DO_FFC ??????? typedef struct tagNET_OUT_THERMO_DO_FFC { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_THERMO_DO_FFC) } NET_OUT_THERMO_DO_FFC; ///@brief CLIENT_ControlDeviceEx ??? DH_CTRL_THERMO_FIX_FOCUS ?????????????????????????????????? typedef struct tagNET_IN_THERMO_FIX_FOCUS { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_IN_THERMO_FIX_FOCUS) int anLinkVideoChannel[2]; /// ?????????????[0]???????????0??[1]???????????1?? double dSpeed; /// ??????,???????0~1(????????????) } NET_IN_THERMO_FIX_FOCUS; ///@brief CLIENT_ControlDeviceEx ??? DH_CTRL_THERMO_FIX_FOCUS ?????????????????????????????????? typedef struct tagNET_OUT_THERMO_FIX_FOCUS { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof(NET_OUT_THERMO_FIX_FOCUS) } NET_OUT_THERMO_FIX_FOCUS; ///@brief CLIENT_GetDevCaps ??? NET_THERMO_GRAPHY_CAPS ??????? typedef struct tagNET_IN_THERMO_GETCAPS { DWORD dwSize; int nChannel; /// ????? } NET_IN_THERMO_GETCAPS; ///@brief CLIENT_GetDevCaps ??? NET_THERMO_GRAPHY_CAPS ??????? typedef struct tagNET_OUT_THERMO_GETCAPS { DWORD dwSize; DWORD dwModes; /// ????????????? DWORD dwColorization; /// ???????????? ???????????,??????? /// "White Hot" /// "Black Hot" /// "Fusion" /// "Rainbow" /// "Globow" /// "Ironbow1" /// "Ironbow2" /// "Sepia" /// "Color1" /// "Color2" /// "Icefire" /// "Rain" /// "Red Hot" /// "Green Hot" /// "Spring" /// "Summer" /// "Winter" /// "Autumn" /// "Alarm" DWORD dwROIModes; /// ????????????????? RANGE stBrightness; /// ??????????? RANGE stSharpness; /// ?????????? RANGE stEZoom; /// ??????????? RANGE stThermographyGamma; /// ?????????? RANGE stSmartOptimizer; /// ?????????????? NET_FFCPERIOD_RANGE stFFCPeriod; /// ???????????????? } NET_OUT_THERMO_GETCAPS; ///@brief CLIENT_GetDevCaps ??? NET_RADIOMETRY_CAPS ??????? typedef struct tagNET_IN_RADIOMETRY_GETCAPS { DWORD dwSize; int nChannel; /// ????? } NET_IN_RADIOMETRY_GETCAPS; ///@brief ???????????? typedef enum tagNET_RADIOMETRY_METERTYPE { NET_RADIOMETRY_METERTYPE_UNKNOWN, NET_RADIOMETRY_METERTYPE_SPOT, /// ?? NET_RADIOMETRY_METERTYPE_LINE, /// ?? NET_RADIOMETRY_METERTYPE_AREA, /// ???? } NET_RADIOMETRY_METERTYPE; ///@brief ??,??,????????????? typedef struct tagNET_RADIOMETRY_TOTALNUM { DWORD dwMaxNum; /// ????????? DWORD dwMaxSpots; /// ???????? DWORD dwMaxLines; /// ?????????? DWORD dwMaxAreas; /// ??????????? char reserved[32]; } NET_RADIOMETRY_TOTALNUM; ///@brief CLIENT_GetDevCaps ??? NET_RADIOMETRY_CAPS ??????? typedef struct tagNET_OUT_RADIOMETRY_GETCAPS { DWORD dwSize; NET_RADIOMETRY_TOTALNUM stTotalNum; /// ??,??,????????????? DWORD dwMaxPresets; /// ?????????????? DWORD dwMeterType; /// ????????????????,??NET_RADIOMETRY_METERTYPE RANGE stObjectEmissivity; /// ?????????????? RANGE stObjectDistance; /// ??????????? RANGE stReflectedTemperature; /// ?????????????? RANGE stRelativeHumidity; /// ????????????? RANGE stAtmosphericTemperature; /// ?????????????? int nStatisticsMinPeriod; /// ???????????????????????? ??????? float fIsothermMaxTemp; /// ????????????? float fIsothermMinTemp; /// ????????????? } NET_OUT_RADIOMETRY_GETCAPS; ///@brief ??????? typedef struct tagNET_RADIOMETRYINFO { int nMeterType; /// ???????????,??NET_RADIOMETRY_METERTYPE int nTemperUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT float fTemperAver; /// ??????????????? ?????? ????????? float fTemperMax; /// ??????? float fTemperMin; /// ??????? float fTemperMid; /// ???????? float fTemperStd; /// ???????? char reserved[64]; } NET_RADIOMETRYINFO; ///@brief ????????????????? typedef struct tagNET_RADIOMETRY_CONDITION { int nPresetId; /// ?????? int nRuleId; /// ?????? int nMeterType; /// ?????????,??NET_RADIOMETRY_METERTYPE char szName[64]; /// ???????????,????????????????????? int nChannel; /// ????? char reserved[256]; } NET_RADIOMETRY_CONDITION; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_RADIOMETRY_POINT_TEMPER ??????? typedef struct tagNET_IN_RADIOMETRY_GETPOINTTEMPER { DWORD dwSize; int nChannel; /// ????? DH_POINT stCoordinate; /// ??????????,????? 0~8191 } NET_IN_RADIOMETRY_GETPOINTTEMPER; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_RADIOMETRY_POINT_TEMPER ??????? typedef struct tagNET_OUT_RADIOMETRY_GETPOINTTEMPER { DWORD dwSize; NET_RADIOMETRYINFO stPointTempInfo; /// ????????????? } NET_OUT_RADIOMETRY_GETPOINTTEMPER; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_RADIOMETRY_TEMPER ??????? typedef struct tagNET_IN_RADIOMETRY_GETTEMPER { DWORD dwSize; NET_RADIOMETRY_CONDITION stCondition; /// ????????????????? } NET_IN_RADIOMETRY_GETTEMPER; ///@brief CLIENT_QueryDevInfo ??? NET_QUERY_DEV_RADIOMETRY_TEMPER ??????? typedef struct tagNET_OUT_RADIOMETRY_GETTEMPER { DWORD dwSize; NET_RADIOMETRYINFO stTempInfo; /// ??????????? } NET_OUT_RADIOMETRY_GETTEMPER; ///@brief CLIENT_ControlDeviceEx ??? NET_CTRL_DEV_RADIOMETRY_SETOSDMARK ??????? typedef struct tagNET_IN_RADIOMETRY_SETOSDMARK { DWORD dwSize; NET_RADIOMETRY_CONDITION stCondition; /// ??????? osd ??????????????? } NET_IN_RADIOMETRY_SETOSDMARK; ///@brief CLIENT_ControlDeviceEx ??? NET_CTRL_DEV_RADIOMETRY_SETOSDMARK ??????? typedef struct tagNET_OUT_RADIOMETRY_SETOSDMARK { DWORD dwSize; } NET_OUT_RADIOMETRY_SETOSDMARK; ///@brief ??????????????? typedef enum tagEM_RADIOMETRY_PERIOD { EM_RADIOMETRY_PERIOD_UNKNOWN, /// ??? EM_RADIOMETRY_PERIOD_5 = 5, /// 5????????????? EM_RADIOMETRY_PERIOD_10 = 10, /// 10???????? EM_RADIOMETRY_PERIOD_15 = 15, /// 15???????? EM_RADIOMETRY_PERIOD_30 = 30, /// 30???????? }EM_RADIOMETRY_PERIOD; ///@brief CLIENT_StartFind ??? NET_FIND_RADIOMETRY ??????? typedef struct tagNET_IN_RADIOMETRY_STARTFIND { DWORD dwSize; NET_TIME stStartTime; /// ????????? NET_TIME stEndTime; /// ?????????? int nMeterType; /// ??????,?????NET_RADIOMETRY_METERTYPE int nChannel; /// ????? EM_RADIOMETRY_PERIOD emPeriod; /// ???????????????? } NET_IN_RADIOMETRY_STARTFIND; ///@brief CLIENT_StartFind ??? NET_FIND_RADIOMETRY ??????? typedef struct tagNET_OUT_RADIOMETRY_STARTFIND { DWORD dwSize; int nFinderHanle; /// ?????????? int nTotalCount; /// ??????????????????????? } NET_OUT_RADIOMETRY_STARTFIND; #define NET_RADIOMETRY_DOFIND_MAX 32 ///@brief CLIENT_DoFind ??? NET_FIND_RADIOMETRY ??????? typedef struct tagNET_IN_RADIOMETRY_DOFIND { DWORD dwSize; int nFinderHanle; /// ?????? int nBeginNumber; /// ?????????????????? int nCount; /// ???????????,????NET_IN_RADIOMETRY_DOFIND_MAX } NET_IN_RADIOMETRY_DOFIND; ///@brief ????????? typedef struct tagNET_RADIOMETRY_QUERY { NET_TIME stTime; /// ?????? int nPresetId; /// ?????? int nRuleId; /// ?????? char szName[64]; /// ????????? DH_POINT stCoordinate; /// ????????????(??? stCoordinates) int nChannel; /// ????? NET_RADIOMETRYINFO stTemperInfo; /// ???????,??nTemperMid, nTemperStd ??????? DH_POINT stCoordinates[8]; /// ???????????? int nCoordinateNum; /// ????????????????? char reserved[220]; } NET_RADIOMETRY_QUERY; ///@brief CLIENT_DoFind ??? NET_FIND_RADIOMETRY ??????? typedef struct tagNET_OUT_RADIOMETRY_DOFIND { DWORD dwSize; int nFound; /// ???????????? NET_RADIOMETRY_QUERY stInfo[NET_RADIOMETRY_DOFIND_MAX]; /// ????????? } NET_OUT_RADIOMETRY_DOFIND; ///@brief CLIENT_StopFind ??? NET_FIND_RADIOMETRY ??????? typedef struct tagNET_IN_RADIOMETRY_STOPFIND { DWORD dwSize; int nFinderHanle; /// ?????? } NET_IN_RADIOMETRY_STOPFIND; ///@brief CLIENT_StopFind ??? NET_FIND_RADIOMETRY ??????? typedef struct tagNET_OUT_RADIOMETRY_STOPFIND { DWORD dwSize; } NET_OUT_RADIOMETRY_STOPFIND; ///@brief ??????????????????? typedef enum tagNET_RADIOMETRY_RESULT { NET_RADIOMETRY_RESULT_UNKNOWN, NET_RADIOMETRY_RESULT_VAL, /// ????? NET_RADIOMETRY_RESULT_MAX, /// ??? NET_RADIOMETRY_RESULT_MIN, /// ???? NET_RADIOMETRY_RESULT_AVR, /// ??? NET_RADIOMETRY_RESULT_STD, /// ??? NET_RADIOMETRY_RESULT_MID, /// ???? NET_RADIOMETRY_RESULT_ISO, /// ISO NET_RADIOMETRY_RESULT_DIFF, /// ??? NET_RADIOMETRY_RESULT_SLOPE, /// ???? } NET_RADIOMETRY_RESULT; ///@brief ??????????????? typedef enum tagNET_RADIOMETRY_ALARMCONTION { NET_RADIOMETRY_ALARMCONTION_UNKNOWN, NET_RADIOMETRY_ALARMCONTION_BELOW, /// ???? NET_RADIOMETRY_ALARMCONTION_MATCH, /// ???? NET_RADIOMETRY_ALARMCONTION_ABOVE, /// ???? } NET_RADIOMETRY_ALARMCONTION; ///@brief ?????????????????? typedef struct tagALARM_HEATIMG_TEMPER_INFO { char szName[64]; /// ??????????? ??????????????????? int nAlarmId; /// ???????? int nResult; /// ???????? fTemperatureValue ??????,????? NET_RADIOMETRY_RESULT int nAlarmContion; /// ????????,????? NET_RADIOMETRY_ALARMCONTION float fTemperatureValue; /// ???????? int nTemperatureUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT DH_POINT stCoordinate; /// ??????????? ??????????,?????0~8191 int nPresetID; /// ???? int nChannel; /// ????? int nAction; /// 0:??? 1:?? -1:?????? DH_POLY_POINTS stuAlarmCoordinates; /// ????????, ???????????????????????IstCoordinate??? double dTemperatureMaxValue; /// ???????????? double dTemperatureMinValue; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[140]; } ALARM_HEATIMG_TEMPER_INFO; ///@brief ??????????? typedef struct tagALARM_FIREWARNING_INFO { int nPresetId; /// ???????????????DH_ALARM_FIREWARNING_INFO??????????? int nState; /// 0 - ???,1 - ????,-1:?????? DH_RECT stBoundingBox; /// ?????????,????DH_ALARM_FIREWARNING_INFO??????????? int nTemperatureUnit; /// ?????????,????DH_ALARM_FIREWARNING_INFO??????????? float fTemperature; /// ?????????,????DH_ALARM_FIREWARNING_INFO??????????? unsigned int nDistance; /// ?????????,????DH_ALARM_FIREWARNING_INFO??????????? GPS_POINT stGpsPoint; /// ?????????,????DH_ALARM_FIREWARNING_INFO??????????? int nChannel; /// ??????????? BOOL bIsLeaveFireDetect; /// ??????????????(TRUE:?? FALSE:????) char reserved[248]; } ALARM_FIREWARNING_INFO; ///@brief ???????????? typedef struct tagPTZ_POSITION_UNIT { int nPositionX; /// ???????????,????[0,3599]?????0???359.9???????????10????? int nPositionY; /// ????????????,????[-1800,1800]?????-180.0???+180.0???????????10????? int nZoom; /// ???????????,????[0,127]?????????????????????? char szReserve[32]; /// ???32??? }PTZ_POSITION_UNIT; ///@brief ?????GPS???? typedef struct tagNET_FIRING_GPS_INFO { DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 DWORD dwLatidude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 double dbAltitude; /// ???, ??????? char szReserve[32]; /// ???32??? } NET_FIRING_GPS_INFO; ///@brief ?????????????? typedef enum tagEM_FIRE_TYPE { EM_FIRE_TYPE_UNKNOWN = -1, /// ??????? EM_FIRE_TYPE_DETECT_AREA, /// ??????????????? EM_FIRE_TYPE_NO_DETECT_AREA, /// ???????????????? EM_FIRE_TYPE_DETECT_AREA_ALL, /// ????????????????? }EM_FIRE_TYPE; ///@brief ?????????????? typedef struct tagNET_FIREWARNING_INFO { int nPresetId; /// ?????? ????????????CFG_RADIOMETRY_RULE_INFO????? NET_RECT stuBoundingBox; /// ????????? int nTemperatureUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT float fTemperature; /// ???????? ???????????? UINT nDistance; /// ???????,?????? 0??????? GPS_POINT stuGpsPoint; /// ???????? PTZ_POSITION_UNIT stuPTZPosition; /// ?????????? float fAltitude; /// ???(????????) UINT nThermoHFOV; /// Uint32 ??????????? UINT nThermoVFOV; /// Uint32 ???????????? UINT nFSID; /// Uint32 ??????ID NET_FIRING_GPS_INFO stuFiringGPS; /// ?????GPS???? EM_FIRE_TYPE emFireType; /// ?????????????? BYTE reserved[144]; }NET_FIREWARNING_INFO; ///@brief ???????????????????? typedef struct tagALARM_FIREWARNING_INFO_DETAIL { int nChannel; /// ??????????? int nWarningInfoCount; /// ??????????? NET_FIREWARNING_INFO stuFireWarningInfo[MAX_FIREWARNING_INFO_NUM]; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[256]; }ALARM_FIREWARNING_INFO_DETAIL; ///@brief ?????????????? typedef struct tagALARM_FACE_OVERHEATING_INFO { int nRelativeId; /// ?????ID,?? NET_FACE_INFO->nRelativeID??? int nTemperatureUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT float fTemperature; /// ???? int nChannelID; /// ?????? BYTE reserved[124]; }ALARM_FACE_OVERHEATING_INFO; ///@brief ??????? typedef enum tagEM_SENSOR_ABNORMAL_STATUS { NET_SENSOR_ABNORMAL_STATUS_UNKNOWN, NET_SENSOR_ABNORMAL_STATUS_SHORT, /// ???? NET_SENSOR_ABNORMAL_STATUS_BREAK, /// ???? NET_SENSOR_ABNORMAL_STATUS_INTRIDED, /// ???? NET_SENSOR_ABNORMAL_STATUS_MASK, /// ????? NET_SENSOR_ABNORMAL_STATUS_NORMAL, /// ???? NET_SENSOR_ABNORMAL_STATUS_OFFLINE, /// ???? NET_SENSOR_ABNORMAL_STATUS_ALARM, /// ???? NET_SENSOR_ABNORMAL_STATUS_FAULT, /// ???? } EM_SENSOR_ABNORMAL_STATUS; ///@brief ???????(DH_ALARM_SENSOR_ABNORMAL) ????????????? typedef struct tagALARM_SENSOR_ABNORMAL_INFO { int nAction; /// 0:??? 1:?? int nChannelID; /// ???????? NET_TIME_EX stuTime; /// ???????????? EM_SENSOR_ABNORMAL_STATUS emStatus; /// ??????? NET_SENSE_METHOD emSenseMethod; /// SenseMethod, ??????,?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[124]; /// ?????? }ALARM_SENSOR_ABNORMAL_INFO; ///@brief ??????????? typedef struct tagNET_RADIOMETRY_METADATA { int nHeight; /// ?? int nWidth; /// ?? int nChannel; /// ??? NET_TIME stTime; /// ?????????? int nLength; /// ??????? char szSensorType[64]; /// ???????? int nUnzipParamR; /// ?????????R int nUnzipParamB; /// ?????????B int nUnzipParamF; /// ?????????F int nUnzipParamO; /// ?????????O char Reserved[256]; } NET_RADIOMETRY_METADATA; ///@brief ??????? typedef struct tagNET_RADIOMETRY_DATA { NET_RADIOMETRY_METADATA stMetaData; /// ????? BYTE* pbDataBuf; /// ?????????????????????????,??????????????????????,???????????????????? DWORD dwBufSize; /// ???????????????? char reserved[512]; } NET_RADIOMETRY_DATA; ///@brief ?????????????????? ///@param[out] LLONG lAttachHandle [OUT] ??????, CLIENT_RadiometryAttach ?????? ///@param[out] NET_RADIOMETRY_DATA* pBuf [OUT] ?????????? ///@param[out] int nBufLen [OUT] ????????? ///@param[out] LDWORD dwUser ??????? ///@return ?? typedef void (CALLBACK *fRadiometryAttachCB)(LLONG lAttachHandle, NET_RADIOMETRY_DATA* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_RadiometryAttach ??? typedef struct tagNET_IN_RADIOMETRY_ATTACH { DWORD dwSize; int nChannel; /// ???????? -1 ?????? fRadiometryAttachCB cbNotify; /// ???????????? LDWORD dwUser; /// ??????? } NET_IN_RADIOMETRY_ATTACH; ///@brief CLIENT_RadiometryAttach ???? typedef struct tagNET_OUT_RADIOMETRY_ATTACH { DWORD dwSize; } NET_OUT_RADIOMETRY_ATTACH; ///@brief ???????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RadiometryAttach(LLONG lLoginID, const NET_IN_RADIOMETRY_ATTACH* pInParam, NET_OUT_RADIOMETRY_ATTACH* pOutParam, int nWaitTime); ///@brief ????????????????,lAttachHandle?? CLIENT_RadiometryAttach ?????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryDetach(LLONG lAttachHandle); ///@brief CLIENT_RadiometryFetch ??? typedef struct tagNET_IN_RADIOMETRY_FETCH { DWORD dwSize; int nChannel; /// ?????, ??????????????, -1???? } NET_IN_RADIOMETRY_FETCH; ///@brief CLIENT_RadiometryFetch ???? typedef struct tagNET_OUT_RADIOMETRY_FETCH { DWORD dwSize; int nStatus; /// 0: ???, 1: ????, 2: ???????? } NET_OUT_RADIOMETRY_FETCH; ///@brief ???????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryFetch(LLONG lLoginID, const NET_IN_RADIOMETRY_FETCH* pInParam, NET_OUT_RADIOMETRY_FETCH* pOutParam, int nWaitTime); ///@brief CLIENT_GetHeatMapsDirectly ??? typedef struct tagNET_IN_GET_HEATMAPS_INFO { DWORD dwSize; int nChannel; /// ????? } NET_IN_GET_HEATMAPS_INFO; ///@brief CLIENT_GetHeatMapsDirectly ???? typedef struct tagNET_OUT_GET_HEATMAPS_INFO { DWORD dwSize; NET_RADIOMETRY_METADATA stMetaData; /// ????? DWORD dwMaxDataBufLen; /// ???????????? pbDataBuf ?????, ???????? BYTE *pbDataBuf; /// ????????????(???????????,??????????????????????,??????????????????),???????????? DWORD dwRetDataBufLen; /// ?????????????????????????? BYTE byReserved[4]; /// ?????? } NET_OUT_GET_HEATMAPS_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetHeatMapsDirectly(LLONG lLoginID, const NET_IN_GET_HEATMAPS_INFO* pInParam, NET_OUT_GET_HEATMAPS_INFO* pOutParam, int nWaitTime); ///@brief ????????????????? ///@param[in]pRadiometryData [IN] ???????? ?? fRadiometryAttachCB ??? ///@param[out]pGrayImg [IN, OUT] ????????????????????? /// ???????????????????? /// ?????b???????????????????? ?????????*sizeof(unsigned short)?? /// ???????????? unsigned short ????????????????????????????????? 0 ~ 16383???? /// ????????????????????????????????? ///@param[out] pTempForPixels [IN, OUT] ??????????????? /// ??????????,????,??????? /// ?????b???????????????????? ?????????*sizeof(float)?? /// ???????????? float ???????????????????????????? /// ????????????????????????????????? ///@return TRUE ?????FALSE ??? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryDataParse(const NET_RADIOMETRY_DATA* pRadiometryData, unsigned short* pGrayImg, float* pTempForPixels); ///@brief CLIENT_GetRadiometryYImage ??? typedef struct tagNET_IN_RADIOMETRY_Y_IMAGE { DWORD dwSize; int nChannel; /// ????? }NET_IN_RADIOMETRY_Y_IMAGE; ///@brief CLIENT_GetRadiometryYImage ???? typedef struct tagNET_OUT_RADIOMETRY_Y_IMAGE { DWORD dwSize; UINT nWidth; /// ???? double PTS; /// ????(?????????) UINT nHeight; /// ???? char* pbDataBuf; /// Y???????????????????????????Buflen?? int nBufLen; /// pbDataBuf???? int nBufRet; /// ?????????? }NET_OUT_RADIOMETRY_Y_IMAGE; ///@brief ???????????????Y???? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRadiometryYImage(LLONG lLoginID, const NET_IN_RADIOMETRY_Y_IMAGE* pInParam, NET_OUT_RADIOMETRY_Y_IMAGE* pOutParam,int nWaitTime); ///@brief CLIENT_GetRadiometryCurrentHotColdSpotInfo ??? typedef struct tagNET_IN_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO { DWORD dwSize; int nChannel; /// ????????????????????? } NET_IN_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO; ///@brief ???????????????????????????? typedef struct tagNET_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO { NET_POINT stuHotPoint; /// ???????????????0~8191?? NET_POINT stuColdPoint; /// ???????????????0~8191?? float fHotSpotValue; /// ????????????????? float fColdSpotValue; /// ????????????????? int nTemperatrueUnit; /// ????????0:????? 1??????? BYTE byReserved[256]; /// ??????? } NET_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO; ///@brief CLIENT_GetRadiometryCurrentHotColdSpotInfo ???? typedef struct tagNET_OUT_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO { DWORD dwSize; NET_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO stuCurrentHotColdSpotInfo; /// ?????????????????????????????????? } NET_OUT_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO; ///@brief ????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryGetCurrentHotColdSpotInfo(LLONG lLoginID, const NET_IN_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO* pInParam, NET_OUT_RADIOMETRY_CURRENTHOTCOLDSPOT_INFO* pOutParam, int nWaitTime); #define MAX_RADIOMETRY_TEMPER_NUM 32 /// ???????????????? #define MAX_COORDINATE_NUM 8 /// ??????????? ///@brief ?????????? typedef enum tagEM_RADIOMETRY_QUERY_TYPE { EM_RADIOMETRY_QUERY_TYPE_UNKNOWN, /// ??? EM_RADIOMETRY_QUERY_TYPE_SPOT, /// ?? EM_RADIOMETRY_QUERY_TYPE_AREA, /// ???? EM_RADIOMETRY_QUERY_TYPE_LINE, /// ?? } EM_RADIOMETRY_QUERY_TYPE; ///@brief ?????? typedef struct tagNET_QUERY_TEMPER_INFO { float fTemperAve; /// ?????? float fTemperMax; /// ??????? float fTemperMin; /// ??????? BYTE byReserved[128]; /// ??????? } NET_QUERY_TEMPER_INFO; ///@brief ???????????? typedef struct tagNET_RADIOMETRY_QUERY_INFO { NET_TIME stuTime; /// ?????? int nPresetId; /// ?????? int nRuleId; /// ?????? EM_RADIOMETRY_QUERY_TYPE emQueryType; /// ??????? char szName[MAX_COMMON_STRING_64]; /// ????????? NET_POINT stuCoordinate[MAX_COORDINATE_NUM]; /// ???????????? int nChannel; /// ????? NET_TEMPERATURE_UNIT emTemperatureUnit; /// ?????? NET_QUERY_TEMPER_INFO stuQueryTemperInfo; /// ?????? BYTE byReserved[256]; /// ??????? } NET_RADIOMETRY_QUERY_INFO; ///@brief ??????????? typedef struct tagNET_RADIOMETRY_TEMPER_DATA { int nRadiometryTemperNum; /// ?????????????? NET_RADIOMETRY_QUERY_INFO stuRadiometryTemperInfo[MAX_RADIOMETRY_TEMPER_NUM]; /// ?????????? BYTE byReserved[512]; /// ??????? } NET_RADIOMETRY_TEMPER_DATA; ////////////////////////////////////////////////////////////////////// ///@brief ???????????????????? ///@param[out] LLONG lAttachTemperHandle [OUT] ??????, CLIENT_RadiometryAttachTemper ?????? ///@param[out] NET_RADIOMETRY_TEMPER_DATA* pBuf [OUT] ??????????? ///@param[out] int nBufLen [OUT] ????????? ///@param[in] LDWORD dwUser ??????? ///@return ?? //////////////////////////////////////////////////////////////////////// typedef void (CALLBACK *fRadiometryAttachTemperCB)(LLONG lAttachTemperHandle, NET_RADIOMETRY_TEMPER_DATA* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_RadiometryAttachTemper ??? typedef struct tagNET_IN_RADIOMETRY_ATTACH_TEMPER { DWORD dwSize; /// ??????? int nChannel; /// ????? fRadiometryAttachTemperCB cbNotify; /// ???????????? LDWORD dwUser; /// ??????? } NET_IN_RADIOMETRY_ATTACH_TEMPER; ///@brief CLIENT_RadiometryAttachTemper ???? typedef struct tagNET_OUT_RADIOMETRY_ATTACH_TEMPER { DWORD dwSize; } NET_OUT_RADIOMETRY_ATTACH_TEMPER; ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RadiometryAttachTemper(LLONG lLoginID, const NET_IN_RADIOMETRY_ATTACH_TEMPER* pInParam, NET_OUT_RADIOMETRY_ATTACH_TEMPER* pOutParam, int nWaitTime); ///@brief ?????????????????,lAttachTemperHandle?? CLIENT_RadiometryAttachTemper ?????? ///@param[in] lAttachTemperHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryDetachTemper(LLONG lAttachTemperHandle); ///@brief CLIENT_RadiometryGetRandomRegionTemper ??? typedef struct tagNET_IN_RADIOMETRY_RANDOM_REGION_TEMPER { DWORD dwSize; /// ??????? int nChannel; /// ????? int nPointNum; /// ??????????? NET_POINT stuPolygon[8]; /// ?????????????, 8192????? } NET_IN_RADIOMETRY_RANDOM_REGION_TEMPER; ///@brief ?????????????????? typedef struct tagNET_RADIOMETRY_REGION_TEMP_INFO { EM_TEMPERATURE_UNIT emTemperatureUnit; /// ?????? int nTemperAver; /// ??????????????????????,?????0.01,????100?? int nTemperMax; /// ???????????????????????,?????0.01,????100?? int nTemperMin; /// ???????????????????????,?????0.01,????100?? NET_POINT stuTemperMaxPoint; /// ???????????????????????,8192????? NET_POINT stuTemperMinPoint; /// ???????????????????????,8192????? BYTE byReserved[256]; /// ??????? } NET_RADIOMETRY_REGION_TEMP_INFO; ///@brief CLIENT_RadiometryGetRandomRegionTemper ???? typedef struct tagNET_OUT_RADIOMETRY_RANDOM_REGION_TEMPER { DWORD dwSize; /// ??????? NET_RADIOMETRY_REGION_TEMP_INFO stuRegionTempInfo; /// ?????????????????? } NET_OUT_RADIOMETRY_RANDOM_REGION_TEMPER; ///@brief ????????????????, pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryGetRandomRegionTemper(LLONG lLoginID, const NET_IN_RADIOMETRY_RANDOM_REGION_TEMPER* pInParam, NET_OUT_RADIOMETRY_RANDOM_REGION_TEMPER* pOutParam, int nWaitTime); ///@brief CLIENT_IntelliVideoFusionConvertPointIr2Vis ??? typedef struct tagNET_IN_INTELLIVIDEOFUSION_CONVERT_IR_TO_VIS { DWORD dwSize; /// ??????? NET_UINT_POINT stuIrInPoint; /// ?????????????????????????8192????? } NET_IN_INTELLIVIDEOFUSION_CONVERT_IR_TO_VIS; ///@brief CLIENT_IntelliVideoFusionConvertPointIr2Vis ???? typedef struct tagNET_OUT_INTELLIVIDEOFUSION_CONVERT_IR_TO_VIS { DWORD dwSize; /// ??????? NET_UINT_POINT stuVisOutPoint; /// ??????????????????????????????8192???????[0,0]??????????? } NET_OUT_INTELLIVIDEOFUSION_CONVERT_IR_TO_VIS; ///@brief ???????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IntelliVideoFusionConvertPointIr2Vis(LLONG lLoginID, const NET_IN_INTELLIVIDEOFUSION_CONVERT_IR_TO_VIS* pInParam, NET_OUT_INTELLIVIDEOFUSION_CONVERT_IR_TO_VIS* pOutParam, int nWaitTime); ///@brief CLIENT_IntelliVideoFusionConvertPointVis2Ir ??? typedef struct tagNET_IN_INTELLIVIDEOFUSION_CONVERT_VIS_TO_IR { DWORD dwSize; /// ??????? NET_UINT_POINT stuVisInPoint; /// ?????????????????????????8192????? } NET_IN_INTELLIVIDEOFUSION_CONVERT_VIS_TO_IR; ///@brief CLIENT_IntelliVideoFusionConvertPointVis2Ir ???? typedef struct tagNET_OUT_INTELLIVIDEOFUSION_CONVERT_VIS_TO_IR { DWORD dwSize; /// ??????? NET_UINT_POINT stuIrOutPoint; /// ???????????????????????????????8192???????[0,0]??????????? } NET_OUT_INTELLIVIDEOFUSION_CONVERT_VIS_TO_IR; ///@brief ???????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IntelliVideoFusionConvertPointVis2Ir(LLONG lLoginID, const NET_IN_INTELLIVIDEOFUSION_CONVERT_VIS_TO_IR* pInParam, NET_OUT_INTELLIVIDEOFUSION_CONVERT_VIS_TO_IR* pOutParam, int nWaitTime); ////////////////////////////////////////////////////////////////////// ///@brief ?????????? ////////////////////////////////////////////////////////////////////// ///@brief ????????????????? typedef struct tagNET_IN_SIM_CARD_FLUX_INFO { DWORD dwSize; /// ??????? int nCardIndex; /// sim??? ??0??? }NET_IN_SIM_CARD_FLUX_INFO; #define NET_FLUX_RECORD_MAX_NUM 7 /// ?????????????? ///@brief ??????????? typedef struct tagNET_SIM_CARD_FLUX_RECORD { NET_TIME stuDate; /// ???? UINT nDaySendFlux; /// ???????????? Uint32??????0.1kb UINT nDayRecvFlux; /// ???????????? Uint32??????0.1kb BYTE byReserved[512]; /// ??????? }NET_SIM_CARD_FLUX_RECORD; ///@brief ???????????????????? typedef struct tagNET_OUT_SIM_CARD_FLUX_INFO { DWORD dwSize; /// ??????? UINT nTotalFlux; /// ???????=????????+???????? Uint32??????0.1kb UINT nSendFlux; /// ???????? Uint32??????0.1kb UINT nRecvFlux; /// ???????? Uint32??????0.1kb NET_TIME stuTime; /// ????????????? int nRecordNum; /// ??????? ???????????? NET_RECORD_MAX_NUM NET_SIM_CARD_FLUX_RECORD stuRecord[NET_FLUX_RECORD_MAX_NUM]; /// ??????????????? UINT nLastMonthTotalFlux; /// ??????????? Uint32??????0.1kb }NET_OUT_SIM_CARD_FLUX_INFO; ///@brief ???SIM?????????,pNetDataIn??pNetDataOut???????????? ///@param[in] lLoginID ?????? ///@param[in] pNetDataIn ??????????, ??????????????????? ///@param[out] pNetDataOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSimCardFlux(LLONG lLoginID,const NET_IN_SIM_CARD_FLUX_INFO* pNetDataIn,NET_OUT_SIM_CARD_FLUX_INFO* pNetDataOut,int nWaitTime = 1000); ///@brief ???????????????????,pNetDataIn??pNetDataOut???????????? ///@param[in] lLoginID ?????? ///@param[in] pNetDataIn ??????????, ??????????????????? ///@param[out] pNetDataOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDoorWorkMode(LLONG lLoginID,const NET_IN_CTRL_ACCESS_SET_DOOR_WORK_MODE* pNetDataIn,NET_OUT_CTRL_ACCESS_SET_DOOR_WORK_MODE* pNetDataOut,int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ??????LED????,pInParam??pOutParam????????????,????emType????????,????????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInParam ??????????, ????????????,????emType????????,??????????????????? ///@param[out] pOutParam ??????????, ????????????,????emType????????,??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ControlCabinLED(LLONG lLoginID, EM_CABIN_LED_CONTROL_TYPE emType,const void *pInParam, void* pOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); #define NET_SELECT_UPDATE_LOCK_MAX_NUM 32 /// ???????????????????? ///@brief ???????????????????(???) typedef struct tagNET_IN_SELECT_UPDATE_LOCK_INFO { DWORD dwSize; int nChannelNum; /// ?????????????????? int nChannel[NET_SELECT_UPDATE_LOCK_MAX_NUM]; /// ????????????? }NET_IN_SELECT_UPDATE_LOCK_INFO; ///@brief ???????????????????(????) typedef struct tagNET_OUT_SELECT_UPDATE_LOCK_INFO { DWORD dwSize; }NET_OUT_SELECT_UPDATE_LOCK_INFO; ///@brief ?????????????????????????,pNetDataIn??pNetDataOut???????????? ///@param[in] lLoginID ?????? ///@param[in] pNetDataIn ??????????, ??????????????????? ///@param[out] pNetDataOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SelectLockToUpdate(LLONG lLoginID,const NET_IN_SELECT_UPDATE_LOCK_INFO* pNetDataIn,NET_OUT_SELECT_UPDATE_LOCK_INFO* pNetDataOut,int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ????????? typedef enum tagEM_AUTHORITY_SUB_TYPE { EM_AUTHORITY_SUB_TYPE_UNKNOWN, /// Unknown EM_AUTHORITY_SUB_TYPE_SHUT_DOWN, /// ?????? EM_AUTHORITY_SUB_TYPE_MONITOR, /// ???????????? EM_AUTHORITY_SUB_TYPE_MONITOR_FOR_CHANNEL, /// ???????? EM_AUTHORITY_SUB_TYPE_REPLAY, /// ?????????? EM_AUTHORITY_SUB_TYPE_REPLAY_FOR_CHANNEL, /// ?????? EM_AUTHORITY_SUB_TYPE_BACKUP, /// ?????????? EM_AUTHORITY_SUB_TYPE_MHARDISK, /// ?????? EM_AUTHORITY_SUB_TYPE_MPTZ, /// ?????X??Y??Z???????????????????????HasPtz???????HasPtz?false??????????? EM_AUTHORITY_SUB_TYPE_ACCOUNT, /// ?????? EM_AUTHORITY_SUB_TYPE_QUERY_LOG, /// ?????? EM_AUTHORITY_SUB_TYPE_DEL_LOG, /// ?????? EM_AUTHORITY_SUB_TYPE_SYS_UPDATE, /// ?????? EM_AUTHORITY_SUB_TYPE_AUTO_MAINTAIN, /// ?????? EM_AUTHORITY_SUB_TYPE_GENERAL_CONF, /// ??????? EM_AUTHORITY_SUB_TYPE_ENCODE_CONF, /// ???????? EM_AUTHORITY_SUB_TYPE_RECORD, /// ?????????????????(RecordMode????) EM_AUTHORITY_SUB_TYPE_RECORD_CONF, /// ?????????????????????(Record????) EM_AUTHORITY_SUB_TYPE_COM_CONF, /// ???????? EM_AUTHORITY_SUB_TYPE_NET_CONF, /// ???????? EM_AUTHORITY_SUB_TYPE_ALARM, /// ???????IO???? EM_AUTHORITY_SUB_TYPE_ALARM_CONF, /// ???????? EM_AUTHORITY_SUB_TYPE_VIDEO_CONFIG, /// ????????????? EM_AUTHORITY_SUB_TYPE_PTZ_CONFIG, /// ??????? EM_AUTHORITY_SUB_TYPE_OUTPUT_CONFIG, /// ?????????? EM_AUTHORITY_SUB_TYPE_VIDEO_INPUT_CONFIG, /// ??????????? EM_AUTHORITY_SUB_TYPE_DEFAULT_CONFIG, /// ?????? EM_AUTHORITY_SUB_TYPE_BK_CONFIG, /// ??????????????????? EM_AUTHORITY_SUB_TYPE_INTELLI_CONFIG, /// ???????? EM_AUTHORITY_SUB_TYPE_REMOTE_DEVICE, /// ????????????? EM_AUTHORITY_SUB_TYPE_ATM_POS, /// ??????? EM_AUTHORITY_SUB_TYPE_OFFLINE_LOGINED_USER, /// ?????? EM_AUTHORITY_SUB_TYPE_AUDIO_AUTH, /// ?????????????? EM_AUTHORITY_SUB_TYPE_SPOT_SET, /// ?????????????? EM_AUTHORITY_SUB_TYPE_TVSET, /// ???????TV?????? EM_AUTHORITY_SUB_TYPE_IPSAN, /// IPSAN???? EM_AUTHORITY_SUB_TYPE_CONFIG, /// ?????????????????????????? EM_AUTHORITY_SUB_TYPE_ARMING, /// ???? EM_AUTHORITY_SUB_TYPE_DISARM, /// ???? EM_AUTHORITY_SUB_TYPE_BYPASS, /// ??????????????? EM_AUTHORITY_SUB_TYPE_BYPASS_PARTIAL, /// ??????????????? EM_AUTHORITY_SUB_TYPE_ALARM_BELL, /// ??????? EM_AUTHORITY_SUB_TYPE_ALARM_CONFIRM_PARTIAL, /// ??????????????? EM_AUTHORITY_SUB_TYPE_DEFENCE_CONFIG_PARTIAL, /// ?????????????????? EM_AUTHORITY_SUB_TYPE_ALARM_OUT_PARITAL, /// ?????????????????? EM_AUTHORITY_SUB_TYPE_TALK, /// ??????? EM_AUTHORITY_SUB_TYPE_WIRELESS_CONFIG, /// ?????????? EM_AUTHORITY_SUB_TYPE_MOBILE_CONFIG, /// ?????????? EM_AUTHORITY_SUB_TYPE_AUDIO_DETECT_CONFIG, /// ?????????? EM_AUTHORITY_SUB_TYPE_NET_PREVIEW_FOR_CHANNEL, /// ?????? EM_AUTHORITY_SUB_TYPE_REBOOT, /// ??????? EM_AUTHORITY_SUB_TYPE_SYS_LENS, /// ??????????????????????????????????????????????????? EM_AUTHORITY_SUB_TYPE_RAIN_BRUSH_CONFIG, /// ??????? EM_AUTHORITY_SUB_TYPE_LIGHTING_CONFIG, /// ??????? EM_AUTHORITY_SUB_TYPE_ACCESS_CONTROL, /// ????????????????? EM_AUTHORITY_SUB_TYPE_ACCESS_CONTROL_PARTIAL, /// ????????????????? EM_AUTHORITY_SUB_TYPE_DECODE_TOUR, /// ??????? EM_AUTHORITY_SUB_TYPE_VIDEO_OUT, /// ?????? EM_AUTHORITY_SUB_TYPE_PTZ_FOR_CHANNEL, /// ?????????? EM_AUTHORITY_SUB_TYPE_MODIFY_LANGUANGE, /// ??????? EM_AUTHORITY_SUB_TYPE_MODIFY_VIDEO, /// ????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_CONTROL, /// ???????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_SCHEDULE, /// ???????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_MODIFY_SCHEDULE, /// ??????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_INTELL_PARAM, /// ?????????? EM_AUTHORITY_SUB_TYPE_CAMERA_PERIPHERAL, /// ?????????k?????????????????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_DOWNLOAD_MEDIA_FILE, /// ????????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_MODIFY_MEDIA_FILE, /// ???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_DELETE_MEDIA_FILE, /// ????????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_BACKUP_TO_USB, /// ?????????????????????USB?????Backup???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_BACKUP_TO_FTP, /// ???????????????FTP??????????Backup???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_EXPORT_ACCONUT, /// ??????????????Account???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_QUERY_ACCOUNT, /// ??????????Account???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_MODIFY_ACCOUNT, /// ??????????Account???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_RESET_PASSWORD, /// ???????????Account???????????? EM_AUTHORITY_SUB_TYPE_COURSE_RECORD_AUTHORITY, /// ??????????Account???????????? }EM_AUTHORITY_SUB_TYPE; ///@brief ????????? typedef enum tagEM_AUTHORITY_MAIN_TYPE { EM_AUTHORITY_MAIN_TYPE_UNKNOWN, /// Unknown EM_AUTHORITY_MAIN_TYPE_AUTH_USER_MAG, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_SYS_CFG, /// ?????? EM_AUTHORITY_MAIN_TYPE_AUTH_OFFLINE_USER, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_DF_UD, /// ???&???? EM_AUTHORITY_MAIN_TYPE_AUTH_PTZ_CTR, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_SYS_INFO, /// ????? EM_AUTHORITY_MAIN_TYPE_AUTH_MANU_CTR, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_BACKUP, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_COLOR_SET, /// ?????? EM_AUTHORITY_MAIN_TYPE_AUTH_STORE_CFG, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_EVENT_CFG, /// ??????? EM_AUTHORITY_MAIN_TYPE_AUTH_NET_CFG, /// ???????? EM_AUTHORITY_MAIN_TYPE_AUTH_RMT_DEVICE, /// ???????? EM_AUTHORITY_MAIN_TYPE_AUTH_DEL_LOG, /// ?????? EM_AUTHORITY_MAIN_TYPE_AUTH_SHUTDOWN, /// ?????? }EM_AUTHORITY_MAIN_TYPE; #define NET_AUTHORITY_CLASS_MAX_NUM 256 /// ?????????????? ///@brief ?????????? typedef struct tagNET_AUTH_CLASSIFY_INFO { EM_AUTHORITY_MAIN_TYPE emMainAuthority; /// ????????? EM_AUTHORITY_SUB_TYPE emSubAuthority; /// ????????? int nChannel; /// ????? /// emSubAuthority?EM_AUTHORITY_SUB_TYPE_MONITOR_FOR_CHANNEL,EM_AUTHORITY_SUB_TYPE_REPLAY_FOR_CHANNEL, /// EM_AUTHORITY_SUB_TYPE_NET_PREVIEW_FOR_CHANNEL,EM_AUTHORITY_SUB_TYPE_PTZ_FOR_CHANNEL ?????????? /// BYTE byReserved[128]; /// ??????? }NET_AUTH_CLASSIFY_INFO; ///@brief ???????????????????? typedef struct tagNET_IN_GET_AUTHORITY_INFO_LIST { DWORD dwSize; }NET_IN_GET_AUTHORITY_INFO_LIST; ///@brief ????????????????????? typedef struct tagNET_OUT_GET_AUTHORITY_INFO_LIST { DWORD dwSize; int nRetAuthInfoCount; /// ??????????????????? NET_AUTH_CLASSIFY_INFO stuAuthInfo[NET_AUTHORITY_CLASS_MAX_NUM];/// ??????????????????? }NET_OUT_GET_AUTHORITY_INFO_LIST; ///@brief ?????????????????,pNetDataIn??pNetDataOut???????????? ///@param[in] lLoginID ?????? ///@param[in] pNetDataIn ??????????, ??????????????????? ///@param[out] pNetDataOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAuthClassifyList(LLONG lLoginID,const NET_IN_GET_AUTHORITY_INFO_LIST* pNetDataIn,NET_OUT_GET_AUTHORITY_INFO_LIST* pNetDataOut,int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ////////////////////////////////////////////////////////////////////// ///@brief ??????? ////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// ///@brief ??????? typedef enum { ABILITY_DYNAMIC_CONNECT = 1, /// ????????????????,???????????BOOL ABILITY_WATERMARK_CFG = 17, /// ????????????????????DH_WATERMAKE_EN ABILITY_WIRELESS_CFG = 18, /// wireless????????,????????DH_WIRELESS_EN ABILITY_DEVALL_INFO = 26, /// ???????????????????????DH_DEV_ENABLE_INFO ABILITY_CARD_QUERY = 0x0100, /// ????????????????????DH_CARD_QUERY_EN ABILITY_MULTIPLAY = 0x0101, /// ???????????,????????DH_MULTIPLAY_EN ABILITY_QUICK_QUERY_CFG = 0x0102, /// ????????????????????????DH_QUICK_QUERY_CFG_EN ABILITY_INFRARED = 0x0121, /// ???????????,????????DH_WIRELESS_ALARM_INFO ABILITY_TRIGGER_MODE = 0x0131, /// ???????????????????????????????int ABILITY_DISK_SUBAREA = 0x0141, /// ????????????????????????DH_DISK_SUBAREA_EN ABILITY_DSP_CFG = 0x0151, /// ???DSP??????????????DH_DSP_CFG ABILITY_STREAM_MEDIA = 0x0161, /// ???SIP,RTSP??????????????DH_STREAM_MEDIA_EN ABILITY_INTELLI_TRACKER = 0x0171, /// ????????????????????????DH_INTELLI_TRACKER_EN ABILITY_DOWNLOAD_BY_ALLSPEED = 0x0181,/// ??????????????????????????NET_DOWNLOAD_BY_ALLSPEED_EN } DH_SYS_ABILITY; ////////////////////////////////////////////////////////////////////// ///@brief ????????????? typedef enum { EN_FTP = 0, /// FTP ????,1???????????? 2??????????? EN_SMTP, /// SMTP ????,1???????????????? 2???????????? 3:????????????? EN_NTP, /// NTP ??????1??????????? EN_AUTO_MAINTAIN, /// ?????? ??????1?????? 2????? 3:?????? EN_VIDEO_COVER, /// ??????? ??????1??????????? EN_AUTO_REGISTER, /// ??????? ??????1??????sdk??????? EN_DHCP, /// DHCP ??????1??DHCP EN_UPNP, /// UPNP ??????1??UPNP EN_COMM_SNIFFER, /// ??????? ??????1:CommATM EN_NET_SNIFFER, /// ??????? ?????? 1??NetSniffer EN_BURN, /// ??????? ??????1?????????? EN_VIDEO_MATRIX, /// ??????? ??????1??????????????? 2:??????SPOT??????? 3:??????HDMI??????? EN_AUDIO_DETECT, /// ?????? ??????1?????????????? EN_STORAGE_STATION, /// ??????? ??????1??Ftp??????(Ips) 2??SMB 3??NFS 4??ISCSI 16??DISK 17??U?? EN_IPSSEARCH, /// IPS?????? ??????1??IPS?????? EN_SNAP, /// ?? ??????1???????2?????3???????4??????????5????????? 6:????????? EN_DEFAULTNIC, /// ????????????? ???? 1????? EN_SHOWQUALITY, /// CBR????????????????? ???? 1:??? EN_CONFIG_IMEXPORT, /// ????????????????? ???? 1:??? EN_LOG, /// ??????????????????? ???? 1????? EN_SCHEDULE, /// ??????????????? ???? 1:???? 2:?? 3:??????? EN_NETWORK_TYPE, /// ?????????????? 1:????? 2:??????? 3:CDMA/GPRS 4:CDMA/GPRS?????????? EN_MARK_IMPORTANTRECORD, /// ????????? ????:1?????????????? EN_ACFCONTROL, /// ???????? ??????1????????????, 2:????????????????????(????????),????????ACF???????? EN_MULTIASSIOPTION, /// ?????????? ??????1???????????????, 2:?????????????????????????? EN_DAVINCIMODULE, /// ???????? ??????1,??????????? 2:???I???????? EN_GPS, /// GPS???? ??????1??Gps????????,2:GPS???,3:????????GPS??????????????UUID EN_MULTIETHERNET, /// ??????????? ???? 1????? EN_LOGIN_ATTRIBUTE, /// Login???? ??????1?????Login?????? EN_RECORD_GENERAL, /// ?????? ??????1,??????2?????????3???????????4??????????5?????????6??????????7??????????????8???????????????????????? EN_JSON_CONFIG, /// Json???????:??????1???Json???, 2: ???F6??NAS????, 3: ???F6??Raid????, 4?????F6??MotionDetect????, 5?????????????????(V3),???F6??????? EN_HIDE_FUNCTION, /// ???????????????1,????PTZ???????, 2: ????3G???????????? EN_DISK_DAMAGE, /// ????????????????: ??????1,??????????????????? EN_PLAYBACK_SPEED_CTRL, /// ???????????????:????:1,???????? EN_HOLIDAYSCHEDULE, /// ??????????????:????:1,?????????????? EN_FETCH_MONEY_TIMEOUT, /// ATM????? EN_BACKUP_VIDEO_FORMAT, /// ??????????,??????1:DAV, 2:ASF EN_QUERY_DISK_TYPE, /// ???????????? EN_CONFIG_DISPLAY_OUTPUT, /// ??????????????VGA???????,????: 1:????????????? EN_SUBBITRATE_RECORD_CTRL, /// ????????????????????, ??????1-???????????????? EN_IPV6, /// ???IPV6????, ??????1-IPV6???? EN_SNMP, /// SNMP??????????????? EN_QUERY_URL, /// ????????URL???, ????: 1-???????URL??? EN_ISCSI, /// ISCSI??Internet?????????????????? EN_RAID, /// ???Raid???? EN_HARDDISK_INFO, /// ?????????F5??? EN_PICINPIC, /// ???????????? ????:1,??????????; 2,???????????????????????????;3,????????????????,???????????????? EN_PLAYBACK_SPEED_CTRL_SUPPORT, /// ? EN_PLAYBACK_SPEED_CTRL ,??????????? EN_LF_XDEV, /// ???24??32??64??LF-X???,??????????????????????????? EN_DSP_ENCODE_CAP, /// F5 DSP??????????? EN_MULTICAST, /// ?????????? EM_NET_LIMIT, /// ???????????????,????,1-???????????????????,2-?????????????????,4-??????????????,8-?????????????????, 16-???????????? EM_COM422, /// ????422 EM_PROTOCAL_FRAMEWORK, /// ???????????????????????listMethod(),listService()??,???F6??????? EM_WRITE_DISK_OSD, /// ???OSD????, ????, 1-???OSD???????? EM_DYNAMIC_MULTI_CONNECT, /// ?????????, ????, 1-?????????????? EM_CLOUDSERVICE, /// ?????,????,1-??????????? EM_RECORD_INFO, /// ?????????, ????, 1-?????????????, 2-???????????? EN_DYNAMIC_REG, /// ???????????,????,1-????????????, 2-?????????????????SDK????IP,port??0?????? EM_MULTI_PLAYBACK, /// ???????????,???,1-????????????? EN_ENCODE_CHN, /// ???????, ????, 1-??????????, 2-????????????????? EN_SEARCH_RECORD, /// ?????, ????, 1-???????????, 2-???????????????? EN_UPDATE_MD5, /// ????????????????????MD5???,1-???MD5???2-??????????? EN_PROTOCOL3ToF6, /// ??????F6,??????1-Log???????2.DeleteFile ????????????????configManager.deleteFile???? EN_COMPOSECHANNEL, /// ??????, 1-?????? EN_PLAYBACK, /// ????????????? 1-????????????? EN_3EVENTINTACT, /// ???????????????????????????? }EM_DEVICE_FUNC_LIST; ///@brief ????????????? typedef struct { DWORD IsFucEnable[512]; /// ??????????????,????????????????,???????????? } DH_DEV_ENABLE_INFO; ////////////////////////////////////////////////////////////////////// ///@brief ?????????????? typedef struct { char IsCardQueryEnable; char iRev[3]; } DH_CARD_QUERY_EN; ////////////////////////////////////////////////////////////////////// ///@brief wireless???????? typedef struct { char IsWirelessEnable; char iRev[3]; } DH_WIRELESS_EN; ////////////////////////////////////////////////////////////////////// ///@brief ????????????? typedef struct { char isSupportWM; /// 1 ????0 ????? char supportWhat; /// 0??????????1????????2??????????????????? char reserved[2]; } DH_WATERMAKE_EN; ////////////////////////////////////////////////////////////////////// ///@brief ??????????????? typedef struct { int nEnable; /// 1 ????0 ????? DWORD dwMultiPlayMask; /// ??????????? char reserved[4]; /// ???? } DH_MULTIPLAY_EN; ////////////////////////////////////////////////////////////////////// ///@brief ??????????????? typedef struct { BOOL bSupport; /// ?????? int nAlarmInCount; /// ??????? int nAlarmOutCount; /// ??????? int nRemoteAddrCount; /// ????????? BYTE reserved[32]; } DH_WIRELESS_ALARM_INFO; ////////////////////////////////////////////////////////////////////// ///@brief ?????????????????? typedef struct { BOOL bSupported; /// ???????????????? int nSupportNum; /// ??????????? BYTE bReserved[32]; /// ??????? } DH_DISK_SUBAREA_EN; ///@brief DSP???????,??DSP??????????2?????? typedef struct { BYTE bMainFrame[32]; /// ??????????(CAPTURE_SIZE)?????,???????????????????????,?????????????,????0. BYTE bExtraFrame_1[32]; /// ??????1,????bMainFrame BYTE bReserved[128]; /// ???????????2??3. } DH_DSP_CFG_ITEM; ///@brief ???DSP???? typedef struct { int nItemNum; /// DH_DSP_CFG_ITEM??????????,????????? DH_DSP_CFG_ITEM stuDspCfgItem[32]; /// ??????????? BYTE bReserved[128]; /// ???? } DH_DSP_CFG; ////////////////////////////////////////////////////////////////////// ///@brief ?????????????????? typedef struct { char IsQuickQueryEnable; /// 1??????????????????????,????????????????????????????????????????????????60S char iRev[3]; } DH_QUICK_QUERY_CFG_EN; ///@brief ???SIP,RTSP???? typedef struct { int nStreamType; /// 0,?? 1,SIP 2,RTSP BYTE bReserved[16]; /// ???? } DH_STREAM_MEDIA_EN; ///@brief ???????????????? typedef struct { char IsIntelliTrackerEnable; /// ????0???????????????????? BYTE bReserved[3]; }DH_INTELLI_TRACKER_EN; ///@brief ???????????????? typedef struct tagNET_DOWNLOAD_BY_ALLSPEED_EN { int nDownloadByAllSpeed; /// 0 ?????????????????????????? /// 1 ?????????????? /// 2 ???????????? BYTE bReserved[16]; }NET_DOWNLOAD_BY_ALLSPEED_EN; #define NET_MAX_COMPOSITE_CHANNEL 256 /// ???????????????????? ///@brief ?????????????????????, ???NET_COMPOSITE_CAPS typedef struct tagNET_IN_COMPOSITE_CAPS { DWORD dwSize; int nChannelCount; /// ?????????????? int nChannels[NET_MAX_COMPOSITE_CHANNEL]; /// ??????????????? int nLayoutX; /// ??????????? int nLayoutY; /// ???????????? } NET_IN_COMPOSITE_CAPS; ///@brief ?????????????????????, ???NET_COMPOSITE_CAPS typedef struct tagNET_OUT_COMPOSITE_CAPS { DWORD dwSize; int nSplitModeCount; /// ???????????? DH_SPLIT_MODE emSplitModes[DH_MAX_SPLIT_MODE_NUM]; /// ???????????? int nMaxFreeWindow; /// ?????? } NET_OUT_COMPOSITE_CAPS; #define MAX_REGISTER_ID_LEN (256) #define MAX_APP_ID_LEN (256) #define MAX_URL_LEN (1024) #define MAX_IOS_CERTIFICATE_LEN (1024 * 14) #define MAX_IOS_SECRET_KEY_LEN (512) #define MAX_MOBILE_CHANNEL_NUM (256) ///@brief ?????? typedef enum tagEM_MOBILE_SERVER_TYPE { EM_MOBILE_SERVER_TYPE_UNKNOWN, /// ??? EM_MOBILE_SERVER_TYPE_APPLE, /// Apple EM_MOBILE_SERVER_TYPE_ANDROID, /// Android EM_MOBILE_SERVER_TYPE_SDKCLOUD, } EM_MOBILE_SERVER_TYPE; ///@brief ????????????? typedef struct tagNET_PUSH_SERVER_INFO { char szAddress[MAX_URL_LEN]; /// ??? int nPort; /// ??? } NET_PUSH_SERVER_INFO; ///@brief ????????? typedef enum tagEM_EVENT_SUB_CODE { EM_EVENT_SUB_CODE_UNKNOWN = -1, /// ??? EM_EVENT_SUB_CODE_LOSS, /// Loss EM_EVENT_SUB_CODE_COVER, /// Cover EM_EVENT_SUB_CODE_FROZEN, /// Frozen EM_EVENT_SUB_CODE_LIGHT, /// Light EM_EVENT_SUB_CODE_DARK, /// Dark EM_EVENT_SUB_CODE_SCENECHANGE, /// SceneChange } EM_EVENT_SUB_CODE; ///@brief ???????? typedef struct tagNET_SUBSCRIBE_INFO { int nCode; /// ????? EM_EVENT_SUB_CODE emSubCode; /// ?????????, EM_EVENT_SUB_CODE_UNKNOWN????? /// ????VideoAbnormalDetection,AlarmLocal???????????????????????? int nChnNum; /// ????????????, ??????????????0 int nIndexs[MAX_MOBILE_CHANNEL_NUM]; /// ???????? char szNumber[DH_COMMON_STRING_16]; /// ????"CallNoAnswered "???????? /// ???????????????????????,??????,???????????????? /// CFG_CMD_MOBILE_PUSH_NOFITY_CFG????? char szSound[DH_COMMON_STRING_64]; /// ?????????????????????????????? char szIndexsExt[DH_COMMON_STRING_32][DH_COMMON_STRING_16]; ///??????????? } NET_SUBSCRIBE_INFO; ///@brief ???????????? typedef enum tagEM_PUSH_GATEWAY_TYPE { EM_PUSH_GATEWAY_TYPE_UNKNOWN, /// ??? EM_PUSH_GATEWAY_TYPE_APPLE_PUSH, /// ???????????, ApplePush EM_PUSH_GATEWAY_TYPE_ANDROID_SDKPUSH, /// ???????????, AndroidDahuaPush EM_PUSH_GATEWAY_TYPE_ANDROID_JPUSH, /// ???????????????, AndroidJPush EM_PUSH_GATEWAY_TYPE_ANDROID_GCM, /// ???GCM????, AndroidGCM } EM_PUSH_GATEWAY_TYPE; ///@brief ???push notification????, ???RegisterID???? typedef struct tagNET_MOBILE_PUSH_NOTIFY { DWORD dwSize; char szRegisterID[MAX_REGISTER_ID_LEN]; /// ?????Appple/ Android????????????,?????? EM_MOBILE_SERVER_TYPE emServerType; /// ?????? int nPeriodOfValidity; /// ???????,??????? char szAuthServerAddr[MAX_URL_LEN]; /// Android???????????? int nAuthServerPort; /// Android???????????? char szPushServerAddr[MAX_URL_LEN]; /// ????????????(????,????????,??????) /// ??????????????,????????????????????????????? int nPushServerPort; /// ???????????? NET_PUSH_SERVER_INFO stuPushServerMain; /// ?????????????, ??????????????,??????????,???????????????????? NET_PUSH_SERVER_INFO stuPushRedirectServer; /// ????????????? char szDevName[DH_COMMON_STRING_64]; /// ???????,???????????? char szDevID[DH_COMMON_STRING_64]; /// ??????,???????????? char szUser[DH_COMMON_STRING_64]; /// ???????? char szPassword[DH_COMMON_STRING_64]; /// ???? char szCertificate[MAX_IOS_CERTIFICATE_LEN]; /// ios??????,base64?????????,???????TLS????????? char szSecretKey[MAX_IOS_SECRET_KEY_LEN]; /// ios???,base64???????? int nSubScribeMax; /// ????????????, ???pstuSubscribes????????? int nSubScribeNum; /// ??????????????, ??????????? NET_SUBSCRIBE_INFO *pstuSubscribes; /// ????????,??????????????????sizeof(NET_SUBSCRIBE_INFO)*nSubScribeMax BYTE byReserved[4]; /// ?????????????????? BOOL bUserEx; /// ???????????????????? char szUserEx[256]; /// ????????????? } NET_MOBILE_PUSH_NOTIFY; ///@brief ????????????????????, CLIENT_DelMobilePushNotify typedef struct tagNET_MOBILE_PUSH_NOTIFY_DEL { DWORD dwSize; char szRegisterID[MAX_REGISTER_ID_LEN]; /// ?????Appple/ Android????????????,?????? } NET_MOBILE_PUSH_NOTIFY_DEL; ///@brief ???push notification????, ???RegisterID+AppID???? typedef struct tagNET_MOBILE_PUSH_NOTIFY_CFG { DWORD dwSize; char szRegisterID[MAX_REGISTER_ID_LEN]; /// ?????Appple/ Android????????????,?????? char szAppID[MAX_APP_ID_LEN]; /// ??????????????,???????? EM_MOBILE_SERVER_TYPE emServerType; /// ?????? EM_PUSH_GATEWAY_TYPE emPushGatewayType; /// ????????????, emServerType?EM_MOBILE_SERVER_TYPE_SDKCLOUD????? int nPeriodOfValidity; /// ???????,??????? char szAuthServerAddr[MAX_URL_LEN]; /// Android???????????? int nAuthServerPort; /// Android???????????? char szPushServerAddr[MAX_URL_LEN]; /// ???????????? /// ??????????????,????????????????????????????? int nPushServerPort; /// ???????????? char szDevName[DH_COMMON_STRING_64]; /// ???????,???????????? char szDevID[DH_COMMON_STRING_64]; /// ??????,???????????? char szUser[DH_COMMON_STRING_64]; /// ???????? char szPassword[DH_COMMON_STRING_64]; /// ???? char szCertificate[MAX_IOS_CERTIFICATE_LEN]; /// ios??????,base64?????????,???????TLS????????? char szSecretKey[MAX_IOS_SECRET_KEY_LEN]; /// ios???,base64???????? int nSubScribeMax; /// ????????????, ???pstuSubscribes????????? int nSubScribeNum; /// ??????????????, ??????????? NET_SUBSCRIBE_INFO *pstuSubscribes; /// ????????,??????????????????sizeof(NET_SUBSCRIBE_INFO)*nSubScribeMax NET_PUSH_SERVER_INFO stuPushServerMain; /// ?????????????, ??????????????,??????????,???????????????????? NET_PUSH_SERVER_INFO stuPushRedirectServer; /// ????????????? BYTE byReserved[4]; /// ?????????????????? BOOL bUserEx; /// ???????????????????? char szUserEx[256]; /// ????????????? } NET_MOBILE_PUSH_NOTIFY_CFG; ///@brief ???????? typedef struct tagNET_SUBSCRIBE_INFO_EX { char szCode[MAX_COMMON_STRING_64]; /// ????? char szSubCode[MAX_COMMON_STRING_64]; /// ????????? /// ????VideoAbnormalDetection,AlarmLocal???????????????????????? int nChnNum; /// ????????????, ??????????????0 int nIndexs[MAX_MOBILE_CHANNEL_NUM]; /// ???????? char szNumber[DH_COMMON_STRING_16]; /// ????"CallNoAnswered "???????? /// ???????????????????????,??????,???????????????? /// CFG_CMD_MOBILE_PUSH_NOFITY_CFG????? char szSound[DH_COMMON_STRING_64]; /// ?????????????????????????????? char szIndexsExt[DH_COMMON_STRING_32][DH_COMMON_STRING_16]; ///??????????? void* pstuCustomFilter; /// ??????, ??szCode?????????,?????????????????NULL /// ??szCode?"FaceComparision"??????????NET_CUSTOM_TILTER_OF_FACE_COMPARISION(??????????) BYTE byReserved[504]; /// ??????? } NET_SUBSCRIBE_INFO_EX; ///@brief ???push notification ?????? typedef struct tagNET_MOBILE_PUSH_NOTIFICATION_GENERAL_INFO { char szRegisterID[MAX_REGISTER_ID_LEN]; /// ?????Appple/ Android????????????,?????? char szAppID[MAX_APP_ID_LEN]; /// ??????????????,???????? EM_MOBILE_SERVER_TYPE emServerType; /// ?????? EM_PUSH_GATEWAY_TYPE emPushGatewayType; /// ????????????, emServerType?EM_MOBILE_SERVER_TYPE_SDKCLOUD????? int nPeriodOfValidity; /// ???????,??????? char szAuthServerAddr[MAX_URL_LEN]; /// Android???????????? int nAuthServerPort; /// Android???????????? /// ??????????????,????????????????????????????? char szDevName[DH_COMMON_STRING_64]; /// ???????,???????????? char szDevID[DH_COMMON_STRING_64]; /// ??????,???????????? char szUser[DH_COMMON_STRING_256]; /// ???????? char szCertificate[MAX_IOS_CERTIFICATE_LEN]; /// ios??????,base64?????????,???????TLS????????? char szSecretKey[MAX_IOS_SECRET_KEY_LEN]; /// ios???,base64???????? char szBindingUserName[DH_COMMON_STRING_64]; /// APP??????????????(???????????????????????????????????????????APP) int nSubScribeMax; /// ????????????, ???pstuSubscribes????????? int nSubScribeNum; /// ??????????????, ??????????? NET_SUBSCRIBE_INFO_EX *pstuSubscribes; /// ????????,??????????????????sizeof(NET_SUBSCRIBE_INFO)*nSubScribeMax NET_PUSH_SERVER_INFO stuPushServerMain; /// ?????????????, ??????????????,??????????,???????????????????? DH_TSECT stuAllEventPushTime[DH_N_WEEKS][DH_N_TSECT];/// ?????????????????7*6????????7??????????7?????????????????????????6???????????? /// ?????????????????1??????????????0?????????? BYTE byReserved[1024]; /// ??????? } NET_MOBILE_PUSH_NOTIFICATION_GENERAL_INFO; ///@brief ????????????????????, CLIENT_DelMobilePushNotify typedef struct tagNET_MOBILE_PUSH_NOTIFY_CFG_DEL { DWORD dwSize; char szRegisterID[MAX_REGISTER_ID_LEN]; /// ?????Appple/ Android????????????,?????? char szAppID[MAX_APP_ID_LEN]; /// ??????????????,???????? } NET_MOBILE_PUSH_NOTIFY_CFG_DEL; ///@brief ????????????????,???????????|??????? typedef enum tagEM_OPTTYPE_MOBILE_TYPE { OPTTYPE_MOBILE_DEVICE_ATTR =0x00000001, /// ??????? OPTTYPE_MOBILE_DEVICE_SN =0x00000002, /// ????????? OPTTYPE_MOBILE_DISK_INFO =0x00000004, /// ?????? OPTTYPE_MOBILE_DIGITAL_NUM =0x00000008, /// ??????????? OPTTYPE_MOBILE_ALARM_IO =0x00000010, /// ??????????? OPTTYPE_MOBILE_DEVICE_ABILITY =0x00000020, /// ?????? OPTTYPE_MOBILE_STATE_SOFTWARE =0x00001000, /// ?????????????APP??? }EM_OPTTYPE_MOBILE_TYPE; ///@brief SDK?????????????? typedef enum tagEmOptimizeType { EM_OPT_TYPE_DEFAULT = 0, /// ??????? EM_OPT_TYPE_MOBILE_V1 = 1, /// ????? EM_OPT_TYPE_MOBILE_OPTION????????????????????????????????? /// ?????????,??????????????????????????. EM_OPT_TYPE_P2P_NETPARAM_V1 = 2, /// P2P????????????pParam ? NET_PARAM* EM_OPT_TYPE_MOBILE_OPTION = 3, /// ????? EM_OPT_TYPE_MOBILE_V1??????????????????,??????????? /// ?????????, ????int, ??????????, ????????????????? EM_OPTTYPE_MOBILE_TYPE }EM_OPTIMIZE_TYPE; ///@brief CLIENT_FileStreamMotionMatch??????? typedef struct tagNET_IN_MOTIONMATCH_PARAM { DWORD dwSize; /// ??????? , dwSize ??w?? sizeof(NET_IN_MOTIONMATCH_PARAM) BOOL bFileName; /// ???????????????????????,???????????,???????????????stRecordInfo?? char szFileName[MAX_PATH]; /// ????? NET_RECORDFILE_INFO stuRecordInfo; /// ?????? int nRegionNum; /// ????????????? DH_POINT stuRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????????, ??????0~21, ??????0~17 } NET_IN_MOTIONMATCH_PARAM; ///@brief ???? typedef struct tagNET_TIME_BEGIN_END { NET_TIME stuBegin; /// ??? NET_TIME stuEnd; /// ???? } NET_TIME_BEGIN_END; #define NET_SMART_SEARTCH_TIME_SECTION_MAX (128) ///@brief CLIENT_FileStreamMotionMatch??????? typedef struct tagNET_OUT_MOTIONMATCH_PARAM { DWORD dwSize; /// ??????? , dwSize ??w?? sizeof(NET_OUT_MOTIONMATCH_PARAM) int nTimeNum; /// ?????????????? NET_TIME_BEGIN_END stuTime[NET_SMART_SEARTCH_TIME_SECTION_MAX]; /// ???? } NET_OUT_MOTIONMATCH_PARAM; ///@brief CLIENT_SnapPictureToFile?????????? typedef struct tagNET_IN_SNAP_PIC_TO_FILE_PARAM { DWORD dwSize; SNAP_PARAMS stuParam; /// ??????, ????mode????????????, ??????????????; ???????DVR, ???????????????????????? char szFilePath[MAX_PATH]; /// ??????????? }NET_IN_SNAP_PIC_TO_FILE_PARAM; ///@brief CLIENT_SnapPictureToFile?????????? typedef struct tagNET_OUT_SNAP_PIC_TO_FILE_PARAM { DWORD dwSize; char* szPicBuf; /// ??????,??????????,?????dwPicBufLen DWORD dwPicBufLen; /// ????????????, ????:??? DWORD dwPicBufRetLen; /// ???????????, ????:??? }NET_OUT_SNAP_PIC_TO_FILE_PARAM; ///@brief ???????????DH_ALARM_BUS_SHARP_TURN(??????????)???????????????? typedef struct tagALARM_BUS_SHARP_TURN_INFO { DWORD dwSize; NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME_EX stuTime; /// ?????????? int nAction; /// ???????, 1:??? 2:?? } ALARM_BUS_SHARP_TURN_INFO; ///@brief ???????????DH_ALARM_BUS_SCRAM(??????????)???????????????? typedef struct tagALARM_BUS_SCRAM_INFO { DWORD dwSize; NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? } ALARM_BUS_SCRAM_INFO; ///@brief ???????????DH_ALARM_BUS_SHARP_ACCELERATE(?????????????)???????????????? typedef struct tagALARM_BUS_SHARP_ACCELERATE_INFO { DWORD dwSize; NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME_EX stuTime; /// ???????????? int nAction; /// ???????, 1:??? 2:?? } ALARM_BUS_SHARP_ACCELERATE_INFO; ///@brief ???????????DH_ALARM_BUS_SHARP_DECELERATE(?????????????)???????????????? typedef struct tagALARM_BUS_SHARP_DECELERATE_INFO { DWORD dwSize; NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME_EX stuTime; /// ???????????? int nAction; /// ???????, 1:??? 2:?? } ALARM_BUS_SHARP_DECELERATE_INFO; ///@brief ???????????????? typedef enum tagNET_ACCESS_ACTION_TYPE { NET_ACCESS_ACTION_TYPE_UNKNOWN = 0, /// ??? NET_ACCESS_ACTION_TYPE_INSERT = 1, /// ???? NET_ACCESS_ACTION_TYPE_UPDATE = 2, /// ???? NET_ACCESS_ACTION_TYPE_REMOVE = 3, /// ??? }NET_ACCESS_ACTION_TYPE; ///@brief ?????????????????? typedef enum tagNET_ACCESS_ERRORCODE { NET_ACCESS_ERRORCODE_UNKNOWN = 0, /// ??????? NET_ACCESS_ERRORCODE_NOTSUPPORT = 1, /// ?????????????? NET_ACCESS_ERRORCODE_FULLDATA = 2, /// ????????????? NET_ACCESS_ERRORCODE_NOTSUPPORTISSUED = 3, /// ????????????? }NET_ACCESS_ERRORCODE; ///@brief ??????????????? typedef struct tagALARM_ACCESS_CARD_OPERATE_INFO { DWORD dwSize; NET_ACCESS_ACTION_TYPE emActionType; /// ???????????????? char szCardNo[DH_MAX_CARDINFO_LEN]; /// ????????? NET_THREE_STATUS_BOOL emResult; /// ???????,-1????,0????,1????, int nChannelID; /// ???????(????????,????????????), ??0??? char szCredentialHolder[16]; /// ????????? NET_ACCESS_METHOD emType; /// ??????? char szSerialNum[32]; /// ?????? int nIndex; /// ???????????????? int nTaskID; /// ????ID NET_ACCESS_ERRORCODE emErrorde; /// ?????????? (????????????emResult=0???????) }ALARM_ACCESS_CARD_OPERATE_INFO; ///@brief ???????????DH_EVENT_TAKENAWAYDETECTION(??????????)???????????????? typedef struct tagALARM_TAKENAWAY_DETECTION_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; int nOccurrenceCount; /// ????????????? int nLevel; /// ???????,GB30147??????, 0 ???1 ???2 ???? short nPreserID; /// ?????????????????1???????????????? char szPresetName[64]; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } ALARM_TAKENAWAY_DETECTION_INFO; ///@brief ??????????? DH_EVENT_VIDEOABNORMALDETECTION (????????)???????????????? typedef struct tagALARM_VIDEOABNORMAL_DETECTION_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; int nType; /// ???????,0-??????, 1-??????, 2-???????, 3-????, 4-????, 5-??????? /// 6-?????? , 7-??????? , 8-????? , 9-????????? , 10-????????? /// 11-??????, 12-??????, 13-??????, 14-??????, 15-??????, 16-??????? int nValue; /// ????,????????????????, GB30147???? int nOccurrenceCount; /// ????????????? } ALARM_VIDEOABNORMAL_DETECTION_INFO; ///@brief ???????????DH_EVENT_LOCALALARM(?????????)???????????????? typedef struct tagALARM_LOCAL_ALARM_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; int nSenseType; /// ?????????? int nDefenceAreaType; /// ????????, ???EM_NET_DEFENCE_AREA_TYPE } ALARM_LOCAL_ALARM_INFO; ///@brief ?????????? typedef enum tagEM_MOTION_DETECT_TYPE { EM_MOTION_DETECT_UNKNOWN, /// ??? EM_MOTION_DETECT_HUMAN, /// ?? EM_MOTION_DETECT_VEHICLE, /// ?? EM_MOTION_DETECT_HUMAN_AND_VEHICLE, /// ???? } EM_MOTION_DETECT_TYPE; ///@brief ??????????? typedef struct tagNET_MOTIONDETECT_REGION_INFO { UINT nRegionID; /// ????ID char szRegionName[64]; /// ???????? BYTE bReserved[508]; /// ??????? } NET_MOTIONDETECT_REGION_INFO; ///@brief ???????????DH_EVENT_MOTIONDETECT(????????????)???????????????? typedef struct tagALARM_MOTIONDETECT_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; UINT nRegionNum; /// ??????????? NET_MOTIONDETECT_REGION_INFO stuRegion[32]; /// ??????????? BOOL bSmartMotionEnable; /// ????????????? UINT nDetectTypeNum; /// ????????????? EM_MOTION_DETECT_TYPE emDetectType[32]; /// ??????????, ??nRegionNum????0?????stuRegion?????????, /// ??nRegionNum?0??????????????????????????????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? } ALARM_MOTIONDETECT_INFO; ///@brief ???????(??)??????? typedef struct tagNET_SMARTDETECT_HUMAN_OBJECT { UINT nHumanID; /// ?????ID NET_RECT stuRect; /// ??????? BYTE bReserved[508]; /// ??????? } NET_SMARTDETECT_HUMAN_OBJECT; ///@brief ???????????DH_ALARM_SMARTMOTION_HUMAN(????????????????(??))???????????????? typedef struct tagALARM_SMARTMOTION_HUMAN_INFO { int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; NET_MOTIONDETECT_REGION_INFO stuSmartRegion[32]; /// ?????????????? UINT nSmartRegionNum; /// ?????????????? UINT nHumanObjectNum; /// ???????(??)??????? NET_SMARTDETECT_HUMAN_OBJECT stuHumanObject[64]; /// ???????(??)??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[1024]; /// ??????? } ALARM_SMARTMOTION_HUMAN_INFO; ///@brief ???????(??)??????? typedef struct tagNET_SMARTDETECT_VEHICLE_OBJECT { UINT nVehicleID; /// ??????ID NET_RECT stuRect; /// ???????? BYTE bReserved[508]; /// ??????? } NET_SMARTDETECT_VEHICLE_OBJECT; ///@brief ???????????DH_ALARM_SMARTMOTION_VEHICLE(????????????????(??))???????????????? typedef struct tagALARM_SMARTMOTION_VEHICLE_INFO { int nChannelID; /// ????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) int nEventID; /// ???ID int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; NET_MOTIONDETECT_REGION_INFO stuSmartRegion[32]; /// ?????????????? UINT nSmartRegionNum; /// ?????????????? UINT nVehicleObjectNum; /// ???????(??)??????? NET_SMARTDETECT_VEHICLE_OBJECT stuVehicleObject[64]; /// ???????(??)??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[1024]; /// ??????? } ALARM_SMARTMOTION_VEHICLE_INFO; ///@brief ???????????DH_ALARM_POLICE_CHECK(????????????)???????????????? typedef struct tagALARM_POLICE_CHECK_INFO { DWORD dwSize; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nEventAction; /// ??????? char szId[32]; /// ?????ID?? char szName[32]; /// ?????????,UTF8 int nSignType; /// ????, ?????NET_DRIVER_CHECK_TYPE NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szComment[1024]; /// ?????? } ALARM_POLICE_CHECK_INFO; ///@brief ???????????DH_ALARM_NEW_FILE(new file???)???????????????? typedef struct tagALARM_NEW_FILE_INFO { DWORD dwSize; int nChannel; /// ??????? int nEventID; /// ???ID DWORD dwEvent; /// ??????? int FileSize; /// ???????,????????? int nIndex; /// ??????? DWORD dwStorPoint; /// ????? char szFileName[DH_COMMON_STRING_128]; /// ????? }ALARM_NEW_FILE_INFO; ///@brief ???????????? typedef enum tagEM_PTZ_STATUS_TYPE { EM_PTZ_STATUS_UNKNOW, /// ?????,??????????? EM_PTZ_STATUS_NORMAL, /// ???? EM_PTZ_STATUS_PANOC_FAILED, /// ???????? EM_PTZ_STATUS_TILEOC_FAILED, /// ????????? EM_PTZ_STATUS_OC_FAILED /// ????????? } EM_PTZ_STATUS_TYPE; ///@brief ??????????????(???DH_ALARM_PTZ_DIAGNOSES) typedef struct tagALARM_PTZ_DIAGNOSES_INFO { int nChannel; /// ????????(?????????????) NET_TIME_EX UTC; /// ?????????? EM_PTZ_STATUS_TYPE emPtzStat; /// ???????? BYTE Reserved[512]; /// ??????? } ALARM_PTZ_DIAGNOSES_INFO; ///@brief ??????(?????)??????????? DH_ALARM_FLASH_LIGHT_FAULT typedef struct tagALARM_FLASH_LIGHT_FAULT_INFO { double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventAction; /// ???????, 1-?????????, 2-??????????; int nLightNum; /// ???????? int nDevID[MAX_FLASH_LIGHT_NUM]; /// ?????????????ID int nLane; /// ?????? BYTE bReserved[512]; /// ??????? }ALARM_FLASH_LIGHT_FAULT_INFO; ///@brief ??????????????? DH_ALARM_STROBOSCOPIC_LIGTHT_FAULT typedef struct tagALARM_STROBOSCOPIC_LIGTHT_FAULT_INFO { double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventAction; /// ???????, 1-?????????, 2-??????????; int nLightNum; /// ???????? int nDevID[MAX_STROBOSCOPIC_LIGHT_NUM]; /// ?????????????ID int nLane; /// ?????? BYTE bReserved[512]; /// ??????? }ALARM_STROBOSCOPIC_LIGTHT_FAULT_INFO; ///@brief ????????????? typedef enum tagEM_UPPER_LIMIT_TYPE { EM_UPPER_LIMIT_TYPE_UNKNOWN, /// ??? EM_UPPER_LIMIT_TYPE_ENTER_OVER, /// ????????? EM_UPPER_LIMIT_TYPE_EXIT_OVER, /// ????????? EM_UPPER_LIMIT_TYPE_INSIDE_OVER, /// ???????? EM_UPPER_LIMIT_TYPE_PASS_OVER, /// ????????? } EM_UPPER_LIMIT_TYPE; ///@brief ??????? DH_ALARM_HUMAM_NUMBER_STATISTIC (??????/????????????NumberStat????????????????) typedef struct tagALARM_NUMBER_STATISTIC_INFO { double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventAction; /// ???????,0-???????, 1-?????????, 2-??????????; int nNumber; /// ?????????????? int nEnteredNumber; /// ????????????????????????? int nExitedNumber; /// ????????????????????????? EM_UPPER_LIMIT_TYPE emUpperLimitType; /// ?????????????(EnterOver, ExitOver, InsideOver) int nChannelID; /// ????? int nPassedNumber; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[504]; /// ??? }ALARM_HUMAN_NUMBER_STATISTIC_INFO; ///@brief ??????? DH_ALARM_VIDEOUNFOCUS(?????????????) typedef struct tagALARM_VIDEOUNFOCUS_INFO { int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannel; /// ????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[60]; /// ?????? }ALARM_VIDEOUNFOCUS_INFO; ///@brief ?????????????????? typedef enum tagEM_DEFENCEMODE { EM_DEFENCEMODE_UNKNOWN, /// "unknown" ??? EM_DEFENCEMODE_ARMING, /// "Arming" ???? EM_DEFENCEMODE_DISARMING, /// "Disarming" ???? }EM_DEFENCEMODE; ///@brief ??????? typedef enum tagEM_ARMMODECHANGE_TRIGGERMODE { EM_ARMMODECHANGE_TRIGGERMODE_UNKNOWN, ///??? EM_ARMMODECHANGE_TRIGGERMODE_NET, ///??????? EM_ARMMODECHANGE_TRIGGERMODE_KEYBOARD, ///???? EM_ARMMODECHANGE_TRIGGERMODE_REMOTECONTROL, ///????? }EM_ARMMODECHANGE_TRIGGERMODE; ///@brief ???????? typedef enum tagEM_ARMMODECHANGE_DEFENCEAREATYPE { EM_ARMMODECHANGE_DEFENCEAREATYPE_UNKNOWN, ///??? EM_ARMMODECHANGE_DEFENCEAREATYPE_INTIME, ///??? EM_ARMMODECHANGE_DEFENCEAREATYPE_DELAY, ///??? EM_ARMMODECHANGE_DEFENCEAREATYPE_FULLDAY, ///??? EM_ARMMODECHANGE_DEFENCEAREATYPE_FOLLOW, ///???? EM_ARMMODECHANGE_DEFENCEAREATYPE_MEDICAL, ///??? EM_ARMMODECHANGE_DEFENCEAREATYPE_PANIC, ///??? EM_ARMMODECHANGE_DEFENCEAREATYPE_FIRE, ///?? EM_ARMMODECHANGE_DEFENCEAREATYPE_FULLDAYSOUND, ///??????? EM_ARMMODECHANGE_DEFENCEAREATYPE_FULLDAYSILENT, ///??????? EM_ARMMODECHANGE_DEFENCEAREATYPE_ENTRANCE1, ///???????1 EM_ARMMODECHANGE_DEFENCEAREATYPE_ENTRANCE2, ///???????2 EM_ARMMODECHANGE_DEFENCEAREATYPE_INSIDE, ///??????? EM_ARMMODECHANGE_DEFENCEAREATYPE_OUTSIDE, ///?????? EM_ARMMODECHANGE_DEFENCEAREATYPE_PEOPLEDETECT, ///?????? }EM_ARMMODECHANGE_DEFENCEAREATYPE; ///@brief ??????? DH_ALARM_DEFENCE_ARMMODECHANGE (??????????????????) typedef struct tagALARM_DEFENCE_ARMMODECHANGE_INFO { EM_DEFENCEMODE emDefenceStatus; ///???????? int nDefenceID; ///?????? NET_TIME_EX stuTime; ///??? EM_ARMMODECHANGE_TRIGGERMODE emTriggerMode; ///??????? EM_ARMMODECHANGE_DEFENCEAREATYPE emDefenceAreaType; ///???????? int nID; ///?????????????? int nAlarmSubSystem; ///?????? char szName[64]; ///???????? char szNetClientAddr[64]; ///???IP???????? BYTE reserved[368]; ///??? }ALARM_DEFENCE_ARMMODECHANGE_INFO; ///@brief ?????? typedef enum tagEM_SUBSYSTEMMODE { EM_SUBSYSTEMMODE_UNKNOWN, /// "unknown" ??? EM_SUBSYSTEMMODE_ACTIVE, /// "active" ???? EM_SUBSYSTEMMODE_INACTIVE, /// "inactive" ?????? EM_SUBSYSTEMMODE_UNDISTRIBUTED, /// "undistributed" ?????? EM_SUBSYSTEMMODE_ALLARMING, /// "AllArming" ??????? EM_SUBSYSTEMMODE_ALLDISARMING, /// "AllDisarming" ??????? EM_SUBSYSTEMMODE_PARTARMING, /// "PartArming" ??????? }EM_SUBSYSTEMMODE; ///@brief ??????? typedef enum tagEM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE { EM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE_UNKNOWN, ///??? EM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE_NET, ///??????? EM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE_KEYBOARD, ///???? EM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE_REMOTECONTROL, ///????? }EM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE; ///@brief ??????? DH_ALARM_SUBSYSTEM_ARMMODECHANGE (??????????????????) typedef struct tagALARM_SUBSYSTEM_ARMMODECHANGE_INFO { EM_SUBSYSTEMMODE emSubsystemMode; ///???????? (????AllArming??AllDisarming??PartArming??????) NET_TIME_EX UTC; ///???????????? char szSubSystemname[64]; ///???????? int nSubSystemID; ///??????? EM_SUBSYSTEM_ARMMODECHANGE_TRIGGERMODE emTriggerMode; ///??????? int nID; ///????????????? char szNetClientAddr[64]; ///???????IP??????????? BYTE reserved[440]; ///??? }ALARM_SUBSYSTEM_ARMMODECHANGE_INFO; ///@brief ?????????????? (??? DH_ALARM_RFID_INFO) typedef struct tagALARM_RFID_INFO { int nAction; /// 0:??? 1:?? int nIndex; /// ????? NET_TIME_EX stuEventTime; /// ???????????? int nValidCount; /// RFID ??????????????? char szRfid[10][12]; /// RFID ??????? }ALARM_RFID_INFO; ///@brief ???????????? (DH_ALARM_SMOKE_DETECTION) typedef struct tagALARM_SMOKE_DETECTION_INFO { int nAction; /// 0:??? 1:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nChannel; /// ????? int nEventID; /// ???ID int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? UINT nCurChannelHFOV; /// ????????????????????,?????????????????100 UINT nCurChannelVFOV; /// ???????????????????,?????????????????100 DH_MSG_OBJECT stuObject; /// ????????? PTZ_SPACE_UNIT stuPtzPosition; /// ?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char reserved[1024]; /// ?????? }ALARM_SMOKE_DETECTION_INFO; ///@brief ??????? DH_ALARM_PHONECALL_DETECT (??????????) typedef struct tagALARM_PHONECALL_DETECT_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? BYTE reserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nChannel; /// ????? int nEventID; /// ???ID int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[128]; /// ?????? } ALARM_PHONECALL_DETECT_INFO; ///@brief ??????????? typedef enum tagNET_EM_EVENT_DATA_TYPE { NET_EN_EVENT_DATA_TYPE_UNKNOWN, /// ??? NET_EN_EVENT_DATA_TYPE_REAL, /// ?????? NET_EN_EVENT_DATA_TYPE_ALARM, /// ???????? }NET_EM_EVENT_DATA_TYPE; ///@brief ??????? DH_ALARM_FLOATINGOBJECT_DETECTION (??????????) typedef struct tagALARM_FLOATINGOBJECT_DETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE reserved1[4]; /// ?????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nChannel; /// ????? int nEventID; /// ???ID int nPresetID; /// ?????????????ID char szPresetName[64]; /// ???????????????? BOOL bExistFloatingObject; /// ??????????? NET_EM_EVENT_DATA_TYPE emEventType; /// ??????????? float fCurrentRatio; /// ????????????????????????:%, ??????[0, 100] float fAlarmThreshold; /// ?????????????????????????????, ??????[0, 100] NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? BYTE byReserved[1020]; /// ?????? } ALARM_FLOATINGOBJECT_DETECTION_INFO; ///@brief ????? typedef enum tagNET_EM_WATER_LEVEL_STATUS { NET_EM_WATER_LEVEL_STATUS_UNKNOWN, /// ??? NET_EM_WATER_LEVEL_STATUS_NORMAL, /// ??????? NET_EM_WATER_LEVEL_STATUS_HIGH, /// ?????????????? NET_EM_WATER_LEVEL_STATUS_LOW, /// ?????????????? NET_EM_WATER_LEVEL_STATUS4, /// ???????????????????? NET_EM_WATER_LEVEL_STATUS5, /// ??????????????????????? NET_EM_WATER_LEVEL_STATUS6, /// ???????????????????????? NET_EM_WATER_LEVEL_STATUS7, /// ??????????????????????? }NET_EM_WATER_LEVEL_STATUS; ///@brief ???????? typedef enum tagNET_EM_WATER_RULER_COLOR { NET_EM_WATER_RULER_COLOR_UNKNOW, /// ?????? NET_EM_WATER_RULER_COLOR_BLUE, /// ??? NET_EM_WATER_RULER_COLOR_RED, /// ??? }NET_EM_WATER_RULER_COLOR; ///@brief ????? typedef struct tagNET_WATER_RULER { NET_EM_WATER_RULER_COLOR emRulerColor; /// ???????? char szRulerNum[128]; /// ??????? float fWaterLevel; /// ????????????????????????????????????????????????????? BYTE byReserved[512]; /// ??????? }NET_WATER_RULER; ///@brief ??????? DH_ALARM_WATER_LEVEL_DETECTION (?????????) typedef struct tagALARM_WATER_LEVEL_DETECTION_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE reserved1[4]; /// ?????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nChannel; /// ????? int nEventID; /// ???ID int nPresetID; /// ????ID char szPresetName[64]; /// ???????? char szObjectUUID[48]; /// ???????????????????? NET_EM_EVENT_DATA_TYPE emEventType; /// ??????????? NET_EM_WATER_LEVEL_STATUS emStatus; /// ????? NET_WATER_RULER stuWaterRuler; /// ????? BOOL bManual; /// ?????????????????????????????????????????? BYTE byReserved[1020]; /// ?????? } ALARM_WATER_LEVEL_DETECTION_INFO; ///@brief ??????? DH_ALARM_LOW_SPEED typedef struct tagALARM_LOW_SPEED_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannel; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_GPS_STATUS_INFO* pstuGPSStatus; /// GPS??? BYTE byReserved[256 - POINTERSIZE]; /// ?????? } ALARM_LOW_SPEED_INFO; ///@brief ??????? DH_ALARM_TRAFFIC_VEHICLEINOUT typedef struct tagALARM_TRAFFIC_VEHICLEINOUT_INFO { int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nChannel; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ???? UINT nRoadwayNumber; /// ?????t?? int nVehicleInOut; /// ?????? 0 ????????? 1 ????????? BYTE byReserved[1024]; /// ?????? } ALARM_TRAFFIC_VEHICLEINOUT_INFO; ///@brief ???????DH_ALARM_TRAFFIC_JUNCTION typedef struct tagALARM_TAFFIC_JUNCTION_INFO { int nAction; /// ??????? int nChannelID; /// ????? char szName[128]; /// ??????? BYTE byMainSeatBelt; /// ???????,????????,1-??????,2-???????? BYTE bySlaveSeatBelt; /// ???????,????????,1-??????,2-???????? BYTE byVehicleDirection; /// ?????????????????????????,??????? EM_VEHICLE_DIRECTION BYTE byOpenStrobeState; /// ?????,??????? EM_OPEN_STROBE_STATE BYTE byReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? int nLane; /// ????????? DWORD dwBreakingRule; /// ????????????,?????:?????; /// ?????:??????????????; /// ??????:????; ??????????????; /// ??????:???????; ??????:????????? /// ??????:??????; ????????:?????????? NET_TIME_EX RedLightUTC; /// ?????UTC??? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ??????????Km/h BYTE byDirection; /// ???????,1-???????,2-??????? BYTE byLightState; /// LightState??????????:0 ???,1 ???,2 ???,3 ??? BYTE byReserved2; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DH_MSG_OBJECT stuVehicle; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? char szRecordFile[DH_COMMON_STRING_128]; /// ???????????????????? EVENT_JUNCTION_CUSTOM_INFO stuCustomInfo; /// ???????? BYTE byPlateTextSource; /// ??????????, 0:?????????,1:????????????? BYTE byReserved3[3]; /// ???????,???????. NET_GPS_INFO stuGPSInfo; /// GPS??? BYTE byNoneMotorInfo; /// 0-?????????????????,1-?????????????????? /* ??????1?????11????????? */ BYTE byBag; /// ????, 0-??? 1-?????? 2-???? BYTE byUmbrella; /// ??????, 0-??? 1-?????? 2-???? BYTE byCarrierBag; /// ???????,0-??? 1-??? 2-?? BYTE byHat; /// ???????, 0-??? 1-??????? 2-????? BYTE byHelmet; /// ?????,0-??? 1-??? 2-?? BYTE bySex; /// ???,0-??? 1-???? 2-??? BYTE byAge; /// ???? NET_COLOR_RGBA stuUpperBodyColor; /// ??????? NET_COLOR_RGBA stuLowerBodyColor; /// ??????? BYTE byUpClothes; /// ???????????? 0:??? 1:???? 2:???? 3:???? 4:??? 5:??? 6:???? 7:????? 8:????? BYTE byDownClothes; /// ???????????? 0:??? 1:???? 2:???? 3:???? 4:??? 5:??? 6:???? 7:????? 8:????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? BYTE byReserved4[22]; /// ???????,??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2???,3RSU DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DWORD dwRetCardNumber; /// ??????? EVENT_CARD_INFO stuCardInfo[DH_EVENT_MAX_CARD_NUM]; /// ?????? EVENT_COMM_INFO stCommInfo; /// ??????? BOOL bNonMotorInfoEx; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? EM_TRACK_CAR_STATUS emTrackCarStatus; /// ?????????? char szSerialNo[128]; /// ????????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[852]; /// ???????,??????? } ALARM_TAFFIC_JUNCTION_INFO; ///@brief ???????DH_ALARM_DOOR_CONTROL(??????????????????)????????????????? typedef struct tagALARM_DOOR_CONTROL_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID EM_OPEN_DOOR_METHOD emOpenDoorMethod; /// ?????? EM_OPEN_DOOR_STATE emOpenDoorState; /// ?????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID???; /// ?????????2??%d%d:01-??????,02-??,03-???,99-????; /// ????14??YYYYMMDDhhmmss:???????????;??5??%u%u%u%u%u??????ID????00001 BYTE byReserved[1024]; /// ?????? } ALARM_DOOR_CONTROL_INFO; ///@brief ?? typedef enum tagNET_EM_ARM_STATUS { EM_ARM_STATUS_UNKNOWN, /// ??? EM_ARM_STATUS_DELAY, /// ??? EM_ARM_STATUS_ARMING, /// ???? EM_ARM_STATUS_DISARMING, /// ???? }NET_EM_ARM_STATUS; ///@brief ???????DH_ALARM_ARMSTATE(?????????)????????????????? typedef struct tagALARM_ARMSTATE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID NET_EM_ARM_STATUS emStatus; /// ?? }ALARM_ARMSTATE_INFO; ///@brief ??????? DH_ALARM_LAW_ENFORCEMENT_INFO(????????????????????)????????????????? typedef struct tagALARM_LAW_ENFORCEMENT_INFO { int nAction; /// 0:???? 1:??? 2:?? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szUserID[32]; /// ??????????????????????ID char szUserName[128]; /// ???????????????????????? BYTE byRserved[4]; /// ?????? } ALARM_LAW_ENFORCEMENT_INFO; ///@brief ???????DH_ALARM_CONGESTION_DETECTION(??????????????????????)????????????????? typedef struct tagALARM_CONGESTION_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ???????????????? UINT nAlarmMask; /// ???????????, ????????????????????????bit0???????????????????bit1?????????????????? UINT nVehicleQuantity; /// ?????????? UINT nQueueLength; /// ?????????? int nDetectRegionNum; /// stuDetectRegion?????????????? DH_POINT stuDetectRegion[32]; /// ?????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ?????? }ALARM_CONGESTION_DETECTION_INFO; ///@brief ???????? typedef enum tagEM_SPACE_TYPE { EM_SPACE_TYPE_UNKNOWN = -1, /// ??? EM_SPACE_TYPE_CAR, /// ?????? EM_SPACE_TYPE_BIG_CAR, /// ???? EM_SPACE_TYPE_HAZARDOUS_CHEMICALS, /// ????????? EM_SPACE_TYPE_TRUCK, /// ???????? EM_SPACE_TYPE_SMALL_TRUCK, /// ????????? EM_SPACE_TYPE_BUS, /// ???????? }EM_SPACE_TYPE; ///@brief ???????????? typedef struct tagNET_AREA_MODE_INFO { char szName[32]; /// ???????? UINT nCount; /// ???????????????? EM_SPACE_TYPE emSpaceType; /// ???????? int nRemainCnt; /// ?????????????????? BYTE byReserved[252]; /// ??????? }NET_AREA_MODE_INFO; ///@brief ???????DH_ALARM_VEHICLELIMIT_DETECTION(?????????????????????????)????????????????? typedef struct tagALARM_VEHICLELIMIT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ???????????????? UINT nVehicleQuantity; /// ???????? int nDetectRegionNum; /// stuDetectRegion?????????????? DH_POINT stuDetectRegion[32]; /// ?????????????????? int nAreaModeInfoNum; /// ????????????????????(????????)?????,??????20 NET_AREA_MODE_INFO stuAreaModeInfo[20]; /// ????????????(????????) NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ?????? }ALARM_VEHICLELIMIT_DETECTION_INFO; ///@brief GPS??? typedef struct tagLAMP_GPS_INFO { DWORD dwLatitude; /// ????(?????????????,????0-180??)??m??30.183382?????120183382 DWORD dwLongitude; /// ????(?????????????,????0-360??)??Q??120.178274?????300178274 int nNumOfSatellite; /// ??????? BYTE byReserved[4]; /// ?????? } LAMP_GPS_INFO; ///@brief ???????????????? typedef enum tagEM_IS_OFF_LINE { EM_IS_OFF_LINE_UNKNOWN = -1, /// ??? EM_IS_OFF_LINE_NORMAL, /// ???? EM_IS_OFF_LINE_EXCEPTION, /// ?? } EM_IS_OFF_LINE; ///@brief ??????????? typedef enum tagEM_IS_VOLTAGE_FAULT { EM_IS_VOLTAGE_FAULT_UNKNOWN = -1, /// ??? EM_IS_VOLTAGE_FAULT_NORMAL, /// ???? EM_IS_VOLTAGE_FAULT_EXCEPTION, /// ?? } EM_IS_VOLTAGE_FAULT; ///@brief ???????????? typedef enum tagEM_IS_CURRENT_FAULT { EM_IS_CURRENT_FAULT_UNKNOWN = -1, /// ??? EM_IS_CURRENT_FAULT_NORMAL, /// ???? EM_IS_CURRENT_FAULT_EXCEPTION, /// ?? } EM_IS_CURRENT_FAULT; ///@brief ??????????? typedef enum tagEM_BRIGHT_STATE { EM_BRIGHT_STATE_UNKNOWN = -1, /// ??? EM_BRIGHT_STATE_OFF, /// ?????? EM_BRIGHT_STATE_ON, /// ???? } EM_BRIGHT_STATE; ///@brief ?????????? typedef enum tagEM_LAMP_STATUS_WORK_MODE { EM_LAMP_STATUS_WORK_MODE_UNKNOWN, /// ??? EM_LAMP_STATUS_WORK_MODE_DHRS_STROBOSCOPIC_LAMP, /// RS485????? EM_LAMP_STATUS_WORK_MODE_DHRS_STEADY_LAMP, /// RS485?????? EM_LAMP_STATUS_WORK_MODE_DHRS_FLASH_LAMP, /// RS485?????? } EM_LAMP_STATUS_WORK_MODE; ///@brief ????? typedef enum tagEM_STROBOSCOPIC_MODE { EM_STROBOSCOPIC_MODE_UNKNOWN = -1, /// ??? EM_STROBOSCOPIC_MODE_ACTIVE, /// ???? EM_STROBOSCOPIC_MODE_PASSIVE, /// ???? } EM_STROBOSCOPIC_MODE; ///@brief ???????? typedef struct tagSTROBOSCOPIC_LAMP_PARAM { EM_STROBOSCOPIC_MODE emStroboscopicMode; /// ????? UINT nStayTime; /// ??????????, ????s, ????[0,2^32) UINT nFrequency; /// ??????, ????Hz UINT nBrightLevel; /// ??????, 1~20 UINT nPulseWidth; /// ???????, ????ms, ????(0,4] BYTE byReserved[36]; /// ?????? } STROBOSCOPIC_LAMP_PARAM; ///@brief ????? typedef enum tagEM_TRIGGER_MODE { EM_TRIGGER_MODE_UNKNOWN = -1, /// ??? EM_TRIGGER_MODE_EDGE, /// ???? EM_TRIGGER_MODE_PWM, /// ???? } EM_TRIGGER_MODE; ///@brief ????????? typedef struct tagFLASH_LAMP_PARAM { EM_TRIGGER_MODE emTriggerMode; /// ??????? UINT nTriggerCount; /// ????????, ????[0,2^32) UINT nFlashCount; /// ????????, ????[0,2^32) UINT nPulseWidth; /// ????????, ????ms, ????(0~4]ms UINT nPulseWidthDetectThreshold; /// ??????????1~4??? UINT nErrorDetectThreshold; /// ????, 3~8??? BYTE byReserved[32]; /// ?????? } FLASH_LAMP_PARAM ; ///@brief ????????? typedef struct tagSTEADY_LAMP_PARAM { UINT nBrightLevel; /// ??????, 1~20??? BYTE byReserved[60]; /// ?????? } STEADY_LAMP_PARAM; ///@brief ?????????? typedef struct tagLAMP_STATUS_INFO { UINT nPort; /// ???????????????????? UINT nAddress; /// DHRS???????????, ????0~15 char szSoftwareVersion[128]; /// ??????? char szDeviceID[32]; /// ???ID LAMP_GPS_INFO stuGPS; /// GPS??? EM_IS_OFF_LINE emIsOffline; /// ???????????? EM_IS_VOLTAGE_FAULT emIsVoltageFault; /// ??????????? EM_IS_CURRENT_FAULT emIsCurrentFault; /// ???????????? EM_BRIGHT_STATE emBrightState; /// ??????????? UINT nPower; /// ?????????????????????? 0~65536999 UINT nTemperature; /// ??????????????????????????1001???10.01??, 0~25599 UINT nPhotoSensitivity; /// ??????????????????0~4095 UINT nAmbientBrightnessThreshold; /// ???????????1-6??? EM_LAMP_STATUS_WORK_MODE emWorkMode; /// ?????????? STROBOSCOPIC_LAMP_PARAM stuStroboscopicLampParam; /// ???????? FLASH_LAMP_PARAM stuFlashLampParam; /// ????????? STEADY_LAMP_PARAM stuSteadyLampParam; /// ????????? BYTE byReserved[64]; /// ?????? } LAMP_STATUS_INFO; ///@brief ??????????????????????????????????? typedef struct tagALARM_TRAFFIC_LAMP_WORK_STATE_INFO { NET_TIME_EX UTC; /// ?????UTC???? UINT nUTCMS; /// ?????UTC?????? int nChannelID; /// ????? int nLampStatusNum; /// ?????????????? LAMP_STATUS_INFO stuLampStatus[8]; /// ?????????? BYTE byReserved[256]; /// ?????? } ALARM_TRAFFIC_LAMP_WORK_STATE_INFO; ///@brief ??????? DH_ALARM_TRAFFIC_PARKING_TIMEOUT(?????????????)????????????????? typedef struct tagALARM_TRAFFIC_PARKING_TIMEOUT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? NET_TIME_EX UTC; /// ???????????? NET_TIME stuInParkTime; /// ??????? NET_TIME stuOutParkTime; /// ??????? UINT nParkingTime; /// ?????????????? BYTE byReserved[1024]; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? }ALARM_TRAFFIC_PARKING_TIMEOUT_INFO; ///@brief ??????? DH_ALARM_TICKET_INFO_REPORT (????????????)????????????????? typedef struct tagALARM_TICKET_INFO_REPORT { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nOpenFlag; /// ????????0??????????????? BYTE byReserved[4]; /// ?????? char szPassengerName[256]; /// ???? char szCitizenID[32]; /// ????? NET_TIME stuDriveTime; /// ??????? char szDestination[256]; /// ???? char szScheduleID[64]; /// ??? }ALARM_TICKET_INFO_REPORT; ///@brief ???????????? typedef enum tagEM_MASK_DETECT_RESULT_TYPE { EM_MASK_DETECT_TYPE_UNKNOWN, /// ??? EM_MASK_DETECT_TYPE_NO_MASK, /// ???????? EM_MASK_DETECT_TYPE_WEAR_MASK, /// ?????? }EM_MASK_DETECT_RESULT_TYPE; ///@brief ???????????????? typedef struct tagNET_MAN_TEMP_INFO { UINT nObjectID; /// ????ID NET_RECT stRect; /// ???????, 8192????? double dbHighTemp; /// ??????? UINT nTempUnit; /// ??????(0????? 1????? 2??????) BOOL bIsOverTemp; /// ???????? BOOL bIsUnderTemp; /// ???????? UINT nOffset; /// ??????????????????????????? UINT nLength; /// ????????????, ????:??? EM_MASK_DETECT_RESULT_TYPE emMaskDetectResult; /// ???????? NET_RECT stThermalRect; /// ???????(???????8192) UINT nAge; /// ???? EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??? UINT nIndexInData; /// ???????????????????? BYTE byReserved[32]; /// ?????? } NET_MAN_TEMP_INFO; ///@brief ??????? ALARM_ANATOMY_TEMP_DETECT_INFO(???????????????)????????????????? typedef struct tagALARM_ANATOMY_TEMP_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nPresetID; /// ??????????????, ??1???, ????????,?????????? NET_MAN_TEMP_INFO stManTempInfo; /// ???????????????? UINT nSequence; /// ???? UINT nEventRelevanceID; /// ???????ID BOOL bIsFaceRecognition; /// ???????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1020]; /// ?????? } ALARM_ANATOMY_TEMP_DETECT_INFO; ///@brief ??????? ALARM_REGULATOR_ABNORMAL_INFO(?????????????????)????????????????? typedef struct tagALARM_REGULATOR_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID char szTypes[MAX_COMMON_STRING_32]; /// ?????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ?????? } ALARM_REGULATOR_ABNORMAL_INFO; ///@brief ?????????????APP????? typedef struct tagNET_DHOP_APP_INFO { char szAppName[128]; /// App???? char szAppVersion[64]; /// App??? BYTE byReserved[1024]; /// ?????? }NET_DHOP_APP_INFO; ///@brief ??????? DH_ALARM_DHOP_CUSTOM ?? DH_ALARM_DHOP_CUSTOM_ONCE (DHOP???????????)????????????????? typedef struct tagALARM_DHOP_CUSTOM_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSourceIndex; /// ?????ID BYTE byReserved1[4]; /// ???,?????? NET_DHOP_APP_INFO stuAppInfo; /// ?????????????APP????? char szCustomData[4096]; /// ????????? double PTS; /// ????(?????????) BYTE byReserved[2040]; /// ?????? } ALARM_DHOP_CUSTOM_INFO; ///@brief ????????? typedef enum tagEM_TRFAFFIC_LIGHT_SOURCE { EM_TRFAFFIC_LIGHT_SOURCE_UNKNOWN = 0, /// ??? EM_TRFAFFIC_LIGHT_SOURCE_SIGNAL, /// ??????? EM_TRFAFFIC_LIGHT_SOURCE_DSP, /// DSP(?????) EM_TRFAFFIC_LIGHT_SOURCE_NET_SIGNAL, /// ??????????? }EM_TRFAFFIC_LIGHT_SOURCE; ///@brief ????????? typedef enum tagEM_TRFAFFIC_LIGHT_TYPE { EM_TRFAFFIC_LIGHT_TYPE_UNKNOWN = 0, /// ??? EM_TRFAFFIC_LIGHT_TYPE_RED, /// ??? EM_TRFAFFIC_LIGHT_TYPE_YELLOW, /// ??? EM_TRFAFFIC_LIGHT_TYPE_GREEN, /// ??? }EM_TRFAFFIC_LIGHT_TYPE; ///@brief ????????????????????? typedef struct tagNET_LIGHTPERIODS_INFO { EM_TRFAFFIC_LIGHT_TYPE emType; /// ????????? int nStraight; /// ??????????? int nTurnLeft; /// ??????????? int nTurnRight; /// ??????????? int nUTurn; /// ??????????? BYTE byReserved[60]; /// ??? }NET_LIGHTPERIODS_INFO; ///@brief ?????????? typedef struct tatNET_TRAFFIC_LIGHT_STATE { NET_TRAFFIC_LIGHT_STATUS emStraightLightInfo; /// ????????? NET_TRAFFIC_LIGHT_STATUS emTurnLeftLightInfo; /// ????????? NET_TRAFFIC_LIGHT_STATUS emTurnRightLightInfo; /// ????????? NET_TRAFFIC_LIGHT_STATUS emUTurnLightInfo; /// ????????? BYTE byReserved[64]; /// ??? }NET_TRAFFIC_LIGHT_STATE; ///@brief ??????? DH_ALARM_TRAFFIC_LIGHT_STATE (????????)????????????????? typedef struct tagALARM_TRAFFIC_LIGHT_STATE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSource; /// ????????????????? int nFrameSequence; /// ???? EM_TRFAFFIC_LIGHT_SOURCE emLightSource; /// ????????? int nLightPeriodsNum; /// stuLightPeriods?????? NET_LIGHTPERIODS_INFO stuLightPeriods[4]; /// ??????????????????????????????? NET_TRAFFIC_LIGHT_STATE stuLightStates[8]; /// ????????????????????????????????????????? int nLightStateNum; /// stuLightStates?????? BYTE byReserved[1020]; /// ?????? }ALARM_TRAFFIC_LIGHT_STATE_INFO; ///@brief ???????????? typedef enum tagEM_SWIPCARD_DEVICE_BUSINESS_TYPE { EM_SWIPCARD_DEVICE_BUSINESS_TYPE_UNKNOWN = 0, /// ??? EM_SWIPCARD_DEVICE_BUSINESS_TYPE_FINGER_PRINT, /// ????????????? EM_SWIPCARD_DEVICE_BUSINESS_TYPE_CLEARCAR, /// ??????t????? }EM_SWIPCARD_DEVICE_BUSINESS_TYPE; ///@brief ??????? typedef enum tagEM_SWIPCARD_DEVICE_STATUS { EM_SWIPCARD_DEVICE_STATUS_UNKNOWN = 0, /// ??? EM_SWIPCARD_DEVICE_STATUS_NORMAL, /// ???? EM_SWIPCARD_DEVICE_STATUS_FAILURE, /// ???? }EM_SWIPCARD_DEVICE_STATUS; ///@brief ????????? typedef struct tagNET_SWIPCARD_DEVICE_INFO { EM_SWIPCARD_DEVICE_BUSINESS_TYPE emBusinessType; /// ???????????? EM_SWIPCARD_DEVICE_STATUS emStatus; /// ??????? BYTE byReserved[1016]; /// ??? }NET_SWIPCARD_DEVICE_INFO; ///@brief ??????? DH_ALARM_SWIPCARD_STATUS (???????????)????????????????? typedef struct tagALARM_SWIPCARD_STATUS_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_TIME stuCurrentTime; /// ??????? NET_SWIPCARD_DEVICE_INFO stuDevices[5]; /// ????????????? int nDeviceNum; /// ?????????? BYTE byReserved[2044]; /// ?????? } ALARM_SWIPCARD_STATUS_INFO; ///@brief ???????? typedef enum tagEM_AUDIOHOST_CHNL_STATE { EM_AUDIOHOST_CHNL_STATE_UNKNOWN = 0, /// ??? EM_AUDIOHOST_CHNL_STATE_NORMAL, /// ???? EM_AUDIOHOST_CHNL_STATE_MUTE, /// ???? EM_AUDIOHOST_CHNL_STATE_FAULT, /// ???? }EM_AUDIOHOST_CHNL_STATE; ///@brief ??????? DH_ALARM_AUDIOHOST_STATE (?????????????)????????????????? typedef struct tagALARM_AUDIOHOST_STATE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???,2:?? char szName[128]; /// ??????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAudioChannel; /// ?????? EM_AUDIOHOST_CHNL_STATE emState; /// ???????? BYTE byReserved[2048]; /// ?????? } ALARM_AUDIOHOST_STATE_INFO; ///@brief ?????????????? typedef enum TagEM_PATIENTDETECTION_TYPE { EM_PATIENTDETECTION_TYPE_UNKNOWN, /// ??????? EM_PATIENTDETECTION_TYPE_CROSS_REGION, /// ????????? EM_PATIENTDETECTION_TYPE_LIGHT_OFF, /// ??????????? EM_PATIENTDETECTION_TYPE_STOP_DETECTION, /// ???? EM_PATIENTDETECTION_TYPE_START_DETECTION, /// ??????? EM_PATIENTDETECTION_TYPE_ESCAPE, /// ???? EM_PATIENTDETECTION_TYPE_ESCAPE_RELEASE, /// ????????? }EM_PATIENTDETECTION_TYPE; ///@brief ???????????? (DH_ALARM_PATIENTDETECTION) typedef struct tagALARM_PATIENTDETECTION_INFO { BYTE bEventAction; /// ???????,0??????????,1???????????????,2???????????????? NET_TIME stuTime; /// ?????????? EM_PATIENTDETECTION_TYPE emDetectionType; /// ?????????????? BYTE byReserved[256]; /// ?????? }ALARM_PATIENTDETECTION_INFO; ///@brief ????????????? (DH_ALARM_RADAR_HIGH_SPEED) typedef struct tagALARM_RADAR_HIGH_SPEED_INFO { NET_TIME_EX stuTime; /// ?????????? float fSpeed; /// ???(????:km/h) char szPlateNumber[16]; /// ???? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? BYTE byReserved[958]; /// ?????? }ALARM_RADAR_HIGH_SPEED_INFO; ///@brief ???????????????? typedef enum TagEM_POLLING_ALARM_DEV_STATE { EM_POLLING_ALARM_DEV_STATE_UNKNOWN = -1, /// ??? EM_POLLING_ALARM_DEV_STATE_ABNORMAL, /// ?????? EM_POLLING_ALARM_DEV_STATE_NORMAL, /// ???? EM_POLLING_ALARM_DEV_STATE_NOT_INSPECTED, /// ????? }EM_POLLING_ALARM_DEV_STATE; ///@brief ????? typedef struct tagNET_POLLING_ALARM_DEV_STATE { EM_POLLING_ALARM_DEV_STATE emSupplyLight; /// ????? EM_POLLING_ALARM_DEV_STATE emKeyboard; /// ???? EM_POLLING_ALARM_DEV_STATE emCard; /// ??? EM_POLLING_ALARM_DEV_STATE emScreen; /// ??? EM_POLLING_ALARM_DEV_STATE emVoice; /// ???? EM_POLLING_ALARM_DEV_STATE emCamera; /// ??? char szReserved[128]; /// ?????? }NET_POLLING_ALARM_DEV_STATE; ///@brief ??????????? (DH_ALARM_POLLING_ALARM) typedef struct tagALARM_POLLING_ALARM_INFO { NET_TIME_EX stuTime; /// ?????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? char szPollingID[64]; /// ????? char szSN[64]; /// ?????? NET_POLLING_ALARM_DEV_STATE stuDeviceState; /// ????? BYTE byReserved[694]; /// ?????? }ALARM_POLLING_ALARM_INFO; ///@brief ???????(?????? DH_ALARM_PASTE_DETECTION) typedef struct tagALARM_PASTE_DETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_MSG_OBJECT stuObject; /// ????????? int nDetectRegionNum; /// ????????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DH_MSG_HANDLE_EX stuEventHandler; /// ??????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved[1023]; /// ???????,???????. }ALARM_PASTE_DETECTION_INFO; ///@brief ?????????????????? (DH_ALARM_BETWEENRULE_TEMP_DIFF) typedef struct tagALARM_BETWEENRULE_DIFFTEMPER_INFO { int nAction; /// 0:??? 1:?? int nOsdId; /// ???OSD????????OSD??? int nChannelID; /// ???????? NET_RADIOMETRY_ALARMCONTION emAlarmContion; /// ???????? 0:???? 1:???? 2:???? int nRuleId1; /// ???????1,????????CFG_RADIOMETRY_RULE_INFO int nRuleId2; /// ???????2,????????CFG_RADIOMETRY_RULE_INFO float fDiffValue; /// ????????? int nTemperatureUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT UINT nPresetID; /// ???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[128]; /// ?????? }ALARM_BETWEENRULE_DIFFTEMPER_INFO; ///@brief ?????????????????(??? DH_ALARM_HOTSPOT_WARNING) typedef struct tagALARM_HOTSPOT_WARNING_INFO { int nAction; /// 0:??? 1:?? int nChannelID; /// ???????? DH_POINT stuCoordinate; /// ????????,????? 0~8191 float fHotSpotValue; /// ??????? int nTemperatureUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_HOTSPOT_WARNING_INFO; ///@brief ?????????????????(??? DH_ALARM_COLDSPOT_WARNING) typedef struct tagALARM_COLDSPOT_WARNING_INFO { int nAction; /// 0:??? 1:?? int nChannelID; /// ???????? DH_POINT stuCoordinate; /// ????????,????? 0~8191 float fColdSpotValue; /// ??????? int nTemperatureUnit; /// ??????(??????????????),?? NET_TEMPERATURE_UNIT NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? }ALARM_COLDSPOT_WARNING_INFO; ///@brief ?????????? (??? DH_ALARM_FLOW_METER) typedef struct tagALARM_FLOW_METER_INFO { DWORD dwSize; float fInstantRate; /// ?????? m/s float fInstantFlow; /// ?????? m^3/h float fTotalFlow; /// ?????? m^3 float fCurDayFlow; /// ???????? m^3 UINT unCurDayWorkingTime; /// ????????????,????: ?? UINT unTotalWorktingTime; /// ????????????,????: ?? NET_GPS_STATUS_INFO stuGPS; /// GPS??? float fCurTemp; /// ??????????,????: ????? } ALARM_FLOW_METER_INFO; ///@brief ???????? typedef enum tagEM_BUF_DROP_FRAME_TYPE { EM_BUF_DROP_FRAME_UNKOWN = 0, /// ???????? ?????? EM_BUF_DROP_FRAME_DEVBUF, /// ???????? ????????? EM_BUF_DROP_FRAME_EXTBUF, /// ???????? ????????? EM_BUF_DROP_FRAME_NETBUF, /// ???????? ????????????? EM_BUF_DROP_FRAME_EXTRA1NETBUF /// ???????? ??????1??????? }EM_BUF_DROP_FRAME_TYPE; ///@brief ????????????(??? DH_ALARM_BUF_DROP_FRAME) typedef struct tagALARM_BUF_DROP_FRAME_INFO { int nAction; /// 0:??? 1:?? EM_BUF_DROP_FRAME_TYPE emDropFrameType; /// ???????? BYTE reserved[1024]; /// ?????? }ALARM_BUF_DROP_FRAME_INFO; ///@brief ??????????? ??????????? (??? DH_ALARM_DCSSWITCH) typedef struct tagALARM_DCSSWITCH_INFO { int nAction; /// 0:??? 1:?? char strMasterIP[32]; /// ????I???????IP char strSlaveIP[32]; /// ?????I??????IP NET_TIME_EX stuStartTime; /// ??I??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[1024]; /// ?????? }ALARM_DCSSWITCH_INFO; ///@brief ???????????????????????????????? (??? DH_ALARM_DOUBLE_DEV_VERSION_ABNORMAL) typedef struct tagALARM_DOUBLE_DEV_VERSION_ABNORMAL_INFO { int nAction; /// 0:??? 1:?? char strMasterVer[64]; /// ??????????(??nAction ?0? ???????) char strSlaveVer[64]; /// ??????????(??nAction ?0? ???????) NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE reserved[1024]; /// ?????? }ALARM_DOUBLE_DEV_VERSION_ABNORMAL_INFO; ///@brief ????????? typedef enum tagEM_RADAR_CONNECT_STATE { EM_RADAR_CONNECT_STATE_UNKNOWN, /// ??? EM_RADAR_CONNECT_STATE_NORMAL, /// ???? EM_RADAR_CONNECT_STATE_EXCEPTION, /// ?? }EM_RADAR_CONNECT_STATE; ///@brief ???????????? (??? DH_ALARM_RADAR_CONNECT_STATE) typedef struct tagALARM_RADAR_CONNECT_STATE_INFO { EM_RADAR_CONNECT_STATE emRadarConnectState; /// ????????? BYTE reserved[1024]; /// ?????? }ALARM_RADAR_CONNECT_STATE_INFO; ///@brief ???????????N?? typedef enum tagEM_HIGHTOSS_ACTION_TYPE { EM_HIGHTOSS_ACTION_UNKNOWN, /// ??? EM_HIGHTOSS_ACTION_APPEAR, /// ??????????????????????????????????????????????????????? EM_HIGHTOSS_ACTION_MOVE, /// ?????????????????????? EM_HIGHTOSS_ACTION_STAY, /// ??????????????????I?????????????????????????????????????????????? EM_HIGHTOSS_ACTION_REMOVE, /// ????????????????????????????????????????????????ID??????????????????????????????????????????? EM_HIGHTOSS_ACTION_DISAPPEAR, /// ???????????????????????????????????????????????????????ID????????? EM_HIGHTOSS_ACTION_SPLIT, /// ??????????????????????????????????????????????ID????????ID?????????? EM_HIGHTOSS_ACTION_MERGE, /// ?????????????????????????????????????ID???????????ID??????????? EM_HIGHTOSS_ACTION_RENAME, /// ?????????????????????????????????????????????????????????????????????????????????ID??????ID?????????????ID } EM_HIGHTOSS_ACTION_TYPE; ///@brief ????????????????? typedef struct tagNET_EVENT_STARTPOINT { NET_POINT stuBelongBox[4]; /// ???????????????????????????8192????? char szBoxInfo[64]; /// ????????????????????? NET_POINT stuPoint; /// ????????? BYTE byReserved[260]; /// ?????? }NET_EVENT_STARTPOINT; ///@brief ?????????????? typedef struct tagNET_HIGHTOSS_OBJECT_INFO { UINT nObjectID; /// ????ID EM_HIGHTOSS_ACTION_TYPE emObjAction; /// ????N?????? NET_RECT stuBoundingBox; /// ?????? UINT nConfidence; /// ????? EM_ANALYSE_OBJECT_TYPE emObjectType; /// ???????? DH_POINT stuCenter; /// ???????? NET_EVENT_IMAGE_OFFSET_INFO stuImageInfo; /// ?????? NET_EVENT_STARTPOINT stuStartPoint; /// ??????????? BYTE byReserved[1172]; /// ?????? } NET_HIGHTOSS_OBJECT_INFO; ///@brief ??????? DH_ALARM_HIGH_TOSS_DETECT (????????????)????????????????? typedef struct tagALARM_HIGH_TOSS_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? BYTE byReserved1[4]; /// ???? int nEventID; /// ???ID UINT nObjNum; /// ??????? NET_HIGHTOSS_OBJECT_INFO stuObjInfos[50]; /// ??????? BYTE byReserved[1024]; /// ?????? }ALARM_HIGH_TOSS_DETECT_INFO; ///@brief ??????????? typedef enum tagEM_HARD_DISK_ABNORMAL_REASON { EM_HARD_DISK_ABNORMAL_REASON_UNKNOWN, /// ??? EM_HARD_DISK_ABNORMAL_REASON_TEMPERATURE_HIGH, /// ????????? EM_HARD_DISK_ABNORMAL_REASON_HARD_DRIVE_ABNORMAL, /// ????????? EM_HARD_DISK_ABNORMAL_REASON_ABOUT_TO_ERROR, /// ?????????? } EM_HARD_DISK_ABNORMAL_REASON; ///@brief ????????? typedef struct tagHARD_DISK_DEVICE_INFO { char szName[32]; /// ??????? EM_HARD_DISK_ABNORMAL_REASON emHardDiskAbnormalReason; /// ??????????? BYTE byReserved[252]; /// ?????? } HARD_DISK_DEVICE_INFO; ///@brief ??????? DH_ALARM_STORAGE_HEALTH_ABNORMAL (?????????????)????????????????? typedef struct tagALARM_STORAGE_HEALTH_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? BYTE byReserved1[4]; /// ???? UINT nEventID; /// ???ID int nDeviceNum; /// ??????? HARD_DISK_DEVICE_INFO stuDeviceInfo[16]; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ?????? } ALARM_STORAGE_HEALTH_ABNORMAL_INFO; ///@brief ??????? DH_ALARM_CLEAR_CAR (??t???????)????????????????? typedef struct tagALARM_CLEAR_CAR_INFO { int nChannelID; /// ????? int nAction; /// 0-??????? NET_TIME_EX UTC; /// ???????????? BYTE byReserved[1020]; /// ?????? }ALARM_CLEAR_CAR_INFO; ///@brief ????????? typedef enum tagEM_MARKFILE_MODE { EM_MARK_FILE_BY_TIME_MODE, /// ??????????????? EM_MARK_FILE_BY_NAME_MODE, /// ??????????????????? }EM_MARKFILE_MODE; ///@brief ????????????? typedef enum tagEM_MARKFILE_NAMEMADE_TYPE { EM_MARKFILE_NAMEMADE_DEFAULT, /// ?????????????????????????????szFilename EM_MARKFILE_NAMEMADE_JOINT, /// ????????????????????????(nDriveNo)????????(nStartCluster)??????????????????? }EM_MARKFILE_NAMEMADE_TYPE; ///@brief CLIENT_SetMarkFile??????? typedef struct tagNET_IN_SET_MARK_FILE { DWORD dwSize; /// EM_MARKFILE_MODE emLockMode; /// ??????????? EM_MARKFILE_NAMEMADE_TYPE emFileNameMadeType; /// ????????????? int nChannelID; /// ????? char szFilename[MAX_PATH]; /// ????? unsigned int nFramenum; /// ???????? unsigned int nSize; /// ??????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? unsigned int nDriveNo; /// ?????(???????????????????????,0??127??????????,????64???????1,128??????????) unsigned int nStartCluster; /// ?????? BYTE byRecordFileType; /// ?????????? 0????????1?????????2????????3?????????4????, 5: ??????? BYTE byImportantRecID; /// 0:?????? 1:?????? BYTE byHint; /// ???????????(nRecordFileType==4?,bImportantRecID<<8 +bHint ,????????????? ) BYTE byRecType; /// 0-????????? 1-??????1??? 2-??????2??? 3-??????3??? UINT nLockTime; /// ????????????????????????????? } NET_IN_SET_MARK_FILE; ///@brief CLIENT_SetMarkFile??????? typedef struct tagNET_OUT_SET_MARK_FILE { DWORD dwSize; } NET_OUT_SET_MARK_FILE; ///@brief CLIENT_SetMarkFileByTime??????? typedef struct tagNET_IN_SET_MARK_FILE_BY_TIME { DWORD dwSize; int nChannel; ///??????????????,??0???,????-1?,????????? NET_TIME_EX stuStartTime; ///?????? NET_TIME_EX stuEndTime; ///??????? BOOL bFlag; ///?????? true : ???, false : ??? BOOL bLockTimeFlag; ///nLockTime?????????? ? TRUE ????nLockTime UINT nLockTime; ///????????????????????? ?????????? } NET_IN_SET_MARK_FILE_BY_TIME; ///@brief CLIENT_SetMarkFileByTime??????? typedef struct tagNET_OUT_SET_MARK_FILE_BY_TIME { DWORD dwSize; } NET_OUT_SET_MARK_FILE_BY_TIME; ///@brief CLIENT_GetMarkInfo??????? typedef struct tagNET_IN_GET_MARK_INFO { DWORD dwSize; } NET_IN_GET_MARK_INFO; ///@brief CLIENT_GetMarkInfo??????? typedef struct tagNET_OUT_GET_MARK_INFO { DWORD dwSize; int nTotalSpace; ///????????????M?? int nMarkSpace; ///????????????? ????M } NET_OUT_GET_MARK_INFO; ///@brief ?????????????? typedef struct tagNET_IN_CLEAR_REPEAT_ENTER { char szCardNO[DH_MAX_CARDINFO_LEN]; /// ??????? BYTE bReserved[1024]; }NET_IN_CLEAR_REPEAT_ENTER; ///@brief ??????????????? typedef struct tagNET_OUT_CLEAR_REPEAT_ENTER { BYTE bReserved[1024]; }NET_OUT_CLEAR_REPEAT_ENTER; ///@brief ???????????DH_ALARM_RECORD_LOSS(???????)???????????????? typedef struct tagALARM_RECORD_LOSS_INFO { int nChannelID; /// ????? int nEventAction; /// ???????, 0:Pulse, 1:Start, 2:Stop char szIP[DH_MAX_IPADDR_LEN_EX]; /// ?????????????IP int nPort; /// ???????????????? BYTE byReserved[1024]; /// ??? } ALARM_RECORD_LOSS_INFO; ///@brief ???????????DH_ALARM_VIDEO_FRAME_LOSS(?????????)???????????????? typedef struct tagALARM_VIDEO_FRAME_LOSS_INFO { int nChannelID; /// ????? int nEventAction; /// ???????, 0:Pulse, 1:Start, 2:Stop char szIP[DH_MAX_IPADDR_LEN_EX]; /// ????????????IP int nPort; /// ??????????????? BYTE byReserved[1024]; /// ??? } ALARM_VIDEO_FRAME_LOSS_INFO; ///@brief ???????????DH_ALARM_RECORD_VOLUME_FAILURE(???????)???????????????? typedef struct tagALARM_RECORD_VOLUME_FAILURE_INFO { int nChannelID; /// ????? int nEventAction; /// ???????, 0:Pulse, 1:Start, 2:Stop BYTE byReserved[1024]; /// ??? } ALARM_RECORD_VOLUME_FAILURE_INFO; ///@brief ??????? DH_EVENT_SNAP_UPLOAD(??????????)???????????????? typedef struct tagEVENT_SNAP_UPLOAD_INFO { int nChannelID; /// ????? int nEventAction; /// ???????, 0:Pulse, 1:Start, 2:Stop BOOL bSnapResult; /// ??????????? char szFilePath[MAX_PATH]; /// ?????????????? BYTE byReserved[1024]; /// ??? }EVENT_SNAP_UPLOAD_INFO; ///@brief ???????????DH_ALARM_UPLOADPIC_FAILCOUNT(?????????????????)???????????????? typedef struct tagALARM_UPLOADPIC_FAILCOUNT_INFO { int nFailCount; /// ????????? BYTE byReserved[1024]; /// ??? } ALARM_UPLOADPIC_FAILCOUNT_INFO; ///@brief ??????????? DH_ALARM_HUMAN_INSIDE(???????????) ???????????????? typedef struct tagALARM_HUMAN_INSIDE_INFO { int nChannelID; /// ????? int nEventAction; /// ???????,-1?????????,0???????????????,1???????????????? int nHumanNumber; /// ???????? NET_TIME stuUtcTime; /// ???????????? BYTE byReserved[1000]; /// ??? } ALARM_HUMAN_INSIDE_INFO; ///@brief ??????????? DH_ALARM_HUMAN_TUMBLE_INSIDE(??????????????) ???????????????? typedef struct tagALARM_HUMAN_TUMBLE_INSIDE_INFO { int nChannelID; /// ????? int nEventAction; /// ???????,-1?????????,0???????????????,1???????????????? NET_TIME stuUtcTime; /// ???????????? BYTE byReserved[1000]; /// ??? } ALARM_HUMAN_TUMBLE_INSIDE_INFO; ///@brief ??????????? DH_ALARM_DISABLE_LOCKIN(?????????????????) ???????????????? typedef struct tagALARM_DISABLE_LOCKIN_INFO { int nChannelID; /// ????? NET_TIME stuUtcTime; /// ???????????? BYTE byReserved[1000]; /// ??? } ALARM_DISABLE_LOCKIN_INFO; ///@brief ??????????? DH_ALARM_DISABLE_LOCKOUT(?????????????????) ???????????????? typedef struct tagALARM_DISABLE_LOCKOUT_INFO { int nChannelID; /// ????? NET_TIME stuUtcTime; /// ???????????? BYTE byReserved[1000]; /// ??? } ALARM_DISABLE_LOCKOUT_INFO; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///@brief CLIENT_GetOperatorName ??????? typedef struct tagNET_IN_GET_OPERATOR_NAME { BYTE byReserved[1024]; /// ??? } NET_IN_GET_OPERATOR_NAME; ///@brief CLIENT_GetOperatorName ??????? typedef struct tagNET_OUT_GET_OPERATOR_NAME { char szOpearatorName[DH_COMMON_STRING_64]; ///?????????? BYTE byReserved[1024]; /// ??? } NET_OUT_GET_OPERATOR_NAME; ///@brief CLIENT_GetSelfCheckInfo ??????? typedef struct tagNET_IN_GET_SELTCHECK_INFO { DWORD dwSize; /// ???????????,dwSize ??w?? sizeof (NET_IN_GET_SELTCHECK_INFO) } NET_IN_GET_SELTCHECK_INFO; ///@brief ???????EVENT_IVS_PTZ_PRESET(???????????????)????????????????? typedef struct tagDEV_EVENT_ALARM_PTZ_PRESET_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ char szPresetName[PTZ_PRESET_NAME_LEN]; /// ???????? PTZ_SPEED_UNIT stuPos; /// ?????????????? int nPresetID; /// ????ID BYTE bReserved[1024]; /// ??????? } DEV_EVENT_ALARM_PTZ_PRESET_INFO; ///@brief ???????EVENT_IVS_RFID_INFO(??????????????)????????????????? typedef struct tagDEV_EVENT_ALARM_RFID_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nAction; /// 0:??? 1:?? int nValidCount; /// RFID ??????????????? char szRfid[10][12]; /// RFID ??????? BYTE bReserved[1024]; /// ??????? } DEV_EVENT_ALARM_RFID_INFO; ///@brief ????????????? typedef struct tagNET_CAR_WEIGTH_INFO { unsigned int nAxleNum; /// ?????? unsigned int nMaxAxleDistance; /// ??????, ????????? unsigned int nAxleWeightInfo[MAX_AXLE_NUM]; /// ????????????, ????Kg, ?????????????????????, ???????? unsigned int nAxleDistanceInfo[MAX_AXLE_NUM-1]; /// ?????????, ????????, ?????????????????, ??????????????????, ???????? unsigned int nOverWeight; /// ???????, ??????? unsigned int nTotalWeight; /// ???????, ??????? unsigned int nAxisType; /// ??????????????????? UINT nSpeed; /// ??????????????????, ????km/h BYTE byReserved[500]; /// ??????? }NET_CAR_WEIGHT_INFO; ///@brief ??????? EVENT_IVS_QSYTRAFFICCARWEIGHT (?????????????)????????????????? typedef struct tagDEV_EVENT_QSYTRAFFICCARWEIGHT_INFO { NET_CAR_WEIGHT_INFO stCarWeightInfo; /// ????????????? DEV_EVENT_TRAFFICJUNCTION_INFO stJunctionInfo; /// ?????????? }DEV_EVENT_QSYTRAFFICCARWEIGHT_INFO; ///@brief ???????? typedef struct tagNET_PLATE_INFO { char szFrontPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ???????? EM_NET_PLATE_COLOR_TYPE emFrontPlateColor; ///???????? char szBackPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? EM_NET_PLATE_COLOR_TYPE emBackPlateColor; /// ??????? BYTE bReserved[1024]; /// ??????? } NET_PLATE_INFO; ///@brief ???????????????????? typedef struct tagNET_SNAP_TIME_INFO { NET_TIME_EX stFrontGateSnapTime; /// ?????????????(?????????) NET_TIME_EX stBackGateSnapTime; /// ???????????(?????????) BYTE bReserved[128]; /// ??????? }NET_SNAP_TIME_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_COMPAREPLATE(????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_COMPAREPLARE_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????? int nSpeed; /// ??????????(????: km/h) int nLane; /// ?????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? NET_PLATE_INFO stuPlateInfo; /// ???????? EVENT_COMM_INFO stCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_SNAP_TIME_INFO stSnapTimeInfo; /// ???????????????????? BYTE bReserved[820]; /// ??????? } DEV_EVENT_TRAFFIC_COMPAREPLATE_INFO; ///@brief ????????? typedef struct tagDEV_EVENT_SHOOTING_SCORE_RECOGNITION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; DH_POINT stuDetectRegion; /// ?????????? int nValidBulletHolesNum; /// ???????????????? NET_BULLET_HOLES_INFO stuBulletHolesInfo[DH_MAX_BULLET_HOLES]; /// ???????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_SHOOTING_SCORE_RECOGNITION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_TRANSFINITE(???????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_TRANSFINITE_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; char szPlateNumber[16]; /// ???? char szTime[20]; /// ??????? double dbLong; /// ?????????? double dbWidth; /// ?????????? double dbHeight; /// ??, ?????? char szViolationCode[16]; /// ??????? char szDescribe[132]; /// ???????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON BYTE bReserved[4096]; /// ???????,???????. } DEV_EVENT_TRAFFIC_TRANSFINITE_INFO; ///@brief ???????????? typedef struct tagDEV_EVENT_TRAFFIC_FCC_IMAGE { DWORD dwOffSet; /// ????????????????????????????, ????:??? DWORD dwLength; /// ??????, ????:??? WORD wWidth; /// ??????, ????:???? WORD wHeight; /// ?????, ????:???? }DEV_EVENT_TRAFFIC_FCC_IMAGE; ///@brief ????????? typedef struct tagDEV_EVENT_TRAFFIC_FCC_OBJECT { DEV_EVENT_TRAFFIC_FCC_IMAGE stuImage; /// ???????????? }DEV_EVENT_TRAFFIC_FCC_OBJECT; ///@brief ???????EVENT_IVS_TRAFFIC_FCC_INFO typedef struct tagDEV_EVENT_TRAFFIC_FCC_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? DWORD nTriggerID; /// ????????: 1??????, 2?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ DWORD dwNum; /// ??????? DWORD dwLitre; /// ????????,???? 0.01?? EM_REFUEL_TYPE emType; /// ????????: ??????("90#","93#","10#","-20#") DWORD dwMoney; /// ??????,???? 0.01? char szPlateNumber[DH_COMMON_STRING_16]; /// ????? char szTime[DH_COMMON_STRING_32]; /// ??????????: "2016-05-23 10:31:17" DEV_EVENT_TRAFFIC_FCC_OBJECT stuObject; /// ????????? BYTE bReserved[1024]; /// ???????,??????? }DEV_EVENT_TRAFFIC_FCC_INFO; ///@brief ????? typedef enum tagEM_PARKINGSPACE_STATUS { EM_PARKINGSPACE_STATUS_UNKNOWN, EM_PARKINGSPACE_STATUS_BUSY, /// ??? EM_PARKINGSPACE_STATUS_FREE, /// ???? EM_PARKINGSPACE_STATUS_OVERLINE, /// ??? }EM_PARKINGSPACE_STATUS; ///@brief ?????????? typedef struct tagNET_FEATUREPIC_AREA { int nRetCount; /// ????????????? DH_POINT stuFeaturePicArea[10]; /// ?????????????? BYTE bReserved[256]; /// ??????? }NET_FEATUREPIC_AREA; ///@brief ???????EVENT_IVS_TRAFFIC_ANALYSE_PRESNAP(????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_ANALYSE_PRESNAP_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????? int nLane; /// ?????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EM_PARKINGSPACE_STATUS emParkingSpaceStatus; /// ???????????????????????? EVENT_COMM_INFO stCommInfo; /// ??????? EM_PARKINGSPACE_STATUS emCurParkingSpaceStatus; /// ?????????????????? NET_FEATUREPIC_AREA stuParkingInfo; /// ?????????????????????4?????????????????????????????? DH_RESOLUTION_INFO stuResolution; /// ??????? BYTE bReserved[716]; /// ??????? }DEV_EVENT_TRAFFIC_ANALYSE_PRESNAP_INFO; ///@brief ???????EVENT_IVS_NEAR_DISTANCE_DETECTION(???????????)????????????????? typedef struct tagDEV_EVENT_NEAR_DISTANCE_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nAction; /// 0:???? 1:??? 2:?? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BYTE bReserved[2048]; /// ??????? } DEV_EVENT_NEAR_DISTANCE_DETECTION_INFO; ///@brief ???????????? typedef struct tagNET_FLOATINGOBJECT_MASK_INFO { UINT nColNum; /// ???????? UINT nOffset; /// ??? UINT nLength; /// ???? BYTE byReserved[508]; /// ?????? } NET_FLOATINGOBJECT_MASK_INFO; ///@brief ????????? typedef enum tagEM_FLOATINGOBJECT_DETECTION_SENCE_TYPE { EM_FLOATINGOBJECT_DETECTION_SENCE_TYPE_UNKNOWN, /// ??? EM_FLOATINGOBJECT_DETECTION_SENCE_TYPE_NOMAL, /// ?????????? EM_FLOATINGOBJECT_DETECTION_SENCE_TYPE_BUBBLE, /// ?????? }EM_FLOATINGOBJECT_DETECTION_SENCE_TYPE; ////@brief ??????? EVENT_IVS_FLOATINGOBJECT_DETECTION (??????????) ????????????????? typedef struct tagDEV_EVENT_FLOATINGOBJECT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? int nImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? UINT nOccurrenceCount; /// ????????????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????????????? BOOL bExistFloatingObject; /// ??????????? NET_EM_EVENT_DATA_TYPE emEventType; /// ??????????? float fCurrentRatio; /// ????????????????????????:%, ??????[0, 100] float fAlarmThreshold; /// ?????????????????????????????, ??????[0, 100] NET_INTELLIGENCE_IMAGE_INFO stuOriginalImage; /// ??? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ???????????????? NET_FLOATINGOBJECT_MASK_INFO stuObjectMaskInfo; /// ???????????? EM_FLOATINGOBJECT_DETECTION_SENCE_TYPE emDetectSenceType; /// ???????????????????????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[3428-POINTERSIZE]; /// ???????,???????. } DEV_EVENT_FLOATINGOBJECT_DETECTION_INFO; ///@brief ??????? EVENT_IVS_WATER_LEVEL_DETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_WATER_LEVEL_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[MAX_EVENT_NAME]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????? char szObjectUUID[48]; /// ???????????????????? NET_EM_EVENT_DATA_TYPE emEventType; /// ??????????? NET_EM_WATER_LEVEL_STATUS emStatus; /// ????? NET_WATER_RULER stuWaterRuler; /// ????? NET_INTELLIGENCE_IMAGE_INFO stuOriginalImage; /// ??? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ???????????????? BOOL bManual; /// ?????????????????????????????????????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[1016-POINTERSIZE]; /// ??????? }DEV_EVENT_WATER_LEVEL_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SHIP_DETECTION (??????????) ????????????????? typedef struct tagDEV_EVENT_SHIP_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? int nImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? NET_CROSSREGION_DIRECTION_INFO emDirection; /// ?????????? NET_CROSSREGION_ACTION_INFO emActionType; /// ???????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? UINT nOccurrenceCount; /// ????????????? int nTrackLineNum; /// ??????????????? NET_POINT stuTrackLine[DH_MAX_TRACK_LINE_NUM];/// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? int nTrackNum; /// ????(????????????????) DH_POLY_POINTS stuTrackInfo[HDBJ_MAX_OBJECTS_NUM]; /// ?????(????????????) EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????????????? BOOL bExistShip; /// ????????? BYTE bReserved[4096]; /// ???????,???????. } DEV_EVENT_SHIP_DETECTION_INFO; ///@brief ??????? EVENT_IVS_HOLD_UMBRELLA (?????????????) ????????????????? typedef struct tagDEV_EVENT_HOLD_UMBRELLA_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????????????? UINT nViolationDuration; /// ????????????????????? ???0????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[3292 - POINTERSIZE*3]; /// ???????,???????. } DEV_EVENT_HOLD_UMBRELLA_INFO; ///@brief ??????? EVENT_IVS_GARBAGE_EXPOSURE (?????????????) ????????????????? typedef struct tagDEV_EVENT_GARBAGE_EXPOSURE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????????????? UINT nViolationDuration; /// ????????????????????? ???0????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[2220 - POINTERSIZE*2]; /// ???????,???????. } DEV_EVENT_GARBAGE_EXPOSURE_INFO; ///@brief ??????? EVENT_IVS_DUSTBIN_OVER_FLOW (??????????????) ????????????????? typedef struct tagDEV_EVENT_DUSTBIN_OVER_FLOW_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????????????? UINT nViolationDuration; /// ????????????????????? ???0????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? UINT nRuleId; /// ?????? char szRuleName[128]; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[2088 - POINTERSIZE*2]; /// ???????,???????. } DEV_EVENT_DUSTBIN_OVER_FLOW_INFO; ///@brief ???????EVENT_IVS_TRASH_WITHOUT_COVER_DETECTION (?????????????????)????????????????? typedef struct tagDEV_EVENT_TRASH_WITHOUT_COVER_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????ID, ??????????????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ?????????????????, ??1??? int nPresetID; /// ?????????????????1???, 0 ??????? char szReserved1[4]; /// ?????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserved[1024]; /// ???????,???????. } DEV_EVENT_TRASH_WITHOUT_COVER_DETECTION_INFO; ///@brief ??????? EVENT_IVS_DOOR_FRONT_DIRTY (????????????) ????????????????? typedef struct tagDEV_EVENT_DOOR_FRONT_DIRTY_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[64]; /// ???????????????? char szShopAddress[256]; /// ?????????? UINT nViolationDuration; /// ????????????????????????0????????? char szSourceID[32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[3292 - POINTERSIZE*3]; /// ???????,???????. } DEV_EVENT_DOOR_FRONT_DIRTY_INFO; ///@brief ??????? EVENT_IVS_STREET_SUNCURE ????????? ????????????????? typedef struct tagDEV_EVENT_STREET_SUNCURE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_COMMON_STRING_128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[DH_COMMON_STRING_64]; /// ???????????????? UINT nViolationDuration; /// ????????????????????????0????????? char szSourceID[DH_COMMON_STRING_32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szShopAddress[64]; /// ?????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[3228 - POINTERSIZE*3]; /// ???????,??????? }DEV_EVENT_STREET_SUNCURE_INFO; ///@brief ??????? EVENT_IVS_OUTDOOR_ADVERTISEMENT ????????? ????????????????? typedef struct tagDEV_EVENT_OUTDOOR_ADVERTISEMENT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_COMMON_STRING_128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[DH_COMMON_STRING_64]; /// ???????????????? UINT nViolationDuration; /// ????????????????????????0????????? char szSourceID[DH_COMMON_STRING_32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szShopAddress[64]; /// ?????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[3228 - POINTERSIZE*3]; /// ???????,??????? }DEV_EVENT_OUTDOOR_ADVERTISEMENT_INFO; ///@brief ??????? EVENT_IVS_HUDDLE_MATERIAL ???????????? ????????????????? typedef struct tagDEV_EVENT_HUDDLE_MATERIAL_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_COMMON_STRING_128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? int nObjectNum; /// ???????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? char szPresetName[DH_COMMON_STRING_64]; /// ???????????????? UINT nViolationDuration; /// ????????????????????????0????????? char szSourceID[DH_COMMON_STRING_32]; /// ???????ID,?????????????????????SourceID??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????,????2~5s?? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX *pstuMosaicImage; /// ???? int nMosaicImageNum; /// ???????? SCENE_IMAGE_INFO_EX *pstuAdvanceImage; /// ?????????? int nAdvanceImageNum; /// ?????????????? BYTE bReserved[3292 - POINTERSIZE*3]; /// ???????,??????? }DEV_EVENT_HUDDLE_MATERIAL_INFO; ///@brief ??????? EVENT_IVS_FIRE_LINE_DETECTION ?????????????? ????????????????? typedef struct tagDEV_EVENT_FIRE_LINE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nSequence; /// ???? UINT nRuleID; /// ?????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[32]; /// ????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_FIRE_LINE_DETECTION_INFO; ///@brief ?????????????????? typedef struct tagNET_OCCUPY_BYS_LANE_CUSTOM_INFO { NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? BYTE byReserved[256]; /// ??????? }NET_OCCUPY_BYS_LANE_CUSTOM_INFO; ///@brief ????????????????????? typedef enum tagEM_OCCUPY_BYS_LANE_IMAGE_TYPE { EM_OCCUPY_BYS_LANE_IMAGE_TYPE_UNKNOWN = -1, /// ??? EM_OCCUPY_BYS_LANE_IMAGE_TYPE_SYNTHESIS, /// ??? EM_OCCUPY_BYS_LANE_IMAGE_TYPE_ORIGINAL, /// ?? }EM_OCCUPY_BYS_LANE_IMAGE_TYPE; ///@brief ????????????????????? typedef struct tagNET_OCCUPY_BYS_LANE_IMAGE_INFO { UINT nOffset; /// ????????????????? UINT nLength; /// ??????,????????? EM_OCCUPY_BYS_LANE_IMAGE_TYPE emImageType; /// ?????? BYTE byReserved[124]; /// ??????? }NET_OCCUPY_BYS_LANE_IMAGE_INFO; ///@brief ??????? EVENT_IVS_OCCUPY_BUS_LANE ??????????????? ????????????????? typedef struct tagDEV_EVENT_OCCUPY_BYS_LANE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? NET_OCCUPY_BYS_LANE_CUSTOM_INFO stuCustomInfo; /// ??? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? NET_OCCUPY_BYS_LANE_IMAGE_INFO stImageInfo[8]; /// ???????? int nImageInfoNum; /// ????????? NET_TIME_EX UTC; /// ???????????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_OCCUPY_BUS_LANE_INFO; ///@brief ??????? EVENT_IVS_DISTRESS_DETECTION ???????? ????????????????? typedef struct tagDEV_EVENT_DISTRESS_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nSequence; /// ???? UINT nRuleID; /// ?????? DH_MSG_OBJECT stuObject; /// ????????? NET_POINT stuDetectRegion[20]; /// ?????????? int nDetectRegionNum; /// ????????????? UINT nPresetID; /// ????????????????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_DISTRESS_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ASSISTANT_WITHOUT_SAFEBELT (???????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_ASSISTANT_WITHOUT_SAFEBELT { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved1[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLane; /// ????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? int nSpeed; /// ??????????,Km/h DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON EVENT_COMM_INFO stCommInfo; /// ??????? }DEV_EVENT_TRAFFIC_ASSISTANT_WITHOUT_SAFEBELT; ///@brief ??????????? typedef struct tagNET_PACK_OBJECT { UINT nObjectID; /// ????ID EM_ANALYSE_OBJECT_TYPE emType; /// ???????? NET_RECT stuBoundingBox; /// ?????? NET_POINT stuCenter; /// ?????????????????????????????????? BYTE bReserved[1024]; /// ??????? }NET_PACKAGE_OBJECT; ///@brief ??????? EVENT_IVS_PACKBROKEN_DETECTION ????????????? ????????????????? typedef struct tagDEV_EVENT_PACKBROKEN_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ?????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ????????????? NET_POINT DetectRegion[20]; /// ?????????? int nObjectNum; /// ???????????? NET_PACKAGE_OBJECT stuObjects[128]; /// ???????????? int nPresetID; /// ?????????????? ??1??? }DEV_EVENT_PACKBROKEN_DETECTION_INFO; ///@brief ??????? EVENT_IVS_PACKLAND_DETECTION ???????????? ????????????????? typedef struct tagDEV_EVENT_PACKLAND_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ?????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ????????????? NET_POINT DetectRegion[20]; /// ?????????? int nObjectNum; /// ???????????? NET_PACKAGE_OBJECT stuObjects[128]; /// ???????????? int nPresetID; /// ?????????????? ??1??? }DEV_EVENT_PACKLAND_DETECTION_INFO; ///@brief ??????? EVENT_IVS_PACKOPEN_DETECTION ????????????? ????????????????? typedef struct tagDEV_EVENT_PACKOPEN_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ?????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ????????????? NET_POINT DetectRegion[20]; /// ?????????? int nObjectNum; /// ???????????? NET_PACKAGE_OBJECT stuObjects[128]; /// ???????????? int nPresetID; /// ?????????????? ??1??? }DEV_EVENT_PACKOPEN_DETECTION_INFO; ///@brief ???????? typedef struct tagNET_VIOLATION_TYPE { BOOL bIsNotStoppingBeforeStopLine; /// ?????????? TRUE??????? FALSE:??? BOOL bIsNoParkingInWaitingArea; /// ?????????? TRUE??????? FALSE:??? BYTE byReserved[24]; /// ???? }NET_VIOLATION_TYPE; ///@brief ??????? EVENT_IVS_TRAFFIC_TURN_RIGHT_NO_STOP ????????????? ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_TURN_RIGHT_NO_STOP_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? int nSpeed; /// ?????????km/h DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? NET_VIOLATION_TYPE stuViolationType; /// ???????? NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? NET_TIME stuStartTime; /// ??????? NET_TIME stuStopTime; /// ???????? int nMaximumSpeed; /// ??????????? km/? int nAverageSpeed; /// ?????????????km/? BYTE byReserved[680]; /// ??????? }DEV_EVENT_TRAFFIC_TURN_RIGHT_NO_STOP_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_CROSSING_GUARDRAIL ?????????? ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_CROSSING_GUARDRAIL_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nTriggerType; /// TriggerType:????????,0??????,1???,2??? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ?????????,??3,2,1,1?????????,0????????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? BYTE byReserved1[2]; int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nSource; /// ????????????????? int nSpeed; /// ?????????km/h DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? BYTE byReserved[712]; /// ??????? }DEV_EVENT_TRAFFIC_CROSSING_GUARDRAIL_INFO; ///@brief ??????? EVENT_IVS_SCALPER_ALARM(??????????)????????????????? typedef struct tagDEV_EVENT_SCALPER_ALARM_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; int nEventID; /// ???ID UINT nSequence; /// ???? UINT nRuleID; /// ?????? NET_TIME_EX UTC; /// ???????????? BOOL bIsGlobalScene; /// ????????? true????????????????????????ImageInfo????? NET_FACE_IMAGE_INFO stuImageInfo; /// ?????????IsGlobalScene?true????? DH_MSG_OBJECT stuObject; /// ??????? FACERECOGNITION_PERSON_INFOEX stuPerson; /// ?????????? UINT nSimilarity; /// ????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_FACE_DATA stuFaceData; /// ??????? UINT nAppearTimes; /// ??????? char szUID[32]; /// ?????????????? char szFeatureVersion[32]; /// ?????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_SCALPER_ALARM_INFO; ///@brief ??????? EVENT_IVS_VEHICLE_PERIPHERAL_ALARM(??????????????)????????????????? typedef struct tagDEV_EVENT_VEHICLE_PERIPHERAL_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? EM_VEHICLE_PERIPHERAL_TYPE emPeripheralType; /// ???????? EM_VEHICLE_PERIPHERAL_ALARM emAlarm; /// ???????? double dbSpeed; /// ???, ????km/h(??????????) double dbDistance; /// ????, ????m char szVideoPath[256]; /// VideoPath???? char byReserved[768]; /// ??????? }DEV_EVENT_VEHICLE_PERIPHERAL_ALARM_INFO; ///@brief ??????? EVENT_IVS_EMERGENCY ????????????????? typedef struct tagDEV_EVENT_EMERGENCY_INFO { int nAction; /// 0:???? UINT nID; /// ????????????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szIMEI[16]; /// ???????????????15???????? UINT nDistance; /// ????????????GPS???????, ????0.1Km char szPlateNumber[64]; /// ??????? char szReplyNumber[16]; /// ?????? int nImageInfoNum; /// ????????? SCENE_IMAGE_INFO_EX stuImageInfo[16]; /// ????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? }DEV_EVENT_EMERGENCY_INFO; ///@brief ????? typedef enum tagEM_STATISTICS_MODE { EM_STATISTICS_MODE_UNKNOWN, /// ??? EM_STATISTICS_MODE_AREA, /// ???? EM_STATISTICS_MODE_SPACE, /// ???? }EM_STATISTICS_MODE; ///@brief ???????????? typedef struct tagNET_SPACE_MODE_INFO { char szParkNo[32]; /// ??????? EM_SPACE_TYPE emSpaceType; /// ???????? BOOL bUsed; /// ????????????? BYTE byReserved[256]; /// ??????? }NET_SPACE_MODE_INFO; ///@brief ???????? typedef enum tagEM_UPDATE_TYPE { EM_UPDATE_TYPE_UNKNOWN = -1, /// ??? EM_UPDATE_TYPE_DELETE, /// ?????????? EM_UPDATE_TYPE_MODIFY, /// ?????????? EM_UPDATE_TYPE_ADD, /// ??????????? }EM_UPDATE_TYPE; ///@brief ?????????????? typedef struct tagNET_UPDATE_INFO { EM_UPDATE_TYPE emType; /// ???????? char szName[32]; /// ???????????????? EM_SPACE_TYPE emBeforeUpdateType; /// ?????????????? EM_SPACE_TYPE emAfterUpdateType; /// ????????????? char szResvered[256]; /// ??????? } NET_UPDATE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_PARKING_STATISTICS ???????????????? typedef struct tagDEV_EVENT_TRAFFIC_PARKING_STATISTICS_INFO { int nAction; /// 0:???? int nChannel; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID NET_AREA_MODE_INFO stuAreaModeInfo[5]; /// ???????????? ????;emStatisticsMode? EM_STATISTICS_MODE_AREA ????? int nAreaModeInfoNum; /// ???????????????? NET_SPACE_MODE_INFO stuSpaceModeInfo[99]; /// ????????????,?????????????????emStatisticsMode? EM_STATISTICS_MODE_SPACE ????? int nSpaceModeInfoNum; /// ???????????????? EM_STATISTICS_MODE emStatisticsMode; /// ????? NET_UPDATE_INFO stuUpdateInfo[99]; /// ?????????????? int nUpdateInfoNum; /// ?????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1008]; /// ??????? }DEV_EVENT_TRAFFIC_PARKING_STATISTICS_INFO; ///@brief ??????? EVENT_IVS_HEAT_IMAGING_TEMPER???????????????? typedef struct tagDEV_EVENT_HEAT_IMAGING_TEMPER_INFO { char szName[64]; /// ??????????? ??????????????????? int nAlarmId; /// ???????? NET_RADIOMETRY_RESULT emResult; /// ???????? fTemperatureValue ?????? NET_RADIOMETRY_ALARMCONTION emAlarmContion; /// ???????? float fTemperatureValue; /// ???????? NET_TEMPERATURE_UNIT emTemperatureUnit; /// ??????(??????????????) DH_POINT stCoordinate; /// ??????????? ??????????,?????0~8191 UINT nPresetID; /// ???? UINT nChannel; /// ????? int nAction; /// 0:???? 1:??? 2:?? DH_POLY_POINTS stuAlarmCoordinates; /// ????????, ???????????????????????IstCoordinate??? BOOL bUseNameEx; /// szNameEx ??????????TRUE??????szNameEx??? char reserved1[4]; /// ?????? char szNameEx[128]; /// ?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? float fThreshold; /// ??????????/??????? int nSlopePeriod; /// ??????????? float fSlopeMutation; /// ??????????? int nChannelID; /// ????????? char reserved[868]; } DEV_EVENT_HEAT_IMAGING_TEMPER_INFO; ///@brief ??????? EVENT_IVS_ROAD_OBSTACLE_DETECTION ???????????????? typedef struct tagDEV_EVENT_ROAD_OBSTACLE_DETECTION_INFO { int nAction; /// 1:??? 2:?? int nChannel; /// ????? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? UINT nRuleID; /// ?????? BYTE byReserved[1020]; /// ??????? }DEV_EVENT_ROAD_OBSTACLE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_BRIGANDAGE_CAR (???????????) ???????????????? typedef struct tagDEV_EVENT_TRAFFIC_BRIGANDAGE_CAR_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ???ID??? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ????????????(????????) UINT UTCMS; /// ??????(?????????) DH_MSG_OBJECT stuVehicle; /// ??????????? DH_MSG_OBJECT stuObject; /// ??????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bNonMotorInfoEx; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_TRIGGER_TYPE emTriggerType; /// ????????: 0??????,1???,2??? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????? 0/1 : 1????????????????0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nSpeed; /// ????(????km/h) DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE byReserved[1004]; /// ??????? }DEV_EVENT_TRAFFIC_BRIGANDAGE_CAR_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_COUNTERFEIT_PLATE_CAR (??????????) ???????????????? typedef struct tagDEV_EVENT_TRAFFIC_COUNTERFEIT_PLATE_CAR_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ???ID??? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ????????????(????????) UINT UTCMS; /// ??????(?????????) DH_MSG_OBJECT stuVehicle; /// ??????????? DH_MSG_OBJECT stuObject; /// ??????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bNonMotorInfoEx; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_TRIGGER_TYPE emTriggerType; /// ????????: 0??????,1???,2??? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????? 0/1 : 1????????????????0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nSpeed; /// ????(????km/h) DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE byReserved[1004]; /// ??????? }DEV_EVENT_TRAFFIC_COUNTERFEIT_PLATE_CAR_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_FAKE_PLATE_CAR (??????????) ???????????????? typedef struct tagDEV_EVENT_TRAFFIC_FAKE_PLATE_CAR_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ???ID??? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ????????????(????????) UINT UTCMS; /// ??????(?????????) DH_MSG_OBJECT stuVehicle; /// ??????????? DH_MSG_OBJECT stuObject; /// ??????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bNonMotorInfoEx; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_TRIGGER_TYPE emTriggerType; /// ????????: 0??????,1???,2??? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????? 0/1 : 1????????????????0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nSpeed; /// ????(????km/h) DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE byReserved[1004]; /// ??????? }DEV_EVENT_TRAFFIC_FAKE_PLATE_CAR_INFO; ///@brief ??????? EVENT_IVS_SEWAGE_DETECTION (?????????) ???????????????? typedef struct tagDEV_EVENT_SEWAGE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; EM_CLASS_TYPE emClassType; /// ??????????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ???ID??? double PTS; /// ????(?????????) UINT UTC; /// ????????????(????????) UINT UTCMS; /// ??????(?????????) int nDetectRegionNum; /// ???????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? UINT nPresetID; /// ?????????????????1???, ???????????????????? NET_INTELLIGENCE_IMAGE_INFO stuOriginalImage; /// ??? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ???????????????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_SEWAGE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_MOTORCYCLE_FORBID (??????) ???????????????? typedef struct tagDEV_EVENT_TRAFFIC_MOTORCYCLE_FORBID { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ???ID??? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ????????????(????????) UINT UTCMS; /// ??????(?????????) DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bNonMotorInfoEx; /// ??????????????? int nLane; /// ????????? int nSequence; /// ?????? 0/1 : 1????????????????0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserved[1020]; /// ??????? }DEV_EVENT_TRAFFIC_MOTORCYCLE_FORBID; ///@brief ?????? typedef enum tagEM_WATER_COLOR { EM_WATER_COLOR_UNKNOWN, /// ??? EM_WATER_COLOR_BLACK, /// ??? EM_WATER_COLOR_RED, /// ??? EM_WATER_COLOR_GREEN, /// ??? EM_WATER_COLOR_YELLOW, /// ??? }EM_WATER_COLOR; ///@brief ??????? EVENT_IVS_WATERCOLOR_DETECTION (?????????) ???????????????? typedef struct tagDEV_EVENT_WATERCOLOR_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; EM_CLASS_TYPE emClassType; /// ??????????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? int nEventID; /// ???ID??? double PTS; /// ????(?????????) UINT UTC; /// ????????????(????????) UINT UTCMS; /// ??????(?????????) int nDetectRegionNum; /// ???????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? UINT nPresetID; /// ?????????????????1???, ???????????????????? EM_WATER_COLOR emWaterColor; /// ?????? NET_INTELLIGENCE_IMAGE_INFO stuOriginalImage; /// ??? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ???????????????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_WATERCOLOR_DETECTION_INFO; ///@brief ????????????? typedef enum tagEM_HELMET_EVENT_TYPE { EM_UNKNOWN_TYPE, EM_NOT_WEAR_HELMET, /// ????????? }EM_HELMET_EVENT_TYPE; ///@brief ??????? EVENT_IVS_HELMET_DETECTION (??????????) ????????????????? typedef struct tagDEV_EVENT_HELMET_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nRuleID; /// ?????? int nObjectID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_HELMET_EVENT_TYPE emHelmetEventType ; /// ??????????? HUMAN_IMAGE_INFO stuHumanImage; /// ?????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? }DEV_EVENT_HELMET_DETECTION_INFO; ///@brief Mask??? typedef struct tagNET_CFG_MASK_INFO { UINT nOffset; /// Mask?????????????????????? UINT nLength; /// Mask???????,????????? BYTE byReserved[1016]; }NET_CFG_MASK_INFO; ///@brief ??????? typedef enum tagEM_DEPOSIT_DETECTION_SCENE_TYPE { EM_DEPOSIT_DETECTION_SCENE_TYPE_UNKNOWN = -1, /// ??? EM_DEPOSIT_DETECTION_SCENE_TYPE_LATTICE, /// ????? EM_DEPOSIT_DETECTION_SCENE_TYPE_CONVEROR_BELT, /// ???????????? }EM_DEPOSIT_DETECTION_SCENE_TYPE; ///@brief ??????? EVENT_IVS_DEPOSIT_DETECTION (???????????????) ????????????????? typedef struct tagDEV_EVENT_DEPOSIT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nEventID; /// ???ID int nDetectRegionNum; /// ????????????? NET_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? char szRegionName[64]; /// ??????? UINT nStackThreshold; /// ??????????? UINT nGridState; /// ????? 0?????1????? 2????? 3?????? 4?? ???? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ????????? NET_INTELLIGENCE_IMAGE_INFO stuDepositImage; /// ?????????? BYTE byReserved[1024]; /// ??????????????????????????????????????????? NET_CFG_MASK_INFO stuMask; /// Mask??? EM_DEPOSIT_DETECTION_SCENE_TYPE emSceneType; /// ??????? }DEV_EVENT_DEPOSIT_DETECTION_INFO; ///@brief ??????? EVENT_IVS_HOTSPOT_WARNING (????????????) ????????????????? typedef struct tagDEV_EVENT_HOTSPOT_WARNING_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nEventID; /// ???ID DH_POINT stuPoint; /// ????????,????? 0~8191 float fHotSpotValue; /// ??????? NET_TEMPERATURE_UNIT nTemperatureUnit; /// ??????(??????????????) BYTE byReserved[256]; /// ??????? }DEV_EVENT_HOTSPOT_WARNING_INFO; ///@brief ??????? EVENT_IVS_CLASSROOM_BEHAVIOR (??????????????) ????????????????? typedef struct tagDEV_EVENT_CLASSROOM_BEHAVIOR_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? UINT nObjectID; /// ????ID UINT nSequence; /// ???? EM_CLASSROOM_ACTION emClassroomAction; /// ??????????? NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? UINT nPresetID; /// ?????????????? char szPresetName[64]; /// ????????????????? char szSerialUUID[22]; /// ???????????????????? /// ?????????2??%d%d:01-??????,02-??,03-???,99-????; ///????14??YYYYMMDDhhmmss:???????????;??5??%u%u%u%u%u??????ID????00001 BYTE byReserved1[2]; /// ?????????? DH_RECT stuBoundingBox; /// ?????? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ?????? NET_INTELLIGENCE_IMAGE_INFO stuFaceImage; /// ?????? NET_FACE_ATTRIBUTE_EX stuFaceAttributes; /// ???? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserved[1024]; /// ?????? } DEV_EVENT_CLASSROOM_BEHAVIOR_INFO; ///@brief ??????? EVENT_IVS_VEHICLE_DISTANCE_NEAR (????????????????????) ????????????????? typedef struct tagDEV_EVENT_VEHICLE_DISTANCE_NEAR_INFO { int nAction; /// ???????, 0??????????, 1???????????????, 2????????????????; NET_TIME_EX UTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szDriverID[32]; /// ???ID char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? float fHorizontalDistance; /// ???????, ?????? float fParallelDistance; /// ???????, ?????? int nTargetCoordsX; /// ????????????????X int nTargetCoordsY; /// ????????????????Y int nTargetCoordsHeight; /// ???????????, ?? int nTargetCoordsWidth; /// ???????????, ?? BYTE bReserved[712]; /// ?????? } DEV_EVENT_VEHICLE_DISTANCE_NEAR_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVER_ABNORMAL (?????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVER_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0??????????, 1???????????????, 2???????????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME_EX UTC; /// ???????????? char szVideoPath[256]; /// ??????????FTP??????? char szDriverID[32]; /// ???ID BYTE bReserved[736]; /// ?????? } DEV_EVENT_TRAFFIC_DRIVER_ABNORMAL_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVER_CHANGE (??????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVER_CHANGE_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0??????????, 1???????????????, 2???????????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? NET_TIME_EX UTC; /// ???????????? char szPrevDriverID[MAX_COMMON_STRING_32]; /// ?????????????ID char szCurDriverID[MAX_COMMON_STRING_32]; /// ?????????????ID char szVideoPath[256]; /// ??????????FTP??????? BYTE bReserved[768]; /// ?????? } DEV_EVENT_TRAFFIC_DRIVER_CHANGE_INFO; ///@brief ???????? typedef struct tagNET_HELMET_ATTRIBUTE { EM_WORK_HELMET_STATE emHelmetState; /// ????????? EM_CLOTHES_COLOR emHelmetColor; /// ??????? UINT nHelmetFlag; /// ????????: 0:???, 1:?????????????, 2:????????????, 3:???????? int nReportFlag; /// ?????????? -1: ???, 0: ??????, 1: ????, int nHasLegalHat; /// ?????????, 0-??? 1-????? 2-??? BYTE byReserved[1012]; /// ?????? } NET_HELMET_ATTRIBUTE; ///@brief ??????????? typedef enum tagEM_CLOTHES_LEGAL_STATE { EM_CLOTHES_LEGAL_STATE_UNKNOWN, /// ??? EM_CLOTHES_LEGAL_STATE_WRONGFUL, /// ????? EM_CLOTHES_LEGAL_STATE_LEGAL, /// ??? } EM_CLOTHES_LEGAL_STATE; ///@brief ????????????????? typedef struct tagNET_LINK_GROUP_INFO { char szGroupID[128]; /// ??????????????ID char szFeatureName[128]; /// ???????????????? UINT nSimilarity; /// ??????????????? UINT nSampleAttributes; /// ????????, 0: ???, 1: ?????? 2: ?????? char szGroupName[128]; /// ?????????????????? char szReserved[512]; /// ?????? }NET_LINK_GROUP_INFO; ///@brief ?????????? typedef struct tagNET_WORKCLOTHES_ATTRIBUTE { EM_WORKCLOTHES_STATE emWorkClothesState; /// ???????????? EM_CLOTHES_COLOR emWorkClothColor; /// ????????? EM_CLOTHES_LEGAL_STATE emWorkClothesLegalState; /// ??????????? int nLinkGroupInfoNum; /// ????????????????????? NET_LINK_GROUP_INFO *pstuLinkGroupInfo; /// ????????????????? EM_CLOTHES_COLOR emTrousersColor; /// ????????????? char szReserved1[4]; /// ?????? UINT nCutoutPolicy; /// ???????, 0:???,1:???,2:????? char szLinkGroupName[128]; /// ?????????????????? char szLinkGroupID[128]; /// ??????????????ID BYTE byReserved[748-POINTERSIZE]; /// ?????? } NET_WORKCLOTHES_ATTRIBUTE; ///@brief ?????????? typedef enum tagEM_WORKPANTS_STATE { EM_WORKPANTS_STATE_UNKNOWN, /// ??? EM_WORKPANTS_STATE_NOTWEAR, /// ??? EM_WORKPANTS_STATE_WEAR, /// ?? } EM_WORKPANTS_STATE; ///@brief ?????????? typedef struct tagNET_WORKPANTS_ATTRIBUTE { EM_WORKPANTS_STATE emWorkPantsState; /// ?????????? EM_CLOTHES_COLOR emWorkPantsColor; /// ????????? BYTE byReserved[1024]; /// ?????? } NET_WORKPANTS_ATTRIBUTE; ///@brief ???????????????? typedef enum tagEM_EVENT_WORKCLOTHES_RULE_TYPE { EM_EVENT_WORKCLOTHES_RULE_UNKNWON, /// ??? EM_EVENT_WORKCLOTHES_RULE_HELMET, /// ???? EM_EVENT_WORKCLOTHES_RULE_CLOTHES, /// ?????? EM_EVENT_WORKCLOTHES_RULE_PANTS, /// ?????? EM_EVENT_WORKCLOTHES_RULE_PROTECTIVESUIT, /// ?????? EM_EVENT_WORKCLOTHES_RULE_SHOESCOVER, /// ???? EM_EVENT_WORKCLOTHES_RULE_SAFETYROPE, /// ????? EM_EVENT_WORKCLOTHES_RULE_NORMALHAT, /// ???? EM_EVENT_WORKCLOTHES_RULE_MASK, /// ???? EM_EVENT_WORKCLOTHES_RULE_APRON, /// ??? EM_EVENT_WORKCLOTHES_RULE_GLOVE, /// ???? EM_EVENT_WORKCLOTHES_RULE_BOOT, /// ??? EM_EVENT_WORKCLOTHES_RULE_NOHAT, /// ????? EM_EVENT_WORKCLOTHES_RULE_TYPE_PROHLMET, /// ???????? EM_EVENT_WORKCLOTHES_RULE_FIREPROOFCLOTHES, /// ?????? EM_EVENT_WORKCLOTHES_RULE_UNIFORM, /// ??? EM_EVENT_WORKCLOTHES_RULE_MULTIMETER, /// ????? EM_EVENT_WORKCLOTHES_RULE_BREATHINGMASK, /// ?????????? EM_EVENT_WORKCLOTHES_RULE_GLASSES, /// ??? EM_EVENT_WORKCLOTHES_RULE_VEST, /// ?????? EM_EVENT_WORKCLOTHES_RULE_WRISTGUARD, /// ?????? EM_EVENT_WORKCLOTHES_RULE_SAFETYSHOES, /// ????? EM_EVENT_WORKCLOTHES_RULE_HOOD, /// ??? } EM_EVENT_WORKCLOTHES_RULE_TYPE; ///@brief ?????? typedef enum tagEM_WEARING_STATE { EM_WEARING_STATE_UNKNOWN, /// ??? EM_WEARING_STATE_NOTWEAR, /// ??????? EM_WEARING_STATE_WEAR, /// ?????? EM_WEARING_STATE_NO_EXIT, /// ????????????????? } EM_WEARING_STATE; ///@brief ??????? typedef enum tagEM_COMPLIANCE_STATE { EM_COMPLIANCE_STATE_COMPLIANT, /// ??? EM_COMPLIANCE_STATE_NONCOMPLIANT, /// ????? EM_COMPLIANCE_STATE_UNKNOWN, /// ??? } EM_COMPLIANCE_STATE; ///@brief ?????????? typedef enum tagEM_FIREPROOF_CLOTHES_STATE { EM_FIREPROOF_CLOTHES_STATE_UNKNOWN, /// ??? EM_FIREPROOF_CLOTHES_STATE_NO, /// ???????????? EM_FIREPROOF_CLOTHES_STATE_YES, /// ??????????? EM_FIREPROOF_CLOTHES_STATE_NOEXIT, /// ??????????????????? } EM_FIREPROOF_CLOTHES_STATE; ///@brief ?????????????????? typedef struct tagNET_NORMALHAT_ATTRIBUTE { EM_WEARING_STATE emHasHat; /// ??????????? EM_COMPLIANCE_STATE emHasLegalHat; /// ??????? } NET_NORMALHAT_ATTRIBUTE; ///@brief ???????????????? typedef struct tagNET_MASK_ATTRIBUTE { EM_WEARING_STATE emHasMask; /// ??????????? EM_COMPLIANCE_STATE emHasLegalMask; /// ???????? } NET_MASK_ATTRIBUTE; ///@brief ??????????????? typedef struct tagNET_APRON_ATTRIBUTE { EM_WEARING_STATE emHasApron; /// ?????????? EM_COMPLIANCE_STATE emHasLegalApron; /// ???????? } NET_APRON_ATTRIBUTE; ///@brief ???????????????? typedef struct tagNET_GLOVE_ATTRIBUTE { EM_WEARING_STATE emHasGlove; /// ??????????? EM_COMPLIANCE_STATE emHasLegalGlove; /// ???????? } NET_GLOVE_ATTRIBUTE; ///@brief ??????????????? typedef struct tagNET_BOOT_ATTRIBUTE { EM_WEARING_STATE emHasBoot; /// ?????????? EM_COMPLIANCE_STATE emHasLegalBoot; /// ??????? } NET_BOOT_ATTRIBUTE; ///@brief ???????????????? typedef struct tagNET_SHOESCOVER_ATTRIBUTE { EM_WEARING_STATE emHasCover; /// ??????????? EM_COMPLIANCE_STATE emHasLegalCover; /// ???????? } NET_SHOESCOVER_ATTRIBUTE; ///@brief ????????????????? typedef struct tagNET_NOHAT_ATTRIBUTE { EM_WEARING_STATE emHasHat; /// ?????????? EM_COMPLIANCE_STATE emHasLegalHat; /// ??????? } NET_NOHAT_ATTRIBUTE; ///@brief ???????????????????? typedef struct tagNET_PROHELMET_ATTRIBUTE { EM_WEARING_STATE emHasHat; /// ??????????????? EM_CLOTHES_COLOR emHatColor; /// ?????? char szReserved[128]; /// ?????? } NET_PROHELMET_ATTRIBUTE; ///@brief ?????????????????? typedef struct tagNET_FIREPROOF_CLOTHES { EM_FIREPROOF_CLOTHES_STATE emHasFireProofClothes; /// ?????????? EM_CLOTHES_COLOR emFireProofClothesColor; /// ????????? char szReserved[128]; /// ?????? } NET_FIREPROOF_CLOTHES; ///@brief ??????????????????? typedef enum tagEM_GLASSES_RULE_TYPE { EM_GLASSES_RULE_TYPE_UNKNOWN = -1, /// ??? EM_GLASSES_RULE_TYPE_NO_GLASSES, /// ????? EM_GLASSES_RULE_TYPE_SUN_GLASSES, /// ????? EM_GLASSES_RULE_TYPE_BLACK_RIMMED_GLASSES, /// ?????? EM_GLASSES_RULE_TYPE_HALF_RIMMED_GLASSES, /// ?????? EM_GLASSES_RULE_TYPE_RIMLESS_GLASSES, /// ?????? EM_GLASSES_RULE_TYPE_NORMAL_GLASSES, /// ?????? EM_GLASSES_RULE_TYPE_INDUSTRIAL_SAFETY_GLASSES, /// ???????? } EM_GLASSES_RULE_TYPE; ///@brief ??????????????? typedef struct tagNET_GLASSES_RELATED_INFO { EM_GLASSES_RULE_TYPE emGlassesType; /// ??????????????????? int nGlassesLegalMask; /// ????????, 0-??? 1-????? 2-??? char szReserved[64]; /// ?????? } NET_GLASSES_RELATED_INFO; ///@brief ???????????????????? typedef struct tagNET_BREATHING_MASK_INFO { int nHasLegalBreathingMask; /// ????????????, 0:?????1:??????2:??? int nHasBreathingMask; /// ????????????????, 0: ??? 1: ??? 2: ?? char byReserved[56]; /// ?????? }NET_BREATHING_MASK_INFO; ///@brief ?????????????????? typedef struct tagNET_PROTECTIVE_SUIT_INFO { int nHasProtectiveSuit; /// ??????????????, 0: ???, 1: ???, 2: ??, 3:??????????????????? EM_CLOTHES_COLOR emProtectiveSuitColor; /// ????????? char szReserved[24]; /// ?????? }NET_PROTECTIVE_SUIT_INFO; ///@brief ????????????????? typedef struct tagNET_SAFETY_ROPE_INFO { int nCompliantType; /// ???????????????, 0-????? 1-??? 2-??? char szReserved[28]; /// ?????? }NET_SAFETY_ROPE_INFO; ///@brief ??????????????? typedef struct tagNET_UNIFORM_INFO { int nHasUniform; /// ????????????, 0: ???, 1: ???, 2: ??, 3:??????????????? EM_CLOTHES_COLOR emUniformColor; /// ?????? char szReserved[24]; /// ?????? }NET_UNIFORM_INFO; ///@brief ????????????????? typedef struct tagNET_SAFE_BELT_INFO { int nHasSafeBelt; /// ??????? , 0:?????1:???????????2:???????? int nHasLegalSafeBelt; /// ??????????, 0-??? 1-????? 2-??? char szReserved[24]; /// ?????? }NET_SAFE_BELT_INFO; ///@brief ?????????????????? typedef struct tagNET_VEST_INFO { int nHasVest; /// ????????, 0:?????1:???????????2:????????? int nHasLegalVest; /// ??????????, 0-??? 1-????? 2-??? char szReserved[24]; /// ?????? }NET_VEST_INFO; ///@brief ????????????????? typedef struct tagNET_SAFETY_SHOES_INFO { int nHasSafetyShoes; /// ????????, 0:?????1:???????????2:????????? int nHasLegalSafetyShoes; /// ?????????? , 0-??? 1-????? 2-??? char szReserved[24]; /// ?????? }NET_SAFETY_SHOES_INFO; ///@brief ?????????????????? typedef struct tagNET_WRIST_GUARD_INFO { int nHasWristGuard; /// ????????, 0:?????1:??????????2:????????? int nHasLegalWristGuard; /// ?????????? , 0-??? 1-????? 2-??? char szReserved[24]; /// ?????? }NET_WRIST_GUARD_INFO; ///@brief ???????EVENT_IVS_WORKCLOTHES_DETECT(???(????/????????)??????)????????????????? typedef struct tagDEV_EVENT_WORKCLOTHES_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? UINT nObjectID; /// ????ID UINT nGroupID; /// ?????ID???????????nGroupID??? UINT nCountInGroup; /// ??????????????????,?????????nCountInGroup??? UINT nIndexInGroup; /// ????????????????????1??? SCENE_IMAGE_INFO stuSceneImage; /// ????????? HUMAN_IMAGE_INFO stuHumanImage; /// ?????? NET_HELMET_ATTRIBUTE stuHelmetAttribute; /// ???????? NET_WORKCLOTHES_ATTRIBUTE stuWorkClothesAttribute; /// ?????????? NET_WORKPANTS_ATTRIBUTE stuWorkPantsAttribute; /// ????????? int nAlarmType; /// ????Z???????? 0-??? 1-??????????Z 2: ??????????Z3:????????Z4:???????????????Z char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? /// ?????????+???+???????????????2???????14??????????5?? /// ?????02-??? ???YYYYMMDDhhmmss ???????00001 EM_EVENT_WORKCLOTHES_RULE_TYPE emRuleType; /// ???????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? NET_NORMALHAT_ATTRIBUTE stuNormalHat; /// ?????????????????? NET_MASK_ATTRIBUTE stuMask; /// ???????????????? NET_APRON_ATTRIBUTE stuApron; /// ??????????????? NET_GLOVE_ATTRIBUTE stuGlove; /// ???????????????? NET_BOOT_ATTRIBUTE stuBoot; /// ??????????????? NET_SHOESCOVER_ATTRIBUTE stuShoesCover; /// ???????????????? NET_NOHAT_ATTRIBUTE stuNoHat; /// ????????????????? NET_PROHELMET_ATTRIBUTE stuProhelmet; /// ???????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_FIREPROOF_CLOTHES stuFireProofClothes; /// ?????????????????? DH_MSG_OBJECT_EX2* pstObjectInfo; /// ??????????? UINT nObjectNum; /// ????????? NET_GLASSES_RELATED_INFO stuGlassesInfo; /// ??????????????? NET_BREATHING_MASK_INFO stuBreathingMaskInfo; /// ???????????????????? NET_PROTECTIVE_SUIT_INFO stuProtectiveSuitInfo; /// ?????????????????? NET_UNIFORM_INFO stuUniformInfo; /// ??????????????? NET_SAFETY_ROPE_INFO stuSafetyRopeInfo; /// ????????????????? NET_SAFE_BELT_INFO stuSafeBeltInfo; /// ????????????????? NET_VEST_INFO stuVestInfo; /// ?????????????????? NET_SAFETY_SHOES_INFO stuSafetyShoesInfo; /// ????????????????? NET_WRIST_GUARD_INFO stuWristGuardInfo; /// ?????????????????? UINT nLegalAlarmType; /// ???????, 0:???, 1:????????????? 2:??????????? bool bHelmet; /// ????????Helmet???? bool bClothes; /// ????????Clothes???? bool bWorkPants; /// ????????WorkPants???? bool bNormalHat; /// ????????NormalHat???? bool bMask; /// ????????Mask???? bool bApron; /// ????????Apron???? bool bGlove; /// ????????Glove???? bool bBoot; /// ????????Boot???? bool bShoesCover; /// ????????ShoesCover???? bool bNoHat; /// ????????NoHat???? bool bProhelmet; /// ????????Prohelmet???? bool bGlasses; /// ????????Glasses???? bool bFireProofClothes; /// ????????FireProofClothes???? bool bProtectiveSuit; /// ????????ProtectiveSuit???? bool bUniform; /// ????????Uniform???? bool bBreathingMask; /// ????????BreathingMask???? bool bSafeBelt; /// ????????SafeBelt???? bool bVest; /// ????????Vest???? bool bSafetyShoes; /// ????????SafetyShoes???? bool bWristGuard; /// ????????WristGuard???? bool bSafetyRope; /// ????????SafetyRope???? char szResvered1[3]; /// ?????? char byReserved[304 - POINTERSIZE]; /// ?????? } DEV_EVENT_WORKCLOTHES_DETECT_INFO; ///@brief ??????????????? typedef enum tagEM_SECURITYGATE_PERSON_PASS_DIRECTION { EM_SECURITYGATE_PERSON_PASS_DIRECTION_UNKNOWN = 0, /// ??? EM_SECURITYGATE_PERSON_PASS_DIRECTION_IN, /// ???? EM_SECURITYGATE_PERSON_PASS_DIRECTION_OUT, /// ?? }EM_SECURITYGATE_PERSON_PASS_DIRECTION; ///@brief ???????????????? typedef enum tagEM_SECURITYGATE_ALARM_LEVEL { EM_SECURITYGATE_ALARM_LEVEL_UNKNOWN = 0, /// ??? EM_SECURITYGATE_ALARM_LEVEL_NON, /// ????? EM_SECURITYGATE_ALARM_LEVEL_LOW, /// ???????????? EM_SECURITYGATE_ALARM_LEVEL_MIDDLE, /// ???????????? EM_SECURITYGATE_ALARM_LEVEL_HIGH, /// ???????????? }EM_SECURITYGATE_ALARM_LEVEL; ///@brief ???????????? typedef enum tagEM_SECURITYGATE_ALARM_POSITION { EM_SECURITYGATE_ALARM_POSITION_UNKNWON = -1, /// ??? EM_SECURITYGATE_ALARM_POSITION_LEFT_1, /// ??1 EM_SECURITYGATE_ALARM_POSITION_LEFT_2, /// ??2 EM_SECURITYGATE_ALARM_POSITION_LEFT_3, /// ??3 EM_SECURITYGATE_ALARM_POSITION_LEFT_4, /// ??4 EM_SECURITYGATE_ALARM_POSITION_LEFT_5, /// ??5 EM_SECURITYGATE_ALARM_POSITION_LEFT_6, /// ??6 EM_SECURITYGATE_ALARM_POSITION_MIDDLE_1, /// ??1 EM_SECURITYGATE_ALARM_POSITION_MIDDLE_2, /// ??2 EM_SECURITYGATE_ALARM_POSITION_MIDDLE_3, /// ??3 EM_SECURITYGATE_ALARM_POSITION_MIDDLE_4, /// ??4 EM_SECURITYGATE_ALARM_POSITION_MIDDLE_5, /// ??5 EM_SECURITYGATE_ALARM_POSITION_MIDDLE_6, /// ??6 EM_SECURITYGATE_ALARM_POSITION_RIGHT_1, /// ??1 EM_SECURITYGATE_ALARM_POSITION_RIGHT_2, /// ??2 EM_SECURITYGATE_ALARM_POSITION_RIGHT_3, /// ??3 EM_SECURITYGATE_ALARM_POSITION_RIGHT_4, /// ??4 EM_SECURITYGATE_ALARM_POSITION_RIGHT_5, /// ??5 EM_SECURITYGATE_ALARM_POSITION_RIGHT_6, /// ??6 } EM_SECURITYGATE_ALARM_POSITION; ///@brief ??????? typedef enum tagEM_TEMPERATURE_TYPE { EM_TEMPERATURE_TYPE_UNKNOWN = -1, /// ??? EM_TEMPERATURE_TYPE_UNDEFINE, /// ????? EM_TEMPERATURE_TYPE_LOW, /// ?????? EM_TEMPERATURE_TYPE_NORMAL, /// ???????? EM_TEMPERATURE_TYPE_HIGH, /// ?????? } EM_TEMPERATURE_TYPE; ///@brief ???????????????? typedef enum tagEM_SECURITYGATE_EXPRESSION_TYPE { EM_SECURITYGATE_EXPRESSION_UNKNOWN = -1, /// ??? EM_SECURITYGATE_EXPRESSION_UNDEFINE, /// ????? EM_SECURITYGATE_EXPRESSION_ANGER, /// ???? EM_SECURITYGATE_EXPRESSION_SAD, /// ???? EM_SECURITYGATE_EXPRESSION_DISGUST, /// ??? EM_SECURITYGATE_EXPRESSION_FEAR, /// ??? EM_SECURITYGATE_EXPRESSION_SURPRISED, /// ???? EM_SECURITYGATE_EXPRESSION_CALM, /// ??? EM_SECURITYGATE_EXPRESSION_SMILE, /// ??? EM_SECURITYGATE_EXPRESSION_LAUGH, /// ???? EM_SECURITYGATE_EXPRESSION_HAPPY, /// ???? EM_SECURITYGATE_EXPRESSION_CONFUSE, /// ???? EM_SECURITYGATE_EXPRESSION_SCREAM, /// ??? }EM_SECURITYGATE_EXPRESSION_TYPE; ///@brief ??????????????????? typedef enum tagEM_SECURITYGATE_GLASSES_TYPE { EM_SECURITYGATE_GLASSES_UNKNOWN = -1, /// ??? EM_SECURITYGATE_GLASSES_UNDEFINE, /// ????? EM_SECURITYGATE_WITHOUT_GLASSES, /// ??????? EM_SECURITYGATE_WITH_GLASSES, /// ????? }EM_SECURITYGATE_GLASSES_TYPE; ///@brief ??????????????? typedef enum tagEM_SECURITYGATE_SEX_TYPE { EM_SECURITYGATE_SEX_MAN = 0, /// ?? EM_SECURITYGATE_SEX_WOMEN, /// ? EM_SECURITYGATE_SEX_UNKNOWN, /// ??? }EM_SECURITYGATE_SEX_TYPE; ///@brief ??????????????? typedef struct tagNET_SECURITYGATE_ALARM_FACE_INFO { EM_SECURITYGATE_SEX_TYPE emSex; /// ??? int nAge; /// ???? EM_SECURITYGATE_EXPRESSION_TYPE emEmotion; /// ???? EM_SECURITYGATE_GLASSES_TYPE emGlasses; /// ??????? EM_MASK_STATE_TYPE emMask; /// ???????? EM_BEARD_STATE_TYPE emBeard; /// ????????? int nAttractive; /// ????? char szReserved1[4]; EM_MOUTH_STATE_TYPE emMouth; /// ????? EM_EYE_STATE_TYPE emEye; /// ????? float fTemperature; /// ???? EM_TEMPERATURE_UNIT emTempUnit; /// ?????? EM_TEMPERATURE_TYPE emTempType; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_SECURITYGATE_ALARM_FACE_INFO; ///@brief ???????????? typedef struct tagNET_SECURITYGATE_ALARM_FACEIMAGE_INFO { UINT nOffSet; /// ??????????????????? UINT nLength; /// ??????,??????? BYTE byReserved[24]; /// ?????? }NET_SECURITYGATE_ALARM_FACEIMAGE_INFO; ///@brief ???????????? typedef struct tagNET_SECURITYGATE_ALARM_CANDIDATE_IMAGES_INFO { UINT nOffSet; /// ??????????????????? UINT nLength; /// ??????,??????? BYTE byReserved[24]; /// ?????? }NET_SECURITYGATE_ALARM_CANDIDATE_IMAGES_INFO; ///@brief ?????????????? typedef struct tagNET_SECURITYGATE_PERSON { char szUID[32]; /// ???????????,?????????????,??????ID??? char szGroupID[64]; /// ?????????ID EM_SEX_TYPE emSexType; /// ??? char szPersonName[64]; /// ???? NET_TIME stuBirthday; /// ???? char szCountry[3]; /// ????,????ISO3166??Z char szProvince[64]; /// ??? char szCity[64]; /// ???? char szHomeAddress[128]; /// ??? EM_CERTIFICATE_TYPE emCertificateType; /// ???? char szID[32]; /// ??????????,????,????????? FACERECOGNITION_CUSTOM_EXAMINEE_INFO stuCustomExamineeInfo; /// ??????????? BYTE byReserved[572]; /// ??????? }NET_SECURITYGATE_PERSON; ///@brief ???????????? typedef struct tagNET_SECURITYGATE_CANDIDATE { NET_SECURITYGATE_PERSON stuPerson; /// ?????? int nSimilarity; /// ???????? 1~100 BYTE byReserved[260]; /// ??????? }NET_SECURITYGATE_CANDIDATE; ///@brief ????????? typedef struct tagNET_SECURITYGATE_ALARM_INFO { UINT nPosition; /// ???????????????0-9???????10?????? UINT nObjectType; /// ??????????????? 0:??????, 1:?????, 2:?????????, 3:????????, 4:???????? char szResvered[128]; /// ??????? }NET_SECURITYGATE_ALARM_INFO; ///@brief ??????? EVENT_IVS_SECURITYGATE_PERSONALARM ???????????????????????????????????? typedef struct tagDEV_EVENT_SECURITYGATE_PERSONALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ??? UINT nEventID; /// ???ID EM_SECURITYGATE_PERSON_PASS_DIRECTION emDirection; /// ?????????? EM_SECURITYGATE_ALARM_LEVEL emAlarmLevel; /// ???????? int nChannelIn; /// ??????????? int nChannelOut; /// ????????? NET_INTELLIGENCE_IMAGE_INFO stuImageInfo; /// ????? UINT nAlarmPositionNum; /// ??????????? EM_SECURITYGATE_ALARM_POSITION emAlarmPosition[18]; /// ???????? ??????? emAlarmPositionEx NET_SECURITYGATE_ALARM_FACEIMAGE_INFO stuFaceImageInfo; /// ??? NET_SECURITYGATE_ALARM_FACE_INFO stuSecurityGateFaceInfo; /// ??? BYTE byReserved[4]; /// ??????? int nCandidateNum; /// ????????, ??????50 NET_SECURITYGATE_CANDIDATE stuCandidates[50]; /// ???????? UINT nDoorRegion; /// ??????? 0???6???? 1???12???? 2???18???? 3:???10????;4:???33????; /// 5:???1????;6:???2????;7:???3????;8:???4????;9:???8????;10:???9????; /// 11:???16????;12:???20????;13:???24????;14:???36????;15:???40????;16:???45????;17:???48????;18:???60???? int nAlaramPositionNum; /// ??????????? UINT nAlaramPosition[18]; /// ???????????? ??????? nAlaramPositionEx; ??nDoorRegion?0?????????????6?? 0???1????1???2??...5???6?? /// ??nDoorRegion?1?????????????12?? 0?????1,1?????1,2?????2,3?????2...10?????6,11?????6 /// ??nDoorRegion?2?????????????18?? 0?????1,1?????1,2?????2,3?????1,4?????1,5?????2...15?????6,16?????6,17?????6 UINT nPositionNumEx; /// ?????????????? EM_SECURITYGATE_ALARM_POSITION emAlarmPositionEx[128]; /// ??????????? int nAlaramPositionNumEx; /// ?????????????? UINT nAlaramPositionEx[128]; /// ??????????????? ?????????? int nAlarmInfoNum; /// ????????????? NET_SECURITYGATE_ALARM_INFO stuAlarmInfo[32]; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nPartitionRow; /// DoorRegion????????????????????????? int nPartitionColumn; /// DoorRegion????????????????????????? NET_SECURITYGATE_ALARM_CANDIDATE_IMAGES_INFO stuCandidateImages[16]; /// ????????? int nCandidateImagesNum; /// ????????????? char szResvered[500]; /// ??????? }DEV_EVENT_SECURITYGATE_PERSONALARM_INFO; ///@brief ?????? typedef struct tagNET_HUMAN { NET_RECT stuBoundingBox; /// ??????(8192?????) UINT nObjectID; /// ????ID char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 BYTE bReserved[230]; /// ??????? }NET_HUMAN; ///@brief ??????? EVENT_IVS_STAY_ALONE_DETECTION (??????????) ????????????????? typedef struct tagDEV_EVENT_STAY_ALONE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? int UTCMS; /// UTC???????????? int nEventID; /// ???ID NET_HUMAN stuHuman; /// ?????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? int nDetectRegionNum; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[1020 - POINTERSIZE]; /// ??????? }DEV_EVENT_STAY_ALONE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ROAD_BLOCK (????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_ROAD_BLOCK_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0??????????, 1???????????????, 2???????????????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_RECT stuBoundingBox; /// ????????? UINT nLane; /// ?????? EVENT_COMM_INFO stCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[4088 - POINTERSIZE]; /// ?????? } DEV_EVENT_TRAFFIC_ROAD_BLOCK_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ROAD_CONSTRUCTION (????????????????) ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_ROAD_CONSTRUCTION_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0??????????, 1???????????????, 2???????????????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_RECT stuBoundingBox; /// ????????? UINT nLane; /// ?????? EVENT_COMM_INFO stCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[4088 - POINTERSIZE]; /// ?????? } DEV_EVENT_TRAFFIC_ROAD_CONSTRUCTION_INFO; ///@brief ??????????? typedef enum tagEM_WORKACTION_STATE { EM_WORKACTION_STATE_UNKNOWN, /// ??? EM_WORKACTION_STATE_NO_WORKER, /// ??????? EEM_WORKACTION_STATE_SINGLE_WORKER, /// ??????? EM_WORKACTION_STATE_NORED_VEST, /// ?????????? } EM_WORKACTION_STATE; ///@brief ???????????? typedef enum tagEM_WORKSTATDETECTION_TYPE { EM_WORKSTATDETECTION_UNKNOWN, /// ??? EM_WORKSTATDETECTION_NO_WORKER, /// ????? EM_WORKSTATDETECTION_SINGLE_WORKER, /// ??????? EM_WORKSTATDETECTION_NO_WORKER_LEADER, /// ??????????????? EM_WORKSTATDETECTION_HAND_DISINFECTION, /// ?????????? EM_WORKSTATDETECTION_FOOT_DIP, /// ????????? EM_WORKSTATDETECTION_SHOES_CHANGE, /// ??????????? } EM_WORKSTATDETECTION_TYPE; ///@brief ???????EVENT_IVS_WORKSTATDETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_WORKSTATDETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? UINT nObjectID; /// ????ID UINT nWorkActionNum; /// ???????????? EM_WORKACTION_STATE emWorkAction[32]; /// ??????????? SCENE_IMAGE_INFO stuSceneImage; /// ????????? EM_WORKSTATDETECTION_TYPE emRuleType; /// ???????????? DH_MSG_OBJECT_EX2* pstObjectInfo; ///??????????? UINT nObjectNum; ///????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[1012 - 2*POINTERSIZE]; /// ?????? } DEV_EVENT_WORKSTATDETECTION_INFO; ///@brief ??????? typedef struct tagNET_FACE_ATTRIBUTES { int nAngle[3]; /// ?????,??????????????????,?????,???????????[999,999,999]?????????? UINT nFaceQuality; /// ???????????,?????? 0~10000 int nFaceAlignScore; /// ??????????,?????? 0~10000??-1?????? BYTE byReserved[36]; /// ?????? }NET_FACE_ATTRIBUTES; ///@brief ???????? typedef struct tagNET_FEATURE_VECTOR_INFO { char szFeatureVersion[32]; /// ???????????? EM_FEATURE_ERROR_CODE emFeatureErrCode; /// ??????????????? NET_FEATURE_VECTOR stuFeatureVector; /// ????????????????? NET_FACE_ATTRIBUTES stuFaceAttribute; /// ??????? ,???????????????????? BYTE byReserved[968]; /// ?????? }NET_FEATURE_VECTOR_INFO; ///@brief ???????EM_ANALYSE_EVENT_FEATURE_ABSTRACT(???????)????????????????? typedef struct tagDEV_EVENT_FEATURE_ABSTRACT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nFeatureNum; /// ????????? NET_FEATURE_VECTOR_INFO stuFeatureVectorList[10]; /// ????????????????????????????????????????????????????????? BYTE byReserved[1024]; /// ?????? } DEV_EVENT_FEATURE_ABSTRACT_INFO; ///@brief ????????????? typedef enum tagEM_TRIGGER_EVENT_TYPE { EM_TRIGGER_EVENT_TYPE_UNKNOWN, /// ??? EM_TRIGGER_EVENT_TYPE_PTZ_PRESET, /// ????????? EM_TRIGGER_EVENT_TYPE_FIREWARNING, /// ??????? EM_TRIGGER_EVENT_TYPE_MOVE_ABSOLUTELY,/// ??????????????? } EM_TRIGGER_EVENT_TYPE; ///@brief ???????EVENT_IVS_PANORAMA_SHOT(??????)????????????????? typedef struct tagDEV_EVENT_PANORAMA_SHOT_INFO { int nChannelID; /// ????? char szStationID[64]; /// ???ID char szPictureID[128]; /// ???ID NET_TIME_EX stuLocalSnapshotTime; /// ?????????? int nPitchAngleInSnapping; /// ???????????(???????0.1??)??????????-1800~1800????????????-180.0~180.0?????????????10??????? int nHorizontalAngleInSnapping; /// ???????????(???????0.1??)??????????0~3599???????????0~359.9?????????????10??????? EM_TRIGGER_EVENT_TYPE emTriggerEventType; /// ?????????? DWORD dwFireID; /// ????ID??????????????????????????? NET_RECT stuFireBoundingBox; /// ??????????????????????????????? BYTE byReserved[1024]; /// ?????? } DEV_EVENT_PANORAMA_SHOT_INFO; ///@brief ???????EVENT_ALARM_SMARTMOTION_HUMAN(????????????????(??))????????????????? typedef struct tagDEV_EVENT_SMARTMOTION_HUMAN_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID NET_MOTIONDETECT_REGION_INFO stuSmartRegion[32]; /// ?????????????? UINT nSmartRegionNum; /// ?????????????? UINT nHumanObjectNum; /// ???????(??)??????? NET_SMARTDETECT_HUMAN_OBJECT stuHumanObject[64]; /// ???????(??)??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[1024]; /// ??????? } DEV_EVENT_SMARTMOTION_HUMAN_INFO; ///@brief ???????EVENT_ALARM_SMARTMOTION_VEHICLE(????????????????(??))????????????????? typedef struct tagDEV_EVENT_SMARTMOTION_VEHICLE_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID NET_MOTIONDETECT_REGION_INFO stuSmartRegion[32]; /// ?????????????? UINT nSmartRegionNum; /// ?????????????? UINT nVehicleObjectNum; /// ???????(??)??????? NET_SMARTDETECT_VEHICLE_OBJECT stuVehicleObject[64]; /// ???????(??)??????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE bReserved[1024]; /// ??????? } DEV_EVENT_SMARTMOTION_VEHICLE_INFO; ///@brief ???????EVENT_IVS_INTELLI_SHELF(??????????)????????????????? typedef struct tagDEV_EVENT_INTELLI_SHELF_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nAreaID; /// ????ID????1?????, 0??????? UINT nPresetID; /// ?????????????????1??? int nPercent; /// ??????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[1024 - POINTERSIZE]; /// ?????? } DEV_EVENT_INTELLI_SHELF_INFO; ///@brief ??????????? typedef enum tagEM_DRIVING_DIRECTION { EM_DRIVING_DIRECTION_UNKNOWN = 0, /// ??? EM_DRIVING_DIRECTION_IN, /// ??? EM_DRIVING_DIRECTION_OUT, /// ??? }EM_DRIVING_DIRECTION; ///@brief ???????EVENT_IVS_CAR_DRIVING_IN_OUT(???????????????)????????????????? typedef struct tagDEV_EVENT_CAR_DRIVING_IN_OUT_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSequence; /// ?????????,??3-2-1/0,1??????????????,0???????????? int nFrameSequence; /// ???? EM_DRIVING_DIRECTION emDrivingDirection; /// ??????????? NET_EVENT_IMAGE_OFFSET_INFO stuGlobalScene; /// ?????? NET_EVENT_IMAGE_OFFSET_INFO stuParkingImage; /// ?????????? char szParkingNum[32]; /// ????(???)??? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserved[1024]; /// ?????? }DEV_EVENT_CAR_DRIVING_IN_OUT_INFO; ///@brief ?????? typedef enum tagEM_CAR_DOOR_STATE { EM_CAR_DOOR_STATE_UNKNOWN, /// ??? EM_CAR_DOOR_STATE_OPEN, /// ???? EM_CAR_DOOR_STATE_CLOSE, /// ??? } EM_CAR_DOOR_STATE; ///@brief ???????????? typedef enum tagEM_PERSON_INTRUDE_STATUS { EM_PERSON_INTRUDE_STATUS_UNKNOWN = -1, /// ??? EM_PERSON_INTRUDE_STATUS_UNMANNED, /// ????????? EM_PERSON_INTRUDE_STATUS_SOMEONE, /// ????????? } EM_PERSON_INTRUDE_STATUS; ///@brief ???????EVENT_IVS_PARKINGSPACE_STATUS(??????????)????????????????? typedef struct tagDEV_EVENT_PARKINGSPACE_STATUS_INFO { int nChannelID; /// ????? int nEventID; /// ???ID char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nSource; /// ????????????????? int nFrameSequence; /// ???? int nMark; /// ?????????? EM_PARKINGSPACE_STATUS emParkingSpaceStatus; /// ???????? char szParkingNum[32]; /// ????(???)??? char szText[32]; /// ??????? EM_CAR_DOOR_STATE emCarDoorState; /// ?????? int nWorkerNum; /// ??????????? DH_POINT stuBoxcarDetectRegion[4]; /// ?????????????, ????????????????????0-8191 int nBoxcarDetectRegionNum; /// ???????????????? int nLoadingRate; /// ?????????????????????0-100??? int nUnLoadLength; /// ???????????????????cm EM_PERSON_INTRUDE_STATUS emPersonIntrudeStatus; /// ???????????? BYTE byReserved[472]; /// ?????? }DEV_EVENT_PARKINGSPACE_STATUS_INFO; ///@brief ????????? typedef struct tagOBJECT_RELATED_INFO { UINT nObjectID; /// ????ID UINT nRelativeID; /// ???????ID char szObjectType[128]; /// ????????,??"HumanFace" NET_RECT stuBoundingBox; /// ???????????????[0, 8191] NET_RECT stuOriginalBoundingBox; /// ?????????????????[0, 8191] BYTE byReserved[1024]; /// ?????? }OBJECT_RELATED_INFO; ///@brief ???????EVENT_IVS_FACEBODY_DETECT(?????????)????????????????? typedef struct tagDEV_EVENT_FACEBODY_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nObjectID; /// ????ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? int nGroupID; /// ?????ID???????????nGroupID??? int nCountInGroup; /// ??????????????????,?????????nCountInGroup??? int nIndexInGroup; /// ????????????????????1??? BYTE byReserved1[4]; /// ?????? FACE_TRAIT stuFaceTrait; /// f??????? BODY_TRAIT stuBodyTrait; /// b??????? NET_EVENT_IMAGE_OFFSET_INFO stuBodyImage; /// b????? NET_EVENT_IMAGE_OFFSET_INFO stuFaceImage; /// f????? NET_EVENT_IMAGE_OFFSET_INFO stuSceneImage; /// ???????? OBJECT_RELATED_INFO stuFaceObject; /// f??????? OBJECT_RELATED_INFO stuBodyObject; /// b??????? }DEV_EVENT_FACEBODY_DETECT_INFO; ///@brief ???????EVENT_IVS_FACEBODY_ANALYSE(?????????)????????????????? typedef struct tagDEV_EVENT_FACEBODY_ANALYSE_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nObjectID; /// ????ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? int nGroupID; /// ?????ID???????????nGroupID??? int nCountInGroup; /// ??????????????????,?????????nCountInGroup??? int nIndexInGroup; /// ????????????????????1??? BYTE byReserved1[4]; /// ?????? FACE_TRAIT stuFaceTrait; /// f??????? BODY_TRAIT stuBodyTrait; /// b??????? NET_EVENT_IMAGE_OFFSET_INFO stuBodyImage; /// b????? NET_EVENT_IMAGE_OFFSET_INFO stuFaceImage; /// f????? NET_EVENT_IMAGE_OFFSET_INFO stuSceneImage; /// ???????? OBJECT_RELATED_INFO stuFaceObject; /// f??????? OBJECT_RELATED_INFO stuBodyObject; /// b??????? CANDIDATE_INFOEX stuCandidate[DH_MAX_CANDIDATE_NUM]; /// ???? int nCandidateNum; /// ??????????? }DEV_EVENT_FACEBODY_ANALYSE_INFO; ///@brief ???????EVENT_IVS_CONGESTION_DETECTION(??????????????????????)????????????????? typedef struct tagDEV_EVENT_CONGESTION_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ???????????????? int nAlarmMask; /// ???????????, ????????????????????????bit0???????????????????bit1?????????????????? int nVehicleQuantity; /// ?????????? int nQueueLength; /// ?????????? int nDetectRegionNum; /// stuDetectRegion?????????????? DH_POINT stuDetectRegion[32]; /// ?????????????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_CONGESTION_DETECTION_INFO; ///@brief ???????EVENT_IVS_VEHICLELIMIT_DETECTION(?????????????????????????)????????????????? typedef struct tagDEV_EVENT_VEHICLELIMIT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ???????????????? int nVehicleQuantity; /// ???????? int nDetectRegionNum; /// stuDetectRegion?????????????? DH_POINT stuDetectRegion[32]; /// ?????????????????? EM_SPACE_TYPE emSpaceType; /// ???????? int nUpdateInfoNum; /// ???????????????? NET_UPDATE_INFO stuUpdateInfo[20]; /// ???????????,???????????????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_VEHICLELIMIT_DETECTION_INFO; ///@brief ???????EVENT_IVS_VIOLENT_THROW_DETECTION(??????????)????????????????? typedef struct tagDEV_EVENT_VIOLENT_THROW_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nFrameSequence; /// ??????????? char szRegionName[64]; /// ?????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserver[1024]; /// ??????? }DEV_EVENT_VIOLENT_THROW_DETECTION_INFO; ///@brief ???????EVENT_IVS_TRAMCARSECTIONS_DETECTION(???????????)????????????????? typedef struct tagDEV_EVENT_TRAMCARSECTIONS_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? int nSequence; /// ???? UINT nCarSections; /// ????????? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ??????? BYTE byReserved[512]; /// ?????? }DEV_EVENT_TRAMCARSECTIONS_DETECTION_INFO; ///@brief ?????????? typedef struct tagNET_ANIMAL_OBJECTS_STATISTICS { UINT nAnimalsAmount; /// ???????? VA_OBJECT_ANIMAL stuAnimalTypes[32]; /// ???????? BYTE bReserved[132]; /// ??????? }NET_ANIMAL_OBJECTS_STATISTICS; ///@brief ???????????? typedef struct tagNET_ANIMAL_SCENE_IMAGE_INFO { UINT nOffSet; /// ??????????????????? UINT nLength; /// ??????,??????? UINT nIndexInData; /// ???????????????????? BYTE bReserved[252]; /// ??????? }NET_ANIMAL_SCENE_IMAGE_INFO; ///@brief ????????????? typedef struct tagNET_ANIMAL_OBJECT_LIST_INFO { NET_RECT stuBoundingBox; /// ????????,8192????? NET_POINT stuPoint; /// ???????? int nObjectID; /// ???ID int nObjectNumber; /// ????? char szReserved[256]; /// ??????? }NET_ANIMAL_OBJECT_LIST_INFO; ///@brief ???????EVENT_IVS_ANIMAL_DETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_ANIMAL_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nSequence; /// ???? NET_ANIMAL_SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_ANIMAL_OBJECTS_STATISTICS stuObjectsStatistics; /// ?????????? EM_CLASS_TYPE emClassType; /// ??????????????? EM_DETECTION_SCENE_TYPE emDetectionSceneType; /// ??????????????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? int nObjectListCount; /// ????????????????? NET_ANIMAL_OBJECT_LIST_INFO stuObjectListInfo[64]; /// ????????????? char byReserved[1024]; /// ?????? }DEV_EVENT_ANIMAL_DETECTION_INFO; ///@brief ???????? typedef enum tagEM_VEHICLE_ACTION { EM_VEHICLE_ACTION_UNKNOWN, /// ??? EM_VEHICLE_ACTION_APPEAR, /// ???????????? EM_VEHICLE_ACTION_DISAPPEAR, /// ????????? EM_VEHICLE_ACTION_STAY, /// ????????????? } EM_VEHICLE_ACTION; ///@brief ???????? ///@brief ??????????? typedef struct tagNET_DETECT_VEHICLE_INFO { EM_VEHICLE_ACTION emAction; /// ????????? UINT nObjectID; /// ????ID EVENT_PIC_INFO stuVehicleImage; /// ????????? NET_COLOR_RGBA stuColor; /// ?????????? EM_CATEGORY_TYPE emCategoryType; /// ???????? UINT nFrameSequence; /// ???? UINT nCarLogoIndex; /// ???????? UINT nSubBrand; /// ????????? UINT nBrandYear; /// ?????????? UINT nConfidence; /// ?????,??????????????, ???? 0~255 NET_RECT stuBoundingBox; /// ??????, 0-8191??????? char szText[128]; /// ???? UINT nSpeed; /// ????,?????km/h UINT nDirection; /// ???????????, 0:???, 1:????????, 2:???????? char szRegionName[64]; /// ???????????????? BYTE bReserved[448]; /// ??????? } NET_DETECT_VEHICLE_INFO; ///@brief ?????????? typedef struct tagNET_DETECT_PLATE_INFO { UINT nObjectID; /// ????ID UINT nRelativeID; /// ?????????ID EVENT_PIC_INFO stuPlateImage; /// ????????? EM_NET_PLATE_TYPE emPlateType; /// ???????? EM_NET_PLATE_COLOR_TYPE emPlateColor; /// ??????? UINT nConfidence; /// ?????,??????????????, ???? 0~255 char szCountry[3]; /// ??????? BYTE bReserved1; /// ?????? char szPlateNumber[128]; /// ??????? BYTE bReserved[512]; /// ??????? } NET_DETECT_PLATE_INFO; ///@brief ?????????????? typedef struct tagNET_FUEL_DISPENSER_INFO { unsigned int nFuelingStartTime; /// ???????????????????UTC????????? unsigned int nFuelingEndTime; /// ????????????????????UTC????????? unsigned int nMoney; /// ???????????? unsigned int nLitre; /// ??????????????0.01?? char szOilType[8]; /// ???????????????? char szReserved[128]; /// ??????? } NET_FUEL_DISPENSER_INFO; ///@brief ???????EVENT_IVS_GASSTATION_VEHICLE_DETECT(???????????????)????????????????? typedef struct tagDEV_EVENT_GASSTATION_VEHICLE_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_DETECT_VEHICLE_INFO stuDetectVehicleInfo; /// ??????????? NET_DETECT_PLATE_INFO stuDetectPlateInfo; /// ??????????? BOOL bIsGlobalScene; /// ?????????? EVENT_PIC_INFO stuSceneImage; /// ????????, bIsGlobalScene ? TRUE ????? int nCarCandidateNum; /// ??????????? NET_CAR_CANDIDATE_INFO stuCarCandidate[MAX_CAR_CANDIDATE_NUM]; /// ??????????? NET_FUEL_DISPENSER_INFO stuFuelDispenser; /// ?????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? char szOilGunColor[32]; /// ????????: "Red" : ???, "Yellow" : ???, "Green" : ??? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[836-POINTERSIZE]; /// ??????? } DEV_EVENT_GASSTATION_VEHICLE_DETECT_INFO; ///@brief ???????EVENT_IVS_SHOP_WINDOW_POST(???????????)????????????????? typedef struct tagDEV_EVENT_SHOP_WINDOW_POST_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? UINT nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ????????????????? char szShopAddress[256]; /// ?????? UINT nViolationDuration; /// ?????????????????????,???0????????? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[1020 - POINTERSIZE]; /// ??????? } DEV_EVENT_SHOP_WINDOW_POST_INFO; ///@brief ???????EVENT_IVS_SHOP_SIGN_ABNORMAL(?????????)????????????????? typedef struct tagDEV_EVENT_SHOP_SIGN_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nDetectRegionNum; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[HDBJ_MAX_OBJECTS_NUM]; /// ????????? UINT nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ????????????????? char szShopAddress[256]; /// ?????? UINT nViolationDuration; /// ?????????????????????,???0????????? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[1020 - POINTERSIZE]; /// ??????? } DEV_EVENT_SHOP_SIGN_ABNORMAL_INFO; ///@brief ?????????????????? typedef enum tagEM_BREED_DETECT_CATEGORY_TYPE { EM_BREED_DETECT_CATEGORY_UNKNOWN, /// ??? EM_BREED_DETECT_CATEGORY_PIG, /// ?? } EM_BREED_DETECT_CATEGORY_TYPE; ///@brief ????????????? typedef struct tagNET_VAOBJECT_ANIMAL_INFO { UINT nObjectID; /// ????ID?????ID??????????????? EM_BREED_DETECT_CATEGORY_TYPE emCategoryType; /// ?????????????????? NET_RECT stuBoundingBox; /// ?????? UINT nObjectWeight; /// ????????, ????: g SCENE_IMAGE_INFO_EX stuImageData; /// ?????? UINT nMotionStatus; /// ??????, 0:?????1:?????2:??? UINT nInoutRegion; /// ???????????, 0:???, 1:??, 2:?? UINT nResultType; /// ???????, 0:??, 1:???? BYTE byReserved[1012]; /// ?????? } NET_VAOBJECT_ANIMAL_INFO; ///@brief ???????EVENT_IVS_BREED_DETECTION(????????????)????????????????? typedef struct tagDEV_EVENT_BREED_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE byReserved1[4]; /// ?????? UINT nObjectNum; /// ???????????? NET_VAOBJECT_ANIMAL_INFO stuObjects[64]; /// ???????????? double dBreedStallTemp; /// ????????????????? UINT nBreedStallNum; /// ?????? BYTE byReserved[500]; /// ?????? } DEV_EVENT_BREED_DETECTION_INFO; ///@brief ??????? DH_ALARM_BREED_DETECTION (????????????) ????????????????? typedef struct tagALARM_BREED_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; char szName[128]; /// ???????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? unsigned int nEventID; /// ???ID unsigned int nRuleID; /// ????????????????????????????????? unsigned int nSequence; /// ???? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? unsigned int nBreedStallNum; /// ?????? unsigned int nObjectNum; /// ???????????? NET_VAOBJECT_ANIMAL_INFO stuObjects[64]; /// ???????????? double dbBreedStallTemp; /// ????????????????? char szReserved[1024]; /// ?????? } ALARM_BREED_DETECTION_INFO; ///@brief ????????? typedef enum tagEM_AIRPORT_VEHICLE_TYPE { EM_AIRPORT_VEHICLE_TYPE_UNKNOWN = 0, /// ??? EM_AIRPORT_VEHICLE_TYPE_TANKER, /// ????? EM_AIRPORT_VEHICLE_TYPE_CONVEYORCAR, /// ????????? EM_AIRPORT_VEHICLE_TYPE_TRAILERCAR, /// ??????? }EM_AIRPORT_VEHICLE_TYPE; ///@brief ????????? typedef enum tagEM_AIRPORT_VEHICLE_ACTION { EM_AIRPORT_VEHICLE_ACTION_UNKNOWN = 0, /// ??? EM_AIRPORT_VEHICLE_ACTION_ENTERREGION, /// ???????? EM_AIRPORT_VEHICLE_ACTION_LEAVEREGION, /// ?????? EM_AIRPORT_VEHICLE_ACTION_STARTWORK, /// ??????? EM_AIRPORT_VEHICLE_ACTION_OVERWORK, /// ???????? EM_AIRPORT_VEHICLE_ACTION_AIRREFUEL, /// ??????? EM_AIRPORT_VEHICLE_ACTION_OVERREFUEL, /// ???????? }EM_AIRPORT_VEHICLE_ACTION; ///@brief ????????????? typedef struct tagNET_AIRPORT_VEHICLE_OBJECT { int nObjectID; /// ????ID EM_AIRPORT_VEHICLE_TYPE emType; /// ????????? NET_RECT stuRect; /// ????????? EM_AIRPORT_VEHICLE_ACTION emAction; /// ????????? BYTE byReserved[1020]; /// ?????? }NET_AIRPORT_VEHICLE_OBJECT; ///@brief ???????EVENT_IVS_AIRPORT_VEHICLE_DETECT(????????????????????)????????????????? typedef struct tagDEV_EVENT_AIRPORT_VEHICLE_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? int nDetectRegionNum; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ???????,[0,8191] SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? int nVehicleObjectNum; /// ????????????? NET_AIRPORT_VEHICLE_OBJECT stuVehicleObjects[MAX_AIRPORT_VEHICLE_OBJECT_NUM]; /// ?????????? BYTE byReserved[504]; /// ?????? } DEV_EVENT_AIRPORT_VEHICLE_DETECT_INFO; ///@brief ???????EVENT_IVS_MAN_CAR_COEXISTANCE(??????????)????????????????? typedef struct tagDEV_EVENT_MAN_CAR_COEXISTANCE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON SCENE_IMAGE_INFO stuSceneImage; /// ??????? BYTE byReserved[512]; /// ?????? }DEV_EVENT_MAN_CAR_COEXISTANCE_INFO; ///@brief ???????????????????????????????? typedef enum tagEM_PARKING_NUMBER_CHANGE_STATUS { EM_PARKING_NUMBER_CHANGE_STATUS_UNKNOWN = -1, /// ??? EM_PARKING_NUMBER_CHANGE_STATUS_NO_CHANGE, /// ???? EM_PARKING_NUMBER_CHANGE_STATUS_INCREASE, /// ???????? EM_PARKING_NUMBER_CHANGE_STATUS_DECREASE, /// ???????? } EM_PARKING_NUMBER_CHANGE_STATUS; ///@brief ??????????? typedef struct tagNET_PARKING_STATUS { char szName[32]; /// ???????? int nID; /// ????ID??????:[0,99] UINT nParkedNumber; /// ???????????????????????:[0,255] EM_PARKING_NUMBER_CHANGE_STATUS emChangeStatus; /// ???????????????????????????????? BYTE reserved[252]; /// ?????? } NET_PARKING_STATUS; ///@brief ??????? EVENT_IVS_PARKING_LOT_STATUS_DETECTION(??????????????)????????????????? typedef struct tagDEV_EVENT_PARKING_LOT_STATUS_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) unsigned int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? int nParkingStatusNum; /// ????????????? NET_PARKING_STATUS stuParkingStatus[100]; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserved[1024]; /// ?????? } DEV_EVENT_PARKING_LOT_STATUS_DETECTION_INFO; ///@brief ??????? DH_ALARM_PARKING_LOT_STATUS_DETECTION (?????????????????) ????????????????? typedef struct tagALARM_PARKING_LOT_STATUS_DETECTION { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) unsigned int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? int nParkingStatusNum; /// ????????????? NET_PARKING_STATUS stuParkingStatus[100]; /// ??????????? BYTE byReserved[1020]; /// ?????? } ALARM_PARKING_LOT_STATUS_DETECTION; ///@brief ??????? typedef struct tagDREGS_UNCOVERED_VEHICLE_INFO { char szPlateNumber[64]; /// ??????? NET_RECT stuBoundingBox; /// ?????? BYTE byReserved[512]; /// ?????? }DREGS_UNCOVERED_VEHICLE_INFO; ///@brief ??????? EVENT_IVS_DREGS_UNCOVERED(????????????????????)????????????????? typedef struct tagDEV_EVENT_DREGS_UNCOVERED_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? int nDetectRegionNum; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ???????,[0,8191] DREGS_UNCOVERED_VEHICLE_INFO stuVehicleInfo; /// ??????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[948-POINTERSIZE]; /// ?????? } DEV_EVENT_DREGS_UNCOVERED_INFO; ///@brief ???????EVENT_IVS_HIGH_TOSS_DETECT(????????????)????????????????? typedef struct tagDEV_EVENT_HIGH_TOSS_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_HIGHTOSS_OBJECT_INFO stuObjInfos[50]; /// ??????? UINT nObjNum; /// ??????? int nDetectRegionNum; /// ?????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ???????,[0,8191] int nFrameSequence; /// ??????????? int nGroupID; /// ?????ID, ??????????????GroupID??? int nIndexInGroup; /// ?????????1??? int nCountInGroup; /// ??????? NET_EVENT_IMAGE_OFFSET_INFO stuImageInfo; /// ????? BOOL bIsGlobalScene; /// ?????????, true????????????????????????ImageInfo????? int nMark; /// ?????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[380 - POINTERSIZE]; /// ?????? } DEV_EVENT_HIGH_TOSS_DETECT_INFO; ///@brief ???????????? typedef enum tagEM_ELECTRIC_GLOVE_TYPE { EM_ELECTRIC_GLOVE_TYPE_UNKNOWN, /// ??? EM_ELECTRIC_GLOVE_TYPE_GENERAL, /// ??????? EM_ELECTRIC_GLOVE_TYPE_INSULATED, /// ??????? } EM_ELECTRIC_GLOVE_TYPE; ///@brief ?????????????? typedef struct tagNET_ELECTRIC_GLOVE_OBJECT { UINT nObjectID; /// ????ID EM_ELECTRIC_GLOVE_TYPE emGloveType; /// ???????? NET_RECT stuBoundingBox; /// ?????? NET_OBJECT_IMAGE_INFO stuImageData; /// ?????? BYTE byReserved[1024]; /// ?????? } NET_ELECTRIC_GLOVE_OBJECT; ///@brief ???????EVENT_IVS_ELECTRIC_GLOVE_DETECT(????????????????)????????????????? typedef struct tagDEV_EVENT_ELECTRIC_GLOVE_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nGloveObjNum; /// ?????????? NET_ELECTRIC_GLOVE_OBJECT stuGloveObjs[32]; /// ?????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE byReserved[1028]; /// ?????? }DEV_EVENT_ELECTRIC_GLOVE_DETECT_INFO; ///@brief ???????????? typedef enum tagEM_ELECTRIC_LADDER_TYPE { EM_ELECTRIC_LADDER_TYPE_UNKNOWN, /// ??? EM_ELECTRIC_LADDER_TYPE_GENERAL, /// ??????? EM_ELECTRIC_LADDER_TYPE_INSULATED, /// ??????? } EM_ELECTRIC_LADDER_TYPE; ///@brief ?????????? typedef struct tagNET_ELECTRIC_LADDER_OBJECT { UINT nObjectID; /// ????ID EM_ELECTRIC_LADDER_TYPE emLadderType; /// ???????? NET_RECT stuBoundingBox; /// ?????? NET_OBJECT_IMAGE_INFO stuImageData; /// ?????? BYTE byReserved[1024]; /// ?????? } NET_ELECTRIC_LADDER_OBJECT; ///@brief ???????EVENT_IVS_ELECTRIC_LADDER_DETECT(????????????????)????????????????? typedef struct tagDEV_EVENT_ELECTRIC_LADDER_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nLadderObjNum; /// ?????????? NET_ELECTRIC_LADDER_OBJECT stuLadderObjs[32]; /// ?????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE byReserved[1028]; /// ?????? }DEV_EVENT_ELECTRIC_LADDER_DETECT_INFO; ///@brief ??????????? typedef enum tagEM_ELECTRIC_CURTAIN_TYPE { EM_ELECTRIC_CURTAIN_TYPE_UNKNOWN, /// ??? EM_ELECTRIC_CURTAIN_TYPE_GENERAL, /// ?????? } EM_ELECTRIC_CURTAIN_TYPE; ///@brief ????????? typedef struct tagNET_ELECTRIC_CURTAIN_OBJECT { UINT nObjectID; /// ????ID EM_ELECTRIC_CURTAIN_TYPE emCurtainType; /// ??????? EM_UNIFIED_COLOR_TYPE emCurtainColor; /// ?????? BYTE byReserved1[4]; /// ?????? NET_RECT stuBoundingBox; /// ?????? NET_OBJECT_IMAGE_INFO stuImageData; /// ?????? BYTE byReserved[1024]; /// ?????? } NET_ELECTRIC_CURTAIN_OBJECT; ///@brief ???????EVENT_IVS_ELECTRIC_CURTAIN_DETECT(?????????????)????????????????? typedef struct tagDEV_EVENT_ELECTRIC_CURTAIN_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nCurtainObjNum; /// ????????? NET_ELECTRIC_CURTAIN_OBJECT stuCurtainObjs[32]; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE byReserved[1028]; /// ?????? }DEV_EVENT_ELECTRIC_CURTAIN_DETECT_INFO; ///@brief ???????????? typedef enum tagEM_ELECTRIC_FENCE_TYPE { EM_ELECTRIC_FENCE_TYPE_UNKNOWN, /// ??? EM_ELECTRIC_FENCE_TYPE_GENERAL, /// ??????? EM_ELECTRIC_FENCE_TYPE_COLUMNAR, /// ??????? EM_ELECTRIC_FENCE_TYPE_GRID, /// ??????? } EM_ELECTRIC_FENCE_TYPE; ///@brief ??????????????? typedef struct tagNET_ELECTRIC_FENCE_OBJECT { UINT nObjectID; /// ????ID EM_ELECTRIC_FENCE_TYPE emFenceType; /// ???????? NET_RECT stuBoundingBox; /// ?????? NET_OBJECT_IMAGE_INFO stuImageData; /// ?????? BYTE byReserved[1024]; /// ?????? } NET_ELECTRIC_FENCE_OBJECT; ///@brief ???????EVENT_IVS_ELECTRIC_FENCE_DETECT(?????????????????)????????????????? typedef struct tagDEV_EVENT_ELECTRIC_FENCE_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nFenceObjNum; /// ??????????? NET_ELECTRIC_FENCE_OBJECT stuFenceObjs[32]; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE byReserved[1028]; /// ?????? }DEV_EVENT_ELECTRIC_FENCE_DETECT_INFO; ///@brief ????????????? typedef enum tagEM_ELECTRIC_SIGNBOARD_TYPE { EM_ELECTRIC_SIGNBOARD_TYPE_UNKNOWN, /// ??? EM_ELECTRIC_SIGNBOARD_TYPE_GENERAL, /// ???????? EM_ELECTRIC_SIGNBOARD_TYPE_WARNING, /// ?????? EM_ELECTRIC_SIGNBOARD_TYPE_NAMEPLATE, /// ???? } EM_ELECTRIC_SIGNBOARD_TYPE; ///@brief ??????????????? typedef struct tagNET_ELECTRIC_SIGNBOARD_OBJECT { UINT nObjectID; /// ????ID EM_ELECTRIC_SIGNBOARD_TYPE emSignboardType; /// ???????? NET_RECT stuBoundingBox; /// ?????? NET_OBJECT_IMAGE_INFO stuImageData; /// ?????? BYTE byReserved[1024]; /// ?????? } NET_ELECTRIC_SIGNBOARD_OBJECT; ///@brief ???????EVENT_IVS_ELECTRIC_SIGNBOARD_DETECT(????????????????)????????????????? typedef struct tagDEV_EVENT_ELECTRIC_SIGNBOARD_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nSignboardObjNum; /// ??????????? NET_ELECTRIC_SIGNBOARD_OBJECT stuSignboardObjs[32]; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE byReserved[1028]; /// ?????? }DEV_EVENT_ELECTRIC_SIGNBOARD_DETECT_INFO; ///@brief ????????????? typedef enum tagEM_ELECTRIC_BELT_TYPE { EM_ELECTRIC_BELT_TYPE_UNKNOWN, /// ??? EM_ELECTRIC_BELT_TYPE_GENERAL, /// ???????????? } EM_ELECTRIC_BELT_TYPE; ///@brief ???????????????? typedef enum tagEM_BELT_WARE_TYPE { EM_BELT_WARE_TYPE_UNKNOWN, /// ??? EM_BELT_WARE_TYPE_NORMAL, /// ???????? EM_BELT_WARE_TYPE_MISS_MAIN, /// ?????????? EM_BELT_WARE_TYPE_MISS_BACKUP, /// ??????????? EM_BELT_WARE_TYPE_LOW_HANGING, /// ????????? } EM_BELT_WARE_TYPE; ///@brief ???????????? typedef struct tagNET_ELECTRIC_BELT_OBJECT { UINT nObjectID; /// ????ID EM_ELECTRIC_BELT_TYPE emBeltType; /// ????????????? EM_BELT_WARE_TYPE emBeltWareType; /// ???????????????? BYTE byReserved1[4]; /// ?????? NET_RECT stuBoundingBox; /// ?????? NET_OBJECT_IMAGE_INFO stuImageData; /// ?????? BYTE byReserved[1024]; /// ?????? } NET_ELECTRIC_BELT_OBJECT; ///@brief ???????EVENT_IVS_ELECTRIC_BELT_DETECT(????????????????)????????????????? typedef struct tagDEV_EVENT_ELECTRIC_BELT_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nBeltObjNum; /// ???????????? NET_ELECTRIC_BELT_OBJECT stuBeltObjs[32]; /// ???????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[1024 - POINTERSIZE]; /// ?????? } DEV_EVENT_ELECTRIC_BELT_DETECT_INFO; ///@brief ???????????? typedef enum tagEM_RADAR_DETECT_OBJECT_TYPE { EM_RADAR_DETECT_OBJECT_UNKNOWN, /// ??? EM_RADAR_DETECT_OBJECT_HUMAN, /// ?? EM_RADAR_DETECT_OBJECT_VEHICLE /// ?? }EM_RADAR_DETECT_OBJECT_TYPE; ///@brief ???????? typedef struct tagNET_RADAR_DETECT_OBJECT { int nObjectID; /// ????ID EM_RADAR_DETECT_OBJECT_TYPE emObjectType; /// ???????? BYTE byReserved[1024]; /// ?????? }NET_RADAR_DETECT_OBJECT; ///@brief ????????? typedef enum tagEM_RADAR_ALARM_TYPE { EM_RADAR_ALARM_TYPE_UNKNOWN, /// ??? EM_RADAR_ALARM_TYPE_ALARM, /// ???? EM_RADAR_ALARM_TYPE_WARNING, /// ??? }EM_RADAR_ALARM_TYPE; ///@brief ???????EVENT_IVS_RADAR_LINE_DETECTION(???????/?????????)????????????????? typedef struct tagDEV_EVENT_RADAR_LINE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nObjectNum; /// ??????????? NET_RADAR_DETECT_OBJECT stuObjects[100]; /// ???????????? int nPresetID; /// ?????????????? int nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ???????,[0,8191] SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????????????1??? ???stuSceneImageEx?? char szAlarmLevel[16]; /// ??????? int nAlarmChannel; /// ????????????? SCENE_IMAGE_INFO_EX stuSceneImageEx[10]; /// ?????????????10??? int nstuSceneImageExNum; /// ??????????? EM_RADAR_ALARM_TYPE emAlarmType; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1020]; /// ?????? } DEV_EVENT_RADAR_LINE_DETECTION_INFO; ///@brief RFID?????? typedef struct tagNET_RFID_CARD_INFO { char szCardId[24]; /// RFID???ID char byReserved[128]; /// ?????? }NET_RFID_CARD_INFO; ///@brief ???????EVENT_IVS_RADAR_REGION_DETECTION(?????????????)????????????????? typedef struct tagDEV_EVENT_RADAR_REGION_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nObjectNum; /// ??????????? NET_RADAR_DETECT_OBJECT stuObjects[100]; /// ???????????? int nPresetID; /// ?????????????? int nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ???????,[0,8191] SCENE_IMAGE_INFO_EX stuSceneImage; /// ?????????????????1??? ???stuSceneImageEx?? EM_RADAR_ALARM_TYPE emAlarmType; /// ???????? char szAlarmLevel[16]; /// ??????? int nAlarmChannel; /// ????????????? int nRFIDCardIdNum; /// RFID?????????? NET_RFID_CARD_INFO stuRFIDCardId[256]; /// RFID??????????????256??????? SCENE_IMAGE_INFO_EX stuSceneImageEx[10]; /// ?????????????10??? int nstuSceneImageExNum; /// ??????????? int nSpeed; /// ????????????????????????????100?? ????m/s int nTrackID; /// ???????????id,????[0,63] int nObjectType; /// ????????????????????: 0x00???????? 0x01?????? 0x02??????????? 0x03?????? 0x04?????????? 0x05??????? 0x06???????? 0x07?????? 0x08???????? 0x09???????? int nAlarmFlag; /// ?????????????0bit?????????????1bit????????AIS??? ??2bit??????????? ??3bit???????????? int nLongitude; /// ??????????????1000000???????????6????????????6????0???? int nLatitude; /// ??????????????1000000???????????6????????????6????0???? int nUpDownGoing; /// ????/???????? -1:??? 0:???? 1:???? 2:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nDistance; /// ????????????????????????--????????100??????,?????? int nAngle; /// ????????????????????--????????100?????????????? char szTargetUUID[32]; /// ??????????id BYTE byReserved[956]; /// ?????? } DEV_EVENT_RADAR_REGION_DETECTION_INFO; ///@brief ?????????? typedef struct tagAUDIO_INTENSITY_MESSAGE_INFO { char szType[128]; /// ??????????"Audio Detection" char szContent[128]; /// ??????? BYTE byReserved[1024]; /// ?????? }AUDIO_INTENSITY_MESSAGE_INFO; ///@brief ???????EVENT_IVS_AUDIO_INTENSITY(???????????)????????????????? typedef struct tagDEV_EVENT_AUDIO_INTENSITY_INFO { int nChannelID; /// ??????????? int nAction; /// 0:???? 1:??? 2:?? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? BYTE byReserved1[4]; /// ??????1 AUDIO_INTENSITY_MESSAGE_INFO stuAudioIntensityInfo; /// ????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_AUDIO_INTENSITY_INFO; ///@brief ???????EVENT_IVS_WALK_DETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_WALK_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) UINT nEventID; /// ???ID UINT nPresetID; /// ????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_WALK_DETECTION_INFO; ///@brief ???????EVENT_IVS_BACK_TO_DETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_BACK_TO_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) UINT nEventID; /// ???ID UINT nPresetID; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_BACK_TO_DETECTION_INFO; ///@brief ???????EVENT_IVS_WRITE_ON_THE_BOARD_DETECTION(?????????)????????????????? typedef struct tagDEV_EVENT_WRITE_ON_THE_BOARD_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? NET_TIME_EX UTC; /// ???????????? double PTS; /// ????(?????????) UINT nEventID; /// ???ID UINT nPresetID; /// ????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_WRITE_ON_THE_BOARD_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SMART_KITCHEN_CLOTHES_DETECTION(???????????????)????????????????? typedef struct tagDEV_EVENT_SMART_KITCHEN_CLOTHES_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? char szClassAlias[16]; /// ?????????????????? HUMAN_IMAGE_INFO stuHumanImage; /// ????? SCENE_IMAGE_INFO stuSceneImage; /// ??????????? FACE_IMAGE_INFO stuFaceImage; /// ????? UINT nObjectID; /// ???ID EM_NONMOTOR_OBJECT_STATUS emHasMask; /// ?????????????? EM_NONMOTOR_OBJECT_STATUS emHasChefHat; /// ?????????????? EM_NONMOTOR_OBJECT_STATUS emHasChefClothes; /// ??????????????? EM_OBJECT_COLOR_TYPE emChefClothesColor; /// ????????(?????????????????????) NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char bReserved[1024]; /// ?????? }DEV_EVENT_SMART_KITCHEN_CLOTHES_DETECTION_INFO; ///@brief ???????EVENT_IVS_SLEEP_DETECT(?????????)????????????????? typedef struct tagDEV_EVENT_SLEEP_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nPresetID; /// ??????????????,??1??? UINT nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? int nRuleCount; /// ??????? char szRuleType[16][32]; /// ?????????"Common":?????????,????, "HeadCoveredSleep":????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[224]; /// ?????? }DEV_EVENT_SLEEP_DETECT_INFO; ///@brief ???????EVENT_IVS_WALK_AROUND_DETECT(?????????????)????????????????? typedef struct tagDEV_EVENT_WALK_AROUND_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nPresetID; /// ??????????????,??1??? UINT nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[228-POINTERSIZE]; /// ?????? }DEV_EVENT_WALK_AROUND_DETECT_INFO; ///@brief ???????EVENT_IVS_PLAY_MOBILEPHONE(????????)????????????????? typedef struct tagDEV_EVENT_PLAY_MOBILEPHONE_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nPresetID; /// ??????????????,??1??? UINT nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??? char szVideoPath[256]; /// ??????????FTP??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1012]; /// ?????? }DEV_EVENT_PLAY_MOBILEPHONE_INFO; ///@brief ???????EVENT_IVS_FINANCE_CONTRABAND_DETECT(???????????????????)????????????????? typedef struct tagDEV_EVENT_FINANCE_CONTRABAND_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nPresetID; /// ??????????????,??1??? UINT nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] UINT nHumanDetectRegionNum; /// ?????????????? NET_POINT stuHumanDetectRegion[20]; /// ????????????,[0,8191] UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[1016-POINTERSIZE]; /// ?????? }DEV_EVENT_FINANCE_CONTRABAND_DETECT_INFO; ///@brief ???????EVENT_IVS_FINANCE_CASH_TRANSACTION(????????????????)????????????????? typedef struct tagDEV_EVENT_FINANCE_CASH_TRANSACTION_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nPresetID; /// ??????????????,??1??? UINT nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] UINT nHumanDetectRegionNum; /// ?????????????? NET_POINT stuHumanDetectRegion[20]; /// ????????????,[0,8191] UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[224 - POINTERSIZE]; /// ?????? }DEV_EVENT_FINANCE_CASH_TRANSACTION_INFO; ///@brief IRCUT?????????????? typedef enum tagEM_IRCUT_MODESWITCH_MODE { EM_IRCUT_MODESWITCH_MODE_UNKNOWN, /// ??? EM_IRCUT_MODESWITCH_MODE_AUTO, /// ??? EM_IRCUT_MODESWITCH_MODE_DAY, /// ?????? EM_IRCUT_MODESWITCH_MODE_NIGHT, /// ??????? }EM_IRCUT_MODESWITCH_MODE; ///@brief IRCUT?????????????? typedef enum tagEM_IRCUT_MODESWITCH_STATE { EM_IRCUT_MODESWITCH_STATE_UNKNOWN, /// ??? EM_IRCUT_MODESWITCH_STATE_DAY, /// ???? EM_IRCUT_MODESWITCH_STATE_NIGHT, /// ???? }EM_IRCUT_MODESWITCH_STATE; ///@brief ???????EVENT_IVS_IRCUT_MODESWITCH_ALARM_EVENT(IRCUT?????????)????????????????? typedef struct tagNET_DEV_EVENT_IRCUT_MODESWITCH_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? ???????????????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_IRCUT_MODESWITCH_MODE emMode; /// ????? EM_IRCUT_MODESWITCH_STATE emState; /// ????? char szReserved[512]; /// ?????? }NET_DEV_EVENT_IRCUT_MODESWITCH_ALARM_INFO; ///@brief ???????EVENT_IVS_REMOTE_APPROVAL_ALARM(??????????????)????????????????? typedef struct tagNET_DEV_EVENT_REMOTE_APPROVAL_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? ???????????????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nApprovalNo; /// ???????? int nType; /// ?????????-1:?????0:????, 1:??? int nTimeout; /// ???????????????? int nCabinListNum; /// ???????????????? int nCabinList[32]; /// ???????????????? char szAccessorID[64]; /// ?????ID char szAccessorName[64]; /// ????????? char szReviewerID[64]; /// ??????ID char szReviewerName[64]; /// ?????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char szReserved[508]; /// ?????? }NET_DEV_EVENT_REMOTE_APPROVAL_ALARM_INFO; ///@brief ???????EVENT_IVS_ANTI_COUNTERFEIT(??????????)????????????????? typedef struct tagNET_DEV_EVENT_ANTI_COUNTERFEIT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID int nSequence; /// ???? int nFrameSequence; /// ??????????? int nDetectRegionNum; /// ??????????? NET_UINT_POINT stuDetectRegion[20]; /// ???????? char szDirection[16]; /// Direction??????????, ?????????????? char szAction[16]; /// Action??????????????????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? DH_MSG_OBJECT stuObject; /// ???????????? int nMark; /// ?????????? int nSource; /// ????????????????? UINT nEventSeq; /// ????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_ANTI_COUNTERFEIT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_SPEED_DIFFPREWARNING (??????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_SPEED_DIFFPREWARNING_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) UINT nEventID; /// ???ID NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? UINT nUTCMS; /// ??????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? char byReserved1[4]; /// ?????????? BOOL bNonMotorInfoEx; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ?????? int nSequence; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_SPEED_DIFFPREWARNING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVER_IDENTIFIED (??????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_DRIVER_IDENTIFIED_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) UINT nEventID; /// ???ID NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? UINT nUTCMS; /// ??????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON NET_GPS_STATUS_INFO stuGpsSatus; /// GPS?? char szDriverID[32]; /// ????ID char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAFFIC_DRIVER_IDENTIFIED_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_QUEUE_OVERFLOW (?????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_QUEUE_OVERFLOW_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? int nLane; /// ????????? int nFrameSequence; /// ??????????? int nSequence; /// ??????, 1??????????????, 0???????????? float fQueueLength; /// ?????? UINT nEventID; /// ???ID double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? BOOL bVehicleInfo; /// ???????????? BOOL bObjectInfo; /// ???????????? BOOL bNonMotorInfo; /// ??????????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAFFIC_QUEUE_OVERFLOW_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_QUEUE_TIMEOUT (?????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_QUEUE_TIMEOUT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nEventID; /// ???ID double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? char szReserved1[4]; /// ?????? BOOL bVehicleInfo; /// ???????????? int nLane; /// ????????? int nFrameSequence; /// ??????????? int nSequence; /// ??????, 1??????????????, 0???????????? BOOL bObjectInfo; /// ???????????? BOOL bNonMotorInfo; /// ??????????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAFFIC_QUEUE_TIMEOUT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_PLATE_ABNORMAL (?????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_PLATE_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? int nLane; /// ????????? int nSequence; /// ??????, 1??????????????, 0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_PLATE_ABNORMAL_INFO; ///@brief ??????? EVENT_IVS_GARBAGE_PLASTICBAG (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_GARBAGE_PLASTICBAG_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? NET_TIME_EX stuUTC; /// ???????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) UINT nEventID; /// ???ID int nObjectCount; /// ???????????? DH_MSG_OBJECT stuObjects[64]; /// ???????????? NET_POINT_EX stuDetectRegion[20]; /// ?????????? int nDetectRegionCount; /// ????????????? UINT nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ????????????????? char szSourceID[32]; /// ???????ID char szReserved[1024]; /// ?????? }NET_DEV_EVENT_GARBAGE_PLASTICBAG_INFO; ///@brief ??????? EVENT_IVS_POSITION_SNAP (???????????)????????????????? typedef struct tagNET_DEV_EVENT_POSITION_SNAP_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szType[64]; /// ??????????????, ??????"PresetSnap" int nPresetID; /// ??????? char szPresetName[64]; /// ???????? NET_GPS_INFO stuGPSInfo; /// GPS??? int nAbsposition[3]; /// ?????????????????????????100???, ?????????3,???????????????0-36000?? ??????????????????-18000??-??18000???? ????????????????????0-100?? NET_GPS_INFO stuPresetGPS; /// ????GPS??? char szReserved[984]; /// ?????? }NET_DEV_EVENT_POSITION_SNAP_INFO; ///@brief ?????????? typedef struct tagNET_DETECT_REGION_INFO_EX { int nDetectRegionCount; /// ?????????? NET_POINT_EX stuDetectRegion[20]; /// ??????? char szReserved[428]; /// ?????? }NET_DETECT_REGION_INFO_EX; ///@brief ??????? EVENT_IVS_MULTI_MAN_NUM_DETECTION (??????????????????)????????????????? typedef struct tagNET_DEV_EVENT_MULTI_MAN_NUM_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? int nObjectsRealNum; /// ??????????????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? NET_DETECT_REGION_INFO_EX *pstuDetectRegionInfo; /// ?????????? int nDetectRegionInfoCount; /// ?????????????? char szReserved[1020-POINTERSIZE]; /// ?????? }NET_DEV_EVENT_MULTI_MAN_NUM_DETECTION_INFO; ///@brief ??????? EVENT_IVS_USERMANAGER_FOR_TWSDK (????????????)????????????????? typedef struct tagNET_DEV_EVENT_USERMANAGER_FOR_TWSDK_INFO { int nChannelID; /// ????? int nAction; /// 0:???? NET_TIME_EX stuUTC; /// ???????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szUserID[9]; /// ???ID char szReserved1[7]; /// ?????? char szUserName[64]; /// ????? int nUserType; /// ??????? int nUseTime; /// ?????? int nAuthority; /// ?????? 0:??? 1: ????? 2: ?????? int nTimeSectionNum; /// ?????????????? UINT nTimeSections[64]; /// ??? NET_TIME stuValidTo; /// ?????? UINT nSpecialDaysSchedule[64]; /// ?????? int nSpecialDaysScheduleNum; /// ????????????? int nType; /// ??????? 0: ??? 1: ?????????? 2: ????????? 3:?????????????????UserID?????? char szPassword[9]; /// ???? char szReserved2[7]; /// ?????? char szFaceList[5][2048]; /// ????? int nFaceListNum; /// ????????? int nCardListNum; /// ??????? char szCardList[5][32]; /// ??? char szFingerList[5][256]; /// ??? int nFingerListNum; /// ??????? BOOL bDelAllUser; /// ???????????????true:???????????????????????????? NET_TIME stuValidFrom; /// ??????????? char szSN[32]; /// ????????? UINT nUserCount; /// ????????? UINT nFingerCount; /// ????????? UINT nFaceCount; /// ????????? UINT nCardCount; /// ????????? NET_USERMANAGER_IMAGE_INFO stuImageInfo[5]; /// ??????????? int nImageInfoCount; /// ??????????????? char szUserIDEx[40]; /// ???ID??? char szReserved[532]; /// ?????? }NET_DEV_EVENT_USERMANAGER_FOR_TWSDK_INFO; ///@brief ??????? EVENT_IVS_OBJECT_QUANTITY_DETECTION (????????????????????)????????????????? typedef struct tagNET_DEV_EVENT_OBJECT_QUANTITY_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) DH_MSG_OBJECT stuObjects[128]; /// ?????????????? int nObjectsRealNum; /// ??????????????????? int nDetectRegionRealNum; /// ??????????????????? UINT nDetectRegion[20][2]; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_OBJECT_QUANTITY_DETECTION_INFO; ///@brief ??????? EVENT_IVS_DRIVE_ASSISTANT_ALARM (????????????)????????????????? typedef struct tagNET_DEV_EVENT_DRIVE_ASSISTANT_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) UINT nForwardCollideFlag; /// ????????????, 0??????? 1????? UINT nForwardCollideReportFlag; /// ????????????, 0??????? 1????? float fForwardCollideTime; /// ?????????????????, ??nForwardCollideFlag??nForwardCollideReportFlag??1????? UINT nTooCloseFlag; /// ?????????????, 0??????? 1????? UINT nTooCloseReportFlag; /// ?????????????, 0??????? 1????? UINT nDepartureState; /// ????????????????????, 0??????? 1??????? 2??????? UINT nDepartureReportState; /// ????????????????????, 0??????? 1??????? 2??????? UINT nDepartureLaneType; /// ???????????0: ????????1: ???????2: ??????3: ??????4: ?????5: ??????????6: ????????? UINT nSolidLaneChangeFlag; /// ???????????0??????? 1????? UINT nSolidLaneChangeReportFlag; /// ???????????0?????????????????? 1?????????????? NET_OBJECT_IMAGE_INFO stuImageInfo; /// ????? UINT nFrontCarGoFlag; /// ???????????, 0 :??????; 1 : ??????? UINT nPedestrianOnZebraFlag; /// ???????????????, 0 :?????; 1 : ??? UINT nPedestrianOnZebraDiscourtesyFlag; /// ?????????????????????, 0 :?????; 1:????????? UINT nTrafficLightStateFlag; /// ??????????, 0:?????; 1:??????? UINT nTrafficSignsHighSpeed; /// ???????????????????0??????????KM/H UINT nTrafficSignsLowSpeed; /// ???????????????????0??????????KM/H char szForwardCollideObjectType[16]; /// ????????????????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_DRIVE_ASSISTANT_ALARM_INFO; ///@brief ??????? EVENT_IVS_FISH_STATE_DETECTION (???????????)????????????????? typedef struct tagNET_DEV_EVENT_FISH_STATE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? NET_TIME_EX stuUTC; /// ???????????? double dbPTS; /// ??????????,(?????????) UINT nEventID; /// ???ID int nObjectCount; /// ?????????? NET_VAOBJECT_ANIMAL_INFO stuObjects[8]; /// ?????????? NET_OBJECT_IMAGE_INFO stuSceneImage; /// ??????? UINT nPresetID; /// ?????????????????1??? int nDetectRegionCount; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? char szUserName[32]; /// ??????? UINT nCurrentQuantity; /// ?????????????? UINT nAssessmentQuantity; /// ??????????????????????????? int nType; /// ??????????????, 0: ??????, 1: ?????? UINT nActualQuantity; /// ????????????????????????????? ???????? int nLowFish; /// ???????????????(????????20%???) ???????????0??100 char szReserved[1020]; /// ?????? }NET_DEV_EVENT_FISH_STATE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_CONVEYOR_NTH_TO_STH_DETECTION (???????????????????????)????????????????? typedef struct tagNET_DEV_EVENT_CONVEYOR_NTH_TO_STH_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nEventID; /// ???ID NET_TIME_EX stuUTC; /// ???????????? double dbPTS; /// ??????????,(?????????) UINT nRuleID; /// ????????????? int nObjectCount; /// ?????????? DH_MSG_OBJECT stuObjects[32]; /// ?????????? NET_OBJECT_IMAGE_INFO stuSceneImage; /// ??????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionCount; /// ????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_CONVEYOR_NTH_TO_STH_DETECTION_INFO; ///@brief ??????? EVENT_IVS_CONVEYOR_STH_TO_NTH_DETECTION (???????????????????????)????????????????? typedef struct tagNET_DEV_EVENT_CONVEYOR_STH_TO_NTH_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? NET_TIME_EX stuUTC; /// ???????????? double dbPTS; /// ??????????,(?????????) UINT nRuleID; /// ????????????? int nObjectCount; /// ?????????? DH_MSG_OBJECT stuObjects[32]; /// ?????????? NET_OBJECT_IMAGE_INFO stuSceneImage; /// ??????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionCount; /// ????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_CONVEYOR_STH_TO_NTH_DETECTION_INFO; ///@brief ??????? EVENT_IVS_CO_LOW_ALARM (CO???????????)????????????????? typedef struct tagNET_DEV_EVENT_CO_LOW_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nCOConcentration; ///????????????????ppm char szReserved[1024]; /// ?????? }NET_DEV_EVENT_CO_LOW_ALARM_INFO; ///@brief ??????? EVENT_IVS_CO_HIGH_ALARM (CO???????????)????????????????? typedef struct tagNET_DEV_EVENT_CO_HIGH_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nCOConcentration; ///????????????????ppm char szReserved[1024]; /// ?????? }NET_DEV_EVENT_CO_HIGH_ALARM_INFO; ///@brief ??????????? typedef struct tagNET_CIGARETTE_CASE_INFO { char szCigaretteType[128]; /// ???????????,?????????????? ///0 "GuiYan-Yinghuangjingpin" ????(?????) ///1 "HuangGuoShu-Lanjiapin" ?????(?????) ///2 "GuiYan-Yinggaozun" ????(?????) ///3 "GuiYan-Xi" ????(?) ///4 "YunYan-Ruanzhenpin" ????(??????? ///5 "YunYan-Zi" ????(??? ///6 "GuiYan-Fu" ????(??) ///7 "GuiYan-Cui" ????(??) ///8 "GuiYan-Jinbaihe" ????(????) ///9 "YuXi-Ruan" ???(??) ///10 "GuiYan-Kuayue" ????(???) ///11 "ZhongHua-Ying" ????(?) ///12 "HuangHeLou-Ruanlan" ????(????) ///13 "GuiYan-Ruangaozun" ????(??????) ///14 "GuiYan-Guojiuxiang30" ????(??????30) ///15 "GuiYan-Hongzhongzhi" ????(?????) ///16 "YunYan-Ruandazhongjiu" ????(???????) ///17 "YunYan-Zhongzhijinyaodai" ????(?????????) ///18 "HuangHeLou-Tianxiaminglou" ????(???????) ///19 "GuiYan-Xizhiguojiuxiang30" ????(????????30) ///20 "NanJing-Xuanhemen" ???(?????) ///21 "ZhongHua-Ruan" ????(??) ///22 "HuangGuoShu-Changzhenghongxingzhaoyao" ?????(???????????) ///23 "FuRongWang-Ying" ?????(?) ///24 "TianZi-Jin" ????(??) ///25 "BaiSha-Hetianxia" ???(??????) ///26 "NanJing-Shierchaibohe" ???(?????????) ///27 "GuiYan-Shengxiao" ????(????) ///28 "TianZi-ZhongZhi" ????(???) ///29 "YunYan-Ruanyinxiangyanzhuang" ????(????????) ///30 "ZhongHua-Shuangzhongzhi" ????(????) ///31 "GuiYan-Xingzhe" ????(????) ///32 "GuiYan-Guizhongzhi" ????(?????) ///33 "YuXi-Zhongzhijingjie" ???(???????) ///34 "ZhongHua-Jinzhongzhi" ????(?????) ///35 "YunYan-Heijingangyinxiang" ????(???????) ///36 "YunYan-Xiaoxiongmaojiayuan" ????(?????????) ///37 "GuiYan-Fuzhongzhi" ????(?????) ///38 "GuiYan-Xigui" ????(???) ///39 "JiaoZi-Kuanzhaihaoyunxizhi" ????(?????????) ///40 "GuiYan-Xizhixingzhe" ????(??????) ///41 "BaiSha-Ruanhetianxia" ???(????????) ///42 "GuiYan-Yingxiaoguojiuxiang" ????(?????????) ///43 "YunYan-Xizhizhenpin" ????(?????) ///44 "YunYan-Xizhiyunlong" ????(??????) ///45 "ChangBaiShan-777" ?????(777) ///46 ??LiQun-Xinbon?? ???(????) ///47 ??HuangHeLou-Yingxiagurouqing?? ????(????????) ///48 ??Huangshan-Xinzhiwanyan?? ???(????????) ///49 ??QiPiLang-Hong?? ?????(??) ///50 ??BaiSha-Yingxizhihetianxia?? ???(?????????) UINT CigaretteNum; /// ???????????????????? char szReserved[1020]; /// ?????? }NET_CIGARETTE_CASE_INFO; ///@brief ??????? EVENT_IVS_CIGARETTE_CASE_DETECTION (?????????)????????????????? typedef struct tagNET_DEV_EVENT_CIGARETTE_CASE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ??????? double PTS; /// ????(?????????) EM_CLASS_TYPE emClassType; /// ??????????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID???????????nGroupID??? int nCountInGroup; /// ??????????????????,?????????nCountInGroup??? int nIndexInGroup; /// ????????????????????1??? UINT nCigaretteCaseNum; /// ??????????????? NET_CIGARETTE_CASE_INFO stuCigaretteCaseInfo[50]; /// ??????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_CIGARETTE_CASE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TIMECHANGE_FOR_TWSDK (??????????????)????????????????? typedef struct tagNET_DEV_EVENT_TIMECHANGE_FOR_TWSDK_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME stuBeforeModifyTime; /// ??????? NET_TIME stuModifiedTime; /// ??????? char szSN[32]; /// ????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TIMECHANGE_FOR_TWSDK_INFO; ///@brief ????????????????? typedef enum tagEM_CONVEYOR_BELT_RULETYPE_RULE_TYPE { EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE_UNKNOWN, /// ??? EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE_STH_TO_NTH, /// ??????????? EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE_NTH_TO_STH, /// ?????????? EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE_MOVE_TO_STOP, /// ???????? EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE_STOP_TO_MOVE, /// ???????? }EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE; ///@brief ??????? EVENT_IVS_CONVEYOR_BELT_STATUS (??????????????????)????????????????? typedef struct tagNET_DEV_EVENT_CONVEYOR_BELT_STATUS_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ?????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionCount; /// ????????? float fCoalData; /// ??????????? UINT nStatusType; /// ??????????????????????????: 0???????????, 1???????????, 2?????? UINT nObjectStatusType; /// ????????????????????????????: 0??????, 1??????????????, 2????????????? NET_OBJECT_IMAGE_INFO stuSceneImage; /// ??????? int nRuleTypeCount; /// ?????????? EM_CONVEYOR_BELT_RULETYPE_RULE_TYPE emRuleType[16]; /// ??????? UINT nStatusTypeObjRst; /// ??????????????????????? ??????????????^ 0- ??? 1- ?????? 2- ?????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_CONVEYOR_BELT_STATUS_INFO; ///@brief ??????? EVENT_IVS_HOSPITAL_TALK_CONTROL (????????????)????????????????? typedef struct tagNET_DEV_EVENT_HOSPITAL_TALK_CONTROL_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szCitizenName[128]; /// ?????????????_???????????????? char szCitizenIDNo[20]; /// ??????? char szPatientIdentity[20]; /// ??????? UINT nMode; /// ????? 0:???????,1????????? UINT nStatus; /// ????????? 0: ???,1: ????,2: ???,3: ???? UINT nCardType; /// ??????? 1:???,2????_?? UINT nImageInfoNum; /// ???????????? NET_USERMANAGER_IMAGE_INFO stuImageInfo[6]; /// ????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_HOSPITAL_TALK_CONTROL_INFO; ///@brief ????????????? typedef enum tagEM_STATIONINFO_SITE_TYPE { EM_STATIONINFO_SITE_UNKNOWN, /// ??? EM_STATIONINFO_SITE_SIGNIN, /// ???/??? EM_STATIONINFO_SITE_SIGNOUT, /// ???/??? EM_STATIONINFO_SITE_NORMAL, /// ???????????????????? }EM_STATIONINFO_SITE_TYPE; ///@brief ??????? EVENT_IVS_SCHOOL_BUS_SWIPE_CARD (?????????)????????????????? typedef struct tagNET_DEV_EVENT_SCHOOL_BUS_SWIPE_CARD_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szCardID[64]; /// ???ID NET_TIME_EX stuSwipeTime; /// ????????????? char szSiteName[64]; /// ??????? EM_STATIONINFO_SITE_TYPE emSiteType; /// ????????????? NET_TIME_EX stuStartTime; /// ???????????????? NET_TIME_EX stuEndTime; /// ????????????????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_SCHOOL_BUS_SWIPE_CARD_INFO; ///@brief ???? typedef struct tagNET_DOOR_STATUS_FOR_BOX { int nNumber; /// ??? int nStatus; /// ?? char szReserved[64]; /// ?????? }NET_DOOR_STATUS_FOR_BOX; ///@brief ??????? EVENT_IVS_DOOR_STATUS_FOR_BOX (????????????)????????????????? typedef struct tagNET_DEV_EVENT_DOOR_STATUS_FOR_BOX_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_DOOR_STATUS_FOR_BOX stuDoorStatus[256]; /// ???? int nDoorStatusNum; /// ???????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_DOOR_STATUS_FOR_BOX_INFO; ///@brief ??????? EVENT_IVS_COLD_SPOT_WARNING (?????)????????????????? typedef struct tagNET_DEV_EVENT_COLD_SPOT_WARNING_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_POINT_EX stuPoint; /// ??????? ???????[0,8191]???????? float fColdSpotValue; /// ??????? NET_TEMPERATURE_UNIT emTemperatureUnit; /// ?????????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_COLD_SPOT_WARNING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ACCELERATION_RAPID (?????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_ACCELERATION_RAPID_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nLane; /// ???????????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ??????????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bHasNonMotor; /// ???????????????? int nSequence; /// ?????????/0??1????????????????0???????????? int nSpeed; /// ?????????km/h int nTriggerType; /// ????????: -1: ??? 0: ?????? 1: ??? 2: ??? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nEventType; /// ???????????, bit0??????????, bit1??????????, ??bit0??bit1???????????????????????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAFFIC_ACCELERATION_RAPID_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_TURN_SHARP (????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_TURN_SHARP_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nLane; /// ???????????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ??????????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bHasNonMotor; /// ???????????????? int nSequence; /// ?????????/0??1????????????????0???????????? int nSpeed; /// ?????????km/h int nTriggerType; /// ????????: -1: ??? 0: ?????? 1: ??? 2: ??? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_TURN_SHARP_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_VEHICLEIN_AREA (???????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_VEHICLEIN_AREA_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nLane; /// ???????????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ??????????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? BOOL bHasNonMotor; /// ???????????????? int nSequence; /// ?????????/0??1????????????????0???????????? int nSpeed; /// ?????????km/h UINT nEventType; /// ???????????, bit0????????????bit1??????????, ????0?????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAFFIC_VEHICLEIN_AREA_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NOT_AFTER_HORIZONTAL_PEOPLE (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_NOT_AFTER_HORIZONTAL_PEOPLE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nLane; /// ???????????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ??????????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nSequence; /// ?????????/0??1????????????????0???????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_NOT_AFTER_HORIZONTAL_PEOPLE_INFO; ///@brief ??????? EVENT_IVS_PASSENGER_FLOW_ALARM (??????????)????????????????? typedef struct tagNET_DEV_EVENT_PASSENGER_FLOW_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nAlarmType; /// ????????: 0: ???,??????, 1: ??????????, 2: ?????????? NET_TIME stuTime; /// ?????????????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS?? char szCarNo[12]; /// ???? UINT nPassengerNum; /// ???????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_PASSENGER_FLOW_ALARM_INFO; ///@brief ??????? EVENT_IVS_WATER_LOGGED_DETECTION (?????????)????????????????? typedef struct tagNET_DEV_EVENT_WATER_LOGGED_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuObjects[100]; /// ???????????? int nObjectNum; /// ???????????? UINT nEventID; /// ?????? int nDetectRegionNum; /// ????????? NET_POINT_EX stuDetectRegion[20]; /// ????? UINT nPresetID; /// ?????????????????1??? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_WATER_LOGGED_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVER_SUN_VISOR (???????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_DRIVER_SUN_VISOR_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? char szName[128]; /// ??????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ????????????? UINT nEventID; /// ?????? int nLane; /// ?????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? int nSpeed; /// ????????km/h UINT nEventType; /// ???????????, bit0??????????,bit1??????????, ??bit0??bit1???????????????????????????? char szReserved[1028]; /// ?????? }NET_DEV_EVENT_TRAFFIC_DRIVER_SUN_VISOR_INFO; ///@brief ??????? EVENT_IVS_WORK_CHECK (?????????)????????????????? typedef struct tagNET_DEV_EVENT_WORK_CHECK_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_WORK_CHECK_INFO; ///@brief ??????? EVENT_IVS_PERSON_PECCANCY (??????????)????????????????? typedef struct tagNET_DEV_EVENT_PERSON_PECCANCY_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_PERSON_PECCANCY_INFO; ///@brief ??????? EVENT_IVS_ACTION_COUNT (??????????????????)????????????????? typedef struct tagNET_DEV_EVENT_ACTION_COUNT_INFO { int nChannelID; /// ????? int nAction; /// 0:????, 1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ??????????, ?????????UTC???, ?????? UINT nEventID; /// ?????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? UINT nRuleID; /// ????????????? int nObjectsNum; /// ???????????????? DH_MSG_OBJECT stuObjects[100]; /// ???????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szAlgorithmName[64]; /// ?????? char szAlarmID[32]; /// ????????id char szActionName[64]; /// ???????????? UINT nActionCount; /// ??????????????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_ACTION_COUNT_INFO; ///@brief ??????? EVENT_IVS_WADING_DETECTION (????????????????)????????????????? typedef struct tagNET_DEV_EVENT_WADING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????, 1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ??????????, ?????????UTC???, ?????? UINT nEventID; /// ?????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nObjectsNum; /// ???????????????? DH_MSG_OBJECT stuObjects[32]; /// ???????????? NET_POINT_EX stuDetectRegion[20]; /// ??????? int nDetectRegionNum; /// ???????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_WADING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_GO_STRAIGHT (???????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_GO_STRAIGHT_INFO { int nChannelID; /// ????? int nAction; /// 0:????, 1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ??????????, ?????????UTC???, ?????? UINT nEventID; /// ?????? char szName[128]; /// ??????? double dbPTS; /// ??????????,???????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nTriggerType; /// ????????, -1:???,0:??????,1:???,2:??? int nMark; /// ?????????? int nFrameSequence; /// ??????????? int nLane; /// ?????? int nSequence; /// ?????? int nSpeed; /// ?????????km/h DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? }NET_DEV_EVENT_TRAFFIC_GO_STRAIGHT_INFO; ///@brief ??????? EVENT_IVS_PHONE_SECURITY_STICKER_DETECTION (????????????)????????????????? typedef struct tagNET_DEV_EVENT_PHONE_SECURITY_STICKER_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????, 1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ??????????, ?????????UTC???, ?????? UINT nEventID; /// ?????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? UINT nRuleID; /// ????????????????????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? int nObjectsNum; /// ???????????????? DH_MSG_OBJECT stuObjects[32]; /// ???????????? NET_POINT_EX stuDetectRegion[20]; /// ??????? int nDetectRegionNum; /// ???????????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_PHONE_SECURITY_STICKER_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SAME_OBJECT_SEARCH_DETECT (????????????????)????????????????? typedef struct tagNET_DEV_EVENT_SAME_OBJECT_SEARCH_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:????, 1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ??????????, ?????????UTC???, ?????? UINT nEventID; /// ?????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? int nGroupID; /// ?????ID????????????????GroupID????? int nCountInGroup; /// CountInGroup?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nObjectsNum; /// ??????????????????????? DH_MSG_OBJECT stuObjects[64]; /// ??????????? char szAlgName[128]; /// ?????? char szObjectType[32]; /// ??????? SCENE_IMAGE_INFO stuImageInfo; /// ???? UINT nAlarmId; /// ????????ID UINT nObjectTypeID; /// ObjectType???????id UINT nAlgId; /// ????????????????id char szReserved[1020]; /// ?????? }NET_DEV_EVENT_SAME_OBJECT_SEARCH_DETECT_INFO; ///@brief ??????? DH_ALARM_WORK_CHECK (?????????)????????????????? typedef struct tagNET_ALARM_WORK_CHECK_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1020]; /// ?????? }NET_ALARM_WORK_CHECK_INFO; ///@brief ??????? DH_ALARM_PERSON_PECCANCY (??????????)????????????????? typedef struct tagNET_ALARM_PERSON_PECCANCY_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szReserved[1020]; /// ?????? }NET_ALARM_PERSON_PECCANCY_INFO; ///@brief ?????????? typedef struct tagNET_DRIVER_MISMATCH_INFO { char szFaceID[32]; /// ????ID char szOrganization[32]; /// ?????????????? char szReserved[256]; /// ?????? }NET_DRIVER_MISMATCH_INFO; ///@brief ????????? typedef struct tagNET_CARD_MISMATCH_INFO { char szCardID[32]; /// ???ID char szOrganization[32]; /// ?????????????? char szReserved[256]; /// ?????? }NET_CARD_MISMATCH_INFO; ///@brief ?????????? typedef struct tagNET_VEHICLE_MISMATCH_INFO { char szOrganization[32]; /// ?????????????? char szReserved[256]; /// ?????? }NET_VEHICLE_MISMATCH_INFO; ///@brief ??????? EVENT_IVS_DRIVER_MISMATCH_CERTIFICATE (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_DRIVER_MISMATCH_CERTIFICATE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? NET_DRIVER_MISMATCH_INFO stuDriverInfo; /// ??????? NET_CARD_MISMATCH_INFO stuCardInfo; /// ?????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_DRIVER_MISMATCH_CERTIFICATE_INFO; ///@brief ??????? EVENT_IVS_DRIVER_MISMATCH_VEHICLE (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_DRIVER_MISMATCH_VEHICLE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? NET_DRIVER_MISMATCH_INFO stuDriverInfo; /// ??????? NET_VEHICLE_MISMATCH_INFO stuVehicleInfo; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_DRIVER_MISMATCH_VEHICLE_INFO; ///@brief ??????? EVENT_IVS_CERTIFICATE_MISMATCH_VEHICLE (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_CERTIFICATE_MISMATCH_VEHICLE_INFO { int nChannelID; /// ????? int nAction; /// 0:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? NET_CARD_MISMATCH_INFO stuCardInfo; /// ??????? NET_VEHICLE_MISMATCH_INFO stuVehicleInfo; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_CERTIFICATE_MISMATCH_VEHICLE_INFO; ///@brief "??????"??????? typedef struct tagNET_BATTERY_LOW_POWER_INFO { UINT nVoltage; /// ???????????mV UINT nPercent; /// ?????????? char szReserved[256]; /// ?????? }NET_BATTERY_LOW_POWER_INFO; ///@brief "??????"??????? typedef struct tagNET_TEMP_SENSOR_INFO { double dbValue; /// ?????? char szUnit[8]; /// ??????, ???H char szReserved[256]; /// ?????? }NET_TEMP_SENSOR_INFO; ///@brief "??????"??????? typedef struct tagNET_HUMIDITY_SENSOR_INFO { double dbValue; /// ??? char szUnit[8]; /// ??????, ?????????%RH???????% char szReserved[256]; /// ?????? }NET_HUMIDITY_SENSOR_INFO; ///@brief ??????????????? typedef struct tagNET_FINANCIAL_ALARM_INFO { NET_BATTERY_LOW_POWER_INFO stuBatteryLowPower; /// "??????"??????? NET_TEMP_SENSOR_INFO stuTempSensor; /// "??????"??????? NET_HUMIDITY_SENSOR_INFO stuHumiditySensor; /// "??????"??????? char szReserved[1024]; /// ?????? }NET_FINANCIAL_ALARM_INFO; ///@brief ???????EVENT_IVS_FINANCIAL_CABINET_ALARM_EVENT(?????????????)????????????????? typedef struct tagNET_DEV_EVENT_FINANCIAL_CABINET_ALARM_EVENT_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szUserID[32]; /// ???????ID char szAlarmType[32]; /// ????????????????, ????????????: /// "ShockSensor"- ????? "NetAbort"- ???????? "PowerFault"-??????? "TempSensor"-?????? "HumiditySensor"-?????? /// "AbnormalOpenDoor"-?????? "EmergencyOpenDoor"-??????? "DoorNotOpen"-??????? "OperTimeOut"-?????????? "FailTooManyTimes"-??????? /// "TrunkAway"-??????? "AbnormalWithdraw"-??????? "AbnormalDeposit"-??????? "Duress"-??????? "Infrared"-?????? /// "SmokingSensor"-??????? "UrgencyButton"-???????? "InvalidAuth"-?????? "BatteryLowPower"-?????? "Other"-???? NET_FINANCIAL_ALARM_INFO stuAlarmInfo; /// szAlarmType?????????????????? UINT nAlarmLevel; /// ??????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_FINANCIAL_CABINET_ALARM_EVENT_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_RUNASTOP_SIGN(?????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_RUNASTOP_SIGN_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_RUNASTOP_SIGN_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_VEHICLE_OVERLOAD(?????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_VEHICLE_OVERLOAD_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAFFIC_VEHICLE_OVERLOAD_INFO; ///@brief ???????EVENT_IVS_DOOR_STATUS(???????)????????????????? typedef struct tagDEV_EVENT_DOOR_STATUS_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID char szSerialNumber[256]; /// ?????????????(??????) EM_DOOR_STATUS emStatus; /// ????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC ???????? UTC ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? BYTE byReserved[970]; /// ?????? }DEV_EVENT_DOOR_STATUS_INFO; ///@brief ???? typedef struct tagNET_VIS_SCENE_IMAGE { UINT nOffset; /// ??????????????????? UINT nLength; /// ??????, ??????? UINT nWidth; /// ??????, ???? UINT nHeight; /// ?????, ???? UINT nIndexInData; /// ???????????????????? BYTE byReserved[60]; /// ?????? } NET_VIS_SCENE_IMAGE; ///@brief ????????? typedef struct tagNET_THERMAL_SCENE_IMAGE { UINT nOffset; /// ??????????????????? UINT nLength; /// ??????, ??????? UINT nWidth; /// ??????, ???? UINT nHeight; /// ?????, ???? UINT nIndexInData; /// ???????????????????? BYTE byReserved[60]; /// ?????? } NET_THERMAL_SCENE_IMAGE; ///@brief ???????EVENT_IVS_ANATOMY_TEMP_DETECT(????????????)????????????????? typedef struct tagDEV_EVENT_ANATOMY_TEMP_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nPresetID; /// ??????????????, ??1???, ????????,?????????? NET_MAN_TEMP_INFO stManTempInfo; /// ???????????????? NET_VIS_SCENE_IMAGE stVisSceneImage; /// ????????? NET_THERMAL_SCENE_IMAGE stThermalSceneImage; /// ????????? UINT nSequence; /// ???? UINT nEventRelevanceID; /// ???????ID BOOL bIsFaceRecognition; /// ???????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1004]; /// ?????? } DEV_EVENT_ANATOMY_TEMP_DETECT_INFO; ///@brief ??????? EVENT_IVS_DHOP_CUSTOM ?? EVENT_IVS_DHOP_CUSTOM_ONCE (DHOP????????)????????????????? typedef struct tagDEV_EVENT_DHOP_CUSTOM_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[128]; /// ??????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSourceIndex; /// ?????ID BYTE byReserved1[4]; /// ???,?????? NET_DHOP_APP_INFO stuAppInfo; /// ?????????????APP????? char szCustomData[4096]; /// ????????? double PTS; /// ????(?????????) char szClass[32]; /// ??????????? BYTE byReserved[2008]; /// ?????? } DEV_EVENT_DHOP_CUSTOM_INFO; ///@brief ?????????????????? typedef enum tagEM_FOG_DETECTION_EVENT_TYPE { EM_FOG_DETECTION_EVENT_TYPE_UNKNOWN, /// ??? EM_FOG_DETECTION_EVENT_TYPE_REAL, /// ?????? EM_FOG_DETECTION_EVENT_TYPE_ALARM, /// ???????? }EM_FOG_DETECTION_EVENT_TYPE; ///@brief ??? typedef enum tagEM_FOG_LEVEL { EM_FOG_LEVEL_UNKNOWN, /// ??? EM_FOG_LEVEL_NO, /// ?? EM_FOG_LEVEL_BLUE, /// ?????? EM_FOG_LEVEL_YELLOW, /// ?????? EM_FOG_LEVEL_ORANGE, /// ?????? EM_FOG_LEVEL_RED, /// ?????? }EM_FOG_LEVEL; ///@brief ??????????????? typedef struct tagFOG_DETECTION_FOG_INFO { EM_FOG_LEVEL emFogLevel; /// ????? BYTE byReserved[508]; /// ?????? }FOG_DETECTION_FOG_INFO; ///@brief ???????EVENT_IVS_FOG_DETECTION(??????????)????????????????? typedef struct tagDEV_EVENT_FOG_DETECTION { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? int nPresetID; /// ????????1??????? char szPresetName[128]; /// ????????? EM_FOG_DETECTION_EVENT_TYPE emEventType; /// ??????????? FOG_DETECTION_FOG_INFO stuFogInfo; /// ????? DH_EVENT_FILE_INFO stFileInfo; /// ???????????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_FOG_DETECTION; ///@brief ???????EVENT_IVS_TRAFFIC_VEHICLE_BC(?????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_VEHICLE_BC { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1. 1?????????,0????????? EVENT_COMM_INFO stCommInfo; /// ??????? DH_EVENT_FILE_INFO stFileInfo; /// ???????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[1020-POINTERSIZE]; /// ?????? }DEV_EVENT_TRAFFIC_VEHICLE_BC; ///@brief ??????? EVENT_IVS_TRAFFIC_MOTOR_OVERLOAD (?????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_MOTOR_OVERLOAD_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1. 1?????????,0????????? EVENT_COMM_INFO stCommInfo; /// ??????? DH_MSG_OBJECT_SUPPLEMENT stuObjectInfoEx; /// ?????????????, ??DH_MSG_OBJECT????????????????????? BYTE byReserved[720]; /// ?????? }DEV_EVENT_TRAFFIC_MOTOR_OVERLOAD_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_PLATE_OCCLUSION (???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_PLATE_OCCLUSION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1. 1?????????,0????????? EVENT_COMM_INFO stCommInfo; /// ??????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_PLATE_OCCLUSION_INFO; ///@brief ?????? typedef struct tagNET_CAMERA_PTZ_INFO { PTZ_SPACE_UNIT stuPosition; /// ?????????????? unsigned int nAngelH; /// ?????????????,??????,????????100 unsigned int nAngelV; /// ??????????????,??????,????????100 char szreserved[60]; /// ?????? }NET_CAMERA_PTZ_INFO; ///@brief ??????? EVENT_IVS_BREAK_RULE_BUILDING_DETECTION ?????????????????????????????????? typedef struct tagDEV_EVENT_BREAK_RULE_BUILDING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? EM_CLASS_TYPE emClassType; /// ??????????????? SCENE_IMAGE_INFO stuSceneImageInfo; /// ???????(???????????nOffSet??nLength????) DWORD dwEventID; /// ???ID char szreserved[4]; /// ?????? NET_CAMERA_PTZ_INFO stuCameraPtz; /// ?????? NET_RECT stuBoundingBox; /// ???????? int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[128]; /// ???????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[884-POINTERSIZE]; /// ?????? }DEV_EVENT_BREAK_RULE_BUILDIING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ROAD_ALERT(??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_ROAD_ALERT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? int nLane; /// ????????? EVENT_COMM_INFO stCommInfo; /// ??????? DH_EVENT_FILE_INFO stFileInfo; /// ???????????? int nSequence; /// ?????????,??3,2,1. 1?????????,0????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE byReserved[1016-POINTERSIZE]; /// ?????? } DEV_EVENT_TRAFFIC_ROAD_ALERT_INFO; ///@brief ??????? EVENT_IVS_NONMOTOR_ENTRYING (?????????????????)????????????????? typedef struct tagDEV_EVENT_NONMOTOR_ENTRYING_INFO { int nChannelID; /// ????? int nAction; /// 1:??? 2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nRuleID; /// ????ID int nSequence; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? int nObjectNum; /// ?????? VA_OBJECT_NONMOTOR stuObjects[8]; /// ?????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserved[1024]; /// ?????? }DEV_EVENT_NONMOTOR_ENTRYING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NONMOTOR_RUN_REDLIGHT (???????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NONMOTOR_RUN_REDLIGHT_INFO { int nChannelID; /// ????? int nAction; /// 0:??????? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ??????? int nLane; /// ?????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????? EVENT_COMM_INFO stCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE byReserved[1016]; /// ?????? }DEV_EVENT_TRAFFIC_NONMOTOR_RUN_REDLIGHT_INFO; ///@brief ??????? EVENT_IVS_PRAM_DETECTION (???????????)????????????????? typedef struct tagDEV_EVENT_PRAM_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nPresetID; /// ?????????????????1???, ???????????????????? DH_MSG_OBJECT stuObjects[128]; /// ??????????? int nObjectNum; /// ???????????? int nDetectRegionNum; /// ???????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? BYTE byReversed[1024]; /// ??????? }DEV_EVENT_PRAM_DETECTION_INFO; ///@brief ??????? EVENT_IVS_BIG_BAGGAGE_DETECTION (??????????????)????????????????? typedef struct tagDEV_EVENT_BIG_BAGGAGE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nPresetID; /// ?????????????????1???, ???????????????????? DH_MSG_OBJECT stuObjects[128]; /// ??????????? int nObjectNum; /// ???????????? int nDetectRegionNum; /// ???????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? BYTE byReversed[1024]; /// ??????? }DEV_EVENT_BIG_BAGGAGE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TICKET_EVADE_DETECTION (?????????)????????????????? typedef struct tagDEV_EVENT_TICKET_EVADE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? 1:??? 2:?? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nPresetID; /// ?????????????????1???, ???????????????????? DH_MSG_OBJECT stuObjects[128]; /// ??????????? int nObjectNum; /// ???????????? int nDetectRegionNum; /// ???????????? DH_POINT stuDetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ??????? BYTE byReversed[1024]; /// ??????? }DEV_EVENT_TICKET_EVADE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_VEHICLE_IN_EMERGENCY_LANE (?????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_VEHICLE_IN_EMERGENCY_LANE_INFO { int nChannelID; /// ????? int nAction; /// 0:??????? char szName[DH_EVENT_NAME_LEN]; /// ??????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????? DH_MSG_OBJECT stuObject; /// ????????? BYTE byReserved1[4]; /// ?????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? BYTE byReserved2[4]; /// ?????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_VEHICLE_IN_EMERGENCY_LANE_INFO; ///@brief ????N????????? typedef enum tagEM_OBJECT_ACTION { EM_OBJECT_ACTION_UNKNOWN, /// ??????? EM_OBJECT_ACTION_APPEAR, /// "Appear": ???????????????????, ?????????????????????????????????? EM_OBJECT_ACTION_MOVE, /// "Move": ??????? ????????????? EM_OBJECT_ACTION_STAY, /// "Stay": ????????????????I???????????????????????????????????????????????? EM_OBJECT_ACTION_REMOVE, /// "Remove": ?????????????????????????????????????? EM_OBJECT_ACTION_DISAPPERAR, /// "Disappear": ???????????????????????????????????????????????????????ID????????? EM_OBJECT_ACTION_SPLIT, /// "Split": ??????????????????????????????????????????????ID????????ID?????????? EM_OBJECT_ACTION_MERGE, /// "Merge": ?????????????????????????????????????ID???????????ID??????????? EM_OBJECT_ACTION_RENAME, /// "Rename": ???????????????????????????????????????ID?????????????ID }EM_OBJECT_ACTION; ///@brief ???????? ForeignMatterObjects typedef struct tagFOREIGN_MATTER_OBJECT { DWORD dwObjectID; /// ????ID, ???ID??????????????? EM_OBJECT_ACTION emAction; /// ????N?????? NET_RECT stuBoundingBox; /// ????????????? BYTE byReserved[256]; /// ??????? }FOREIGN_MATTER_OBJECT; ///@brief ??????? EVENT_IVS_POWERLINE_FOREIGN_DETECITON ??????? typedef struct tagDEV_EVENT_POWERLINE_FOREIGN_DETEC_INFO { int nChannelID; /// ????? int nAction; /// ??????? 1-???. 2-???? char szName[128]; /// ??????? DWORD PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? int nRuleID; /// ?????????????, ???0 int nCount; /// ??????????? int nPresetID; /// ??????????????, ???0 int nDetectRegionNum; /// ????????????? NET_POINT stuDetectRegion[20]; /// ?????????? int nForeignMatterNum; /// ?????????????? FOREIGN_MATTER_OBJECT *pForeignMatter; /// ??????????? void *pReserved; /// ?????? BYTE byReserved[1024]; /// ???? }DEV_EVENT_POWERLINE_FOREIGN_DETEC_INFO; ///@brief ??????????? typedef enum tagEM_TRIGGER_OCCUR_TYPE { EM_TRIGGER_OCCUR_TYPE_UNKNOWN = -1, /// ??? EM_TRIGGER_OCCUR_TYPE_ENTER, /// ???? EM_TRIGGER_OCCUR_TYPE_LEAVE, /// ?? }EM_TRIGGER_OCCUR_TYPE; ///@brief ????????????? typedef enum tagEM_CAPTURE_PROCESS_END_TYPE { EM_CAPTURE_PROCESS_END_TYPE_UNKNOWN = -1, /// ??? EM_CAPTURE_PROCESS_END_TYPE_ABNORMAL, /// ?? EM_CAPTURE_PROCESS_END_TYPE_NORMAL, /// ???? }EM_CAPTURE_PROCESS_END_TYPE; ///@brief ????????????? typedef struct tagRADAR_REPORTS_VEHICLE_INFO { UINT nVehicleId; /// ????ID UINT nVehicleLength; /// ???????????????????? UINT nVehicleWidth; /// ???????????????????? UINT nVehicleHeight; /// ??????????????????? UINT nVehicleVolume; /// ???????????????????????? UINT nLaneID; /// ?????? EM_VEHICLE_DRIVING_DIRECTION emDrivingDirection; /// ???????????(??????????) char szDetectTime[32]; /// ????????????????????? UINT nVehicleRailingHigh; /// ??????????????????????? UINT nVehicleSpeed; /// ???????(?????????/???) EM_RADAR_DETECTION_VEHICLE_TYPE emVehicleType; /// ???????? UINT nAxisNum; /// ??????????? UINT nAxisType; /// ???????????? BYTE byResverd[260]; /// ??????? }RADAR_REPORTS_VEHICLE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_CAR_MEASUREMENT(??????????(??????????????????????)???) ??????? typedef struct tagDEV_EVENT_TRAFFIC_CAR_MEASUREMENT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? UINT nEventID; /// ???ID UINT nSpeed; /// ????,????km/h EM_TRIGGER_TYPE emTriggerType; /// ???????? EM_TRIGGER_OCCUR_TYPE emTriggerOccur; /// ??????? UINT nMark; /// ??????? UINT nSource; /// ????????????????? UINT nFrameSequence; /// ??????????? int nLaneID; /// ?????? NET_TIME_EX stuRedLightStartTime; /// ?????????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? EVENT_CARD_INFO stuCardInfo; /// ?????? EM_VEHICLE_DRIVING_DIRECTION emDrivingDirection; /// ???????????(??????????) EM_TRFAFFIC_LIGHT_TYPE emLightState; /// ??????????? EM_OPEN_STROBE_STATE emOpenStrobeState; /// ????? EM_VEHICLE_DIRECTION emVehicleDirection; /// ?????????? NET_SAFEBELT_STATE emMainSeat; /// ???????????????? NET_SAFEBELT_STATE emSlaveSeat; /// ?????????????? EVENT_PLATE_INFO stuPlateInfo; /// ?????????????????????????????????? NET_CAR_WEIGHT_INFO stuCarWeightInfo; /// ????????????? RADAR_REPORTS_VEHICLE_INFO stuRadarReportsVehicleInfo; /// ????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_MSG_OBJECT stuObject; /// ???????????? DH_MSG_OBJECT stuVehicle; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE byResersed[1020]; /// ??????? }DEV_EVENT_TRAFFIC_CAR_MEASUREMENT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_TURN_RIGHT_OVER_LINE ??????????? typedef struct tagDEV_EVENT_TRAFFIC_TURN_RIGHT_OVER_LINE_INFO { char szName[128]; /// ??????? int nChannelID; /// ????? int nAction; /// 0:???? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? NET_TIME_EX UTC; /// ????????????,?????? double dbPTS; /// ????(?????????) DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? UINT nEventID; /// ??????????????????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????? int nSpeed; /// ??????????(????: km/h) int nLane; /// ?????????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON BYTE byReserved[1020]; /// ??????? }DEV_EVENT_TRAFFIC_TURN_RIGHT_OVER_LINE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVE_ON_LINE(??????????) ??????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVE_ON_LINE_INFO { char szName[128]; /// ??????? int nChannelID; /// ????? int nAction; /// 0:???? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? NET_TIME_EX UTC; /// ???????????? double dbPTS; /// ????(?????????) DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuPlateObject; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? UINT nEventID; /// ??????????????????????? int nLane; /// ?????????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stCommInfo; /// ??????? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_TRAFFIC_DRIVE_ON_LINE_INFO; ///@brief ??????? EVENT_IVS_OBJECT_PLACEMENT_DETECTION(?????????????) ??????? typedef struct tagDEV_EVENT_OBJECT_PLACEMENT_DETECTION_INFO { char szName[128]; /// ??????? int nChannelID; /// ????? int nAction; /// 0:???? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ??????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON UINT nRuleID; /// ??????,????????????????????????????0 UINT nPreRecord; /// ?????, ?????? DH_MSG_OBJECT stuObject; /// ??????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? int nObjectCount; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[128]; /// ??????????????? ??Objects, ??Objects??????Objects, ??Object???????????????????Objects???Object???????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char Reserved[1012]; /// ??????? } DEV_EVENT_OBJECT_PLACEMENT_DETECTION_INFO; ///@brief ??????? EVENT_IVS_OBJECT_REMOVAL_DETECTION(????????????) ??????? typedef struct tagDEV_EVENT_OBJECT_REMOVAL_DETECTION_INFO { char szName[128]; /// ??????? int nChannelID; /// ????? int nAction; /// 0:???? double dbPTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ??????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON UINT nRuleID; /// ??????,????????????????????????????0 UINT nPreRecord; /// ?????, ?????? DH_MSG_OBJECT stuObject; /// ??????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? int nObjectCount; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[128]; /// ??????????????? ??Objects, ??Objects??????Objects, ??Object???????????????????Objects???Object???????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char Reserved[1012]; /// ??????? } DEV_EVENT_OBJECT_REMOVAL_DETECTION_INFO; ///@brief ??????? EVENT_IVS_MANUAL_ALARM (??????????) ???????????????? typedef struct tagDEV_EVENT_MANUAL_ALARM_INFO { int nAction; /// 1:??? 2:?? int nChannel; /// ????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nImageNum; /// ????stuImages?????? SCENE_IMAGE_INFO stuImages[3]; /// ?????, ??????3??? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szName[128]; /// ??????? UINT nACK; /// ???ID int nGroupID; /// ?????ID double dbPTS; /// ????(?????????) UINT nUTCMS; /// ??????????? int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????????1??? int nMark; /// ??????? int nFrameSequence; /// ??????????? int nLane; /// ?????? int nSequence; /// ?????????/0??1????????????????0???????????? DH_MSG_OBJECT_EX2* pstuVehicle; /// ???????(??sdk?????????) DH_MSG_OBJECT_EX2* pstuObject; /// ???????(??sdk?????????) DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO* pstuTrafficCar; /// ????????????????(??sdk?????????) EVENT_COMM_INFO* pstuCommInfo; /// ???????(??sdk?????????) BYTE byReserved[836 - 4*POINTERSIZE];/// ??????? }DEV_EVENT_MANUAL_ALARM_INFO; ///@brief ?????????? typedef enum tagEM_SECURITY_IMAGE_TYPE { EM_SECURITY_IMAGE_UNKNOWN = -1, /// ??? EM_SECURITY_IMAGE_INSPECTOR, /// ??????? EM_SECURITY_IMAGE_PACKAGE /// ?????? }EM_SECURITY_IMAGE_TYPE; ///@brief ????????? typedef struct tagNET_SECURITY_IMAGE_LIST { EM_SECURITY_IMAGE_TYPE emImageType; /// ?????????? unsigned int nOffset; /// ????? unsigned int nLen; /// ?????? char szReserved[60]; /// ??????? } NET_SECURITY_IMAGE_LIST; ///@brief ???????EVENT_IVS_SECURITY_INSPECTOR_LOOKAROUND (???????????????????)????????????????? typedef struct tagDEV_EVENT_SECURITY_INSPECTOR_LOOKAROUND_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? char szUserName[32]; /// ??????? NET_SECURITY_IMAGE_LIST stuImageList[32]; /// ????????? unsigned int nImageListCount; /// ????????????? char szReserved[1020]; /// ???????,???????. } DEV_EVENT_SECURITY_INSPECTOR_LOOKAROUND_INFO; ///@brief ???????EVENT_IVS_SECURITY_INSPECTOR_LOWERHEAD (???????????????)????????????????? typedef struct tagDEV_EVENT_SECURITY_INSPECTOR_LOWERHEAD_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? char szUserName[32]; /// ??????? NET_SECURITY_IMAGE_LIST stuImageList[32]; /// ????????? unsigned int nImageListCount; /// ????????????? char szReserved[1020]; /// ???????,???????. } DEV_EVENT_SECURITY_INSPECTOR_LOWERHEAD_INFO; ///@brief ???????EVENT_IVS_SECURITY_INSPECTOR_TIRED (??????????????)????????????????? typedef struct tagDEV_EVENT_SECURITY_INSPECTOR_TIRED_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? char szUserName[32]; /// ??????? NET_SECURITY_IMAGE_LIST stuImageList[32]; /// ????????? unsigned int nImageListCount; /// ????????????? char szReserved[1020]; /// ???????,???????. } DEV_EVENT_SECURITY_INSPECTOR_TIRED_INFO; ///@brief ???????EVENT_IVS_SECURITY_INSPECTOR_YAWN (????????????????)????????????????? typedef struct tagDEV_EVENT_SECURITY_INSPECTOR_YAWN_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? char szUserName[32]; /// ??????? NET_SECURITY_IMAGE_LIST stuImageList[32]; /// ????????? unsigned int nImageListCount; /// ????????????? char szReserved[1020]; /// ???????,???????. } DEV_EVENT_SECURITY_INSPECTOR_YAWN_INFO; ///@brief ???????EVENT_IVS_AIPICK_DETECT (???????????????????)????????????????? typedef struct tagDEV_EVENT_AIPICK_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szContent[256]; /// ???????????????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_AIPICK_DETECT_INFO; ///@brief ?????????? typedef struct tagNET_TRAFFIC_LIGHT_FAULT_STATES { UINT nStraightLightMask[3]; ///??????????, 0-??? 1-??? 2-??? ??0????????????? UINT nTurnLeftLightMask[3]; ///??????????, 0-??? 1-??? 2-??? ??0????????????? UINT nTurnRightLightMask[3]; ///??????????, 0-??? 1-??? 2-??? ??0????????????? UINT nUTurnLightMask[3]; ///??????????, 0-??? 1-??? 2-??? ??0????????????? char szReserved[512]; /// ???????,??????? } NET_TRAFFIC_LIGHT_FAULT_STATES; ///@brief ???????????? typedef struct tagNET_TRAFFIC_LIGHT_FAULT_TYPE { UINT nStraightLightFaultType[4]; ///????????????, 0-???? 1-???? 2-???? 3-???? ??0????????????? UINT nTurnLeftLightFaultType[4]; ///????????????, 0-???? 1-???? 2-???? 3-???? ??0????????????? UINT nTurnRightLightFaultType[4];///????????????, 0-???? 1-???? 2-???? 3-???? ??0????????????? UINT nUTurnLightFaultType[4]; ///????????????, 0-???? 1-???? 2-???? 3-???? ??0????????????? char szReserved[512]; /// ???????,??????? } NET_TRAFFIC_LIGHT_FAULT_TYPE; ///@brief ???????EVENT_IVS_TRAFFIC_LIGHT_FAULT (??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_LIGHT_FAULT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID NET_TRAFFIC_LIGHT_FAULT_STATES stuFaultStates; /// ?????????? NET_TRAFFIC_LIGHT_FAULT_TYPE stuFaultType; /// ???????????? EM_FAULT_DETECT_SOURCE_TYPE emDetectSource; /// ??????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? EVENT_COMM_INFO *pstuCommInfo; /// ??????? char szReserved[1020-2*POINTERSIZE]; /// ???????,??????? } DEV_EVENT_TRAFFIC_LIGHT_FAULT_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_PARKING_BACKING (??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_PARKING_BACKING_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nGroupID; /// nGroupID?????ID,??????????????nGroupID??? int nCountInGroup; /// nCountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? EM_TRIGGER_TYPE emTriggerType; /// TriggerType:????????,0??????,1???,2??? int nMark; /// ?????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_TRAFFIC_PARKING_BACKING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_MOTOR_STRICTLY_PROHIBIT_MANNED (???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_MOTOR_STRICTLY_PROHIBIT_MANNED_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nGroupID; /// nGroupID?????ID,??????????????nGroupID??? int nCountInGroup; /// nCountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nHumanNum; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nSpeed; /// ?????????km/h char szReserved[1020]; /// ???????,??????? } DEV_EVENT_TRAFFIC_MOTOR_STRICTLY_PROHIBIT_MANNED_INFO; ///@brief ?????????? typedef enum tagEM_CONSUMPTION_EVENT_TYPE { EM_CONSUMPTION_EVENT_TYPE_UNKNOWN = -1, /// ??? EM_CONSUMPTION_EVENT_TYPE_QUOTA, /// ??????????? EM_CONSUMPTION_EVENT_TYPE_NONQUOTA, /// ???????????? EM_CONSUMPTION_EVENT_TYPE_DEPOSIT, /// ?????? EM_CONSUMPTION_EVENT_TYPE_RESTORE, /// ?????????? } EM_CONSUMPTION_EVENT_TYPE; ///@brief ??????? typedef struct tagDEV_EVENT_CONSUMPTION_EVENT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? UTC???????? stuTime ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? UINT nRecNo; /// ????????,??? UINT nBlockId; /// ?????????????????1??????? NET_ACCESS_CTL_EVENT_TYPE emType; /// ??????? EM_CONSUMPTION_STATUS emStatus; /// ?????? NET_ACCESSCTLCARD_TYPE emCardType; /// ?????? EM_USER_TYPE emUserType; /// ??????? NET_ACCESSCTLCARD_STATE emCardStatus; /// ???? NET_ACCESS_DOOROPEN_METHOD emMethod; /// ?????? char szCardNo[16]; /// ???? char szReaderID[32]; /// ??????ID char szUserID[12]; /// ???ID UINT nErrorCode; /// ???????????,??? emStatus ??? /// 0x00 ??????? /// 0x10 ????? /// 0x11 ?????????? /// 0x12 ?????????? /// 0x13 ?????????? /// 0x14 ????????? /// 0x15 ??????? /// 0x16 ??????????? /// 0x17 ??????? /// 0x18 AB?????? /// 0x19 ???? /// 0x1A ?????????????? /// 0x20 ???????? /// 0x21 ????????????????? /// 0x30 ??????????????????? /// 0x40 ??????,??????????? /// 0x41 ??????,????????? /// 0x42 ??????,??????????? /// 0x43 ??????,?????????? /// 0x44 ??????,??????????? /// 0x45 ??????,????????? /// 0x50 ???????????? /// 0x51 ???????????????? /// 0x60 ??????,?????????? /// 0x61 ??????,??????? /// 0x62 ??????,?????? /// 0x63 ??????? /// 0x64 ?????,??????????? /// 0x65 ????? /// 0x66 ???????? /// 0x67 ??????????? /// 0x68 ????????? /// 0x69 ????????? /// 0x6a ?????????? /// 0x6b ?????????? /// 0x70 ???????????? /// 0x71 ??????????????????????????????????? char szSnapURL[128]; /// ???????????? UINT nSimilarity; /// ???????????,????????????????? EM_CONSUMPTION_EVENT_TYPE emEventType; /// ??????? UINT nConsumptionAmount; /// ???????????????101 = 1.01 ? UINT nRechargeAmount; /// ???????????????101 = 1.01 ? char szTransactionSerialNumber[128]; /// ????????? int nImageCount; /// ???????? DEV_ACCESS_CTL_IMAGE_INFO stuImageInfos[6]; /// ????? char szLastTransactionSerialNumber[128]; /// ?????????????? char szReserved[896]; /// ???????,??????? }DEV_EVENT_CONSUMPTION_EVENT_INFO; ///@brief ???????EVENT_IVS_TOUCH_ELECTROSTATIC_BALL (?????????????)????????????????? typedef struct tagDEV_EVENT_TOUCH_ELECTROSTATIC_BALL_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szReserved1[4]; /// ??????,???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 1:??? 2:?? DH_MSG_OBJECT stuObject; /// ????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_POINT stuDetectRegion[20]; /// ??????????????? int nDetectRegionNum; /// ?????????????????? NET_POINT stuUpstairsLine[20]; /// ????????? int nUpstairsLineNum; /// ???????????? NET_POINT stuDownstairsLine[20]; /// ?????????? int nDownstairsLineNum; /// ????????????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_TOUCH_ELECTROSTATIC_BALL_INFO; ///@brief ???????EVENT_IVS_OXYGEN_CYLINDER_DETECTION (???????????)????????????????? typedef struct tagDEV_EVENT_OXYGEN_CYLINDER_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? char szReserved1[4]; /// ??????,???????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nAction; /// 1:??? 2:?? DH_MSG_OBJECT stuObject; /// ????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_OXYGEN_CYLINDER_DETECTION_INFO; ///@brief ???????????? typedef struct tagNET_GENERAL_ATTITUDE_DETECTION_OBJECT { int nObjectID; /// ???ID char szObjectType[16]; /// ???????? char szAttitudeType[16]; /// ???????? DH_RECT BoundingBox; /// ?????? char szSerialUUID[22]; /// ???????????????????? char szReserved[1022]; /// ??????? } NET_GENERAL_ATTITUDE_DETECTION_OBJECT; ///@brief ??????? typedef struct tagNET_SCENE_IMAGE_INFO { UINT nOffSet; /// ??????????????????? UINT nLength; /// ??????,??????? char byReserved[128]; /// ?????? } NET_SCENE_IMAGE_INFO; ///@brief ???????EVENT_IVS_GENERAL_ATTITUDE_DETECTION (?????????)????????????????? typedef struct tagDEV_EVENT_GENERAL_ATTITUDE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID NET_GENERAL_ATTITUDE_DETECTION_OBJECT stuObject; /// ????????? NET_SCENE_IMAGE_INFO stuSceneImage; /// ??????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_GENERAL_ATTITUDE_DETECTION_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_CHANGE_LANE_CONTINUES (????????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_CHANGE_LANE_CONTINUES_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /*????????????*/ int nGroupID; /// nGroupID?????ID,??????????????nGroupID??? int nCountInGroup; /// nCountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? UINT nEventType; /// ???????????, bit0??????????, bit1??????????. ??bit0??bit1????????????????????????????, ????????????????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? EM_TRIGGER_TYPE emTriggerType; /// TriggerType:????????,0??????,1???,2??? int nMark; /// ?????????????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ???????,??????? } DEV_EVENT_TRAFFIC_CHANGE_LANE_CONTINUES_INFO; ///@brief ???????EVENT_IVS_SPRAY_DETECT (????????????)????????????????? typedef struct tagDEV_EVENT_SPRAY_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szClass[16]; /// ??????????????? UINT nRuleId; /// ????????????? int UTCMS; /// UTC???????????? int nGroupID; /// nGroupID?????ID,??????????????nGroupID??? int nCountInGroup; /// nCountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? UINT nEventType; /// ??????????, 0: ??????????????????, 1: ??????????????????, 2: ?????????????????? UINT nFluidType; /// ???????????, 0:???? 1:????? UINT nPresetID; /// ?????????????? char szReserved[1020]; /// ???????,??????? } DEV_EVENT_SPRAY_DETECT_INFO; ///@brief ???????EVENT_IVS_SNAP_TASK (???????????????)????????????????? typedef struct tagDEV_EVENT_SNAP_TASK_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szCameraID[64]; /// ???ID UINT nTaskID; /// ????ID char szReserved[1020]; /// ???????,??????? } DEV_EVENT_SNAP_TASK_INFO; ///@brief ??????? EVENT_IVS_SILICON_FIRE_DETECTION (????????)????????????????? typedef struct tagDEV_EVENT_SILICON_FIRE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nObjectCount; /// ?????????????? DH_MSG_OBJECT_EX2 stuObject[128]; /// ?????????????? UINT nSequence; /// ???? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? int nDetectRegionCount; /// ????????? DH_POINT stuDetectRegion[20]; /// ????? char szReserved[1024]; /// ?????? }DEV_EVENT_SILICON_FIRE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_LADLE_NO_DETECTION (????????????)????????????????? typedef struct tagDEV_EVENT_LADLE_NO_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? int nObjectCount; /// ?????????????? UINT nPresetID; /// ?????????????????1??? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DH_MSG_OBJECT_EX2 stuObjects[128]; /// ?????????????? NET_POINT stuDetectRegion[20]; /// ??????????????? int nDetectRegionCount; /// ????????? char szReserved[1020]; /// ?????? }DEV_EVENT_LADLE_NO_DETECTION_INFO; ///@brief ??????? EVENT_IVS_FISHING_DETECTION (?????????)????????????????? typedef struct tagDEV_EVENT_FISHING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID ??????uint32 char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? int nObjectCount; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[100]; /// ?????????????? int nDetectRegionCount; /// ????????? NET_POINT stuDetectRegion[20]; /// ??????????????? UINT nPresetID; /// ?????????????????1??? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szReserved[1020]; /// ?????? }DEV_EVENT_FISHING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_BARELAND_DETECTION (??????????)????????????????? typedef struct tagDEV_EVENT_BARELAND_DETECTION_INFO { char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTC; /// ???????????????????UTC??????????? double dbPTS; /// ???????????????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ??????????????????????? UINT nRatio; /// ?????????????0~100 SCENE_IMAGE_INFO stuSceneImage; /// ??????? int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szReserved[980]; /// ?????? }DEV_EVENT_BARELAND_DETECTION_INFO; ///@brief ???????EVENT_IVS_PERSONNEL_COEXISTENCE (??????????)????????????????? typedef struct tagDEV_EVENT_PERSONNEL_COEXISTENCE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szClass[16]; /// ??????????????? UINT nUTCMS; /// ??????????? int nObjectCount; /// ?????????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? int nRuleID; /// ????????????? char szReserved[1020]; /// ???????,??????? } DEV_EVENT_PERSONNEL_COEXISTENCE_INFO; ///@brief ??????? typedef enum tagNET_EM_ATTITUDE_TYPE { NET_EM_ATTITUDE_TYPE_UNKNOWN, /// ??? NET_EM_ATTITUDE_TYPE_ONE_HAND, /// ?????? NET_EM_ATTITUDE_TYPE_AKIMBO, /// ???? NET_EM_ATTITUDE_TYPE_HAND_SON_HEAD, /// ????? NET_EM_ATTITUDE_TYPE_HAND_SON_CHEST, /// ?????? NET_EM_ATTITUDE_TYPE_HIT_WALL, /// ?? NET_EM_ATTITUDE_TYPE_BEND, /// ???? NET_EM_ATTITUDE_TYPE_SITTING, /// ???? NET_EM_ATTITUDE_TYPE_STANDING, /// ??? NET_EM_ATTITUDE_TYPE_SIT_DOWN, /// ???? NET_EM_ATTITUDE_TYPE_STAND_UP, /// ???? NET_EM_ATTITUDE_TYPE_ON_TABLE, /// ????? NET_EM_ATTITUDE_TYPE_LOOK_BACK, /// ??? NET_EM_ATTITUDE_TYPE_DELIVERY, /// ???? NET_EM_ATTITUDE_TYPE_GAZE_AROUND, /// ???????? NET_EM_ATTITUDE_TYPE_HAND_DOWN_PEEP, /// ?????????? NET_EM_ATTITUDE_TYPE_PICK_UP, /// ???? NET_EM_ATTITUDE_TYPE_HAND_UP, /// ???? NET_EM_ATTITUDE_TYPE_WRITE, /// ???? NET_EM_ATTITUDE_TYPE_WAVE_HAND, /// ???? NET_EM_ATTITUDE_TYPE_HAND_POSE_OK, /// OK???? NET_EM_ATTITUDE_TYPE_VICTORY, /// ??????? NET_EM_ATTITUDE_TYPE_GOOD, /// ???????? NET_EM_ATTITUDE_TYPE_HELP, /// ????????(???) NET_EM_ATTITUDE_TYPE_TOUCH_CULTURAL_RELIC, /// ???????? NET_EM_ATTITUDE_TYPE_GENERAL_ACTION, /// ??????????????? NET_EM_ATTITUDE_TYPE_INSPECT_ARMS, /// ??? } NET_EM_ATTITUDE_TYPE; ///@brief ???????EVENT_IVS_GENEAL_ATTITUDE (????????????)????????????????? typedef struct tagDEV_EVENT_GENEAL_ATTITUDE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szClass[16]; /// ??????????????? int nUTCMS; /// ??????????? int nObjectCount; /// ?????????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_EM_ATTITUDE_TYPE emAttitudeType; /// ??????? int nRuleID; /// ????????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BOOL bRealUTC; /// RealUTC ????????? NET_TIME_EX stuRealUTC; /// ????????????(???UTC???(???????????????)) char szAlgorithmName[64]; /// ???????????????????? char szAlarmID[32]; /// ????????id char szActionName[64]; /// ?????????????????????????????????????? UINT nPersonAction; /// ????????? 0:??? 1???????? 2??????? char szReserved[812-POINTERSIZE]; /// ???????,??????? } DEV_EVENT_GENEAL_ATTITUDE_INFO; ///@brief ???????EVENT_IVS_CASH_BOX_STATE (?????????)????????????????? typedef struct tagDEV_EVENT_CASH_BOX_STATE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID char szClass[16]; /// ??????????????? int nRuleID; /// ????????????? int nUTCMS; /// ??????????? int nState; /// ????????: 1-??, 2-?? int nObjectCount; /// ?????????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_CASH_BOX_STATE_INFO; ///@brief ??????? EVENT_IVS_LEAKAGE_DETECTION (?????????)????????????????? typedef struct tagDEV_EVENT_LEAKAGE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nObjectCount; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[128]; /// ?????????????? float fRatio; /// ??????????????:%????????[0, 100] SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1024]; /// ?????? }DEV_EVENT_LEAKAGE_DETECTION_INFO; ///@brief ???????? typedef enum tagEM_ALARM_ACCESSORY_STATUS { EM_ALARM_ACCESSORY_STATUS_UNKNOWN, /// ??? EM_ALARM_ACCESSORY_STATUS_DEVSELFCHECK, /// ?????? EM_ALARM_ACCESSORY_STATUS_EXTINPUTALARM, /// ???????? }EM_ALARM_ACCESSORY_STATUS; ///@brief ??????? EVENT_IVS_ALARM_ACCESSORY (??????????)????????????????? typedef struct tagDEV_EVENT_ALARM_ACCESSORY_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? NET_SENSE_METHOD emSenseMethod; /// SenseMethod, ??????,?????????????? EM_ALARM_ACCESSORY_STATUS emStatus; /// ???????? char szSN[32]; /// ????????? char szReserved[1024]; /// ?????? }DEV_EVENT_ALARM_ACCESSORY_INFO; ///@brief ??????????? typedef enum tagEM_WIRELESS_DEV_LOWPOWER_TYPE { EM_WIRELESS_DEV_LOWPOWER_TYPE_UNKNOWN, /// ??? EM_WIRELESS_DEV_LOWPOWER_TYPE_REMOTE_CONTROL, /// ????????? EM_WIRELESS_DEV_LOWPOWER_TYPE_DEFENCE, /// ??????? EM_WIRELESS_DEV_LOWPOWER_TYPE_KEYBOARD, /// ???? EM_WIRELESS_DEV_LOWPOWER_TYPE_SMARTLOCK, /// ?????? EM_WIRELESS_DEV_LOWPOWER_TYPE_ALARMBELL, /// ?????????????? EM_WIRELESS_DEV_LOWPOWER_TYPE_EXTERNAL_SENSOR, /// ?????????????????????????? }EM_WIRELESS_DEV_LOWPOWER_TYPE; ///@brief ???? typedef enum tagEM_WIRELESS_DEV_LOWPOWER_STATUS { EM_WIRELESS_DEV_LOWPOWER_STATUS_UNKNOWN, /// ??? EM_WIRELESS_DEV_LOWPOWER_STATUS_BAT_ABNORMAL, /// ????????????????? }EM_WIRELESS_DEV_LOWPOWER_STATUS; ///@brief ??????? EVENT_IVS_WIRELESS_DEV_LOWPOWER (???????????????)????????????????? typedef struct tagDEV_EVENT_WIRELESS_DEV_LOWPOWER_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? BOOL bLowPower; /// ????????? true:?????, false:???????? EM_WIRELESS_DEV_LOWPOWER_TYPE emType; /// ??????????? NET_SENSE_METHOD emSenseMethod; /// SenseMethod, ??????,?????????????? float fPercent; /// ???????? char szSN[32]; /// ????????????? EM_WIRELESS_DEV_LOWPOWER_STATUS emStatus; /// ???? char szReserved[1024]; /// ?????? }DEV_EVENT_WIRELESS_DEV_LOWPOWER_INFO; ///@brief ??????? EVENT_IVS_SENSOR_ABNORMAL (???????????)????????????????? typedef struct tagDEV_EVENT_SENSOR_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? char szSN[32]; /// ????????????? EM_SENSOR_ABNORMAL_STATUS emStatus; /// ???? NET_SENSE_METHOD emSenseMethod; /// SenseMethod, ??????,?????????????? char szReserved[1024]; /// ?????? }DEV_EVENT_SENSOR_ABNORMAL_INFO; ///@brief ???????? typedef enum tagEM_MODULE_LOST_TYPE { EM_MODULE_LOST_TYPE_UNKNOWN, /// ??? EM_MODULE_LOST_TYPE_M_BUS, /// M-BUS EM_MODULE_LOST_TYPE_RS_485, /// RS-485 EM_MODULE_LOST_TYPE_CAN, /// CAN EM_MODULE_LOST_TYPE_NET, /// NET }EM_MODULE_LOST_TYPE; ///@brief ??????? typedef enum tagEM_MODULE_LOST_DEV_TYPE { EM_MODULE_LOST_DEV_TYPE_UNKNOWN, /// ??? EM_MODULE_LOST_DEV_TYPE_SMARTLOCK, /// ?????? EM_MODULE_LOST_DEV_TYPE_DEFENCE, /// ?????????? EM_MODULE_LOST_DEV_TYPE_KEYBOARD, /// ???? EM_MODULE_LOST_DEV_TYPE_REMOTE_CONTROL, /// ?????? EM_MODULE_LOST_DEV_TYPE_MAGNETOMER, /// ?????? EM_MODULE_LOST_DEV_TYPE_ALARMBELL, /// ????????? EM_MODULE_LOST_DEV_TYPE_ACCESS_SUBCONTROLLER, /// ????? EM_MODULE_LOST_DEV_TYPE_GPS, /// gps??? EM_MODULE_LOST_DEV_TYPE_WIFI, /// wifi??? EM_MODULE_LOST_DEV_TYPE_MOBILE_DEVICE, /// 3G/4G??? EM_MODULE_LOST_DEV_TYPE_LIFT_CONTROLLER, /// ?????? EM_MODULE_LOST_DEV_TYPE_PRINTER, /// ????? }EM_MODULE_LOST_DEV_TYPE; ///@brief ??????? EVENT_IVS_MODULE_LOST (????????????)????????????????? typedef struct tagDEV_EVENT_MODULE_LOST_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nACK; /// ???ID EM_MODULE_LOST_TYPE emType; /// ???????? EM_MODULE_LOST_DEV_TYPE emDevType; /// ??????? NET_SENSE_METHOD emSenseMethod; /// SenseMethod, ??????,?????????????? int arrAddr[32]; /// ??? int nAddrNum; /// ??????? BOOL bOnline; /// ???????, true ????;false ?????? char szSN[32]; /// ????????????? char szReserved[1024]; /// ?????? }DEV_EVENT_MODULE_LOST_INFO; ///@brief ?????? typedef enum tagEM_CROWD_LEVEL_DETECTION_TRIGGERMODE { EM_CROWD_LEVEL_DETECTION_TRIGGERMODE_UNKNOWN, /// ??? EM_CROWD_LEVEL_DETECTION_TRIGGERMODE_ADAPTIVE, /// ??????? EM_CROWD_LEVEL_DETECTION_TRIGGERMODE_CUSTOM, /// ??????? }EM_CROWD_LEVEL_DETECTION_TRIGGERMODE; ///@brief ??????? EVENT_IVS_CROWD_LEVEL_DETECTION (???????????)????????????????? typedef struct tagDEV_EVENT_CROWD_LEVEL_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID NET_POINT stuDetectRegion[20]; /// ???????? int nDetectRegionNum; /// ??????????? UINT nPresetID; /// ?????????????????1??? EM_CROWD_LEVEL_DETECTION_TRIGGERMODE emTriggerMode; /// ?????? UINT nCrowdDetectNum; /// ???????????????? UINT nCrowdRankResult; /// ????????????? char szReserved1[4]; /// ?????? char szCrowdGroupName[128]; /// ????????????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szReserved[1020-POINTERSIZE]; /// ?????? }DEV_EVENT_CROWD_LEVEL_DETECTION_INFO; ///@brief ??????? EVENT_IVS_REGION_DEFENSE_DETECTION (????????)????????????????? typedef struct tagDEV_EVENT_REGION_DEFENSE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? char szReserved1[4]; /// ?????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID char szReserved[1024]; /// ?????? }DEV_EVENT_REGION_DEFENSE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_DUSTBIN_DETECTION (???????????)????????????????? typedef struct tagDEV_EVENT_DUSTBIN_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nObjectNum; /// ???????????????? DH_MSG_OBJECT_EX2 stuObjects[64]; /// ??????????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? int nPresetID; /// ?????????????????1??????????????????????? char szPresetName[64]; /// ????????????????? UINT nViolationDuration; /// ????????????????????? char szSourceID[32]; /// ???????ID ?????????+???+???????????????2???????14??????????5?? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1024 - POINTERSIZE]; /// ?????? }DEV_EVENT_DUSTBIN_DETECTION_INFO; ///@brief ?????????? typedef enum tagEM_ROAD_LEVEL { EM_ROAD_UNKNOWN_LEVEL = -1, /// ??? EM_ROAD_ZERO_LEVEL, /// 0: ???????? EM_ROAD_ONE_LEVEL, /// 1: ???????? EM_ROAD_TWO_LEVEL, /// 2: ???????? EM_ROAD_THREE_LEVEL, /// 3: ???? EM_ROAD_FOUR_LEVEL, /// 4: ?????? EM_ROAD_FIVE_LEVEL, /// 5: ????????? EM_ROAD_SIX_LEVEL, /// 6: ????????? }EM_ROAD_LEVEL; ///@brief ??????? EVENT_IVS_ROAD_CONDITIONS_DETECTION (?????????)????????????????? typedef struct tagDEV_EVENT_ROAD_CONDITIONS_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? EM_ROAD_LEVEL emRoadLevel; /// ?????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szVideoPath[256]; /// ??????????FTP??????? float fDamageArea; /// ?????????????????????? float fDamageLength; /// ??????????????????? int nPileID; /// ???ID int nPileDistance; /// ???????????????????????? char szPileName[128]; /// ??????? char szLineName[128]; /// ???????? char szRoadAttribute[128]; /// ????????(???"?????"??"????") char szReserved[368]; /// ?????? }DEV_EVENT_ROAD_CONDITIONS_DETECTION_INFO; ///@brief ?????? typedef enum tagEM_EVENT_DETECT_OBJECT { EM_EVENT_DETECT_OBJECT_UNKNOWN, /// ??? EM_EVENT_DETECT_OBJECT_PERSON, /// "Person":?? EM_EVENT_DETECT_OBJECT_ANIMAL, /// "Animal":???? }EM_EVENT_DETECT_OBJECT; ///@brief ???????????? typedef enum tagEM_NEAR_DETECT_OBJECT_TYPE { EM_NEAR_DETECT_OBJECT_TYPE_UNKNOWN, /// ??? EM_NEAR_DETECT_OBJECT_TYPE_MOVINGFORKLIFT, /// "MovingForklift":?????? EM_NEAR_DETECT_OBJECT_TYPE_SILICONPACKAGE, /// "SiliconPackage":??? EM_NEAR_DETECT_OBJECT_TYPE_MOVINGSILICONPACKAGE, /// "MovingSiliconPackage":??????? EM_NEAR_DETECT_OBJECT_TYPE_POURINGSILICONPACKAGE, /// "PouringSiliconPackage":????????? }EM_NEAR_DETECT_OBJECT_TYPE; ///@brief ??????? EVENT_IVS_NEAR_OBJECT_DETECT (???????????)????????????????? typedef struct tagDEV_EVENT_NEAR_OBJECT_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ??????????????????????????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? EM_EVENT_DETECT_OBJECT emDetectObject; /// ?????? EM_NEAR_DETECT_OBJECT_TYPE emNearObjectType; /// ???????????? UINT nSequence; /// ???? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DH_MSG_OBJECT_EX2* pstObjectInfo; ///??????????? UINT nObjectNum; ///????????? char szReserved[1020 - POINTERSIZE]; /// ?????? }DEV_EVENT_NEAR_OBJECT_DETECT_INFO; ///@brief ??????? EVENT_IVS_OBJECT_NUM_DETECTION (????????????)?????????????????( ????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)?????) typedef struct tagDEV_EVENT_OBJECT_NUM_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID UINT nAreaID; /// ????ID, ?????????????0????????? UINT nPresetID; /// ?????????????????1??? int nNumber; /// ????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???????(??nIndexInData, nOffSet, nLength???????) char szReserved[1024]; /// ?????? }DEV_EVENT_OBJECT_NUM_DETECTION_INFO; ///@brief ??????? typedef struct tagNET_STAT_ATTRMAP { int nAttrTypeID; /// ???????? int nValueID; /// ????????? char szAttrType[32]; /// ???????? char szValue[32]; /// ????? char szReserved[128]; /// ?????? }NET_STAT_ATTRMAP; ///@brief ?????????? typedef struct tagNET_STAT_ATTRIBUTE { int nNumber; /// ?????????????? int nAttrMapNumber; /// ?????????? NET_STAT_ATTRMAP stuAttrMap[20]; /// ??????? char szReserved[128]; /// ?????? }NET_STAT_ATTRIBUTE; ///@brief ?????????? typedef struct tagNET_STAT_DETAIL { char szType[32]; /// ??????????? int nTypeID; /// ??????????? int nNumber; /// ??????????? NET_STAT_ATTRIBUTE stuAttribute[1024]; /// ?????????? int nAttributeNumber; /// ?????????????? char szReserved[124]; /// ?????? }NET_STAT_DETAIL; ///@brief ???????????? typedef enum tagEM_STAT_DIRECTION { EM_STAT_DIRECTION_UNKNOWN, /// ??? EM_STAT_DIRECTION_LEFTTORIGHT, /// ???? EM_STAT_DIRECTION_RIGHTTOLEFT, /// ????? EM_STAT_DIRECTION_BOTH, /// ??? }EM_STAT_DIRECTION; ///@brief ??????? EVENT_IVS_CROSSLINE_STAT (??????????)?????????????????( ???????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)?????) typedef struct tagNET_DEV_EVENT_CROSSLINE_STAT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) UINT nUTCMS; /// ??????????? UINT nRuleID; /// ????????????? UINT nAreaID; /// ????ID EM_STAT_DIRECTION emDirection; /// ??????? int nNumber; /// ?????????? int nStatDetailNum; /// ?????????????? NET_STAT_DETAIL stuStatDetail[16]; /// ?????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_CROSSLINE_STAT_INFO; ///@brief ??????? EVENT_IVS_REGIONNUM_STAT (??????????)?????????????????( ???????????????????????????????????????(EVENT_IVS_OPEN_INTELLI)?????) typedef struct tagNET_DEV_EVENT_REGIONNUM_STAT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) UINT nUTCMS; /// ??????????? UINT nRuleID; /// ????????????? UINT nAreaID; /// ????ID EM_STAT_DIRECTION emDirection; /// ??????? int nNumber; /// ?????????? int nStatDetailNum; /// ?????????????? NET_STAT_DETAIL stuStatDetail[16]; /// ?????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_REGIONNUM_STAT_INFO; ///@brief ??????????? typedef struct tagNET_OPEN_INTELLI_OBJECT_ATTRIBUTE_INFO { char szAttrTypeName[128]; /// ???????????? char szAttrValueName[128]; /// ????????? }NET_OPEN_INTELLI_OBJECT_ATTRIBUTE_INFO; ///@brief ??????????????????? typedef struct tagNET_OPEN_INTELLI_OBJECT_INFO { int nObjectId; /// ???id NET_RECT stuBoundingBox; /// ?????? ????????,8192????? char szObjectTypeName[128]; /// ??????????? int nObjectAttributeNums; /// ??????????????????????? NET_OPEN_INTELLI_OBJECT_ATTRIBUTE_INFO stuObjectAttributes[128]; /// ??????????? }NET_OPEN_INTELLI_OBJECT_INFO; ///@brief ??????? typedef struct tagNET_OPEN_INTELLI_USER_DATA_INFO { int nAlarmId; /// ????????id char szReserved[512]; /// ??????? }NET_OPEN_INTELLI_USER_DATA_INFO; ///@brief ??????? EVENT_IVS_OPEN_INTELLI (???????????)????????????????? typedef struct tagDEV_EVENT_OPEN_INTELLI_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szOpenCode[32]; /// ????????????Id char szOpenName[128]; /// ???????????????? char szRuleType[32]; /// ???????????????????, ?????: ????????CrossLineDetection(EVENT_IVS_CROSSLINEDETECTION)??????????CrossRegionDetection(EVENT_IVS_CROSSREGIONDETECTION)?????????StayDetection(EVENT_IVS_STAYDETECTION)?????????ObjectNumDetection(EVENT_IVS_OBJECT_NUM_DETECTION)?????????????? GenealAttitude(EVENT_IVS_GENEAL_ATTITUDE)???????????AudioMutation(EVENT_IVS_AUDIO_MUTATION) void* pstuOpenData; /// ?????????????????????????????????????(?????Event Data???????) /// ????????CrossLineDetection(EVENT_IVS_CROSSLINEDETECTION) - DEV_EVENT_CROSSLINE_INFO /// ????????CrossRegionDetection(EVENT_IVS_CROSSREGIONDETECTION) - DEV_EVENT_CROSSREGION_INFO /// ???????StayDetection(EVENT_IVS_STAYDETECTION) - DEV_EVENT_STAY_INFO /// ???????ObjectNumDetection(EVENT_IVS_OBJECT_NUM_DETECTION) - DEV_EVENT_OBJECT_NUM_DETECTION_INFO /// ?????????? CrossLineStat(EVENT_IVS_CROSSLINE_STAT) - NET_DEV_EVENT_CROSSLINE_STAT_INFO /// ?????????? RegionNumStat(EVENT_IVS_REGIONNUM_STAT) - NET_DEV_EVENT_REGIONNUM_STAT_INFO /// ?????????????? AnythingDetect(EVENT_IVS_ANYTHING_DETECT) - DEV_EVENT_ANYTHING_DETECT_INFO /// ???????????? GenealAttitude(EVENT_IVS_GENEAL_ATTITUDE) - DEV_EVENT_GENEAL_ATTITUDE_INFO /// ????????? AudioMutation(EVENT_IVS_AUDIO_MUTATION) - NET_DEV_EVENT_AUDIO_MUTATION_INFO int nObjectNums; /// ???????????????????????? NET_OPEN_INTELLI_OBJECT_INFO stuObjects[100]; /// ??????????????????? NET_OPEN_INTELLI_USER_DATA_INFO stuUserData; /// ??????? char szReserved[1024]; /// ??????? }DEV_EVENT_OPEN_INTELLI_INFO; ///@brief ??????????? typedef enum tagEM_DETECTED_OBJECT_TYPE { EM_DETECTED_OBJECT_TYPE_UNKNOWN, /// ??? EM_DETECTED_OBJECT_TYPE_HANGING_PACKAGE, /// ????(??????????????) }EM_DETECTED_OBJECT_TYPE; ///@brief ??????? EVENT_IVS_CRANE_LOAD_STAY_DETECTION (?????????????)????????????????? typedef struct tagDEV_EVENT_CRANE_LOAD_STAY_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char byReserved1[4]; /// ???????????? DH_MSG_OBJECT_EX2 stuObject; /// Object??????????????? char byReserved2[4]; /// ???????????? int nObjectsNum; /// ????????????????, ?????32 DH_MSG_OBJECT_EX2 stuObjects[32]; /// Objects?????????????????????????????????????????????? ????32????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? EM_DETECTED_OBJECT_TYPE emDetectObject; /// ??????????? char szType[16]; /// ???????????? SCENE_IMAGE_INFO stuSceneImage; /// ???????????IndexInData?????Length??????? char szReserved[1024]; /// ?????? }DEV_EVENT_CRANE_LOAD_STAY_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_DRIVER_NO_BELT (???????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_DRIVER_NO_BELT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? char szDriverID[32]; /// ???ID NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szVideoPath[256]; /// ??????????FTP??????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? char szReserved[768]; /// ?????? }DEV_EVENT_TRAFFIC_DRIVER_NO_BELT_INFO; ///@brief ??????? EVENT_IVS_RIDING_MOTOR_CYCLE (?????????????)????????????????? typedef struct tagDEV_EVENT_RIDING_MOTOR_CYCLE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nObjectNum; /// ???????????????? DH_MSG_OBJECT_EX2 stuObjects[64]; /// ??????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???????????IndexInData??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1020 - POINTERSIZE]; /// ?????? }DEV_EVENT_RIDING_MOTOR_CYCLE_INFO; ///@brief ??????????? typedef enum tagEM_ARTICLE_TYPE { EM_ARTICLE_TYPE_UNKNOWN, /// ??? EM_ARTICLE_TYPE_ANCHORROD, /// ???? }EM_ARTICLE_TYPE; ///@brief ??????? EVENT_IVS_CONVEYOR_ARTICLE_TYPE (??????????????)????????????????? typedef struct tagDEV_EVENT_CONVEYOR_ARTICLE_TYPE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? EM_ARTICLE_TYPE emArticleType; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DH_MSG_OBJECT_EX2* pstObjectInfo; ///??????????? UINT nObjectNum; ///????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC ???????? UTC ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? UINT nArticleEventCount; /// ????????????? char szReserved[976 - POINTERSIZE]; /// ?????? }DEV_EVENT_CONVEYOR_ARTICLE_TYPE_INFO; ///@brief ??????? EVENT_IVS_BLIND_ALARM (??????????)????????????????? typedef struct tagDEV_EVENT_BLIND_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? char szVideoPath[256]; /// ??????????FTP??????? char szReserved[1024]; /// ??????? }DEV_EVENT_BLIND_ALARM_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_SPEED_DROP_SHARPLY (??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_SPEED_DROP_SHARPLY_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? UINT nUTCMS; /// ??????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID double dbPTS; /// ??????????,(?????????) int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? int nLane; /// ?????? int nSequence; /// ?????? EVENT_COMM_INFO stCommInfo; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? char szReserved[1024]; /// ??????? }DEV_EVENT_TRAFFIC_SPEED_DROP_SHARPLY_INFO; ///@brief ??????? EVENT_IVS_GESTURE_DETECTION (?????????)????????????????? typedef struct tagDEV_EVENT_GESTURE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID NET_GESTURE_INFO stuGestureInfo; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? char szReserved[1024]; /// ?????? }DEV_EVENT_GESTURE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_HEAD_LIFT_DETECTION (????????)????????????????? typedef struct tagDEV_EVENT_HEAD_LIFT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nPresetID; /// ?????????????????1??????????????????????? UINT nFaceCount; /// ?????? UINT nHumanCount; /// ??????????? char szReserved[1024]; /// ??????? }DEV_EVENT_HEAD_LIFT_DETECTION_INFO; ///@brief ??????? EVENT_IVS_DRAINING_DETECTION (????????????)????????????????? typedef struct tagDEV_EVENT_DRAINING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? int nObjectNum; /// ???????????????? DH_MSG_OBJECT_EX2 stuObjects[100]; /// ?????????????? int nPresetID; /// ?????????????????1??? char szReserved[1024]; /// ?????? }DEV_EVENT_DRAINING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_CROSSING_SPEEDY (??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_CROSSING_SPEEDY_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_CROSSING_SPEEDY_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_LARGECAR_NO_STOP (?????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_LARGECAR_NO_STOP_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS?? char szReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_LARGECAR_NO_STOP_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_OVERTAKE_ONRIGHT (????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OVERTAKE_ONRIGHT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? char szReserved1[4]; /// ?????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_OVERTAKE_ONRIGHT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_TRUCK_OCCUPIED (????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_TRUCK_OCCUPIED_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? char szReserved1[4]; /// ?????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_TRUCK_OCCUPIED_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_SMALL_DISPLACEMENT (???????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_SMALL_DISPLACEMENT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_SMALL_DISPLACEMENT_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_OCCUPYING_THEPATH (??????)????????????????? typedef struct tagNET_EVENT_TRAFFIC_OCCUPYING_THEPATH_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSpeed; /// ?????????km/h char szReserved[1020]; /// ?????? }NET_EVENT_TRAFFIC_OCCUPYING_THEPATH_INFO; ///@brief ??????? EVENT_IVS_SILICON_FIREPUTTER_DETECTION (???????????)????????????????? typedef struct tagNET_EVENT_SILICON_FIREPUTTER_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????? UINT nSequence; /// ?????????,??3,2,1,1?????????,0????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON SCENE_IMAGE_INFO_EX stuSceneImage; /// ????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? int nObjectNum; /// ??????? int nDetectRegionNum; /// ??????????? DH_POINT stuDetectRegion[20]; /// ?????????? char szReserved[1024]; /// ?????? }NET_EVENT_SILICON_FIREPUTTER_DETECTION_INFO; ///@brief ??????? EVENT_IVS_GREEN_BELT (????????????)????????????????? typedef struct tagDEV_EVENT_GREEN_BELT_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRatio; /// ?????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1016 - POINTERSIZE]; /// ??????? }DEV_EVENT_GREEN_BELT_ALARM_INFO; ///@brief ??????? EVENT_IVS_ROAD_DAMAGE (????????????)????????????????? typedef struct tagDEV_EVENT_ROAD_DAMAGE_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1020 - POINTERSIZE]; /// ??????? }DEV_EVENT_ROAD_DAMAGE_ALARM_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_SERPENTINE_CHANGE_LANE (??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_SERPENTINE_CHANGE_LANE_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:???? char szName[128]; /// ??????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nEventType; /// ???????????bit0????????????bit1??????????????bit0??bit1?????????????????????????????????bit0????????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLane; /// ????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? NET_GPS_INFO stuGPSInfo; /// GPS??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON char szReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_SERPENTINE_CHANGE_LANE_INFO; ///@brief ??????? EVENT_IVS_PERSON_TRANS_DETECTION (????????????)????????????????? typedef struct tagDEV_EVENT_IVS_PERSON_TRANS_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nViolationNum; /// ?????????????? char szViolation[10][32]; /// ?????????????????????????? ???????????????????"Ladder": ????,"Sack":????,"Bag":??,"Spade":???? ,"Box":?????? char szReserved[1024]; /// ??????? }DEV_EVENT_IVS_PERSON_TRANS_DETECTION_INFO; ///@brief ????????????? typedef enum tagEM_EVENT_TYPE { EM_EVENT_TYPE_UNKNOWN, /// ??? EM_EVENT_TYPE_REAL, /// ?????? EM_EVENT_TYPE_ALARM, /// ???????? }EM_EVENT_TYPE; ///@brief ???????????? typedef enum tagEM_REPORT_TYPE { EM_REPORT_TYPE_UNKNOWN, /// ??? EM_REPORT_TYPE_TIMING, /// ?????? EM_REPORT_TYPE_ALARM, /// ??????? }EM_REPORT_TYPE; ///@brief ??????? EVENT_IVS_ALARM_METHANE_ALARM (????l?????)????????????????? typedef struct tagNET_DEV_EVENT_METHANE_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????, 0:???? 1:??? 2:?? NET_TIME_EX stuTime; /// ????????????,???????? UINT nConcentration; /// ??????????????????ppm.m UINT nConcentrationThreshold;/// ??????????????????????????ppm.m EM_REPORT_TYPE emReportType; /// ??????? UINT nPresetID; /// ???????????ID char szPresetName[64]; /// ??????????????? char szReserved1[4]; /// ?????? double dbConcentrationLEL; /// ??????????????????%LEL.m char szReserved[936]; /// ??????? }NET_DEV_EVENT_METHANE_ALARM_INFO; ///@brief ????? typedef struct tagNET_SCRAPSTEEL_DETECT_IMAGE_INFO { UINT nIndexInData; /// ???????????????????? int nWidth; /// ?????? int nHeight; /// ????? char szImageID[42]; /// ??ID, ????????41?? char szReserved[256]; /// ??????? }NET_SCRAPSTEEL_DETECT_IMAGE_INFO; ///@brief ?????,??????????????? typedef struct tagNET_SCRAPSTEEL_STATISTICS_INFO { int nType; /// ???????: 0-???, 1-?????????, 2-???????????, 3-????????????, 4-??????????? int nSubType; /// ???????????????????, ????????????: /**************************************** ??????? *******************************************/ /* *???????????????: 0- ???, 1-????1mm, 2-????2mm, 3-????3mm ... 20-????20mm, 21-??? *?????????????????: 0x0000-???, 0x1000-????, 0x2000-???????????????????????????????????????????????????????????????????????????????????????, 0x3000-??????????: ??????????]??????????????????, 0x4000-???????????: ??????????????????????????? *??????????????????: 0x0000-???,0x1000-A???????, 0x1001-A??????????????????, 0x1002-A????????????????????, 0x2000-B???????, 0x2001-B?????????????, 0x3000-C???????, 0x3001-C???????????????, 0x3002-C???????????????? *?????????????????: 0-???, 1-????, 2-??W, 3-??, 4-??????, 5-????????, 6-?????, 7-????????, 8-????, 9-????, 10-?????, 11-??????, 12-?????, 13-?????(??????)????10mm, 14-??????, 15-????, 16-??????, 17-???????????, 18-????????, 19-?????????, 20-?????, 21-??????, 22-???, 23-???, 24-??????4mm*, 25-???????? 26-?????? 27-??????, 28-?????, 29-?????, 30-??????, 31-????????, 32-????, 33-??????, 34-08A1???, 35-??????, 36-???????, 37-??????, 38-?????????, 39-???, 40-??? 41-????, 42-???????, 43-????????, 44-???????, 45-?????????, 46-?????????, 47-??????, 48-?????, 49-08A1??????*, 50-?????????, 51-?????????, 52-??????????(???????1mm), 53-????, 54-?????, 55-????, 56-???, 57-????, 58-??? */ /**************************************** ??????? *******************************************/ int nNum; /// ??????????/??????? float fNumRatio; /// ???????????????,???????0.75???75% float fAreaRatio; /// ??????????????,???????0.75???75% int nArea; /// ???????????(????) char szReserved[256]; /// ??????? }NET_SCRAPSTEEL_STATISTICS_INFO; ///@brief ???????????? typedef struct tagNET_SCRAPSTEEL_LAYER_DETECT_INFO { int nScrapsteelState; /// ??????: 0-???, 1-??, 2-???? float fConsistConfidence; /// ?????????? float fSimilarity; /// ??????????????????????? int nScrapsteelType; /// ?????????, ??????NET_SCRAPSTEEL_STATISTICS_INFO????nSubType??? int nStatisticsInfoNum; /// ?????,???????????????????, ??????32 NET_SCRAPSTEEL_STATISTICS_INFO stuStatisticsInfo[32]; /// ?????,??????????????? char szReserved[256]; /// ??????? }NET_SCRAPSTEEL_LAYER_DETECT_INFO; ///@brief ???????????? typedef enum tagEM_CROSS_DETECT_REGION_TYPE { EM_CROSS_DETECT_REGION_TYPE_UNKNOWN, /// ??? EM_CROSS_DETECT_REGION_TYPE_NULL, /// ?? EM_CROSS_DETECT_REGION_TYPE_ENTER, /// ???? EM_CROSS_DETECT_REGION_TYPE_LEAVE, /// ?? EM_CROSS_DETECT_REGION_TYPE_BOTH, /// ??????? }EM_CROSS_DETECT_REGION_TYPE; ///@brief ??????? typedef struct tagNET_SCRAPSTEEL_DETECT_REGION_INFO { int nPointNum; /// ???????????????????, ????30 NET_POINT stuPoint[30]; /// ?????????????, ?????????????????????????[0,8192)???? EM_CROSS_DETECT_REGION_TYPE emCrosssType; /// ???????????? }NET_SCRAPSTEEL_DETECT_REGION_INFO; ///@brief ??????? EVENT_IVS_SCRAPSTEEL_DETECT (????????) ????????????????? typedef struct tagNET_DEV_EVENT_SCRAPSTEEL_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????ID, ??????????????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ????????????,?????????UTC????????? UINT nEventID; /// ???ID UINT nSequence; /// ???? NET_SCRAPSTEEL_DETECT_REGION_INFO stuDetectRegion; /// ??????? char szPlateNum[32]; /// ??????? char szPlateChannelCode[48]; /// ????????????????? NET_SCRAPSTEEL_DETECT_IMAGE_INFO stuOrgImage; /// ??????? NET_SCRAPSTEEL_DETECT_IMAGE_INFO stuRenderImage; /// ?????????(stuOrgImage)???????????, ?????????????????? NET_SCRAPSTEEL_LAYER_DETECT_INFO stuScrapsteelResult; /// ????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????????????? char szReserved[1024]; /// ?????? } NET_DEV_EVENT_SCRAPSTEEL_DETECT_INFO; ///@brief ??????? EVENT_IVS_SCRAPSTEEL_DANGER_DETECT (???????????) ????????????????? typedef struct tagNET_DEV_EVENT_SCRAPSTEEL_DANGER_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????ID, ??????????????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ????????????,?????????UTC????????? UINT nEventID; /// ???ID NET_SCRAPSTEEL_DETECT_REGION_INFO stuDetectRegion; /// ??????? NET_SCRAPSTEEL_DETECT_IMAGE_INFO stuOrgImage; /// ??????? NET_SCRAPSTEEL_DETECT_IMAGE_INFO stuRenderImage; /// ?????????(stuOrgImage)???????????, ?????????????????? DH_MSG_OBJECT_EX2 stuObjects[128]; /// ?????????????????????????? ???? UINT nObjectsCount; /// ?????????????????????????? ???? int nImageInfoNum; /// ????????????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? char szReserved[1024]; /// ?????? } NET_DEV_EVENT_SCRAPSTEEL_DANGER_DETECT_INFO; ///@brief ??????? EVENT_IVS_CHANGE_DETECTION (?????????) ????????????????? typedef struct tagNET_DEV_EVENT_CHANGE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nUTCMS; /// ??????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ?????????????????, ??1??? UINT nEventID; /// ???ID DH_MSG_OBJECT* pstObjects; /// ?????????????? int nObjectNum; /// ?????????????? char szReserved[1020]; /// ??????? } NET_DEV_EVENT_CHANGE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_HUMAN_ANIMAL_COEXISTENCE (???????????)????????????????? typedef struct tagDEV_EVENT_HUMAN_ANIMAL_COEXISTENCE_INFO { int nChannelID; /// ????? int nAction; /// ???????, 1:??? 2:?? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nUTCMS; /// ??????????? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????ID, ??????????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ?????????????????, ??1??? UINT nEventID; /// ???ID int nPresetID; /// ?????????????????1???, 0 ??????? EM_HUMAN_ANIMAL_ALARM_TYPE emAlarmType; /// ??????????? EM_DETECTION_SCENE_TYPE emDetectionSceneType; /// ???????? char szReserved[1024]; /// ??????? }DEV_EVENT_HUMAN_ANIMAL_COEXISTENCE_INFO; ///@brief ??????? typedef enum tagEM_TANK_STATUS { EM_TANK_STATUS_UNKNOWN, /// ??? EM_TANK_STATUS_DISCHARGING, /// ???? EM_TANK_STATUS_CHARGING, /// ???? EM_TANK_STATUS_IDLE, /// ???? }EM_TANK_STATUS; ///@brief ??????? EVENT_IVS_TANK_CAPACITY_DETECTION (????????????)????????????????? typedef struct tagDEV_EVENT_IVS_TANK_CAPACITY_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nObjectID; /// ????ID UINT nRuleID; /// ????????????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nCurrentRatio; /// ??????????????? EM_TANK_STATUS emTankStatus; /// ??????? char szReserved[1020]; /// ??????? }DEV_EVENT_IVS_TANK_CAPACITY_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TANK_DUMPING_DETECTION (?????????????????)????????????????? typedef struct tagDEV_EVENT_IVS_TANK_DUMPING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nObjectID; /// ????ID UINT nRuleID; /// ????????????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nCurrentRatio; /// ??????????????? char szReserved[1024]; /// ??????? }DEV_EVENT_IVS_TANK_DUMPING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TANK_OVERFLOW_DETECTION (???????????????)????????????????? typedef struct tagDEV_EVENT_IVS_TANK_OVERFLOW_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nObjectID; /// ????ID UINT nRuleID; /// ????????????? NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nCurrentRatio; /// ??????????????? char szReserved[1024]; /// ??????? }DEV_EVENT_IVS_TANK_OVERFLOW_DETECTION_INFO; ///@brief ??????? EVENT_IVS_DRIVE_HANDSOFF_STEERING_WHEEL (?????????????????????????)????????????????? typedef struct tagDEV_EVENT_DRIVE_HANDSOFF_STEERING_WHEEL_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID UINT nHandsOffState; /// ???????????????1??????????????2???????????,3??????????????? UINT nAlarmFlag; /// ??????????? 0???????? 1?????? UINT nReportFlag; /// ?????????? 0???????? 1?????? UINT nPhoneAlarmFlag; /// ???????????????? 0???????? 1?????? UINT nPhoneReportFlag; /// ??????????????? 0????????(???????) 1??????(?????) UINT nNobeltFlag; /// ??????????????????? 0???????? 1?????? UINT nNobeltReportFlag; /// ?????????????????? 0????????(???????) 1??????(?????) UINT nPhoneLocalFlag; /// ??????????????????????????? 0????????1????????? SCENE_IMAGE_INFO_EX stuImage; /// ??? SCENE_IMAGE_INFO_EX stuImageOther[16]; /// ?????? int nImageOtherNum; /// ????????? int nRelatingVideoInfoNum; /// ????????????????????? NET_RELATING_VIDEO_INFO stuRelatingVideoInfo[16]; /// ???????????????????????????16????? char szVideoPath[256]; /// ??????????FTP??????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[760-POINTERSIZE]; /// ?????? }DEV_EVENT_DRIVE_HANDSOFF_STEERING_WHEEL_INFO; ///@brief ??????? EVENT_IVS_DUSTBIN_RETREAT (??????????????)????????????????? typedef struct tagNET_DEV_EVENT_DUSTBIN_RETREAT_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[64]; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nPresetID; /// ?????????????????1??? char szPresetName[64]; /// ????????????????? UINT nViolationDuration; /// ????????????????????? UINT nPictureType; /// ?????? 0-??? 1-??? 2-??? char szSourceID[32]; /// ???????ID UINT nRuleId; /// ?????? char szRuleName[128]; /// ???????? int nAlarmType; /// -1???????????????????????0?????????????????????1???????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1012 - POINTERSIZE]; /// ?????? }NET_DEV_EVENT_DUSTBIN_RETREAT_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_ON_DETECTION (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_SIGNAL_LIGHT_ON_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_SIGNAL_LIGHT_ON_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_FLASHYELLOW_DETECTION (??????????????)????????????????? typedef struct tagNET_DEV_EVENT_SIGNAL_LIGHT_FLASHYELLOW_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_SIGNAL_LIGHT_FLASHYELLOW_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_NOBRIGHT_DETECTION (????????????????)????????????????? typedef struct tagNET_DEV_EVENT_SIGNAL_LIGHT_NOBRIGHT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_SIGNAL_LIGHT_NOBRIGHT_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_BLOCKING_DETECTION (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_SIGNAL_LIGHT_BLOCKING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_SIGNAL_LIGHT_BLOCKING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_ALWAYSON_DETECTION (??????????????)????????????????? typedef struct tagNET_DEV_EVENT_SIGNAL_LIGHT_ALWAYSON_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_SIGNAL_LIGHT_ALWAYSON_DETECTION_INFO; ///@brief ??????? EVENT_IVS_LEDSCREEN_NOTLIGHTUP_DETECTION (LED????????????)????????????????? typedef struct tagNET_DEV_EVENT_LEDSCREEN_NOTLIGHTUP_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_LEDSCREEN_NOTLIGHTUP_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHTOFF_DETECTION (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_SIGNAL_LIGHTOFF_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ???????????? NET_POINT stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ????????? UINT nIndexInData; /// ???????????????????? char szChannelId[260]; /// ?????????????,???????????????????????? char szReserved[760]; /// ?????? }NET_DEV_EVENT_SIGNAL_LIGHTOFF_DETECTION_INFO; ///@brief ????? typedef struct tagNET_COMPARE_DETECTION_IMAGEINFO { int nIndexInData; /// ???????????????????? UINT nPicType; /// ?????? 0:?????????? 1:??????? UINT nOffset; /// ??????????????????? UINT nLength; /// ??????,????:??? char szFilePath[256]; /// ?????? NET_RECT stuBoundingBox; /// ?????? char szReserved[256]; /// ?????? }NET_COMPARE_DETECTION_IMAGEINFO; ///@brief ??????? EVENT_IVS_PIC_COMPARE_DETECTION (???????????)????????????????? typedef struct tagNET_DEV_EVENT_PIC_COMPARE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nEventID; /// ???ID UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nPresetID; /// ????ID,??????IPC???0 char szTaskID[64]; /// ????ID ?????????????? BOOL bIsAlarm; /// FALSE ????????? TRUE ??????? int nImageInfoNum; /// ????????? NET_COMPARE_DETECTION_IMAGEINFO stuImageInfo[64]; /// ????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_PIC_COMPARE_DETECTION_INFO; ///@brief ???????? typedef struct tagNET_TRACK_OBJECT_INFO { int nTrackID; /// ???????ID int nSpeed; /// ??????????/??????100?? int nLongitude; /// ??????????????1000000???????????6????????????6????0???? int nLatitude; /// ??????????????1000000???????????6????????????6????0???? char szTargetUUID[32]; /// ??????????id char szReserved[224]; /// ?????? }NET_TRACK_OBJECT_INFO; ///@brief ??????? EVENT_IVS_LINK_AGE_RADAR_ALARM (???????(???????????????????????))????????????????? typedef struct tagNET_DEV_EVENT_LINK_AGE_RADAR_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nAlarmFlag; /// ?????????????0bit?????????????1bit????????AIS??? ??2bit??????????? ??3bit???????????? int nUpDownGoing; /// ????/???????? -1:??? 0:???? 1:???? 2:???? (???????????AlarmFlag??0?????????0 UpDownGoing??0???AlarmFlag????0) NET_TRACK_OBJECT_INFO stuTrackObject; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_LINK_AGE_RADAR_ALARM_INFO; ///@brief ???????(???????????2000km???????) typedef enum tagEM_VEHICLE_STATE_ALARM_FLAG { EM_VEHICLE_STATE_ALARM_FLAG_UNKNOWN = -1, /// ??? EM_VEHICLE_STATE_ALARM_FLAG_NO_ALARM, /// ???? EM_VEHICLE_STATE_ALARM_FLAG_ALARM, /// ???? EM_VEHICLE_STATE_ALARM_FLAG_NO_MEAN, /// ?????????????????????? }EM_VEHICLE_STATE_ALARM_FLAG; ///@brief ??????? EVENT_IVS_VEHICLE_STATE (?????????)????????????????? typedef struct tagNET_DEV_EVENT_VEHICLE_STATE_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nUTCMS; /// ??????????? UINT nACK; /// ????????ID char szStatus[32]; /// ?????? char szTaskID[64]; /// ????? UINT nOilTankage; /// ?????????????0.1L UINT nCurrentFuel; /// ????????????, ????0.1L UINT nConsumptionOil; /// ???????L/100???? ????0.1L UINT nTotalUsedFuel; /// ?????????????????0.1L UINT nTotalDistance; /// ??????????0.1 Km int nServiceDistance; /// ????????????0.1Km EM_VEHICLE_STATE_ALARM_FLAG emAlarmFlag; /// ???????(???????????2000km???????) int nCurrentGear; /// ??????? -1:??? 0-P 1-R 2-N 3-D 4-S UINT nSpeed; /// ?????????????0.1Km/h EM_COVER_STATUS emCoverStatus; /// ????? EM_LIFT_STATUS emLiftStatus; /// ?????? EM_LOAD_STATUS emLoadStatus; /// ?????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_VEHICLE_STATE_INFO; ///@brief ??????? EVENT_IVS_PASS_WINDOW_DELIVERY(?????????????)????????????????? typedef struct tagNET_DEV_EVENT_PASS_WINDOW_DELIVERY_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID int nObjectsNum; /// ????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? int nDetectRegionNum; /// ????????? int nDeliveryRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? NET_POINT stuDeliveryRegion[20]; /// ????? SCENE_IMAGE_INFO stuSceneImage; /// ???????????IndexInData??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_PASS_WINDOW_DELIVERY_INFO; ///@brief ?????????? typedef struct tagNET_DOOR_STATE_ABNORMAL_INFO { NET_CFG_TIME_SCHEDULE stuDSTimeSection; /// ???????????????????????????????????????????????? UINT nDoorState; /// ?????????????1???????????0??? char szReserved[124]; /// ?????? }NET_DOOR_STATE_ABNORMAL_INFO; ///@brief ???????????? typedef struct tagNET_OPEN_DOOR_ABNORMAL_INFO { NET_CFG_TIME_SCHEDULE stuODTimeSection; /// ??????????????????????????????????nLongTime?????????? UINT nLongTime; /// ??????????/min char szReserved[124]; /// ?????? }NET_OPEN_DOOR_ABNORMAL_INFO; ///@brief ??????? EVENT_IVS_DOOR_STATE_DETECTION(???????????)????????????????? typedef struct tagNET_DEV_EVENT_DOOR_STATE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID UINT nPresetID; /// ?????????????????1??????????????????????? int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? char szAlarmType[32]; /// ???????? ???????????? NET_DOOR_STATE_ABNORMAL_INFO stuDoorStateAbnormal; /// ?????????? NET_OPEN_DOOR_ABNORMAL_INFO stuOpenDoorAbnormal; /// ???????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? int nObjectsNum; /// ?????????????????? char szReserved[1016-POINTERSIZE]; /// ?????? }NET_DEV_EVENT_DOOR_STATE_DETECTION_INFO; ///@brief ??????? DH_ALARM_DOOR_STATE_DETECTION (???????????)????????????????? typedef struct tagNET_ALARM_DOOR_STATE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nPresetID; /// ?????????????????1??????????????????????? int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? char szAlarmType[32]; /// ???????? ???????????? NET_DOOR_STATE_ABNORMAL_INFO stuDoorStateAbnormal; /// ?????????? NET_OPEN_DOOR_ABNORMAL_INFO stuOpenDoorAbnormal; /// ???????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? int nObjectsNum; /// ?????????????????? char szReserved[1020-POINTERSIZE]; /// ?????? }NET_ALARM_DOOR_STATE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_WASTE_MIXED_INVEST(??????????)????????????????? typedef struct tagNET_DEV_EVENT_WASTE_MIXED_INVEST_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID UINT nPresetID; /// ?????????????????1??????????????????????? char szPresetName[64]; /// ????????????????? int nObjectsNum; /// ????????? int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? DH_MSG_OBJECT stuObjects[64]; /// ?????????????? char szSourceID[32]; /// ???????ID ??????????????????????????????????????????????????SourceID??? /// ?????????+???+???????????????2???????14??????????5?? char szRuleName[128]; /// ???????? UINT nRuleId; /// ?????? UINT nViolationDuration; /// ????????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[508 - POINTERSIZE]; /// ?????? }NET_DEV_EVENT_WASTE_MIXED_INVEST_INFO; ///@brief ??????? EVENT_IVS_UNBROKEN_TRASHBAG(?????????????????)????????????????? typedef struct tagNET_DEV_EVENT_UNBROKEN_TRASHBAG_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID UINT nPresetID; /// ?????????????????1??????????????????????? char szPresetName[64]; /// ????????????????? int nObjectsNum; /// ????????? int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? DH_MSG_OBJECT stuObjects[64]; /// ?????????????? char szSourceID[32]; /// ???????ID ??????????????????????????????????????????????????SourceID??? /// ?????????+???+???????????????2???????14??????????5?? char szRuleName[128]; /// ???????? UINT nRuleId; /// ?????? UINT nViolationDuration; /// ????????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[508 - POINTERSIZE]; /// ?????? }NET_DEV_EVENT_UNBROKEN_TRASHBAG_INFO; ///@brief ??????? EVENT_IVS_PERSON_CARRY_TRASHBAG(?????????????)????????????????? typedef struct tagNET_DEV_EVENT_PERSON_CARRY_TRASHBAG_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID UINT nPresetID; /// ?????????????????1??????????????????????? char szPresetName[64]; /// ????????????????? int nObjectsNum; /// ????????? int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? DH_MSG_OBJECT stuObjects[64]; /// ?????????????? char szSourceID[32]; /// ???????ID ??????????????????????????????????????????????????SourceID??? /// ?????????+???+???????????????2???????14??????????5?? char szRuleName[128]; /// ???????? UINT nRuleId; /// ?????? UINT nViolationDuration; /// ????????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[508 - POINTERSIZE]; /// ?????? }NET_DEV_EVENT_PERSON_CARRY_TRASHBAG_INFO; ///@brief ??????? EVENT_IVS_ILLEGAL_CARRIAGE(??????????)????????????????? typedef struct tagNET_DEV_EVENT_ILLEGAL_CARRIAGE_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[128]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? char byReserved[4]; /// ????????????,????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID DH_MSG_OBJECT_EX2 stuVehicles[10]; /// ??????? int nVehiclesNum; /// ???????????????(???stuVehicles???) int nObjectsNum; /// ???????????????(???stuObjects???) DH_MSG_OBJECT_EX2 stuObjects[10]; /// ??????? SCENE_IMAGE_INFO stuSceneImage; /// ???????, ??nIndexInData??????? UINT nBusDoorStatus; /// ?????????????(????f??, ????????????), 0-???, 1-??, 2-???? UINT nIsTrunk; /// ????????????????, 0-?????????, 1-???????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? int nDetectRegionNum; /// ????????? NET_POINT_EX stuDetectRegion[20]; /// ????? char szReserved[1936 - POINTERSIZE]; /// ?????? }NET_DEV_EVENT_ILLEGAL_CARRIAGE_INFO; ///@brief ??????? EVENT_IVS_ALARM_TORPEDO_DETECT(???????????)????????????????? typedef struct tagNET_TORPRDO_INFO { char szTroprdoNumber[128]; /// ??????? float fTemp; /// ??????????? int nTempUnit; /// ??????(0????? 1????? 2??????) BOOL bIsOverTemp; /// ???????? UINT nBoundingBox[4]; /// ????????????? UINT nAlarmState; /// ??????:0????????, 1??????, 2????? char szReserved[124]; /// ?????? }NET_TORPRDO_INFO; ///@brief ??????? EVENT_IVS_ALARM_TORPEDO_DETECT(???????????)????????????????? typedef struct tagNET_DEV_EVENT_TORPEDO_DETECT_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[128]; /// ??????????????? UINT nGroupID; /// GroupID?????ID????????????????GroupID??? UINT nCountInGroup; /// CountInGroup?????????????????? char byReserved[4]; /// ????????????,????????? UINT nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID DH_MSG_OBJECT_EX2 stuTorpedoObject; /// ???????????? UINT nDetectRegion[20][2]; /// ????? UINT nPresetID; /// ?????????????????1????????????????????????? int nSequence; /// ???? NET_TORPRDO_INFO stuTorpedoInfo; /// ????????????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TORPEDO_DETECT_ALARM_INFO; ///@brief ??????? EVENT_IVS_GAS_TANK_DETECTION(???????????)????????????????? typedef struct tagNET_DEV_EVENT_GAS_TANK_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[128]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? char byReserved[4]; /// ????????????,????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID DH_MSG_OBJECT_EX2 stuObject; /// ?????????????? DH_MSG_OBJECT_EX2 stuObjects[100]; /// ?????????????????? int nObjectNum; /// ????????????(???stuObjects???) int nDetectRegionNum; /// ????????? NET_POINT stuDetectRegion[20]; /// ????? int nCount; /// ????????????? EM_EVENT_LEVEL emEventLevel; /// ??????? UINT nPresetID; /// ?????????????????1???,???????????????????? char szPresetName[64]; /// ????????????????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? SCENE_IMAGE_INFO stuSceneImage; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_GAS_TANK_DETECTION_INFO; ///@brief ??????? EVENT_IVS_UNATTENDED_DETENTION(????????????)????????????????? typedef struct tagNET_DEV_EVENT_UNATTENDED_DETENTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? char szVideoPath[256]; /// ??????????FTP??????? char szPlateNumber[32]; /// ????? char szSN[32]; /// ????????? char szReserved[512]; /// ?????? }NET_DEV_EVENT_UNATTENDED_DETENTION_INFO; ///@brief ??????? EVENT_IVS_DROP_DETECTION(?????????)????????????????? typedef struct tagNET_DEV_EVENT_DROP_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ???ID int nObjectsNum; /// ????????? DH_MSG_OBJECT stuObjects[128]; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????????? nIndexInData??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[508 - POINTERSIZE]; /// ?????? }NET_DEV_EVENT_DROP_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TEMPERATURE_ALARM(?????????)????????????????? typedef struct tagNET_DEV_EVENT_TEMPERATURE_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ???? float fCurrent; /// ?????? int nRange[2]; /// ???????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? stuRealUTC?????? stuRealUTC ???????(?????????????? ??????????/??????????(UTC) ???) NET_TIME_EX stuRealUTC; /// ????????????(???UTC???(???????????????)), ?????????UTC?????????????????????, ??????RealUTC??????UTC???, ???????????????????????RealUTC, ?????UTC. char szReserved[984]; /// ?????? }NET_DEV_EVENT_TEMPERATURE_ALARM_INFO; ///@brief ??????? EVENT_IVS_HUMIDITY_ALARM(?????????)????????????????? typedef struct tagNET_DEV_EVENT_HUMIDITY_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? float fCurrentValue; /// ??????? float fLimitValue; /// ??????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? int nRange[2]; /// ??????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? stuRealUTC?????? stuRealUTC ???????(?????????????? ??????????/??????????(UTC) ???) NET_TIME_EX stuRealUTC; /// ????????????(???UTC???(???????????????)), ?????????UTC?????????????????????, ??????RealUTC??????UTC???, ???????????????????????RealUTC, ?????UTC. char szReserved[984]; /// ?????? }NET_DEV_EVENT_HUMIDITY_ALARM_INFO; ///@brief 485?????????????? typedef enum tagEM_POWER_SWITCHER_ALARM_TYPE { EM_POWER_SWITCHER_ALARM_TYPE_UNKNOWN, /// ??? EM_POWER_SWITCHER_ALARM_TYPE_LOWCURRENT, /// ??????????? EM_POWER_SWITCHER_ALARM_TYPE_HIGHCURRENT, /// ??????????? EM_POWER_SWITCHER_ALARM_TYPE_LOWVOLTAGE, /// ?????????? EM_POWER_SWITCHER_ALARM_TYPE_HIGHVOLTAGE, /// ?????????? EM_POWER_SWITCHER_ALARM_TYPE_LOWPOWER, /// ?????????? EM_POWER_SWITCHER_ALARM_TYPE_HIGHPOWER, /// ?????????? }EM_POWER_SWITCHER_ALARM_TYPE; ///@brief ??????? EVENT_IVS_POWER_SWITCHER_ALARM(???????????)????????????????? typedef struct tagNET_DEV_EVENT_POWER_SWITCHER_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ??????? 0:????,1:???, 2:?? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ???? int nPowerVoltage; /// ??????????: mV int nPowerCurrent; /// ???????????: mA int nPowerValue; /// ?????????: mW int nSwitchOn; /// ???????: 0 ???, 1 ??, 2 ?? int nPowerState; /// ??????????, ???????????????: ??0???????, Bit0-??, Bit1-???, Bit2-???, Bit3-????, Bit4-?????????????????????????? EM_ALARM_INTERFACE_TYPE emInterfaceType; /// ???????????? int nAlarmTypeNum; /// 485?????????????? EM_POWER_SWITCHER_ALARM_TYPE emAlarmType[8]; /// 485?????????????? int nCurrentCT; /// ?????? int nVoltagePT; /// ????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_POWER_SWITCHER_ALARM_INFO; ///@brief ??????? typedef enum tagEM_OCR_DETECTION_DETECT_TYPE { EM_OCR_DETECTION_DETECT_TYPE_UNKNOWN, /// ??? EM_OCR_DETECTION_DETECT_TYPE_TEMPERATURE, /// ??? EM_OCR_DETECTION_DETECT_TYPE_WEIGH, /// ???? }EM_OCR_DETECTION_DETECT_TYPE; ///@brief ?????????? typedef enum tagEM_OCR_DETECTION_TRIGGER_TYPE { EM_OCR_DETECTION_TRIGGER_TYPE_UNKNOWN = -1, /// ??? EM_OCR_DETECTION_TRIGGER_TYPE_GREATER_THAN_TOPLIMIT, /// ???????? EM_OCR_DETECTION_TRIGGER_TYPE_LESS_THAN_LOWERLIMIT, /// ???????? EM_OCR_DETECTION_TRIGGER_TYPE_EQUAL_TO_THRESHOLD, /// ??????? }EM_OCR_DETECTION_TRIGGER_TYPE; ///@brief ??????? EVENT_IVS_OCR_DETECTION (OCR??????)????????????????? typedef struct tagDEV_EVENT_OCR_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleId; /// ????????????????????????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? NET_TIME_EX stuUTC; /// ???????????????????UTC??????????? UINT nUTCMS; /// ??????????? double dbPTS; /// ???????????????????? UINT nEventID; /// ??????????????????????? UINT nPresetID; /// ?????????????????1??? ???????????????????? char szContent[256]; /// ??????? EM_OCR_DETECTION_DETECT_TYPE emDetectType; /// ??????? EM_OCR_DETECTION_TRIGGER_TYPE emTriggerType; /// ?????????? SCENE_IMAGE_INFO stuSceneImage; /// ???????????IndexInData??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? UINT nObjectNum; ///????????? DH_MSG_OBJECT_EX2* pstuObjectInfo; ///??????????? char szReserved[1016 - POINTERSIZE]; /// ?????? }DEV_EVENT_OCR_DETECTION_INFO; ///@brief ????????????????? typedef enum tagEM_TRAFFIC_LIGHT_DIRECTION { EM_TRAFFIC_LIGHT_DIRECTION_UNKNOWN, /// ??? EM_TRAFFIC_LIGHT_DIRECTION_LEFT, /// ??? EM_TRAFFIC_LIGHT_DIRECTION_STRAIGHT, /// ??? EM_TRAFFIC_LIGHT_DIRECTION_RIGHT, /// ??? EM_TRAFFIC_LIGHT_DIRECTION_UTURN, /// ??? EM_TRAFFIC_LIGHT_DIRECTION_NOENTRY, /// ?????? }EM_TRAFFIC_LIGHT_DIRECTION; ///@brief ???????????????? typedef enum tagEM_TRAFFIC_LIGHT_STATE { EM_TRAFFIC_LIGHT_STATE_UNKNOWN, /// ??? EM_TRAFFIC_LIGHT_STATE_TURNOFF, /// ??? EM_TRAFFIC_LIGHT_STATE_TURNON, /// ???? }EM_TRAFFIC_LIGHT_STATE; ///@brief ????????????????? typedef enum tagEM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE { EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE_UNKNOWN, /// ??? EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE_NOTLIGHT, /// ???? EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE_LIGHT, /// ???? EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE_SHINING, /// ???? EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE_NORMAL, /// ???? }EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE; ///@brief ???????????? typedef struct tagNET_TRAFFIC_LANE_INDICATOR_INFO { EM_TRAFFIC_LIGHT_DIRECTION emLightDirection; /// ????????????????? EM_TRAFFIC_LIGHT_STATE emLightState; /// ???????????????? EM_TRAFFIC_LANE_INDICATOR_FAULT_TYPE emFaultType; /// ????????????????? char szReserved[512]; /// ???????,??????? } NET_TRAFFIC_LANE_INDICATOR_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_LANE_INDICATOR_FAULT (????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_LANE_INDICATOR_FAULT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID NET_TRAFFIC_LANE_INDICATOR_INFO stuLaneIndicatorInfo[5]; /// ???????????? int nLaneIndicatorInfoNum; /// ???????????????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_TRAFFIC_LANE_INDICATOR_FAULT_INFO; ///@brief ?????? typedef struct tagNET_WATER_SPEED_INFO { float fSpeed; /// ??????????m/s float fDistance; /// ????????????????m char szReserved[128]; /// ???????,??????? } NET_WATER_SPEED_INFO; ///@brief ??????? typedef enum tagEM_WATER_SPEED_STATUS { EM_WATER_SPEED_STATUS_UNKNOWN, /// ??? EM_WATER_SPEED_STATUS_NORMAL, /// ????????? EM_WATER_SPEED_STATUS_HIGH, /// ??????????????? EM_WATER_SPEED_STATUS_LOW, /// ??????????????? }EM_WATER_SPEED_STATUS; ///@brief ???????EVENT_IVS_WATER_SPEED_DETECTION (??????????)????????????????? typedef struct tagDEV_EVENT_WATER_SPEED_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? int nGroupID; /// ?????ID int nCountInGroup; /// ?????????????????????? int nIndexInGroup; /// ????????????????? int nEventID; /// ???ID double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? EM_EVENT_TYPE emEventType; /// ????????????? UINT nPresetID; /// ?????????????????1??????????????????????? char szPresetName[64]; /// ????????????????? NET_WATER_SPEED_INFO stuWaterSpeed[50]; /// ????????? int nWaterSpeedNum; /// ????????????? EM_WATER_SPEED_STATUS emStatus; /// ??????? NET_INTELLIGENCE_IMAGE_INFO stuOriginalImage; /// ????????? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ???????????????? char szReserved[1024]; /// ???????,??????? } DEV_EVENT_WATER_SPEED_DETECTION_INFO; ///@brief ???????EVENT_IVS_VALVE_ABNORMAL (????????????)????????????????? typedef struct tagDEV_EVENT_VALVE_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ??????????????????????????????????????VideoAnalyseRule.Id?? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT UTCMS; /// ??????(?????????) UINT nSequence; /// ???? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???????? char szReserved[1024]; /// ???????,??????? }DEV_EVENT_VALVE_ABNORMAL_INFO; ///@brief ???????EVENT_IVS_DISCHARGE_PORT_ABNORMAL (?????????????)????????????????? typedef struct tagDEV_EVENT_DISCHARGE_PORT_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ??????????????????????????????????????VideoAnalyseRule.Id?? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT UTCMS; /// ??????(?????????) UINT nSequence; /// ???? SCENE_IMAGE_INFO stuSceneImage; /// ???????? char szReserved[1024]; /// ???????,??????? }DEV_EVENT_DISCHARGE_PORT_ABNORMAL_INFO; ///@brief ???????? typedef enum tagEM_EM_FIRE_DOOR_STATUS { EM_FIRE_DOOR_UNKNOWN, /// 0:??????????? EM_FIRE_DOOR_CLOSED, /// 1:??????????? EM_FIRE_DOOR_OPEN /// 2:???????????? }EM_FIRE_DOOR_STATUS; ///@brief ???????????, ?????????? EVENT_IVS_FIRE_DOOR_DETECTION typedef struct tagDEV_EVENT_FIRE_DOOR_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char szReserved[4]; /// ?????? /* ????????? */ EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? EM_FIRE_DOOR_STATUS emFireDoorStatus; /// ???????? DH_MSG_OBJECT stuObject; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved1[1020 - POINTERSIZE]; /// ?????? } DEV_EVENT_FIRE_DOOR_DETECTION_INFO; ///@brief ????????????? typedef enum tagEM_FIRE_EXTINGUISHER_CATEGORY_TYPE { EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_UNKNOWN, /// ??? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_EXTINGUISHER_GENERAL, /// ??????????????8kg???? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_EXTINGUISHER_HANDPUSH, /// 35kg????????? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_SIGNBOARD_GENERAL, /// ???????? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_SIGNBOARD_STATIC_ELETRICITY, /// ???????? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_SIGNBOARD_OILCAP, /// ?????????? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_ROADCONE, /// ??? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_COVERPLATE, /// ???? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_OILCAP_OPEN, /// ??????????? EM_FIRE_EXTINGUISHER_CATEGORY_TYPE_OILCAP_CLOSE, /// ???????????? }EM_FIRE_EXTINGUISHER_CATEGORY_TYPE; ///@brief ?????????????????????? typedef struct tagNET_FIRE_EXTINGUISHER_CATEGORY_INFO { EM_FIRE_EXTINGUISHER_CATEGORY_TYPE emCategory; /// ????????????? int nNum; /// ??????????????????? char szReserved[128]; /// ?????? }NET_FIRE_EXTINGUISHER_CATEGORY_INFO; ///@brief ??????????????????? typedef struct tagNET_FIRE_EXTINGUISHER_OBJECT_INFO { UINT nAlertNum; /// ????????????? int nCategoryInfoNum; /// ?????????????????????????? NET_FIRE_EXTINGUISHER_CATEGORY_INFO stuCategoryInfo[16]; /// ?????????????????????? char szReserved[256]; /// ?????? }NET_FIRE_EXTINGUISHER_OBJECT_INFO; ///@brief ???????????, ?????????? EVENT_IVS_FIRE_EXTINGUISHER_DETECTION typedef struct tagDEV_EVENT_FIRE_EXTINGUISHER_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID /* ????????? */ EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? DH_MSG_OBJECT stuObject; /// ????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_FIRE_EXTINGUISHER_OBJECT_INFO stuObjectInfo; /// ??????????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szReserved[1020 - POINTERSIZE]; /// ?????? } DEV_EVENT_FIRE_EXTINGUISHER_DETECTION_INFO; ///@brief ???????????????????????????????? typedef enum tagEM_PARKING_CHANGE_STATUS { EM_PARKING_CHANGE_STATUS_UNKNOW = -1, /// ??? EM_PARKING_CHANGE_STATUS_UNCHANGED, /// ???? EM_PARKING_CHANGE_STATUS_INCREASE, /// ???????? EM_PARKING_CHANGE_STATUS_REDUCE, /// ???????? } EM_PARKING_CHANGE_STATUS; ///@brief ??????????? typedef struct tagDEV_PARKING_STATUS_INFO { int nID; /// ????ID??????0-99 char szName[32]; /// ???????? UINT nParkedNumber; /// ???????????????????????[0,255]?? EM_PARKING_CHANGE_STATUS emChangeStatus; /// ????????????????????????????????, } DEV_PARKING_STATUS_INFO; ///@brief ??????????????, ?????????? EVENT_IVS_PARKING_LIMIT_DETECTION typedef struct tagDEV_EVENT_PARKING_LIMIT_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2??????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT UTCMS; /// ??????(?????????) UINT nEventID; /// ???ID /* ????????? */ EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ??????????????????????????????????? UINT nSequence; /// ???? DEV_PARKING_STATUS_INFO stParkingStatus[100]; /// ??????????? int nParkingStatusNum; /// ??????????????? char szReserved[1024]; /// ?????? } DEV_EVENT_PARKING_LIMIT_DETECTION_INFO; ///@brief ?????????????, ?????????? EVENT_IVS_PARKING_STATUS_CHANGE_DETECTION typedef struct tagDEV_EVENT_PARKING_STATUS_CHANGE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2??????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT UTCMS; /// ??????(?????????) UINT nEventID; /// ???ID /* ????????? */ EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ??????????????????????????????????? UINT nSequence; /// ???? DEV_PARKING_STATUS_INFO stParkingStatus[100]; /// ??????????? int nParkingStatusNum; /// ??????????????? char szReserved[1024]; /// ?????? } DEV_EVENT_PARKING_STATUS_CHANGE_DETECTION_INFO; ///@brief ?????????, ?????????? EVENT_IVS_DOOR_NOT_CLOSE typedef struct tagDEV_EVENT_DOOR_NOT_CLOSE_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID char szSN[32]; /// ?????????????????? ??????????????? BOOL bRealUTC; /// RealUTC ?????????bRealUTC ? TRUE ????? RealUTC ???????? UTC ??? NET_TIME_EX RealUTC; /// ???????????????UTC?? int nOpenTimeOut; /// ??????????????? UINT nACK; /// ???ID NET_GPS_STATUS_INFO stGPSStatus; /// GPS??? BYTE byReserved[240]; /// ?????? } DEV_EVENT_DOOR_NOT_CLOSE_INFO; ///@brief ??????? typedef enum tagEM_INSTRUMENT_TYPE { EM_INSTRUMENT_TYPE_UNKNOWN, /// ??? EM_INSTRUMENT_TYPE_STATE, /// ????????? EM_INSTRUMENT_TYPE_STATEMATCH, /// ????????? EM_INSTRUMENT_TYPE_METER, /// ???????????? EM_INSTRUMENT_TYPE_CHAR, /// ??????????? EM_INSTRUMENT_TYPE_OIL, /// ??????? EM_INSTRUMENT_TYPE_SWIIDEN, /// ?????? EM_INSTRUMENT_TYPE_LIGHT, /// ???????? EM_INSTRUMENT_TYPE_SWITCH, /// ??????????? EM_INSTRUMENT_TYPE_APPEARANCE, /// ????????? EM_INSTRUMENT_TYPE_LEVELGAUGE, /// ????? }EM_INSTRUMENT_TYPE; ///@brief ?????? typedef enum tagEM_PIC_TYPE { EM_PIC_TYPE_UNKNOWN = -1, /// ??? EM_PIC_TYPE_ALGORITHMICALLY_PROCESSED, /// ??????????? }EM_PIC_TYPE; ///@brief ????? typedef struct tagNET_IMAGE_INFO { EM_PIC_TYPE emPicType; /// ?????? unsigned int nOffset; /// ??????????????????? unsigned int nLength; /// ??????,????:??? char szFilePath[256]; /// ?????? BYTE byReserved[1024]; /// ?????? }NET_IMAGE_INFO; ///@brief ?????????, ?????????? EVENT_IVS_DIALRECOGNITION typedef struct tagDEV_EVENT_DIALRECOGNITION_INFO { unsigned int nChannelID; /// ????????,??0??? unsigned int nPresetID; /// ????ID,??????IPC???0 char szTaskID[64]; /// ????ID.?????????????? EM_INSTRUMENT_TYPE emType; /// ??????? int nRetImageInfoNum; /// ?????????????? NET_IMAGE_INFO stuImgaeInfo[8]; /// ????? char szDialResult[2048]; /// ???????????Type????????????? int nOriginalImageOffset; /// ??????????????????????? int nOriginalImageLength; /// ????????,????????? UINT nAlarmType; /// ????????0-?????????;1-?????;2-??????; 3-????????; 4-???????? char szDialSubType[32]; /// ??????????????? float fUpperThreshold; /// ??????????? float fLowerThreshold; /// ??????????? NET_RECT stuBoundingBox[128]; /// ?????? int nRetBoundingBoxNum; /// ?????????? char szReserved[968]; /// ?????? } DEV_EVENT_DIALRECOGNITION_INFO; ///@brief ???????????????? typedef enum tagEM_AIRBORNE_TYPE { EM_AIRBORNE_TYPE_UNKNOWN, /// ??? EM_AIRBORNE_TYPE_PLASTICBAG, /// ????? EM_AIRBORNE_TYPE_TEXTILE, /// ??? EM_AIRBORNE_TYPE_KITE, /// ???? } EM_AIRBORNE_TYPE; ///@brief ??????????????????? typedef struct tagNET_AIRBORNE_DETECT { EM_AIRBORNE_TYPE emAirborneType; /// ???????????????? NET_RECT stuBoundingBox; /// ?????? } NET_AIRBORNE_DETECT; ///@brief ?????? typedef struct tagNET_NEST_DETECT { NET_RECT stuBoundingBox; /// ?????? } NET_NEST_DETECT; ///@brief ?????? typedef enum tagEM_DIAL_STATE { EM_DIAL_STATE_UNKNOWN, /// ??? EM_DIAL_STATE_NORMAL, /// ???? EM_DIAL_STATE_DIM, /// ??? EM_DIAL_STATE_DIAL_BROKEN, /// ???????? EM_DIAL_STATE_SHELL_BROKEN, /// ??????? EM_DIAL_STATE_ABNORMAL_READING, /// ?????? } EM_DIAL_STATE; ///@brief ???????? typedef struct tagNET_DIAL_DETECT { EM_DIAL_STATE emDialState; /// ?????? NET_RECT stuBoundingBox; /// ?????? } NET_DIAL_DETECT; ///@brief ???????? typedef struct tagNET_LEAKAGE_DETECT { NET_RECT stuBoundingBox; /// ?????? } NET_LEAKAGE_DETECT; ///@brief ?????? typedef enum tagEM_DOOR_STATE { EM_DOOR_STATE_UNKNOWN, /// ??? EM_DOOR_STATE_OPEN, /// ?? EM_DOOR_STATE_CLOSE, /// ??? } EM_DOOR_STATE; ///@brief ???????? typedef struct tagNET_DOOR_DETECT { EM_DOOR_STATE emDoorState; /// ?????? NET_RECT stuBoundingBox; /// ?????? } NET_DOOR_DETECT; ///@brief ???????? typedef enum tagEM_RESPIRATOR_STATE { EM_RESPIRATOR_STATE_UNKNOWN, /// ??? EM_RESPIRATOR_STATE_NORMAL, /// ???? EM_RESPIRATOR_STATE_SILICA_GEL_COLOR_CHANGE, /// ?????? EM_RESPIRATOR_STATE_SILICA_GEL_BARREL_BROKEN, /// ???????? EM_RESPIRATOR_STATE_ABNORMAL_OIL_LEVEL, /// ?????? } EM_RESPIRATOR_STATE; ///@brief ??????????? typedef struct tagNET_RESPIRATOR_DETECT { EM_RESPIRATOR_STATE emRespiratorState; /// ???????? NET_RECT stuBoundingBox; /// ?????? } NET_RESPIRATOR_DETECT; ///@brief ???????? typedef struct tagNET_SMOKING_DETECT { NET_RECT stuBoundingBox; /// ?????? } NET_SMOKING_DETECT; ///@brief ??????? typedef enum tagEM_INSULATOR_STATE { EM_INSULATOR_STATE_UNKNOWN, /// ??? EM_INSULATOR_STATE_NORMAL, /// ???? EM_INSULATOR_STATE_BROKEN, /// ???? } EM_INSULATOR_STATE; ///@brief ????????? typedef struct tagNET_INSULATOR_DETECT { EM_INSULATOR_STATE emInsulatorState; /// ??????? NET_RECT stuBoundingBox; /// ?????? } NET_INSULATOR_DETECT; ///@brief ????? typedef enum tagEM_COVER_PLATE_STATE { EM_COVER_PLATE_STATE_UNKNOWN, /// ??? EM_COVER_PLATE_STATE_NORMAL, /// ???? EM_COVER_PLATE_STATE_BROKEN, /// ???? } EM_COVER_PLATE_STATE; ///@brief ??????? typedef struct tagNET_COVER_PLATE_DETECT { EM_COVER_PLATE_STATE emCoverPlateState; /// ????? NET_RECT stuBoundingBox; /// ?????? } NET_COVER_PLATE_DETECT; ///@brief ????? typedef enum tagEM_PRESSING_PLATE_STATE { EM_PRESSING_PLATE_STATE_UNKNOWN, /// ??? EM_PRESSING_PLATE_STATE_DISCONNECT, /// ??? EM_PRESSING_PLATE_STATE_CLOSE, /// ??? } EM_PRESSING_PLATE_STATE; ///@brief ??????? typedef struct tagNET_PRESSING_PLATE_DETECT { EM_PRESSING_PLATE_STATE emPressingPlateState; /// ????? NET_RECT stuBoundingBox; /// ?????? } NET_PRESSING_PLATE_DETECT; ///@brief ????????????????? typedef enum tagELECTRIC_FAULT_ENABLE_RULES { ELECTRIC_FAULT_ENABLE_RULES_UNKNOWN, /// ??? ELECTRIC_FAULT_ENABLE_RULES_AIRBORNEDETECT, /// ??????????? ELECTRIC_FAULT_ENABLE_RULES_NESTDETECT, /// ???? ELECTRIC_FAULT_ENABLE_RULES_DIALDETECT, /// ?????? ELECTRIC_FAULT_ENABLE_RULES_LEAKAGEDETECT, /// ?????? ELECTRIC_FAULT_ENABLE_RULES_DOORDETECT, /// ?????? ELECTRIC_FAULT_ENABLE_RULES_RESPIRATORDETECT, /// ????????? ELECTRIC_FAULT_ENABLE_RULES_SMOKINGDETECT, /// ?????? ELECTRIC_FAULT_ENABLE_RULES_INSULATORDETECT, /// ??????? ELECTRIC_FAULT_ENABLE_RULES_COVERPLATEDETECT, /// ????? ELECTRIC_FAULT_ENABLE_RULES_PRESSINGPLATEDETECT, /// ????? ELECTRIC_FAULT_ENABLE_RULES_CORROSIONDETECT, /// ?????? } ELECTRIC_FAULT_ENABLE_RULES; ///@brief ?????????? typedef struct tagNET_METAL_CORROSION { NET_RECT stuBoundingBox; /// ?????? char bReserved[128]; /// ?????? } NET_METAL_CORROSION; ///@brief ????????? typedef struct tagNET_WEAR_DETECT { NET_RECT stuBoundingBox; /// ?????? int nState; /// ?????? 0:??? 1:?????? 2:???? char bReserved[60]; /// ?????? } NET_WEAR_DETECT; ///@brief ????????????? typedef struct tagDEV_EVENT_ELECTRICFAULTDETECT_INFO { EM_CLASS_TYPE emClassType; /// ??????????????? UINT nChannel; /// ???????? UINT nRuleID; /// ????????????????????????????????? int nEventID; /// ???ID char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nPresetID; /// ????ID UINT nUTCMS; /// ??????????? ELECTRIC_FAULT_ENABLE_RULES emEnableRules[16]; /// ????????????????? int nEnableRulesNum; /// ????????????????? int nAirborneDetectNum; /// ??????????????????????? NET_AIRBORNE_DETECT stuAirborneDetectInfo[8]; /// ??????????????????? NET_NEST_DETECT stuNestDetectInfo[8]; /// ?????? int nNestDetectNum; /// ?????????? int nDialDetectNum; /// ???????????? NET_DIAL_DETECT stuDialDetectInfo[8]; /// ???????? NET_LEAKAGE_DETECT stuLeakageDetectInfo[8]; /// ???????? int nLeakageDetectNum; /// ???????????? int nDoorDetectNum; /// ???????????? NET_DOOR_DETECT stuDoorDetectInfo[8]; /// ???????? NET_RESPIRATOR_DETECT stuRespiratorDetectInfo[8]; /// ??????????? int nRespiratorDetectNum; /// ???????????? int nSmokingDetectNum; /// ???????????? NET_SMOKING_DETECT stuSmokingDetectInfo[8]; /// ???????? SCENE_IMAGE_INFO stuSceneImageInfo; /// ??? NET_INSULATOR_DETECT stuInsulatorDetectInfo[8]; /// ????????? int nInsulatorDetectNum; /// ????????????? int nCoverPlateDetectNum; /// ??????????? NET_COVER_PLATE_DETECT stuCoverPlateDetectInfo[8]; /// ??????? NET_PRESSING_PLATE_DETECT stuPressingPlateDetectInfo[8]; /// ??????? int nPressingPlateDetectNum; /// ??????????? int nMetalCorrosionNum; /// ?????????????? NET_METAL_CORROSION stuMetalCorrosionInfo[8]; /// ?????????? NET_WEAR_DETECT stuWearDetectInfo[8]; /// ???????????? int nWearDetectNum; /// ????????????? BYTE bReserved[380]; /// ?????? } DEV_EVENT_ELECTRICFAULTDETECT_INFO; ///@brief ???????EVENT_IVS_FIREDETECTION(?????)????????????????? typedef struct tagDEV_EVENT_FIRE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved1[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; /// ??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? EM_TRIGGER_TYPE emTriggerType; /// ???????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? } DEV_EVENT_FIRE_INFO; ///@brief ???????EVENT_IVS_CROSSREGIONDETECTION(???????????)????????????????? typedef struct tagDEV_EVENT_CROSSREGION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved2[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? int nDetectRegionNum; /// ????????????? DH_POINT TrackLine[DH_MAX_TRACK_LINE_NUM]; /// ????????? int nTrackLineNum; /// ??????????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bDirection; /// ??????????, 0-????, 1-??,2-????,3-??? BYTE bActionType; /// ????????????,0-???? 1-??? 2-???????? 3-??????? BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? NET_CUSTOM_INFO stuCustom; /// ?????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? UINT nRuleID; /// ????????????????????????????????? NET_PRESET_POSITION stPosition; /// ?????????????? UINT nVisibleHFOV; /// ?????????????,?????? ????????100 UINT nVisibleVFOV; /// ??????????????,?????? ????????100 UINT nCurChannelHFOV; /// ????????????????????????????????????100 UINT nCurChannelVFOV; /// ?????????????????????????????????????100 char szRealEventType[32]; /// ???????????????????????????????????????????????????????????????????????????????????????????????????IllegalDumping?????????????? BYTE bReserved[264]; /// ???????,???????. int nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjectIDs[DH_MAX_OBJECT_LIST]; /// ????????? int nTrackNum; /// ????(????????????????) DH_POLY_POINTS stuTrackInfo[DH_MAX_OBJECT_LIST]; /// ?????(????????????) EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? UINT nObjetcHumansNum; /// ?????????? NET_VAOBJECT_NUMMAN stuObjetcHumans[100]; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? NET_PTZSPACE_UNNORMALIZED stuAbsPosition; /// ???????????????????100??????? /// ???????????????0-36000?? /// ??????????????????-18000??-??18000???? /// ????????????????????0-MaxZoom*100 int nHFovValue; /// ??????????????, ????0.01??, ????100????? double dbFocusPosition; /// ??????? UINT nObjectBoatNum; /// ?????????? NET_BOAT_OBJECT stuBoatObject[100]; /// ????????? int nImageNum; /// ????????? NET_IMAGE_INFO_EX2* pImageArray; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? DH_MSG_OBJECT_EX2* pstuObjectEx2; /// ???????????? DH_MSG_OBJECT_EX2* pstuObjectIDsEx2; /// ????????????,?????nObjectNum DH_MSG_OBJECT_EX2* pstuVehicleEx2; /// ?????????? } DEV_EVENT_CROSSREGION_INFO; ///@brief ??????????? typedef enum tagEM_SMOKE_COLOR { EM_SMOKE_COLOR_UNKNOWN, /// ??? EM_SMOKE_COLOR_WHITE, /// White EM_SMOKE_COLOR_BLACK, /// black EM_SMOKE_COLOR_RED, /// red EM_SMOKE_COLOR_YELLOW, /// yellow }EM_SMOKE_COLOR; ///@brief ???????EVENT_IVS_SMOKEDETECTION(???????????)????????????????? typedef struct tagDEV_EVENT_SMOKE_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? UINT nRuleID; /// ??????,????????????????????????????0 double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT stuObject; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[2]; BYTE byImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? PTZ_SPACE_UNIT stuPtzPosition; /// ?????????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DH_MSG_OBJECT stuVehicle; /// ??????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? UINT nCurChannelHFOV; /// ????????????????????,?????????????????100 UINT nCurChannelVFOV; /// ???????????????????,?????????????????100 NET_GPS_INFO_EX stuGPS; /// ?????GPS???? int nObjectCount; /// ??????????? DH_MSG_OBJECT_EX2 stuObjects[16]; /// ??????????? EM_SMOKE_COLOR emSmokeColor[16]; /// ??????? int nSmokeColorNum; /// ??????????????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[944]; /// ??????? } DEV_EVENT_SMOKE_INFO; ///@brief ?????????? typedef struct tagNET_TRAFFIC_JUNCTION_CUSTOM_INFO { NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? BYTE byReserved[1024]; /// ??????? } NET_TRAFFIC_JUNCTION_CUSTOM_INFO; ///@brief ??? EVENT_IVS_TRAFFIC_WRONG_TURN_LIGHT ??????? typedef struct tagDEV_EVENT_TRAFFIC_WRONG_TURN_LIGHT_INFO { int nAction; /// 0:???? int nChannelID; /// ????? char szName[128]; /// ??????? double PTS; /// ???????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLaneID; /// ?????? int nSpeed; /// ????,????km/h char szDriverID[32]; /// ???ID EM_TRIGGER_TYPE emTriggerType; /// ???????? EVENT_COMM_INFO stuCommInfo; /// ??????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? DH_EVENT_FILE_INFO stuFileInfo; /// ?????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? NET_TRAFFIC_JUNCTION_CUSTOM_INFO stuJunctionCustom; /// ?????????? DH_MSG_OBJECT stuObject; /// ???????????? DH_MSG_OBJECT stuVehicle; /// ??????????? BYTE byResersed[1024]; /// ??????? }DEV_EVENT_TRAFFIC_WRONG_TURN_LIGHT_INFO; ///@brief ????????? EVENT_IVS_TRAFFIC_REAREND_ACCIDENT ??????? typedef struct tagDEV_EVENT_TRAFFIC_REAREND_ACCIDENT_INFO { int nAction; /// 0:???? int nChannelID; /// ????? char szName[128]; /// ??????? double PTS; /// ???????????????? NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? UINT nLaneID; /// ?????? EVENT_COMM_INFO stuCommInfo; /// ??????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? DH_EVENT_FILE_INFO stuFileInfo; /// ?????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? DH_MSG_OBJECT stuObjects[50]; /// ???????????? int nObjectNum; /// ??????????? BYTE byResersed[1020]; /// ??????? }DEV_EVENT_TRAFFIC_REAREND_ACCIDENT_INFO; ///@brief ??????????? typedef enum tagEM_TALK_ACTION_TYPE { EM_TALK_ACTION_TYPE_UNKNOWN, /// ??? EM_TALK_ACTION_TYPE_INVITE, /// ???? EM_TALK_ACTION_TYPE_HANGUP, /// ??? }EM_TALK_ACTION_TYPE; ///@brief ????????????? typedef enum tagEM_CALL_SOURCE_TYPE { EM_CALL_SOURCE_TYPE_UNKNOWN, /// ??? EM_CALL_SOURCE_TYPE_VT_OR_SIP, /// VT??SIP EM_CALL_SOURCE_TYPE_GEN2, /// ???? EM_CALL_SOURCE_TYPE_THIRD_PARTY, /// ?????? }EM_CALL_SOURCE_TYPE; ///@brief ?????? typedef enum tagEM_HANGUP_REASON { EM_HANGUP_REASON_UNKNOWN, /// ??? EM_HANGUP_REASON_ANSWER_BY_VTH, /// VTH ????? EM_HANGUP_REASON_REFUSE_BY_VTH, /// VTH ???? EM_HANGUP_REASON_HANGUP_BY_VTO, /// VTO ??? }EM_HANGUP_REASON; ///@brief ?????? typedef struct tagDEV_EVENT_DO_TALK_ACTION_INFO { int nAction; /// 0:???? int nChannelID; /// ????? char szName[128]; /// ??????? double PTS; /// ???????????????? NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID char szCallID[64]; /// ????ID EM_TALK_ACTION_TYPE emTalkAction; /// ??????????? EM_CALL_SOURCE_TYPE emCallSource; /// ????????? EM_HANGUP_REASON emHangupReason; /// ??????emTalkAction ? EM_TALK_ACTION_TYPE_HANGUP ????? BYTE byReserved[1020]; /// ?????? }DEV_EVENT_DO_TALK_ACTION_INFO; ///@brief ??????????? typedef enum tagEM_WATERMONITOR_SCENE_TYPE { EM_WATERMONITOR_SCENE_UNKNOWN, /// ??? EM_WATERMONITOR_SCENE_WATERSTAGE_RULE, /// ??????, ??????? EM_WATERMONITOR_SCENE_WATERSTAGE_NO_RULE, /// ??????, ??????? EM_WATERMONITOR_SCENE_WATERLOGG_RULE, /// ??????, ??????? EM_WATERMONITOR_SCENE_WATERLOGG_NO_RULE, /// ??????, ??????? } EM_WATERSTAGE_SCENE_TYPE; ///@brief ??????????? typedef struct tagNET_WATER_SURFACE_MASK_INFO { UINT nColNum; /// ???????????? UINT nOffset; /// ??? UINT nLength; /// ???? BYTE byReserved[1020]; /// ?????? } NET_WATER_SURFACE_MASK_INFO; ///@brief ?????????, ????????????????????? typedef struct tagDEV_EVENT_WATER_STAGE_MONITOR_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? EM_CLASS_TYPE emClassType; /// ??????????????? EM_WATERSTAGE_SCENE_TYPE emSceneType; /// ??????????? double dbMark; /// ?????? NET_POINT stuCrossPoint; /// ??????????? NET_WATER_SURFACE_MASK_INFO stuWaterSurfaceMask; /// ???????????, emSceneType ?EM_WATERMONITOR_SCENE_WATERSTAGE_NO_RULE ????EM_WATERMONITOR_SCENE_WATERLOGG_NO_RULE???? BYTE byReserved[1020]; /// ?????? } DEV_EVENT_WATER_STAGE_MONITOR_INFO; ///@brief ???????????? typedef enum tagEM_TRAFFIC_OVER_LINE_TRIGGER_TYPE { EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE_UNKNOWN, /// ??? EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE_VEHICLE_DETECTOR, /// ?????? EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE_RADAR, /// ??? EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE_VIDEO, /// ??? }EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE; ///@brief ??????? EVENT_IVS_TRAFFIC_OVER_GUIDE_LINE (??????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_OVER_GUIDE_LINE_INFO { int nChannelID; /// ????? int nAction; /// 0:??????? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nLane; /// ????????????1??????? BYTE byReserved1[4]; /// ?????? DH_MSG_OBJECT stuObject; /// ????????? BYTE byReserved2[4]; /// ?????? DH_MSG_OBJECT stuVehicle; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE emTriggerLine; /// ???????? int nSnapFrameMark; /// ??????? int nDataSourceAddress; /// ????????????????? int nFrameSequence; /// ??????????? int nSequence; /// ?????????,??3,2,1,1?????????,0????????? int nSpeed; /// ?????????km/h DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserved[1024]; /// ?????? }DEV_EVENT_TRAFFIC_OVER_GUIDE_LINE_INFO; ///@brief ??????????? typedef enum tagEM_FIRE_LANE_MOVE_STATE { EM_FIRE_LANE_MOVE_STATE_UNKNOWN, /// ??? EM_FIRE_LANE_MOVE_STATE_ENTER, /// ???? EM_FIRE_LANE_MOVE_STATE_LEAVE, /// ?? }EM_FIRE_LANE_MOVE_STATE; ///@brief ???????????? typedef enum tagEM_FIRE_LANE_OILCAP_STATE { EM_FIRE_LANE_OILCAP_STATE_UNKNOWN, /// ??? EM_FIRE_LANE_OILCAP_STATE_OPEN, /// ?? EM_FIRE_LANE_OILCAP_STATE_CLOSE, /// ??? }EM_FIRE_LANE_OILCAP_STATE; ///@brief ???????EVENT_IVS_FIRE_LANE_DETECTION(?????????????)????????????????? typedef struct tagDEV_EVENT_FIRE_LANE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 1:?????2:?? char szName[128]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int nSequence; /// ???? int nRuleID; /// ?????? UINT nObjectNum; /// ???????????? DH_MSG_OBJECT stuObjects[64]; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? EM_FIRE_LANE_MOVE_STATE emMoveState; /// ?????????????? EM_FIRE_LANE_OILCAP_STATE emOilCapState; /// ??????????????? DH_MSG_OBJECT stuVehicle; /// ??????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? BOOL bNonMotorInfo; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1024]; /// ?????? } DEV_EVENT_FIRE_LANE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NON_MOTOR_RETROGRADE(??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NON_MOTOR_RETROGRADE_INFO { int nChannelID; /// ????? int nAction; /// 0:??????? char szName[128]; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ??????,????????????????????????????0 EM_TRAFFIC_OVER_LINE_TRIGGER_TYPE emTriggerLine; /// ???????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLaneID; /// ?????? int nSpeed; /// ????(????:km/h) EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? EVENT_COMM_INFO stuCommInfo; /// ??????? BOOL bNonMotorInfoEx; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE byReserved[1012]; /// ?????? }DEV_EVENT_TRAFFIC_NON_MOTOR_RETROGRADE_INFO; ///@brief ??????? EVENT_IVS_CAR_DRIVING_IN(??????????)????????????????? typedef struct tagDEV_EVENT_CAR_DRIVING_IN_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLaneID; /// ?????? int nSpeed; /// ????(????:km/h) DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? BYTE bReserved[1020]; /// ??????? }DEV_EVENT_CAR_DRIVING_IN_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NON_MOTOR_OVER_STOP_LINE(????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NON_MOTOR_OVER_STOP_LINE_INFO { int nChannelID; /// ????? int nAction; /// 0:??????? char szName[128]; /// ??????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID int nLaneID; /// ?????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? BOOL bNonMotorInfoEx; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? BYTE byReserved[1012]; /// ?????? }DEV_EVENT_TRAFFIC_NON_MOTOR_OVER_STOP_LINE_INFO; ///@brief ??????? EVENT_IVS_CAR_DRIVING_OUT(??????????)????????????????? typedef struct tagDEV_EVENT_CAR_DRIVING_OUT_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLaneID; /// ?????? int nSpeed; /// ????(????:km/h) DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? BYTE bReserved[1020]; /// ??????? }DEV_EVENT_CAR_DRIVING_OUT_INFO; ///@brief ??????????? EVENT_ALARM_LOCALALARM(??????),EVENT_ALARM_MOTIONALARM(??????)????) typedef struct tagDEV_EVENT_ALARM_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char Reserved[4]; /// ?????????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EVENT_COMM_INFO stCommInfo; /// ??????? BYTE byEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE byReserved[3]; /// ??????? NET_SENSE_METHOD emSenseType; /// ?????????? EM_NET_DEFENCE_AREA_TYPE emDefenceAreaType; /// ???????? NET_GPS_STATUS_INFO stuGPS; /// GPS??? char szUserID[32]; /// ????????????????ID char szUserName[128]; /// ?????????????????? char szSN[32]; /// ????????? BOOL bExAlarmIn; /// ???????? NET_FILE_PROCESS_INFO stuFileProcessInfo; /// ?????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szReserved[512]; /// ??????? }DEV_EVENT_ALARM_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_HEAD_LAMP_OFF(?????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_HEAD_LAMP_OFF_INFO { int nChannelID; /// ????? int nAction; /// 0:???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ???????????? DH_MSG_OBJECT stuVehicle; /// ???????????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nLaneID; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ??????? EM_CAPTURE_PROCESS_END_TYPE emCaptureProcess; /// ?????? BYTE bReserved[1020]; /// ??????? }DEV_EVENT_TRAFFIC_HEAD_LAMP_OFF_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_SPECIAL_VEHICLE_DETECT (?????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_SPECIAL_VEHICLE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE bReserved[1016-POINTERSIZE]; /// ??????? }DEV_EVENT_TRAFFIC_SPECIAL_VEHICLE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NONMOTOR (????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_NONMOTOR_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? EVENT_COMM_INFO stuCommInfo; /// ??????? BOOL bNonMotorInfo; /// ??????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? char szResvered1[4]; /// ?????? int nSequence; /// ?????? int nLane; /// ?????? DH_MSG_OBJECT *pstuVehicle; /// ??????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO *pstuTrafficCar; /// ???????????????? BYTE bReserved[1008-POINTERSIZE*3]; /// ??????? }DEV_EVENT_TRAFFIC_NONMOTOR_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_BOARD (??????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_BOARD_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE bReserved[1016-POINTERSIZE]; /// ??????? }DEV_EVENT_TRAFFIC_BOARD_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_VISIBILITY (??????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_VISIBILITY_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? EVENT_COMM_INFO stuCommInfo; /// ??????? UINT nVisibility; /// ?????????????????????????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nSequence; /// ?????? int nLane; /// ?????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO *pstuTrafficCar; /// ???????????????? char szResvered1[4]; /// ?????? int nDetectRegionNum; /// ????????? NET_POINT_EX stuDetectRegion[20]; /// ????? BYTE bReserved[920-POINTERSIZE*2]; /// ??????? }DEV_EVENT_TRAFFIC_VISIBILITY_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_VEHICLE_CLEANLINESS (???????????????????)????????????????? typedef struct tagDEV_EVENT_TRAFFIC_VEHICLE_CLEANLINESS_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? EVENT_COMM_INFO stuCommInfo; /// ??????? int nCleanValue; /// ?????? int nImageInfoNum; /// ????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? BYTE bReserved[1020-POINTERSIZE]; /// ??????? }DEV_EVENT_TRAFFIC_VEHICLE_CLEANLINESS_INFO; ///@brief ??????? EVENT_IVS_TRUCKNOTCLEAN_FOR_PRMA ?????????? ????????????????? typedef struct tagDEV_EVENT_TRUCKNOTCLEAN_FOR_PRMA_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClass; /// ??????????????? UINT nSequence; /// ???? DH_MSG_OBJECT stuObject; /// ??????????? BOOL bSceneImage; /// stuSceneImage ??????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BYTE bReserved[1024]; /// ??????? }DEV_EVENT_TRUCKNOTCLEAN_FOR_PRMA_INFO; ///@brief ??????? EVENT_IVS_ROADOCCUPATION_BY_FOREIGNOBJECT ?????????? ????????????????? typedef struct tagDEV_EVENT_ROADOCCUPATION_BY_FOREIGNOBJECT_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClass; /// ??????????????? UINT nSequence; /// ???? BYTE bReserved[1024]; /// ??????? }DEV_EVENT_ROADOCCUPATION_BY_FOREIGNOBJECT_INFO; ///@brief ??????? EVENT_IVS_TRAFFICFLOW_OVER ?????????????? ????????????????? typedef struct tagDEV_EVENT_TRAFFICFLOW_OVER_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? EM_CLASS_TYPE emClass; /// ??????????????? UINT nSequence; /// ???? int nLane; /// ?????? int nVehicleNums; /// ?????????????? BYTE bReserved[1024]; /// ??????? }DEV_EVENT_TRAFFICFLOW_OVER_INFO; ///@brief ??????? typedef enum tagEM_GOODS_TYPE { EM_GOODS_TYPE_UNKNOWN, /// ??????? EM_GOODS_TYPE_RMB, /// ????? EM_GOODS_TYPE_KEY, /// ??? EM_GOODS_TYPE_SEAL, /// ??? EM_GOODS_TYPE_CARD, /// ??? }EM_GOODS_TYPE; ///@brief ??????? EVENT_IVS_GOODS_DETECTION ????????????? ????????????????? typedef struct tagDEV_EVENT_GOODS_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? UINT nPresetID; /// ?????????????????1??? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? BOOL bSceneImage; /// stuSceneImage ??????? EM_GOODS_TYPE emObjectType; /// ??????? BYTE bReserved[1020]; /// ??????? }DEV_EVENT_GOODS_DETECTION_INFO; ///@brief ??????? EVENT_IVS_CONVEYORBLOCK_DETECTION ??????????????? ????????????????? typedef struct tagDEV_EVENT_CONVEYORBLOCK_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleID; /// ????????????????????????????????? double dPTS; /// ??????????,???????? NET_TIME_EX UTC; /// ???????????????????UTC????????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ??????????????????????? UINT nSequence; /// ???? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? BOOL bSceneImage; /// stuSceneImage ??????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ????????? int nImageInfoNum; /// ????????? char byReserved[1024]; /// ??????? }DEV_EVENT_CONVEYORBLOCK_DETECTION_INFO; ///@brief ????N????????? typedef enum tagENUM_VAGEOBJECT_ACTION { ENUM_VAGEOBJECT_ACTION_UNKNOWN, /// ??????? ENUM_VAGEOBJECT_ACTION_APPEAR, /// ??????????????????????????????????????????????????????? ENUM_VAGEOBJECT_ACTION_MOVE, /// ?????????????????????? ENUM_VAGEOBJECT_ACTION_STAY, /// ??????????????????I???????????????????????????????????????????????? ENUM_VAGEOBJECT_ACTION_REMOVE, /// ????????????????????????????????????????????????ID??????????????????????????????????????????? ENUM_VAGEOBJECT_ACTION_DISAPPEAR, /// ???????????????????????????????????????????????????????ID????????? ENUM_VAGEOBJECT_ACTION_SPLIT, /// ??????????????????????????????????????????????ID????????ID?????????? ENUM_VAGEOBJECT_ACTION_MERGE, /// ?????????????????????????????????????ID???????????ID??????????? ENUM_VAGEOBJECT_ACTION_RENAME, /// ?????????????????????????????????????????????????????????????????????????????????ID??????ID?????????????ID }ENUM_VAGEOBJECT_ACTION; ///@brief ?????? typedef struct tagNET_VAGEOBJECT_IMAGE { UINT nOffset; /// ??????????????????? UINT nLength; /// ??????,????????? UINT nWidth; /// ?????? UINT nHeight; /// ????? char szFilePath[260]; /// ??????? }NET_VAGEOBJECT_IMAGE; ///@brief ??????????????????? typedef struct tagNET_VAGEOBJECT_INFO { UINT nObjectID; /// ????ID?????ID??????????????? UINT nTypeIndex; /// ?????????????????????? char szTypeName[32]; /// ???????????????????? int nConfidence; /// ?????,?????????????? 0~100 ENUM_VAGEOBJECT_ACTION emAction; /// ????N????????? NET_RECT stuBoundingBox; /// ?????? ????????????????????????????????0~8191??????? NET_RECT stuOriginalBoundingBox; /// ?????? ???????? NET_POINT stuCenter; /// ???????????????????????, ??????????? BOOL bMainColor; /// ????????????? BYTE byMainColor[4]; /// ??????????, rgb NET_VAGEOBJECT_IMAGE stuImage; /// ?????? NET_TIME_EX stuCurrentTimeStamp; /// ????????????????????????????????????????????????jpeg???????????????????????????? BYTE byReserved[1024]; /// ??????? }NET_VAGEOBJECT_INFO; ///@brief ??????? EVENT_IVS_ANYTHING_DETECT ?????????????? ????????????????? typedef struct tagDEV_EVENT_ANYTHING_DETECT_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID EM_CLASS_TYPE emClassType; /// ??????????????? UINT nRuleId; /// ????????????? UINT nPresetID; /// ?????????????????1??? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? int nObjectNum; /// ???????????? NET_VAGEOBJECT_INFO *pstuObjects; /// ???????????? NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE bReserved[1020-POINTERSIZE]; /// ??????? }DEV_EVENT_ANYTHING_DETECT_INFO; ///@brief ????????? typedef struct tagNET_OBJECT_INFO { NET_RECT stuBoundingBox; /// ????????(8192?????) BYTE bReserved[256]; /// ??????? }NET_OBJECT_INFO; ///@brief ??????? typedef enum tagEM_ABNORMAL_OBJECT_TYPE { ABNORMAL_OBJECT_TYPE_UNKNOWN, /// ??? ABNORMAL_OBJECT_TYPE_PIG, /// ?? }EM_ABNORMAL_OBJECT_TYPE; ///@brief ????? typedef enum tagEM_OBJCET_ABNORMAL_TYPE { EM_OBJECT_ABNORMAL_TYPE_UNKNOWN, /// ??? EM_OBJECT_ABNORMAL_TYPE_RETROGRADE,/// ??????? }EM_OBJECT_ABNORMAL_TYPE; ///@brief ??????? EVENT_IVS_OBJECT_ABNORMAL ??????????? ????????????????? typedef struct tagDEV_EVENT_OBJECT_ABNORMAL_INFO { int nChannelID; /// ????? int nAction; /// 0-???? 1-??? 2-???? char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID NET_EVENT_IMAGE_OFFSET_INFO stuSceneImage; /// ????????? EM_CLASS_TYPE emClassType; /// ??????????????? unsigned short nAreaID; /// ????ID(???????????????????ID) unsigned short nPresetID; /// ??????,??1??? NET_OBJECT_INFO stuObjectInfo[64]; /// ?????? int nObjectInfoNum; /// ?????????? EM_ABNORMAL_OBJECT_TYPE emObjectType; /// ??????? EM_OBJECT_ABNORMAL_TYPE emAbnormalType; /// ????? BYTE bReserved[1020]; /// ??????? }DEV_EVENT_OBJECT_ABNORMAL_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_SPEED_CHANGE_DETECTION ????????? ????????????????? typedef struct tagDEV_EVENT_TRAFFIC_SPEED_CHANGE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; char szName[128]; /// ??????? double PTS; /// ????(????:????) NET_TIME_EX UTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleId; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nLane; /// ????????? int nSpeedNew; /// ???????, ????: km/h int nSpeedOld; /// ????????, ????: km/h NET_IMAGE_INFO_EX3 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? BYTE byReserved[1020-POINTERSIZE]; /// ??????? } DEV_EVENT_TRAFFIC_SPEED_CHANGE_DETECTION_INFO; ///@brief ??????????????????? typedef struct tagNET_FOLLOW_CAR_ALARM_CUSTOM_INFO { NET_GPS_STATUS_INFO stuGPS; /// GPS??? BYTE byReserved[256]; /// ??????? }NET_FOLLOW_CAR_ALARM_CUSTOM_INFO; ///@brief ????????????????? typedef enum tagNET_FOLLOW_CAR_ALARM_IMAGE_TYPE { EM_FOLLOW_CAR_ALARM_IMAGE_TYPE_UNKNOWN = -1, /// ??? EM_FOLLOW_CAR_ALARM_IMAGE_TYPE_PANORAMA, /// ???? EM_FOLLOW_CAR_ALARM_IMAGE_TYPE_SMALL_PICTURE, /// ??? }EM_FOLLOW_CAR_ALARM_IMAGE_TYPE; ///@brief ???????????????? typedef struct tagNET_FOLLOW_CAR_ALARM_IMAGE_INFO { UINT nGroupID; /// ???????????GroupID??? EM_FOLLOW_CAR_ALARM_IMAGE_TYPE emImageType; /// ?????? DWORD dwoffset; /// ???????????????????,????:??? DWORD dwLength; /// ??????,????:??? BYTE byReserved[256]; /// ??????? }NET_FOLLOW_CAR_ALARM_IMAGE_INFO; ///@brief ??????? EVENT_IVS_FOLLOW_CAR_ALARM ??????????? ????????????????? typedef struct tagDEV_EVENT_FOLLOW_CAR_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1???????????????,2????????????????; NET_TIME_EX UTC; /// ???????????? int nImageInfoNum; /// ????????????? NET_FOLLOW_CAR_ALARM_IMAGE_INFO stuImageInfo[8]; /// ????????? NET_FOLLOW_CAR_ALARM_CUSTOM_INFO stuCustomInfo; /// ???????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? BYTE byReserved[1024]; /// ??????? }DEV_EVENT_FOLLOW_CAR_ALARM_INFO; ///@brief CLIENT_SetSDKLocalCfg/CLIENT_GetSDKLocalCfg ????????????????? typedef enum tagNET_EM_SDK_INIT_CFG_TYPE { NET_SDK_LOCAL_CFG_TYPE_OPENSSL, /// openssl????????????????? NET_CONFIG_OPENSSL_INFO NET_SDK_LOCAL_CFG_TYPE_STREAMCONVERTOR, /// StreamConvertor??????????????????? NET_CONFIG_STREAMCONVERTOR_INFO NET_SDK_LOCAL_CFG_TYPE_AVNETSDK, /// avnetsdk????????????????? NET_CONFIG_AVNETSDK_INFO NET_SDK_LOCAL_CFG_TYPE_NTLS_VERIFY, /// ????TLS??????????????????? NET_CONFIG_NTLS_VERIFY_INFO NET_SDK_LOCAL_CFG_TYPE_HARD_ENGINE, /// ???????????????????????????? NET_CONFIG_HARD_ENGINE_INFO }NET_EM_SDK_LOCAL_CFG_TYPE; ///@brief openssl????????? typedef struct tagNET_CONFIG_OPENSSL_INFO { char szSsleay[MAX_PATH]; ///openssl????? ///windows?? ?ssleay32.dll?????????????????????????NetSDK.dll???????????? ///linux?? ?libssl.so ????????????????????????????????????? char szLibeay[MAX_PATH]; ///openssl????? ///windows?? ?libeay32.dll?????????????????????????NetSDK.dll???????????? ///linux?? ?libcrypto.so????????????????????????????????????? BYTE bReserved[504]; ///??????? }NET_CONFIG_OPENSSL_INFO; ///@brief StreamConvertor??????????? typedef struct tagNET_CONFIG_STREAMCONVERTOR_INFO { char szStreamConvertor[MAX_PATH]; ///StreamConvertor???? ///Windows: ?StreamConvertor.dll ?????????????????????????dhnetsdk.dll???????????? ///Linux: ?libStreamConvertor.so ?????????????????????????libdhnetsdk.so???????????? ///Mac OS: ?libStreamConvertor.so/libStreamConvertor.dylib ?????????????????????????libdhnetsdk.so???????????? /// Mac OS?????????????libStreamConvertor.so??????????????????????????libStreamConvertor.dylib BYTE bReserved[764]; ///??????? }NET_CONFIG_STREAMCONVERTOR_INFO ; ///@brief avnetsdk????????? typedef struct tagNET_CONFIG_AVNETSDK_INFO { char szAvnetsdk[MAX_PATH]; ///avnetsdk?? ///Windows: ?avnetsdk.dll ?????????????????????????dhnetsdk.dll???????????? ///Linux: ?avnetsdk.so ?????????????????????????libdhnetsdk.so???????????? ///Mac OS: ?avnetsdk.so ?????????????????????????libdhnetsdk.so???????????? BYTE bReserved[764]; ///??????? }NET_CONFIG_AVNETSDK_INFO; ///@brief ????TLS?????????????? typedef struct tagNET_CONFIG_NTLS_VERIFY_INFO { char szCACertFile[MAX_PATH]; /// ???????????????? char szSignKeyfile[MAX_PATH]; /// ???????????? char szSignCertfile[MAX_PATH]; /// ????????????? char szEncKeyfile[MAX_PATH]; /// ????????????? char szEncCertfile[MAX_PATH]; /// ?????????????? BYTE bReserved[748]; ///??????? }NET_CONFIG_NTLS_VERIFY_INFO; ///@brief ???????????????????? typedef struct tagNET_CONFIG_HARD_ENGINE_INFO { char szHardEngine[MAX_PATH]; /// ???????????????? BYTE bReserved[764]; /// ??????? }NET_CONFIG_HARD_ENGINE_INFO; ///@brief ????????? typedef struct tagNETSDK_INIT_PARAM { int nThreadNum; /// ???NetSDK????????????????, ????0?, ?????????? BYTE bReserved[1024]; /// ??????? }NETSDK_INIT_PARAM, *LPNETSDK_INIT_PARAM; ///@brief ???????????? typedef struct tagNET_CONFIG_RETURN_INFO { DWORD dwSize; int nRetCnt; /// ????????????????????? } NET_CONFIG_RETURN_INFO; ///@brief ???????? typedef enum tagNET_EM_OSD_BLEND_TYPE { NET_EM_OSD_BLEND_TYPE_UNKNOWN, ///??????????? NET_EM_OSD_BLEND_TYPE_MAIN, ///??????????? NET_EM_OSD_BLEND_TYPE_EXTRA1, ///???????????1 NET_EM_OSD_BLEND_TYPE_EXTRA2, ///???????????2 NET_EM_OSD_BLEND_TYPE_EXTRA3, ///???????????3 NET_EM_OSD_BLEND_TYPE_SNAPSHOT, ///??????? NET_EM_OSD_BLEND_TYPE_PREVIEW, ///??????????? }NET_EM_OSD_BLEND_TYPE; ///@brief ???????????? typedef enum tagEM_TITLE_TEXT_ALIGNTYPE { EM_TEXT_ALIGNTYPE_INVALID, /// ?????????? EM_TEXT_ALIGNTYPE_LEFT, /// ????? EM_TEXT_ALIGNTYPE_XCENTER, /// X?????????? EM_TEXT_ALIGNTYPE_YCENTER, /// Y?????????? EM_TEXT_ALIGNTYPE_CENTER, /// ???? EM_TEXT_ALIGNTYPE_RIGHT, /// ????? EM_TEXT_ALIGNTYPE_TOP, /// ??????????? EM_TEXT_ALIGNTYPE_BOTTOM, /// ?????????? EM_TEXT_ALIGNTYPE_LEFTTOP, /// ???????????? EM_TEXT_ALIGNTYPE_CHANGELINE, /// ???????? }EM_TITLE_TEXT_ALIGNTYPE; ///@brief ???????-??????? typedef struct tagNET_OSD_CHANNEL_TITLE { DWORD dwSize; NET_EM_OSD_BLEND_TYPE emOsdBlendType; /// ??????????????????????????????????? BOOL bEncodeBlend; /// ?????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ????, ??????[0~8191], ?????left??top?, ??(left,top)???(right,bottom)???????????? EM_TITLE_TEXT_ALIGNTYPE emTextAlign; /// ???????? } NET_OSD_CHANNEL_TITLE; ///@brief ???????-?????? typedef struct tagNET_OSD_TIME_TITLE { DWORD dwSize; NET_EM_OSD_BLEND_TYPE emOsdBlendType; /// ??????????????????????????????????? BOOL bEncodeBlend; /// ?????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ????, ??????[0~8191], ?????left??top?, ??(left,top)???(right,bottom)???????????? BOOL bShowWeek; /// ?????????? } NET_OSD_TIME_TITLE; ///@brief ?????????? typedef enum tagNET_EM_TITLE_TYPE { NET_EM_TITLE_UNKNOWN, /// ??? NET_EM_TITLE_RTINFO, /// ???????? NET_EM_TITLE_CUSTOM, /// ????????????????? NET_EM_TITLE_TITLE, /// ????? NET_EM_TITLE_CHECK, /// ?????? NET_EM_TITLE_SPEEDOMETER, /// ?????? NET_EM_TITLE_GEOGRAPHY, /// ??????? NET_EM_TITLE_ATMCARDINFP, /// ATM??????? NET_EM_TITLE_CAMERAID, /// ???????? }NET_EM_TITLE_TYPE; ///@brief ???????-??????????? typedef struct tagNET_CUSTOM_TITLE_INFO { BOOL bEncodeBlend; /// ?????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ????, ??????[0~8191], ?????left??top?, ??(left,top)???(right,bottom)???????????? char szText[CUSTOM_TITLE_LEN]; /// ???????? NET_EM_TITLE_TYPE emTitleType; /// ?????????? EM_TITLE_TEXT_ALIGNTYPE emTextAlign; /// ???????? BYTE byReserved[504]; /// ??????? } NET_CUSTOM_TITLE_INFO; ///@brief ???????-???????? typedef struct tagNET_OSD_CUSTOM_TITLE { DWORD dwSize; NET_EM_OSD_BLEND_TYPE emOsdBlendType; /// ??????????????????????????????????? int nCustomTitleNum; /// ???????????? NET_CUSTOM_TITLE_INFO stuCustomTitle[MAX_CUSTOM_TITLE_NUM]; /// ???????? } NET_OSD_CUSTOM_TITLE; ///@brief ??????????????? typedef struct tagNET_OSD_CUSTOM_TITLE_TEXT_ALIGN { DWORD dwSize; int nCustomTitleNum; /// ???????????? EM_TITLE_TEXT_ALIGNTYPE emTextAlign[MAX_CUSTOM_TITLE_NUM]; /// ???????????????? }NET_OSD_CUSTOM_TITLE_TEXT_ALIGN; ///@brief OSD??????????? typedef enum tagEM_OSD_FONT_SOLUTION { EM_OSD_FONT_SOLUTION_UNKNOWN, /// ??? EM_OSD_FONT_SOLUTION_DFAULT, /// ??????? "default-font" EM_OSD_FONT_SOLUTION_SIMKAI, /// ???? "simkai" EM_OSD_FONT_SOLUTION_SIMSUN, /// ????"simsun" }EM_OSD_FONT_SOLUTION; ///@brief ???????-??????????? typedef struct tagNET_OSD_COMM_INFO { DWORD dwSize; double fFontSizeScale; ///????????????????? ///??fFontSizeScale??0?,nFontSize???????? ///??fFontSizeScale=0?,nFontSize?????? ///??????fFontSizeScale=1.0 ///??????????????????? ///??????????????????????????0??nFontSize??????? int nFontSize; ///????????????????????????,???? px, ???24. ///??fFontSizeScale??????? int nFontSizeExtra1; ///???????????1?????????????,???? px int nFontSizeExtra2; ///???????????2?????????????,???? px int nFontSizeExtra3; ///???????????3?????????????,???? px int nFontSizeSnapshot; ///??????????????????????, ???? px int nFontSizeMergeSnapshot; ///????????????????????????,???? px EM_OSD_FONT_SOLUTION emFontSolution; /// ????????????????????? EM_OSD_FONT_SOLUTION emFontSolutionExtra1; /// ???????????1?????????? EM_OSD_FONT_SOLUTION emFontSolutionExtra2; /// ???????????2?????????? EM_OSD_FONT_SOLUTION emFontSolutionExtra3; /// ???????????3?????????? EM_OSD_FONT_SOLUTION emFontSolutionSnapshot; /// ????????????????????? EM_OSD_FONT_SOLUTION emFontSolutionMergeSnapshot; /// ?????????????????????? } NET_OSD_COMM_INFO; ///@brief ???????-?????????? typedef struct tagNET_OSD_PTZZOOM_INFO { DWORD dwSize; BOOL bMainBlend; /// ????????????? BOOL bPreviewBlend; /// ?????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ????, ??????0~8191, ?????left??top?, ??(left,top)???(right,bottom)???????????? int nDisplayTime; /// ?????????????0???????? } NET_OSD_PTZZOOM_INFO; ///@brief ???????-GPS??????????? typedef struct tagNET_OSD_GPS_TITLE { DWORD dwSize; BOOL bEncodeBlend; ///?????????????????? }NET_OSD_GPS_TITLE; #define MAX_COUNT_PLANE 32 /// ???????????????? ///@brief ????????????????????OSD???? typedef struct tagNET_STATPLAN_INFO { int nPlanID; /// ??????????? BOOL bEncodeBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? EM_TITLE_TEXT_ALIGNTYPE emTextAlign; /// ????? NET_RECT stuRect; /// ????, ??????0~8191 BOOL bShowEnterNum; /// ?????????????? BOOL bShowExitNum; /// ???????????? BYTE byReserved[128]; /// ??????? } NET_STATPLAN_INFO; ///@brief ?????????????OSD???? typedef struct tagNET_OSD_NUMBER_STATPLAN { DWORD dwSize; int nRetPlanCount; /// ????????????? NET_STATPLAN_INFO stuStatplanInfo[MAX_COUNT_PLANE]; /// OSD???? } NET_OSD_NUMBER_STATPLAN; ///@brief ????????? typedef enum tatNET_EM_AUDIO_FORAMT { EM_AUDIO_FORMAT_UNKNOWN, /// unknown EM_AUDIO_FORMAT_G711A, /// G711a EM_AUDIO_FORMAT_PCM, /// PCM EM_AUDIO_FORMAT_G711U, /// G711u EM_AUDIO_FORMAT_AMR, /// AMR EM_AUDIO_FORMAT_AAC, /// AAC EM_AUDIO_FORMAT_G726, /// G.726 EM_AUDIO_FORMAT_G729, /// G.729 EM_AUDIO_FORMAT_ADPCM, /// ADPCM EM_AUDIO_FORMAT_MPEG2, /// MPEG2 EM_AUDIO_FORMAT_MPEG2L2, /// MPEG2-Layer2 EM_AUDIO_FORMAT_OGG, /// OGG EM_AUDIO_FORMAT_MP3, /// MP3 EM_AUDIO_FORMAT_G7221, /// G.722.1 } NET_EM_AUDIO_FORMAT; ///@brief ????????? typedef enum tagNET_EM_VIDEO_COMPRESSION { EM_VIDEO_FORMAT_UNKNOWN = -1, /// ??? EM_VIDEO_FORMAT_MPEG4, /// MPEG4 EM_VIDEO_FORMAT_MS_MPEG4, /// MS-MPEG4 EM_VIDEO_FORMAT_MPEG2, /// MPEG2 EM_VIDEO_FORMAT_MPEG1, /// MPEG1 EM_VIDEO_FORMAT_H263, /// H.263 EM_VIDEO_FORMAT_MJPG, /// MJPG EM_VIDEO_FORMAT_FCC_MPEG4, /// FCC-MPEG4 EM_VIDEO_FORMAT_H264, /// H.264 EM_VIDEO_FORMAT_H265, /// H.265 EM_VIDEO_FORMAT_SVAC, /// SVAC } NET_EM_VIDEO_COMPRESSION; ///@brief ?????????? typedef enum tagNET_EM_BITRATE_CONTROL { EM_BITRATE_CBR, /// ??????? EM_BITRATE_VBR, /// ??????? } NET_EM_BITRATE_CONTROL; ///@brief ???? typedef enum tagNET_EM_IMAGE_QUALITY { EM_IMAGE_QUALITY_Q10 = 1, /// ???????10% EM_IMAGE_QUALITY_Q30, /// ???????30% EM_IMAGE_QUALITY_Q50, /// ???????50% EM_IMAGE_QUALITY_Q60, /// ???????60% EM_IMAGE_QUALITY_Q80, /// ???????80% EM_IMAGE_QUALITY_Q100, /// ???????100% } NET_EM_IMAGE_QUALITY; ///@brief H264 ?????? typedef enum tagNET_EM_H264_PROFILE_RANK { EM_PROFILE_UNKNOWN, /// ??????? EM_PROFILE_BASELINE = 1, /// ??I/P????????progressive(???????)??CAVLC EM_PROFILE_MAIN, /// ??I/P/B??????progressiv??interlaced????CAVLC??CABAC EM_PROFILE_EXTENDED, /// ??I/P/B/SP/SI????????progressive(???????)??CAVLC EM_PROFILE_HIGH, /// ??FRExt??Main_Profile????????????8x8 intra prediction(8x8 ??????), custom /// quant(?????????), lossless video coding(???????????), ?????yuv??? }NET_EM_H264_PROFILE_RANK; ///@brief ???????? typedef enum tagNET_EM_FORMAT_TYPE { EM_FORMAT_TYPE_UNKNOWN, /// ??????? /*??????*/ EM_FORMAT_MAIN_NORMAL, /// ????????????? EM_FORMAT_MAIN_MOVEEXAMINE, /// ????????????? EM_FORMAT_MAIN_ALARM, /// ?????????????? /*??????*/ EM_FORMAT_EXTRA1, /// ??????1 EM_FORMAT_EXTRA2, /// ??????2 EM_FORMAT_EXTRA3, /// ??????3 } NET_EM_FORMAT_TYPE; ///@brief ????? typedef enum tagNET_EM_PACK_TYPE { EM_PACK_UNKOWN, /// UNKOWN EM_PACK_DHAV, /// DHAV EM_PACK_PS, /// ps } NET_EM_PACK_TYPE; ///@brief ??(??)??????????(f6/f5/bin) typedef struct tagNET_ENCODE_VIDEO_INFO { DWORD dwSize; NET_EM_FORMAT_TYPE emFormatType; /// ????????,??????????????????? BOOL bVideoEnable; /// ?????? NET_EM_VIDEO_COMPRESSION emCompression; /// ????????? int nWidth; /// ??????? int nHeight; /// ?????? NET_EM_BITRATE_CONTROL emBitRateControl; /// ?????????? int nBitRate; /// ???????(kbps) float nFrameRate; /// ?????? int nIFrameInterval; /// I????(1-100)??????50????49??B???P??????????I??? NET_EM_IMAGE_QUALITY emImageQuality; /// ??????? } NET_ENCODE_VIDEO_INFO; ///@brief ??(??)???????????????????(f6/f5) typedef struct tagNET_ENCODE_VIDEO_PACK_INFO { DWORD dwSize; NET_EM_FORMAT_TYPE emFormatType; /// ????????,??????????????????? NET_EM_PACK_TYPE emPackType; /// ????? } NET_ENCODE_VIDEO_PACK_INFO; ///@brief ??(??)??????????SVC????(f6) typedef struct tagNET_ENCODE_VIDEO_SVC_INFO { DWORD dwSize; NET_EM_FORMAT_TYPE emFormatType; /// ????????,??????????????????? int nSVC; /// SVC-T???? } NET_ENCODE_VIDEO_SVC_INFO; ///@brief ??(??)??????????profile????(f6/bin)???? typedef struct tagNET_ENCODE_VIDEO_PROFILE_INFO { DWORD dwSize; NET_EM_FORMAT_TYPE emFormatType; /// ????????,??????????????????? NET_EM_H264_PROFILE_RANK emProfile; /// H.264?????? } NET_ENCODE_VIDEO_PROFILE_INFO; ///@brief ??(??)????????????????? typedef struct tagNET_ENCODE_AUDIO_COMPRESSION_INFO { DWORD dwSize; BOOL bAudioEnable; /// ?????? NET_EM_FORMAT_TYPE emFormatType; /// ????????,??????????????????? NET_EM_AUDIO_FORMAT emCompression; /// ???????? } NET_ENCODE_AUDIO_COMPRESSION_INFO; ///@brief ??(??)?????????????????????? typedef struct tagNET_ENCODE_AUDIO_INFO { DWORD dwSize; NET_EM_FORMAT_TYPE emFormatType; /// ????????,??????????????????? int nDepth; /// ?????????? int nFrequency; /// ?????????? int nMode; /// ????????,??????????????I??? /// "AMR"???????? /// 0: 4.75kbps, /// 1: 5.15 kbps, /// 2: 5.9 kbps, /// 3: 6.7 kbps, /// 4: 7.4 kbps, /// 5: 7.95 kbps, /// 6: 10.2 kbps, /// 7: 12.2 kbps, /// G726???????? /// 0: 40kbps(???) /// 1: 16kbps /// 2: 24kbps /// 3: 32kbps /// ????: ??????? int nFrameType; /// ????????, 0-DHAV, 1-PS int nPacketPeriod; /// ??????????, ms } NET_ENCODE_AUDIO_INFO; ///@brief ?????? typedef enum tagNET_EM_SNAP_TYPE { EM_SNAP_UNKNOWN, /// ??????? EM_SNAP_NORMAL, /// ????? EM_SNAP_MOVEEXAMINE, /// ?????? EM_SNAP_ALARM, /// ?????? } NET_EM_SNAP_TYPE; ///@brief ?????? typedef struct tagNET_ENCODE_SNAP_INFO { DWORD dwSize; NET_EM_SNAP_TYPE emSnapType; /// ?????? BOOL bSnapEnable; /// ???????? NET_EM_VIDEO_COMPRESSION emCompression; /// ????????? int nWidth; /// ??????? int nHeight; /// ?????? float nFrameRate; /// ?????? int nQualityRange; /// ????????????? NET_EM_IMAGE_QUALITY emImageQuality; /// ??????? } NET_ENCODE_SNAP_INFO; ///@brief ????????? typedef struct tagNET_ENCODE_SNAP_TIME_INFO { DWORD dwSize; short shPicTimeInterval; /// ??????????,???????,????????????????????30???? BYTE bPicIntervalHour; /// ??????????????? DWORD dwTrigPicIntervalSecond; /// ??????????????????????? ?????? } NET_ENCODE_SNAP_TIME_INFO; ///@brief ??????????????????? typedef enum tagNET_EM_CONFIG_TYPE { NET_EM_CONFIG_DAYTIME, /// ???? NET_EM_CONFIG_NIGHT, /// ??? NET_EM_CONFIG_NORMAL, /// ??? NET_EM_CONFIG_ADAPTER, /// ?????????SDK??????????????????????????????? /// ????????????????NET_VIDEOIN_IMAGE_INFO???? } NET_EM_CONFIG_TYPE; ///@brief ??????????? typedef struct tagNET_ENCODE_CHANNELTITLE_INFO { DWORD dwSize; char szChannelName[MAX_CHANNEL_NAME_LEN]; /// ??????? } NET_ENCODE_CHANNELTITLE_INFO; ///@brief ????? typedef enum tagEM_DELAY_MODE { EM_DELAY_MODE_UNKNOWN = -1, /// ???,???????????? EM_DELAY_MODE_LOW_DELAY, /// ????? EM_DELAY_MODE_HIGH_DELAY, /// ????? EM_DELAY_MODE_HIGH_SYNCHRO, /// ???????? }EM_DELAY_MODE; ///@brief ?????????????? typedef struct tagNET_ENCODE_DELAY_MODE_INFO { DWORD dwSize; /// ??????? EM_DELAY_MODE emDelayMode; /// ????? }NET_ENCODE_DELAY_MODE_INFO; ///@brief ????? typedef enum tagEM_SIGNAL_FORMAT { EM_SIGNAL_FORMAT_UNKNOWN, /// ??? EM_SIGNAL_FORMAT_HDMI, /// "HDMI" EM_SIGNAL_FORMAT_VGA, /// "VGA" }EM_SIGNAL_FORMAT; ///@brief ???????????????? typedef struct tagNET_ENCODE_SIGNAL_FORMAT_INFO { DWORD dwSize; /// ??????? EM_SIGNAL_FORMAT emSignalFormat; /// ????? }NET_ENCODE_SIGNAL_FORMAT_INFO; ///@brief ??????????? typedef enum tagNET_EM_AUDIOIN_SOURCE_TYPE { NET_EM_AUDIOIN_SOURCE_UNKNOW, /// ??? NET_EM_AUDIOIN_SOURCE_COAXIAL, /// Coaxial NET_EM_AUDIOIN_SOURCE_BNC, /// BNC NET_EM_AUDIOIN_SOURCE_HDCVI_BNC, /// HDCVI_BNC NET_EM_AUDIOIN_SOURCE_LINEIN, /// LineIn NET_EM_AUDIOIN_SOURCE_LINEIN1, /// LineIn1 NET_EM_AUDIOIN_SOURCE_LINEIN2, /// LineIn2 NET_EM_AUDIOIN_SOURCE_LINEIN3, /// LineIn3 NET_EM_AUDIOIN_SOURCE_MIC, /// Mic NET_EM_AUDIOIN_SOURCE_MIC1, /// Mic1 NET_EM_AUDIOIN_SOURCE_MIC2, /// Mic2 NET_EM_AUDIOIN_SOURCE_MIC3, /// Mic3 NET_EM_AUDIOIN_SOURCE_MICOUT, /// MicOut NET_EM_AUDIOIN_SOURCE_REMOTE, /// Remote NET_EM_AUDIOIN_SOURCE_REMOTE1, /// Remote1 NET_EM_AUDIOIN_SOURCE_REMOTE2, /// Remote2 NET_EM_AUDIOIN_SOURCE_REMOTE3, /// Remote3 } NET_EM_AUDIOIN_SOURCE_TYPE; ///@brief ??????????????? typedef struct tagNET_ENCODE_AUDIO_SOURCE_INFO { DWORD dwSize; int nMaxAudioInSource; /// ?????????????? int nRetAudioInSource; /// ????????????????? NET_EM_AUDIOIN_SOURCE_TYPE emAudioInSource[24]; /// ????????? } NET_ENCODE_AUDIO_SOURCE_INFO; ///@brief ????????????? typedef struct tagNET_AUDIOIN_DENOISE_INFO { DWORD dwSize; BOOL bEnable; /// ??????? } NET_AUDIOIN_DENOISE_INFO; ///@brief ??????????????? typedef struct tagNET_AUDIOIN_VOLUME_INFO { DWORD dwSize; int nVolume; /// ??????????? } NET_AUDIOIN_VOLUME_INFO; ///@brief ?????????????? typedef struct tagNET_AUDIOOUT_VOLUME_INFO { DWORD dwSize; int nVolume; /// ?????????? } NET_AUDIOOUT_VOLUME_INFO; ///@brief ???????? typedef enum tagEM_AUDIOOUT_MODE { EM_AUDIOOUT_MODE_UNKNOWN, /// ??? EM_AUDIOOUT_MODE_SUBCARD, /// ????????? EM_AUDIOOUT_MODE_MAINCARD, /// ?????????? EM_AUDIOOUT_MODE_ALL, /// ????? } EM_AUDIOOUT_MODE; ///@brief ???????????? typedef struct tagNET_AUDIOOUT_MODE_INFO { DWORD dwSize; EM_AUDIOOUT_MODE emAudioOutMode; /// ???????? } NET_AUDIOOUT_MODE_INFO; ///@brief ?????? typedef enum tagNET_EM_SWITCH_MODE { NET_EM_SWITCH_MODE_WIGHT, /// ?????????????????????? NET_EM_SWITCH_MODE_LIGHT, /// ???????????? NET_EM_SWITCH_MODE_TIME, /// ??????????? NET_EM_SWITCH_MODE_NIGHT, /// ?????????????????????? NET_EM_SWITCH_MODE_NORMAL, /// ?????????? NET_EM_SWITCH_MODE_ICR, /// ??ICR(???????????)??????????? } NET_EM_SWITCH_MODE; ///@brief CLIENT_GetDevCaps NET_VIDEOIN_MODE_ICR_CAPS ??? typedef struct tagNET_IN_VIDEOIN_MODE_CAPS { DWORD dwSize; /// ??????? int nChannel; /// ????? }NET_IN_VIDEOIN_MODE_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_VIDEOIN_MODE_ICR_CAPS ??????? typedef struct tagNET_OUT_VIDEOIN_MODE_CAPS { DWORD dwSize; BOOL bSwitchByDayNight; /// ??????ICR????????????????VideoInMode?????Mode??????2 ???false,????? }NET_OUT_VIDEOIN_MODE_CAPS; ///@brief ???????/??????? typedef struct tagNET_SUN_TIME { int nHour; /// ? int nMinute; /// ?? int nSecond; /// ?? } NET_SUN_TIME; ///@brief ?????????? typedef struct tagNET_VIDEOIN_SWITCH_MODE_INFO { DWORD dwSize; NET_EM_SWITCH_MODE emSwitchMode; /// ?????? /*????????????????????????????????????????????????,emSwitchMode?NET_EM_SWITCH_MODE_TIME??????*/ NET_SUN_TIME stuSunRiseTime; /// ?????????? NET_SUN_TIME stuSunSetTime; /// ??????????? } NET_VIDEOIN_SWITCH_MODE_INFO; ///@brief ????? typedef enum tagEM_COLOR_STYLE_TYPE { EM_COLOR_STYLE_UNKNOWN, /// ??? EM_COLOR_STYLE_GENTLE, /// ??? EM_COLOR_STYLE_STANDARD, /// ??? EM_COLOR_STYLE_FLAMBOYANT, /// ???? } EM_COLOR_STYLE_TYPE; ///@brief ?????????????? typedef struct tagNET_VIDEOIN_COLOR_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? int nBrightness; /// ????0-100 int nContrast; /// ????0-100 int nSaturation; /// ?????0-100 int nGamma; /// ????0-100 EM_COLOR_STYLE_TYPE emColorStyle; /// ????? int nHue; /// ????0-100 int nChromaSuppress; /// ??????????0-100 DH_TSECT stuTimeSection; /// ????????? } NET_VIDEOIN_COLOR_INFO; ///@brief LED???????? typedef enum tagNET_EM_FLIP_MODE { NET_EM_FLIP_MODE_UNKNOWN = 0, /// ??? NET_EM_FLIP_MODE_MANUAL, /// ??? NET_EM_FLIP_MODE_AUTO, /// ??? }NET_EM_FLIP_MODE; ///@brief ??????????????????,??????NET_EM_CFG_VIDEO_IMAGE_CTRL typedef struct tagNET_EM_CFG_VIDEO_IMAGE_CTRL_INFO { DWORD dwSize; BOOL bMirror; /// ?????????????? BOOL bFlip; /// ?????????180??????? BOOL bFreeze; /// ???????????? BOOL bVerticalFlip; /// ???????????180????? BOOL bHorizontalFlip; /// ??????????180????? int nRotate90; /// 90???????????? 0-???????1-????90??2-?????90?? int nStable; /// ?????????????????? 0???????????? 1-?????????????2-?????????????4-??????????? int nStableSensitivity; /// ??????????????????, ??????[0-100] NET_EM_FLIP_MODE emFlipMode; /// ????T??? }NET_EM_CFG_VIDEO_IMAGE_CTRL_INFO; ///@brief ??????????? typedef struct tagNET_VIDEOIN_IMAGE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? BOOL bMirror; /// ?????????????? BOOL bFlip; /// ?????????T????? int nRotate90; /// 0-???????1-????90??2-?????90?? } NET_VIDEOIN_IMAGE_INFO; ///@brief ???????? typedef enum tagNET_EM_STABLE_TYPE { NET_EM_STABLE_OFF, /// ??? NET_EM_STABLE_ELEC, /// ??????? NET_EM_STABLE_LIGHT, /// ??????? NET_EM_STABLE_CONTORL = 4, /// ??????? } NET_EM_STABLE_TYPE; ///@brief ?????????? typedef struct tagNET_VIDEOIN_STABLE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_STABLE_TYPE emStableType; /// ???????? } NET_VIDEOIN_STABLE_INFO; ///@brief ?????????? typedef struct tagNET_VIDEOIN_IRISAUTO_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? BOOL bIrisAuto; ///???????????? } NET_VIDEOIN_IRISAUTO_INFO; ///@brief ?????????? typedef struct tagNET_VIDEOIN_IMAGEENHANCEMENT_INFO { DWORD dwSize; BOOL bEnable; /// ??? int nLevel; /// ????????? }NET_VIDEOIN_IMAGEENHANCEMENT_INFO; ///@brief ????????????? typedef enum tagEM_DOUBLE_EXPOSURE_TYPE { EM_DOUBLE_EXPOSURE_UNKNOWN = -1, /// ??? EM_DOUBLE_EXPOSURE_NOT_SUPPORT, /// ????? EM_DOUBLE_EXPOSURE_SUPPORT_FULL_FRAM, /// ??????????????????????????????????? EM_DOUBLE_EXPOSURE_SUPPORT_HALF_FRAM, /// ???????????????????????????????????????? EM_DOUBLE_EXPOSURE_ALL, /// ????????????????? } EM_DOUBLE_EXPOSURE_TYPE; ///@brief ?????????????? typedef struct tagNET_VIDEOIN_EXPOSURE_NORMAL_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_EXPOSURE_MODE emExposureMode; /// ????? int nAntiFlicker; /// ?????0-Outdoor 1-50Hz????? 2-60Hz????? int nCompensation; /// ?????0-100 int nGain; /// ????? int nGainMin; /// ????????0-100 int nGainMax; /// ????????0-100 int nExposureIris; /// ???????????????????????0-100 double dbExposureValue1; /// ??????????????????????????????,?????????????0.1ms~80ms double dbExposureValue2; /// ?????????????,?????????????0.1ms~80ms???????????"ExposureValue1"?? BOOL bIrisAuto; /// ????????? EM_DOUBLE_EXPOSURE_TYPE emDoubleExposure; /// ????????????? } NET_VIDEOIN_EXPOSURE_NORMAL_INFO; ///@brief ??????????????? typedef struct tagNET_VIDEOIN_EXPOSURE_OTHER_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? BOOL bSlowShutter; /// ????????? int nSlowSpeed; /// ?????????? int nSlowAutoExposure; /// ????? int nRecoveryTime; /// 0-???????????????????????????????? int nIrisMin; /// ????????????SupportIrisRange?????true???????,0~100 ??????????????????Iris???? int nIrisMax; /// ???????????,0~100,????????"IrisMin"??????????????????????Iris???? } NET_VIDEOIN_EXPOSURE_OTHER_INFO; ///@brief ?????????????? typedef struct tagNET_VIDEOIN_EXPOSURE_SHUTTER_INFO { DWORD dwSize; BOOL bAutoSyncPhase; /// ?????????????? float fShutter; /// ???????AutoSyncPhase?true????????????????????0.1ms~80ms?? /// ?????????NET_VIDEOIN_EXPOSURE_NORMAL_INFO????"ExposureValue1"????????"ExposureValue2" int nPhase; /// ?????,??0~360?? } NET_VIDEOIN_EXPOSURE_SHUTTER_INFO; ///@brief ???????? typedef struct tagNET_VIDEOIN_BACKLIGHT_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_BACK_MODE emBlackMode; /// ?????? NET_EM_BLACKLIGHT_MODE emBlackLightMode; /// ???????? NET_RECT stuBacklightRegion; /// ?????????? int nWideDynamicRange; /// ?????? int nGlareInhibition; /// ???????0-100??emBlackMode?NET_EM_BACKLIGHT_MODE_GLAREINHIBITION????? } NET_VIDEOIN_BACKLIGHT_INFO; ///@brief ?????????????????????????????????????????? typedef struct tagNET_VIDEOIN_INTENSITY_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_BACK_INTENSITY_MODE emIntensityMode; /// ????????????????????? int nIntensity; /// SSA??????????0-100, emIntensityMode?NET_EM_INTENSITY_MANUAL????? } NET_VIDEOIN_INTENSITY_INFO; ///@brief ????????? typedef struct tagNET_VIDEOIN_WHITEBALANCE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_WHITEBALANCE_TYPE emWhiteBalanceType; ///??????? int nGainRed; /// ??????????0-100????????"Custom"???????? int nGainBlue; /// ??????????0-100????????"Custom"???????? int nGainGreen; /// ??????????0-100????????"Custom"???????? int nColorTemperature; /// ?????, ??????"CustomColorTemperature"???????? } NET_VIDEOIN_WHITEBALANCE_INFO; ///@brief ????????? typedef enum tagNET_EM_DAYNIGHT_TYPE { NET_EM_DAYNIGHT_COLOR, /// ?????? NET_EM_DAYNIGHT_AUTO, /// ??????????????? NET_EM_DAYNIGHT_WHITEBLACK, /// ?????? } NET_EM_DAYNIGHT_TYPE; ///@brief ????????? typedef struct tagNET_VIDEOIN_DAYNIGHT_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_DAYNIGHT_TYPE emDayNightType; /// ????????? int nDayNightSensitivity; /// ???????????????,????1-3 int nDayNightSwitchDelay; /// ???????????????,??????????2-10 } NET_VIDEOIN_DAYNIGHT_INFO; ///@brief ?????ICR???????????? typedef struct tagNET_VIDEOIN_DAYNIGHT_ICR_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_ICR_TYPE emType; /// ICR???????? } NET_VIDEOIN_DAYNIGHT_ICR_INFO; ///@brief ????? typedef enum tagNET_EM_LIGHTING_MODE { NET_EM_LIGHTING_UNKNOW, /// ????? NET_EM_LIGHTING_MANUAL, /// ????? NET_EM_LIGHTING_AUTO, /// ????? NET_EM_LIGHTING_OFF, /// ????? NET_EM_LIGHTING_ZOOMPRIO, /// ?????????? NET_EM_LIGHTING_TIMING, /// ????????????LightingSchedule???????? NET_EM_LIGHTING_SMARTLIGHT, /// ????????(????????),?????????????????????SmartLighting???? NET_EM_LIGHTING_EXCLUSIVEMANUAL, /// ????????????????????????????????ManualLighting???? NET_EM_LIGHTING_FORCEON, /// ??????(???????????) } NET_EM_LIGHTING_MODE; ///@brief ????????? typedef struct tagNET_VIDEOIN_LIGHTING_INFO { DWORD dwSize; NET_EM_LIGHTING_MODE emLightMode; /// ????? int nCorrection; /// ?????????????????????0-4 int nSensitive; /// ?????????????????????????0-5??????3 int nNearLight; /// ?????????0-100 int nFarLight; /// ????????0-100 } NET_VIDEOIN_LIGHTING_INFO; ///@brief ????? typedef enum tagNET_EM_DEFOG_MODE { NET_EM_DEFOG_UNKNOW, /// ????? NET_EM_DEFOG_OFF, /// ??? NET_EM_DEFOG_AUTO, /// ??? NET_EM_DEFOG_MANAUL, /// ??? }NET_EM_DEFOG_MODE; ///@brief ??????????? typedef enum tagNET_EM_INTENSITY_MODE { NET_EM_INTENSITY_MODE_UNKNOW,///?????? NET_EM_INTENSITY_MODE_AUTO, ///??? NET_EM_INTENSITY_MODE_MANUAL, ///??? }NET_EM_INTENSITY_MODE; ///@brief ??????? typedef struct tagNET_VIDEOIN_DEFOG_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_DEFOG_MODE emDefogMode; /// ????? int nIntensity; /// ???0-100 NET_EM_INTENSITY_MODE emIntensityMode; ///???????? int nLightIntensityLevel; ///?????????(0-15) BOOL bCamDefogEnable; ///????????? (TRUE????FALSE????) } NET_VIDEOIN_DEFOG_INFO; ///@brief ????????? typedef struct tagNET_VIDEOIN_FOCUSMODE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_FOCUS_MODE emFocusMode; /// ????? } NET_VIDEOIN_FOCUSMODE_INFO; ///@brief ????????? typedef enum tagNET_EM_SENSITIVITY_TYPE { NET_EM_SENSITIVITY_HIGH, /// ?? NET_EM_SENSITIVITY_DEFAULT, /// ??? NET_EM_SENSITIVITY_LOW, /// ?? } NET_EM_SENSITIVITY_TYPE; ///@brief ????????????? typedef enum tagNET_EM_IRC_TYPE { NET_EM_IRC_DONOT, /// ?????? NET_EM_IRC_DOIT, /// ???? NET_EM_IRC_AUTO, /// ??????? } NET_EM_IRC_TYPE; ///@brief ?????????? typedef struct tagNET_VIDEOIN_FOCUSVALUE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_SENSITIVITY_TYPE emSensitivity; /// ????????? NET_EM_IRC_TYPE emIRCorrection; /// ??????????? NET_EM_FOCUS_LIMITSELECT_MODE emFocusLimitSelectMode; /// ??????????? int nFocusLimit; /// ??????????????,???????? BOOL bAutoFocusTrace; /// ?????????? } NET_VIDEOIN_FOCUSVALUE_INFO; ///@brief ??????? typedef struct tagNET_VIDEOIN_SHARPNESS_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_SHARPNESS_MODE emSharpnessMode; /// ????? int nSharpness; /// ????0-100?????????? int nLevel; /// ???????????0-100??0????????? } NET_VIDEOIN_SHARPNESS_INFO; ///@brief 3D??????????? typedef enum tagNET_EM_3D_TYPE { NET_EM_3D_UNKONW, /// ??? NET_EM_3D_OFF, /// ??? NET_EM_3D_AUTO, /// ??? } NET_EM_3D_TYPE; ///@brief ??????????? typedef enum tagNET_EM_ALGORITHM_TYPE { NET_EM_ALGORITHM_UNKNOW, /// ??? NET_EM_ALGORITHM_OFF, /// ??? NET_EM_ALGORITHM_MANUAL, /// ??? }NET_EM_ALGORITHM_TYPE; ///@brief ??????????? typedef struct tagNET_DENOISE_ALGORITHM { NET_EM_ALGORITHM_TYPE emAlgorithmType; /// ?????????, NET_EM_ALGORITHM_MANUAL????????????? int nTnfLevel; /// ????? int nSnfLevel; ///?????? BYTE bReserved[256]; /// ??????? } NET_DENOISE_ALGORITHM; ///@brief ?????????? typedef struct tagNET_VIDEOIN_DENOISE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? BOOL b2DEnable; /// 2D??????? int n2DLevel; /// 2D??????0-100, b2DEnable?TRUE????? NET_DENOISE_ALGORITHM stuAlgorithm; /// ??????????? } NET_VIDEOIN_DENOISE_INFO; ///@brief 3D???????? typedef struct tagNET_VIDEOIN_3D_DENOISE_INFO { DWORD dwSize; NET_EM_CONFIG_TYPE emCfgType; /// ????????????????????????? NET_EM_3D_TYPE em3DType; /// 3D??????????? int nAutoLevel; /// 3D????????em3DType?NET_EM_3D_AUTO????? } NET_VIDEOIN_3D_DENOISE_INFO; ///@brief ???????? typedef struct tagNET_PRIOR_FOCUSMODE_INFO { unsigned int nPriorFocusMode; /// ?????:0:???? 1:??? BYTE byReserved[256]; /// ??????? }NET_PRIOR_FOCUSMODE_INFO; ///@brief ??????????(??????? NET_EM_CFG_VIDEOIN_FOCUSEX) typedef struct tagNET_VIDEOIN_FOCUS_INFO_EX { DWORD dwSize; /// ???????? int nPriorFocusModeNum; /// ???????????? NET_PRIOR_FOCUSMODE_INFO stuPriorFocusMode[8]; /// ???????? }NET_VIDEOIN_FOCUS_INFO_EX; ///@brief ????? typedef struct tagNET_NEAR_LIGHT { int nLight; /// ???????????,0??? (1~100)?????????? int nAngle; /// ????????????, 0~100 BYTE byReserved[128]; /// ??????? }NET_NEAR_LIGHT; ///@brief ????? typedef struct tagNET_MIDDLE_LIGHT { BOOL bEnable; /// ??? int nLight; /// ???????????,0??? (1~100)?????????? int nAngle; /// ????????????, 0~100 BYTE byReserved[132]; /// ??????? }NET_MIDDLE_LIGHT; ///@brief ???? typedef struct tagNET_FAR_LIGHT { int nLight; /// ???????????,0??? (1~100)?????????? int nAngle; /// ????????????, 0~100 BYTE byReserved[128]; /// ??????? }NET_FAR_LIGHT; ///@brief ??????????????????? typedef enum tagNET_EM_CONFIGEX_TYPE { NET_EM_CONFIGEX_REALTIME, /// ??????? NET_EM_CONFIGEX_DAYTIME, /// ???? NET_EM_CONFIGEX_NIGHT, /// ??? NET_EM_CONFIGEX_NORMAL, /// ??? } NET_EM_CONFIGEX_TYPE; ///@brief ?????????????(??????? NET_EM_CFG_VIDEOIN_LIGHTINGEX) typedef struct tagNET_VIDEOIN_LIGHTINGEX_INFO { DWORD dwSize; NET_EM_CONFIGEX_TYPE emCfgType; /// ????????????????????????? NET_EM_LIGHTING_MODE emLightMode; /// ????? int nCorrection; /// ????????????????????,??????(0~4)??????(0~100)?????????????????????????????????(0~100) int nSensitive; /// ?????????????????????????????0~5?????3 int nTimes; /// ????????????????????,???????? int nNearLight; /// ????????? int nMiddleLight; /// ????????? int nFarLight; /// ???????? BYTE byReserved[4]; /// ???????,?????????? NET_NEAR_LIGHT stuNearLight[4]; /// ??????? NET_MIDDLE_LIGHT stuMiddleLight[4]; /// ??????? NET_FAR_LIGHT stuFarLight[4]; /// ?????? }NET_VIDEOIN_LIGHTINGEX_INFO; ///@brief ???????????(??????? NET_EM_CFG_VIDEOIN_VIEWRANGESTATUS) typedef struct tagNET_CFG_VIDEOIN_VIEWRANGESTATUS_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? double dbAzimuthH; /// ????????? ????????,-180~180 ??????????????? double dbAzimuthV; /// ?????????? ????????,-90~90 double dbInclinationH; /// ????????? ????????,-90~90 double dbHeight; /// ????????? ????????,0~50 }NET_CFG_VIDEOIN_VIEWRANGESTATUS_INFO; ///@brief ???????? typedef enum tagEM_LIGHTING_SCHEME_MODE { EM_LIGHTING_SCHEME_MODE_UNKNOWN, /// ??????? EM_LIGHTING_SCHEME_MODE_MIX, /// ????? EM_LIGHTING_SCHEME_MODE_WHITE, /// ????? EM_LIGHTING_SCHEME_MODE_NORMAL, /// ???????????? EM_LIGHTING_SCHEME_MODE_INFRARED, /// ???????? EM_LIGHTING_SCHEME_MODE_AIMODE, /// ????????? EM_LIGHTING_SCHEME_MODE_OFF, /// ??????????? }EM_LIGHTING_SCHEME_MODE; ///@brief ????????? (??????? NET_EM_CFG_VIDEOIN_LIGHTING_SCHEME) typedef struct tagNET_CFG_VIDEOIN_LIGHTING_SCHEME_INFO { DWORD dwSize; /// ??????? int nModeNum; /// ????????? EM_LIGHTING_SCHEME_MODE emMode[8]; /// ????? ???0???????? ?????????????????????????????????????? }NET_CFG_VIDEOIN_LIGHTING_SCHEME_INFO; ///@brief ?????????? typedef enum tagEM_ALARM_LIGHT_TYPE { EM_ALARM_LIGHT_TYPE_UNKNOWN, /// ??????? EM_ALARM_LIGHT_TYPE_INFRARED, /// ????? EM_ALARM_LIGHT_TYPE_WHITE, /// ???? EM_ALARM_LIGHT_TYPE_LASER, /// ????? EM_ALARM_LIGHT_TYPE_REDBLUE, /// ????????? }EM_ALARM_LIGHT_TYPE; ///@brief ?????????????? typedef enum tagEM_ALARM_LIGHT_CONDITION_TYPE { EM_ALARM_LIGHT_CONDITION_UNKNOWN, /// ??????? EM_ALARM_LIGHT_CONDITION_BY_VIDEOSTATUS, /// ??????????: ?????????????????????????????????????????? EM_ALARM_LIGHT_CONDITION_BY_TIME, /// ???????? EM_ALARM_LIGHT_CONDITION_BY_FORCE, /// ????????????????????????????? }EM_ALARM_LIGHT_CONDITION_TYPE; ///@brief ????????????? typedef struct tagNET_CFG_ALARM_LIGHTING_DETAIL_INFO { BOOL bEnable; /// ???????true????????????????? EM_ALARM_LIGHT_TYPE emLightType; /// ??????? UINT nLightDuration; /// ???????????????????????? int nBrightness; /// ???? 0 ~ 100 EM_ALARM_LIGHT_CONDITION_TYPE emLightCondition; /// ???????? BYTE bReserved[236]; /// ??????? }NET_CFG_ALARM_LIGHTING_DETAIL_INFO; ///@brief ?????????? (??????? NET_EM_CFG_VIDEOIN_ALARM_LIGHTING ) typedef struct tagNET_CFG_VIDEOIN_ALARM_LIGHTING_INFO { DWORD dwSize; /// ??????? int nValidDetail; /// stuDetail ???????? NET_CFG_ALARM_LIGHTING_DETAIL_INFO stuDetail[8]; /// ????????????? }NET_CFG_VIDEOIN_ALARM_LIGHTING_INFO; ///@brief ????????????????????????????? (??????? NET_EM_CFG_VIDEOIN_FACE_AUTOEXPOSURE ) typedef struct tagNET_CFG_VIDEOIN_FACE_AUTOEXPOSURE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ????? unsigned int nInterval; /// 2A?????????????????????????????????????????????,????[0, 100] unsigned int nTargetBrightness; /// ??????,????[0, 100] }NET_CFG_VIDEOIN_FACE_AUTOEXPOSURE_INFO; ///@brief ???????? typedef struct tagNET_SNAP_MODE { DWORD dwSize; int nMode; /// 0???????1???????2????? BOOL bDirectStorageMode; /// ???????TRUE???FALSE??? }NET_SNAP_MODE; ///@brief ????????????(??????? CFG_CMD_ENCODEPLAN)????????(?????????????)?????????? typedef struct tagNET_ENCODE_PLAN_INFO { DWORD dwSize; BOOL bEnable; /// ?????????????,FALSE:????????,TRUE:????????? unsigned int nExpectTime; /// ????????? ????,?????????? CAPTURE_SIZE emResolution; /// ???????? unsigned int nBitRate; /// ???????????(kbps) unsigned int nPacketSize; /// ?????????????????(KB) }NET_ENCODE_PLAN_INFO; ///@brief ??????????(??????? NET_EM_CFG_COMPOSE_CHANNEL) typedef struct tagNET_COMPOSE_CHANNEL_INFO { DWORD dwSize; DH_SPLIT_MODE emSplitMode; /// ????? int nChannelCombination[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ???????????????????? int nChannelCount; /// ????????? } NET_COMPOSE_CHANNEL_INFO; ///@brief ??????????? (NET_EM_CFG_BURN_PARAM) typedef struct tagNET_BURN_PARAM_INFO { DWORD dwSize; int nChannelCount; /// ?????????????? int nChannels[64]; /// ?????? NET_BURN_MODE emMode; /// ????? NET_BURN_RECORD_PACK emFormat; /// ?????? UINT nBurnFileLength; /// ????????????????MB }NET_BURN_PARAM_INFO; ///@brief ?????????????? typedef struct tagNET_COMPOSE_PLAN_DETAIL_INFO { char szName[64]; /// ???????, ???????? DH_SPLIT_MODE emSplitMode; /// ????? int nChannelCombinationNum; /// ?????????????????????? int nChannelCombination[64]; /// ?????????????????????; int nAudioOutNum; /// ????????????? int nAudioOutChn[4]; /// ???????????? BYTE bReserved[676]; /// ??????? }NET_COMPOSE_PLAN_DETAIL_INFO; ///@brief ?????????????????? ( NET_EM_CFG_COMPOSE_PLAN ) typedef struct tagNET_COMPOSE_PLAN_INFO { DWORD dwSize; BOOL bEnable; /// ???????????? int nPlansNum; /// ????????????????? NET_COMPOSE_PLAN_DETAIL_INFO stuPlans[4]; /// ???????????? }NET_COMPOSE_PLAN_INFO; ///@brief ?????????????(NET_EM_CFG_YUEQING_SUPPLYLIGHTING) typedef struct tagNET_YUEQING_SUPPLYLIGHTING_INFO { DWORD dwSize; BOOL bTimeEnable; /// ??????????(???????) BOOL bManualEnable; /// ???????????true : ?? false : ??? unsigned int nPreferentialMode; /// ?????????? 0 ?? ?????????? 1????????? 2????????? unsigned int nBrightness; /// ????????? ??????1~255?? DH_TSECT stuTimeSection[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ?????????? }NET_YUEQING_SUPPLYLIGHTING_INFO; ///@brief ??????????????????????????(CLIENT_ScenicSpotGetPointInfos) typedef struct tagNET_IN_SCENICSPOT_GETPOINTINFOS_INFO { DWORD dwSize; int nChannelID; /// ????? int nOffset; /// ????????????????? 255?? int nLimit; /// ????????????????? 0 ????? }NET_IN_SCENICSPOT_GETPOINTINFOS_INFO; ///@brief ???? typedef struct tagNET_POINT_INFO { DH_POINT stuMasterPoint; /// ????????? DH_POINT stuSlavePoint; /// ?????(???)???? BYTE byReserved[256]; /// ??????? }NET_POINT_INFO; ///@brief ???? typedef struct { int nHorizontalAngle; /// ????? int nVerticalAngle; /// ?????? int nMagnification; /// ????? } POSTION; ///@brief ????????? typedef struct tagNET_POSTIONF { float fHorizontalAngle; /// ????? [-1,1] float fVerticalAngle; /// ?????? [-1,1] float fMagnification; /// ????? [-1,1] } NET_POSTIONF; ///@brief ?????????????? typedef struct tagNET_POINT_PAIR_EX { int nCaliSceneID; /// ??????????????????????????????????????? PTZ_SPACE_UNIT stuSlaveCenter; /// ??????????????????????????????????????????????????? NET_POINT_INFO stuPoint[16]; /// ???????????????????????????????????????? int nEffectiveNumber; /// stuPoint ???????? float fMasterZoom; /// ???????(?????????)????????????????????????????????????????????,????[0,1] BYTE byReserved[252]; /// ??????? } NET_POINT_PAIR_EX; ///@brief ???????????? typedef struct tagNET_CALIBRATE_MATRIX_ELEMENT_EX { char szMasterSN[48]; /// ??????????? char szSlaveSN[48]; /// ??????????? PTZ_SPACE_UNIT stuExpectRatio; /// ????????(???) NET_POINT_PAIR_EX stuPointPairEx[8]; /// ?????????????? int nEffectiveNumber; /// stuPointPairEx ???????? BYTE byReserved[256]; /// ??????? } NET_CALIBRATE_MATRIX_ELEMENT_EX; ///@brief ???????????????????????? ???????????(??? NET_EM_CFG_CALIBRATE_MATRIX ????) typedef struct tagNET_MULTI_SENSOR_INFO { DWORD dwSize; DWORD nMaxCalibElement; /// ????????????????????????????(???????) DWORD nRetCalibElement; /// ????????????????????????????(???????????) NET_CALIBRATE_MATRIX_ELEMENT_EX *pstCaliMatrixElementEx; /// ???????????? } NET_MULTI_SENSOR_INFO; ///@brief ???? typedef enum tagNET_EM_CALIBRATION_MODES { NET_EM_CALIBRATION_MODES_UNKNOWN, /// ????? NET_EM_CALIBRATION_MODES_AUTO, /// ????? NET_EM_CALIBRATION_MODES_MANUAL, /// ????? NET_EM_CALIBRATION_MODES_SEMIAUTO, /// ??????? NET_EM_CALIBRATION_MODES_CLIENTAUTO /// ?????????? }NET_EM_CALIBRATION_MODES; ///@brief ???????????? typedef struct tagNET_CALIBRATE_MATRIX_ELEMENT_MULTIMODE { NET_EM_CALIBRATION_MODES emMode; /// ??????????????????????????? char szMasterSN[48]; /// ??????????? char szSlaveSN[48]; /// ??????????? PTZ_SPACE_UNIT stuExpectRatio; /// ????????(???) NET_POINT_PAIR_EX stuPointPairEx[8]; /// ???????????? int nPointPairNumber; /// stuPointPairEx ???????? NET_POINT_PAIR_EX stuAutoPointPairEx[8]; /// ???????????????????????? int nAutoPointPairNumber; /// stuAutoPointPairEx ???????? BYTE byReserved[512]; /// ??????? } NET_CALIBRATE_MATRIX_ELEMENT_MULTIMODE; ///@brief ???????????????????????? ?????????(??? NET_EM_CFG_STEREO_CALIBRATEMATRIX_MULTIMODE ????) typedef struct tagNET_CALIBRATEMATRIX_MULTIMODE_INFO { DWORD dwSize; DWORD nMaxCalibElement; /// ????????????????????????????(???????) DWORD nRetCalibElement; /// ????????????????????????????(???????????) NET_CALIBRATE_MATRIX_ELEMENT_MULTIMODE *pstCaliMatrixElementEx; /// ???????????? } NET_CALIBRATEMATRIX_MULTIMODE_INFO; ///@brief ???????????????? typedef struct tagNET_CFG_AUTO_SNAP_SCHEDULE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????? UINT nChannelNum; /// ????????? int arnChannelID[2]; /// ??????? UINT nPeriod; /// ??????, ?????? } NET_CFG_AUTO_SNAP_SCHEDULE_INFO; ///@brief ????????????? typedef struct tagNET_CFG_PARKING_TIMEOUT_DETECT { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????????? UINT nParkingTime; /// ????????, ???????, ?????604800. ????:3600-604800, ??????????????????????? UINT nDetectInterval; /// ????????????, ???????, ?????86400(24???). ??????600, ?????86400 } NET_CFG_PARKING_TIMEOUT_DETECT; ///@brief ?????????????? typedef enum tagEM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL { EM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL_UNKNOWN, /// ??? EM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL_LOW, /// ?? EM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL_MIDDLE, /// ?? EM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL_HIGH, /// ?? }EM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL; ///@brief ???????????? typedef struct tagNET_SMART_MOTION_DETECT_OBJECT { BOOL bHuman; /// ??????????? BOOL bVehicle; /// ????????? BYTE byReserved[1020]; /// ??????? }NET_SMART_MOTION_DETECT_OBJECT; ///@brief ????????????? typedef struct tagNET_CFG_SMART_MOTION_DETECT { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????????TRUE ???FALSE EM_SMART_MOTION_DETECT_SENSITIVITY_LEVEL emMotionDetectSensitivityLevel; /// ???????????? NET_SMART_MOTION_DETECT_OBJECT stuMotionDetectObject; /// ???????????? }NET_CFG_SMART_MOTION_DETECT; ///@brief ??????????????????? typedef struct tagNET_CFG_EXTERNAL_ANALYSE_TASK_CAPS { DWORD dwSize; /// ??????? int nModuleNumber; /// ??????????????????????????????????? } NET_CFG_EXTERNAL_ANALYSE_TASK_CAPS; ///@brief ??????? typedef struct tagNET_ROUND_TOUR_TASK_INFO { BOOL bEnable; /// ??????? char szReserved[128]; /// ?????? }NET_ROUND_TOUR_TASK_INFO; ///@brief ???????????? typedef struct tagNET_CFG_TIMEDIV_TOUR_CONFIG_INFO { DWORD dwSize; /// ??????? NET_ROUND_TOUR_TASK_INFO stuRoundTourTask; /// ??????? } NET_CFG_TIMEDIV_TOUR_CONFIG_INFO; #define MAX_STAFF_COUNT 32 /// ?????????? ///@brief ??????? typedef enum tagEM_SCALE_TYPR { EM_SCALE_UNKNOWN, /// ??? EM_SCALE_HORIZONTAL, /// ????? EM_SCALE_VERTIVAL, /// ?????? EM_SCALE_ANY, /// ?????????????? EM_SCALE_CROSS, /// ???????????????? }EM_SCALE_TYPR; ///@brief ????????? typedef struct tagNET_MAP_STAFF_INFOO { NET_POINT stuStartPoint; /// ??????? NET_POINT stuEndPoint; /// ??????? double dbLength; /// ??????, ?????? EM_SCALE_TYPR emScaleType; /// ??????? BYTE byReserved[252]; /// ??????? } NET_MAP_STAFF_INFO; ///@brief ???????????? typedef struct tagNET_CROWDDISTRIMAP_CALIBRATE_INFO { DWORD dwSize; /// ???????? int nStaffNum; /// ?????????? NET_MAP_STAFF_INFO stuStaffInfo[MAX_STAFF_COUNT]; /// ????????? } NET_CROWDDISTRIMAP_CALIBRATE_INFO; ///@brief ??????? typedef struct tagNET_TIME_SECTION { BOOL bEnable; /// ??? 0:???????? 1:???????? int nBeginHour; /// ??? ? int nBeginMin; /// ??? ?? int nBeginSec; /// ??? ?? int nEndHour; /// ???? ? int nEndMin; /// ???? ?? int nEndSec; /// ???? ?? BYTE byReserved[80]; /// ??????? } NET_TIME_SECTION; ///@brief ?????????????????????????????????1-????2-? typedef struct tagNET_NOPASSING_TIMESECTION_INFO { int nLimitedNum; /// ???????? int nPlateTailNum[MAX_PLATE_TAILNUM]; /// ????????????????????????????????????????????????????? char szLegalPlateHead[MAX_COMMON_STRING_8]; /// ???????????????????????????????????? /// ??????????UTF8; ????????????????????? NET_TIME_SECTION stuTimeSection; /// ??????? BYTE byReserved[256]; /// ??????? }NET_NOPASSING_TIMESECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_NOPASSING (???????-?????????)????????? typedef struct tagNET_TRAFFIC_NOPASSING_INFO { DWORD dwSize; /// ???????? BOOL bEnable; /// ?????????? int nLaneNumber; /// ?????? int nTimeSectionMode; /// ????????? 0-????(???) 1-????? int nNoPassingTimeNumRow; /// ???????? int nNoPassingTimeNumCol; /// ???????????? NET_NOPASSING_TIMESECTION_INFO stuNoPassingTimeSection[DH_N_WEEKS][DH_N_REC_TSECT]; /// ??????????????? }NET_TRAFFIC_NOPASSING_INFO; ///@brief ?????????? typedef enum tagEM_VIDEO_ANALYSE_RULE_DETECT_MODE { EM_VIDEO_ANALYSE_RULE_DETECT_MODE_UNKNOWN, /// ??? EM_VIDEO_ANALYSE_RULE_DETECT_MODE_VIDEO, /// ???????? EM_VIDEO_ANALYSE_RULE_DETECT_MODE_COIL, /// ???????? EM_VIDEO_ANALYSE_RULE_DETECT_MODE_RADAR, /// ??????? }EM_VIDEO_ANALYSE_RULE_DETECT_MODE; ///@brief ??????? EVENT_IVS_TRAFFIC_TOLL_GATE (??????????)????????? typedef struct tagNET_CFG_TRAFFIC_TOLL_GATE_INFO { DWORD dwSize; /// ???????? BOOL bEnable; /// ?????????? char szName[128]; /// ???????? UINT nPtzPresetId; /// ????????? int nDetectModeCount; /// ????????????? EM_VIDEO_ANALYSE_RULE_DETECT_MODE emDetectMode[3]; /// ?????????? int nLaneNumber; /// ?????? int nDetectLineCount; /// ???????????? NET_POINT_EX stuDetectLine[20]; /// ????????? int nDirection; /// ??????????????????????????????? EM_VEHICLE_DRIVING_DIRECTION emDirection[2]; /// ???????????????????????????? }NET_CFG_TRAFFIC_TOLL_GATE_INFO; ///@brief ??????????? typedef enum tagEM_NUMBERSTAT_TYPE { EM_NUMSTAT_TYPE_UNKNOWN = -1, /// ??? EM_NUMSTAT_TYPE_REGION, /// "Region" ???????? EM_NUMSTAT_TYPE_ENTRANCE, /// "Entrance" ????????? EM_NUMSTAT_TYPE_OTHER, /// other } EM_NUMBERSTAT_TYPE; ///@brief ????????? typedef struct tagNET_CALIBRATE_AREA_INFO { int nCalibratePloygonAreaNum; /// ??????????????? DH_POINT stuCalibratePloygonArea[MAX_CALIBRATE_PLOYGON_AREA_NUM]; /// ??????????? int nCalibrateRectNum; /// ??????? NET_RECT stuCalibrateRects[MAX_CALIBRATE_RECT_NUM]; /// ????, ???????????????? BYTE byReserved[256]; /// ??????? } NET_CALIBRATE_AREA_INFO; ///@brief ??????? typedef struct tagNET_SCENE_INFO { int nSceneID; /// ???????, ???????0, ?????0~N NET_CALIBRATE_AREA_INFO stuCalibrateAreaInfo; /// ????????? BYTE byReserved[256]; /// ??????? } NET_SCENE_INFO; ///@brief ???????? typedef struct tagNET_FIGHT_CALIBRATE_INFO { DWORD dwSize; /// ??????? int nSceneNum; /// ???????? NET_SCENE_INFO stuScenes[MAX_SCENE_NUM]; /// ??????? } NET_FIGHT_CALIBRATE_INFO; ///@brief ????????? typedef struct { int nX; /// ????????????????x????(0~8191) int nY; /// ????????????????y????(0~8191) } POINTCOORDINATE; ///@brief ??????? typedef enum tagNET_EM_SHAPE_TYPE { NET_EM_SHAPE_TYPE_UNKNOWN = -1, /// ??? NET_EM_SHAPE_TYPE_MANSARD, /// ?????? NET_EM_SHAPE_TYPE_SECTOR, /// ???? }NET_EM_SHAPE_TYPE; ///@brief ???? typedef struct { int nIndex; /// ??????? bool bEnable; /// ???????????? bool bTitleAttribute; /// ????????????????? POSTION stuPostion; /// ??????????????????????????????0~3600??????????????????-1800~1800???????????????????0~127?? POINTCOORDINATE stuPoint; /// ??????????????????????????????0-8191????????????????? char szTitleName[MAX_COMMON_STRING_64]; /// ??????????? BYTE byTitleType; /// ??????????????? BYTE byReserved[3]; /// ?????? NET_EM_SHAPE_TYPE emShapeType; /// ??????? DH_POINT stuPolygon[DH_MAX_POLYGON_NUM]; /// ?????????,???????????????????????? int nRetPolygonPointNum; /// ??????????????????? BYTE byReserved1[184]; /// ??????? }POINTINFOS; ///@brief ??????????????????????????(CLIENT_ScenicSpotGetPointInfos) typedef struct tagNET_OUT_SCENICSPOT_GETPOINTINFOS_INFO { DWORD dwSize; int nTotal; /// ??????????????????? int nRetSceneNum; /// ???????????????? POINTINFOS stuPointInfos[MAX_SCENICSPOT_POINTS_NUM]; /// ????A?????limit,????????????????limit }NET_OUT_SCENICSPOT_GETPOINTINFOS_INFO; ///@brief ??????????????????????? ???????(CLIENT_ScenicSpotSetPointInfo) typedef struct tagNET_IN_SCENICSPOT_SETPOINTINFO_INFO { DWORD dwSize; int nChannel; /// ????? int nIndex; /// ??????? bool bEnable; /// ???????????? bool bTitleAttribute; /// ????????????????? POSTION stuPosition; /// ????????????? POINTCOORDINATE stuPoint; /// ????????? char szTitleName[MAX_COMMON_STRING_64]; /// ??????????? BYTE byTitleType; /// ??????????????? BYTE byReserved[3]; /// ?????? NET_EM_SHAPE_TYPE emShapeType; /// ??????? DH_POINT stuPolygon[DH_MAX_POLYGON_NUM]; /// ?????????,???????????????????????? int nPolygonPointNum; /// ??????????????????????DH_MAX_POLYGON_NUM int nChannelNum; /// ??????? unsigned short nSyncToChannels[16]; /// ???????????????? }NET_IN_SCENICSPOT_SETPOINTINFO_INFO; ///@brief ??????????????????????? ???????(CLIENT_ScenicSpotSetPointInfo) typedef struct tagNET_OUT_SCENICSPOT_SETPOINTINFO_INFO { DWORD dwSize; /// ??????? int nSyncToChannelNum; /// ????????????????? unsigned short nSyncToChannels[16]; /// ????????? }NET_OUT_SCENICSPOT_SETPOINTINFO_INFO; ///@brief ????????????????(CLIENT_ScenicSpotGetCaps ???????) typedef struct tagNET_IN_SCENICSPOT_GETCAPS_INFO { DWORD dwSize; int nChannel; /// ????? }NET_IN_SCENICSPOT_GETCAPS_INFO; ///@brief ?????? typedef struct tagNET_SCENICSPOT_CAPS_INFO { BOOL bEnable; /// ???????????? unsigned int nTotalNum; /// ?????????????????? unsigned int nRegionNum; /// ????????????????????? int nChannelNum; /// ??????? unsigned short nSyncToChannels[16];/// ????????????? BYTE byReserved[220]; /// ??????? }NET_SCENICSPOT_CAPS_INFO; ///@brief ????????????????(CLIENT_ScenicSpotGetCaps ???????) typedef struct tagNET_OUT_SCENICSPOT_GETCAPS_INFO { DWORD dwSize; NET_SCENICSPOT_CAPS_INFO stuCaps; /// ????????? }NET_OUT_SCENICSPOT_GETCAPS_INFO; ///@brief ???????????????????????????????????(??? CLIENT_ScenicSpotTurnToPoint) typedef struct tagNET_IN_SCENICSPOT_TURNTOPOINT_INFO { DWORD dwSize; int nChannel; /// ????? int nIndex; /// ??????? }NET_IN_SCENICSPOT_TURNTOPOINT_INFO; ///@brief ???????????????????????????????????(??? CLIENT_ScenicSpotTurnToPoint) typedef struct tagNET_OUT_SCENICSPOT_TURNTOPOINT_INFO { DWORD dwSize; }NET_OUT_SCENICSPOT_TURNTOPOINT_INFO; ///@brief ???????????? typedef enum tagEM_ALARM_SOUND_EFFECT { EM_ALARM_SOUND_EFFECT_UNKNOWN, /// ????????? EM_ALARM_SOUND_EFFECT_MUTE, /// ???? EM_ALARM_SOUND_EFFECT_NOTICE, /// ?????????????, ????????? EM_ALARM_SOUND_EFFECT_ALERT, /// ???????????????, ???????? }EM_ALARM_SOUND_EFFECT; ///@brief ???????????????? typedef struct tagNET_ALARM_SOUND_INFO { DWORD dwSize; EM_ALARM_SOUND_EFFECT emSoundEffect; /// ???????? }NET_ALARM_SOUND_INFO; ///@brief ??????????? typedef struct tagNET_STEREO_CALIBRATE_INFO { DWORD dwSize; int nCameraHeight; /// ?????????????????cm float fCameraAngle; /// ???????????????????? } NET_STEREO_CALIBRATE_INFO; ///@brief ?????????? typedef enum tagEM_LINK_MODE { EM_LINK_MODE_UNKNOWN, /// ????? EM_LINK_MODE_AUTO, /// ???????????? EM_LINK_MODE_ADHOC, /// ???????????????????????, ???????????????????B, ??????????, ???????, ???????Access Point EM_LINK_MODE_INFRASTRUCTURE, /// ???????????????????????????????????, ???????????????, ??????????Access Point?? }EM_LINK_MODE; ///@brief AP?????? typedef enum tagEM_AP_DATA_ENCRYPT { EM_AP_DATA_ENCRYPT_UNKNOWN, /// UnKnown EM_AP_DATA_ENCRYPT_NONE, /// NONE EM_AP_DATA_ENCRYPT_AUTO, /// AUTO EM_AP_DATA_ENCRYPT_SHARED, /// SHARED EM_AP_DATA_ENCRYPT_OPEN, /// OPEN EM_AP_DATA_ENCRYPT_TKIP, /// TKIP EM_AP_DATA_ENCRYPT_AES, /// AES } EM_AP_DATA_ENCRYPT; ///@brief ?????? typedef enum tagEM_AP_POWER_MODE { EM_AP_POWER_MODE_UNKNOWN, /// UnKnown EM_AP_POWER_MODE_LOW, /// Low EM_AP_POWER_MODE_MIDDLE, /// Middle EM_AP_POWER_MODE_HIGH, /// High }EM_AP_POWER_MODE; ///@brief DHCP ???? typedef struct tagNET_DHCP_INFO { char szStartIP[NET_IPADDRSTR_LEN]; /// ????????IP char szStopIP[NET_IPADDRSTR_LEN]; /// ????????IP int nLeaseTime; /// ??????? ????: ???? BYTE byReserved[512]; /// ??????? }NET_DHCP_INFO; ///@brief WEP??????? typedef struct tagNET_WEP_INFO { int nKeyID; /// ???????, ??0~3 char szKeys[MAX_WEP_KEY_NUM][MAX_COMMON_STRING_64];/// ???????? BYTE byReserved[256]; /// ??????? }NET_WEP_INFO; ///@brief WPA/WPA2 PSK???? typedef struct tagNET_WPA_PSK_INFO { char szPassword[MAX_COMMON_STRING_64]; /// ???? BYTE byReserved[256]; /// ??????? }NET_WPA_PSK_INFO; ///@brief EAP???? typedef enum tagEM_EAP_METHOD { EM_EAP_METHOD_UNKNOWN, /// UnKnown EM_EAP_METHOD_PEAP, /// PEAP EM_EAP_METHOD_TLS, /// TLS EM_EAP_METHOD_TTLS, /// TTLS } EM_EAP_METHOD; ///@brief EAP??????????? typedef enum tagEM_EAP_AUTH_TYPE { EM_EAP_AUTH_TYPE_UNKNOWN, /// UnKnown EM_EAP_AUTH_TYPE_NONE, /// NONE EM_EAP_AUTH_TYPE_PAP, /// PAP EM_EAP_AUTH_TYPE_MSCHAP, /// MSCHAP EM_EAP_AUTH_TYPE_MSCHAPV2, /// MSCHAPV2 EM_EAP_AUTH_TYPE_GTC, /// GTC } EM_EAP_AUTH_TYPE; ///@brief AP?????? typedef enum tagEM_AP_AUTHENTICATION { EM_AP_AUTHENTICATION_UNKNOWN, /// UnKnown EM_AP_AUTHENTICATION_OPEN, /// OPEN EM_AP_AUTHENTICATION_WEP, /// WEP EM_AP_AUTHENTICATION_WPAPSK, /// WPA PSK EM_AP_AUTHENTICATION_WPA2PSK, /// WPA2 PSK EM_AP_AUTHENTICATION_WPA, /// WPA EM_AP_AUTHENTICATION_WPA2, /// WPA2 } EM_AP_AUTHENTICATION; ///@brief WPA/WPA2???? typedef struct tagNET_EAP_INFO { EM_EAP_METHOD emMethod; /// EAP???? EM_EAP_AUTH_TYPE emAuthType; /// EAP??????????? char szIdentity[MAX_COMMON_STRING_64]; /// ???? char szAnonymousID[MAX_COMMON_STRING_64];/// ???????? char szPassword[MAX_COMMON_STRING_64]; /// ???? char szCaCert[MAX_COMMON_STRING_512]; /// CA??? char szUserCert[MAX_COMMON_STRING_512]; /// ?????? BYTE byReserved[256]; /// ??????? }NET_EAP_INFO; ///@brief WIFI ?????? typedef enum tagEM_WIFI_CONNECT_TYPE { EM_WIFI_CONNECT_TYPE_UNKNOWN, /// ??? EM_WIFI_CONNECT_TYPE_PUSH_BUTTON, /// ?????? EM_WIFI_CONNECT_TYPE_PIN_ENROLLEE, /// PIN ??? EM_WIFI_CONNECT_TYPE_PIN_REG, /// PIN REG??? ???????? }EM_WIFI_CONNECT_TYPE; ///@brief WIFI ??????????? typedef struct tagNET_WPS_INFO { EM_WIFI_CONNECT_TYPE emConnType; /// ?????? char szPIN[MAX_COMMON_STRING_32]; /// PIN??, ?????????PIN??????????? BYTE byReserved[256]; /// ??????? }NET_WPS_INFO; ///@brief ??????????? typedef struct tagNET_FILTER_ADDRESS_LIST { BOOL bEffective; /// ?????????????? true??????false???? char szMAC[DH_MACADDR_LEN]; /// ???MAC??? char szDescribeText[DH_COMMON_STRING_256]; /// ???MAC????????? BYTE byReserved[256]; /// ??????? }NET_FILTER_ADDRESS_LIST; ///@brief ?????????????? typedef enum tagEM_ADDRLIST_FILTER_POLICY { EM_ADDRLIST_FILTER_POLICY_UNKNOWN, /// ??? EM_ADDRLIST_FILTER_POLICY_WHITE, /// "allow" : ??????????????????????????????????????? EM_ADDRLIST_FILTER_POLICY_BLACK, /// "block" : ????????????????????????????????????? }EM_ADDRLIST_FILTER_POLICY; ///@brief AccessPoint ??????????? typedef struct tagNET_AP_FILTER { BOOL bEnable; /// ???????????? int nMaxAccessNum; /// ???Wifi?????????? EM_ADDRLIST_FILTER_POLICY emPolicy; /// ??????? NET_FILTER_ADDRESS_LIST *pstuAddrList; /// ????????????????????????????? int nMaxListNum; /// ????????? int nRetListNum; /// ??????????? BYTE byReserved[256]; /// ??????? }NET_AP_FILTER; ///@brief Accesspoint ?????? typedef enum tagEM_WORKPATTERN { EM_WORKPATTERN_UNKNOWN, /// ??? EM_WORKPATTERN_2_4G, /// ????2.4G???????????? EM_WORKPATTERN_5G, /// 5G???????? }EM_WORKPATTERN; ///@brief AP ?????????? typedef struct tagNET_AP_WORKPATTERN { EM_WORKPATTERN emWorkPatternType; /// ??????:2.4G/5G BOOL bEnable; /// WIFI??????????, TRUE??, FALSE??? BOOL bHideSSID; /// ???????SSID, TRUE ????, FALSE ??? char szSSID[DH_COMMON_STRING_36]; /// ????????(SSID) EM_LINK_MODE emLinkMode; /// ?????????? int nPriority; /// ????? (???? 1-32) int nChannel; /// ????? (???? 1-13) int nChannelBandwidth; /// ??????? ????: M EM_AP_AUTHENTICATION emAuthentication; /// ?????? EM_AP_DATA_ENCRYPT emDataEncryption; /// ????????? EM_AP_POWER_MODE emPowerMode; /// ?????? BOOL bDHCPEnable; /// ?????DHCP???????IP??? NET_DHCP_INFO stuDHCP; /// DHCP?????????? char szIPAddresss[NET_IPADDRSTR_LEN]; /// IP??? char szSubnetMask[MAX_COMMON_STRING_16]; /// ???????? char szDefaultGateway[MAX_COMMON_STRING_16]; /// ??????? NET_WEP_INFO stuWEP; /// WEP??????? NET_WPA_PSK_INFO stuWPAPSK; /// WPA/WPA2 PSK???? NET_EAP_INFO stuEAP; /// WPA/WPA2 ???? NET_WPS_INFO stuWPS; /// WPS ??????????? NET_AP_FILTER stuFilter; /// ??????????? BYTE byReserved[1024]; /// ??????? }NET_AP_WORKPATTERN; ///@brief ???????????????? typedef enum tagEM_ACCESSPOINT_NAME { EM_ACCESSPOINT_NAME_UNKNOWN, /// ??? EM_ACCESSPOINT_NAME_ETH2, /// "eth2" : ?????????AP?????? EM_ACCESSPOINT_NAME_WALN0, /// "wlan0" : ?????????AP?????? EM_ACCESSPOINT_NAME_APRA0, /// "apra0" : ???AP??????????? }EM_ACCESSPOINT_NAME; ///@brief AccessPoint ??????? typedef struct tagNET_ACCESSPOINT_INFO { EM_ACCESSPOINT_NAME emAccessPointName; /// ?????????????????? int nValidPatternNum; /// ?????????????? NET_AP_WORKPATTERN stuWorkPattern[MAX_WORKPATTERN_NUM];/// ??????????:2.4G(???)/5G BYTE byReserved[1024]; /// ??????? }NET_ACCESSPOINT_INFO; ///@brief WIFI???????????? (?????) typedef struct tagNET_NETAPP_ACCESSPOINT { DWORD dwSize; int nValidAPNum; /// AccessPoints ???????? NET_ACCESSPOINT_INFO stuAccessPoints[NET_MAX_AP_NUM]; /// AP ??????? }NET_NETAPP_ACCESSPOINT; ///@brief ????????? typedef enum tagEM_DISORDERWINDOW_TYPE { EM_DISORDERWINDOW_TYPE_UNKNOWN = -1, EM_DISORDERWINDOW_TYPE_PACKETS_NUMBER = 0, ///?????????,??? EM_DISORDERWINDOW_TYPE_DATA_DELAY = 1, ///???????(ms) EM_DISORDERWINDOW_TYPE_MEMORY_SIZE = 2, ///??????(KB) }EM_DISORDERWINDOW_TYPE; ///@brief RTSP???????? typedef struct tagNET_CFG_RTSP_TRANSIT { int nUdpSndBufSize; ///UDP????socket??????????(????:KB) ???512 0-????????? int nUdpRcvBufSize; ///UDP????socket??????????(????:KB)???512 0-????????? int nSliceSize; ///rtp??????????(????:???),???1472 ?????:????mtu-ip???-udp??? int nFlowControlMaxDelay;/// ??????????????????????????? /// ?????????????????????,???400ms int nFlowControlCoefficient;/// ?????????????????????= MaxDelay* Coefficient/100?? /// ???????????????????????????????,????[0,100],???50 ,0??????????????? EM_DISORDERWINDOW_TYPE emDisorderWindowType; ///????????? int nDisorderWindowValue; ///??????????????100???? BYTE byReserved[2048]; ///??????? }NET_CFG_RTSP_TRANSIT; ///@brief ??????????? typedef enum tagEM_RETRANSIT_TYPE { EM_RETRANSIT_TYPE_UNKNOWN = -1, EM_RETRANSIT_TYPE_PACKETS_NUMBER = 0, ///?????????,??? EM_RETRANSIT_TYPE_DATA_DELAY = 1, ///???????(ms) }EM_RETRANSIT_TYPE; ///@brief DVRIP???????? typedef struct tagNET_CFG_DVRIP_TRANSIT { int nUdpSndBufSize; ///UDP????socket??????????(????:KB),???512 0-????????? int nMaxSize; ///???????????????????(????:???) ???:1400 ?????:????mtu-ip???-udp??? int nFlowControlMaxDelay;/// ??????????????????????????? /// ?????????????????????,???400ms int nFlowControlCoefficient;/// ?????????????????????= MaxDelay* Coefficient/100?? /// ???????????????????????????????,????[0,100],???50 ,0??????????????? EM_RETRANSIT_TYPE emRetransitType; ///??????? int nRetransitValue; ///???? BYTE byReserved[2048]; ///??????? }NET_CFG_DVRIP_TRANSIT; ///@brief GB28181???????? typedef struct tagNET_CFG_GB28181_TRANSIT { int nUdpSndBufSize; ///UDP????socket??????????(????:KB),???512 0-????????? int nMaxSize; ///???????????????????(????:???) ???:1400 ?????:????mtu-ip???-udp??? int nFlowControlMaxDelay;/// ??????????????????????????? /// ?????????????????????,???400ms int nFlowControlCoefficient;/// ?????????????????????= MaxDelay* Coefficient/100?? /// ???????????????????????????????,????[0,100],???50 ,0??????????????? BYTE byReserved[2048]; ///??????? }NET_CFG_GB28181_TRANSIT; ///@brief ???????????????????NET_EM_CFG_NETAUTOADAPTTRANSIT typedef struct tagNET_NETAUTOADAPTTRANSIT { DWORD dwSize; NET_CFG_RTSP_TRANSIT stuRtsp; ///RTSP???? NET_CFG_DVRIP_TRANSIT stuDvrip; ///DVRIP???? NET_CFG_GB28181_TRANSIT stuGB28181; ///GB28181???? }NET_NETAUTOADAPTTRANSIT; /// ????????? #define MAX_DN_LENGTH 128 ///@brief LDAP ???? typedef struct tagNET_NETAPP_LDAP { DWORD dwSize; BOOL bEnable; /// ?????? char szServerIP[MAX_SERVER_ADDRESS_LEN]; /// ????IP??? int nServerPort; /// ??????? char szBindDN[MAX_DN_LENGTH]; /// ??????? char szBindPwd[MAX_PWD_LEN]; /// ???? BOOL bAnonymousBind; /// ??????? char szBaseDN[MAX_DN_LENGTH]; /// ????????? char szFilter[DH_COMMON_STRING_128]; /// ???????? } NET_NETAPP_LDAP; ///@brief IPV6 ???? typedef struct tagNET_ETH_INFO { char szLinkLocalAddress[64]; /// ??????????IPv6???????????(?????????) char szGlobalAddress[128]; /// ?????????????????????????Ipv6?????????????????????????????????????????????????????????????????????????(?????????) char szIPAddress[40]; /// IP??? UINT nPrefix; /// ??????,????[1, 128] BOOL bDhcpEnable; /// ?????DHCPv6????????? char szDefaultGateway[40]; /// ??????? char szDnsServers[2][40]; /// DNSv6?????????,????????????????????DNS?????????????????????DNS??????? int nDnsServersNum; /// DNSv6????????????????????? BOOL bDnsServerEnable; /// ??????DNSv6???? char szReserved[1024]; /// ?????? } NET_ETH_INFO; ///@brief IPV6 ???? typedef struct tagNET_CFG_IPV6_INFO { DWORD dwSize; BOOL bEnable; /// ?????? NET_ETH_INFO stuEth0; /// ???????????,???????????????? NET_ETH_INFO stuEth1; /// ???????????? NET_ETH_INFO stuBond0; /// ???????????? NET_ETH_INFO stuLte0; /// ???????????? } NET_CFG_IPV6_INFO; ///@brief ??????(?????????????????,??????????????????????????????) typedef enum tagEM_SYSLOG_FACILITY_TYPE { EM_SYSLOG_FACILITY_UNKNOWN = -1, EM_SYSLOG_FACILITY_KERNEL_MESSAGES, /// 0 kernel messages EM_SYSLOG_FACILITY_USER_LEVEL_MESSAGES, /// 1 user-level messages EM_SYSLOG_FACILITY_MAIL_SYSTEM, /// 2 mail system EM_SYSLOG_FACILITY_SYSTEM_DAEMONS, /// 3 system daemons EM_SYSLOG_FACILITY_SECURITY_MESSAGES, /// 4 security/authorization messages EM_SYSLOG_FACILITY_MESSAGES_GENERATED_INTERNALLY_BY_SYSLOGD, /// 5 messages generated internally by syslogd EM_SYSLOG_FACILITY_LINE_PRINTER_SUBSYSTEM, /// 6 line printer subsystem EM_SYSLOG_FACILITY_NETWORK_NEWS_SUBSYSTEM, /// 7 network news subsystem EM_SYSLOG_FACILITY_UUCP_SUBSYSTEM, /// 8 UUCP subsystem EM_SYSLOG_FACILITY_CLOCK_DAEMON, /// 9 clock daemon EM_SYSLOG_FACILITY_SECURITY_MESSAGES_2, /// 10 security/authorization messages EM_SYSLOG_FACILITY_FTP_DAEMON, /// 11 FTP daemon EM_SYSLOG_FACILITY_NTP_SUBSYSTEM, /// 12 NTP subsystem EM_SYSLOG_FACILITY_LOG_AUDIT, /// 13 log audit EM_SYSLOG_FACILITY_LOG_ALERT, /// 14 log alert EM_SYSLOG_FACILITY_CLOCK_DAEMON_2, /// 15 clock daemon EM_SYSLOG_FACILITY_LOCAL_USE_0, /// 16 local use 0 EM_SYSLOG_FACILITY_LOCAL_USE_1, /// 17 local use 1 EM_SYSLOG_FACILITY_LOCAL_USE_2, /// 18 local use 2 EM_SYSLOG_FACILITY_LOCAL_USE_3, /// 19 local use 3 EM_SYSLOG_FACILITY_LOCAL_USE_4, /// 20 local use 4 EM_SYSLOG_FACILITY_LOCAL_USE_5, /// 21 local use 5 EM_SYSLOG_FACILITY_LOCAL_USE_6, /// 22 local use 6 EM_SYSLOG_FACILITY_LOCAL_USE_7, /// 23 local use 7 } EM_SYSLOG_FACILITY_TYPE; ///@brief Syslog ???? typedef struct tagNET_NETAPP_SYSLOG { DWORD dwSize; BOOL bEnable; /// ??? char szServerIP[MAX_SERVER_IP_LEN]; /// ????????? int nServerPort; /// ??????? EM_SYSLOG_FACILITY_TYPE emFacility; /// ?????? } NET_NETAPP_SYSLOG; ///@brief ????? typedef enum tagEM_WIRELESS_AUTH_MODE { EM_WIRELESS_AUTH_MODE_UNKNOWN = 0, EM_WIRELESS_AUTH_MODE_NO, /// ?????? EM_WIRELESS_AUTH_MODE_PAP, /// PAP??? EM_WIRELESS_AUTH_MODE_CHAP, /// CHAP??? }EM_WIRELESS_AUTH_MODE; ///@brief ??????????? typedef enum tagEM_WIRELESS_3GFLUX_TACTICS { EM_WIRELESS_3GFLUX_TACTICS_UNKNOWN = 0, EM_WIRELESS_3GFLUX_TACTICS_BYFLUX_MONTHLY, /// ?????????? EM_WIRELESS_3GFLUX_TACTICS_BYTIME_MONTHLY /// ????????? }EM_WIRELESS_3GFLUX_TACTICS; ///@brief ?????????????? typedef enum tagEM_WIRELESS_DAY3GFLUX_TACTICS { EM_WIRELESS_DAY3GFLUX_TACTICS_UNKNOWN = 0, EM_WIRELESS_DAY3GFLUX_TACTICS_BYFLUX, /// ?????? EM_WIRELESS_DAY3GFLUX_TACTICS_BYTIME /// ????? }EM_WIRELESS_DAY3GFLUX_TACTICS; ///@brief ??????????????? typedef enum tagEM_WIRELESS_3GFLUX_ACTION { EM_WIRELESS_3GFLUX_ACTION_UNKNOWN = 0, EM_WIRELESS_3GFLUX_ACTION_NOTHING, /// ????? EM_WIRELESS_3GFLUX_ACTION_3GNETDOWN /// 3G???? }EM_WIRELESS_3GFLUX_ACTION; ///@brief ????????? typedef enum tagEM_WIRELESS_WORK_MODE { EM_WIRELESS_WORK_MODE_UNKNOWN = 0, EM_WIRELESS_WORK_MODE_CDMA1X, /// CDMA1x EM_WIRELESS_WORK_MODE_EVDO, /// EVDO EM_WIRELESS_WORK_MODE_TD_SCDMA, /// TD-SCDMA EM_WIRELESS_WORK_MODE_WCDMA, /// WCDMA EM_WIRELESS_WORK_MODE_EDGE, /// EDGE EM_WIRELESS_WORK_MODE_TDD_LTE, /// TDD-LTE EM_WIRELESS_WORK_MODE_FDD_LTE, /// FDD-LTE EM_WIRELESS_WORK_MODE_GPRS, /// GPRS EM_WIRELESS_WORK_MODE_NR, /// NR EM_WIRELESS_WORK_MODE_NO_SERVICE, /// NOService EM_WIRELESS_WORK_MODE_AMPS, /// AMPS EM_WIRELESS_WORK_MODE_CDMA2000, /// CDMA2000 EM_WIRELESS_WORK_MODE_GSM, /// GSM EM_WIRELESS_WORK_MODE_LTE, /// LTE EM_WIRELESS_WORK_MODE_TD_LTE, /// TD-LTE EM_WIRELESS_WORK_MODE_AUTO /// Auto }EM_WIRELESS_WORK_MODE; #define MAX_DAIL_NUMBER 32 /// Wireless??????????? ///@brief ???????????????? typedef struct tagNET_NETAPP_WIRELESS { DWORD dwSize; BOOL bEnable; /// ?????????????? int nIndex; /// ????????????????PAL??????index int nKeepAlive; /// ???????, ???????0??????????? EM_WIRELESS_APN_TYPE emAPN; /// ????????? ??????????????szAPNName???????? char szAPNName[DH_COMMON_STRING_32]; /// ??????????????emAPN????????????szAPNName??????????????:"CTNET", "CMNET", "UNINET", "CUSTOMIZED" EM_WIRELESS_AUTH_MODE emAuthMode; /// ????? char szUserName[DH_COMMON_STRING_64]; /// ????? char szPassword[DH_COMMON_STRING_64]; /// ???? BOOL bAutoDial; /// ???????????????, ????true???????????????????stuTimeSection,false???stuTimeSection???????? DH_TSECT stuTimeSection[DH_N_WEEKS][DH_N_REC_TSECT]; /// ???????? EM_WIRELESS_3GFLUX_TACTICS em3GFluxTactic; /// ??????????? UINT n3GFluxUp; /// ???????????, [0,65535]MB??????? UINT n3GFlux; /// ??????????, [0,65535]MB??????? EM_WIRELESS_DAY3GFLUX_TACTICS emDay3GFluxTactic; /// ?????????????? UINT nDay3GFluxUp; /// ??????????????, [0,65535]MB??????? UINT nDay3GFlux; /// ?????????????, [0,65535]MB??????? EM_WIRELESS_3GFLUX_ACTION emDay3GFluxAction; /// ????????????,??????????????? EM_WIRELESS_WORK_MODE emWorkMode; /// ????????? char szDailNumber[MAX_DAIL_NUMBER]; /// ??????? BOOL bActivate; /// ???????????????????? char szCardNum[32]; /// ?????? char szIMEI[16]; /// IMEI char szPIN[16]; /// PIN?? char szICCID[32]; /// ??????????????SIM??????,20????????? } NET_NETAPP_WIRELESS; ///@brief ?????????? typedef enum tagEM_OPERATOR_SELECTION_MODE { EM_OPERATOR_SELECTION_MODE_UNKNOWN = -1, /// ??????? EM_OPERATOR_SELECTION_MODE_AUTO, /// ??????????? EM_OPERATOR_SELECTION_MODE_MANUAL, /// ???????????? EM_OPERATOR_SELECTION_MODE_LOGOUT, /// ???????????? EM_OPERATOR_SELECTION_MODE_FORMAT, /// ????????,????????????????? EM_OPERATOR_SELECTION_MODE_AUTO_OR_MANUAL, /// ???/??? (???????????????????????) }EM_OPERATOR_SELECTION_MODE; ///@brief ??????????? typedef enum tagEM_OPERATOR_MSG_FORMAT { EM_OPERATOR_MSG_FORMAT_UNKNOWN = -1, /// ??????? EM_OPERATOR_MSG_FORMAT_FULL_STRING, /// ?????????? EM_OPERATOR_MSG_FORMAT_SHORT_STRING, /// ?????????? EM_OPERATOR_MSG_FORMAT_DIGITAL, /// ?????? }EM_OPERATOR_MSG_FORMAT; ///@brief ?????? Access technology typedef enum tagEM_ACCESS_TECHNOLOGY { EM_ACCESS_TECHNOLOGY_UNKNOWN = -1, /// ??????? EM_ACCESS_TECHNOLOGY_GSM, /// GSM EM_ACCESS_TECHNOLOGY_GSM_COMPACT, /// GSM COMPACT EM_ACCESS_TECHNOLOGY_UTRAN, /// UTRAN EM_ACCESS_TECHNOLOGY_GSM_W_EGPRS, /// GSM W/EGPRS EM_ACCESS_TECHNOLOGY_UTRAN_W_HSDPA, /// UTRAN W/HSDPA EM_ACCESS_TECHNOLOGY_UTRAN_W_HSUPA, /// UTRAN W/HSUPA EM_ACCESS_TECHNOLOGY_UTRAN_W_HSDPA_AND_HSUPA, /// UTRAN W/HSDPA ?? HSUPA EM_ACCESS_TECHNOLOGY_E_UTRAN, /// E-UTRAN }EM_ACCESS_TECHNOLOGY; ///@brief ?????????????? typedef struct tagNET_WIRELESS_EXPERT { BOOL bValid; /// ??????????? BOOL bEnable; /// ?????????????? int nIndex; /// ???????, ??? EM_WIRELESS_APN_TYPE emAPN; /// ????????? ??????????????szAPNName???????? char szAPNName[32]; /// ???????????? EM_WIRELESS_AUTH_MODE emAuthMode; /// ????? char szUserName[64]; /// ????? char szPassword[64]; /// ???? EM_OPERATOR_SELECTION_MODE emOprMode; /// ?????????? EM_OPERATOR_MSG_FORMAT emOprFormat; /// ??????????????? char szOperInfo[32]; /// ???????????????????sim????????? EM_ACCESS_TECHNOLOGY emAccessTechnology; /// ????????? BYTE byReserved[64]; /// ??????? }NET_WIRELESS_EXPERT; ///@brief ?????????????????? typedef struct tagNET_NETAPP_WIRELESS_EXPERT { DWORD dwSize; NET_WIRELESS_EXPERT stuExpert[4]; /// ??????????? 4??SIM?? ???????????SIM?? }NET_NETAPP_WIRELESS_EXPERT; ///@brief ?????????? typedef struct tagNET_DEV_CAR_COACH_INFO { DWORD dwSize; char szCarNo[MAX_CARNO_LEN]; /// ?????? char szCoachNo[MAX_COACHNO_LEN]; /// ????? }NET_DEV_CAR_COACH_INFO; ///@brief ???????????????? typedef enum tagEM_MEDIA_GLOBAL_SNAP_FORMAT_AS { EM_MEDIA_GLOBAL_SNAP_FORMAT_AS_UNKNOWN, EM_MEDIA_GLOBAL_SNAP_FORMAT_AS_MAIN_FORMAT, /// ?????????? EM_MEDIA_GLOBAL_SNAP_FORMAT_AS_EXTRA_FORMAT, /// ?????????1 EM_MEDIA_GLOBAL_SNAP_FORMAT_AS_EXTRA2_FORMAT, /// ?????????2 EM_MEDIA_GLOBAL_SNAP_FORMAT_AS_EXTRA3_FORMAT, /// ?????????3 }EM_MEDIA_GLOBAL_SNAP_FORMAT_AS; ///@brief ????????????? typedef struct tagNET_MEDIA_GLOBAL_INFO { DWORD dwSize; int nPacketType; /// 0:?????,1???????? BYTE byPacketLength; /// ??????????,?????????1-255 BYTE byAlign[3]; /// ???? DWORD dwPacketSize; /// ????????????,????KB BOOL bLogRecord; /// ??????????? BOOL bLogEncode; /// ?????????????? EM_MEDIA_GLOBAL_SNAP_FORMAT_AS emSnapFormatAs; /// ????????????????????????????????????????????????????????????????? }NET_MEDIA_GLOBAL_INFO; ///@brief ????????(????????????????????) ??? NET_EM_CFG_PARKINGSPACECELL_STATUS ///@brief ??????????16, ?????????????????????(NET_CONFIG_RETURN_INFO*)reserve???? typedef struct tagNET_PARKINGSPACECELL_STATUS_INFO { DWORD dwSize; int nCellNumber; /// ?????? UINT nCellType; /// ????????, -1:????, 0:??????? 1:??????? 2:???f?? } NET_PARKINGSPACECELL_STATUS_INFO; ///@brief ??????? typedef struct tagNET_PARKINGSPACELIGHT_INFO { int nRed; /// ???: -1:????, 0/??, 1/??, 2/??? int nYellow; /// ???: -1:????, 0/??, 1/??, 2/??? int nBlue; /// ????: -1:????, 0/??, 1/??, 2/??? int nGreen; /// ???: -1:????, 0/??, 1/??, 2/??? int nPurple; /// ???: -1:????, 0/??, 1/??, 2/??? int nWhite; /// ???: -1:????, 0/??, 1/??, 2/??? int nPink; /// ???: -1:????, 0/??, 1/??, 2/??? BYTE byReserved[32]; /// ??????? } NET_PARKINGSPACELIGHT_INFO; ///@brief ??????????? typedef struct tagNET_NETWORK_EXCEPTION_INFO { NET_PARKINGSPACELIGHT_INFO stNetPortAbortInfo[MAX_NETPORT_NUM]; /// ??????????? int nRetNetPortAbortNum; /// ?????????? NET_PARKINGSPACELIGHT_INFO stuSpaceSpecialInfo; /// ???????????? NET_PARKINGSPACELIGHT_INFO stuSpaceChargingInfo; /// ???f??????? BYTE byReserved[256]; /// ??????? } NET_NETWORK_EXCEPTION_INFO; ///@brief ??????????????????? ??? NET_EM_CFG_PARKINGSPACELIGHT_STATE typedef struct tagNET_PARKINGSPACELIGHT_STATE_INFO { DWORD dwSize; NET_PARKINGSPACELIGHT_INFO stuSpaceFreeInfo; /// ????????????? NET_PARKINGSPACELIGHT_INFO stuSpaceFullInfo; /// ???????????? NET_PARKINGSPACELIGHT_INFO stuSpaceOverLineInfo; /// ???????????? NET_PARKINGSPACELIGHT_INFO stuSpaceOrderInfo; /// ???????????? NET_NETWORK_EXCEPTION_INFO stuNetWorkExceptionInfo; /// ??????????? } NET_PARKINGSPACELIGHT_STATE_INFO; ///@brief NAS Protocol ???? typedef enum __EM_NAS_PROTOCOL { NAS_PROTOCOL_UNKNOW = 0, NAS_PROTOCOL_FTP, /// FTP NAS_PROTOCOL_SMB, /// SMB NAS_PROTOCOL_NFS, /// NFS NAS_PROTOCOL_ISCSI, /// ISCSI NAS_PROTOCOL_CLOUD, /// CLOUD }EM_NAS_PROTOCOL; ///@brief NAS ??????? typedef struct tagNET_NAS_INFO { DWORD dwSize; BOOL bEnable; /// ??????? char szName[MAX_COMMON_STRING_128]; /// ???? char szHostIp[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// IP??????????? WORD wHostPort; /// ??????? char reserved[2]; /// ??????? char szDirName[DH_FTP_MAX_PATH]; /// FTP?????? char szUserName[DH_FTP_USERNAME_LEN]; /// ????? char szPassword[DH_FTP_PASSWORD_LEN]; /// ???? int nInterval; /// ????????????(1~600),?????? BOOL bAnonymity; /// ???????,????????Protocol?FTP??????? EM_NAS_PROTOCOL emProtocol; /// ???????? }NET_NAS_INFO; ///@brief PPPoE??????? typedef struct tagNET_PPPOE_INFO { DWORD dwSize; BOOL bEnable; /// ?????? char szUserName[MAX_USER_NAME_LEN]; /// ????? char szPasswd[MAX_PWD_LEN]; /// ???? }NET_PPPOE_INFO; ///@brief Email??????? typedef struct tagNET_EMAIL_INFO { DWORD dwSize; BOOL bEnable; /// ???0:false, 1:true char szMailIPAddr[DH_MAX_DOMAIN_NAME_LEN]; /// ????????????(IP????????) WORD wMailPort; /// ???????????? char reserved[2]; /// ??????? char szSenderAddr[DH_MAX_MAIL_ADDR_LEN]; /// ?????? char szUserName[DH_MAX_MAIL_NAME_LEN]; /// ????? char szUserPsw[DH_MAX_MAIL_NAME_LEN]; /// ??????? char szDestAddr[DH_MAX_MAIL_ADDR_LEN]; /// ????? char szSubject[DH_MAX_MAIL_SUBJECT_LEN]; /// ???? char *szReceivers[DH_MAX_MAIL_ADDR_LEN]; /// ????????????????????? unsigned int nReceiversNum; /// ????????? unsigned int nReceiversNumRet; /// ????????????????? BOOL bSSLEnable; /// SSL??? BOOL bTLSEnable; /// TLS??? WORD wSendInterval; /// ?????????,[0,3600]?? BYTE bAnonymous; /// ???????[0,1], 0???FALSE,1???TRUE. BYTE bAttachEnable; /// ???????[0,1], 0???FALSE,1???TRUE. BOOL bHealthReport; /// ?????????? int nHealthReportInterval; /// ?????????? }NET_EMAIL_INFO; ///@brief DDNS??????? typedef struct tagNET_DDNS_INFO { DWORD dwSize; DWORD dwDdnsServerNum; /// DDNS ?????????? DH_DDNS_SERVER_CFG stuDdnsServer[DH_MAX_DDNS_NUM]; }NET_DDNS_INFO; ///@brief ?????????????????? typedef struct tagNET_PROTOCOLS_MANAGER { char szDesc[DH_COMMON_STRING_128]; /// ????????,??:????????_DI_SMK BOOL bEnable; /// ????? char szProtocol[DH_COMMON_STRING_128]; /// ????????,??:DI_SMK char szShowType[DH_COMMON_STRING_128]; /// ????????,??:SmokingSensor BYTE byReserved[256]; /// ??????? }NET_PROTOCOLS_MANAGER; ///@brief ?????????????? typedef struct tagNET_SCADA_PROTOCOLS_MANAGER { DWORD dwSize; NET_PROTOCOLS_MANAGER* pstProtocolsManager; /// ?????????????? int nProtocolsManagerNum; /// ?????????????????? int nRetProtocolsManagerNum; /// ????????????????????????? /// ?????????????????????????????nRetProtocolsManagerNum????nProtocolsManagerNum /// ???????????????????????????????nProtocolsManagerNum????????nRetProtocolsManagerNum }NET_SCADA_PROTOCOLS_MANAGER; ///@brief ?????????????? typedef struct tagNET_DEVICEIDSETS { char szDevName[DH_COMMON_STRING_32]; /// ??????? char szDevType[DH_COMMON_STRING_32]; /// ??????? char szNewDeviceId[DH_COMMON_STRING_32]; /// ??????????????,szNewDeviceId?????????szOldDeviceId??????????? char szOldDeviceId[DH_COMMON_STRING_32]; /// ?????????? BYTE byReserved[128]; /// ??????? }NET_DEVICEIDSETS; ///@brief ?????????? typedef struct tagNET_SCADA_DEVICEINFO_CFG { DWORD dwSize; char szCity[DH_COMMON_STRING_32]; /// ??????? char szProvince[DH_COMMON_STRING_32]; /// ??????? int nStation; /// ??????? NET_DEVICEIDSETS* pstDeviceIdSets; /// ?????????? int nDeviceIdSetsNum; /// ??????????? int nRetDeviceIdSetsNum; /// ??????????????? }NET_SCADA_DEVICEINFO_CFG; ///@brief ????????????? typedef struct tagNET_SCADA_CONTROLLER_SITE_INFO { char szIPAddress[64]; /// IP??? char szDevName[64]; /// ??????? UINT nPort; /// ??? char szDeviceID[32]; /// ???ID.???????????????????????? BYTE bReserved[128]; /// ??????? }NET_SCADA_CONTROLLER_SITE_INFO; ///@brief ????????????? typedef struct tagNET_CFG_SCADA_CONTROLLER_SITE_INFO { DWORD dwSize; /// ??????? int nControllerNum; /// ?????????? NET_SCADA_CONTROLLER_SITE_INFO stuControllerInfo[128]; /// ????????? }NET_CFG_SCADA_CONTROLLER_SITE_INFO; ///@brief ??????VPN???? typedef enum tagNET_EM_LINK_LAYER_VPN_TYPE { NET_EM_TYPE_UNKNOWN = 0, /// ??????? NET_EM_TYPE_PPTP, /// PPTP???????????VPN NET_EM_TYPE_L2TP, /// L2TP???????????VPN }NET_EM_LINK_LAYER_VPN_TYPE; ///@brief ??????VPN???????? typedef struct tagNET_NETAPP_LINK_LAYER_VPN { char szName[MAX_LINK_NAME_LEN]; /// ???????? NET_EM_LINK_LAYER_VPN_TYPE emLinkLayerVPNType; /// ??????VPN???? BOOL bEnable; /// ?????? char szAddress[MAX_SERVER_ADDRESS_LEN]; /// ??????IP char szUserName[MAX_USER_NAME_LEN]; /// ????? char szPassword[MAX_PWD_LEN]; /// ???? BYTE byReserved[1024]; /// ??????? }NET_NETAPP_LINK_LAYER_VPN; ///@brief ??????VPN???? typedef struct tagNET_NETAPP_LINK_LAYER_VPN_CFG { DWORD dwSize; int nRetLinkLayerVPNNum; ///???????????VPN??????? NET_NETAPP_LINK_LAYER_VPN stLinkLayerVPN[LINK_LAYER_VPN_NUM]; ///??????VPN???????? }NET_NETAPP_LINK_LAYER_VPN_CFG; ///@brief ssh????????? typedef struct tagNET_NETAPP_SSHD_CFG { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????sshd???????? } NET_NETAPP_SSHD_CFG; ///@brief ???????? typedef struct tagNET_MEMBERS_INFO { char szName[MAX_COMMON_STRING_32]; /// ????????? char szMobile[MAX_COMMON_STRING_16]; /// ??????? char szEmail[MAX_COMMON_STRING_32]; /// ???????? char szOrganization[MAX_COMMON_STRING_64]; /// ??? }NET_MEMBERS_INFO; ///@brief ?????? typedef enum tagNET_NOTIFY_TYPE { NET_NOTIFY_TYPE_UNKNOWN, /// ??? NET_NOTIFY_TYPE_SMS, /// ???? NET_NOTIFY_TYPE_CALL, /// ??? NET_NOTIFY_TYPE_ALL, /// ????&??? }NET_NOTIFY_TYPE; ///@brief ????????????? typedef struct tagNET_NOTIFY_INFO { NET_NOTIFY_TYPE emType; /// ?????? BOOL bAlarmEvents; /// ?????????????????? BOOL bSystemEvents; /// ?????????????????? BOOL bOperationEvents; /// ?????????????????? }NET_NOTIFY_INFO; ///@brief ??????????? typedef struct tagNET_NETAPP_COMMUNICATION_LIST { char szGroupName[MAX_COMMON_STRING_16]; /// ?????????,??????????? int nMembersNum; /// ???????? NET_MEMBERS_INFO arrMembers[32]; /// ???????? NET_NOTIFY_INFO stuNotifyInfo; /// ????????????? }NET_NETAPP_COMMUNICATION_LIST; ///@brief ??????? typedef struct tagNET_NETAPP_COMMUNICATION_LIST_CFG { DWORD dwSize; /// ??????? int nConmmunicationListNum; /// ?????????????? NET_NETAPP_COMMUNICATION_LIST stuCommunication[10]; /// ??????????? }NET_NETAPP_COMMUNICATION_LIST_CFG; ///@brief Web?????????? typedef struct tagNET_NETAPP_WEB_CFG { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????? UINT nPort; /// ???? }NET_NETAPP_WEB_CFG; ///@brief ?????????????????? typedef struct tagNET_VSP_CHINA_TOWER { DWORD dwSize; BOOL bEnable; /// ???????,TRUE?????,FALSE???? char szServerIP[MAX_SERVER_IP_LEN]; /// ??????IP int nServerPort; /// ?????????,??????0~65535 int nLoginInterval; /// ????????,???????,??????60~180 }NET_VSP_CHINA_TOWER; ///@brief ??????????????? typedef struct tagNET_VSP_SHDXJT { DWORD dwSize; BOOL bEnable; /// ???????,TRUE?????,FALSE???? char szRegisterUrl[128]; /// ????????URL??? char szDeviceID[32]; /// ???????????????????????? char szDeviceKey[32]; /// ?????????????????????????? int nEStoreFlag; /// ??????????, 0????????1????? BYTE byReserve[4]; /// ?????????????????? }NET_VSP_SHDXJT; ///@brief ????????? typedef struct tagNET_CFG_VSP_CONSUME { DWORD dwSize; /// ??????? UINT nTotalNumber; /// ?????????? }NET_CFG_VSP_CONSUME; ///@brief ????????????????(???NET_EM_CFG_VTH_PASSWORD) typedef struct tagNET_CFG_VTH_PASSWORD_INFO { DWORD dwSize; char szUser[8]; /// ????????????6???????? }NET_CFG_VTH_PASSWORD_INFO; ///@brief sip??????????? typedef struct tagNET_CFG_SIPSERVER_INFO { DWORD dwSize; char szAccoutName[MAX_COMMON_STRING_64]; /// ??????? char szAddres[DH_MAX_IPADDR_EX_LEN]; /// sip????????? int nPort; /// sip?????????? char szProxyAdress[DH_MAX_IPADDR_EX_LEN]; /// ????????????? char szProxyID[MAX_COMMON_STRING_64]; /// ??????????ID int nProxyPort; /// ?????????????? char szUserID[MAX_COMMON_STRING_64]; /// ???ID????????????? int nUserType; /// ????????0:SIP?????,2:????????????,3:VTNC???????? char szAuthID[MAX_USER_NAME_LEN]; /// ???????ID char szAuthPassword[MAX_PWD_LEN]; /// ??????????? char szSTUNServer[DH_MAX_IPADDR_EX_LEN]; /// UDP?????????????????????????? char szRegisterRealm[MAX_COMMON_STRING_64]; /// ????? int nRegExpiration; /// ???????????????? int nSipPort; /// ????Sip??? int nRTPPort; /// ????RTP??? BOOL bUnregisterOnReboot; /// ???????????????? char szDefaultCallNumber[MAX_COMMON_STRING_64]; /// ?????????? UINT nVideoStreamType; /// ?????????????????,0??????????1????????1??2????????2??3????????3?? UINT nAudioStreamType; /// ?????????????????,0??????????1????????1??2????????2??3????????3?? BOOL bRouteEnable; /// ?????Sip????????? int nRouteCount; /// ?????????? char szRouteAddress[DH_MAX_IPADDR_EX_LEN][MAX_ROUTE_NUM]; /// ?????? char szSIPServerLoginUserName[MAX_USER_NAME_LEN];/// ???VTNC??????? char szSIPServerLoginPWD[MAX_PWD_LEN]; /// ???VTNC?????? BOOL bMainVTO; /// ????????????????? char szRedundancyServer[DH_MAX_IPADDR_EX_LEN]; /// ????sip????????? char szRedundancyUserName[MAX_USER_NAME_LEN]; /// ?????????????????? char szRedundancyPassword[MAX_PWD_LEN]; /// ????????????????? char szAnalogNumberStart[MAX_COMMON_STRING_64]; /// ?????????????????????????? char szAnalogNumberEnd[MAX_COMMON_STRING_64]; /// ??????????????????????????? BOOL bUserEnable; /// ?????? }NET_CFG_SIPSERVER_INFO; ///@brief ?????????? typedef struct tagNET_DEVICE_LOGIN_INFO { char szAddress[DH_MAX_IPADDR_EX_LEN]; /// IP??? char szLongNumber[MAX_COMMON_STRING_16]; /// ???? char szUsername[MAX_COMMON_STRING_16]; /// ????? char szPassword[MAX_COMMON_STRING_16]; /// ???? BYTE byReserved[512]; /// ??????? } NET_DEVICE_LOGIN_INFO; ///@brief ??????????????????? typedef struct tagNET_CFG_DEVICE_LOGIN_INFO { DWORD dwSize; int nCount; /// ????????????? NET_DEVICE_LOGIN_INFO stDeviceLoginInfo[32]; /// ?????????? } NET_CFG_DEVICE_LOGIN_INFO; ///@brief ?????????????(???NET_EM_CFG_AELENSMASK) typedef struct tagNET_CFG_AELENSMASK_INFO { DWORD dwSize; BOOL bEnable; /// ?????(true???????????????????) char szName[MAX_COMMON_STRING_128]; /// ????????? BOOL bStatus; /// ??????true:??????????false:??????????? }NET_CFG_AELENSMASK_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_SINGLE_ULTRASONIC { BOOL bEnable; ///?????????????? UINT nFreq; ///????????????????hz int nBurst; ///??????????????????? int nGain; ///????????????Z??[0,100] int nDriveCurrent; ///??????????????????????mA int nMinValidDistance; ///??????????????????cm int nMaxValidDistance; ///?????????????????cm???????????????????????????????? int nMinVaildSignalIntensity; ///????????????? ?????????????????????? int nMaxVaildSignalIntensity; ///?????????? BYTE byReserved[512]; ///??????? }NET_CFG_SINGLE_ULTRASONIC; ///@brief ????????? typedef struct tagNET_CFG_ULTRASONIC_INFO { DWORD dwSize; int nMaxCount; ///?????????????? int nRetCount; ///????????????????? NET_CFG_SINGLE_ULTRASONIC *pstuULTRASONIC; ///??????????????????????????? }NET_CFG_ULTRASONIC_INFO; ///@brief ????????????? typedef struct tagNET_CFG_ACCESS_DELAYSTRATEGY { DWORD dwSize; BOOL bEnable; /// ??????? int nPreArrearsTerm; /// ????????????????? int nArrearsTerm; /// ???????????????? }NET_CFG_ACCESS_DELAYSTRATEGY; ///@brief ?????????? typedef enum tagNET_EM_REGISTAR_SERVER_TYPE { NET_EM_REGISTAR_SERVER_TYPE_UNKNOWN, NET_EM_REGISTAR_SERVER_TYPE_VTO, NET_EM_REGISTAR_SERVER_TYPE_H500, NET_EM_REGISTAR_SERVER_TYPE_VTNC, NET_EM_REGISTAR_SERVER_TYPE_ZYCOO, NET_EM_REGISTAR_SERVER_TYPE_THIRDPARTY, NET_EM_REGISTAR_SERVER_TYPE_3CXSYSTEM, NET_EM_REGISTAR_SERVER_TYPE_ASTERISK, }NET_EM_REGISTAR_SERVER_TYPE; ///@brief ??????????????? typedef struct tagNET_CFG_REGISTAR_INFO { DWORD dwSize; char szRegistarName[MAX_COMMON_STRING_64]; /// ???????????????? NET_EM_REGISTAR_SERVER_TYPE emServerType; /// ???????????? BOOL bRegistarEnable; /// ?????? char szAddress[DH_MAX_IPADDR_EX_LEN]; /// ????? int nPort; /// ????? char szPassword[MAX_COMMON_STRING_64]; /// ??????? }NET_CFG_REGISTAR_INFO; ///@brief ????????????????? typedef struct tagNET_CFG_RECORDEXTRA_INFO { DWORD dwSize; DH_TSECT stuTimeSection[DH_N_SCHEDULE_TSECT][DH_N_REC_TSECT]; /// ?????7??????????7????8???????????????????6?????? }NET_CFG_RECORDEXTRA_INFO; #define NET_MAX_NUM_RECORDBACKUP_TASK 512 /// ???????????????? #define NET_MAX_NUM_RECORDBACKUP_CHANNEL 128 /// ????????????????? ///@brief ????????? typedef struct tagNET_RECORDBACKUP_TASK { int nNumChannel; /// ??????? int nChannel[NET_MAX_NUM_RECORDBACKUP_CHANNEL];/// ????????? NET_TIME_EX stuStartTime; /// ?????? NET_TIME_EX stuEndTime; /// ??????? char szStorageGroupName[DH_COMMON_STRING_32]; /// ??????????????????????????????????????????????????? ///"ReadWrite*",??????????,?????"*"???????,???????????? ///"ReadOnly",????????? ///"Redundant",??????,??????????,????????.??"ReadWirte"??????????? ///"NASFTP-" ?? "NASNFS-" ?? "NASSMB-" ?? "NASISCSI-" ?? "NASCloud-" ///"Backup":??????,???????????U??,??????????.????????????,??????????? ///"DrawFrame":????????,??????????,????????.??????????????,???????????? BYTE byReserved[512]; /// ??????? }NET_RECORDBACKUP_TASK; ///@brief ????????????(NET_EM_CFG_AUTO_RECORDBACKUP_RESTORE) typedef struct tagNET_CFG_AUTORECORDBACKUPRESTORE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????? UINT nSpeed; /// ?????????,????:Kbps NET_TIME_EX stuBackupTime; /// ??????????? int nNumTask; /// ????????????? NET_RECORDBACKUP_TASK stuTask[NET_MAX_NUM_RECORDBACKUP_TASK]; ///????????? }NET_CFG_AUTORECORDBACKUPRESTORE_INFO; ///@brief IPC?????????? typedef enum tagEM_FACE_SNAP_POLICY { EM_FACE_SNAP_POLICY_UNKNOWN, /// ??? EM_FACE_SNAP_POLICY_REALTIME, /// ???????(????????????????????) EM_FACE_SNAP_POLICY_OPTIMAL, /// ???????????????????????(OptimalTime)???????????????????????????????? EM_FACE_SNAP_POLICY_QUALITY, /// ?????????????Optimal??????????????????????????????????????????? EM_FACE_SNAP_POLICY_RECOGNITION, /// ????????????????????????????????????????????????????????????????????????????????????????????????? EM_FACE_SNAP_POLICY_QUICK, /// ???????????????????????????????????????? EM_FACE_SNAP_POLICY_FULLTRACK, /// ???????????????????????? EM_FACE_SNAP_POLICY_INTERVAL, /// ?????? EM_FACE_SNAP_POLICY_SINGLE, /// ?????? EM_FACE_SNAP_POLICY_PRECISION, /// ?????????????????? }EM_FACE_SNAP_POLICY; ///@brief IPC??????????????? typedef enum tagEM_CUTOUT_POLICY { EM_CUTOUT_POLICY_UNKNOWN = -1, /// ??? EM_CUTOUT_POLICY_UNSUPPORT, /// ??????? EM_CUTOUT_POLICY_ORIGINAL, /// ???????????? EM_CUTOUT_POLICY_HALF, /// ?????? EM_CUTOUT_POLICY_WHOLE, /// ????? EM_CUTOUT_POLICY_CEPHALOTHORAX, /// ????? }EM_CUTOUT_POLICY; ///@brief IPC??????????? typedef struct tagNET_CFG_FACESNAPSHOT_INFO { DWORD dwSize; /// ??????? EM_FACE_SNAP_POLICY emSnapPolicy; /// ?????? UINT nSnapFrames; /// ??????????????????????????[10,1500]?????25? UINT nOptimalTime; /// ??????????,?????? /// emSnapPolicy?EM_FACE_SNAP_POLICY_OPTIMAL??EM_FACE_SNAP_POLICY_QUALITY????? EM_CUTOUT_POLICY emCutoutPolicy; /// UINT nIntervalFrmCnt; /// ??????????????? emSnapPolicy ? EM_FACE_SNAP_POLICY_RECOGNITION ???? UINT nOptimalInterval; /// ??????????? emSnapPolicy ? EM_FACE_SNAP_POLICY_INTERVAL ???? UINT nOptimalCount; /// ???????????emSnapPolicy ? EM_FACE_SNAP_POLICY_INTERVAL ???? UINT nRecognizeTimeout; /// ??????????????,?????? }NET_CFG_FACESNAPSHOT_INFO; ///@brief ??????? typedef enum tagEM_RECORD_TYPE { EM_RECORD_TYPE_UNKNOWN, /// ??? EM_RECORD_TYPE_COMMON, /// ?????? EM_RECORD_TYPE_ALARM2, /// ??????? EM_RECORD_TYPE_MOTIONDETECT, /// ??????? }EM_RECORD_TYPE; ///@brief ???????? typedef struct tagNET_TIME_RECORDBACKUP_TASK { UINT nChannelCount; /// ??????????? UINT nChannels[512]; /// ????? UINT nRemoteChannels[512]; /// ???????? char szDeviceIP[64]; /// ????????IP,?????????????????????????ID??????" IPC9912" UINT nPort; /// ???,??????????????????????0,DeviceIP??Port??b?????? char szUserName[64]; /// ????? char szPassword[64]; /// ???? NET_TIME_EX1 stuStartTime; /// ?????? NET_TIME_EX1 stuEndTime; /// ??????? char szStorageGroupName[32]; /// ????????????? EM_RECORD_TYPE emRecordType; /// ??????????????????? NET_STREAM_TYPE emStreamType; /// ???????????????????? BYTE byReserved[504]; /// ??????? }NET_TIME_RECORDBACKUP_TASK; ///@brief ????????????? typedef struct tagNET_RECORDBACKUP_PROCESSTIME { NET_TIME_EX1 stuStartTime; /// ?????? NET_TIME_EX1 stuEndTime; /// ??????? BYTE bReserved[64]; /// ??????? }NET_RECORDBACKUP_PROCESSTIME; ///@brief ??????????????? typedef struct tagNET_CFG_TIME_RECORDBACKUP_RESTORE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????????????????? int nProcessTimeCount; /// ????????????????????? NET_RECORDBACKUP_PROCESSTIME stuProcessTime[4]; /// ????????????? int nTaskCount; /// ???????????? NET_TIME_RECORDBACKUP_TASK stuTask[512]; /// ???????, ??????512??; }NET_CFG_TIME_RECORDBACKUP_RESTORE_INFO; ///@brief ?????????? typedef enum tagNET_EM_DOWNLOAD_SPEED { NET_EM_DOWNLOAD_SPEED_UNKNOWN = -1, /// ??? NET_EM_DOWNLOAD_SPEED_ZERO = 0, /// ?????? NET_EM_DOWNLOAD_SPEED_1024 = 1024, /// 1024bps NET_EM_DOWNLOAD_SPEED_2048 = 2048, /// 2048bps NET_EM_DOWNLOAD_SPEED_3072 = 3072, /// 3072bps NET_EM_DOWNLOAD_SPEED_4096 = 4096, /// 4096bps NET_EM_DOWNLOAD_SPEED_8192 = 8192, /// 8192bps } NET_EM_DOWNLOAD_SPEED; ///@brief ?????????????? typedef struct tagNET_CFG_RECORD_DOWNLOAD_SPEED_ALL_INFO { DWORD dwSize; /// ??????? NET_EM_DOWNLOAD_SPEED emSpeed; /// ?????????? }NET_CFG_RECORD_DOWNLOAD_SPEED_ALL_INFO; ///@brief ??????? typedef enum tagNET_EM_REPORT_POLICY { NET_EM_REPORT_POLICY_UNKNOWN, NET_EM_REPORT_POLICY_AUTO, /// ????????? NET_EM_REPORT_POLICY_TIMING, /// ???????? }NET_EM_REPORT_POLICY; ///@brief ???????????? typedef struct tagNET_AUTO_REPORT_INFO { int nReportTime; /// ??????????????:?? int nReportDistance; /// ???????????:?? int nInflectionPointAngle; /// ??????????:?? int nAccOffReportTime; /// ACC???????????????,????:?? BYTE byReserved[1024]; /// ??????? }NET_AUTO_REPORT_INFO; ///@brief GPS??????????????(??? NET_EM_CFG_POSITIONREPORTPOLICY) typedef struct tagNET_CFG_POSITIONREPORTPOLICY_INFO { DWORD dwSize; NET_EM_REPORT_POLICY emReportPolicy; /// ???????,?????????????emReportPolicy???NET_EM_REPORT_POLICY_UNKNOWN NET_AUTO_REPORT_INFO stuAutoReportInfo; /// ?????????,???????emReportPolicy?NET_EM_REPORT_POLICY_AUTO????? }NET_CFG_POSITIONREPORTPOLICY_INFO; ///@brief ?????????? typedef struct tagNET_RUNMODE_PARAMS { DWORD dwSize; ///??????0:????????1:?????? int nMode; /*???nWinConnectBufSize (windows) ????????????????????(????????)?? * ?0??????????????250*1024?????????128*1024 */ int nWinConnectBufSize; /*???nWinSocketRcvBuf (windows/linux), socket??????????(????????)?? * ?0??????????????64*1024?????????36*1024 */ int nWinSocketRcvBuf; }NET_RUNMODE_PARAMS; ///@brief ????????????? typedef struct tagNET_CFG_ARMSCHEDULE_INFO { DWORD dwSize; BOOL bEnable; /// ??????? DH_TSECT stuTimeSection[DH_N_SCHEDULE_TSECT][DH_N_REC_TSECT]; /// ?????7??????????7????8???????????????????6?????? }NET_CFG_ARMSCHEDULE_INFO; #define MAX_CID_NUM 100 /// ???CID?????????? #define MAX_FTCID_NUM 100 /// 4+2??CID?????????? #define MAX_TEL_NUM 2 /// ?????????????????????? ///@brief ???????? typedef enum tagEM_CID_REPORT_PROTOCOL_TYPE { EM_CID_REPORT_PROTOCOL_TYPE_UNKNOWN, /// ??? EM_CID_REPORT_PROTOCOL_TYPE_CID, /// ???CID???? EM_CID_REPORT_PROTOCOL_TYPE_FTCID, /// 4+2??CID???? }EM_CID_REPORT_PROTOCOL_TYPE; ///@brief ???CID??????????? typedef enum tagEM_CID_EVENT_CODE { EM_CID_EVENT_CODE_UNKNOWN =-1, /// -1 : ??? EM_CID_EVENT_CODE_DEFENCE_GENERAL_ALARM, /// 0 : ????????? EM_CID_EVENT_CODE_DEFENCE_PREVENT_MOVE_ALARM, /// 1 : ????????? EM_CID_EVENT_CODE_DEFENCE_FAULT_ALARM, /// 2 : ??????????? EM_CID_EVENT_CODE_DEFENCE_BYPASS, /// 3 : ???????? EM_CID_EVENT_CODE_RAPID_ARM, /// 4 : ??????? EM_CID_EVENT_CODE_LOCK_ARM_DISARM, /// 5 : ???????? EM_CID_EVENT_CODE_REMOTE_ARM_DISARM, /// 6 : ???????? EM_CID_EVENT_CODE_TIME_ARM_DISARM, /// 7 : ????????? EM_CID_EVENT_CODE_TELEOPERATION_ARM_DISARM, /// 8 : ???????? EM_CID_EVENT_CODE_USER_ARM_DISARM, /// 9 : ????????? EM_CID_EVENT_CODE_PART_ARM_DISARM, /// 10 : ????????? EM_CID_EVENT_CODE_HOST_PREVENT_MOVE, /// 11 :???????? EM_CID_EVENT_CODE_HOST_POWER_FAULT, /// 12 :???????? EM_CID_EVENT_CODE_BATTERY_LOW, /// 13 :????? EM_CID_EVENT_CODE_BATTERY_FAULT, /// 14 :?????? EM_CID_EVENT_CODE_TELEPHONE_DISCONNECTION, /// 15 :???????? EM_CID_EVENT_CODE_GSM_SIGNAl_BAD, /// 16 :GSM???? EM_CID_EVENT_CODE_ALARM_PREVENT_MOVE, /// 17 :??????? EM_CID_EVENT_CODE_MODULE_COMMUNICATION_FAULT, /// 18 :????????? EM_CID_EVENT_CODE_SYSTEM_TIME_ABNORMAl, /// 19 :??????? EM_CID_EVENT_CODE_SIM_CAR_FAULT, /// 20 :SIM?????? EM_CID_EVENT_CODE_NETWORK_COMMUNICATION_FAULT, /// 21 :?????????? EM_CID_EVENT_CODE_FIRE_ALARM, /// 22 :?? EM_CID_EVENT_CODE_ROBBER_ALARM, /// 23 :??? EM_CID_EVENT_CODE_URGENT_MEDICAL_ALARM, /// 24 :?????????? EM_CID_EVENT_CODE_DURESS_ALARM, /// 25 :??????? EM_CID_EVENT_CODE_PANIC_ALARM, /// 26 :?????? EM_CID_EVENT_CODE_PERIOD_TEST_REPORT, /// 27 :?????????? EM_CID_EVENT_CODE_MANUAL_TEST_REPORT, /// 28 :?????????? EM_CID_EVENT_CODE_CLEAR_ALARM_CACHE, /// 29 :??????????? EM_CID_EVENT_CODE_ALARM_CANCEL, /// 30 :??????? EM_CID_EVENT_CODE_EMERGENCY_ALARM, /// 31 :????????????????? EM_CID_EVENT_CODE_OUTSIDE_ZONE_ALARM, /// 32 :???????????????? EM_CID_EVENT_CODE_INSIDE_ZONE_ALARM, /// 33 :??????????? EM_CID_EVENT_CODE_24H_ZONE_ALARM, /// 34 :24H???????? EM_CID_EVENT_CODE_DELAY_ZONE_ALARM, /// 35 :??????????????????? EM_CID_EVENT_CODE_INTIME_DOUBLEMETHOD_ZONE_ALARM, /// 36 :???????+?????????????????? EM_CID_EVENT_CODE_24H_URGENCYBUTTON_ZONE_ALARM, /// 37 :24H??????????????????????????24H????????????????????????? EM_CID_EVENT_CODE_24H_FIRE_ZONE_ALARM, /// 38 :24H????????? EM_CID_EVENT_CODE_24H_ROBBERY_ZONE_ALARM, /// 39 :24H??????????? EM_CID_EVENT_CODE_24H_SILENT_ZONE_ALARM, /// 40 :24H???????????? EM_CID_EVENT_CODE_24H_SOUND_ZONE_ALARM, /// 41 :24H???????????? EM_CID_EVENT_CODE_24H_AUXILIARY_ZONE_ALARM, /// 42 :24H???????????? EM_CID_EVENT_CODE_24H_VIBRATION_ZONE_ALARM, /// 43 :24H????????? EM_CID_EVENT_CODE_TIMEOUT_ZONE_ALARM, /// 44 :??????????? EM_CID_EVENT_CODE_FOLLOW_ZONE_ALARM, /// 45 :??????????? EM_CID_EVENT_CODE_EXMODULE_FAULT, /// 46 :????????? EM_CID_EVENT_CODE_EXMODULE_DC_LOSS, /// 47 :?????????????? EM_CID_EVENT_CODE_EXMODULE_LOW_BATTERY, /// 48 :?????????? EM_CID_EVENT_CODE_EXMODULE_TAMPER, /// 49 :????????? EM_CID_EVENT_CODE_EXMODULE_AC_LOSS, /// 50 :?????????????? EM_CID_EVENT_CODE_PRINTER_FAILURE, /// 51 :????????? EM_CID_EVENT_CODE_GSM_FAULT, /// 51 :GSM?????? EM_CID_EVENT_CODE_ARMED_STAY, /// 53 :??????? EM_CID_EVENT_CODE_AUTO_ARM_FAILED, /// 54 :?????????? EM_CID_EVENT_CODE_SYSTEM_TROUBLE_PRESENT, /// 55 :????????? EM_CID_EVENT_CODE_PROGRAM_MODE_ENTRY, /// 56 :???????? EM_CID_EVENT_CODE_PROGRAM_MODE_EXIT, /// 57 :???????? EM_CID_EVENT_CODE_PANEL_PROGRAMMING_CHANGED, /// 58 :???????????????????SDK Demo????????? EM_CID_EVENT_CODE_KEYPAD_TAMPER_ALARM, /// 59 :???????? EM_CID_EVENT_CODE_IP_CONFLICT, /// 60 :IP??? }EM_CID_EVENT_CODE; ///@brief ???CID??????????? typedef struct tagNET_CFG_CID_REPORT_CID_INFO { int nTelNum; /// ??????????????????? int nTel[MAX_TEL_NUM]; /// ???????????????? EM_CID_EVENT_CODE emEventCode; /// ??????? BOOL bEventRestore; /// ??????????????? char szContactId[4]; /// 3???????????????? BYTE bReserved[256]; /// ??????? }NET_CFG_CID_REPORT_CID_INFO; ///@brief 4+2??CID??????????? typedef enum tagEM_FTCID_EVENT_CODE { EM_FTCID_EVENT_CODE_UNKNOWN =-1, /// ??? EM_FTCID_EVENT_CODE_DEFENCE_ALARM = 0, /// ??????0~15 : ????1~16???? EM_FTCID_EVENT_CODE_DEFENCE_ALARM_RESTORE = 16, /// ?????????16~31 : ????1~16??????? EM_FTCID_EVENT_CODE_DEFENCE_BYPASS = 32, /// ??????32~47 : ????1~16???? EM_FTCID_EVENT_CODE_DEFENCE_BYPASS_RESTORE = 48 , /// ?????????48~63 : ????1~16??????? EM_FTCID_EVENT_CODE_ARM = 64, /// 64 : ???? EM_FTCID_EVENT_CODE_DISARM = 65, /// 65 : ???? EM_FTCID_EVENT_CODE_ALARM_CANCEL = 66, /// 66 : ??????? EM_FTCID_EVENT_CODE_PERIOD_TEST_REPORT = 67, /// 67 : ?????????? EM_FTCID_EVENT_CODE_MANUAL_TEST_REPORT = 68, /// 68 : ?????????? EM_FTCID_EVENT_CODE_HOST_POWER_FAULT = 69, /// 69 : ???????? EM_FTCID_EVENT_CODE_HOST_POWER_FAULT_RESTORE = 70, /// 70 : ?????????? EM_FTCID_EVENT_CODE_BATTERY_LOW = 71, /// 71 : ????? EM_FTCID_EVENT_CODE_BATTERY_LOW_RESTORE = 72, /// 72 : ???????? EM_FTCID_EVENT_CODE_SOFT_KEYBOARD_REPORT_CODE = 73, /// 73 : ??????????? }EM_FTCID_EVENT_CODE; ///@brief 4+2??CID??????????? typedef struct tagNET_CFG_CID_REPORT_FTCID_INFO { int nTelNum; /// ??????????????????? int nTel[MAX_TEL_NUM]; /// ???????????????? EM_FTCID_EVENT_CODE emEventCode; /// ??????? int nDefenceChannel; /// ???????????????????????????????????????????????????? char szContactId[3]; /// 2???????????????? BYTE bReserved[257]; /// ??????? }NET_CFG_CID_REPORT_FTCID_INFO; ///@brief CID????????(???NET_EM_CFG_CID_REPORT) typedef struct tagNET_CFG_CID_REPORT_INFO { DWORD dwSize; /// ??????? EM_CID_REPORT_PROTOCOL_TYPE emProtocol; /// ???????? int nCIDNum; /// ???CID??????? NET_CFG_CID_REPORT_CID_INFO stuCID[MAX_CID_NUM]; /// ???CID????,??emProtocol?EM_CID_REPORT_PROTOCOL_TYPE_CID????? int nFTCIDNum; /// 4+2??CID???????,??emProtocol?EM_CID_REPORT_PROTOCOL_TYPE_FTCID????? NET_CFG_CID_REPORT_FTCID_INFO stuFTCID[MAX_FTCID_NUM]; /// 4+2??CID???? }NET_CFG_CID_REPORT_INFO; ///@brief ???????????????????? typedef struct tagNET_CFG_KBUSER_SERVER { int nUserCode; /// ?????? char szPasswd[7]; /// ???????? BYTE bReserved[129]; /// ??????? }NET_CFG_KBUSER_SERVER; /// ??????100???????????? #define MAX_KBUSER_SERVER_NUM 100 ///@brief ????????????????????(??? NET_EM_CFG_KBUER_PASSWORD) typedef struct tagNET_CFG_KBUSER_PASSWORD { DWORD dwSize; ///??????? int nServerNum; ///???????????????? NET_CFG_KBUSER_SERVER stuServers[MAX_KBUSER_SERVER_NUM]; ///???????????? }NET_CFG_KBUSER_PASSWORD; ///@brief ???????? typedef enum tagEM_VIDEODIAGNOSIS_PROJECT_TASK_TYPE { EM_VIDEODIAGNOSIS_PROJECT_TASK_TYPE_UNKNOWN, /// ??? EM_VIDEODIAGNOSIS_PROJECT_TASK_TYPE_BY_TIMESECTION, /// ????TimeSection????????????????????TimeSection???? EM_VIDEODIAGNOSIS_PROJECT_TASK_TYPE_BY_CHANNELNUM, /// ????????????????????????????????????????????????????????????????????IsCycle?true???????????,??????????????TimeSection } EM_VIDEODIAGNOSIS_PROJECT_TASK_TYPE; ///@brief ?????????? typedef struct tagNET_PROJECT_TASK { BOOL bEnable; /// ?????????? char szTaskName[MAX_PATH]; /// ????????Ansi???? DH_TSECT stuTimeSection[DH_N_WEEKS][DH_N_REC_TSECT]; /// ???????? BOOL bIsCycle; /// ??????????,TRUE??????,FALSE???????? EM_VIDEODIAGNOSIS_PROJECT_TASK_TYPE emTaskType; /// ???????? BOOL bIsRepeat; /// ?????????????????????/????????????? int nCycleInterval; /// ?????????????????? BYTE byReserved[500]; /// ??????? }NET_PROJECT_TASK; ///@brief ???????????? typedef struct tagNET_VIDEODIAGNOSIS_PROJECT_INFO { DWORD dwSize; char szProjectName[MAX_PATH]; /// ??????? int nTotalTaskNum; /// ?????????????????????, ????????????? int nReturnTaskNum; /// ??????????????????? NET_PROJECT_TASK* pstProjectTasks; /// ???????? , ????????????nTotalTaskNum?? } NET_VIDEODIAGNOSIS_PROJECT_INFO; ///@brief ?????????? typedef struct tagNET_PROJECT_TASK_INFO { BOOL bEnable; /// ?????????? char szTaskName[260]; /// ???????? DH_TSECT stuTimeSection[32][6]; /// ?????????????,????????31???????????????,??32???????????? BOOL bIsCycle; /// ??????????,TRUE??????,FALSE???????? BYTE byReserved[512]; /// ??????? }NET_PROJECT_TASK_INFO; ///@brief ???????????????????????,??? NET_EM_CFG_VIDEO_DIAGNOSIS_PROJECT_MONTH typedef struct tagNET_CFG_VIDEODIAGNOSIS_PROJECT_MONTH_INFO { DWORD dwSize; /// ??????? char szProjectName[260]; /// ??????? int nTotalTaskNum; /// ?????????????????????, ?????????????,??????32 int nReturnTaskNum; /// ??????????????????? NET_PROJECT_TASK_INFO* pstProjectTasks; /// ????????, ????????????nTotalTaskNum*sizeof(NET_PROJECT_TASK_INFO)????? }NET_CFG_VIDEODIAGNOSIS_PROJECT_MONTH_INFO; ///@brief GPS??????OSD???? typedef struct tagNET_CFG_GPSSTARNUM_OSD_INFO { DWORD dwSize; BOOL bBDOSDEnable; /// ??????????????? BOOL bGPSOSDEnable; /// ??????GPS?????? }NET_CFG_GPSSTARNUM_OSD_INFO; ///@brief ?????? typedef struct tagNET_OSD_PICTURE_TITLE { DWORD dwSize; NET_EM_OSD_BLEND_TYPE emOsdBlendType; /// ???????? BOOL bEncodeBlend; /// ?????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ????, ??????0~8191 char szName[DH_COMMON_STRING_64]; /// ?????? int nWidth; /// ???? int nHeight; /// ???? }NET_OSD_PICTURE_TITLE; ///@brief ??????????? NET_EM_CFG_PTZ_PRESET typedef struct tagNET_OSD_CFG_PTZ_PRESET { DWORD dwSize; int nDisplayTime; /// ??????,???????0 ????????,??????????1-3600 BOOL bEncodeBlend; /// ?????????????????? BOOL bPreviewBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???? }NET_OSD_CFG_PTZ_PRESET; ///@brief ????????????????? NET_EM_CFG_PTZ_PATTERN typedef struct tagNET_OSD_CFG_PTZ_PATTERN { DWORD dwSize; int nDisplayTime; /// ??????,???????0 ????????,??????????1-3600 BOOL bEncodeBlend; /// ?????????????????? BOOL bPreviewBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???? }NET_OSD_CFG_PTZ_PATTERN; ///@brief ???RS485?????????????? NET_EM_CFG_PTZ_RS485_DETECT typedef struct tagNET_OSD_CFG_PTZ_RS485_DETECT { DWORD dwSize; int nDisplayTime; /// ??????,???????0 ????????,??????????1-3600 BOOL bEncodeBlend; /// ?????????????????? BOOL bPreviewBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???? }NET_OSD_CFG_PTZ_RS485_DETECT; ///@brief ?????????????????? NET_EM_CFG_PTZ_COORDINATES typedef struct tagNET_OSD_CFG_PTZ_COORDINATES { DWORD dwSize; int nDisplayTime; /// ??????,???????0 ????????,??????????1-3600 BOOL bEncodeBlend; /// ?????????????????? BOOL bPreviewBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???? }NET_OSD_CFG_PTZ_COORDINATES; ///@brief ?????????????????? NET_EM_CFG_PTZ_DIRECTION typedef struct tagNET_OSD_CFG_PTZ_DIRECTION { DWORD dwSize; int nDisplayTime; /// ??????,???????0 ????????,??????????1-3600 BOOL bEncodeBlend; /// ?????????????????? BOOL bPreviewBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???? }NET_OSD_CFG_PTZ_DIRECTION; ///@brief ?????? typedef enum tagEM_TEMPERATURE_UNIT_EX { EM_TEMPERATURE_EX_UNKNOWN, /// ??? EM_TEMPERATURE_EX_CENTIGRADE, /// ????? EM_TEMPERATURE_EX_FAHRENHEIT, /// ????? EM_TEMPERATURE_EX_KELVIN, /// ?????? } EM_TEMPERATURE_UNIT_EX; ///@brief ?????????????????? NET_EM_CFG_TEMPERATURE typedef struct tagNET_OSD_CFG_TEMPERATURE { DWORD dwSize; int nDisplayTime; /// ??????,???????0 ????????,??????????1-3600 BOOL bEncodeBlend; /// ?????????????????? BOOL bPreviewBlend; /// ????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???? EM_TEMPERATURE_UNIT_EX emTemperatureType; /// ???????????? }NET_OSD_CFG_TEMPERATURE; ///@brief ?????????? typedef enum tagEM_TEMPERATURE_STATE { EM_TEMPERATURE_STATE_UNKNOWN, /// ??? EM_TEMPERATURE_STATE_LOW, /// ?? EM_TEMPERATURE_STATE_NORMAL, /// ???? EM_TEMPERATURE_STATE_HIGH, /// ?? } EM_TEMPERATURE_STATE; ///@brief ???????DH_ALARM_ANATOMY_TEMPDETECT_TO_PHONE (??????????????????) ????????????????? typedef struct tagALARM_ANATOMY_TEMPDETECT_TO_PHONE_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID char szObjPath[256]; /// ???????? char szVisSceneImagePath[256];///??????????? float fHighTemp; /// ???????????????????1????????????????? EM_TEMPERATURE_STATE emTempType; /// ??????? EM_TEMPERATURE_UNIT_EX emTempUnit; /// ???????????? BYTE byReserved[1020]; /// ?????? } ALARM_ANATOMY_TEMPDETECT_TO_PHONE_INFO; ///@brief ???????DH_ALARM_CHANNEL_CAPS_CHANGE (?????????????????) ????????????????? typedef struct tagALARM_CHANNEL_CAPS_CHANGE_INFO { UINT nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID UINT nOldCapsCnt; /// ???????????????????? UINT nNewCapsCnt; /// ??????????????????? char szOldCaps[16][64]; /// ????????????????? char szNewCaps[16][64]; /// ???????????????? char szReserved[1024]; /// ?????? } ALARM_CHANNEL_CAPS_CHANGE_INFO; ///@brief ?????? typedef enum tagEM_RAIN_FALL_STATUS { EM_RAIN_FALL_STATUS_UNKNOWN, /// ??? EM_RAIN_FALL_STATUS_NORMAL, /// ???? EM_RAIN_FALL_STATUS_HIGH, /// ??????????? } EM_RAIN_FALL_STATUS; ///@brief ???????DH_ALARM_RAIN_FALL_MSG (??????????????) ????????????????? typedef struct tagALARM_RAIN_FALL_MSG_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_TIME_EX stuTime; /// ???????????? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID EM_EVENT_TYPE emEventType; /// ????????????? float fRainLevel; /// ???????(??????????) EM_RAIN_FALL_STATUS emStatus; /// ?????? char szReserved[1024]; /// ??????? } ALARM_RAIN_FALL_MSG_INFO; ///@brief ???????DH_ALARM_VEHICLE_DETENTION(???????????) ????????????????? typedef struct tagALARM_VEHICLE_DETENTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuTime; /// ???????????? int nEventID; /// ???ID NET_TIME stuDetentionStartTime; /// ?????????? char szPlateNumber[128]; /// ??????? char szReserved[1024]; /// ?????? }ALARM_VEHICLE_DETENTION_INFO; ///@brief ???????DH_ALARM_ANIMAL_DETECTION (?????????) ????????????????? typedef struct tagALARM_ANIMAL_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? NET_TIME_EX stuTime; /// ???????????? EM_SCENE_CLASS_TYPE emClassType; /// ??????????????? UINT nEventID; /// ???ID UINT nRuleID; /// ????????????????????????????????? UINT nSequence; /// ???? NET_ANIMAL_SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_ANIMAL_OBJECTS_STATISTICS stuObjectsStatistics; /// ?????????? EM_DETECTION_SCENE_TYPE emDetectionSceneType; /// ??????????????????? int nObjectListCount; /// ????????????????? NET_ANIMAL_OBJECT_LIST_INFO stuObjectListInfo[64]; /// ????????????? char szReserved[1024]; /// ??????? } ALARM_ANIMAL_DETECTION_INFO; ///@brief ????? typedef enum tagEM_RESULT { EM_RESULT_UNKNOWN = -1, /// ???????? EM_RESULT_ALL_NORMAL, /// ??????????? EM_RESULT_CORE_NORMAL, /// ??????????? EM_RESULT_CORE_ABNORMAL, /// ?????????? }EM_RESULT; ///@brief ?????? typedef enum tagEM_INFRARED_ERROR_CODE { EM_INFRARED_ERROR_CODE_UNKNOWN = -1, /// ??? EM_INFRARED_ERROR_CODE_ALL_INFRARED_NORMAL, /// ??????????? EM_INFRARED_ERROR_CODE_NOCORE_ABNORMAL, /// ??????????????????????? EM_INFRARED_ERROR_CODE_CORE_ABNORMAL, /// ????????? }EM_INFRARED_ERROR_CODE; ///@brief ???????? typedef struct tagNET_INFRARED { EM_INFRARED_ERROR_CODE emInfraredErrorCode; /// ?????? UINT nFaultNumber; /// ???????????? UINT nFaultNoList[32]; /// ????????????? char szReserved[512]; /// ?????? }NET_INFRARED; ///@brief ?????? typedef enum tagEM_FIRMWARE_ERROR_CODE { EM_FIRMWARE_ERROR_CODE_UNKNOWN = -1, /// ??? EM_FIRMWARE_ERROR_CODE_ADAPTATION, /// ???? EM_FIRMWARE_ERROR_CODE_COMPATIBLE, /// ???? EM_FIRMWARE_ERROR_CODE_NOCOMPATIBLE, /// ?????? }EM_FIRMWARE_ERROR_CODE; ///@brief ???????? typedef struct tagNET_FIRMWARE { EM_FIRMWARE_ERROR_CODE emFirmwareErrorCode; /// ?????? char szReserved[512]; /// ?????? }NET_FIRMWARE; ///@brief ?????? typedef enum tagEM_MOTOR_ERROR_CODE { EM_MOTOR_ERROR_CODE_UNKNOWN = -1, /// ??? EM_MOTOR_ERROR_CODE_NORMAL, /// ???? EM_MOTOR_ERROR_CODE_UVW_LACK, /// UVW??? EM_MOTOR_ERROR_CODE_AB_LACK, /// ??????A/B??? EM_MOTOR_ERROR_CODE_Z_LACK, /// ??????Z??? EM_MOTOR_ERROR_HALL_SENSOR_ABNORMAL, /// ???????????? EM_MOTOR_ERROR_CODE_ZERO, /// ????????????????????????????????????? EM_MOTOR_ERROR_CODE_ROTATION, /// ???????????? }EM_MOTOR_ERROR_CODE; ///@brief ???????? typedef struct tagNET_MOTOR { EM_MOTOR_ERROR_CODE emMotorErrorCode; /// ?????? char szReserved[512]; /// ?????? }NET_MOTOR; ///@brief ???????DH_ALARM_ASG_SELFCHECK (?????????) ????????????????? typedef struct tagALARM_ASG_SELFCHECK_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? EM_RESULT emResult; /// ????? NET_INFRARED stuInfrared; /// ???????? NET_FIRMWARE stuFirmWare; /// ???????? NET_MOTOR stuMotor; /// ???????? char szReserved[1024]; /// ??????? }ALARM_ASG_SELFCHECK_INFO; ///@brief ???????? typedef enum tagEM_GPS_CONTROLLED_TYPE { EM_GPS_CONTROLLED_TYPE_UNKNOWN, /// ??? EM_GPS_CONTROLLED_TYPE_FOCALCAR, /// ????? EM_GPS_CONTROLLED_TYPE_GUARANTEECAR, /// ??????? EM_GPS_CONTROLLED_TYPE_FOLLOWCAR, /// ??????? EM_GPS_CONTROLLED_TYPE_OTHER, /// ???? }EM_GPS_CONTROLLED_TYPE; ///@brief GPS????????????ALARM_GPS_REPORTING_PLATFORM typedef struct tagALARM_GPS_REPORTING_PLATFORM_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) UINT nEventID; /// ???ID NET_TIME_EX stuUTC; /// ???????????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??(??????????GPS???) EM_GPS_CONTROLLED_TYPE emControlledType; /// ???????? char szPlateNumber[64]; /// ????? char szReserved[1024]; /// ?????? }ALARM_GPS_REPORTING_PLATFORM; ///@brief ??????? typedef enum tagEM_HOSPITAL_ALARM_TYPE { EM_HOSPITAL_ALARM_TYPE_UNKNOWN, /// ??? EM_HOSPITAL_ALARM_TYPE_EMERGENCY, /// ??????????? EM_HOSPITAL_ALARM_TYPE_NURSING, /// ??????? EM_HOSPITAL_ALARM_TYPE_HOSTING, /// ??????????? EM_HOSPITAL_ALARM_TYPE_ABNORMAL_BODY_TEMPERATURE, /// ??????????? EM_HOSPITAL_ALARM_TYPE_DRESSING_CHANGE_REQUEST, /// ??????? EM_HOSPITAL_ALARM_TYPE_REQUEST_SUPPORT, /// ?????? EM_HOSPITAL_ALARM_TYPE_NURSING_REQUEST, /// ???????? EM_HOSPITAL_ALARM_TYPE_HANDLE_DISCONNECTED_ALARM, /// ?????????? EM_HOSPITAL_ALARM_TYPE_DISINFECT_CLEAN_COMPLETE, /// ????????? }EM_HOSPITAL_ALARM_TYPE; ///@brief ???????DH_ALARM_HOSPITAL_ALARM(??????????????) ????????????????? typedef struct tagALARM_HOSPITAL_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; NET_TIME_EX stuTime; /// ???????????? EM_HOSPITAL_ALARM_TYPE emType; /// ??????? char szRoomNumber[16]; /// ?????? char szBedNumber[8]; /// ?????? char szDestPhone[16]; /// ???????????????? char szSrcPhone[16]; /// ?????????????? char szDestDevCode[64]; /// ??????????????????? char szSrcDevCode[64]; /// ????????????????? UINT nUniqueID; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szUUID[64]; /// ????????? char szReserved[920]; /// ??????? }ALARM_HOSPITAL_ALARM_INFO; ///@brief ??????????????? typedef struct tagALARM_CUTLINE { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? UINT nEventID; /// ???ID NET_TIME_EX UTC; /// ?????????? BYTE byReserved[512]; /// ?????? }ALARM_CUTLINE; ///@brief ????????????? typedef struct tagALARM_BLIND_SPOT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? UINT nEventID; /// ???ID NET_TIME_EX UTC; /// ?????????? UINT nAlarmLevel; /// ??????? int nObjectNum; /// ?????????? NET_BLIND_SPOT_DETECTION_OBJECT_INFO stuObjectInfo[32]; /// ?????????? BYTE byReserved[512]; /// ?????? }ALARM_BLIND_SPOT_DETECTION_INFO; ///@brief ???????? typedef enum tagEM_VIDEOTALK_TYPE { EM_VIDEOTALK_TYPE_UNKNOW, /// ??? EM_VIDEOTALK_TYPE_INVITE, /// ???? EM_VIDEOTALK_TYPE_RING, /// ???? EM_VIDEOTALK_TYPE_ANSWER, /// ??? EM_VIDEOTALK_TYPE_HANGUP, /// ??? }EM_VIDEOTALK_TYPE; ///@brief ???????DH_ALARM_HOSPITAL_ALARM(?????????) ????????????????? typedef struct tagALARM_VIDEOTALK_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nLocalID; /// ???????? UINT nRemoteID; /// ???????? EM_VIDEOTALK_TYPE emVideoTalkType; /// ???????? NET_TIME_EX stuTime; /// ??????? char szIP[40]; /// ????IP??? char szReserved[512]; /// ?????? }ALARM_VIDEOTALK_INFO; ///@brief ?????? typedef enum tagEM_PREVENT_FREERIDE_EXCEPTION_TYPE { EM_PREVENT_FREERIDE_EXCEPTION_TYPE_UNKNOWN = -1, /// ??? EM_PREVENT_FREERIDE_EXCEPTION_TYPE_ABNORMAL_BOARDING, /// ????? EM_PREVENT_FREERIDE_EXCEPTION_TYPE_ABNORMAL_ALIGHTING, /// ????? EM_PREVENT_FREERIDE_EXCEPTION_TYPE_ABNORMAL_BOARDING_AND_ALIGHTING, /// ??????? }EM_PREVENT_FREERIDE_EXCEPTION_TYPE; ///@brief ????????????????????? typedef struct tagALARM_PREVENT_FREE_RIDE_INFO { int nChannelID; /// ????? char szDeviceID[20]; /// ?????? char szName[128]; /// ??????? NET_TIME_EX UTC; /// ???UTC??? EM_PREVENT_FREERIDE_EXCEPTION_TYPE emExceptionType; /// ?????? int nGetOnBusPeople; /// ??????? int nGetOffBusPeople; /// ??????? int nInputNumber; /// ??????? int nOutputNumber; /// ???????? BYTE byReserved[512]; /// ?????? }ALARM_PREVENT_FREE_RIDE_INFO; ///@brief ?????????? typedef struct tagALARM_WATER_SPEED_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? UINT nEventID; /// ???ID NET_TIME_EX UTC; /// ?????????? EM_EVENT_TYPE emEventType; /// ????????????? UINT nPresetID; /// ?????????????????1???,???????????????????? char szPresetName[64]; /// ????????????????? NET_WATER_SPEED_INFO stuWaterSpeed[50]; /// ????????? int nWaterSpeedNum; /// ????????????? EM_WATER_SPEED_STATUS emStatus; /// ??????? NET_INTELLIGENCE_IMAGE_INFO stuOriginalImage; /// ????????? NET_INTELLIGENCE_IMAGE_INFO stuSceneImage; /// ???????????????? float fValue; /// ???????????:?????????(m3/s) float fSecSpeedValue; /// ????????????, ??????m/s BYTE byReserved[1016]; /// ?????? }ALARM_WATER_SPEED_DETECTION_INFO; ///@brief ????????? typedef struct tagALARM_HUMIDITY_ALARM_INFO { int nChannelID; /// ????? int nAction; /// ???????,0??????????,1?????????,2??????????; double dbPTS; /// ????(?????????) char szName[128]; /// ??????? UINT nEventID; /// ???ID NET_TIME_EX UTC; /// ?????????? float fCurrentValue; /// ??????? float fLimitValue; /// ??????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char byReserved[1024]; /// ?????? }ALARM_HUMIDITY_ALARM_INFO; ///@brief ???????? typedef struct tagNET_VEDIO_WIDGET_COVER { BOOL bPreviewBlend; /// ??????????? BOOL bEncodeBlend; /// ??????????? BOOL bEncodeBlendExtra1; /// ???????????1 BOOL bEncodeBlendExtra2; /// ???????????2 BOOL bEncodeBlendExtra3; /// ???????????3 BOOL bEncodeBlendSnapshot; /// ??????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ????, ??????????[0,8191] BYTE byReserver[128]; /// ??????? }NET_VEDIO_WIDGET_COVER; ///@brief ????? NET_EM_CFG_COVERS typedef struct tagNET_OSD_CFG_COVERS { DWORD dwSize; int nCoverCount; /// ??????????? NET_VEDIO_WIDGET_COVER stuCovers[16]; /// ???????? }NET_OSD_CFG_COVERS; ///@brief ???????????? typedef struct tagNET_USER_DEF_TITLE_INFO { char szText[CUSTOM_TITLE_LEN]; /// ???????? BOOL bEncodeBlend; /// ????????????????? BOOL bPreviewBlend; /// ?????????????? NET_RECT stuRect; /// ????, ??????[0~8191], ?????left??top?, ??(left,top)???(right,bottom)???????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? EM_TITLE_TEXT_ALIGNTYPE emTextAlign; /// ???????? BYTE byReserved[516]; /// ??????? }NET_USER_DEF_TITLE_INFO; ///@brief ????????OSD???? NET_EM_CFG_USER_DEF_TITLE typedef struct tagNET_OSD_USER_DEF_TITLE { DWORD dwSize; int nUserDefTitleNum; /// ???????????? NET_USER_DEF_TITLE_INFO stuUserDefTitle[16]; /// ???????? }NET_OSD_USER_DEF_TITLE; ///@brief ??????????? typedef struct tagNET_OSD_CUSTOM_GENERAL_INFO { BOOL bEnable; /// ?????? BYTE byReserved[2044]; /// ?????? }NET_OSD_CUSTOM_GENERAL_INFO; ///@brief ???OSD ????????? typedef struct tagNET_CFG_SNAP_OSD_WITH_CLASS { int nGeneralInfoNum; /// ??????????? NET_OSD_CUSTOM_GENERAL_INFO stGeneralInfos[8]; /// ??????????? BYTE byReserved[2048]; /// ??????? } NET_CFG_SNAP_OSD_WITH_CLASS; ///@brief ???OSD??????? typedef struct tagNET_CFG_SNAP_OSD_INFO { int nClassNum; /// ?????????? NET_CFG_SNAP_OSD_WITH_CLASS stuOSDWithClass[8]; /// ???????? BYTE byReserved[2048]; /// ??????? }NET_CFG_SNAP_OSD_INFO; ///@brief ???OSD???? NET_EM_CFG_SNAP_OSD typedef struct tagNET_CFG_SNAP_OSD { DWORD dwSize; /// ??????? int nSnapOSDNum; /// ???OSD???????? NET_CFG_SNAP_OSD_INFO stuSnapOSDInfo[8]; /// ???OSD??????? } NET_CFG_SNAP_OSD; ///@brief ?????? typedef enum tagEM_SNAP_TYPE { EM_SNAP_TYPE_UNKNOWN, /// ??? EM_SNAP_TYPE_PLATE, /// "Plate": ??????(???????) EM_SNAP_TYPE_DRIVER_FACE, /// "DriverFace": ????????? EM_SNAP_TYPE_ASSISTANT_DRIVER_FACE, /// "AssistantDriverFace": ??????????? EM_SNAP_TYPE_VEHICLE_TAIL, /// "VehicleTail": ??????? EM_SNAP_TYPE_VEHICLE_BODY, /// "VehicleBody": ??????? EM_SNAP_TYPE_FACE, /// ????? EM_SNAP_TYPE_BODY, /// "Body": ?????????? EM_SNAP_TYPE_BINARIZED_PLATE, /// "BinarizedPlate": ??????????? EM_SNAP_TYPE_NON_MOTOR_FACE, /// "NonMotorFace": ???????f????? EM_SNAP_TYPE_NON_MOTOR_BODY, /// "NonMotorBody": ?????????? EM_SNAP_TYPE_SCENE_IMAGE, /// "SceneImage": ???? EM_SNAP_TYPE_HUMAN_SCENE_IMAGE, /// "HumanSceneImage": ??????? EM_SNAP_TYPE_VEHICLE_SCENE_IMAGE, /// "VehicleSceneImage": ?????????? EM_SNAP_TYPE_NON_MOTOR_SCENE_IMAGE, /// "NonMotorSceneImage": ??????????? }EM_SNAP_TYPE; ///@brief IPC??????(??????)??????OSD??????? typedef struct tagNET_CFG_OBJECT_DETECT_SNAP_SHOT_INFO { EM_SNAP_TYPE emSnapTypeEnable[32]; /// ?????????? int nSnapTypeEnableNum; /// ??????????????, ?????32, ???emSnapTypeEnable[32]?????? int nUploadVehicleTypeNum; /// ??????????????????????, ?????255, ???nUploadVehicleType[255]?????? int nUploadVehicleType[255]; /// ?????????????????, ????????????: /// 0:??? 1:??? 2:????? 3:?????? 4:???? 5:????? 6:?????? 7:????? 8:????? 9:???? 10:SUV-MPV /// 11:????? 12:?????????(??????) 13:SUV 14:MPV 15:?????? 16:????? 17:???? 18:????(??????) 19:????(??????) 20:????1(??????) 21:??????(??????) /// 22:??????????(??????) 23:????(??????) 24:????(??????) 25:?????(??????) 26:?????(??????) 27:??????(??????????????????????????)(??????) 28:????2(??????) 29:??????(??????) 30:??????(??????) 31:?????(??????) 32:?????????(??????) /// 33:?????(??????) 34:??????(??????) 35:????? 36:????(??????) 37:???(??????) 38:??????(??????) 39:????(??????) 40:????(??????) 41:????(??????) 42:????(??????) /// 201:?????? 202:???????? 203:???????????? 204:?????????????? char szReserved[2044]; /// ??????? }NET_CFG_OBJECT_DETECT_SNAP_SHOT_INFO; ///@brief IPC??????(??????)??????OSD???? NET_EM_CFG_OBJECT_DETECT_SNAP_SHOT typedef struct tagNET_CFG_OBJECT_DETECT_SNAP_SHOT { DWORD dwSize; /// ??????? int nObjectDetectSnapshotNum; /// IPC??????(??????)??????OSD????????(???????????) NET_CFG_OBJECT_DETECT_SNAP_SHOT_INFO* pstuObjectDetectSnapshotInfo; /// IPC??????(??????)??????OSD???????, ??????????????????????nObjectDetectSnapshotNum * sizeof(NET_CFG_OBJECT_DETECT_SNAP_SHOT_INFO) int nRetObjectDetectSnapshotNum; /// ????????IPC??????(??????)??????OSD????????(?????????????), nRetObjectDetectSnapshotNum????????nObjectDetectSnapshotNum } NET_CFG_OBJECT_DETECT_SNAP_SHOT; ///@brief ????????? typedef struct tagNET_CFG_TIMING_SNAP { BOOL bEnable; /// ?????????? UINT nTimingSnapInterval; /// ????????????????????????????0????????? UINT nTimeSectionID; /// ???????????ID char szReserved[256]; /// ??????? }NET_CFG_TIMING_SNAP; ///@brief ????????? NET_EM_CFG_SNAP_FPS typedef struct tagNET_CFG_SNAP_FPS { DWORD dwSize; /// ??????? BOOL bIsGlobal; /// ??????????????????(StorageScheduleGlobal)??true????????false???????? UINT nManulSnapNum; /// ???????????Num??? ????[1,5] UINT nManulSnapInterval; /// ????????????????????? ????[1,7] NET_CFG_TIMING_SNAP stuTimingSnap; /// ????????? }NET_CFG_SNAP_FPS; ///@brief ????????????, ??? NET_EM_CFG_STREAM_LOCK typedef struct tagNET_CFG_STREAM_LOCK_INFO { DWORD dwSize; /// ??????? BOOL bMonitorLock; /// ???????????? BOOL bPlayBackLock; /// ???????????? char szLockReasonNote[256]; /// ????????? BOOL bGlobalLock; /// ??????????true?????????????????????????????false?????bMonitorLock??bPlayBackLock?????????????????? }NET_CFG_STREAM_LOCK_INFO; ///@brief ????????????, ??? NET_EM_CFG_CAMERA_STREAM_LOCK typedef struct tagNET_CFG_CAMERA_STREAM_LOCK_INFO { DWORD dwSize; /// ??????? BOOL bMonitorLock; /// ???????????? BOOL bPlayBackLock; /// ???????????? char szLockReasonNote[256]; /// ????????? }NET_CFG_CAMERA_STREAM_LOCK_INFO; ///@brief ????????? typedef struct tagNET_EAR_DETECTION_PARAM { int nStepFrequency; /// ???????: 0:160Hz, 1:170Hz, 2:180Hz, 3:190Hz int nFrequency; /// ???????: 0:6.8MHz, 1:7.2MHz, 2:8.2MHz, 3:9.5MHz int nBandwidth; /// ??????: 0:550KHz, 1:650KHz, 2:750KHz, 3:850KHz, 4:950KHz, 5:1050KHZ UINT nSensitivity; /// ??????, ????: 0~99 char szReserved[32]; /// ??????? }NET_EAR_DETECTION_PARAM; ///@brief EAS RF????????, ??? NET_EM_CFG_EAR_DETECTION_CONFIG typedef struct tagNET_CFG_EAR_DETECTION_CONFIG_INFO { DWORD dwSize; /// ??????? UINT nAntiInterference; /// ??????????0--??? 1--???? UINT nEarlyWarning; /// ????????0--??? 1--???? int nDetectionParamCount; /// ?????????? NET_EAR_DETECTION_PARAM stuDetectionParam[64]; /// ?????????????????????????? }NET_CFG_EAR_DETECTION_CONFIG_INFO; ///@brief ????????, ??? NET_EM_CFG_SOUND_CONFIG typedef struct tagNET_CFG_SOUND_CONFIG_INFO { DWORD dwSize; /// ??????? int nTone; /// ???????: 0:??? 1:????????1, 2:????????2, 3:????????3, 4:????????4... UINT nVolume; /// ???????? }NET_CFG_SOUND_CONFIG_INFO; ///@brief ???????????????, ??? NET_EM_CFG_FLEX_STREAM typedef struct tagNET_CFG_FLEX_STREAM_INFO { DWORD dwSize; /// ??????? int nMode; /// ????????????? /// 0: ??? /// 1: FlexStream: ???????? /// 2: HFlexStream????????????????????????? /// 3: VFlexStream????????????????????????? /// 4: SingleStream: ????????????????? }NET_CFG_FLEX_STREAM_INFO; ///@brief ????????????? typedef struct tagNET_CONTROL_CASE_OUTV_INFO { BOOL bDc12v1; /// DC12v1??????? BOOL bDc12v2; /// DC12v2??????? BOOL bAc24v1; /// Ac24v1??????? BOOL bAc24v2; /// Ac24v2??????? BOOL bAc220v1; /// Ac220v1??????? BOOL bAc220v2; /// Ac220v2??????? BOOL bAc220v3; /// Ac220v3??????? char szReserved1[4]; /// ?????? char szAc220v1Title[64]; /// AC220v1 ??????????? char szAc220v2Title[64]; /// AC220v2 ??????????? char szAc220v3Title[64]; /// AC220v3 ??????????? char szReserved[256]; /// ??????? }NET_CONTROL_CASE_OUTV_INFO; ///@brief ZIGBEE???? typedef struct tagNET_CONTROL_CASE_ZIGBEE_INFO { BOOL bEnable; /// ?????? int nChannel; /// ??? char szPanID[64]; /// ???? char szReserved[256]; /// ??????? }NET_CONTROL_CASE_ZIGBEE_INFO; ///@brief ?????????????????, ??? NET_EM_CFG_CONTROL_CASE typedef struct tagNET_CFG_CONTROL_CASE_INFO { DWORD dwSize; /// ??????? BOOL bSwitcherPower; /// ????????? BOOL bIpc; /// ?????? BOOL bFan; /// ???? BOOL bLight; /// ???????? BOOL bAirSwitch; /// ????? BOOL bLockStatus; /// ????? BOOL b4G_5G; /// 4G_5G ??? NET_CONTROL_CASE_OUTV_INFO stuOutV; /// ????????????? NET_CONTROL_CASE_ZIGBEE_INFO stuZigBee; /// ZIGBEE???? }NET_CFG_CONTROL_CASE_INFO; ///@brief ????????? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_LIGHT_INFO { char szId[32]; /// ????? char szGroup[32]; /// ?????? char szVoltage[32]; /// ???? char szCurrent[32]; /// ????? char szVersion[32]; /// ??????? BOOL bOnOffState; /// ???????? int nBrightness; /// ????????? char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_LIGHT_INFO; ///@brief LED????? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_SCREEN_INFO { char szIp[32]; /// LED?????IP??? char szSN[32]; /// LED??????????? BOOL bConnectedState; /// LED????????????????? BOOL bPlatformConnectedState; /// LED??????????????????? BOOL bOnOffState; /// LED???????????? int nBrightness; /// LED???????????? int nVolume; /// LED????????????? int nDisplayEnvironmentNum; /// ????????? BOOL bDisplayEnvironment[10]; /// 0~9???????????????????????????????????????????????????PM2.5??PM10???????????????????? char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_SCREEN_INFO; ///@brief ??????? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_ENVIRONMENT_INFO { char szId[32]; /// ???????ID char szHumidity[32]; /// ??? char szPressure[32]; /// ??? char szWindSpeed[32]; /// ???? char szWindDirection[32]; /// ???? char szTemperature[32]; /// ??? char szDecibel[32]; /// ??? char szPM2_5[32]; /// PM2.5 char szPM10[32]; /// PM10 char szRainfall[32]; /// ???? char szRadiation[32]; /// ???? char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_ENVIRONMENT_INFO; ///@brief ???????? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_CAMERA_INFO { char szIp[32]; /// ???IP char szUser[32]; /// ??????????? char szPwd[32]; /// ?????????? int nChannel; /// ???????? BOOL bConnectedState; /// ????????? char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_CAMERA_INFO; ///@brief ????????? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_ALARM_INFO { char szId[32]; /// ?????????ID char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_ALARM_INFO; ///@brief ??????? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_SPEAKER_INFO { char szId[32]; /// ???????ID char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_SPEAKER_INFO; ///@brief WifiAp??? typedef struct tagNET_LAMP_EXTERNAL_DEVICE_WIFIAP_INFO { char szId[32]; /// WifiAp???ID char szReserved[256]; /// ??????? }NET_LAMP_EXTERNAL_DEVICE_WIFIAP_INFO; ///@brief ???????????????, ??? NET_EM_CFG_LAMP_EXTERNAL_DEVICE typedef struct tagNET_CFG_LAMP_EXTERNAL_DEVICE_INFO { DWORD dwSize; /// ??????? int nLightNum; /// ????????????? int nScreenNum; /// LED????????? int nEnvironmentNum; /// ??????????? int nCameraNum; /// ???????????? int nAlarmNum; /// ????????????? int nSpeakerNum; /// ??????????? int nWifiApNum; /// WifiAp??????? NET_LAMP_EXTERNAL_DEVICE_LIGHT_INFO stuLight[16]; /// ????????? NET_LAMP_EXTERNAL_DEVICE_SCREEN_INFO stuScreen[16]; /// LED????? NET_LAMP_EXTERNAL_DEVICE_ENVIRONMENT_INFO stuEnvironment[16]; /// ??????? NET_LAMP_EXTERNAL_DEVICE_CAMERA_INFO stuCamera[16]; /// ???????? NET_LAMP_EXTERNAL_DEVICE_ALARM_INFO stuAlarm[16]; /// ????????? NET_LAMP_EXTERNAL_DEVICE_SPEAKER_INFO stuSpeaker[16]; /// ??????? NET_LAMP_EXTERNAL_DEVICE_WIFIAP_INFO stuWifiAp[16]; /// WifiAp??? }NET_CFG_LAMP_EXTERNAL_DEVICE_INFO; ///@brief ?????????????485??????????????, ??? NET_EM_CFG_HOSPITAL_LIGHT_CONTROL_DEVICE typedef struct tagNET_CFG_HOSPITAL_LIGHT_CONTROL_DEVICE_INFO { DWORD dwSize; /// ??????? char szCallNumber[32]; /// ???????????? char szRoomNumber[16]; /// ?????? char szAddress[24]; /// ?????IP??? char szUserName[33]; /// ????? char szReserved[7]; /// ?????? char szPassword[33]; /// ???? char szReserved1[7]; /// ?????? char szRoomNumberEx[64]; /// ??????(???) BOOL bIsUsingRoomNumberEx; /// ????????????????szRoomNumberEx }NET_CFG_HOSPITAL_LIGHT_CONTROL_DEVICE_INFO; ///@brief ?????????? typedef struct tagNET_LIGHT_CONFIG_INFO { BOOL bEnable; /// ??? int nDirectionNum; /// ???????????? int nDirection[8]; /// ????????????????? 0:??? 1:"Straight"??? 2:"TurnLeft":??? 3:"TurnRight":??? 4:"U-Turn": ??? NET_RECT stuArea; /// ????????????? int nColor[8]; /// ?????????????? 0:??? 1:"Red"??? 2:"Yellow"??? 3:"Green"??? int nColorNum; /// ?????????????????? int nShapeNum; /// ?????????? int nShape[8]; /// ?????? 0:??? 1:"Number"?????????? 2:"Direction"????????? 3:"Nomal"????????????????????? 4:"Auxiliary"???????? 5:"Others"??????? int nValidColor[8]; /// ?????????? 0:??? 1:"Red"??? 2:"Yellow"??? 3:"Green"??? int nValidColorNum; /// ?????????????? int nDirectionLogicType; /// ?????????????????????????????????, ??Shape?"Number"??Direction?????????????????????? /// -1: ??? 0??????? 1??????? char szReserved[128]; /// ??????? }NET_LIGHT_CONFIG_INFO; ///@brief ?????????, ??????? NET_EM_CFG_LIGHT_COLOR_RECOVER typedef struct tagNET_CFG_LIGHT_COLOR_RECOVER_INFO { DWORD dwSize; /// ??????? int nLightsNum; /// ?????????? NET_LIGHT_CONFIG_INFO stuLights[16]; /// ?????????? }NET_CFG_LIGHT_COLOR_RECOVER_INFO; ///@brief ???????????????, ??? NET_EM_PASSENGER_FLOW_CONFIG typedef struct tagNET_CFG_PASSENGER_FLOW_CONFIG_INFO { DWORD dwSize; /// ??????? UINT nUpPassengerFlowLimit; /// ???????????? UINT nDownPassengerFlowLimit; /// ???????????? }NET_CFG_PASSENGER_FLOW_CONFIG_INFO; ///@brief ?????????, ??? NET_EM_TRAFFIC_LAMP_CONFIG typedef struct tagNET_CFG_TRAFFIC_LAMP_CONFIG_INFO { DWORD dwSize; /// ??????? UINT nNotifyPeriod; /// DH_ALARM_TRAFFIC_LAMP_WORK_STATE???????????????, ????????, ???600, ????300~86400 }NET_CFG_TRAFFIC_LAMP_CONFIG_INFO; ///@brief ?????????????????????, ??? NET_EM_CFG_LOCAL_INFO typedef struct tagNET_CFG_LOCAL_INFO { DWORD dwSize; /// ??????? char szShortNumber[16]; /// VTS????? BOOL bEnableSection; /// ?????????? BOOL bEnableBuilding; /// ??????????? BOOL bEnableUnit; /// ?????????? int nBuildingNumBit; /// ?????????? }NET_CFG_LOCAL_INFO; ///@brief ??????????????????????, ??? NET_EM_CFG_DISABLE_BEEP_LINKAGE typedef struct tagNET_CFG_DISABLE_BEEP_LINKAGE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????????????????DisableLinkage?????????????????? char szName[32]; /// ???????????? }NET_CFG_DISABLE_BEEP_LINKAGE_INFO; ///@brief ???????????????????????????????????????true???????????????????? typedef struct tagNET_PREVENTION_OF_ARMING_INFO { BOOL bIntrusionDetectorActivated; /// ?????????????????? BOOL bHoldupDeviceActivated; /// ??????????????????? BOOL bMovementDetectorMasked; /// ???????????????? BOOL bMovementDetectorRangeReduction; /// ?????????????????????????? BOOL bIntrusionDetectorFault; /// ????????????? BOOL bTamperCondition; /// ????? BOOL bInterconnectionFaults; /// ?????????? BOOL bPrimePowerSourceFault; /// ????????? BOOL bAlternativePowerSourceFault; /// ?????????? BOOL bAlarmTransmissionSystemFault; /// ?????????????? BOOL bWarningDeviceFault; /// ?????????? char szReserved[252]; /// ??????? }NET_PREVENTION_OF_ARMING_INFO; ///@brief ??????? typedef struct tagNET_SYSTEM_STATUS_CHECK_INFO { BOOL bEnable; /// ?????? NET_PREVENTION_OF_ARMING_INFO stuPreventionOfArming; ///???????????????????????????????????????true???????????????????? char szReserved[512]; /// ??????? }NET_SYSTEM_STATUS_CHECK_INFO; ///@brief Area????? typedef struct tagNET_AREAS_INFO { char szMode[32]; /// ???????????????? ///"T" : Total????/????????? ///"p1" : Partial1????/???????? ///"p2" : Partial2????/??????? ///"P" : Partial1+2???? ///"t" : ?????? ///"D" : ???? char szReserved[32]; /// ??????? }NET_AREAS_INFO; ///@brief Area??????????, ??? NET_EM_CFG_AREA_ARM_MODE typedef struct tagNET_CFG_AREA_ARM_MODE_INFO { DWORD dwSize; /// ??????? int nAreasNum; /// Area??????????????????64?? NET_AREAS_INFO stuAreas[64]; /// Area????????? NET_SYSTEM_STATUS_CHECK_INFO stuSystemStatusCheck; /// ??????? }NET_CFG_AREA_ARM_MODE_INFO; ///@brief ???????? typedef enum tagEM_VEHICLE_ALARM_TYPE { EM_VEHICLE_ALARM_TYPE_UNKNOWN, /// ??? EM_VEHICLE_ALARM_TYPE_DRIVEACTIONANALYSE, /// "DriveActionAnalyse" , ?????????? DSM EM_VEHICLE_ALARM_TYPE_DRIVEASSISTANTALARM, /// "DriveAssistantAlarm", ??????????? ADAS EM_VEHICLE_ALARM_TYPE_HANDSOFFSTEERINGWHEELDETECTION, /// "HandsOffSteeringWheelDetection" , ??????????? ICM EM_VEHICLE_ALARM_TYPE_EMERGENCY, /// "Emergency" ???????? EM_VEHICLE_ALARM_TYPE_DRIVERDEATAILALARM, /// "DriverDeatailAlarm" ??DSM/ADAS??????????????????stuSubAlarmInfo???? }EM_VEHICLE_ALARM_TYPE; ///@brief ?????????? typedef enum tagEM_SUB_ALARM_TYPE { EM_SUB_ALARM_TYPE_UNKNOWN, /// ??? EM_SUB_ALARM_TYPE_FATIGUEALARM, /// "FatigueAlarm",????????? EM_SUB_ALARM_TYPE_DISTRACTALARM, /// "DistractAlarm",??????????? EM_SUB_ALARM_TYPE_CALLINGALARM, /// "CallingAlarm",????????? EM_SUB_ALARM_TYPE_NODRIVERALARM, /// "NoDriverAlarm",?????????? EM_SUB_ALARM_TYPE_WEARINGIRALARM, /// "WearingIRAlarm",????????????????? EM_SUB_ALARM_TYPE_SMOKINGALARM, /// "SmokingAlarm",??????? EM_SUB_ALARM_TYPE_CAMOCCLUSIONALARM, /// "CamOcclusionAlarm",?????????? EM_SUB_ALARM_TYPE_UNBELTEDALARM, /// "UnbeltedAlarm",???????????? EM_SUB_ALARM_TYPE_IDENTITYALARM, /// "IdentityAlarm",?????????????? EM_SUB_ALARM_TYPE_DRIVERCHANGEALARM, /// "DriverChangeAlarm",?????????? EM_SUB_ALARM_TYPE_FORWARDCOLLISIONALARM, /// "ForwardCollisionAlarm",?????????? EM_SUB_ALARM_TYPE_LANEDEPARTUREALARM, /// "LaneDepartureAlarm",????????? EM_SUB_ALARM_TYPE_HEADWAYALARM, /// "HeadwayAlarm"??????????? }EM_SUB_ALARM_TYPE; ///@brief ????????????????? typedef struct tagNET_SUB_ALARM_INFO { EM_SUB_ALARM_TYPE emSubAlarmType; /// ?????????? int nRecordAheadTimes; /// ???????????????????????????????????????????? int nRecordDelayTimes; /// ???????????????????????????????????????????? char szReserved[124]; /// ??????? }NET_SUB_ALARM_INFO; ///@brief ??????????????????? typedef struct tagNET_VEHICLE_ALARM_LINK_INFO { EM_VEHICLE_ALARM_TYPE emAlarmType; /// ???????? int nLinkSnapChannelNum; /// ?????????????????????? int nLinkSnapChannelList[32]; /// ???????????????????,??????0??? int nLinkRecordChannelList[32]; /// ????????????????????,??????0????? int nLinkRecordChannelNum; /// ??????????????????????? int nRecordAheadTimes; /// ???????????????????????????????????????????? int nRecordDelayTimes; /// ???????????????????????????????????????????? int nSubAlarmInfoNum; /// ????????????????? NET_SUB_ALARM_INFO stuSubAlarmInfo[32]; /// ????????????????? char szReserved[512]; /// ??????? }NET_VEHICLE_ALARM_LINK_INFO; ///@brief ???????????????????, ??? NET_EM_CFG_VEHICLE_ALARM_LINK_PARAM typedef struct tagNET_CFG_VEHICLE_ALARM_LINK_PARAM_INFO { DWORD dwSize; /// ??????? int nVehicleAlarmLinkNum; /// ??????? NET_VEHICLE_ALARM_LINK_INFO stuVehicleAlarmLinkInfo[32]; /// ??????????????????? }NET_CFG_VEHICLE_ALARM_LINK_PARAM_INFO; ///@brief ???push notification????, ??? NET_EM_CFG_MOBILE_PHONE_APPLICATION typedef struct tagNET_CFG_MOBILE_PHONE_APPLICATION_INFO { DWORD dwSize; /// ??????? BOOL bPushNotificationEnable; /// ???????????? }NET_CFG_MOBILE_PHONE_APPLICATION_INFO; ///@brief CGI????????????, ??? NET_EM_CFG_VSP_CGI typedef struct tagNET_CFG_VSP_CGI_INFO { DWORD dwSize; /// ??????? BOOL bServiceStart; /// ?????CGI???? }NET_CFG_VSP_CGI_INFO; ///@brief NTP Server????????????, ??? NET_EM_CFG_VSP_NTP_SERVER typedef struct tagNET_CFG_CFG_VSP_NTP_SERVER_INFO { DWORD dwSize; /// ??????? BOOL bServiceStart; /// ?????NTP Server???? }NET_CFG_CFG_VSP_NTP_SERVER_INFO; ///@brief ???????????, ??? NET_EM_CFG_DEVICE_DISCOVERY typedef struct tagNET_CFG_DEVICE_DISCOVERY_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????????? }NET_CFG_DEVICE_DISCOVERY_INFO; ///@brief LLDPConfig ???????, ??? NET_EM_CFG_LLDP_GLOBAL typedef struct tagNET_CFG_LLDP_GLOBAL_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????LLDPConfig??????? }NET_CFG_LLDP_GLOBAL_INFO; ///@brief ?????????????????, ??? NET_EM_CFG_LOGIN_AUTH_CTRL typedef struct tagNET_CFG_LOGIN_AUTH_CTRL_INFO { DWORD dwSize; /// ??????? int nPriSvrPolicy; /// ??????????????????, 1:?????, 2:?????? int nPriCliPolicy; /// ??????????????????, 1:?????, 2:?????? }NET_CFG_LOGIN_AUTH_CTRL_INFO; ///@brief ?????????, ??? NET_EM_CFG_DISPLAY_INFORMATION typedef struct tagNET_CFG_DISPLAY_INFORMATION_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????p??????? char szDescribeInfo[512]; /// ???????????? char szLocationInfo[256]; /// ???????????? char szNumberInfo[32]; /// ????????? char szContactInfo[128]; /// ???????????? char szContactNumberInfo[32]; /// ?????????????? char szFirstReservedInfo[64]; /// ??????????? char szSecondReservedInfo[64]; /// ???????????? }NET_CFG_DISPLAY_INFORMATION_INFO; ///@brief ??????????????????????????????500?????? typedef struct tagNET_PILE_INFO { int nID; /// ???ID UINT nLongitude; /// ????(??????????????????0-360??) UINT nLatitude; /// ????(??????????????????0-180??) int nIndex; /// ???????????????????????????? char szName[128]; /// ??????? char szReserved[256]; /// ?????? }NET_PILE_INFO; ///@brief ???????????????????? typedef struct tagNET_CFG_LINE_PILE_INFO { DWORD dwSize; /// ??????? int nInfosNum; /// ????????????????????????????? NET_PILE_INFO stuPileInfos[500]; /// ?????? int nInfosRetNum; /// ??????????????????????????????? char szLineName[128]; /// ???????? char szRoadAttribute[128]; /// ????????????"?????"??"??????"?? }NET_CFG_LINE_PILE_INFO; ///@brief ????????????????????????, ??? NET_EM_CFG_LINE_PILE_INFO typedef struct tagNET_CFG_LINE_PILE_INFO_LIST { DWORD dwSize; /// ??????? int nConfigInfosNum; /// ????????????????????????????? int nConfigInfosRetNum; /// ???????????????????????????????? char szReserved[4]; /// ?????? NET_CFG_LINE_PILE_INFO *pstuConfigInfos; /// ??????????????????????????????????????sizeof(NET_CFG_LINE_PILE_INFO)*nConfigInfosNum }NET_CFG_LINE_PILE_INFO_LIST; ///@brief ??????????????, ??? NET_EM_CFG_REMOTE_AUDIO_OUTPUT_VOLUME typedef struct tagNET_CFG_REMOTE_AUDIO_OUTPUT_VOLUME_INFO { DWORD dwSize; /// ??????? int nAudioOutputVolumeNum; /// ???????????????????????????????????????????????????????????????????????? int nAudioOutputVolume[4096]; /// ????????????????????????????????? }NET_CFG_REMOTE_AUDIO_OUTPUT_VOLUME_INFO; ///@brief ??????????OSD???? typedef struct tagNET_OSD_FACEFLOW_STAT_INFO { DWORD dwSize; /// ??????? BOOL bEncodeBlend; /// ?????????????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???????? ?????? [0,8191] int nTextAlign; /// ???????? 0-????? 2-????? BOOL bShowFaceRecognition; /// ???????????(????????)???? BOOL bShowFaceDetection; /// ?????????????????? BOOL bShowBodyDetection; /// ?????????????????? }NET_OSD_FACEFLOWSTAT_INFO; ///@brief ??????OSD???? typedef struct tagNET_WATERMONITOR_OSD_INFO { BOOL bEncodeBlend; /// ?????????????? int nTextAlign; /// ???????? 0-????? 2-????? NET_COLOR_RGBA stuFrontColor; /// ???? NET_COLOR_RGBA stuBackColor; /// ????? NET_RECT stuRect; /// ???????? 8192??????? BYTE byReserved[1024]; /// ??????? }NET_WATERMONITOR_OSD_INFO; ///@brief ??????????OSD????(?????? NET_EM_CFG_WATER_MONITOR_TITLE) typedef struct tagNET_CFG_WATER_MONITOR_TITLE_INFO { DWORD dwSize; NET_WATERMONITOR_OSD_INFO stuWaterLevel; /// ??????OSD NET_WATERMONITOR_OSD_INFO stuFlotage; /// ?????OSD }NET_CFG_WATER_MONITOR_TITLE_INFO; ///@brief RTSP????????(?????? NET_EM_CFG_KT_RTSP_FLAG) typedef struct tagNET_CFG_KT_RTSP_FLAG_INFO { DWORD dwSize; BOOL bEnable; /// ??????Rtsp?????????TRUE:???; FALSE:????? }NET_CFG_KT_RTSP_FLAG_INFO; ///@brief ???????????? typedef struct tagNET_ABORT_VEDIO { char szVedio[100]; }NET_ABORT_VEDIO; ///@brief ???RTSP??????????????????????????????????????????(?????? NET_EM_CFG_RTSP_ABORT_LIST) typedef struct tagNET_CFG_RTSP_ABORT_LIST_INFO { DWORD dwSize; BYTE byReserved[4]; /// ?????????????????? int nMaxListCount; /// ?????????????????????,??????3000?? UINT nRetListCount; /// ????????????????????? NET_ABORT_VEDIO* pVedioList; /// ???????????????????????? char szMark[32]; /// ?????????? }NET_CFG_RTSP_ABORT_LIST_INFO; ///@brief ???????????? (?????? NET_EM_CFG_FILE_HOLD_DAYS) typedef struct tagNET_CFG_FILE_HOLD_DAYS_INFO { DWORD dwSize; UINT nDays; /// ??????????????????????????????????????:????????0-65535??0?????????????? }NET_CFG_FILE_HOLD_DAYS_INFO; ///@brief ??????????(?????? NET_EM_CFG_ACCESS_FUNCTION) typedef struct tagNET_CFG_ACCESS_FUNCTION_INFO { DWORD dwSize; BOOL bGb28181ClientEnable; /// ???????????????????? BOOL bGb28181ServerEnable; /// ????????????? BOOL bONVIFClientEnable; /// ???????????ONVIF??? BOOL bONVIFServerEnable; /// ??????onvifserver BOOL bRTSPEnable; /// ??????rtsp?????? }NET_CFG_ACCESS_FUNCTION_INFO; ///@brief ??????? typedef enum tagEM_ATTENDANCE_USER_TYPE { EM_ATTENDANCE_USER_TYPE_UNKNOWN = -1, /// ?????? EM_ATTENDANCE_USER_TYPE_NORMAL, /// ?????? EM_ATTENDANCE_USER_TYPE_BLACKLIST, /// ?????????? }EM_ATTENDANCE_USER_TYPE; ///@brief ????????? typedef enum tagEM_ATTENDANCE_USER_STATUS { EM_ATTENDANCE_USER_STATUS_UNKNOWN = -1, /// ??? EM_ATTENDANCE_USER_STATUS_NORMAL, /// ???? EM_ATTENDANCE_USER_STATUS_FROZEN, /// ???? }EM_ATTENDANCE_USER_STATUS; ///@brief ?????????? typedef struct tagNET_ATTENDANCE_USER_INFO { char szUserID[64]; /// ???ID EM_ATTENDANCE_USER_TYPE emUserType; /// ??????? EM_ATTENDANCE_USER_STATUS emUserStatus; /// ????? NET_TIME stuUserAttendanceBeginTime; /// ????????????? NET_TIME stuUserAttendanceEndTime; /// ????????????? BYTE byReserved[80]; /// ?????? }NET_ATTENDANCE_USER_INFO; ///@brief ????????????????? NET_EM_CFG_ATTENDANCE_MODEL_INFO ?? typedef struct tagNET_CFG_ATTENDANCE_MODEL_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????? NET_TIME stuBeginTime; /// ?????????? NET_TIME stuEndTime; /// ?????????? NET_ATTENDANCE_USER_INFO stuUserInfo[128]; /// ?????????? UINT nUserCount; /// ??????????? BYTE byReserved[4]; /// ?????? }NET_CFG_ATTENDANCE_MODEL_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_EVENT_TITLE { char szText[CFG_MAX_CHANNELNAME_LEN]; DH_POINT stuPoint; /// ?????????????, ????0-8191???????? DH_SIZE stuSize; /// ???????????,????0-8191?????????????????????0???????????????????? NET_COLOR_RGBA stuFrontColor; /// ?????? NET_COLOR_RGBA stuBackColor; /// ??????? } NET_CFG_EVENT_TITLE; ///@brief ??????????? typedef enum tagNET_CFG_ATTACHMENT_TYPE { NET_ATTACHMENT_TYPE_PIC, /// ?????? NET_ATTACHMENT_TYPE_VIDEO, /// ??????? NET_ATTACHMENT_TYPE_NUM, /// ???????????? } NET_CFG_ATTACHMENT_TYPE; ///@brief ?????????? typedef struct tagNET_CFG_MAIL_DETAIL { NET_CFG_ATTACHMENT_TYPE emAttachType; /// ???????? int nMaxSize; /// ????????????????kB int nMaxTimeLength; /// ????????????????????video???? }NET_CFG_MAIL_DETAIL; ///@brief ??????? typedef struct tagNET_CFG_TIME_SECTION { DWORD dwRecordMask; /// ???????????????Bit0-?????????Bit1-???????Bit2-??????Bit3-????????????????????Bit4-???????Bit5-???????Bit6-POS???Bit7~Bit15???? int nBeginHour; int nBeginMin; int nBeginSec; int nEndHour; int nEndMin; int nEndSec; } NET_CFG_TIME_SECTION; ///@brief ?????????? typedef enum tagNET_EM_FILCKERLIGHT_TYPE { NET_EM_WHITELIGHT, ///??????? NET_EM_REDBLUELIGHT, ///???????????? } NET_EM_FILCKERLIGHT_TYPE; ///@brief ?????????? typedef enum tagNET_EM_LIGHTLINK_TYPE { NET_EM_FILCKER, ///????? ??? NET_EM_KEEPLIGHTING, ///???? } NET_EM_LIGHTLINK_TYPE; ///@brief ?????????????? typedef struct tagNET_CFG_LIGHTING_LINK_INFO { BOOL bEnable; ///??? NET_EM_FILCKERLIGHT_TYPE emFilckerLightType; ///?????????? NET_EM_LIGHTLINK_TYPE emLightlinkType; ///?????????? float fFilckerIntevalTime; ///????????? int nFilckerTimes; ///????????????? UINT nLightDuration; ///?????????????????,?????? UINT nLightBright; ///???????????? NET_CFG_TIME_SECTION stuWhiteLightTimeSection[7][6];///???????????? }NET_CFG_LIGHTING_LINK_INFO; ///@brief ??????????? typedef struct tagNET_CFG_TOURLINK { BOOL bEnable; /// ?????? DH_SPLIT_MODE emSplitMode; /// ?????????? int nChannels[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ???????????? int nChannelCount; /// ?????????? } NET_CFG_TOURLINK; ///@brief ??????????? typedef enum NET_EM_CFG_ACCESSCONTROLTYPE { NET_EM_CFG_ACCESSCONTROLTYPE_NULL = 0, /// ???????? NET_EM_CFG_ACCESSCONTROLTYPE_AUTO, /// ??? NET_EM_CFG_ACCESSCONTROLTYPE_OPEN, /// ???? NET_EM_CFG_ACCESSCONTROLTYPE_CLOSE, /// ???? NET_EM_CFG_ACCESSCONTROLTYPE_OPENALWAYS, /// ??????? NET_EM_CFG_ACCESSCONTROLTYPE_CLOSEALWAYS, /// ?????? }NET_EM_CFG_ACCESSCONTROLTYPE; ///@brief ???????????? typedef enum tagNET_EM_CALLER_TYPE { NET_EM_CALLER_DEVICE = 0, /// ??????? }NET_EM_CALLER_TYPE; ///@brief ???????? typedef enum tagNET_EM_CALLER_PROTOCOL_TYPE { NET_EM_CALLER_PROTOCOL_CELLULAR = 0, /// ?????? }NET_EM_CALLER_PROTOCOL_TYPE; ///@brief ??????????????? typedef struct tagNET_CFG_TALKBACK_INFO { BOOL bCallEnable; /// ??????????? NET_EM_CALLER_TYPE emCallerType; /// ???????????? NET_EM_CALLER_PROTOCOL_TYPE emCallerProtocol; /// ???????????? }NET_CFG_TALKBACK_INFO; ///@brief ?????????????????? typedef struct tagNET_CFG_PSTN_ALARM_SERVER { BOOL bNeedReport; /// ??????????????????? int nServerCount; /// ????????????????? BYTE byDestination[CFG_MAX_PSTN_SERVER_NUM]; /// ???????????????? }NET_CFG_PSTN_ALARM_SERVER; ///@brief ?????????????? typedef struct tagNET_CFG_VEHICLE_WORKTIMESCHEDULE_INFO { DWORD dwSize; BOOL bEnable; /// ??? NET_CFG_TIME_SCHEDULE stuWorkSchedule; /// ????????? }NET_CFG_VEHICLE_WORKTIMESCHEDULE_INFO; ///@brief ???????? typedef struct tagNET_CFG_VEHICLE_LOAD_INFO { DWORD dwSize; int nLoadNumber; /// ???????? }NET_CFG_VEHICLE_LOAD_INFO; #define MAX_TICKETINFO_NUM 8 /// ???????????? ///@brief ?????? typedef struct tagNET_CFG_TICKET_INFO { BOOL bEnable; /// ????????????? char szScreenModel[32]; /// ???????????????? char szPrintModel[64]; /// ?????????????? unsigned int nFare; /// ??? }NET_CFG_TICKET_INFO; ///@brief ?????????? typedef struct tagNET_CFG_TICKETPRINT_INFO { DWORD dwSize; BOOL bEncodeBlend; /// ????????????? char szRoute[32]; /// ???? char szNumber[32]; /// ??? unsigned int nNormal; /// ?????? unsigned int nDiscount; /// ???? unsigned int nSubsidy; /// ????????? unsigned int nStatisticsNum; /// ???????????, ????1, ????[1,2] unsigned int nTicketInfoNum; /// ?????????? NET_CFG_TICKET_INFO stuTicketInfo[MAX_TICKETINFO_NUM]; /// ?????? char szText[256]; /// ??? }NET_CFG_TICKETPRINT_INFO; ///@brief ACC????????? typedef struct tagNET_CFG_VEHICLEAUTOMAIN_INFO { DWORD dwSize; int nAutoShutDelay; ///?????????????ACC?????????????????????,[0, 65536], 65536?????????? int nForceShutDelay; ///???????????????????????????ACC????????Auto+Force??????, [0, 65536] int nPercent; ///????????????????????????????AutoShutDelay???????????????????????????????????????0??[0, 100] }NET_CFG_VEHICLEAUTOMAIN_INFO; ///@brief ??????????????? typedef struct tagNET_CFG_VEHICLENETSERVER_INFO { DWORD dwSize; BOOL bEnable; /// ????????? UINT nUdpPort; /// Udp??? UINT nTcpPort; /// ??????? }NET_CFG_VEHICLENETSERVER_INFO; ///@brief ?????????IMSI?????? typedef struct tagNET_CFG_IMSIBIND_INFO { DWORD dwSize; int nIMSI; /// IMSI????? char szIMSI[4][32]; /// ???IMSI?? }NET_CFG_IMSIBIND_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_VEHICLE_MAINTAINCE_INFO { DWORD dwSize; char szMaintainer[32]; /// ?????? char szMaintainerID[32]; /// ??????ID char szInfo[256]; /// ??????????? }NET_CFG_VEHICLE_MAINTAINCE_INFO; ///@brief ??????? typedef struct tagNET_ACCESSCTL_SPECIALDAY_INFO { char szDayName[32]; /// ?????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? BYTE byReserved[256]; }NET_ACCESSCTL_SPECIALDAY_INFO; ///@brief ????????????? typedef struct tagNET_CFG_ACCESSCTL_SPECIALDAY_GROUP_INFO { DWORD dwSize; BOOL bGroupEnable; /// ????? char szGroupName[32]; /// ?????? int nSpeciaday; /// ?????????????? NET_ACCESSCTL_SPECIALDAY_INFO stuSpeciaday[16]; /// ??????? }NET_CFG_ACCESSCTL_SPECIALDAY_GROUP_INFO; ///@brief ????????????? typedef struct tagNET_CFG_ACCESSCTL_SPECIALDAYS_SCHEDULE_INFO { DWORD dwSize; char szSchduleName[64]; /// ?????????? BOOL bSchdule; /// ????????? int nGroupNo; /// NET_EM_CFG_ACCESSCTL_SPECIALDAY_GROUP ????????? int nTimeSection; /// ???????????? DH_TSECT stuTimeSection[6]; /// ???? int nDoorNum; /// ???????????? int nDoors[64]; /// ????????????? }NET_CFG_ACCESSCTL_SPECIALDAYS_SCHEDULE_INFO; ///@brief (????)????????????? typedef struct tagNET_CFG_ACCESSCTL_HOLIDAY_GROUP_INFO { DWORD dwSize; /// ??????? int nHolidayGroupNum; /// ??????????? int nHolidayGroup[30]; /// ?????????????????????????? BOOL bEnable; /// ???????????? char szName[32]; /// ?????????? }NET_CFG_ACCESSCTL_HOLIDAY_GROUP_INFO; ///@brief ????????????? typedef struct tagNET_GH_TIMESECTION { BOOL bEnable; /// ??????? int nDoorStatus; /// ???? char szReversed1[4]; /// ?????? NET_TIME_EX1 stuBeginTime; /// ????????? NET_TIME_EX1 stuEndTime; /// ?????????? }NET_GH_TIMESECTION; ///@brief (????)???????????? typedef struct tagNET_CFG_ACCESSCTL_HOLIDAY_SCHEDULE_INFO { DWORD dwSize; /// ??????? int nTimeSection; /// ????????????? NET_GH_TIMESECTION stuGhTimeSections[4]; /// ????????????? char szReversed1[4]; /// ?????? BOOL bEnable; /// ??????????? char szName[64]; /// ????????? NET_TIME stuBeginDate; /// ?????????? ???????? ??-??-?? ???? NET_TIME stuEndDate; /// ?????????? ???????? ??-??-?? ???? }NET_CFG_ACCESSCTL_HOLIDAY_SCHEDULE_INFO; ///@brief ????????????????????????????????????????????????????? typedef struct tagNET_CFG_ICBC_DOOR_PARAS_INFO { int nWeekTimeSection; /// ???????????CFG_ACCESS_TIMESCHEDULE_INFO????????? int nInReaderMethod; /// ?????????????,???????????EM_AC_UNLOCK_MODE????????? int nOutReaderMethod; /// ?????????????,???????????EM_AC_UNLOCK_MODE????????? BOOL bOpenOutTimeEnable; /// ?????????????? int nHolidayGroupIndex; /// ????????,??NET_CFG_ACCESSCTL_HOLIDAY_GROUP_INFO???????? char szRserved[512]; /// ?????? }NET_CFG_ICBC_DOOR_PARAS_INFO; ///@brief ????????????????????????????????????????????????????? typedef struct tagNET_CFG_ICBC_DOOR_PARAS { DWORD dwSize; /// ??????? int nICBCDoorNum; /// ????????? NET_CFG_ICBC_DOOR_PARAS_INFO stuICBCDoorInfo[8]; /// ????????????? }NET_CFG_ICBC_DOOR_PARAS; ///@brief ???????????? typedef enum tagEM_BANK_WORK_SCENE { EM_BANK_WORK_SCENE_UNKNOWN = -1, /// ??? EM_BANK_WORK_SCENE_NORMAL, /// ???????????? EM_BANK_WORK_SCENE_ADDMONEYROOM, /// ??????? EM_BANK_WORK_SCENE_INTERLOCKLINK, /// ????????AB????? }EM_BANK_WORK_SCENE; ///@brief ?????????????????????????? typedef struct tagNET_CFG_WORK_SCENE_INFO { DWORD dwSize; /// ??????? EM_BANK_WORK_SCENE emBankWorkScene; /// ???????????? }NET_CFG_WORK_SCENE_INFO; ///@brief ?????? typedef enum tagEM_CUSTOMER_DEV_SETTING_DOOR_METHOD { EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_UNKNOWN = -1, /// ??? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_CTID, /// CTID ???? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_CTID_AND_FACE, /// CTID ?? + ????????? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_CTID_OR_FACE, /// CTID ???????? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_WRISTBAND_OR_FACE, /// ??????????? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_WRISTBAND_OR_FACE_OR_IDCARD, /// ????????????????? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_CODE1_OR_CODE2, /// ??1????2???? (??1????2????????????????????) EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_WRISTBAND_OR_FACE_OR_CODE2, /// ????????????2 EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_FACE_AND_CODE1_OR_CODE2, /// ???+????1????2?? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_FACE_OR_IDCARD_AND_CODE1_OR_CODE2, /// ???????????+????1??????2?? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_FACE_OR_IDCARD_OR_CODE1_OR_CODE2, /// ??????1????2????????? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD_FACE_AND_CODE1_OR_WRISTBAND /// (???+??1)??????? }EM_CUSTOMER_DEV_SETTING_DOOR_METHOD; ///@brief "??????"???? typedef struct tagNET_CFG_CUSTOMER_DEV_SETTING_INFO { DWORD dwSize; /// ??????? EM_CUSTOMER_DEV_SETTING_DOOR_METHOD emDoorMethod; /// ?????? char szEnckeycipher[1024]; /// ??????????????????????????????????????? }NET_CFG_CUSTOMER_DEV_SETTING_INFO; ///@brief ??????? typedef enum tagNET_ENUM_USER_TYPE { NET_ENUM_USER_TYPE_UNKNOWN = -1, NET_ENUM_USER_TYPE_NORMAL, NET_ENUM_USER_TYPE_BLACKLIST, NET_ENUM_USER_TYPE_GUEST, NET_ENUM_USER_TYPE_PATROL, NET_ENUM_USER_TYPE_VIP, NET_ENUM_USER_TYPE_HANDICAP, NET_ENUM_USER_TYPE_CUSTOM1, NET_ENUM_USER_TYPE_CUSTOM2, }NET_ENUM_USER_TYPE; ///@brief ????????? typedef struct tagNET_ON_DUTY_USER_INFO { char szUserID[32]; /// ??????ID NET_ENUM_USER_TYPE emUserType; /// ??????? UINT nUserStatus; /// ?????, 0 ????, 1 ???? BYTE byReserved[128]; /// ??????? }NET_ON_DUTY_USER_INFO; ///@brief ???????????? typedef struct tagNET_EM_CFG_QRCODE_DISPLAY_CONFIG_INFO { DWORD dwSize; /// ??????? int nQRCodeBitmapSize; /// ??????????????????????100*1024 char* pszQRCodeBitmap; /// ????????????base64????,???????????? char szQRCodeInfo[4096]; /// ???????? }NET_EM_CFG_QRCODE_DISPLAY_CONFIG_INFO; ///@brief ???????????? typedef struct tagNET_DOOR_INFO { int nLevel; /// ?????????????,255????????????????????????????????? int nDoorIndexNum; /// ??????????????????? int nDoorIndex[256]; /// ??????????????????????????????????,???256 char szReserved[1024]; /// ?????? }NET_DOOR_INFO; ///@brief NET_EM_CFG_ACCESS_OPEN_DOOR_SAFETY_FOLLOW ???????????????????? typedef struct tagNET_EM_CFG_ACCESS_OPEN_DOOR_SAFETY_FOLLOW_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????????????????? int nLevel; /// ?????????????,255????????????????????????????????? int nDoorInfoNum; /// ?????????????????? NET_DOOR_INFO stuDoorInfo[256]; /// ??????????? }NET_EM_CFG_ACCESS_OPEN_DOOR_SAFETY_FOLLOW_INFO; ///@brief ??????????? typedef enum tagNET_EM_DEC_AND_HEX_CONVERT { NET_EM_DEC_AND_HEX_CONVERT_UNKNOWN = -1, /// ??????? NET_EM_DEC_AND_HEX_CONVERT_NOT_CONVERT, /// ??????? NET_EM_DEC_AND_HEX_CONVERT_TYPE_ONE, /// ?????????????8???????????????????????04315437???????????????8??????0041D92D?? NET_EM_DEC_AND_HEX_CONVERT_TYPE_TWO, /// ?????????????10?????????????????????????1A2B3C4D?????????????10??????0439041101?? NET_EM_DEC_AND_HEX_CONVERT_TYPE_THREE, /// ?????????????????10?????????????????????????????????????????1A2B3C4D????????????????439041101?? NET_EM_DEC_AND_HEX_CONVERT_TYPE_FOUR, /// ?????????????8?????????????????????????0000DC5D?????????????8??????00056413??????8?????? }NET_EM_DEC_AND_HEX_CONVERT; ///@brief ??????????? typedef enum tagNET_EM_SPECIAL_CONVERT { NET_EM_SPECIAL_CONVERT_UNKNOWN = -1, /// ??????? NET_EM_SPECIAL_CONVERT_NOT_CONVERT, /// ??????? }NET_EM_SPECIAL_CONVERT; ///@brief ??????? typedef struct tagNET_CARD_NO_CONVERT_RULE { BOOL bReverse; /// ?????????????????????????????1A2B3C4D??????4D3C2B1A?? BOOL bHighestByteZero; /// ?????????????????????????00???????1A2B3C4D??????002B3C4D?? BOOL bHIDPro; /// HIDPro?????????????????1A2B3C4D??2B???????043??3C4D???????15437?????04315437?? NET_EM_DEC_AND_HEX_CONVERT emDecAndHexConvert; /// ??????????? NET_EM_SPECIAL_CONVERT emSpecial; /// ??????????? char szReserved[1004]; /// ?????? }NET_CARD_NO_CONVERT_RULE; ///@brief ?????????????????? typedef struct tagNET_CARD_NO_CONVERT_CONFIG_INFO { NET_CARD_NO_CONVERT_RULE stuLocalConvert; /// ??????????? NET_CARD_NO_CONVERT_RULE stuWiegandOut; /// ?????????? NET_CARD_NO_CONVERT_RULE stuWiegandIn; /// ??????????? NET_CARD_NO_CONVERT_RULE stuSerialOut; /// ?????????? NET_CARD_NO_CONVERT_RULE stuSerialIn; /// ??????????? char szReserved[1024]; /// ?????? }NET_CARD_NO_CONVERT_CONFIG_INFO; ///@brief NET_EM_CFG_CARD_NO_CONVERT_CONFIG ??????????????? typedef struct tagNET_EM_CFG_CARD_NO_CONVERT_CONFIG_INFO { DWORD dwSize; /// ??????? int nCardNoConvertConfigNum; /// ????????????????????????????? NET_CARD_NO_CONVERT_CONFIG_INFO* pCardNoConvertConfig; /// ?????????????????????????????????????????????sizeof(NET_CARD_NO_CONVERT_CONFIG_INFO)*nCardNoConvertConfigNum int nCardNoConvertConfigRetNum; /// ??????????????????????????????????? }NET_EM_CFG_CARD_NO_CONVERT_CONFIG_INFO; ///@brief ??????? ????????????? typedef struct tagNET_CFG_CUSTOMER_ON_DUTY_MODEL_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????? NET_ON_DUTY_USER_INFO stuOnDutyUser[128]; /// ????????????? int nOnDutyUserCnt; /// stuOnDutyUser?????????? }NET_CFG_CUSTOMER_ON_DUTY_MODEL_INFO; ///@brief ??????????? typedef struct tagNET_CFG_CUSTOMER_TEMP_POLICY_INFO { DWORD dwSize; /// ??????? int nAdvanceInfoTime; /// ???????????????????? int nInformTimes; /// ????????????? int nInformInterval; /// ????????????? float fHignTemp; /// ????? float fLowTemp; /// ????? int nCustomerTimeScheduleCount; /// ??????????? NET_TIME_SECTION stuCustomerTimeSchedule[16]; /// ???????? BOOL bEnable; /// ??????????????? char szFirstInfoMessage[256]; /// ?????????????????? char szCommonInfoMessage[256]; /// ??????????? }NET_CFG_CUSTOMER_TEMP_POLICY_INFO; ///@brief ??????????????? typedef enum tagEM_USER_PASS_DATA_COUNT_CLEAR_PERIOD { EM_USER_PASS_DATA_COUNT_CLEAR_PERIOD_UNKNOWN, /// ??? EM_USER_PASS_DATA_COUNT_CLEAR_PERIOD_HOUR, /// ????? EM_USER_PASS_DATA_COUNT_CLEAR_PERIOD_DAILY, /// ????, ???????00????? } EM_USER_PASS_DATA_COUNT_CLEAR_PERIOD; ///@brief ?????????????????????? typedef struct tagNET_EM_CFG_USER_PASS_DATA_COUNT_CLEAR_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????????????????????? EM_USER_PASS_DATA_COUNT_CLEAR_PERIOD emPeriod; /// ??????????????? }NET_EM_CFG_USER_PASS_DATA_COUNT_CLEAR_INFO; ///@brief ????????????????????????????? typedef struct tagNET_EM_CFG_SAMPO_SERVICE_NAME_INFO { DWORD dwSize; /// ??????? int nParamterCount; /// ??????????? char szParamter[6][128]; /// ???????? char szService[6][128]; /// ???????? int nServiceCount; /// ??????????? }NET_EM_CFG_SAMPO_SERVICE_NAME_INFO; ///@brief ????????????????????? typedef struct tagNET_EM_CFG_USER_PASS_PERMISSION_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????????? int nStudent; /// ???: 0???????1??????????? int nTeacher; /// ??? int nSecurity; /// ???? int nSupportPersonnel; /// ??????? int nOther; /// ???? int nFolk; /// ???? int nBlockList; /// ??????? int nTmp; /// ??? int nTmpPersonnel; /// ?????? int nMaintenanceMan; /// ???? int nDoctor; /// ??? int nMastter; /// ?? int nUndergraduate; /// ???? int nSpecialStudent; /// ??????? int nBeOnRegularPayroll; /// ??? int nUniversityEmployment; /// ??? int nSpecialPost; /// ??????? int nNormal; /// ??? int nSpecial; /// ???? int nJiangQianwanResident; /// ???????? int nLixinChangchengBieyuan; /// ???????????????? int nCommunityResident; /// ???????? int nResident; /// ????? int nTenant; /// ?? int nFamilyMembersOfStaff; /// ????????? int nObligate1; /// ???1 int nObligate2; /// ???2 int nObligate3; /// ???3 int nObligate4; /// ???4 int nObligate5; /// ???5 int nObligate6; /// ???6 int nObligate7; /// ???7 int nObligate8; /// ???8 int nObligate9; /// ???9 int nObligate10; /// ???10 int nObligate11; /// ???11 int nObligate12; /// ???12 int nObligate13; /// ???13 int nObligate14; /// ???14 }NET_EM_CFG_USER_PASS_PERMISSION_INFO; ///@brief ??????????? typedef struct tagNET_EM_CFG_HOSPITAL_TALK_CONFIG_INFO { DWORD dwSize; /// ??????? char szDepartmentName[20]; /// ???????? }NET_EM_CFG_HOSPITAL_TALK_CONFIG_INFO; ///@brief ???? typedef struct tagNET_EM_CFG_SECRET_PROJECT_CONFIG_INFO { DWORD dwSize; /// ??????? int nProjectNum; /// ??????????? char szProjects[30][64]; /// ???????????????????? char szProjectsEx[512][64]; /// ????????????????????(???) BOOL bIsUsingProjectsEx; /// ???????????????????szProjectsEx????????szProjectsEx?nProjectNum????512?????szProjects?nProjectNum????30 }NET_EM_CFG_SECRET_PROJECT_CONFIG_INFO; ///@brief ????????????????????NVR typedef struct tagNET_CFG_SERIALNOWHITETABLE_INFO { DWORD dwSize; int nCount; /// ??????????????? char szSerialNo[512][48]; /// ?????????? }NET_CFG_SERIALNOWHITETABLE_INFO; //////////////////////////////////////////////////////start//////////////////////////////////////////////////////////////////////// ///@brief ??????? typedef struct tagNET_CFG_LXSJ_WXJJ_INFO { DWORD dwSize; BOOL bEnable; /// ?????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szText[256]; /// ??????????? char szDisplayContent[256]; /// ????????????? }NET_CFG_LXSJ_WXJJ_INFO; ///@brief ??????? typedef enum tagNET_EM_LXSJ_TRANSMODE { NET_EM_LXSJ_TRANSMODE_UNKNOWN = -1, /// ??? NET_EM_LXSJ_TRANSMODE_TCP, /// TCP??? NET_EM_LXSJ_TRANSMODE_UDP /// UDP??? }NET_EM_LXSJ_TRANSMODE; ///@brief ??????? typedef enum tagNET_EM_LXSJ_FONTCOLOR { NET_EM_LXSJ_FONTCOLOR_UNKNOWN = -1, /// ??? NET_EM_LXSJ_FONTCOLOR_R0_G0_B0, /// 0-????????????????? NET_EM_LXSJ_FONTCOLOR_R1_G0_B0, /// 1-?????????????????????? NET_EM_LXSJ_FONTCOLOR_R0_G1_B0, /// 2-?????????????????????? NET_EM_LXSJ_FONTCOLOR_R1_G1_B0, /// 3-????????????????????? NET_EM_LXSJ_FONTCOLOR_R0_G0_B1, /// 4-?????????????????????? NET_EM_LXSJ_FONTCOLOR_R1_G0_B1, /// 5-????????????????????? NET_EM_LXSJ_FONTCOLOR_R0_G1_B1, /// 6-?????????????????????? NET_EM_LXSJ_FONTCOLOR_R1_G1_B1 /// 7-??????????????? }NET_EM_LXSJ_FONTCOLOR; ///@brief ??????????? typedef struct tagNET_CFG_VSP_LXSJ_NOPLATE { BOOL bEnable; /// ??? char szText[128]; /// ????????? BYTE byReserved[380]; /// ??? }NET_CFG_VSP_LXSJ_NOPLATE; ///@brief ????????????? typedef struct tagNET_CFG_VIOLATIONTYPE_NORMAL { BOOL bEnable; /// ??? NET_EM_LXSJ_FONTCOLOR emTextColor; /// ?????? char szText[128]; /// ???????? BYTE byReserved[376]; /// ??? }NET_CFG_VIOLATIONTYPE_NORMAL; typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICOVERSPEED; /// ???? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICCROSSLANE; /// ??????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICPARKING; /// ??????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICBACKING; /// ???????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICRETROGRADE; /// ???? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_PARKINGWARNING; /// ?????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICPEDESTRAINPRIORITY;/// ???????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICRUNREDLIGHT; /// ????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICWRONGROUTE; /// ??????????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICJAMFORBIDINTO; /// ?????????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICOVERLINE; /// ????? typedef NET_CFG_VIOLATIONTYPE_NORMAL NET_CFG_VIOLATIONTYPE_TRAFFICVEHICLEINROUTE; /// ??????? ///@brief ?????????????? typedef struct tagNET_CFG_VIOLATIONTYPE_TRAFFICJUNCTION { BOOL bEnable; /// ??? NET_EM_LXSJ_FONTCOLOR emTrustTextColor; /// ?????? char szTrustText[128]; /// ????????????????? NET_EM_LXSJ_FONTCOLOR emDisTrustTextColor; /// ?????? char szDisTrustText[128]; /// ??????????????????? BYTE byReserved[244]; /// ??? }NET_CFG_VIOLATIONTYPE_TRAFFICJUNCTION; ///@brief ???????????? typedef struct tagNET_CFG_VSP_LXSJ_VIOLATIONTYPE { NET_CFG_VIOLATIONTYPE_TRAFFICOVERSPEED stuTrafficOverSpeed; /// ???? NET_CFG_VIOLATIONTYPE_TRAFFICCROSSLANE stuTrafficCrossLane; /// ??????? NET_CFG_VIOLATIONTYPE_TRAFFICPARKING stuTrafficParking; /// ??????? NET_CFG_VIOLATIONTYPE_TRAFFICBACKING stuTrafficBacking; /// ???????? NET_CFG_VIOLATIONTYPE_TRAFFICRETROGRADE stuTrafficRetrograde; /// ???? NET_CFG_VIOLATIONTYPE_PARKINGWARNING stuParkingWarning; /// ?????? NET_CFG_VIOLATIONTYPE_TRAFFICJUNCTION stuTrafficJunction; /// ???? NET_CFG_VIOLATIONTYPE_TRAFFICPEDESTRAINPRIORITY stuTrafficPedestrainPriority; /// ???????? NET_CFG_VIOLATIONTYPE_TRAFFICRUNREDLIGHT stuTrafficRunRedLight; /// ????? NET_CFG_VIOLATIONTYPE_TRAFFICWRONGROUTE stuTrafficWrongRoute; /// ??????????? NET_CFG_VIOLATIONTYPE_TRAFFICJAMFORBIDINTO stuTrafficJamForbidInto; /// ?????????? NET_CFG_VIOLATIONTYPE_TRAFFICOVERLINE stuTrafficOverLine; /// ????? NET_CFG_VIOLATIONTYPE_TRAFFICVEHICLEINROUTE stuTrafficVehicleInRoute; /// ??????? BYTE byReserved[13824]; /// ??? }NET_CFG_VSP_LXSJ_VIOLATIONTYPE; ///@brief ??????? typedef enum tagNET_EM_LXSJ_COLORTYPE { NET_EM_LXSJ_COLORTYPE_UNKNOWN = -1, /// ??? NET_EM_LXSJ_COLORTYPE_SINGLE_COLOR = 1, /// ??? NET_EM_LXSJ_COLORTYPE_DOUBLE_COLOR = 2, /// ?? NET_EM_LXSJ_COLORTYPE_THREE_COLOR = 3, /// ??? }NET_EM_LXSJ_COLORTYPE; ///@brief ???????????? typedef enum tagNET_EM_LXSJ_AREATYPE { NET_EM_LXSJ_AREATYPE_UNKNOWN = -1, ///??? NET_EM_LXSJ_AREATYPE_STATIC_TYPE = 0, /// 0- ??? NET_EM_LXSJ_AREATYPE_DYNAMIC_TYPE = 1, /// 1- ??? }NET_EM_LXSJ_AREATYPE; ///@brief ??????????? typedef enum tagNET_EM_LXSJ_DISPLAYTYPE { NET_EM_LXSJ_DISPLAYTYPE_UNKNOWN = -1, ///??? NET_EM_LXSJ_DISPLAYTYPE_BACK_TYPE = 0, /// 0- ???? NET_EM_LXSJ_DISPLAYTYPE_FRONT_TYPE = 1, /// 1- ??? }NET_EM_LXSJ_DISPLAYTYPE; ///@brief ?????? typedef enum tagNET_EM_LXSJ_SHOWMODE { NET_EM_LXSJ_SHOWMODE_UNKNOWN = -1, /// ??? NET_EM_LXSJ_SHOWMODE_IMMEDIATELY = 1, /// ??????? NET_EM_LXSJ_SHOWMODE_TO_LEFT = 2, /// ??????? NET_EM_LXSJ_SHOWMODE_TO_TOP = 3, /// ??????? NET_EM_LXSJ_SHOWMODE_TO_RIGHT = 4, /// ??????? NET_EM_LXSJ_SHOWMODE_TO_BOTTOM = 5, /// ??????? NET_EM_LXSJ_SHOWMODE_BLINK = 6, /// ??? NET_EM_LXSJ_SHOWMODE_TO_TOP_CONTINUOUS = 94, /// ???????? NET_EM_LXSJ_SHOWMODE_TO_BOTTOM_CONTINUOUS = 95, /// ???????? NET_EM_LXSJ_SHOWMODE_TO_RIGHT_CONTINUOUS = 96, /// ???????? NET_EM_LXSJ_SHOWMODE_TO_LEFT_CONTINUOUS = 97, /// ???????? }NET_EM_LXSJ_SHOWMODE; ///@brief ???????(????????) typedef enum tagNET_EM_LXSJ_FONTSIZE { NET_EM_LXSJ_FONTSIZE_UNKNOWN = -1, /// ??? NET_EM_LXSJ_FONTSIZE_16 = 16, /// 16???? NET_EM_LXSJ_FONTSIZE_32 = 32, /// 32???? }NET_EM_LXSJ_FONTSIZE; ///@brief ???????? typedef enum tagNET_EM_LXSJ_ELEM_NAMETYPE { NET_EM_LXSJ_ELEM_NAMETYPE_UNKNOWN = -1, /// ??? NET_EM_LXSJ_ELEM_NAMETYPE_SEPERATER = 0, /// 0-????? NET_EM_LXSJ_ELEM_NAMETYPE_NEWLINE = 1, /// 1-?????? NET_EM_LXSJ_ELEM_NAMETYPE_PLATE = 2, /// 2-???? NET_EM_LXSJ_ELEM_NAMETYPE_VIOLATIONINFO = 3, /// 3-??????? NET_EM_LXSJ_ELEM_NAMETYPE_SPEED = 4, /// 4-??? NET_EM_LXSJ_ELEM_NAMETYPE_CUSTOM = 5, /// 5-??????? }NET_EM_LXSJ_ELEM_NAMETYPE; ///@brief ??????? typedef struct tagNET_CFG_VSP_LXSJ_ELEMENT { NET_EM_LXSJ_ELEM_NAMETYPE emNameType; /// ???????? char szName[32]; /// ???? char szPrefix[64]; /// ??????? char szPostfix[64]; /// ???????? int nSeperaterCount; /// ???????????????? BYTE byReserved[856]; /// ??? }NET_CFG_VSP_LXSJ_ELEMENT; ///@brief ?????????????? typedef struct tagNET_CFG_VSP_LXSJ_AREADATA { NET_EM_LXSJ_AREATYPE emAreaType; /// ???????????? NET_EM_LXSJ_DISPLAYTYPE emAreaDisplayType; /// ??????????? UINT nAreaX1; /// ?????????X1 UINT nAreaY1; /// ?????????Y1 UINT nAreaX2; /// ?????????X2 UINT nAreaY2; /// ?????????Y2 NET_EM_LXSJ_FONTCOLOR emFontColor; /// ??????????? DH_COLOR_RGBA stuRGB; /// ????????RGB? NET_EM_LXSJ_SHOWMODE emShowMode; /// ?????? UINT nMoveSpeed; /// ?????????????(????5ms) UINT nStayTime; /// ????????????1s?? NET_EM_LXSJ_FONTSIZE emFontSize; /// ???????(????????) UINT nMaxRollingItem; /// ???????????????? int nElement; /// ??????????? NET_CFG_VSP_LXSJ_ELEMENT stuElement[16]; /// ??????? BYTE byReserved[956]; /// ??? }NET_CFG_VSP_LXSJ_AREADATA; ///@brief ??????????? typedef struct tagNET_CFG_VSP_LXSJ_CUSTOM { BOOL bEnable; UINT nWaitTime; /// ???????????? char szText[256]; /// ???????????? NET_EM_LXSJ_DISPLAYTYPE emAreaDisplayType; /// ??????????? UINT nAreaX1; /// ?????????X1 UINT nAreaY1; /// ?????????Y1 UINT nAreaX2; /// ?????????X2 UINT nAreaY2; /// ?????????Y2 NET_EM_LXSJ_FONTCOLOR emFontColor; /// ??????????? DH_COLOR_RGBA stuRGB; /// ????????RGB? NET_EM_LXSJ_SHOWMODE emShowMode; /// ?????? UINT nMoveSpeed; /// ?????????????(????5ms) UINT nStayTime; /// ????????????1s?? NET_EM_LXSJ_FONTSIZE emFontSize; /// ???????(????????) BYTE byReserved[704]; /// ??? }NET_CFG_VSP_LXSJ_CUSTOM; ///@brief ?????????? typedef struct tagNET_CFG_VSP_LXSJ_ROLLCONFIG { BOOL bEnable; UINT nMaxItemNum; /// ??????????? UINT nPeriod; /// ???? BYTE byReserved[52]; /// ??? }NET_CFG_VSP_LXSJ_ROLLCONFIG; ///@brief ??????????/??????? typedef struct tagNET_CFG_VSP_LXSJ_SLOGAN { char szText[256]; /// ??????? NET_EM_LXSJ_DISPLAYTYPE emAreaDisplayType; /// ??????????? UINT nAreaX1; /// ?????????X1 UINT nAreaY1; /// ?????????Y1 UINT nAreaX2; /// ?????????X2 UINT nAreaY2; /// ?????????Y2 NET_EM_LXSJ_FONTCOLOR emFontColor; /// ??????????? DH_COLOR_RGBA stuRGB; /// ????????RGB? NET_EM_LXSJ_SHOWMODE emShowMode; /// ?????? UINT nMoveSpeed; /// ?????????????(????5ms) UINT nStayTime; /// ????????????1s?? NET_EM_LXSJ_FONTSIZE emFontSize; /// ???????(????????) BYTE byReserved[712]; /// ??? }NET_CFG_VSP_LXSJ_SLOGAN, NET_CFG_VSP_LXSJ_WARNNING; ///@brief ??????????????? typedef struct tagNET_CFG_VSP_LXSJ_TRAFFICJAM { BOOL bEnable; NET_CFG_VSP_LXSJ_SLOGAN stuSlogan; /// ?????????? NET_CFG_VSP_LXSJ_WARNNING stuWarnning; /// ??????? BYTE byReserved[4096]; /// ??? }NET_CFG_VSP_LXSJ_TRAFFICJAM; ///@brief ???????????? typedef struct tagNET_CFG_VSP_LXSJ_RADARPREALARM { BOOL bEnable; char szText[256]; /// ??????? NET_EM_LXSJ_DISPLAYTYPE emAreaDisplayType; /// ??????????? UINT nAreaX1; /// ?????????X1 UINT nAreaY1; /// ?????????Y1 UINT nAreaX2; /// ?????????X2 UINT nAreaY2; /// ?????????Y2 NET_EM_LXSJ_FONTCOLOR emFontColor; /// ??????????? DH_COLOR_RGBA stuRGB; /// ????????RGB? NET_EM_LXSJ_SHOWMODE emShowMode; /// ?????? UINT nMoveSpeed; /// ?????????????(????5ms) UINT nStayTime; /// ????????????1s?? NET_EM_LXSJ_FONTSIZE emFontSize; /// ???????(????????) BYTE byReserved[708]; /// ??? }NET_CFG_VSP_LXSJ_RADARPREALARM; ///@brief ????????????????? typedef struct tagNET_CFG_VSP_LXSJ_INFO { DWORD dwSize; BOOL bEnable; /// ????????? char szServerIP[32]; /// ????????IP??? int nServerPort; /// ????????? NET_EM_LXSJ_TRANSMODE emTransMode; /// ??????? char szContorlID[32]; /// ??????ID UINT nWidth; /// ????????? UINT nHeigth; /// ???????? UINT nPlayTime; /// ???????(??) UINT nCirclePlayTimes; /// ?????????? NET_EM_LXSJ_COLORTYPE emColorType; /// ??????? NET_CFG_VSP_LXSJ_NOPLATE stuNoPlate; /// ??????????? NET_CFG_VSP_LXSJ_VIOLATIONTYPE stuViolationType; /// ???????????? int nAreaDataNum; /// ????????????????? NET_CFG_VSP_LXSJ_AREADATA stuAreaData[16]; /// ?????????????? NET_CFG_VSP_LXSJ_CUSTOM stuCustom; /// ??????????? NET_CFG_VSP_LXSJ_ROLLCONFIG stuRollConfig; /// ?????????? NET_CFG_VSP_LXSJ_TRAFFICJAM stuTrafficJam; /// ??????????????? NET_CFG_VSP_LXSJ_RADARPREALARM stuRadarPreAlarm; /// ???????????? }NET_CFG_VSP_LXSJ_INFO; //////////////////////////////////////////////////////end//////////////////////////////////////////////////////////////////////// ///@brief ????????? typedef struct tagNET_CFG_GLOBAL_MODEVALUE_INFO { int nNormal; /// ???????? int nAlarm; /// ????????? BYTE byReserved[24]; /// ??????? }NET_CFG_GLOBAL_MODEVALUE_INFO; ///@brief ????????????????? typedef struct tagNET_CFG_SENSOR_ALARM_GLOBAL_INFO { DWORD dwSize; NET_CFG_GLOBAL_MODEVALUE_INFO stuFrequency; /// ?????????? NET_CFG_GLOBAL_MODEVALUE_INFO stuTimes; /// ?????????? }NET_CFG_SENSOR_ALARM_GLOBAL_INFO; ///@brief ????????? typedef struct tagNET_CFG_SERSOR_INFO { NET_SENSE_METHOD emSenseMethod; /// ?????????? int nAlarmLowerLimit; /// ???????????????????? int nAlarmHighLimit; /// ???????????????????? BYTE byReserved[500]; /// ??????? }NET_CFG_SERSOR_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_SENSOR_ALARM_INFO { DWORD dwSize; int nMaxNum; /// pstSensorList?????????????????? int nRetNum; /// ????????????? NET_CFG_SERSOR_INFO* pstSensorList; /// ?????????????????????????????nMaxNum * sizeof(NET_CFG_SERSOR_INFO) }NET_CFG_SENSOR_ALARM_INFO; ///@brief ???? typedef struct tagNET_TIME_POINT { int bEnable; /// ??? int nHour; /// ? int nMin; /// ?? int nSec; /// ?? }NET_TIME_POINT; ///@brief ??????????(?????? NET_EM_CFG_TIMINGCAPTURE) typedef struct tagNET_CFG_TIMINGCAPTURE_INFO { DWORD dwSize; NET_TIME_POINT stuTimeSchedule[DH_N_WEEKS]; /// ????????????7????????????????????????????????????????????? }NET_CFG_TIMINGCAPTURE_INFO; ///@brief ????????????????? typedef struct tagNET_LOOPPLAYBACK_AUDIOALARM_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???,??????TRUE ????FALSE DH_TSECT stuTimeSection[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ?????????? char szAudioFilePath[256]; /// ??????????????? char szStartTime[20]; /// ?????? char szEndTime[20]; /// ??????? }NET_LOOPPLAYBACK_AUDIOALARM_INFO; ///@brief ?????????? typedef struct tagNET_CFG_PTZ_SPEED { DWORD dwSize; int nPtzSpeed; /// ?????? 0~4 int nPatternSpeed; /// ?????? 1-10???????10???100%????5???50%????????????? }NET_CFG_PTZ_SPEED; ///@brief ????????????????? typedef struct tagNET_CFG_HORIZONTAL_ROTATION_LIMIT_INFO { BOOL bLimitEnable; /// ??????? int nLimitMode; /// ?????? 0:???? 1?????? BYTE byReserved[256]; /// ??????? } NET_CFG_HORIZONTAL_ROTATION_LIMIT_INFO; ///@brief ????????????????? NET_EM_CFG_PTZ_HORIZONTAL_ROTATION_SCAN typedef struct tagNET_CFG_HORIZONTAL_ROTATION_GROUP_SCAN_INFO { DWORD dwSize; /// ??????? NET_CFG_HORIZONTAL_ROTATION_LIMIT_INFO stuHorizontalRotationInfo; /// ????????????????? } NET_CFG_HORIZONTAL_ROTATION_GROUP_SCAN_INFO; ///@brief ?????? typedef struct tagNET_AUTOSCAN_INFO { char szName[32]; /// ????????? BOOL bLeftEnable; /// ???????????????? BOOL bRightEnable; /// ???????????????? UINT nScanSpeed; /// ??????,0~7 BYTE byReserved[948]; /// ??? }NET_AUTOSCAN_INFO; ///@brief ?????????? typedef struct tagNET_CFG_AUTOSCAN_INFO { DWORD dwSize; /// ??????? int nMaxScanInfoNum; /// ????????pAutoScanInfos??????? NET_AUTOSCAN_INFO* pAutoScanInfos; /// ?????????????????????????? nMaxScanInfoNum * sizeof(NET_AUTOSCAN_INFO) int nRetScanInfoNum; /// ?????/???????????????????????nMaxScanInfoNum }NET_CFG_AUTOSCAN_INFO; ///@brief ????????? typedef enum tagEM_TOUR_PRIOR_MODE { EM_TOUR_PRIOR_MODE_UNKNOWN, /// ??? EM_TOUR_PRIOR_MODE_SWITCH, /// ???????? EM_TOUR_PRIOR_MODE_DETECT, /// ??????? EM_TOUR_PRIOR_MODE_TOUR, /// ??????? } EM_TOUR_PRIOR_MODE; ///@brief ??????? typedef struct tagNET_TOUR_PATH { UINT nPresetID; /// ??????, ??????1~300 UINT nDuration; /// ??????, ??????30~900, ???????? UINT nSpeed; /// ?????????, ??????1~10 BYTE byReserved[508]; /// ?????? } NET_TOUR_PATH; ///@brief ???????? typedef struct tagNET_TOUR_GROUP { DH_TSECT stuTimeSection; /// ???? int nTourPathNum; /// ?????????????? NET_TOUR_PATH stuTourPath[10]; /// ??????? BYTE byReserved[1024]; /// ?????? } NET_TOUR_GROUP; ///@brief ?????? typedef struct tagNET_TOUR_PLAN { NET_TOUR_GROUP stuTourGroup[16]; /// ???????? int nGroupNum; /// ???????? BYTE byReserved[1020]; /// ?????? } NET_TOUR_PLAN; ///@brief ????????? typedef struct tagNET_CFG_INTELLI_TOUR { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????????? EM_TOUR_PRIOR_MODE emTourPriMode; /// ????????? UINT nIdleWaitingTime; /// ??????????, ??????????????????????????????????????????,????:?? NET_TOUR_PLAN stuTourPlan[7]; /// ??????????????????? UINT nSceneSwitchingTime; /// ???????????, ??????????????????????????????????????????????????????????????????????? BYTE byReserved[4]; /// ???? }NET_CFG_INTELLI_TOUR; ///@brief ?????????????? NET_PRIOR_MODE_INFO typedef struct tagNET_CFG_COAXIAL_LIGHT_INFO { DWORD dwSize; BOOL bEnable; /// ??????? DH_TSECT stuTimeSection[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ???????????? } NET_CFG_COAXIAL_LIGHT_INFO; ///@brief ????????? typedef struct tagNET_VIDEO_OUT_COLOR { UINT nBrightness; /// ????, 0~100 UINT nContrast; /// ????, 0~100 UINT nSaturation; /// ?????, 0~100 UINT nHue; /// ???, 0~100 UINT nGamma; /// Gamma?, 0~100 BYTE byResered[132]; /// ??????? } NET_VIDEO_OUT_COLOR; ///@brief ???????? typedef enum tagEM_VIDEO_OUT_FORMAT { EM_VIDEO_OUT_FORMAT_UNKNOWN, /// ??? EM_VIDEO_OUT_FORMAT_AUTO, /// Auto, ?????????? EM_VIDEO_OUT_FORMAT_TV, /// TV EM_VIDEO_OUT_FORMAT_VGA, /// VGA EM_VIDEO_OUT_FORMAT_DVI, /// DVI EM_VIDEO_OUT_FORMAT_HDMI, /// DHMI EM_VIDEO_OUT_FORMAT_SPOT, /// SPOT EM_VIDEO_OUT_FORMAT_SDI, /// SDI } EM_VIDEO_OUT_FORMAT; ///@brief ???????? typedef enum tagEM_VIDEO_OUT_SCAN_FORMAT { EM_VIDEO_OUT_SCAN_FORMAT_UNKNOWN, /// ??? EM_VIDEO_OUT_SCAN_FORMAT_PROGRESSIVE, /// ???? EM_VIDEO_OUT_SCAN_FORMAT_INTERLACE, /// ???? } EM_VIDEO_OUT_SCAN_FORMAT; ///@brief ???????? typedef struct tagNET_VIDEO_OUT_MODE { int nWidth; /// ??????? int nHeight; /// ???????? int nBPP; /// ?????? int nRefreshRate; /// ?????? EM_VIDEO_OUT_FORMAT emFormat; /// ???????? EM_VIDEO_OUT_SCAN_FORMAT emScanFormat; /// ???????? BYTE byResered[128]; /// ??????? } NET_VIDEO_OUT_MODE; ///@brief ????????????? typedef struct tagNET_VIDEO_OUT_USERDEF_MODE { int nWidth; /// ??????? int nHeight; /// ???????? int nBPP; /// ?????? int nRefreshRate; /// ?????? EM_VIDEO_OUT_FORMAT emFormat; /// ???????? EM_VIDEO_OUT_SCAN_FORMAT emScanFormat; /// ???????? BYTE byResered[128]; /// ??????? } NET_VIDEO_OUT_USERDEF_MODE; ///@brief ?????????? NET_EM_CFG_VIDEO_OUT typedef struct tagNET_CFG_VIDEO_OUT_INFO { DWORD dwSize; BOOL bEnable; /// ??? UINT nMargin[4]; /// ????????,????????????????????????????????????,???0~100 BOOL bIQIMode; /// ????????? BOOL bIsUserDefMode; /// ????????????????????? NET_VIDEO_OUT_COLOR stuColor; /// ????????? NET_VIDEO_OUT_MODE stuMode; /// ???????? NET_VIDEO_OUT_USERDEF_MODE stuSelfDefMode; /// ?????????????, ??bIsUserDefMode?TRUE????? } NET_CFG_VIDEO_OUT_INFO; ///@brief ????????????????????????? typedef struct tagNET_CFG_CLOUDUPLOADTIME_INFO { DWORD dwSize; BOOL bEnable; /// ??? NET_TIME stStartTime; /// ???????,????????????????? NET_TIME stEndTime; /// ????????,????????????????? }NET_CFG_CLOUDUPLOADTIME_INFO; ///@brief ??? typedef struct tagNET_CFG_PATTERN_PTZ_INFO { BOOL bEnable; /// ?????????? TRUE ??????FALSE ??? char szName[32]; /// ?????????(??????????????????) BYTE byReserved[1020]; /// ??????? }NET_CFG_PATTERN_PTZ_INFO; ///@brief ?????????? typedef struct tagNET_CFG_AUTO_PATTERN_INFO { DWORD dwSize; /// ??????? NET_CFG_PATTERN_PTZ_INFO stuPatternPtzInfo[32]; /// ?????? int nPatternPtzInfo; /// ??????? }NET_CFG_AUTO_PATTERN_INFO; ///@brief ????????????????? typedef enum tagEM_SERVER_OPTION { EM_SERVER_OPTION_UNKNOWN, /// ??? EM_SERVER_OPTION_DISABLE, /// ?????????? EM_SERVER_OPTION_GB28181, /// ??28181????????? EM_SERVER_OPTION_GB35114, /// ??35114????????? }EM_SERVER_OPTION; ///@brief ????????? typedef struct tagNET_CHANNEL_INFO { char szID[MAX_CHANNEL_ID_LEN]; /// ?????? unsigned int nAlarmLevel; /// ????????,????[1,6] BYTE byReserved[1024]; /// ??????? }NET_CHANNEL_INFO; ///@brief ?????????? typedef struct tagNET_ALARM_INFO { char szID[MAX_CHANNEL_ID_LEN]; /// ?????? unsigned int nAlarmLevel; /// ????????,????[1,6] BYTE byReserved[1024]; /// ??????? }NET_ALARM_INFO; ///@brief ??????????????? typedef struct tagNET_AUDIO_OUTPUT_CHANNEL_INFO { char szID[MAX_CHANNEL_ID_LEN]; /// ?????? BYTE byReserved[1024]; /// ??????? }NET_AUDIO_OUTPUT_CHANNEL_INFO; ///@brief SIP????????? typedef struct tagNET_SIP_SERVER_INFO { EM_SERVER_OPTION emServerOption; /// ????????????????? char szSipSvrId[MAX_SIP_SVR_ID_LEN]; /// SIP????????? char szDomain[MAX_SIP_DOMAIN_LEN]; /// SIP?? char szSipSvrIp[MAX_SIP_SVR_IP_LEN]; /// SIP??????IP char szDeviceId[MAX_SIP_SERVER_DEVICE_ID_LEN]; /// ?????? char szPassword[MAX_REG_PASSWORD_LEN]; /// ??????? unsigned short nLocalSipPort; /// ????SIP?????? unsigned short nSipSvrPort; /// SIP????????? unsigned int nSipRegExpires; /// ?????????,????:?? unsigned int nRegInterval; /// ????????????????,????:?? unsigned int nKeepAliveCircle; /// ????????,????:?? unsigned int nMaxTimeoutTimes; /// ?????????????? char szCivilCode[MAX_CIVIL_CODE_LEN]; /// ???????????? char szIntervideoID[MAX_INTERVIDEO_ID_LEN]; /// ???????????? NET_CHANNEL_INFO* pstuChannnelInfo; /// ?????????,????????????,?????sizeof(NET_CHANNEL_INFO)*nChannelInfoNum unsigned int nChannelInfoNum; /// ??????????,?????????????????????? unsigned int nRetChannelInfoNum; /// ??????????????????? NET_ALARM_INFO* pstuAlarmInfo; /// ?????????????,????????????,?????sizeof(NET_ALARM_INFO)*nAlarmInfoNum unsigned int nAlarmInfoNum; /// ???????????,?????640 unsigned int nRetAlarmInfoNum; /// ???????????????????? NET_AUDIO_OUTPUT_CHANNEL_INFO* pstuAudioOutputChnInfo; /// ???????????????,????????????,?????sizeof(NET_AUDIO_OUTPUT_CHANNEL_INFO)*nAudioOutputChnInfoNum unsigned int nAudioOutputChnInfoNum; /// ???????????????????,?????181 unsigned int nRetAudioOutputChnInfoNum; /// ??????????????????????? BYTE byReserved[1024]; /// ?????? }NET_SIP_SERVER_INFO; ///@brief ???????????????????? typedef struct tagNET_CFG_VSP_GAYS_SERVER_INFO { DWORD dwSize; /// ??????? unsigned int nSipServerInfoNum; /// ????SIP??????????????,??????MAX_SIP_SERVER_NUM NET_SIP_SERVER_INFO stuSipServerInfo[MAX_SIP_SERVER_NUM]; /// SIP????????? unsigned int nRetSipServerInfoNum; /// ?????????????SIP????????????? BYTE byReserved[4]; /// ?????????? }NET_CFG_VSP_GAYS_SERVER_INFO; ///@brief ???????????????????,??? NET_EM_CFG_VSP_CO_SIGN_SERVER typedef struct tagNET_CFG_VSP_CO_SIGN_SERVER_INFO { DWORD dwSize; /// ??????? char szCoSignServerIP[64]; /// ????????????IP??? unsigned int nCoSignServerPort; /// ??????????????? }NET_CFG_VSP_CO_SIGN_SERVER_INFO; ///@brief ?????????? typedef struct tagNET_VSP_GAVI_NOTIFY_OBJECT { BOOL bFaceChecked; /// f?????? BOOL bPersonChecked; /// b?????? BOOL bMotorVehicleChecked; /// ????????? BOOL bNonMotorVehicleChecked; /// ?????????? BOOL bImageChecked; /// ????? BYTE byReserved[516]; /// ?????? }NET_VSP_GAVI_NOTIFY_OBJECT; ///@brief ?????? typedef struct tagNET_VSP_GAVI_CHANNEL_INFO { char szChannelEncode[24]; /// ??????? NET_VSP_GAVI_NOTIFY_OBJECT stuNotifyObject; /// ????????? BYTE byReserved[512]; /// ?????? }NET_VSP_GAVI_CHANNEL_INFO; ///@brief ????????? typedef enum tagEM_VSP_GAVI_PLATFORM_CODE { EM_VSP_GAVI_PLATFORM_CODE_UNKNOWN = -1, EM_VSP_GAVI_PLATFORM_CODE_DEFAULT, EM_VSP_GAVI_PLATFORM_CODE_DAHUA, EM_VSP_GAVI_PLATFORM_CODE_HKTDA_CLOUDSTORAGE, EM_VSP_GAVI_PLATFORM_CODE_UNIVIEW, EM_VSP_GAVI_PLATFORM_CODE_HKTEST, EM_VSP_GAVI_PLATFORM_CODE_SHQPNETPOSE, EM_VSP_GAVI_PLATFORM_CODE_HKTDA, EM_VSP_GAVI_PLATFORM_CODE_HARZONE, EM_VSP_GAVI_PLATFORM_CODE_NETPOSE, EM_VSP_GAVI_PLATFORM_CODE_TAOAN, EM_VSP_GAVI_PLATFORM_CODE_RESERVED, EM_VSP_GAVI_PLATFORM_CODE_HKVIEWGATEWAY, EM_VSP_GAVI_PLATFORM_CODE_KODAK, }EM_VSP_GAVI_PLATFORM_CODE; ///@brief ???????????????? typedef struct tagNET_HKIMAGESERVER_INFO { char szAccessKey[136]; /// ?????? char szSecretKey[136]; /// ?????? BYTE szReserved[512]; /// ?????? }NET_HKIMAGESERVER_INFO; ///@brief ???????? typedef struct tagNET_VSP_GAVI_INFO { char szAddress[128]; /// ?????IP?????????????IP?????????????? char szUserId[64]; /// ????????? char szPassword[64]; /// ??????? UINT nPort; /// ????????? BOOL bEnable; /// ??????? UINT nKeepAliveTime; /// ???????????????[10,90],?????? UINT nMaxTimeoutTimes; /// ??????????????[2,5] UINT nRegisterInterval; /// ?????????????????????????????[30,300],?????? char szDeviceID[24]; /// ??????ID NET_VSP_GAVI_CHANNEL_INFO* pstuChannelInfo; /// ?????????????????? UINT nChannelCount; /// pstuChannelInfo ???????????????????? UINT nChannelCountRet; /// ????? pstuChannelInfo ???? EM_VSP_GAVI_PLATFORM_CODE emPlatform; /// ????? BOOL bIsOnLine; /// ??????????????? NET_HKIMAGESERVER_INFO* pHKImageServerInfo; /// ?????????????????????emPlatform ? EM_VSP_GAVI_PLATFORM_CODE_HKTDA_CLOUDSTORAGE????? BYTE byReserved[68]; /// ??????? }NET_VSP_GAVI_INFO; ///@brief ????????????? typedef struct tagNET_VSP_GAVI_PLATFORM_INFO { EM_VSP_GAVI_PLATFORM_CODE emPlatformCode; /// ???? char szPlatformName[128]; /// ?????? BYTE byReserved[132]; /// ?????? }NET_VSP_GAVI_PLATFORM_INFO; ///@brief ??????????????????????????,??? NET_EM_CFG_VSP_GAVI typedef struct tagNET_CFG_VSP_GAVI_INFO { DWORD dwSize; /// ??????? int nGaviInfoCount; /// ????????? NET_VSP_GAVI_INFO stuGaviInfo[16]; /// ???????? int nPlatformCount; /// stuPlatformInfo???? NET_VSP_GAVI_PLATFORM_INFO stuPlatformInfo[64]; /// ???????????????????????? }NET_CFG_VSP_GAVI_INFO; ///@brief ONVIF????????, ??? NET_EM_CFG_VSP_ONVIF typedef struct tagNET_CFG_VSP_ONVIF_INFO { DWORD dwSize; /// ??????? BOOL bServiceStart; /// ??????? }NET_CFG_VSP_ONVIF_INFO; ///@brief ??????????????????, ??? NET_EM_CFG_VSP_LRLXXF_MODULE typedef struct tagNET_CFG_VSP_LRLXXF_MODULE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????, TRUE???????????????, FALSE?????????????? }NET_CFG_VSP_LRLXXF_MODULE_INFO; ///@brief ????????? typedef struct tagNET_VSP_LRLXXF_CUSTOM_INFO { UINT nReportInterval; /// ReportInterval, web???, ???????? char szEvoConsumeUrl[128]; /// EvoConsumeUrl, web??? char szClientSecret[128]; /// ClientSecret, web??? char szClientID[128]; /// ClientID, web??? char szGetTokenUrl[128]; /// GetTokenUrl, web??? char byReserved[256]; /// ?????? }NET_VSP_LRLXXF_CUSTOM_INFO; ///@brief ???????????????????, ??? NET_EM_CFG_VSP_LRLXXF_CUSTOM typedef struct tagNET_CFG_VSP_LRLXXF_CUSTOM_INFO { DWORD dwSize; /// ??????? NET_VSP_LRLXXF_CUSTOM_INFO stuCustom; /// ????????? }NET_CFG_VSP_LRLXXF_CUSTOM_INFO; ///@brief ??????? typedef enum tagEM_REGISTRATION_PROTOCOL { EM_REGISTRATION_PROTOCOL_UNKNWON, /// ??? EM_REGISTRATION_PROTOCOL_PRIVATE, /// Private???? EM_REGISTRATION_PROTOCOL_SIP, /// ???SIP???? EM_REGISTRATION_PROTOCOL_H323, /// H323???? EM_REGISTRATION_PROTOCOL_HITRY_CLOUD, /// HitryCloud???? }EM_REGISTRATION_PROTOCOL; ///@brief ???????????????????????????, ??? NET_EM_CFG_VSP_TERMINAL_REGISTER_INFO typedef struct tagNET_CFG_VSP_TERMINAL_REGISTER_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??? char szDeviceID[16]; /// ???ID char szPassword[32]; /// ???? char szRemoteIp[64]; /// ??????IP UINT nRemotePort; /// ?????????, ???50060, ??????:1-65535 BOOL bIsAutoJoinConference; /// ????????? EM_REGISTRATION_PROTOCOL emProtocol; /// ??????? BOOL bIsRecord; /// ??????????????????? }NET_CFG_VSP_TERMINAL_REGISTER_INFO; ///@brief ?????????????? typedef struct tagNET_MEDIA_ENCRYPT_INFO { DWORD dwSize; /// ??????? BOOL bKeyFrameEncryptEnable; /// ???????????????? unsigned int nVKUpdateTime; /// ???????????,????:????,???0,????????????? BOOL bRTSPOverTlsEnable; /// ?????RTSP TLS???? EM_ALGORITHM_TYPE emAlgorithm; /// ?????? }NET_MEDIA_ENCRYPT_INFO; ///@brief ??????????????? typedef struct tagNET_DOWNLOAD_ENCRYPT_INFO { DWORD dwSize; /// ??????? BOOL bEncryptEnable; /// ???????????? char szEncryptPasswd[256]; /// ???????????????? EM_ALGORITHM_TYPE emAlgorithm; /// ?????? }NET_DOWNLOAD_ENCRYPT_INFO; ///@brief ?????????????? typedef struct tagNET_STORE_ENCRYPT_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????????? int nVKEKMode; /// 0:??? 1:???????????????????? 2:???????????? EM_ALGORITHM_TYPE emAlgorithm; /// ?????? char szEncryptPasswd[64]; /// ?????????????????????????????????????,bEnable?TRUE??nVKEKMode?2????? }NET_STORE_ENCRYPT_INFO; ///@brief ????/???????? typedef struct tagNET_CFG_COUNTRY_INFO { DWORD dwSize; /// ??????? char szCountry[3]; /// ????/????,2?????????,????ISO 3166??Z BYTE byReserved1[1]; /// ??????, ???????? }NET_CFG_COUNTRY_INFO; ///@brief ?????? typedef enum tagEM_VIDEO_STANDARD { EM_VIDEO_STANDARD_UNKNOWN, EM_VIDEO_STANDARD_PAL, /// "PAL" EM_VIDEO_STANDARD_NTSC, /// "NTSC" EM_VIDEO_STANDARD_SECAM, /// "SECAM" }EM_VIDEO_STANDARD; ///@brief ?????????? typedef struct tagNET_CFG_VIDEOSTANDARD_INFO { DWORD dwSize; /// ??????? EM_VIDEO_STANDARD emVideoStandard; /// ?????? }NET_CFG_VIDEOSTANDARD_INFO; ///@brief NVR????????IPC??????? typedef struct tagNET_CFG_CASCADE_LIGHT_INFO { DWORD dwSize; int nCount; /// ???????? BOOL bEnable[16]; /// ?????? } NET_CFG_CASCADE_LIGHT_INFO; ///@brief ????????????????? typedef struct tagNET_CFG_LE_SMARTTRACK_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????????????? } NET_CFG_LE_SMARTTRACK_INFO; ///@brief ???????????? typedef struct tagNET_CFG_LE_LENS_MASK_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????????????, TRUE:?????, ?????; FALSE:???????? int nValidLastPositionNum; /// ???????????????????????????? BYTE byReserved[4]; /// ?????? double dbLastPosition[3]; /// ???????????????????, ????????????????, ????????????? /// ??????????????????????-1~1;???????????????????????-1~1;????????????????????????0~1?? /// ???????????DH_PTZ_LOCATION_INFO????pan??tilt??zoom,???DH_DEVSTATE_PTZ_LOCATION??????? /// ???????FALSE?,?????????? }NET_CFG_LE_LENS_MASK_INFO; ///@brief ??????? typedef enum tagNET_EM_REGISTER_TYPE { NET_EM_REGISTER_TYPE_UNKNOWN, /// ??? NET_EM_REGISTER_TYPE_LECHENG, /// ????:lecheng NET_EM_REGISTER_TYPE_EASY4IP, /// ????:easy4ip }NET_EM_REGISTER_TYPE; ///@brief ????????????(NET_EM_CFG_VSP_PAAS) typedef struct tagNET_CFG_VSP_PAAS_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????,??????WEB????/?????????? BOOL bOnline; /// ?????????,???????????????????????????????? char szRsServerIP[DH_MAX_IPADDR_EX_LEN]; /// ??????????? int nRsServerPort; /// ??????????? char szSN[DH_DEV_SERIALNO_LEN]; /// ????????? char szCheckCode[DH_DEV_SERIALNO_LEN]; /// ???????? NET_EM_REGISTER_TYPE emType; /// ??????? }NET_CFG_VSP_PAAS_INFO; ///@brief ???????? typedef enum tagNET_EM_FACE_AUTH_MODE { NET_EM_FACE_AUTH_MODE_UNKNOWN = 0, /// ??? NET_EM_FACE_AUTH_MODE_LOCAL, /// ????????? NET_EM_FACE_AUTH_MODE_REMOTE, /// ???????? }NET_EM_FACE_AUTH_MODE; ///@brief ???????? typedef enum tagNET_EM_CARD_AUTH_MODE { NET_EM_CARD_AUTH_MODE_UNKNOWN = 0, /// ??? NET_EM_CARD_AUTH_MODE_LOCAL, /// ????????? NET_EM_CARD_AUTH_MODE_REMOTE, /// ???????? }NET_EM_CARD_AUTH_MODE; ///@brief ?????????? typedef enum tagNET_EM_QR_CODE_AUTH_MODE { NET_EM_QR_CODE_AUTH_MODE_UNKNOWN = 0, /// ??? NET_EM_QR_CODE_AUTH_MODE_LOCAL, /// ????????? NET_EM_QR_CODE_AUTH_MODE_REMOTE, /// ???????? }NET_EM_QR_CODE_AUTH_MODE; ///@brief ???????????? typedef enum tagNET_EM_ALL_AUTH_MODE { NET_EM_ALL_AUTH_MODE_UNKNOWN = 0, /// ??? NET_EM_ALL_AUTH_MODE_DISABLE, /// ?????????????????????????????????? NET_EM_ALL_AUTH_MODE_LOACL, /// ????????? NET_EM_ALL_AUTH_MODE_REMOTE, /// ???????? }NET_EM_ALL_AUTH_MODE; ///@brief ??????????????????,???????????,?????????????????,???????????,???????????? typedef struct tagNET_CFG_ACCESSCTL_AUTH_MODE { DWORD dwSize; /// ??????? NET_EM_FACE_AUTH_MODE emFaceAuthMode; /// ???????? NET_EM_CARD_AUTH_MODE emCardAuthMode; /// ???????? NET_EM_QR_CODE_AUTH_MODE emQRCodeAuthMode; /// ?????????? NET_EM_ALL_AUTH_MODE emAllAuthMode; /// ????????????,?????????????????????????????????????????????????????????????? }NET_CFG_ACCESSCTL_AUTH_MODE; ///@brief LED???????? typedef enum tagNET_EM_LED_COLOR { NET_EM_LED_COLOR_UNKNOWN = 0, /// ??? NET_EM_LED_COLOR_GREEN, /// ??? NET_EM_LED_COLOR_YELLOW, /// ??? NET_EM_LED_COLOR_RED, /// ??? }NET_EM_LED_COLOR; ///@brief LED????????? typedef struct tagNET_CFG_LED_TEXT { DWORD dwSize; /// ??????? char szText[128]; /// ??????? NET_EM_LED_COLOR emColor; /// ?????? }NET_CFG_LED_TEXT; ///@brief LED????????????? typedef struct tagNET_CFG_LED_TEXT_ARRAY { DWORD dwSize; /// ??????? char szText[128]; /// ??????? NET_EM_LED_COLOR emColor; /// ?????? int nHoldTime; /// ???????(??) }NET_CFG_LED_TEXT_ARRAY; ///@brief ??????????? typedef struct tagNET_CFG_DISABLE_LINKAGE { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????????????? }NET_CFG_DISABLE_LINKAGE; ///@brief ???????????????????? typedef struct tagNET_CFG_DISABLE_LINKAGE_TIME_SECTION { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????????????????? DH_TSECT stuTimeSection[DH_N_SCHEDULE_TSECT][DH_N_REC_TSECT]; /// ????????????, ?????7??????????7????8???????????????????6?????? } NET_CFG_DISABLE_LINKAGE_TIME_SECTION; ///@brief ??????????????????????? typedef struct tagNET_CFG_REMOTE_DISABLE_LINKAGE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????????????? }NET_CFG_REMOTE_DISABLE_LINKAGE_INFO; ///@brief ?????????????????"?????????????"????,?????????? NET_EM_CFG_REMOTE_DISABLE_LINKAGE_TIME_SECTION_SYNC typedef struct tagNET_CFG_REMOTE_DISABLE_LINKAGE_TIME_SECTION_SYNC_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????????????"?????????????"????????????? int* pRemoteChannels; /// ?????????????,???????????? DWORD nRemoteChannelsCnt; /// pRemoteChannels??????????????? DWORD nRetRemoteChannelsCnt; /// ????????,????????????????? }NET_CFG_REMOTE_DISABLE_LINKAGE_TIME_SECTION_SYNC_INFO; ///@brief ??????????????????????????? typedef struct tagNET_MATRIX_NETKBDFASTCTRL_ELEMENTS_INFO { int nChannel; /// ??????????????????? char szUserName[64]; /// ????????????????? BYTE byReserved[260]; /// ??????? } NET_MATRIX_NETKBDFASTCTRL_ELEMENTS_INFO; ///@brief ????????????????? typedef struct tagNET_CFG_MATRIX_NETKBDFASTCTRL_INFO { DWORD dwSize; /// ??????? int nMatrixNetKBDFastCtrlInfoNum; /// ???????????????????? NET_MATRIX_NETKBDFASTCTRL_ELEMENTS_INFO stuMatrixNetKBDFastCtrlInfo[128]; /// ????????????????? } NET_CFG_MATRIX_NETKBDFASTCTRL_INFO; ///@brief ????????????? typedef struct tagNET_CFG_VIDEO_CHANNEL_LABEL_INFO { DWORD dwSize; /// ??????? char szSecurityRoomCode[32]; /// ???? char szSecurityRoomName[32]; /// ???? }NET_CFG_VIDEO_CHANNEL_LABEL_INFO; ///@brief ????????????????????? NET_EM_CFG_PRESET_SNAP_PICTURE_NUM typedef struct tagNET_CFG_PRESET_SNAP_PICTURE_NUM { DWORD dwSize; /// ??????? int nNum; /// ?????? }NET_CFG_PRESET_SNAP_PICTURE_NUM; ///@brief ?????????? typedef enum tagEM_ALARM_RULE_TYPE { EM_ALARM_RULE_UNKNOWN = -1, /// ??? EM_ALARM_RULE_NONE, /// ?????? EM_ALARM_RULE_SUCCESS, /// ????????? EM_ALARM_RULE_FAIL, /// ????????? } EM_ALARM_RULE_TYPE; ///@brief ????????????????? typedef struct tagNET_ALARM_OUT_CHANNEL_INFO { EM_ALARM_RULE_TYPE emAlarmRuleType; /// ?????????? int nAlarmOutLatch; /// ??????????, ??????, ????1-300 BYTE byReserved[128]; /// ??????? } NET_ALARM_OUT_CHANNEL_INFO; ///@brief ???????????????????? typedef struct tagNET_FACE_RECOGNITION_ALARM_CHANNEL { char szGroupID[64]; /// ????ID char szGroupName[128]; /// ???????? BOOL bAlarmOutEnable; /// ??????????????????????? UINT nAlarmChannelNum; /// ?????????????????? NET_ALARM_OUT_CHANNEL_INFO stuAlarmChannel[64]; /// ????????????????? BYTE byReserved[256]; /// ??????? } NET_FACE_RECOGNITION_ALARM_CHANNEL; ///@brief ?????????????????????, ?????? NET_EM_CFG_FACE_RECOGNITION_ALARM typedef struct tagNET_FACE_RECOGNITION_ALARM_INFO { DWORD dwSize; /// ??????? UINT nFaceReconChannelNum; /// ????????????????????? NET_FACE_RECOGNITION_ALARM_CHANNEL stuFaceReconChannel[50]; /// ???????????????????? } NET_FACE_RECOGNITION_ALARM_INFO; ///@brief ???????????? typedef enum tagNET_EM_SCREEN_SHOW_CONTENTS { EM_TRAFFIC_LATTICE_SCREEN_UNKNOWN = 0, /// ??? EM_TRAFFIC_LATTICE_SCREEN_PLATENUMBE, /// ???? EM_TRAFFIC_LATTICE_SCREEN_SYSTIME, /// ????? EM_TRAFFIC_LATTICE_SCREEN_PARKTIME, /// ?????? EM_TRAFFIC_LATTICE_SCREEN_MASTEROFCAR, /// ???????? EM_TRAFFIC_LATTICE_SCREEN_USERTYPE, /// ??????? EM_TRAFFIC_LATTICE_SCREEN_REMAINDAY, /// ???????? EM_TRAFFIC_LATTICE_SCREEN_PARKCHARGE, /// ????? EM_TRAFFIC_LATTICE_SCREEN_REMAINSPACE, /// ?????? EM_TRAFFIC_LATTICE_SCREEN_SYSDATE, /// ?????? EM_TRAFFIC_LATTICE_SCREEN_PASSICONCIRCLE, /// ???????????(?????????????) EM_TRAFFIC_LATTICE_SCREEN_PASSICONARROW, /// ???????????(?????????????) EM_TRAFFIC_LATTICE_SCREEN_INTIME, /// ????? EM_TRAFFIC_LATTICE_SCREEN_OUTTIME, /// ??????? EM_TRAFFIC_LATTICE_SCREEN_REMARKS, /// ?????? EM_TRAFFIC_LATTICE_SCREEN_RESOURCE, /// ??????(???????) EM_TRAFFIC_LATTICE_SCREEN_CUSTOM, /// ???????? }NET_EM_SCREEN_SHOW_CONTENTS; ///@brief ???????????? typedef struct tagNET_TRAFFIC_LATTICE_SCREEN_SHOW_CONTENTS { NET_EM_SCREEN_SHOW_CONTENTS emContents; /// ?????????????? BYTE byReserved1[4]; /// ?????? char szCustomStr[32]; /// ??????????emContents? EM_TRAFFIC_LATTICE_SCREEN_CUSTOM ????? BYTE byReserved[32]; /// ??? }NET_TRAFFIC_LATTICE_SCREEN_SHOW_CONTENTS; ///@brief ???????????? typedef struct tagNET_TRAFFIC_LATTICE_SCREEN_SHOW_INFO { NET_TRAFFIC_LATTICE_SCREEN_SHOW_CONTENTS stuContents[64]; /// ???????????? int nContentsNum; /// ????????? BYTE byReserved[1020]; /// ??? }NET_TRAFFIC_LATTICE_SCREEN_SHOW_INFO; ///@brief ??????????? typedef enum tagNET_EM_LATTICE_SCREEN_SHOW_TYPE { EM_LATTICE_SCREEN_SHOW_TYPE_UNKNOWN = -1, /// ??? EM_LATTICE_SCREEN_SHOW_TYPE_WORD_CONTROL, /// ?????????? EM_LATTICE_SCREEN_SHOW_TYPE_TRUSTEESHIP_CONTROL, /// ?????????????????????????? }NET_EM_LATTICE_SCREEN_SHOW_TYPE; ///@brief ??????????? typedef enum tagNET_EM_LATTICE_SCREEN_CONTROL_TYPE { EM_LATTICE_SCREEN_CONTROL_TYPE_UNKNOWN = -1, /// ??? EM_LATTICE_SCREEN_CONTROL_TYPE_CAMERA_CONTROL, /// ??????? EM_LATTICE_SCREEN_CONTROL_TYPE_PLATFORM_CONTROL, /// ?????? }NET_EM_LATTICE_SCREEN_CONTROL_TYPE; ///@brief ?????????????? typedef enum tagNET_EM_LATTICE_SCREEN_BACKGROUND_MODE { NET_EM_LATTICE_SCREEN_BACKGROUND_MODE_UNKNOWN, /// ??? NET_EM_LATTICE_SCREEN_BACKGROUND_MODE_A, /// ???????A NET_EM_LATTICE_SCREEN_BACKGROUND_MODE_B, /// ???????B NET_EM_LATTICE_SCREEN_BACKGROUND_MODE_C, /// ???????C }NET_EM_LATTICE_SCREEN_BACKGROUND_MODE; ///@brief ?????LOGO???? typedef enum tagNET_EM_LATTICE_SCREEN_LOGO_TYPE { NET_EM_LATTICE_SCREEN_LOGO_TYPE_UNKNOWN, /// ??? NET_EM_LATTICE_SCREEN_LOGO_TYPE_STENCIL, /// ???? NET_EM_LATTICE_SCREEN_LOGO_TYPE_PICTURE, /// ?? }NET_EM_LATTICE_SCREEN_LOGO_TYPE; ///@brief ??????LOGO??? typedef struct tagNET_TRAFFIC_LATTICE_SCREEN_LOGO_INFO { NET_EM_LATTICE_SCREEN_LOGO_TYPE emLogoType; /// LOGO???? char szContent[128]; /// emLogoType?????????????????;emLogoType????????????? }NET_TRAFFIC_LATTICE_SCREEN_LOGO_INFO; ///@brief ??????????????????? typedef struct tagNET_TRAFFIC_LATTICE_SCREEN_ALARM_NOTICE_INFO { char szNoHelmet[128]; /// ???????????????? char szNonMotorOverload[128]; /// ????????????????? }NET_TRAFFIC_LATTICE_SCREEN_ALARM_NOTICE_INFO; ///@brief ????????????????, ?????? NET_EM_CFG_TRAFFIC_LATTICE_SCREEN typedef struct tagNET_CFG_TRAFFIC_LATTICE_SCREEN_INFO { DWORD dwSize; /// ??????? int nStatusChangeTime; /// ???????????????????,??10 ~ 60 NET_TRAFFIC_LATTICE_SCREEN_SHOW_INFO stuNormal; /// ????? NET_TRAFFIC_LATTICE_SCREEN_SHOW_INFO stuCarPass; /// ????? NET_EM_LATTICE_SCREEN_SHOW_TYPE emShowType; /// ?????? NET_EM_LATTICE_SCREEN_CONTROL_TYPE emControlType; /// ?????? NET_EM_LATTICE_SCREEN_BACKGROUND_MODE emBackgroundMode; /// ????????? char szPlayList[10][64]; /// ??????????????,????????????????????,?????????????????? int nPlayListNum; /// ??????????? NET_TRAFFIC_LATTICE_SCREEN_LOGO_INFO stuLogoInfo; /// Logo??? NET_TRAFFIC_LATTICE_SCREEN_ALARM_NOTICE_INFO stuAlarmNoticeInfo; /// ????????????? }NET_CFG_TRAFFIC_LATTICE_SCREEN_INFO; #define NET_MAX_PLATEENABLE_NUM 16 /// ???????????????????? #define NET_MAX_BROADCAST_ELEMENT_NUM 64 /// ????????????????? ///@brief ???????????????????? typedef enum tagNET_EM_PLATEENABLE_TYPE { EM_PLATEENABLE_UNKNOWN = 0, /// ?????? EM_PLATEENABLE_TIPS, /// ???????? EM_PLATEENABLE_PLATE, /// ??????? EM_PLATEENABLE_ELEMENT, /// ?????????????? } NET_EM_PLATEENABLE_TYPE; ///@brief ??????????? typedef enum tagNET_EM_VOICE_BROADCAST_ELEMENT_TYPE { EM_VOICE_BROADCAST_ELEMENT_UNKNOWN = 0, /// ??? EM_VOICE_BROADCAST_ELEMENT_PLATENUMBER, /// ??????? EM_VOICE_BROADCAST_ELEMENT_PARKTIME, /// ?????? EM_VOICE_BROADCAST_ELEMENT_PARKCHARGE, /// ?????? EM_VOICE_BROADCAST_ELEMENT_USERTYPE, /// ??????? EM_VOICE_BROADCAST_ELEMENT_REMAINDAY, /// ??????? EM_VOICE_BROADCAST_ELEMENT_INTIME, /// ????? EM_VOICE_BROADCAST_ELEMENT_OUTTIME, /// ??????? EM_VOICE_BROADCAST_ELEMENT_REMARKS, /// ?????? EM_VOICE_BROADCAST_ELEMENT_CUSTOM, /// ?????,???????+???????? }NET_EM_VOICE_BROADCAST_ELEMENT_TYPE; ///@brief ??????? typedef struct tagNET_TRAFFIC_VOICE_BROADCAST_ELEMENT { NET_EM_VOICE_BROADCAST_ELEMENT_TYPE emType; /// ???? BYTE byReserved1[4]; /// ?????? char szPrefix[512]; /// ??????? char szPostfix[512]; /// ???????? BYTE byReserved[1024]; /// ??? }NET_TRAFFIC_VOICE_BROADCAST_ELEMENT; ///@brief ?????????????????? ?????? NET_EM_CFG_TRAFFIC_VOICE_BROADCAST typedef struct tagNET_CFG_TRAFFIC_VOICE_BROADCAST_INFO { DWORD dwSize; /// ??????? int nEnableCount; /// ?????????? NET_EM_PLATEENABLE_TYPE emEnable[NET_MAX_PLATEENABLE_NUM]; /// ?????????????,????? NET_EM_PLATEENABLE_TYPE char szNormalCar[MAX_PATH]; /// ???????????????????,????:???????????"???????.wav" char szTrustCar[MAX_PATH]; /// ????????????????????,????:???????????"???????.wav" char szSuspiciousCar[MAX_PATH]; /// ??????????????????,????:???????????"???????.wav" NET_TRAFFIC_VOICE_BROADCAST_ELEMENT stuElement[NET_MAX_BROADCAST_ELEMENT_NUM]; /// ??????? int nElementNum; /// stuElement????????????? }NET_CFG_TRAFFIC_VOICE_BROADCAST_INFO; ///@brief ??????? typedef enum tagNET_EM_SNAP_SHOT_TYPE { NET_EM_SNAP_SHOT_TYPE_UNKNOWN = 0, /// ??? NET_EM_SNAP_SHOT_TYPE_NEAR, /// ???? NET_EM_SNAP_SHOT_TYPE_MEDIUM, /// ???? NET_EM_SNAP_SHOT_TYPE_FAR, /// ??? NET_EM_SNAP_SHOT_TYPE_FEATURE, /// ???????? }NET_EM_SNAP_SHOT_TYPE; ///@brief ??????? typedef enum tagNET_EM_SNAP_SHOT_INTERVAL_MODE { NET_EM_SNAP_SHOT_INTERVAL_UNKNOWN = 0, /// ??? NET_EM_SNAP_SHOT_INTERVAL_TIME, /// ??????????????????nSingleInterval???? NET_EM_SNAP_SHOT_INTERVAL_FRAMEADAPTSPEED, /// ???????????? NET_EM_SNAP_SHOT_INTERVAL_FRAME, /// ??????? }NET_EM_SNAP_SHOT_INTERVAL_MODE; ///@brief ?????????? typedef struct tagNET_SNAP_SHOT_WITH_RULE_INFO { UINT nRuleId; DWORD dwRuleType; /// ????????????dhnetsdk.h??"??????????????" UINT nSnapShotNum; /// ????????? NET_EM_SNAP_SHOT_TYPE emSnapShotType[MAX_SNAP_SHOT_NUM]; /// ????????????? UINT nSingleInterval[MAX_SNAP_SHOT_NUM]; /// ???????????,?????????????????:5~180 ???10?? ???????(N???????N-1??????):1~3600 ???20 NET_EM_SNAP_SHOT_INTERVAL_MODE emIntervalMode; /// ??????? BYTE byReserved[1024]; /// ??? }NET_SNAP_SHOT_WITH_RULE_INFO; ///@brief ?????? typedef struct tagNET_SCENE_SNAP_SHOT_WITH_RULE2_INFO { UINT nPresetID; /// ????????? UINT nRetSnapShotRuleNum; /// stuSnapShotWithRule????????????? NET_SNAP_SHOT_WITH_RULE_INFO stuSnapShotWithRule[32]; /// ?????????? BYTE byReserved[1024]; /// ??? }NET_SCENE_SNAP_SHOT_WITH_RULE2_INFO; ///@brief ??????????? ?????? NET_EM_CFG_SCENE_SNAP_SHOT_WITH_RULE2 typedef struct tagNET_CFG_SCENE_SNAP_SHOT_WITH_RULE2_INFO { DWORD dwSize; /// ??????? UINT nMaxRuleNum; /// pstuSnapShotWithRule???????????????? UINT nRetRuleNum; /// pstuSnapShotWithRule?????????????????? NET_SCENE_SNAP_SHOT_WITH_RULE2_INFO* pstuSceneSnapShotWithRule; /// ??????,??????????????????????nMaxRuleNum * sizeof(NET_SCENE_SNAP_SHOT_WITH_RULE2_INFO) }NET_CFG_SCENE_SNAP_SHOT_WITH_RULE2_INFO; ///@brief ????????????????????, ?????? NET_EM_CFG_TRAFFIC_PARKING_SNAP_TIMER typedef struct tagNET_CFG_TRAFFIC_PARKING_SNAP_TIMER_INFO { DWORD deSize; /// ??????? BOOL bEnable; /// ?????? UINT nPeriod; /// ???????????????????????5???????????[1,60] } NET_CFG_TRAFFIC_PARKING_SNAP_TIMER_INFO; ///@brief ???????????, ?????? NET_EM_CFG_VEHICLE_INFO typedef struct tagNET_CFG_VEHICLE_INFO { DWORD deSize; /// ??????? char szOrganization[32]; /// ?????????????????? char szVehicleID[32]; /// ??????? } NET_CFG_VEHICLE_INFO; ///@brief ?????????? typedef enum tagEM_VEHICLE_WORK_MODE { EM_VEHICLE_WORK_MODE_UNKNOWN, /// ?????????? EM_VEHICLE_WORK_MODE_INSIDE, /// ???????? EM_VEHICLE_WORK_MODE_OUTSIDE, /// ???????? } EM_VEHICLE_WORK_MODE; ///@brief ??????????????, ?????? NET_EM_CFG_VEHICLE_WORK_MODE typedef struct tagNET_CFG_VEHICLE_WORK_MODE { DWORD dwSize; /// ??????? EM_VEHICLE_WORK_MODE emWorkMode; /// ?????????? } NET_CFG_VEHICLE_WORK_MODE; ///@brief ???????? typedef enum tagNET_EM_DOORBELL_TYPE { NET_EM_DOORBELL_UNKNOWN = -1, /// ??? NET_EM_DOORBELL_UNCONNECTED, /// ???? NET_EM_DOORBELL_MECHANICAL, /// ???? NET_EM_DOORBELL_ELECTRONIC, /// ???? } NET_EM_DOORBELL_TYPE; ///@brief ???????????, ?????? NET_EM_CFG_DOORBELL_EXTERNALDOORBELL typedef struct tagNET_CFG_DOORBELL_EXTERNALDOORBELL { DWORD dwSize; /// ??????? NET_EM_DOORBELL_TYPE emDoorBellType; /// ???????? BOOL bEnable; /// ?????????? }NET_CFG_DOORBELL_EXTERNALDOORBELL; ///@brief ????? typedef enum tagEM_MOUNT_MODE { EM_MOUNT_MODE_UNKNOWN, EM_MOUNT_MODE_INDOOR, /// ???? EM_MOUNT_MODE_OUTDOOR, /// ???? }EM_MOUNT_MODE; ///@brief Wifi??????????, ?????? NET_EM_CFG_WIFI_INSTALL_PARAM typedef struct tagNET_CFG_WIFI_INSTALL_PARAM { DWORD dwSize; /// ??????? char szCountry[4]; /// ????/????, ????ISO3166??Z EM_MOUNT_MODE emMountMode; /// ????? BYTE byReserved[4]; /// ??????, ???????? }NET_CFG_WIFI_INSTALL_PARAM; ///@brief ????????????????? typedef struct tagNET_CFG_KVM_MAIN_NODE_INFO { int nLevel; /// ???,???????????????????????????????????????????????? char szAddress[128]; /// KVM??????IP??? BYTE byReserved[128]; /// ??????? } NET_CFG_KVM_MAIN_NODE_INFO; ///@brief ??????????????????,??????NET_EM_CFG_KVM_MAIN_NODE typedef struct tagNET_CFG_KVM_MAIN_NODE { DWORD dwSize; /// ??????? UINT nMainNodeNum; /// ?????? NET_CFG_KVM_MAIN_NODE_INFO stuMainNodeInfo[1024]; /// ????????????????? } NET_CFG_KVM_MAIN_NODE; ///@brief ??????????? typedef enum tagNET_EM_KVM_HOTKEY_FUNCTION_NAME { EM_KVM_HOTKEY_FUNCTION_NAME_UNKNOWN, /// ??? EM_KVM_HOTKEY_FUNCTION_NAME_SPLITMENU, /// ?????????? EM_KVM_HOTKEY_FUNCTION_NAME_GETMENU, /// ???????? EM_KVM_HOTKEY_FUNCTION_NAME_PUSHMENU, /// ????????? EM_KVM_HOTKEY_FUNCTION_NAME_BASEINFOMENU /// ????????????? }EM_KVM_HOTKEY_FUNCTION_NAME; ///@brief ?????????????????? typedef struct tagNET_CFG_KVM_HOT_KEY_INFO { int nKeyNum; /// ????????? int szKey[3]; /// ??? EM_KVM_HOTKEY_FUNCTION_NAME emFuncName; /// ??????????? BYTE byReserved[128]; /// ??????? }NET_CFG_KVM_HOT_KEY_INFO; ///@brief ???????????????????,??????NET_EM_CFG_KVM_HOT_KEY typedef struct tagNET_CFG_KVM_HOT_KEY { DWORD dwSize; /// ??????? int nHotKeyNum; /// ??????? NET_CFG_KVM_HOT_KEY_INFO stuHotKeyInfo[64]; /// ?????? }NET_CFG_KVM_HOT_KEY; ///@brief ??????????????,???NET_EM_CFG_KM_TRANS_ENCRYPT typedef struct tagNET_CFG_KM_TRANS_ENCRYPT { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????????????? true:????false??????? }NET_CFG_KM_TRANS_ENCRYPT; ///@brief ???????????? typedef struct tagNET_VIDEO_OUTPUT_CHANNEL_INFO { char szName[32]; /// ??????? BYTE byReserved[256]; /// ??????? } NET_VIDEO_OUTPUT_CHANNEL_INFO; ///@brief ??????? typedef struct tagNET_TV_CARD_INFO { BOOL bExist; /// ?????????? int nVideoOutputChannels; /// ????????????? int nVideoOutputChannelsRange[2]; /// ?????????????????? NET_VIDEO_OUTPUT_CHANNEL_INFO stuVideoOutput[24]; /// ???????????? BYTE byReserved[256]; /// ??????? } NET_TV_CARD_INFO; ///@brief ????????????????? typedef enum tagEM_DEVICE_PROTOCOL_TYPE { EM_DEVICE_PROTOCOL_TYPE_UNKNOWN, /// ??? EM_DEVICE_PROTOCOL_TYPE_PRIVATE, /// ??????? } EM_DEVICE_PROTOCOL_TYPE; ///@brief ????????????? typedef struct tagNET_CFG_NET_TV_DEVICE_INFO { char szNodeName[64]; /// ??????? char szUserName[128]; /// ????? char szPassword[128]; /// ???? char szName[32]; /// ???????? char szAddress[40]; /// ???????????? UINT nPort; /// ???? int nCardNum; /// ???????? NET_TV_CARD_INFO stuCardInfo[21]; /// ??????? BOOL bEnable; /// ?????????? EM_DEVICE_PROTOCOL_TYPE emProtocolType; /// ????????????????? BYTE byReserved[252]; /// ??????? } NET_CFG_NET_TV_DEVICE_INFO; ///@brief ??????????????, ??? NET_EM_CFG_NET_TV_DEVICE typedef struct tagNET_CFG_NET_TV_DEVICE { DWORD dwSize; /// ??????? int nDeviceNum; /// ??????? BYTE byReserved[4]; /// ???? int nMaxDeviceNum; /// ?????????? NET_CFG_NET_TV_DEVICE_INFO* pstuNetTvDevice; /// ????????????? } NET_CFG_NET_TV_DEVICE; ///@brief ???????????????, ?????? NET_EM_CFG_SENSOR_MAINTAIN typedef struct tagNET_CFG_SENSOR_MAINTAIN { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????????, ???? DH_TSECT stuTimeSection[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ???????????????????7??????????7????8???????????????????6???????? }NET_CFG_SENSOR_MAINTAIN; ///@brief ??????????????, ?????? NET_EM_CFG_TILT_LIMIT typedef struct tagNET_CFG_TILT_LIMIT { DWORD dwSize; /// ??????? int nUp; /// ???????,????0.1, ??????????10????????[0,900] int nDown; /// ???????,????0.1, ??????????10????????[-900,0] BYTE byReserve[4]; /// ?????????????????? }NET_CFG_TILT_LIMIT; ///@brief ???????????????? ?????? NET_EM_CFG_ACCESS_FACE_RECOGNITION typedef struct tagNET_CFG_ACS_FACE_RECOGNITION_SCHEME { DWORD dwSize; /// ??????? UINT nMode; /// ????????; 0?????????????, 1??????????????, 2????????????????????????? }NET_CFG_ACS_FACE_RECOGNITION_SCHEME; ///@brief ???????????????? typedef struct tagNET_CFG_FORBIDDEN_ADVERT_PLAY_INFO { BOOL bEnable; /// ??????? NET_TIME_EX1 stuBeginTime; /// ??????????? NET_TIME_EX1 stuEndTime; /// ???????????? BYTE reserved[256]; /// ??????? } NET_CFG_FORBIDDEN_ADVERT_PLAY_INFO; ///@brief ????????????? ?????? NET_EM_CFG_FORBIDDEN_ADVERT_PLAY typedef struct tagNET_CFG_FORBIDDEN_ADVERT_PLAY { DWORD dwSize; /// ??????? UINT nAdvertNum; /// ??????????????? NET_CFG_FORBIDDEN_ADVERT_PLAY_INFO stuAdvertInfo[8]; /// ???????????????? } NET_CFG_FORBIDDEN_ADVERT_PLAY; ///@brief ??????????????? ?????? NET_EM_CFG_BGY_CUSTOMERCFG typedef struct tagNET_CFG_BGY_CUSTOMERCFG { DWORD dwSize; /// ??????? EM_PLAY_WITH_MODE emModeType; /// ????? } NET_CFG_BGY_CUSTOMERCFG; ///@brief ??????????????????? typedef struct tagNET_CFG_ACCESSCTL_KEYBINDINGINFOCFG_INFO { char szBindingInfo[128]; /// ?????????? UINT nKey; /// ???????????????0-9 BYTE byReserved[508]; /// ?????? } NET_CFG_ACCESSCTL_KEYBINDINGINFOCFG_INFO; ///@brief ????????????????????? typedef struct tagNET_CFG_ACCESSCTL_KEYBINDINGINFOCFG { DWORD dwSize; /// ??????? UINT nKeyNum; /// ???????? NET_CFG_ACCESSCTL_KEYBINDINGINFOCFG_INFO stuKeyBindingInfo[10]; /// ??????????????????? } NET_CFG_ACCESSCTL_KEYBINDINGINFOCFG; ///@brief ???????????????????? typedef struct tagNET_CFG_HOST_DEVICE { DWORD dwSize; /// ??????? UINT nMode; /// ???????????: 0-???? 1-???? BOOL bHostEnable; /// ????????????????????? char szHostIP[40]; /// ?????????IP }NET_CFG_HOST_DEVICE; ///@brief ????????????? typedef enum tagEM_COMPOSIT_CHANNEL_BIND_MODE { EM_COMPOSIT_CHANNEL_BIND_MODE_UNKNOWN, /// ??? EM_COMPOSIT_CHANNEL_BIND_MODE_AUTOMATIC, /// ??? EM_COMPOSIT_CHANNEL_BIND_MODE_SEMIAUTOMATIC, /// ????? EM_COMPOSIT_CHANNEL_BIND_MODE_MANUAL, /// ??? } EM_COMPOSIT_CHANNEL_BIND_MODE; ///@brief ??????? typedef enum tagEM_CAN_START_STREAM { EM_CAN_START_STREAM_UNKNOWN = -1, /// ??? EM_CAN_START_STREAM_OFF, /// ?????? EM_CAN_START_STREAM_ON, /// ???? } EM_CAN_START_STREAM; ///@brief ?????? typedef enum tagEM_IS_RECORD { EM_IS_RECORD_UNKNOWN, /// ??? EM_IS_RECORD_ON, /// ??? EM_IS_RECORD_OFF, /// ????? } EM_IS_RECORD; ///@brief ?????????? typedef struct tagNET_CFG_COURSE_RECORD_DEFAULT_CONFIG { DWORD dwSize; /// ??????? UINT nCompositChannelMode; /// ???????????; 0: ????, 1: ?????, 2: ?????, 3: ?????, ????0: ??????? int nCanStartStreamNum; /// ??????????????? int nIsRecordNum; /// ????????????????? EM_CAN_START_STREAM emCanStartStream[64]; /// ??????? EM_IS_RECORD emIsRecord[64]; /// ??????? EM_COMPOSIT_CHANNEL_BIND_MODE emCompositChannelBindMode; /// ????????????? BYTE byReserved[4]; /// ??????? }NET_CFG_COURSE_RECORD_DEFAULT_CONFIG; ///@brief ?????????? typedef enum tagEM_COURSE_RECORD_UPLOAD_TYPE { EM_COURSE_RECORD_UPLOAD_TYPE_TIMING, /// ??? EM_COURSE_RECORD_UPLOAD_TYPE_IMMEDIATE, /// ??? } EM_COURSE_RECORD_UPLOAD_TYPE; ///@brief ??????????? typedef struct tagNET_COURSE_RECORD_UPLOAD_METHOD { EM_COURSE_RECORD_UPLOAD_TYPE emUploadType; /// ?????????? NET_TIME_EX1 stuUploadTime; /// ??????, ?????????, ???????????? UINT nFilePiece; /// ?????????????: MB(0????????) UINT nFileMode; /// ????????????,????: MB,??????500,??????500MB???????????(0??????????,??????????) int nUploadValidTime; /// ????????????,-1???????????,????0??????????????????,????0??????????? NET_TIME_EX1 stuUploadEndTime; /// ??????????, ???????????????????????? BYTE byReserved[1012]; /// ??????? } NET_COURSE_RECORD_UPLOAD_METHOD; ///@brief ???????????? typedef enum tagEM_COURSE_RECORD_UPLOAD_PATH_DEVICE_TYPE { EM_COURSE_RECORD_UPLOAD_PATH_DEVICE_TYPE_COLONY, /// ??? EM_COURSE_RECORD_UPLOAD_PATH_DEVICE_TYPE_STANDALONE, /// ???? } EM_COURSE_RECORD_UPLOAD_PATH_DEVICE_TYPE; ///@brief ????????????? typedef struct tagNET_COURSE_RECORD_UPLOAD_PATH { EM_COURSE_RECORD_UPLOAD_PATH_DEVICE_TYPE emDeviceType; /// ???????????? int nDevicePathNum; /// ?????????? char szDevicePath[16][256]; /// ?????????? BYTE byReserved[1024]; /// ??????? } NET_COURSE_RECORD_UPLOAD_PATH; ///@brief ??????? typedef enum tagEM_ENCRY_TYPE { EM_ENCRY_TYPE_RSA, /// RSA EM_ENCRY_TYPE_MD5, /// MD5 } EM_ENCRY_TYPE; ///@brief ???????????? typedef struct tagNET_COURSE_RECORD_UPLOAD_TOKEN { BOOL bTokenCheck; /// ????????? int nTokenPathNum; /// ???Token??????? char szTokenPath[16][256]; /// ???Token???, ?????????? char szPlatformFlag[64]; /// ????????????? char szUserName[32]; /// ??????????????????? char szEncryptUri[256]; /// ????????????? char szAccessUri[256]; /// ???token??????? EM_ENCRY_TYPE emEncryType; /// ??????? BYTE byReserved[1020]; /// ??????? } NET_COURSE_RECORD_UPLOAD_TOKEN; ///@brief ????????? typedef enum tagEM_RECORD_FILE_TYPE { EM_RECORD_FILE_TYPE_UNKNOWN, /// ??? EM_RECORD_FILE_TYPE_MP4, /// mp4 EM_RECORD_FILE_TYPE_DAV, /// dav } EM_RECORD_FILE_TYPE; ///@brief ?????????????????????? typedef struct tagNET_CFG_COURSE_RECORD_UPLOAD { DWORD dwSize; /// ??????? EM_RECORD_FILE_TYPE emFileType; /// ???????????? NET_COURSE_RECORD_UPLOAD_METHOD stuUploadMethod; /// ??????????? NET_COURSE_RECORD_UPLOAD_PATH stuUploadPath; /// ????????????? NET_COURSE_RECORD_UPLOAD_TOKEN stuUploadToken; /// ???????????? }NET_CFG_COURSE_RECORD_UPLOAD; ///@brief ??????? typedef enum tagEM_SUB_MODE { EM_SUB_UNKNOWN = -1, /// ??? EM_SUB_NORECORD, /// ????? EM_SUB_NORMAL_COTINUE_RECORD, /// ?????????? EM_SUB_EVENT_TRIGGER_RECORD, /// ?????????? EM_SUB_PLAN_REGULAR_RECORD, /// ????????? EM_SUB_EVENT_TRIGGER_AND_PLAN_REGULAR_RECORD, /// ??????????????????? }EM_SUB_MODE; ///@brief IVSS?????????????????????????StorageScheduleGlobal??????????(NET_EM_CFG_COURSE_RECORD_EX) typedef struct tagNET_CFG_COURSE_RECORD_EX { DWORD dwSize; /// ??????? BOOL bIsGlobal; /// ??????????????????(StorageScheduleGlobal)??true????????false???????? UINT nPreRecord; /// ???????????????,?????????RocordEX?????MaxPreRecordTime,?????? BOOL bEnable; /// ?????????????????,???????Record??????????? UINT nMaxRecordTime; /// ??????????????????????????????? ????????????????????????????????????????????,???????? UINT nRecordLatch; /// ?????????????????????[1,300] EM_SUB_MODE emSubMode; /// ??????? UINT nTimeSectionID; /// ??????????????ID UINT nManulRecordLength; /// ???????????,???????????[1,30] UINT nFileHoldTime; /// ??????????????????????????????????0~365???????????0???????????? }NET_CFG_COURSE_RECORD_EX; ///@brief ?????????????? typedef struct tagNET_CFG_LIFTCONTROL_OPTION { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????TRUE??????FALSE??????? }NET_CFG_LIFTCONTROL_OPTION; ///@brief ????????? typedef struct tagNET_CFG_HEALTH_CODE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????TRUE??????FALSE??????? BOOL bOfflineEnable; /// ??????????????TRUE??????FALSE??????? BOOL bCheckHealthCode; /// ????g????????? BOOL bHSVisible; /// ?????????? BOOL bHSCheckEnable; /// ???????????? UINT nHSTimeout; /// ????????????(???) 0 ???????? UINT nHSCollectTimeout; /// ????????????(???) 0 ???????? BOOL bVaccineVisible; /// ?????????? BOOL bVaccineCheckEnable; /// ??????????? BOOL bTravelCodeVisible; /// ???????????? BOOL bTravelCodeCheck; /// ????????????? BOOL bVaccineIntensifyVisible; /// ?????????? UINT nOFFLineGreenCodeMethod; /// ?????????????? 0:??????? 1:???????????? 2:???????????????????????????? UINT nCodeFlushTimeout; /// ???????????(??) UINT nHealthQueryTimeout; /// ??????????????(??); ???2?? BOOL bRedPermit; /// ???????????? BOOL bYellowPermit; /// ???????????? BOOL bQueryTimeoutPermit; /// ???????????????????? }NET_CFG_HEALTH_CODE_INFO; ///@brief ??????? typedef enum tagEM_RELAY_STATE_TYPE { EM_RELAY_STATE_TYPE_UNKNOWN = -1, /// ??? EM_RELAY_STATE_TYPE_CLOSE, /// ?? EM_RELAY_STATE_TYPE_OPEN, /// ?? EM_RELAY_STATE_TYPE_NO_SUPPORT = 255, /// ????? }EM_RELAY_STATE_TYPE; ///@brief ???????????(NET_EM_CFG_RELAY_STATE) typedef struct tagNET_CFG_RELAY_STATE_INFO { DWORD dwSize; /// ??????? int nAddress; /// ???????? EM_RELAY_STATE_TYPE emState; /// ??????? BYTE byReserved[4]; /// ?????? }NET_CFG_RELAY_STATE_INFO; ///@brief OSD ??????????? typedef struct tagNET_CFG_OSD_PLAN_VIDEOWIDGET_INFO { char szChannelTitle[256]; /// ??????? BYTE byReserved[1024]; /// ?????? }NET_CFG_OSD_PLAN_VIDEOWIDGET_INFO; ///@brief OSD ??????????????? typedef struct tagNET_CFG_OSD_PLAN_INFO { BOOL bIsUsed; /// ??????? NET_TIME stuTime; /// ??????????? char szName[32]; /// ???????? int nValidVideoWidget; /// ???????????????stuVideoWidgets???? NET_CFG_OSD_PLAN_VIDEOWIDGET_INFO stuVideoWidgets[512]; /// ???????, ???????????????, ??????512????? BYTE byReserved[1024]; /// ?????? }NET_CFG_OSD_PLAN_INFO; ///@brief OSD ??????????? ?????? NET_EM_CFG_OSD_PLAN typedef struct tagNET_CFG_OSD_PLANS_INFO { DWORD dwSize; /// ??????? int nMaxPlanNum; /// ?????????????????????????? int nRetPlanNum; /// ???????????????????? NET_CFG_OSD_PLAN_INFO *pstuPlansInfo; /// ???????, ??????????????? }NET_CFG_OSD_PLANS_INFO; ///@brief ????????????????????, ?????? NET_EM_CFG_ENVIRONMENT_DETECT typedef struct tagNET_CFG_ENVIRONMENT_DETECT_INFO { DWORD dwSize; /// ??????? int nTemperature; /// ????????????????? int nHumidity; /// ?????????????% int nPM25; /// PM2.5????????? ?????????? }NET_CFG_ENVIRONMENT_DETECT_INFO; ///@brief ???????????????????????????????????? ?????? NET_EM_CFG_AC_GZYD typedef struct tagNET_CFG_AC_GZYD_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??? UINT nInterval; /// ????? UINT nQRLastTime; /// ???????????? char szUrl0[256]; /// ????????????? char szUrl1[256]; /// ??????????????? char szDeviceID[32]; /// ?????? char szQRCONTENT[256]; /// ????????? char szReserved[1024]; /// ?????? }NET_CFG_AC_GZYD_INFO; ///@brief ?????????cpu????ic?????????? ?????? NET_EM_CFG_CARD_MNG typedef struct tagNET_CFG_CARD_MNG_INFO { DWORD dwSize; /// ??????? UINT nType; /// CPU?? = 1, IC?? = 2, char szReserved[1024]; /// ?????? }NET_CFG_CARD_MNG_INFO; ///@brief ?????? typedef enum tagEM_WORK_MODE { EM_WORK_MODE_UNKNOWN = -1, /// ??? EM_WORK_MODE_ENERGY_CONSERVATION, /// ?????? EM_WORK_MODE_ORDINARY, /// ????? EM_WORK_MODE_ULTRA, /// Ultra?? EM_WORK_MODE_CUSTOM, /// ??????? EM_WORK_MODE_CONTINUOUS_RECORDING, /// ????????? EM_WORK_MODE_VLOG, /// Vlog????? }EM_WORK_MODE; ///@brief ??????????? typedef struct tagNET_WORK_PARAM { UINT nPirRecordTime; /// pir??????,0?????????,??????[10,60]?? UINT nPirPeriod; /// pir?????????,??????[0,60]?? char szResolution[16]; /// ????????? int nWhiteLight; /// ??????????0:?????? 1:???? char szReserved[128]; /// ?????? }NET_WORK_PARAM; ///@brief ?????? typedef struct tagNET_WORK_MODE { EM_WORK_MODE emMode; /// ?????? NET_WORK_PARAM stuModeParam; /// ??????????? char szReserved[128]; /// ?????? }NET_WORK_MODE; ///@brief IPC????APP????????? ?????? NET_EM_CFG_WORK_MODE typedef struct tagNET_CFG_WORK_MODE_INFO { DWORD dwSize; /// ??????? int nWorkModeNum; /// ?????????? NET_WORK_MODE stuWorkMode[16]; /// ?????? ???????????? }NET_CFG_WORK_MODE_INFO; ///@brief ???USB????????? ??????NET_EM_CFG_USB_FLASH typedef struct tagNET_CFG_USB_FLASH { DWORD dwSize; /// ??????? BOOL bDetectEnable; ///?????????USB Flash, TRUE:????FALSE:????? }NET_CFG_USB_FLASH; ///@brief ?????????????????????? ??????NET_EM_CFG_DISPLAY_CONNECT typedef struct tagNET_CFG_DISPLAY_CONNECT { DWORD dwSize; /// ??????? int nHdmiStatusSize; /// ????HDMI???? BOOL bHdmiStatus[8]; /// ??????????HDMI?? TRUE:????????FALSE:?????? }NET_CFG_DISPLAY_CONNECT; ///@brief ??????? typedef struct tagNET_REGULATOR_INFO { UINT nDistance; /// ????????, ????cm UINT nTemperature; /// ???????, ????0.1, ???10?? NET_RECT stRect; /// ??????????????[0,8191] UINT nHeight; /// ???????, ????cm int nDiffTemperature; /// ???????, ????0.01, ???100?? int nEmissivity; /// ??????????????0.01?????100????????50-100 int nBlackBodyCorrectTemp; /// ????????????????0.1?????10?? BYTE byReserve[24]; /// ?????????????????? } NET_REGULATOR_INFO; ///@brief ??????????????????, ?????? NET_EM_CFG_RADIO_REGULATOR typedef struct tagNET_CFG_RADIO_REGULATOR { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????????? UINT nPresetId; /// ??????, ??????????????0 UINT nCamerHeight; /// ??????????????, ????cm int nCamerAngle; /// ?????????, ????0.1, ???10?? NET_REGULATOR_INFO stRegulatorInfo; /// ??????? } NET_CFG_RADIO_REGULATOR; ///@brief ????????????,?????? NET_EM_CFG_HUMAN_THERM_CALIBRATE typedef struct tagNET_CFG_HUMAN_THERM_CALIBRATE_INFO { DWORD dwSize; /// ??????? int nThermBoxHeight; /// ????????????????????????1~100 int nThermBoxWidth; /// ????????????????????????1~100 int nThermCenterX; /// ?????????????x????????-1024~1024 int nThermCenterY; /// ?????????????y????????-1024~1024 }NET_CFG_HUMAN_THERM_CALLBRATE_INFO; ///@brief ??????? typedef enum tagEM_SWITCH_CONTROL_TYPE { EM_SWITCH_CONTROL_TYPE_UNKNOWN = -1, /// ??? EM_SWITCH_CONTROL_TYPE_OFF, /// ?? EM_SWITCH_CONTROL_TYPE_ON, /// ?? }EM_SWITCH_CONTROL_TYPE; ///@brief ????? typedef enum tagEM_RANGE_MODE { EM_RANGE_MODE_UNKNOWN=-1, /// ??? EM_RANGE_MODE_WOLF, /// ?? EM_RANGE_MODE_RABBIT, /// ?? EM_RANGE_MODE_PEOPLE, /// ?? EM_RANGE_MODE_OTHER, /// ????? EM_RANGE_MODE_BOAR, /// ??? EM_RANGE_MODE_DEER, /// ? EM_RANGE_MODE_BEAR, /// ?? }EM_RANGE_MODE; ///@brief ??????????? typedef enum tagEM_TARGET_DETECT_SENSITIVITY { EM_TARGET_DETECT_SENSITIVITY_UNKNOWN = -1, /// ??? EM_TARGET_DETECT_SENSITIVITY_OFF, /// ?? EM_TARGET_DETECT_SENSITIVITY_LOW, /// ?? EM_TARGET_DETECT_SENSITIVITY_MEDIUM, /// ?? EM_TARGET_DETECT_SENSITIVITY_HIGH, /// ?? }EM_TARGET_DETECT_SENSITIVITY; ///@brief ?????? typedef enum tagEM_SCENE_MODE { EM_SCENE_MODE_UNKNOWN = -1, /// ??? EM_SCENE_MODE_LOW, /// ?? EM_SCENE_MODE_HIGH, /// ?? EM_SCENE_MODE_SELF_ADAPTION, /// ????? }EM_SCENE_MODE; ///@brief ??????????? typedef enum tagEM_SCREEN_SWITCH_TYPE { EM_SCREEN_SWITCH_TYPE_UNKNOWN = -1, /// ??? EM_SCREEN_SWITCH_TYPE_LCOS, /// LCOS????????? EM_SCREEN_SWITCH_TYPE_P, /// P??????? EM_SCREEN_SWITCH_TYPE_N, /// N??????? }EM_SCREEN_SWITCH_TYPE; ///@brief ?????? typedef enum tagEM_RANGE_UNIT { EM_RANGE_UNIT_UNKOWN=-1, /// ??? EM_RANGE_UNIT_METER, /// ?? EM_RANGE_UNIT_FOOT, /// ??? }EM_RANGE_UNIT; ///@brief ?????? typedef enum tagEM_SCENE_STYLE { EM_SCENE_STYLE_UNKOWN=-1, /// ??? EM_SCENE_STYLE_STANDARD, /// ????? EM_SCENE_STYLE_JUNGLE, /// ?????? }EM_SCENE_STYLE; ///@brief ??????? typedef enum tagEM_CURSOR_TYPE { EM_CURSOR_TYPE_UNKOWN=-1, /// ??? EM_CURSOR_TYPE_0, /// ????0 EM_CURSOR_TYPE_1, /// ????1 EM_CURSOR_TYPE_2, /// ????2 EM_CURSOR_TYPE_3, /// ????3 EM_CURSOR_TYPE_4, /// ????4 EM_CURSOR_TYPE_5, /// ????5 EM_CURSOR_TYPE_6, /// ????6 EM_CURSOR_TYPE_7, /// ????7 EM_CURSOR_TYPE_8, /// ????8 EM_CURSOR_TYPE_9, /// ????9 EM_CURSOR_TYPE_10, /// ????10 EM_CURSOR_TYPE_11, /// ????11 }EM_CURSOR_TYPE; ///@brief ???????? typedef enum tagEM_CURSOR_SCHEME { EM_CURSOR_SCHEME_UNKOWN=-1, /// ??? EM_CURSOR_SCHEME_0, /// ??????0 EM_CURSOR_SCHEME_1, /// ??????1 EM_CURSOR_SCHEME_2, /// ??????2 EM_CURSOR_SCHEME_3, /// ??????3 EM_CURSOR_SCHEME_4, /// ??????4 EM_CURSOR_SCHEME_5, /// ??????5 }EM_CURSOR_SCHEME; ///@brief ???????? typedef enum tagEM_DISTANCE_SCHEME { EM_DISTANCE_SCHEME_UNKOWN=-1, /// ??? EM_DISTANCE_SCHEME_0, /// ??????0 EM_DISTANCE_SCHEME_1, /// ??????1 EM_DISTANCE_SCHEME_2, /// ??????2 EM_DISTANCE_SCHEME_3, /// ??????3 EM_DISTANCE_SCHEME_4, /// ??????4 EM_DISTANCE_SCHEME_5, /// ??????5 }EM_DISTANCE_SCHEME; ///@brief ?????????????????? NET_EM_CFG_TELESCOPE_OPTIONS typedef struct tagNET_CFG_TELESCOPE_OPTIONS_INFO { DWORD dwSize; /// ??????? BOOL bLaserCtrl; /// ?????????? TRUE:??; FALSE:??) BOOL bRangeCtrl; /// ???????? TRUE:??; FALSE:??) EM_RANGE_MODE emRangeMode; /// ????? BOOL bOsdSet; /// OSD????.???/????(TRUE:???;FALSE:????) EM_TARGET_DETECT_SENSITIVITY emTargetChk; /// ????? EM_TARGET_DETECT_SENSITIVITY emFireChk; /// ????? EM_SCENE_MODE emSceneMode; /// ?????????? int nAutoShutdown; /// ????????? ????:????(0:?????????????) int nAutoSleep; /// ?????????? ????:????(0:?????????????) EM_SCREEN_SWITCH_TYPE emScreenSwitch; /// ??????????? BOOL bWIFICtrl; /// WIFI????:(TRUE:??;FALSE:??) EM_SWITCH_CONTROL_TYPE emHotColdPoint; /// ???????????? EM_RANGE_UNIT emRangeUnit; /// ?????? EM_SWITCH_CONTROL_TYPE emBuzzerCtrl; /// ?????????? int nCustomHeight; /// ????????????????(0.1~999.9??/???),??10????(1~9999). BOOL bLogoShow; /// LOGO???????: (true: ON; false:OFF) BOOL bAutoRecord; /// ???????(????????????????????????):(true: ON; false:OFF) EM_SCENE_STYLE emSceneStyle; /// ?????? EM_CURSOR_TYPE emCursorStyle; /// ??????? EM_CURSOR_SCHEME emCursorScheme; /// ???????? EM_DISTANCE_SCHEME emDistanceScheme; /// ???????? UINT nCalibrateDistance; /// ??????????: 100-99999cm ????:???? UINT nCalibrateOffset[2]; /// ?????????, ???????????, ?????????????x????; ?????????????y????; char szApPassword[128]; /// ???????????????????? BOOL bCursorCtrl; /// ?????????? BOOL bPicInPicCtrl; /// ???????????? BYTE byScreenBright; /// ????????1-100????? }NET_CFG_TELESCOPE_OPTIONS_INFO; ///@brief ??????????????(????????????,????,??????),???????? NET_EM_CFG_ENVIRONMENT_THERM_INFO typedef struct tagNET_CFG_ENVIRONMENT_THERM_INFO { DWORD dwSize; /// ??????? int nEnvironmentTemp; /// ???????,????0.01,????????100??,????,?????? NET_TIME stuLastEnvSaveTime; /// ?????????????????????,????,?????? UINT nEnvSaveCnt; /// ??????????????,????,?????? BYTE byReserved[4]; /// ?????? }NET_CFG_ENVIRONMENT_THERM_INFO; ///@brief ??????????????????????????? typedef struct tagTHERMOMETRY_SHIELD_INFO { BOOL bEnable; /// ???????, TRUE????, FALSE??? int nShieldId; /// ????????? char szName[64]; /// ????????? NET_RECT stuRect; /// ????????? int nPresetId; /// ?????? char szReserved[128]; /// ?????? }THERMOMETRY_SHIELD_INFO; ///@brief ???????????????????????? typedef struct tagNET_CFG_THERMOMETRY_SHIELD_INFO { DWORD dwSize; /// ???????, ?????? UINT nRealInfoNumOfEachChennel; /// 1 ??????????????????????????????????????? /// 2 ??????????????????????? THERMOMETRY_SHIELD_INFO stuThermometryShieldInfo[12]; /// ??????????????????????????????????????12???????? }NET_CFG_THERMOMETRY_SHIELD_INFO; ///@brief ?????????? typedef enum tagEM_EAS_LED_COLOR { EM_EAS_LED_COLOR_UNKOWN, /// ??? EM_EAS_LED_COLOR_WHITE=1, /// ??? EM_EAS_LED_COLOR_BLUE, /// ??? EM_EAS_LED_COLOR_GREEN, /// ??? EM_EAS_LED_COLOR_PURPLE, /// ??? EM_EAS_LED_COLOR_PINK, /// ??? }EM_EAS_LED_COLOR; ///@brief ????????????? typedef struct tagNET_EAS_ALARM_PARAMETER { UINT nSnr; /// ??????0~50 UINT nAmp; /// ?????0~300 UINT nStd; /// ??????0~1500 UINT nRms; /// ???????0~1500 UINT nNum; /// ???????????????1~10???????????????Num???????????????????????? char szReserved[60]; /// ?????? }NET_EAS_ALARM_PARAMETER; ///@brief EAS??????????, ?????????? NET_EM_CFG_EAS_SYSTEM_CONFIG typedef struct tagNET_CFG_EAS_SYSTEM_CONFIG_INFO { DWORD dwSize; /// ???????, ?????? UINT nLabelResident; /// ?????????????????0 -- ??? 1-- ???? UINT nInterfere; /// ??????????????????0-- ??? 1-- ???? UINT nAlarmMode; /// ?????? 0 -- ??????1, 1 -- ??????2 ?????????1??????AlarmThreshold??? ,??????2??????AlarmParameter??? EM_EAS_LED_COLOR emLedColor; /// ?????????? int nAlarmThresholdNum; /// ???????????????????? UINT nAlarmThreshold[64]; /// ????????????????????0~5, ???0 ?C ??????0, ???1 ?C ??????1,??????? int nAlarmParameterNum; /// ???????????????????????????? NET_EAS_ALARM_PARAMETER stuAlarmParameter[64]; /// ????????????? int nSignalGainNum; /// ?????????? int nSignalGain[64]; /// ???????, ??????0~6 int nTxPower; /// ???????, -1:???, 0:??, 1:??, 2:?? }NET_CFG_EAS_SYSTEM_CONFIG_INFO; ///@brief EAS??????????, ?????????? NET_EM_CFG_EAS_COIL_SWITH typedef struct tagNET_CFG_EAS_COIL_SWITH_INFO { DWORD dwSize; /// ???????, ?????? int nTransmitCoilEnableNum; /// ????????????????????????????? UINT nTransmitCoilEnable[64]; /// ??????????????, ???0 ?C ??????0, ???1 ?C ??????1, ???2 ?C ??????2,->???????, ??????0 -- ??? 1 -- ???? int nReceiverCoilEnableNum; /// ????????????????????????????? UINT nReceiverCoilEnable[64]; /// ??????????????, ???0 ?C ??????0, ???1 ?C ??????1, ???2 ?C ??????2,->???????, ??????0 -- ??? 1 -- ???? }NET_CFG_EAS_COIL_SWITH_INFO; ///@brief ????????????????????????, ?????????? NET_EM_CFG_EAS_ECO_MODE_SETTING typedef struct tagNET_CFG_EAS_ECO_MODE_SETTING_INFO { DWORD dwSize; /// ???????, ?????? UINT nEnable; /// ???????????, ??1???? char szTimeSection[3][20]; /// ??????????????????"??? ?:??:??-?:??:??"????????????????????????????????1???????????????0????????????????????????????????????????????????????????????24:00:00?????????????? /// ?????["1 00:00:00-08:00:00", "1 10:00:00-24:00:00"] UINT nWeekEnable[7]; /// ????????????????????????0-6???????-?????? }NET_CFG_EAS_ECO_MODE_SETTING_INFO; ///@brief EAS???????????????, ?????????? NET_EM_CFG_EAS_NOISE_COLLECT_MODE typedef struct tagNET_CFG_EAS_NOISE_COLLECT_MODE { DWORD dwSize; /// ???????, ?????? int nMode; /// ????????, -1:???, 0:???, 1:??? }NET_CFG_EAS_NOISE_COLLECT_MODE; ///@brief ????????RTMP??? typedef struct tagNET_CHANNEL_RTMP_INFO { BOOL bEnable; /// ?????? UINT nChannel; /// ??????URL????Channel?? char szUrl[512]; /// RTMP????URL BYTE byReserved[1024]; /// ?????? }NET_CHANNEL_RTMP_INFO; ///@brief RTMP ???? typedef struct tagNET_CFG_RTMP_INFO { DWORD dwSize; /// ?????????????sizeof(NET_CFG_RTMP_INFO) BOOL bEnable; /// RTMP????????? char szAddr[256]; /// RTMP????????? UINT nPort; /// RTMP????????? BYTE byReserved[4]; /// ?????? char szCustomPath[256]; /// ?????? char szStreamPath[256]; /// ??????????:?????????????????? char szKey[128]; /// ???RTMP??????Key NET_CHANNEL_RTMP_INFO* pstuMainStream; /// ????????????????????????????? sizeof(NET_CHANNEL_RTMP_INFO) * nMainStream UINT nMainStream; /// pstuMainStream ???? UINT nMainStreamRet; /// ????? pstuMainStream ???????????????????? NET_CHANNEL_RTMP_INFO* pstuExtra1Stream; /// ??????1??????????????????????? sizeof(NET_CHANNEL_RTMP_INFO) * nExtra1Stream UINT nExtra1Stream; /// pstuExtra1Stream ???? UINT nExtra1StreamRet; /// ????? nExtra1StreamRet ???????????????????? NET_CHANNEL_RTMP_INFO* pstuExtra2Stream; /// ??????2??????????????????????? sizeof(NET_CHANNEL_RTMP_INFO) * nExtra2Stream UINT nExtra2Stream; /// pstuExtra2Stream ???? UINT nExtra2StreamRet; /// ????? nExtra2StreamRet ???????????????????? }NET_CFG_RTMP_INFO; ///@brief ???????????? typedef enum tagEM_HUMAN_THERMOMETRY_COMPENSATE_MODE { EM_HUMAN_THERMOMETRY_COMPENSATE_MODE_UNKNOWN = 0, /// ??? EM_HUMAN_THERMOMETRY_COMPENSATE_MODE_FOREHEAD, /// ?????? EM_HUMAN_THERMOMETRY_COMPENSATE_MODE_MERCURY, /// ????? }EM_HUMAN_THERMOMETRY_COMPENSATE_MODE; ///@brief ?????????????? typedef struct tagNET_CFG_HUMAN_THERMOMETRY_COMPENSATE_INFO { DWORD dwSize; /// ?????????????sizeof(NET_CFG_HUMAN_THERMOMETRY_COMPENSATE_INFO) EM_HUMAN_THERMOMETRY_COMPENSATE_MODE emCompensateMode; /// ?????? int nHumanCorrectTemp; /// ???????????, ????0.01??????????100?? int nBasicnCorrectTemp; /// ??????????, ????0.01??????????100?? }NET_CFG_HUMAN_THERMOMETRY_COMPENSATE_INFO; ///@brief ???????????????? typedef struct tagNET_CFG_DEBUGINFO_REDIR_INFO { DWORD dwSize; /// ?????????????sizeof(NET_CFG_DEBUGINFO_REDIR_INFO) BOOL bEnable; /// ??????????? UINT nPrintLevel; /// ?????? (0-no printlevel, 1-fatal, 2-error, 3-warn, 4-info, 5-trace, 6-debug) BOOL bSaveCaptureInDiskEnable; /// ??????????????????????? UINT nMaxDiskFileSize; /// SD??,USB???????????????????????kb UINT nSerialPortLogLevel; /// ??????????????(0:???; 1:??????????; 2:?????????; 3:??????; 4:?????; 5:?????????1,???????????,?????????; 6:?????????2,?????????; 7:?????????3,??????????; 8:??????,???????) UINT nSerialPortLogType; /// ???????????????, 0: ?????, 1:?????+????????? int nRedirStatus; /// ??????????: 0:???, 1:????????, 2:????????????, 3:???????????? }NET_CFG_DEBUGINFO_REDIR_INFO; ///@brief NVR ??????????? typedef struct tagNET_CFG_LOCAL_HEAT_IMAGE_THERMOMETRY_INFO { DWORD dwSize; /// ?????????????sizeof(NET_CFG_LOCAL_HEAT_IMAGE_THERMOMETRY_INFO) EM_TEMPERATURE_UNIT emTemperatureUnit; /// ????????EM_TEMPERATURE_CENTIGRADE ?? EM_TEMPERATURE_FAHRENHEIT ???? }NET_CFG_LOCAL_HEAT_IMAGE_THERMOMETRY_INFO; ///@brief ??????????? typedef enum tagEM_TEMP_MEASURE_TYPE { EM_TEMP_MEASURE_TYPE_UNKNOWN, /// ??? EM_TEMP_MEASURE_TYPE_INFRARED, /// ???????????? EM_TEMP_MEASURE_TYPE_THERMAL_IMAGE, /// ???????? EM_TEMP_MEASURE_TYPE_GUIDE_MODULE, /// ???????????? EM_TEMP_MEASURE_TYPE_WRIST, /// ??????????? }EM_TEMP_MEASURE_TYPE; ///@brief ?????????????? typedef enum tagEM_MASK_DETECT_MODE { EM_MASK_DETECT_MODE_UNKNOWN, /// ??? EM_MASK_DETECT_MODE_NO_DETECTION, /// ???????? EM_MASK_DETECT_MODE_REMIND, /// ?????????? EM_MASK_DETECT_MODE_INTERCEPT, /// ?????????? }EM_MASK_DETECT_MODE; ///@brief ?????????????????? typedef struct tagNET_INFRARED_MEASURE_MODE_PARAM { int nMaxDistance; /// ??????????????: cm int nRetentionTime; /// ?????????????ms?? ???????????????????????????????????????? double dbTempThreshold; /// ????????????: ????? double dbCorrectTemp; /// ?????????????: ????? double dbValidTempLowerLimit; /// ?????????????????????????????????????? BOOL bDebugModelEnable; /// ?????????????????????????????????????? BOOL bRectEnable; /// ??????????????????????????????????????? char szSensorType[64]; /// ???????????????? BYTE byReserved[1024]; /// ?????? }NET_INFRARED_MEASURE_MODE_PARAM; ///@brief ???????????? typedef struct tagNET_THERMAL_IMAGE_MEASURE_MODE_PARAM { int nFaceCompareThreshold; /// ?????????? int nRetentionTime; /// ???????s?? int nOverTempMaxDistance; /// ???????????????????????????????????????cm?? BYTE byReserved[1020]; }NET_THERMAL_IMAGE_MEASURE_MODE_PARAM; ///@brief ???????? typedef enum tagEM_THERMAL_IMAGE_CALIBRATION_MODE { EM_THERMAL_IMAGE_CALIBRATION_MODE_UNKNOWN, /// ??? EM_THERMAL_IMAGE_CALIBRATION_MODE_INDOOR, /// ?????? EM_THERMAL_IMAGE_CALIBRATION_MODE_WALL_MOUNTING, /// ????? EM_THERMAL_IMAGE_CALIBRATION_MODE_GATE, /// ????? EM_THERMAL_IMAGE_CALIBRATION_MODE_FLOOR, /// ????????? }EM_THERMAL_IMAGE_CALIBRATION_MODE; ///@brief ???????????????? typedef struct tagNET_GUIDE_MODULE_MEASURE_MODE_PARAM { BOOL bRectEnable; /// ??????????????????????????????????????? int nMaxDistance; /// ????????????????cm?? double dbTempThreshold; /// ?????????????? double dbCorrectTemp; /// ??????????????? double dbValidTempLowerLimit; /// ?????????????????????????????????????? double dbTempRandReplaceThreshold; /// ????????I????????????????????????I???????????????????????????????0?????????????????? BOOL bDebugModelEnable; /// ????????????????????????????????????? EM_THERMAL_IMAGE_CALIBRATION_MODE emCalibrationMode; /// ?????????????????????????????? BOOL bHeatDisplayEnbale; /// ????????? BYTE byReserved[1020]; /// ?????? }NET_GUIDE_MODULE_MEASURE_MODE_PARAM; ///@brief ????????????????? typedef struct tagNET_WRIST_MEASURE_MODE_PARAM { double dbTempThreshold; /// ?????????????? double dbCorrectTemp; /// ??????????????? double dbValidTempLowerLimit; /// ?????????????????????????????????????? int nMeasureTimeout; /// ??????????? int nValidMeasureDistance; /// ??????????????cm????????????????????????????? int nInvalidMeasureDistance; /// ??????????????cm??????????????????????????????????????????????????ValidTemperatureDistance????????????????????????????????????????????????????????? BYTE byReserved[1020]; }NET_WRIST_MEASURE_MODE_PARAM; ///@brief ??????????? typedef struct tagNET_CFG_ACCESSCONTROL_MEASURE_TEMP_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????????? BOOL bOnlyTempMode; /// ??????????????? BOOL bDisplayTemp; /// ???????????????????? EM_MASK_DETECT_MODE emMaskDetectMode; /// ???????? EM_TEMP_MEASURE_TYPE emMeasureType; /// ???????? NET_INFRARED_MEASURE_MODE_PARAM stuInfraredTempParam; /// ?????????????, emMeasureType ? EM_TEMP_MEASURE_TYPE_INFRARED ????? NET_THERMAL_IMAGE_MEASURE_MODE_PARAM stuThermalImageTempParam; /// ??????????????, emMeasureType ? EM_TEMP_MEASURE_TYPE_THERMAL_IMAGE ????? NET_GUIDE_MODULE_MEASURE_MODE_PARAM stuGuideModuleTempParam; /// ???????????????, emMeasureType ? EM_TEMP_MEASURE_TYPE_GUIDE_MODULE ????? NET_WRIST_MEASURE_MODE_PARAM stuWristTempParam; /// ??????????????, emMeasureType ? EM_TEMP_MEASURE_TYPE_WRIST ????? }NET_CFG_ACCESSCONTROL_MEASURE_TEMP_INFO; ///@brief ???????? typedef enum tagEM_PTZ_LINK_TYPE { EM_PTZ_LINK_TYPE_NONE, /// none EM_PTZ_LINK_TYPE_PRESET, /// "Preset" ???????? EM_PTZ_LINK_TYPE_TOUR, /// "Tour" ??????? EM_PTZ_LINK_TYPE_PATTERN, /// "Pattern" ?????? EM_PTZ_LINK_TYPE_ZOOM, /// "Zoom" ?????? EM_PTZ_LINK_TYPE_SINGLESCENE, /// "SingleScene" ????????????? EM_PTZ_LINK_TYPE_QUICKFOCUS, /// "QuickFocus" ??????????????????? } EM_PTZ_LINK_TYPE; ///@brief ?????????? typedef struct tagNET_CFG_PTZ_LINK { EM_PTZ_LINK_TYPE emType; /// ???????? int nValue; /// ???????????????????????? } NET_CFG_PTZ_LINK; ///@brief ????????? typedef struct tagNET_PTZ_LINK { EM_PTZ_LINK_TYPE emType; /// ??????????? int nParam1; /// ????????1 int nParam2; /// ????????2 int nParam3; /// ????????3 int nChannelID; /// ???????????? } NET_PTZ_LINK; ///@brief ??????????? typedef struct tagNET_CFG_ALARM_MSG_HANDLE { DWORD dwSize; ///???? bool abChannelCount; /// ????????????? bool abAlarmOutCount; /// ???????????????? bool abRecordMask; /// ???????????? bool abRecordEnable; /// ???????????? bool abRecordLatch; /// ???????????? bool abAlarmOutMask; /// ??????????????? bool abAlarmOutEn; /// ??????????????? bool abAlarmOutLatch; /// ??????????????? bool abExAlarmOutMask; /// ??????????????????? bool abExAlarmOutEn; /// ??????????????????? bool abPtzLinkEn; /// ???????????????? bool abTourMask; /// ????????????? bool abTourEnable; /// ???????????? bool abSnapshot; /// ????????? bool abSnapshotEn; /// ???????????? bool abSnapshotPeriod; /// ?????????????????????????? bool abSnapshotTimes; /// ????????????? bool abTipEnable; /// ????????????????? bool abMailEnable; /// ???????????? bool abMessageEnable; /// ???????????????????????? bool abBeepEnable; /// ????????? bool abVoiceEnable; /// ????????????? bool abMatrixMask; /// ????????????????????? bool abMatrixEnable; /// ???????????????????? bool abEventLatch; /// ??????????????????? bool abLogEnable; /// ???????????? bool abDelay; /// ???????????? bool abVideoMessageEn; /// ???????????????????? bool abMMSEnable; /// ????????????? bool abMessageToNetEn; /// ????????????????????? bool abTourSplit; /// ?????????????? bool abSnapshotTitleEn; /// ?????????????????? bool abPtzLinkEx; /// ???????????????? bool abSnapshotTitle; /// ??????????????? bool abMailDetail; /// ????????????? bool abVideoTitleEn; /// ?????????????????????????? bool abVideoTitle; /// ????????????????? bool abTour; /// ????????? bool abDBKeys; /// ????????????????????????????????????? bool abJpegSummary; /// ??????????JPEG????????? bool abFlashEn; /// ????????????? bool abFlashLatch; /// ????????????? bool abAudioFileName; /// ????????????????????????? bool abAlarmBellEn; /// ???????????? bool abAccessControlEn; /// ???????????????? bool abAccessControl; /// ????????????? bool abTalkBack; /// ?????????????? bool abPSTNAlarmServer; /// ???????????????? bool abAlarmBellLatch; /// ??????????????? bool abPlayTimes; /// ????????????????????? bool abReboot; /// ????????????? bool abBeepTime; /// ???????????? BYTE byReserved[68]; /// ??????????? /*???*/ NET_CFG_TIME_SCHEDULE stuTimeSection; /// ?????????? int nChannelCount; /// ????????????? int nAlarmOutCount; /// ??????????????? DWORD dwRecordMask[CFG_MAX_CHANNEL_COUNT]; /// ??????????(????) BOOL bRecordEnable; /// ?????? int nRecordLatch; /// ?????????(??) DWORD dwAlarmOutMask[CFG_MAX_CHANNEL_COUNT]; /// ?????????????? BOOL bAlarmOutEn; /// ?????????? int nAlarmOutLatch; /// ?????????????(??) DWORD dwExAlarmOutMask[CFG_MAX_CHANNEL_COUNT]; /// ????????????????? BOOL bExAlarmOutEn; /// ????????????? NET_CFG_PTZ_LINK stuPtzLink[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ????????? ///???????????????????????????????? BOOL bPtzLinkEn; /// ?????????? DWORD dwTourMask[CFG_MAX_CHANNEL_COUNT]; /// ?????????? BOOL bTourEnable; /// ?????? DWORD dwSnapshot[CFG_MAX_CHANNEL_COUNT]; /// ????????????? BOOL bSnapshotEn; /// ??????? int nSnapshotPeriod; /// ????????(??) int nSnapshotTimes; /// ??????? BOOL bTipEnable; /// ???????????? BOOL bMailEnable; /// ????????????????????????? BOOL bMessageEnable; /// ??????????????? BOOL bBeepEnable; /// ???? BOOL bVoiceEnable; /// ??????? int nPlayTimes; /// ???????????????bVoiceEnable=TRUE????? DWORD dwMatrixMask[CFG_MAX_CHANNEL_COUNT]; /// ?????????????????? BOOL bMatrixEnable; /// ??????????? int nEventLatch; /// ?????????????(??)??0??15 BOOL bLogEnable; /// ???????? int nDelay; /// ????????????????????????? BOOL bVideoMessageEn; /// ????????????????????????????????????????????????? BOOL bMMSEnable; /// ?????????? BOOL bMessageToNetEn; /// ??????????????? int nTourSplit; /// ?????????? 0: 1????; 1: 8???? BOOL bSnapshotTitleEn; /// ???????????? int nPtzLinkExNum; /// ????????? NET_PTZ_LINK stuPtzLinkEx[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ????????? int nSnapTitleNum; /// ???????????? NET_CFG_EVENT_TITLE stuSnapshotTitle[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ?????????? NET_CFG_MAIL_DETAIL stuMailDetail; /// ?????????? BOOL bVideoTitleEn; /// ??????????????????????? int nVideoTitleNum; /// ?????????????? NET_CFG_EVENT_TITLE stuVideoTitle[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ??????????? int nTourNum; /// ?????????? NET_CFG_TOURLINK stuTour[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ??????????? int nDBKeysNum; /// ??????????????????? char szDBKeys[CFG_MAX_DBKEY_NUM][CFG_MAX_CHANNELNAME_LEN]; /// ??????????????????????????????? BYTE byJpegSummary[CFG_MAX_SUMMARY_LEN]; /// ?????JPEG????????? BOOL bFlashEnable; /// ?????????? int nFlashLatch; /// ???????????(??),??????????[10,300] char szAudioFileName[MAX_PATH]; /// ??????????????????? BOOL bAlarmBellEn; /// ??????? BOOL bAccessControlEn; /// ?????? DWORD dwAccessControl; /// ??????? NET_EM_CFG_ACCESSCONTROLTYPE emAccessControlType[CFG_MAX_ACCESSCONTROL_NUM]; /// ?????????????? NET_CFG_TALKBACK_INFO stuTalkback; /// ??????????????? NET_CFG_PSTN_ALARM_SERVER stuPSTNAlarmServer; /// ?????????????????? int nAlarmBellLatch; /// ?????????????(10-300??) BOOL bReboot; ///???????TRUE:??? FALSE:????? int nBeepTime; ///????????????3600??0???????????? BOOL abLightingLink; /// ????????????????? NET_CFG_LIGHTING_LINK_INFO stuLightingLink; /// ?????????????? } NET_CFG_ALARM_MSG_HANDLE; ///@brief ??????????? typedef struct tagNET_ALARM_MSG_HANDLE { ///???? bool abChannelCount; /// ????????????? bool abAlarmOutCount; /// ???????????????? bool abRecordMask; /// ???????????? bool abRecordEnable; /// ???????????? bool abRecordLatch; /// ???????????? bool abAlarmOutMask; /// ??????????????? bool abAlarmOutEn; /// ??????????????? bool abAlarmOutLatch; /// ??????????????? bool abExAlarmOutMask; /// ??????????????????? bool abExAlarmOutEn; /// ??????????????????? bool abPtzLinkEn; /// ???????????????? bool abTourMask; /// ????????????? bool abTourEnable; /// ???????????? bool abSnapshot; /// ????????? bool abSnapshotEn; /// ???????????? bool abSnapshotPeriod; /// ?????????????????????????? bool abSnapshotTimes; /// ????????????? bool abTipEnable; /// ????????????????? bool abMailEnable; /// ???????????? bool abMessageEnable; /// ???????????????????????? bool abBeepEnable; /// ????????? bool abVoiceEnable; /// ????????????? bool abMatrixMask; /// ????????????????????? bool abMatrixEnable; /// ???????????????????? bool abEventLatch; /// ??????????????????? bool abLogEnable; /// ???????????? bool abDelay; /// ???????????? bool abVideoMessageEn; /// ???????????????????? bool abMMSEnable; /// ????????????? bool abMessageToNetEn; /// ????????????????????? bool abTourSplit; /// ?????????????? bool abSnapshotTitleEn; /// ?????????????????? bool abPtzLinkEx; /// ???????????????? bool abSnapshotTitle; /// ??????????????? bool abMailDetail; /// ????????????? bool abVideoTitleEn; /// ?????????????????????????? bool abVideoTitle; /// ????????????????? bool abTour; /// ????????? bool abDBKeys; /// ????????????????????????????????????? bool abJpegSummary; /// ??????????JPEG????????? bool abFlashEn; /// ????????????? bool abFlashLatch; /// ????????????? bool abAudioFileName; /// ????????????????????????? bool abAlarmBellEn; /// ???????????? bool abAccessControlEn; /// ???????????????? bool abAccessControl; /// ????????????? bool abTalkBack; /// ?????????????? bool abPSTNAlarmServer; /// ???????????????? bool abAlarmBellLatch; /// ??????????????? bool abPlayTimes; /// ????????????????????? bool abReboot; /// ????????????? bool abBeepTime; /// ???????????? BYTE byReserved[68]; /// ??????????? /*???*/ NET_CFG_TIME_SCHEDULE stuTimeSection; /// ?????????? int nChannelCount; /// ????????????? int nAlarmOutCount; /// ??????????????? DWORD dwRecordMask[CFG_MAX_CHANNEL_COUNT]; /// ??????????(????) BOOL bRecordEnable; /// ?????? int nRecordLatch; /// ?????????(??) DWORD dwAlarmOutMask[CFG_MAX_CHANNEL_COUNT]; /// ?????????????? BOOL bAlarmOutEn; /// ?????????? int nAlarmOutLatch; /// ?????????????(??) DWORD dwExAlarmOutMask[CFG_MAX_CHANNEL_COUNT]; /// ????????????????? BOOL bExAlarmOutEn; /// ????????????? NET_CFG_PTZ_LINK stuPtzLink[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ????????? ///???????????????????????????????? BOOL bPtzLinkEn; /// ?????????? DWORD dwTourMask[CFG_MAX_CHANNEL_COUNT]; /// ?????????? BOOL bTourEnable; /// ?????? DWORD dwSnapshot[CFG_MAX_CHANNEL_COUNT]; /// ????????????? BOOL bSnapshotEn; /// ??????? int nSnapshotPeriod; /// ????????(??) int nSnapshotTimes; /// ??????? BOOL bTipEnable; /// ???????????? BOOL bMailEnable; /// ????????????????????????? BOOL bMessageEnable; /// ??????????????? BOOL bBeepEnable; /// ???? BOOL bVoiceEnable; /// ??????? int nPlayTimes; /// ???????????????bVoiceEnable=TRUE????? DWORD dwMatrixMask[CFG_MAX_CHANNEL_COUNT]; /// ?????????????????? BOOL bMatrixEnable; /// ??????????? int nEventLatch; /// ?????????????(??)??0??15 BOOL bLogEnable; /// ???????? int nDelay; /// ????????????????????????? BOOL bVideoMessageEn; /// ????????????????????????????????????????????????? BOOL bMMSEnable; /// ?????????? BOOL bMessageToNetEn; /// ??????????????? int nTourSplit; /// ?????????? 0: 1????; 1: 8???? BOOL bSnapshotTitleEn; /// ???????????? int nPtzLinkExNum; /// ????????? NET_PTZ_LINK stuPtzLinkEx[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ????????? int nSnapTitleNum; /// ???????????? NET_CFG_EVENT_TITLE stuSnapshotTitle[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ?????????? NET_CFG_MAIL_DETAIL stuMailDetail; /// ?????????? BOOL bVideoTitleEn; /// ??????????????????????? int nVideoTitleNum; /// ?????????????? NET_CFG_EVENT_TITLE stuVideoTitle[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ??????????? int nTourNum; /// ?????????? NET_CFG_TOURLINK stuTour[CFG_MAX_VIDEO_CHANNEL_NUM]; /// ??????????? int nDBKeysNum; /// ??????????????????? char szDBKeys[CFG_MAX_DBKEY_NUM][CFG_MAX_CHANNELNAME_LEN]; /// ??????????????????????????????? BYTE byJpegSummary[CFG_MAX_SUMMARY_LEN]; /// ?????JPEG????????? BOOL bFlashEnable; /// ?????????? int nFlashLatch; /// ???????????(??),??????????[10,300] char szAudioFileName[MAX_PATH]; /// ??????????????????? BOOL bAlarmBellEn; /// ??????? BOOL bAccessControlEn; /// ?????? DWORD dwAccessControl; /// ??????? NET_EM_CFG_ACCESSCONTROLTYPE emAccessControlType[CFG_MAX_ACCESSCONTROL_NUM]; /// ?????????????? NET_CFG_TALKBACK_INFO stuTalkback; /// ??????????????? NET_CFG_PSTN_ALARM_SERVER stuPSTNAlarmServer; /// ?????????????????? int nAlarmBellLatch; /// ?????????????(10-300??) BOOL bReboot; ///???????TRUE:??? FALSE:????? int nBeepTime; ///????????????3600??0???????????? BOOL abAudioLinkTime; /// ?????????????? int nAudioLinkTime; /// ????????????????, ???????? BOOL abAudioPlayTimes; /// ??????????????? UINT nAudioPlayTimes; /// ??????????????? BOOL abLightingLink; /// ????????????????? NET_CFG_LIGHTING_LINK_INFO stuLightingLink; /// ?????????????? BYTE byReserve[828]; /// ?????? } NET_ALARM_MSG_HANDLE; ///@brief PH????????? typedef struct tagWATER_DETECTION_PH { BOOL bEnable; /// PH??????? float fHigh; /// PH???????????????? ????(1-14) float fLow; /// PH???????????????? ????(1-14) char szReserved[128]; /// ?????? }WATER_DETECTION_PH; ///@brief ?????????? typedef struct tagWATER_DETECTION_NTU { BOOL bEnable; /// ????????? float fHigh; /// ????????????????? ????(0-500NTU) float fLow; /// ?????????????????? ????(0-500NTU) char szReserved[128]; /// ?????? }WATER_DETECTION_NTU; ///@brief ???????????? typedef struct tagWATER_DETECTION_NH3_N { BOOL bEnable; /// ??????????? float fHigh; /// ??????????????????? ????(0-50mg/l) float fLow; /// ??????????????????? ????(0-50mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_NH3_N; ///@brief ??????????? typedef struct tagWATER_DETECTION_TN { BOOL bEnable; /// ?????????? float fHigh; /// ?????????????????? ????(0-50mg/l) float fLow; /// ?????????????????? ????(0-50mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_TN; ///@brief ???????????? typedef struct tagWATER_DETECTION_SD { BOOL bEnable; /// ??????????? float fHigh; /// ??????????????????? ????(0-30 m) float fLow; /// ???????????????????? ????(0-30 m) char szReserved[128]; /// ?????? }WATER_DETECTION_SD; ///@brief ????????????????? typedef struct tagWATER_DETECTION_COD { BOOL bEnable; /// ???????????????? float fHigh; /// ???????????????????????? ????(0-100mg/l) float fLow; /// ???????????????????????? ????(0-100mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_COD; ///@brief ?????????????????? typedef struct tagWATER_DETECTION_NN { BOOL bEnable; /// ????????????????? float fHigh; /// ????????????????????????? ????(0-500mg/l) float fLow; /// ????????????????????????? ????(0-500mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_NN; ///@brief ????????????? typedef struct tagWATER_DETECTION_DO { BOOL bEnable; /// ???????????? float fHigh; /// ???????????????????? ????(0-10 mg/l) float fLow; /// ???????????????????? ????(0-10 mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_DO; ///@brief ?????a???????? typedef struct tagWATER_DETECTION_CHL_A { BOOL bEnable; /// ?????a??????? float fHigh; /// ?????a??????????????? ????(0-300 ug/l) float fLow; /// ?????a??????????????? ????(0-300 ug/l) char szReserved[128]; /// ?????? }WATER_DETECTION_CHL_A; ///@brief ??????????????? typedef enum tagEM_WATER_DETECTION_TP_ALARM_TYPE { EM_WATER_DETECTION_TP_ALARM_TYPE_UNKNOWN, /// ??? EM_WATER_DETECTION_TP_ALARM_TYPE_NORMAL, /// ????? EM_WATER_DETECTION_TP_ALARM_TYPE_LAKE, /// ???????? }EM_WATER_DETECTION_TP_ALARM_TYPE; ///@brief ??????????? typedef struct tagWATER_DETECTION_TP { BOOL bEnable; /// ?????????? float fHigh; /// ?????????????? ????(0-5mg/l) float fLow; /// ??????????????? ????(0-5mg/l) EM_WATER_DETECTION_TP_ALARM_TYPE emAlarmType; /// ??????????????? char szReserved[128]; /// ?????? }WATER_DETECTION_TP; ///@brief ??????????????????? typedef struct tagWATER_DETECTION_CODMN { BOOL bEnable; /// ?????????????????? float fHigh; /// ?????????????????????????? ????(0-100mg/l) float fLow; /// ?????????????????????????? ????(0-100mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_CODMN; ///@brief ???????????? typedef struct tagWATER_DETECTION_SS { BOOL bEnable; /// ??????????? float fHigh; /// ???????????????????? ????(0-1000mg/l) float fLow; /// ????????????????????? ????(0-1000mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_SS; ///@brief ?????????????????????? typedef struct tagWATER_DETECTION_BOD5 { BOOL bEnable; /// ????????????????????? float fHigh; /// ????????????????????????????? ????(0-50mg/l) float fLow; /// ????????????????????????????? ????(0-50mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_BOD5; ///@brief ?????????????? typedef struct tagWATER_DETECTION_NO3_N { BOOL bEnable; /// ????????????? float fHigh; /// ????????????????????? ????(0-500mg/l) float fLow; /// ????????????????????? ????(0-500mg/l) char szReserved[128]; /// ?????? }WATER_DETECTION_NO3_N; ///@brief ??????????????????? typedef struct tagWATER_DETECTION_TSL { BOOL bEnable; /// ?????????????????? float fHigh; /// ?????????????????????????? ?????? float fLow; /// ?????????????????????????? ?????? char szReserved[128]; /// ?????? }WATER_DETECTION_TSL; ///@brief ?????????????? typedef struct tagWATER_DETECTION_SMALL_LEVEL { BOOL bEnable; /// ????????????? char szReserved[128]; /// ?????? }WATER_DETECTION_SMALL_LEVEL; ///@brief ????????????????? ?????? NET_EM_CFG_WATER_QUALITY_DETECTION typedef struct tagNET_CFG_WATER_QUALITY_DETECTION_INFO { DWORD dwSize; /// ??????? WATER_DETECTION_PH stuPh; /// PH????????? WATER_DETECTION_NTU stuNtu; /// ?????????? WATER_DETECTION_NH3_N stuNh3n; /// ???????????? WATER_DETECTION_TN stuTn; /// ??????????? WATER_DETECTION_SD stuSd; /// ???????????? WATER_DETECTION_COD stuCod; /// ????????????????? WATER_DETECTION_NN stuNn; /// ?????????????????? WATER_DETECTION_DO stuDo; /// ????????????? WATER_DETECTION_CHL_A stuChla; /// ?????a???????? WATER_DETECTION_TP stuTp; /// ??????????? WATER_DETECTION_CODMN stuCodMn; /// ??????????????????? WATER_DETECTION_SS stuSs; /// ???????????? WATER_DETECTION_BOD5 stuBod5; /// ?????????????????????? WATER_DETECTION_NO3_N stuNo3n; /// ?????????????? WATER_DETECTION_TSL stuTsl; /// ??????????????????? WATER_DETECTION_SMALL_LEVEL stuSmallLevel; /// ?????????????? BOOL bDataUpload; /// ??????????? UINT nUpdateInterval; /// ????????????(????????) ??????[60, 86400] NET_ALARM_MSG_HANDLE stuEventHandler; /// ??????????? }NET_CFG_WATER_QUALITY_DETECTION_INFO; ///@brief ??????????? typedef enum tagEM_FINANCIAL_CABINET_ALARM_TYPE { EM_FINANCIAL_CABINET_ALARM_TYPE_UNKNOWN = -1, /// ??? EM_FINANCIAL_CABINET_ALARM_TYPE_ABNORMAL, /// ?????? EM_FINANCIAL_CABINET_ALARM_TYPE_EMERGENCY, /// ??????? EM_FINANCIAL_CABINET_ALARM_TYPE_NOTOPEN, /// ??????? EM_FINANCIAL_CABINET_ALARM_TYPE_TIMEOUT, /// ?????????? EM_FINANCIAL_CABINET_ALARM_TYPE_TRUCKAWAY, /// ???????????????????? EM_FINANCIAL_CABINET_ALARM_TYPE_WITHDRAW, /// ??????? EM_FINANCIAL_CABINET_ALARM_TYPE_DEPOSIT, /// ??????? EM_FINANCIAL_CABINET_ALARM_TYPE_BATTERY, /// ?????? EM_FINANCIAL_CABINET_ALARM_TYPE_OTHAR, /// ???? }EM_FINANCIAL_CABINET_ALARM_TYPE; ///@brief ?????????????? typedef struct tagNET_FINANCIAL_CABINET_ALARM_INFO { BOOL bEnable; /// ??? EM_FINANCIAL_CABINET_ALARM_TYPE emAlarmType; /// ??????????? int nAlarmLevel; /// ??????? 0:?????? 1:??????? 2:??????? BOOL bAlarmLinkEnable; /// ??????????? int nValue; /// ?????? char szUnit[32]; /// ??????? int nAlarmOutChannel[8]; /// ??????????????, ??bAlarmLinkEnable?TRUE????? int nAlarmOutChannelNum; /// ???????????????????, ???nAlarmOutChannel[8]?????????8 char szReserverd[984]; /// ?????? }NET_FINANCIAL_CABINET_ALARM_INFO; ///@brief ?????????????? ?????? NET_EM_CFG_FINANCIAL_CABINET_ALARM typedef struct tagNET_CFG_FINANCIAL_CABINET_ALARM_INFO { DWORD dwSize; /// ??????? int nConfigNum; /// ????????????????? NET_FINANCIAL_CABINET_ALARM_INFO stuFinancialCabinetAlarm[32]; /// ?????????????? }NET_CFG_FINANCIAL_CABINET_ALARM_INFO; ///@brief ????????? typedef struct tagNET_FINANCIAL_CABINET_VAULTDOOR { UINT nDynamicPasswordLockNum; /// ?????????????????????????????? UINT nElectronicLockNum; /// ?????????????????????????? UINT nMechanicalLockNum; /// ?????????? UINT nTotalLockNum; /// ????????? UINT nCloseTime; /// ???????, ?????? char szReserverd[252]; /// ?????? }NET_FINANCIAL_CABINET_VAULTDOOR; ///@brief ?????? typedef struct tagNET_FINANCIAL_CABINET_WORKTIME { BOOL bEnable; /// ??? ????????????????? char szStartTime[16]; /// ????????? char szEndTime[16]; /// ????????? int nWeekDayNum; /// ???????? UINT nWeekDay[7]; /// ???? 0:?????1:?????????6:???? char szReserverd[252]; /// ?????? }NET_FINANCIAL_CABINET_WORKTIME; ///@brief ????????? typedef struct tagNET_FINANCIAL_CABINET_AUTOARM { BOOL bEnable; /// ??? char szDisarmStartTime[16]; /// ???????????????????????? char szDisarmEndTime[16]; /// ???????????????????????? int nWeekDayNum; /// ???????? UINT nWeekDay[7]; /// ???? 0:?????1:?????????6:???? char szReserverd[252]; /// ?????? }NET_FINANCIAL_CABINET_AUTOARM; ///@brief ???????? typedef struct tagNET_FINANCIAL_CABINET_MESSAGE { BOOL bEnable; /// ??? int nPhoneNumberNum; /// ???????????? char szPhoneNumber[8][16]; /// ????????? char szReserverd[256]; /// ?????? }NET_FINANCIAL_CABINET_MESSAGE; ///@brief ???????????? ?????? NET_EM_CFG_FINANCIAL_CABINET_CONFIG typedef struct tagNET_CFG_FINANCIAL_CABINET_CONFIG_INFO { DWORD dwSize; /// ??????? UINT nCabinNum; /// ???????? NET_FINANCIAL_CABINET_VAULTDOOR stuVaultDoor; /// ????????? BOOL bRemoteApprovalEnable; /// ???????????? NET_FINANCIAL_CABINET_WORKTIME stuWorkTime; /// ?????? UINT nIdentifyMode; /// ????? 0: ??????? 1: ???+??? NET_FINANCIAL_CABINET_AUTOARM stuAutoArm; /// ????????? NET_FINANCIAL_CABINET_MESSAGE stuMobileMessage; /// ???????? BOOL bABLockEnable; /// ??????? BOOL bCashAmountEnable; /// ?????????? BOOL bCabinsEnable; /// ??????????? BOOL bRecordScreenEnable; /// ?????? BOOL bFreezeEnable; /// ??????????? }NET_CFG_FINANCIAL_CABINET_CONFIG_INFO; ///@brief ?????????????? typedef struct tagNET_NUCLEIC_ACID_RULER_INFO { int nMonday; /// ????????????????????????????? 24???????????24?????????? int nTuesday; /// ????????????????????????????? 48???????????48?????????? int nWednesday; /// ?????????????????????????????? 72????????????72?????????? int nThursday; /// ????????????????????????????? 72???????????72?????????? int nFriday; /// ????????????????????????????? 72???????????72?????????? int nSaturday; /// ?????????????????????????????? 72????????????72?????????? int nSunday; /// ????????????????????????????? 72???????????72?????????? BOOL bTimeCheckEnable; /// ??????????????TRUE:???????????????; FALSE:???????????????? BOOL bRemoteCheckEnable; /// ?????????????TRUE:?????????????; FALSE:???????????? char szResvered[220]; /// ??????? }NET_NUCLEIC_ACID_RULER_INFO; ///@brief ???????????????, ?????? NET_EM_CFG_NUCLEIC_ACID_RULER typedef struct tagNET_CFG_NUCLEIC_ACID_RULER_INFO { DWORD dwSize; /// ???????, ????? NET_NUCLEIC_ACID_RULER_INFO stuNucleicAcidRulerInfo[20]; /// ?????????????? }NET_CFG_NUCLEIC_ACID_RULER_INFO; ///@brief ????????? typedef enum tagEM_JT_PLATECOLOR { EM_JT_PLATECOLOR_UNKNOWN, /// ??? EM_JT_PLATECOLOR_BLUE, /// ??? EM_JT_PLATECOLOR_YELLOW, /// ??? EM_JT_PLATECOLOR_BLACK, /// ??? EM_JT_PLATECOLOR_WHITE, /// ??? EM_JT_PLATECOLOR_OTHER = 9, /// ???? }EM_JT_PLATECOLOR; ///@brief ?????????? typedef enum tagEM_JT_SERVER_VERSION { EM_JT_SERVER_VERSION_UNKNOWN = -1, /// ??? EM_JT_SERVER_VERSION_2013, /// 2013 EM_JT_SERVER_VERSION_2019, /// 2019 }EM_JT_SERVER_VERSION; ///@brief ???????????? typedef struct tagNET_JT_SERVER_INFO { char szIP[48]; /// ??????IP ???? ???? BOOL bTcpEnable; /// tcp ??? int nTcpPort; /// tcp ??? BOOL bUdpEnable; /// udp ??? int nUdpPort; /// udp ??? char szAuthCode[64]; /// ??????????? EM_JT_SERVER_VERSION emVersion; /// ?????????? BYTE bReserverd[252]; /// ???? }NET_JT_SERVER_INFO; ///@brief ????IC????????? typedef struct tagNET_JT_IC_INFO { char szMainIP[48]; /// ??????IP ???? ???? char szBackupIP[48]; /// ??????IP ???? ???? int nTcpPort; /// tcp ??? int nUdpPort; /// Udp ??? BYTE bReserverd[64]; /// ???? }NET_JT_IC_INFO; ///@brief ????????????? typedef struct tagNET_JT_UNLOCKSERVER_INFO { char szIp[48]; /// ??????IP ???? ???? int nTcpPort; /// TCP ??? BYTE bReserverd[64]; /// ???? }NET_JT_UNLOCKSERVER_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_JT_SERVER_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????? int nRegisterMode; /// 0: ??????, 1: ????? int nCityID; /// ??????ID int nProvinceID; /// ???ID char szFactory[6]; /// ??????ID char szDevType[32]; /// ?????? char szVIN[18]; /// ????VIN?? char szVehicleType[32]; /// ???????? "???????", "???????????", "???????", "??????" char szDevID[32]; /// ???ID EM_JT_PLATECOLOR emPlateColor; /// ??????? char szPlateNO[32]; /// ??????? char szPhoneNO[16]; /// ??????? char szAuthCode[64]; /// ????????????? int nHeartBeatInterval; /// ??????? int nTcpTimeOut; /// Tcp??????? int nTcpRetransTimes; /// Tcp??????? int nUdpTimeOut; /// Udp??????? int nUdpRetransTimes; /// Udp??????? int nSmsTimeOut; /// Sms??????? int nSmsRetransTimes; /// Sms??????? NET_JT_SERVER_INFO stuServer[10]; /// ?????????? ????0???????? ????1??????? int nServerNum; /// ?????????? NET_JT_IC_INFO stuIC; /// IC????????? NET_JT_UNLOCKSERVER_INFO stuUnLockServer; /// ?????????? char szIMEI[32]; /// IMEI }NET_CFG_JT_SERVER_INFO; ///@brief ??????????????????? typedef struct tagNET_CFG_REMOTE_DEVICE_TIME_SYNC_INFO { DWORD dwSize; /// ??????? UINT* pnChannels; /// ???IPC????????????; ????????????????????IPC???????????0??? int nMaxChannel; /// ?????pnChannels???????? int nRetChannel; /// ??????????????, ??getconfig????????? UINT nPeriod; /// ???????(??????????????), ????: ???? BOOL bEnable; /// ?????IPC??? }NET_CFG_REMOTE_DEVICE_TIME_SYNC_INFO; ///@brief ????????????? typedef struct tagNET_CFG_SAFETYABNORMAL_INFO { DWORD dwSize; BOOL bEnable; /// ??? int nExceptionNum; /// ?????????????? EM_EXCEPTION_TYPE stuExceptions[16]; /// ?????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_SAFETYABNORMAL_INFO; ///@brief ?????? typedef enum tagEM_ACCELERATION_LEVEL { EM_ACCELERATION_KNOWN = -1, /// ??? EM_ACCELERATION_LOW, /// ?? EM_ACCELERATION_MEDIUM, /// ?? EM_ACCELERATION_HIGH /// ?? }EM_ACCELERATION_LEVEL; ///@brief ??????????? typedef struct tagNET_CFG_VEHICLE_COLLISION_INFO { DWORD dwSize; BOOL bEnable; /// ??? EM_ACCELERATION_LEVEL emAcceleration; /// ?????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_VEHICLE_COLLISION_INFO; ///@brief ?????????? typedef struct tagNET_CFG_VEHICLE_TURNOVER_INFO { DWORD dwSize; BOOL bEnable; /// ??? EM_ACCELERATION_LEVEL emAcceleration; /// ?????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_VEHICLE_TURNOVER_INFO; ///@brief ??????????? typedef struct tagNET_CFG_VEHICLE_SUDDENTURN_INFO { DWORD dwSize; BOOL bEnable; /// ??? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_VEHICLE_SUDDENTURN_INFO; ///@brief ????????????? typedef struct tagNET_CFG_VEHICLE_ACCELERATION_INFO { DWORD dwSize; BOOL bEnable; /// ??? int nThreshold; /// ???????.???????????????, ????0.1m/s2 NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_VEHICLE_ACCELERATION_INFO; ///@brief ????????????? typedef struct tagNET_CFG_VEHICLE_DECELERATION_INFO { DWORD dwSize; BOOL bEnable; /// ??? int nThreshold; /// ???????.???????????????, ????0.1m/s2 NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_VEHICLE_DECELERATION_INFO; ///@brief ACC ????????????? typedef struct tagNET_CFG_VEHICLE_ACC_INFO { DWORD dwSize; BOOL bAACOnEnable; /// ACC?? NET_ALARM_MSG_HANDLE stuACCOnEventHandler; /// ACC???????????? BOOL bAACOffEnable; /// ACC??? NET_ALARM_MSG_HANDLE stuACCOffEventHandler; /// ACC????????????? }NET_CFG_VEHICLE_ACC_INFO; ///@brief ?????????????????? typedef struct tagNET_VEHICLE_YAWNING_CONTROL_INFO { UINT nInTime; /// ???? ???? 10???? ?????? UINT nRecvTimes; /// ??????????10?????????????????????????????? BYTE bReserverd[64]; /// ??????? }NET_VEHICLE_YAWNING_CONTROL_INFO; ///@brief ????????????????? typedef struct tagNET_VEHICLE_EYESCLOSED_CONTROL_INFO { UINT nInTime; /// ???? ???? 10???? ?????? UINT nRecvTimes; /// ??????????10?????????????????????????????? BYTE bReserverd[64]; /// ??????? }NET_VEHICLE_EYESCLOSED_CONTROL_INFO; ///@brief DSM??????????????? typedef struct tagNET_CFG_VEHICLE_DSMALARMCONTROL_INFO { DWORD dwSize; NET_VEHICLE_YAWNING_CONTROL_INFO stuYawning; /// ?????????????????? NET_VEHICLE_EYESCLOSED_CONTROL_INFO stuEyesClosed; /// ????????????????? }NET_CFG_VEHICLE_DSMALARMCONTROL_INFO; ///@brief ?????????????????????????????? typedef struct tagNET_CFG_VEHICLE_NOT_INSPECT_ALARM_INFO { DWORD dwSize; BOOL bEnable; /// ?????????? int nDelayTime; /// ????????????????? }NET_CFG_VEHICLE_NOT_INSPECT_ALARM_INFO; ///@brief ????????? typedef enum tagEM_REMOTE_ALARMOUT_POLE { EM_REMOTE_ALARMOUT_POLE_UNKNOWN, /// ??? EM_REMOTE_ALARMOUT_POLE_LOW, /// ???????? EM_REMOTE_ALARMOUT_POLE_HIGH, /// ???????? } EM_REMOTE_ALARMOUT_POLE; ///@brief ???????????????????? typedef enum tagEM_BIND_EVENT_TYPE { EM_BIND_EVENT_TYPE_UNKNOWN = -1, /// ??? EM_BIND_EVENT_TYPE_CTR_PHONE, /// ???????? EM_BIND_EVENT_TYPE_CTR_PASS, /// ????????? EM_BIND_EVENT_TYPE_SYS_ARM, /// ???? EM_BIND_EVENT_TYPE_SYS_DISARM, /// ????? EM_BIND_EVENT_TYPE_REPORT, /// ??????? EM_BIND_EVENT_TYPE_COMM_FAIL, /// ?????????? EM_BIND_EVENT_TYPE_PSTN_OFF, /// PSTN???? EM_BIND_EVENT_TYPE_BELL_SIREN, /// ????/?????????????? EM_BIND_EVENT_TYPE_SYS_ALARM, /// ?????? EM_BIND_EVENT_TYPE_SILENT, /// ?????????????? EM_BIND_EVENT_TYPE_FIRE_ALARM, /// ????? EM_BIND_EVENT_TYPE_ZONE01_OPEN, /// 01?????? EM_BIND_EVENT_TYPE_KEY_FOB, /// ?????? } EM_BIND_EVENT_TYPE; ///@brief ??????????? typedef struct tagNET_REMOTE_ALARMOUT_TIME { BOOL bEnable; /// ??????????????? NET_CFG_TIME_SCHEDULE stuTimeSection; /// ?????7??????????7????8???????????????????6?????? BYTE bReserverd[64]; /// ??????? } NET_REMOTE_ALARMOUT_TIME; ///@brief ???????????? typedef struct tagNET_REMOTE_ALARMOUT_INFO { char szChnName[128]; /// ?????????????? char szOutputType[32]; /// ???????????, ???????? int nOutputMode; /// ?????, 0-???????, 1-??????, 2-??????, 3- ?????? int nPulseDelay; /// ????????????, nOutputMode?0??3?????, ???????(0-255??) int nAlarmDelay; /// ?????????????? ?????? 5~300???????????????????????????????, int nSlot; /// ?????, 0??????????, 1??????????????????????????, 2??3...???????, -1??????? int nLevel1; /// ????????????, ??????????nSlot????????nLevel1????????????, ??0???, -1??????? BOOL abLevel2; /// ???nLevel2????????? int nLevel2; /// ????????????, ??????????nLevel1??????????????????, ??0??? EM_REMOTE_ALARMOUT_POLE emPole; /// ????????? UINT nBindEventNum; /// ???????????????????? EM_BIND_EVENT_TYPE emBindEventType[32];/// ???????????????????? NET_REMOTE_ALARMOUT_TIME stuTimeSchedule; /// ??????????????? BYTE bReserverd[256]; /// ??????? } NET_REMOTE_ALARMOUT_INFO; ///@brief ????????????? typedef struct tagNET_CFG_REMOTE_ALARMOUT_INFO { DWORD dwSize; /// ??????? UINT nRemoteAlarmOutNum; /// ???????????????? NET_REMOTE_ALARMOUT_INFO stuRemoteAlarmOut[128]; /// ???????????? } NET_CFG_REMOTE_ALARMOUT_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_REMAINDER_TIME_WARN_INFO { DWORD dwSize; /// ??????? UINT nWarnThreshold; /// ????????????????????????? }NET_CFG_REMAINDER_TIME_WARN_INFO; ///@brief ??????????????? typedef struct tagNET_CFG_QR_CODE_INFO { DWORD dwSize; /// ??????? UINT nValidTime; /// ??????????????????????? }NET_CFG_QR_CODE_INFO; ///@brief ???????????????? typedef struct tagNET_FLOW_LOWER_INFO { BOOL bEnable; /// ??? UINT nThreshold; /// ???, ???? BYTE bReserverd[1024]; /// ??????? } NET_FLOW_LOWER_INFO; ///@brief ???????????????? typedef struct tagNET_PORT_CONGEST_INFO { BOOL bEnable; /// ??? UINT nThreshold; /// ???, ???? BYTE bReserverd[1024]; /// ??????? } NET_PORT_CONGEST_INFO; ///@brief NMP???????????? typedef struct tagNET_CFG_NMP_GLOBAL_INFO { DWORD dwSize; /// ??????? BOOL bSwitchOffline; /// ??????????????? BOOL bTerminalOffline; /// ???????????? BOOL bLoopDetect; /// ???????????? BOOL bIPConflict; /// IP????????? NET_FLOW_LOWER_INFO stuFlowLowerInfo; /// ???????????????? NET_PORT_CONGEST_INFO stuPortCongestInfo; /// ???????????????? } NET_CFG_NMP_GLOBAL_INFO; ///@brief ?????????????????????? typedef struct tagNET_CFG_HEAT_IMAGING_TEMPER_INFO { DWORD dwSize; BOOL bEnable; /// ??? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_HEAT_IMAGING_TEMPER_INFO; ///@brief ????????? typedef enum tagEM_NET_ACCESS_TYPE { EM_NET_ACCESS_TYPE_UNKNOWN = -1, /// ??? EM_NET_ACCESS_TYPE_OFF, /// ?????? EM_NET_ACCESS_TYPE_ALLOW, /// ???????? EM_NET_ACCESS_TYPE_BLOCK, /// ??????? } EM_NET_ACCESS_TYPE; ///@brief ????????????????? typedef struct tagNET_ALLOW_ADDR_INFO { int nEnableState; /// ??????????????, 0: ???(???) 1:????? char szBeginIP[64]; /// ???ip, Ipv4/Ipv6???; ?????????????????????.?????ipv4,??:?????ipv6 char szEndIP[64]; /// ????ip, ???BeginIP==EndIP???????????????; ??????"0.0.0.0"(Ipv4)/"::"(Ipv6)?????????????????; /// ????????BeginIP??????????????Ipv4????Ipv6, ??????? UINT nBeginPort; /// ???????, 0??????????????????????? UINT nEndPort; /// ????????, ???BeginPort==EndPort,?????????????; ??????0??????????? char szMac[20]; /// Mac???, ?????????,??????":"???; ????"0:0:0:0:0:0"?????????????? BYTE bReserverd[1024]; /// ??????? } NET_ALLOW_ADDR_INFO; ///@brief ???????????????? typedef struct tagNET_BLOCK_ADDR_INFO { int nEnableState; /// ??????????????, 0: ???(???) 1:????? char szBeginIP[64]; /// ???ip, Ipv4/Ipv6???; ?????????????????????.?????ipv4,??:?????ipv6 char szEndIP[64]; /// ????ip, ???BeginIP==EndIP??????????????; ??????"0.0.0.0"(Ipv4)/"::"(Ipv6)?????????????????; /// ????????BeginIP??????????????Ipv4????Ipv6, ??????? UINT nBeginPort; /// ???????, 0??????????????????????? UINT nEndPort; /// ????????, ???BeginPort==EndPort,????????????; ??????0??????????? char szMac[20]; /// Mac???, ?????????,??????":"???; ????"0:0:0:0:0:0"?????????????? BYTE bReserverd[1024]; /// ??????? } NET_BLOCK_ADDR_INFO; ///@brief NTP ????????? typedef struct tagNET_NTP_ADDR_INFO { int nEnableState; /// ??????????????, 0: ???(???) 1:????? char szBeginIP[64]; /// ???ip, ?IP?????????????????; ??????????????DNS???????????????????????IP????? char szEndIP[64]; /// ????ip, ????????szBeginIP BYTE bReserverd[1020]; /// ??????? } NET_NTP_ADDR_INFO; ///@brief NTP?????????????????? typedef struct tagNET_NTP_ALLOW_ACCCESS_INFO { BOOL bEnable; /// ????? UINT nNtpAddrNum; /// NTP ?????????? NET_NTP_ADDR_INFO stuNtpAddrInfo[64]; /// NTP ?????????? BYTE bReserverd[1024]; /// ??????? } NET_NTP_ALLOW_ACCCESS_INFO; ///@brief ?????????? typedef struct tagNET_NETACCESS_RULE_INFO { EM_NET_ACCESS_TYPE emNetAccessType; /// ?????? UINT nAllowAddrNum; /// ?????????????????? NET_ALLOW_ADDR_INFO stuAllowAddrInfo[128]; /// ?????????????????? BYTE bReserverd1[4]; /// ??? ???? UINT nBlockAddrNum; /// ????????????????? NET_BLOCK_ADDR_INFO stuBlockAddrInfo[128]; /// ????????????????? BYTE bReserverd[1024]; /// ??????? } NET_NETACCESS_RULE_INFO; ///@brief ???????????????? typedef struct tagNET_CFG_IP_TABLE_FILTER_INFO { DWORD dwSize; /// ??????? BOOL bBanPing; /// ??????ping???? NET_NETACCESS_RULE_INFO stuNetAccessRule; /// ?????????? NET_NTP_ALLOW_ACCCESS_INFO stuNtpAllowAccessInfo; /// Ntp??????????????????,???????????123 BOOL bBanhalfConn; /// ?????????????? } NET_CFG_IP_TABLE_FILTER_INFO; ///@brief ?????????????????, ????????? NET_EM_CFG_REDUNDANT_STORAGE_STRATEGY typedef struct tagNET_CFG_REDUNDANT_STORAGE_STRATEGY_INFO { DWORD dwSize; /// ??????? int nPackMode; /// ????????, -1:???, 0:????????????, 1:??????????? TP_U64 nMaxFileSize; /// ??????????,?????????? UINT nMaxFileTime; /// ?????????,????????? UINT nPreRecord; /// ????????,????????? UINT nRecordLatch; /// ?????????,????????? BYTE bReserverd[4]; /// ?????? } NET_CFG_REDUNDANT_STORAGE_STRATEGY_INFO; ///@brief ?????????????????, ????????? NET_EM_CFG_RECORD_SHORTAGE_ALARM typedef struct tagNET_CFG_RECORD_SHORTAGE_ALARM_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??? int nValidDay; /// ???? BYTE bReserverd[256]; /// ?????? } NET_CFG_RECORD_SHORTAGE_ALARM_INFO; ///@brief ???????????????? typedef struct tagNET_LANE_LIST_INFO { int nLaneNumber; /// ??????? int nLaneType; /// ????????????????? unsigned int nWaitingArea; /// ?????????? 0????????????????1??????????????? char szReserved[32]; /// ?????? }NET_LANE_LIST_INFO; ///@brief ??????????????? typedef struct tagNET_SIGNAL_ROAD_LIST_INFO { int nRoadSectionId; /// ????Id int nIsTwiceCrossing; /// ????????????? 0?????1?????????? char szRoadSectionName[32]; /// ???????? int nRoadSectionDir; /// ????????0 - ?? | 1 - ???? | 2 - ?? | 3 - ???? | 4 - ?? | 5 - ???? | 6 - ?? | 7 - ???? | int nRoadSectionInLaneNum; /// ?????????????????? int nRoadSectionOutLaneNum; /// ?????????????????? int nLaneListNum; /// ?????????????????????? NET_LANE_LIST_INFO stuLaneListInfo[8]; /// ?????????????????? char szReserved[32]; /// ?????? }NET_SIGNAL_ROAD_LIST_INFO; ///@brief ??????????????? typedef struct tagNET_CROSS_LIST_INFO { int nCrossType; /// ???????? int nRoadListInfoNum; /// ???????????????? NET_SIGNAL_ROAD_LIST_INFO stuRoadListInfo[8]; /// ???????????? char szReserved[32]; /// ?????? }NET_CROSS_LIST_INFO; ///@brief ????????????????,?????????NET_EM_CFG_RTSC_SCH_CROSSLIST typedef struct tagNET_CFG_RTSC_SCH_CROSSLIST_INFO { DWORD dwSize; /// ??????? int nCrossListInfoNum; /// ??????????????????? NET_CROSS_LIST_INFO stuCrossListInfo[2]; /// ??????????????? }NET_CFG_RTSC_SCH_CROSSLIST_INFO; ///@brief ?????????? typedef struct tagNET_CHANNELS_INFO { int nChannelNumber; /// ?????? int nChannelPhase; /// ????????????????????????????????1??? int nLampType; /// ??????????????? | 16 ???? | 17 ???????? | 18 ???????? | 19 ???????? | 20 ???????? | /// | 21 ?????????| 22 ???????????? | 23 ???????????? | 24 ???????? | 25 ???????????????????????????????? | 26 ????????????????????????????????? | int nCrossType; /// ???????????????????;0-???????1-??????????1??2-?????????? int nRoadSectionDir; /// ??????? | 0 ?? | 1 ???? | 2 ??| 3 ???? | 4 ?? | 5 ???? | 6 ?? | 7 ???? | int nChannelControlType; /// ???????;1-??????2-????????3-???? char szReserved[32]; /// ?????? }NET_CHANNELS_INFO; ///@brief ?????, ?????????NET_EM_CFG_RTSC_SCH_CHANNELS typedef struct tagNET_CFG_RTSC_SCH_CHANNELS_INFO { DWORD dwSize; /// ??????? int nMaxChannels; /// ??????????????? int nChannelsInfoNum; /// ??????????? NET_CHANNELS_INFO stuChannelsInfo[36]; /// ??????? }NET_CFG_RTSC_SCH_CHANNELS_INFO; ///@brief ??????????? typedef struct tagNET_PHASES_INFO { int nGridNo; /// ???????????????? int nPhaseNum; /// ??????? int nPhaseOrder; /// ?????????????????????1?? A1?1??A2?????? int nStartDelayTime; /// ??????? int nStartYellowTime; /// ?????? int nGreenTime; /// ????????????+???+???+????+???+???? int nGreenFlashTime; /// ??????? int nYellowTime; /// ?????? int nRedclearTime; /// ?????? int nMinimumGreen; /// ?????????? int nMaximumGreen; /// ????????? int nBeforeReduction; /// ????????????? int nAddedInitial; /// ??????????????? int nPhaseKeepState; /// ?????????? 0-???????1-??????2-????3-??????4-??? BOOL bFreeEnable; /// ????????????????? int nSelectDetectorsNum; /// ????????????? int nSelectDetectors[128]; /// ???????????? char szReserved[32]; /// ?????? }NET_PHASES_INFO; ///@brief ?????????? typedef struct tagNET_BARRIER_LIST_INFO { int nBarrierNo; /// ?????? int nPhaseNum; /// ???????????? NET_PHASES_INFO stuPhaseInfo[16]; /// ???????? char szReserved[32]; /// ?????? }NET_BARRIER_LIST_INFO; ///@brief ???????? typedef struct tagNET_RINGS_LIST_INFO { int nRingNo; /// ????? int nBarrierNum; /// ??????????? NET_BARRIER_LIST_INFO stuBarrierInfo[4]; /// ??????? char szReserved[32]; /// ?????? }NET_RINGS_LIST_INFO; ///@brief ??????????????? typedef struct tagNET_OVER_LAPS_INFO { int nOverlapNum; /// ??????????? int nIncludedPhasesNum; /// ???????????????????????? int nIncludedPhases[16]; /// ???????????????????????? int nStartDelayTimeNum; /// ????????????????? int nStartDelayTime[16]; /// ?????????????????? char szReserved[32]; /// ?????? }NET_OVER_LAPS_INFO; ///@brief ?????????????? typedef struct tagNET_CYCLE_PLAN_INFO { int nCycle; /// ??????? int nCyclePlanNum; /// ?????????? char szCyclePlanName[32]; /// ??????????? int nOffSet; /// ????????? BOOL bCoordEnable; /// ????????????? int nRingNum; /// ?????????? char szReserved1[4]; /// ?????? NET_RINGS_LIST_INFO stuRingInfo[4]; /// ?????? int nOverLapsNum; /// ???????????????? char szReserved2[4]; /// ?????? NET_OVER_LAPS_INFO stuOverLapsInfo[16]; /// ???????????? char szReserved[32]; /// ?????? }NET_CYCLE_PLAN_INFO; ///@brief ?????????, ?????????NET_EM_CFG_RTSC_SCH_PLANS typedef struct tagNET_CFG_RTSC_SCH_PLANS_INFO { DWORD dwSize; /// ??????? int nMaxCyclePlans ; /// ???????? ??? int nCyclePlanNum; /// ??????????????? NET_CYCLE_PLAN_INFO stuCyclePlan[20]; /// ??????????? }NET_CFG_RTSC_SCH_PLANS_INFO; ///@brief ????????????? typedef struct tagNET_DAY_ACTION_INFO { int nActionNumber; /// ?????? int nBeginHour; /// ??????????? int nBeginMinute; /// ???????????? int nCyclePlanNum; /// ?????????? int nCyclePlanControlMode; /// ?????| 1??????? | 242??????????? | 246???????? | 247????? | 224????????????? | 225 ???????????? | 226 ????????? | /// | 250??????? | 252?????? | 254??????? | 255???????? | char szReserved[32]; /// ?????? }NET_DAY_ACTION_INFO; ///@brief ??????????? typedef struct tagNET_DAY_PLAN_INFO { int nDayPlanNumber; /// ??????????1??? char szDayPlanName[32]; /// ???????? char szReserved1[4]; /// ?????? int nDayActionNum; /// ?????????????? NET_DAY_ACTION_INFO stuDayActionInfo[24]; /// ?????????? char szReserved[32]; /// ?????? }NET_DAY_PLAN_INFO; ///@brief ??????? typedef struct tagNET_WEEK_PLAN_INFO { int nWeekNumber; /// ????????| 0 ?????? | 1 ????? | 2 ????? | 3 ?????? | 4 ?????? | 5 ?????? | 6 ?????? | int nDayPlanNumber; /// ??????????1??? char szDayPlanName[64]; /// ???????? char szReserved[32]; /// ?????? }NET_WEEK_PLAN_INFO; ///@brief ??????????? typedef struct tagNET_WEEKS_PLAN_INFO { int nWeekPlanNumber; /// ??????? int nWeekPlanNum; /// ???????? char szWeekPlanName[32]; /// ???????? NET_WEEK_PLAN_INFO stuWeekPlanInfo[7]; /// ???? char szReserved[32]; /// ?????? }NET_WEEKS_PLAN_INFO; ///@brief ?????????????? typedef struct tagNET_COMMON_DATE_PLAN_INFO { int nDatePlanNumber; /// ????????? int nBeginMonth; /// ?????????? int nBeginDay; /// ???????? int nEndMonth; /// ??????????? int nEndDay; /// ????????? int nWeekPlanNumber; /// ??????? char szWeekPlanName[64]; /// ????????? char szReserved[32]; /// ?????? }NET_COMMON_DATE_PLAN_INFO; ///@brief ?????????????? typedef struct tagNET_SPECIAL_DATE_PLAN_INFO { int nDatePlanNumber; /// ????????? int nBeginMonth; /// ?????????? int nBeginDay; /// ???????? int nEndMonth; /// ??????????? int nEndDay; /// ????????? int nWeekPlanNumber; /// ???? char szWeekPlanName[32]; /// ???????? char szReserved[32]; /// ?????? }NET_SPECIAL_DATE_PLAN_INFO; ///@brief ?????????????????????????NET_EM_CFG_RTSC_SCH_MANAGE typedef struct tagNET_CFG_RTSC_SCH_MANAGE_INFO { DWORD dwSize; /// ??????? int nMaxDayPlans; /// ?????????? int nMaxDayActions ; /// ???????? int nMaxWeekPlans; /// ????????? int nMaxCommonDatePlans; /// ????????????????? int nMaxSpecialDatePlans; /// ????????????????? int nDayplansNum; /// ???????????? NET_DAY_PLAN_INFO stuDayPlanInfo[56]; /// ???????? int nWeekPlansNum; /// ???????????? NET_WEEKS_PLAN_INFO stuWeeksPlanInfo[20]; /// ???????? int nCommonDatePlanNum; /// ??????????????? NET_COMMON_DATE_PLAN_INFO stuCommonDatePlanInfo[16]; /// ??????????? int nSpecialDateNum; /// ??????????????? NET_SPECIAL_DATE_PLAN_INFO stuSpecialDatePlan[16]; /// ??????????? }NET_CFG_RTSC_SCH_MANAGE_INFO; ///@brief ???????????? typedef struct tagNET_SIGNAL_VEHICLE_DETECTOR_INFO { int nVehicleDetectorNumber; /// ???????? int nVehicleDetectorRoadNum; /// ??????? int nVehicleDetectorType; /// 1:??? 2:???1 (????????????????????) 3:???2 (?????????) 4:??? 5:???3(??????????????????) 6:???4-???? int nVehicleDetectorCallPhase; /// ?????????? int nvehicleDetectorPost; /// ????????? 1:??? 2:???? int nVehiclePrority; /// ??????????(1???????????), ??1-2 char szVideoDetectorIp[16]; /// ????????IP int nVideoDetectorPort; /// ??????????? char szVideoDetectorUser[72]; /// ????????????? char szVideoDetectorPassword[72]; /// ???????????? int nVehicleDetectorChannelNum; /// ???????????????1-96,???1????????1-40,???2????????41-96,???3????????1-40 int nVideoDetectorChn; /// ????????????,????1-9 int nVehicleDetectorentryDir; /// ??????? int nVehicleDetectorentryType; /// ???????? int nVehicleDetectorPortNum; /// ??????????????????????????????? char szReserved[32]; /// ?????? }NET_SIGNAL_VEHICLE_DETECTOR_INFO; ///@brief ????????????????????NET_EM_CFG_RTSC_SCH_VEHICLE_DETECTORLIST typedef struct tagNET_CFG_RTSC_SCH_VEHICLE_DETECTORLIST_INFO { DWORD dwSize; /// ??????? int nMaxVehicleDetectors; /// ???????????? int nVehicleDetectorNum; /// ????????????? NET_SIGNAL_VEHICLE_DETECTOR_INFO stuVehicleDetectorInfo[32]; /// ????????? }NET_CFG_RTSC_SCH_VEHICLE_DETECTORLIST_INFO; ///@brief ??????????????? typedef struct tagNET_PED_DETECTOR_INFO { int nPedestrianDetectorNumber; /// ????????????1-16 int nPedestrianDetectorCallPhase; /// ?????????????????? int nPedestrianDetectorPortNum; /// ??????????????????? int nPedestrianDetectorType; /// ?????????1:?????? 2??? char szPedestrianDetectorIp[16]; /// ????????IP int nPedestrianDetectorPort; /// ??????????? char szPedestrianDetectorUser[72]; /// ????????????? char szPedestrianDetectorPwd[72]; /// ???????????? int nPedestrianDetectorArea; /// ?????1,2 char szReserved[32]; /// ?????? }NET_PED_DETECTOR_INFO; ///@brief ????????????, ?????????NET_EM_CFG_RTSC_SCH_PEDDETECTOR_LIST typedef struct tagNET_CFG_RTSC_SCH_PEDDETECTOR_LIST_INFO { DWORD dwSize; /// ??????? int nMaxPedestrianDetectors; /// ????????????? int nPedDetectorNum; /// ???????????????? NET_PED_DETECTOR_INFO stuPedDetectorInfo[16]; /// ???????????? }NET_CFG_RTSC_SCH_PEDDETECTOR_LIST_INFO; ///@brief ???????????? typedef struct tagNET_PHASE_PRIORITY_CONFIG_INFO { int nId; /// ??? int nPhaseNum; /// ???????????????? int nPhaseOrder; /// ??????????????? int nMinGreenThr; /// ??????????? int nSkipThr; /// ??????? int nEnbleDetectorsNum; /// ??????????????? int nEnbleDetectors[16]; /// ???????????? char szReserved[32]; /// ?????? }NET_PHASE_PRIORITY_CONFIG_INFO; ///@brief ???????????????????????? typedef struct tagNET_PEDESTRAIN_PRIORITY_INFO { int nCycleNum; /// ?????? int nSuspendingPeriod; /// ??????????, ???????????????????????????????????????????1~90?? int nPhasePriorityConfigNum; /// ????????????? NET_PHASE_PRIORITY_CONFIG_INFO stuphasePriorityConfigInfo[255];/// ????????? char szReserved[256]; /// ?????? }NET_PEDESTRAIN_PRIORITY_INFO; ///@brief ?????????????????,?????????NET_EM_CFG_RTSC_SCH_PEDDESTRAIN_PRIORITY typedef struct tagNET_CFG_RTSC_SCH_PEDDESTRAIN_PRIORITY_INFO { DWORD dwSize; /// ??????? int nPedestrainPriorityNum; /// ????????????????????????? NET_PEDESTRAIN_PRIORITY_INFO stupedestrainPriorityInfo[20]; /// ????????????????????? }NET_CFG_RTSC_SCH_PEDDESTRAIN_PRIORITY_INFO; ///@brief ???????????? typedef struct tagNET_DETECTOR_CONFIG_INFO { int nDetectorId; /// ?????id BOOL bEnable; /// ??????? char szReserved[32]; /// ?????? }NET_DETECTOR_CONFIG_INFO; ///@brief ??????????? typedef struct tagNET_PHASE_CONFIG_INFO { int nPhaseNum; /// ???????????????? int nPhaseOrder; /// ??????????????? BOOL bRespondEnable; /// ?????? float fReduceRatio; /// ??????????0~0.5?? char szReserved[32]; /// ?????? }NET_PHASE_CONFIG_INFO; ///@brief ?????????? typedef struct tagNET_COMMON_CONFIG_INFO { float fRatioLimit; /// ??????????????? int nInOCTimes; /// ??????????????????????? int nOutOCTimes; /// ??????????????????????? char szReserved[32]; /// ?????? }NET_COMMON_CONFIG_INFO; ///@brief ??????????????????????? typedef struct tagNET_OVER_FLOW_CONTROL_INFO { int nCycleNum; /// ?????? NET_COMMON_CONFIG_INFO stuCommnCofigInfo; /// ??????? int nDetectConfigNum; /// ???????????? NET_DETECTOR_CONFIG_INFO stuDetectConfigInfo[32]; /// ????????? int nPhaseConfigNum; /// ??????????? NET_PHASE_CONFIG_INFO stuPhaseConfigInfo[16]; /// ???????? char szReserved[32]; /// ?????? }NET_OVER_FLOW_CONTROL_INFO; ///@brief ???????????,?????????NET_EM_CFG_RTSC_SCH_OVERFLOW_CONTROL typedef struct tagNET_CFG_RTSC_SCH_OVERFLOW_CONTROL_INFO { DWORD dwSize; /// ??????? int nOverflowControlNum; /// ???????????????????????? NET_OVER_FLOW_CONTROL_INFO stuOverFlowControlInfo[20]; /// ???????????????????? }NET_CFG_RTSC_SCH_OVERFLOW_CONTROL_INFO; ///@brief ??????????????? typedef struct tagNET_PHASE_CONFIG_NIGHT_INFO { int nPhaseNum; /// ???????????????? int nPhaseOrder; /// ??????????????? BOOL bHold; /// ?????? int nMaxInterval; /// ???????????0~160?? char szReserved[32]; /// ?????? }NET_PHASE_CONFIG_NIGHT_INFO; ///@brief ??????????????????????? typedef struct tagNET_NIGHT_ASK_INFO { int nCycleNum; /// ?????? int nPhaseConfigNum; /// ???????????????? NET_PHASE_CONFIG_NIGHT_INFO stuPhaseConfigNightInfo[16]; /// ???????????? char szReserved[32]; /// ?????? }NET_NIGHT_ASK_INFO; ///@brief ???????,?????????NET_EM_CFG_RTSC_SCH_NIGHTASK typedef struct tagNET_CFG_RTSC_SCH_NIGHTASK_INFO { DWORD dwSize; /// ??????? int nNightAskNum; /// ???????????????????????? NET_NIGHT_ASK_INFO stuNightAskInfo[20]; /// ???????????????????? }NET_CFG_RTSC_SCH_NIGHTASK_INFO; ///@brief ??????????? typedef struct tagNET_CYCLE_SETTINGS_INFO { int nCycleMax; /// ???????????????????????nMaxCyc??30 ~ 240?? int nCycleMin; /// ???????????????????????????nMinCyc??30 ~ 240?? float fSaturitionUpLimit; /// ?????????????0.000~1.000?? float fSaturitionDnLimit; /// ?????????????0.000~1.000?? int nCycleUpLimit; /// ????????????????30 ~ 240?? int nCycleDnLimit; /// ????????????????30 ~ 240?? int nCycleUpStep; /// ??????????????1 ~ 20?? int nCycleDnStep; /// ?????????????1 ~ 20?? int nSmoothCycNum; /// ????????????????1 ~ 5?? int nPermitDoubleCyc; /// ????????????:0?????? 1???? int nDoubleCycThreshold; /// ???????????????60 ~ 240?? char szReserved[32]; /// ?????? }NET_CYCLE_SETTINGS_INFO; ///@brief ????????? typedef struct tagNET_VOTE_SETTINGS_INFO { int nCycleChangeTolerate; /// ????????????????????????????????????????????????????????????0 ~ 10?? int nCycleUpVote; /// ?????????????????1 ~ 5?? int ncycleDnVote; /// ????????????????1 ~ 5?? char szReserved[32]; /// ?????? }NET_VOTE_SETTINGS_INFO; ///@brief ???????????????? typedef struct tagNET_PHASE_PRIORITYS_INFO { int nPhaseNum; /// ??????? int nPhaseOrder; /// ??????????????? BOOL bPriority; /// ??????? char szReserved[32]; /// ?????? }NET_PHASE_PRIORITYS_INFO; ///@brief ?????????? typedef struct tagNET_DETECTOR_SETTINGS_INFO { int nDetectorNumber; /// ???????? int nDetectorRoadNum; /// ??????? int nDetectorentryDir; /// ??????? int nDetectorentryType; /// ???????? BOOL bJoinPhaseSplit; /// ???????????????? BOOL bJoinCycleSplit; /// ??????????????? char szReserved[32]; /// ?????? }NET_DETECTOR_SETTINGS_INFO; ///@brief ?????????? typedef struct tagNET_CLOSURE_SETTINGS_INFO { int nRingNo; /// ????????????? int nBarrierNo; /// ?????????????? int nGridNo; /// ?????????????????? int nPhaseNum; /// ??????? int nPhaseOrder; /// ??????????????? char szReferDeviceId[72]; /// ???????id char szReferDeviceName[72]; /// ??????????? int nReferPlanNum; /// ?????????? char szReferPlanName[72]; /// ??????????? int nReferPhaseNum; /// ???????? int nReferPhaseOrder; /// ??????????????????? double dSplitTime; /// ?????/??? char szReserved1[4]; /// ?????? int nReferType; /// ?????1?????/2??? char szReserved[32]; /// ?????? }NET_CLOSURE_SETTINGS_INFO; ///@brief ????????? typedef struct tagNET_PHASE_LIST_INFO { int nPhaseNum; /// ??????? int nPhaseOrder; /// ??????????????? int nRingNo; /// ????????????? int nBarrierNo; /// ?????????????? int nGridNo; /// ?????????????????? BOOL bUsePhaseTime; /// ?????????? int nPhaseTime; /// ??????? int nPhaseUpLimit; /// ????????????0 ~ 100?? int nPhaseDnLimit; /// ????????????0 ~ 100?? BOOL bUseSplitTime; /// ??????????? double dSplitBase; /// ???????????? int nSplitUpLimit; /// ??????????? int nSplitDnLimit; /// ???????????? double dSaturitionWeight; /// ???????????? double dSplitMaxStep; /// ???????????????????? BOOL bPermitMaxLaneSaturition; /// ????????????????0???????=average(?????????) 1???????=max(?????????) char szReserved[32]; /// ?????? }NET_PHASE_LIST_INFO; ///@brief ???????????? typedef struct tagNET_PHASE_PRIORITY_INFO { int nPhaseNum; /// ??????? int nPhaseOrder; /// ??????????????? BOOL bPriority; /// ??????? char szReserved[32]; /// ?????? }NET_PHASE_PRIORITY_INFO; ///@brief ?????????? typedef struct tagNET_DETECTOR_SETTING_INFO { int nDetectorNum; /// ???????? int nDetectorRoadNum; /// ??????? int nDetectorentryDir; /// ??????? int nDetectorentryType; /// ???????? BOOL bJoinPhaseSplit; /// ???????????????? BOOL bJoinCycleSplit; /// ??????????????? char szReserved[32]; /// ?????? }NET_DETECTOR_SETTING_INFO; ///@brief ????????????? typedef struct tagNET_CLOSURE_SETTING_INFO { int nRingNo; /// ????????????? int nBarrierNo; /// ?????????????? int nGridNo; /// ?????????????????? int nPhaseNum; /// ??????? int nPhaseOrder; /// ??????????????? char szReferDeviceId[72]; /// ???????id char szReferDeviceName[72]; /// ??????????? int nReferPlanNum; /// ?????????? char szReferPlanName[72]; /// ??????????? int nReferPhaseNum; /// ???????? int nReferPhaseOrder; /// ??????????????????? double dbSplitTime; /// ?????/??? int nReferType; /// ?????1?????/2??? char szReserved1[4]; /// ?????? char szReserved[32]; /// ?????? }NET_CLOSURE_SETTING_INFO; ///@brief ??????????? typedef struct tagNET_PHASE_SETTINGS_INFO { int nPhaseListNum; /// ?????????? NET_PHASE_LIST_INFO stuPhaseListInfo[16]; /// ?????? int nPhasePrioritysNum; /// ????????????????? NET_PHASE_PRIORITY_INFO stuPhasePriorityInfo[16]; /// ???????????? int nDetectorSettingsNum; /// ?????????????? NET_DETECTOR_SETTING_INFO stuDetectorSettingInfo[16]; /// ?????????? int nClosureSettingNum; /// ?????????????? NET_CLOSURE_SETTING_INFO stuClosureSettingInfo[16]; /// ????????????? char szReserved[32]; /// ?????? }NET_PHASE_SETTINGS_INFO; ///@brief ?????????? typedef struct tagNET_SENIOR_INFO { int nCycleSettingNum; /// ??????????? NET_CYCLE_SETTINGS_INFO stuCycleSettingInfo[20]; /// ???????? NET_VOTE_SETTINGS_INFO stuVoteSettingInfo; /// ?????? NET_PHASE_SETTINGS_INFO stuPhaseSettingInfo; /// ???????? char szReserved[32]; /// ?????? }NET_SENIOR_INFO; ///@brief ??????????????????????????? typedef struct tagOPTIMIZES { int nCyclePlanNum; /// ?????????? int nCoordinatePhaseNum; /// ??????????? int nCoordinatePhaseOrder; /// ??????????????????? int nCoordinateRingNo; /// ????????????? int nCoordinateBarrierNo; /// ?????????????? int nCoordinateGridNo; /// ?????????????????? char szReferDeviceId[72]; /// ???????id char szReferDeviceName[72]; /// ??????????? int nReferCyclePlanNum; /// ??????????????????? char szReferCyclePlanName[72]; /// ???????????????????? int nReferPhaseNum; /// ???????? int nReferPhaseOrder; /// ??????????????????? int nReferType; /// ???????? 1????2??? int nOffset; /// ?????? NET_SENIOR_INFO stuSeniorInfo; /// ??????? char szReserved[32]; /// ?????? }NET_OPTIMIZES_INFO; ///@brief ?????????????????????????????????NET_EM_CFG_RTSC_SCH_OPTIMIZES typedef struct tagNET_CFG_RTSC_SCH_OPTIMIZES_INFO { DWORD dwSize; /// ??????? int nOptimizesInfoNum; /// ???????????????????????????? NET_OPTIMIZES_INFO stuOptimizeInfo[20]; /// ??????????????? }NET_CFG_RTSC_SCH_OPTIMIZES_INFO; ///@brief ???????????? typedef struct tagNET_PROPERTY_LIST_INFO { int nVarlaneProperty; /// ????????????????????????????0??????????1?????2????????????3?????4?????5?????????????6????????????7???????????? int nVarlaneTochanelNum; /// ???????????????????????? int nVarlaneTochanelColor; /// ?????????????????????????????1?????2?????3?????? int nVarlanevehDectNumber; /// ???????????????????????????????????????? char szReserved[32]; /// ?????? }NET_PROPERTY_LIST_INFO; ///@brief ??????????? typedef struct tagNET_PROPERTY_PLAN_LIST_INFO { int nVarlaneProperty; /// ????????????????????????????0??????????1?????2????????????3?????4?????5?????????????6????????????7???????????? int nVarlaneDectTime; /// ?????????????????? int nQueueDissimilarity; /// ??????????????? int nQueueLen; /// ???????????????????????? char szReserved[32]; /// ?????? }NET_PROPERTY_PLAN_LIST_INFO; ///@brief ???????? typedef struct tagNET_LANE_PLAN_LIST_INFO { int nVarlaneId; /// ?????????? int nVarlaneNumber; /// ??????????????????????? int nKeepTime; /// ????????????0-1440 int nControlMode; /// 1??????????? 2???????????????? 3?????????? int nCurrentVarlaneProperty; /// ??????? 1?????2????????????3?????4?????5?????????????6????????????7?????????? int nPropertyPlanListNum; /// ???????????? NET_PROPERTY_PLAN_LIST_INFO stuPropertyPlanInfo[7]; /// ???????? char szReserved[32]; /// ?????? }NET_LANE_PLAN_LIST_INFO; ///@brief ????????????? typedef struct tagNET_VARLANE_PLAN_LIST_INFO { int nVarlanePatternNumber; /// ?????????????0?????????? char szVarlanePatternName[64]; /// ????????????? int nLanePlanNum; /// ????????? NET_LANE_PLAN_LIST_INFO stuLanePlanInfo[12]; /// ????? char szReserved[32]; /// ?????? }NET_VARLANE_PLAN_LIST_INFO; ///@brief ???????????? typedef struct tagNET_VAR_LANE_LIST_INFO { int nVarlaneId; /// ?????????? int nVarlaneNumber; /// ??????????????????????? int nVarlaneFlashTime; /// ???????????????????????????????? ??????,0-255 S int nPropertyListNum; /// ???????????? NET_PROPERTY_LIST_INFO stuPropertyInfo[7]; /// ????????? char szReserved[32]; /// ?????? }NET_VAR_LANE_LIST_INFO; ///@brief ????????????????????NET_EM_CFG_RTSC_SCH_VARLANELIST typedef struct tagNET_CFG_RTSC_SCH_VARLANELIST_INFO { DWORD dwSize; /// ??????? int nVarlaneListNum; /// ????????????? NET_VAR_LANE_LIST_INFO stuVarLaneListInfo[8]; /// ????????? int nVarlanePlanListNum; /// ?????????????? NET_VARLANE_PLAN_LIST_INFO stuVarlanePlanListInfo[8]; /// ?????????? }NET_CFG_RTSC_SCH_VARLANELIST_INFO; ///@brief ????????????? typedef struct tagNET_DAY_ACTIONS_INFO { int nActionNumber; /// ?????????1??? int nBeginHour; /// ??????????? int nBeginMinute; /// ???????????? int nCyclePlanControlMode; /// ????? char szReserved[32]; /// ?????? }NET_DAY_ACTIONS_INFO; ///@brief ????????????????? typedef struct tagNET_DAY_PLANS_INFO { int nDayPlanNumber; /// ????????? char szDayPlanName[64]; /// ???????????1??? int nDayActionNum; /// ????????????? NET_DAY_ACTIONS_INFO stuDayActionInfo[24]; /// ????????? char szReserved[32]; /// ?????? }NET_DAY_PLANS_INFO; ///@brief ??????????? typedef struct tagNET_WEEK_PLANS_INFO { int nWeekPlanNumber; /// ??????? char szWeekPlanName[64]; /// ???????? int nWeekPlanNum; /// ???????? NET_WEEK_PLAN_INFO stuWeekPlanInfo[7]; /// ???? char szReserved[32]; /// ?????? }NET_WEEK_PLANS_INFO; ///@brief ?????????????? typedef struct tagNET_SPECIAL_DATE_PLANS_INFO { int nDatePlanNumber; /// ???????????1??? int nBeginMonth; /// ?????????? int nBeginDay; /// ???????? int nEndMonth; /// ??????????? int nEndDay; /// ????????? int nWeekPlanNumber; /// ??????? char szWeekPlanName[64]; /// ???????? char szReserved[32]; /// ?????? }NET_SPECIAL_DATE_PLANS_INFO; ///@brief ??????????????????????????NET_EM_CFG_RTSC_SCH_VARLANE_MANAGEMENT typedef struct tagNET_CFG_RTSC_SCH_VARLANE_MANAGEMENT_INFO { DWORD dwSize; /// ??????? int nDayPlansNum; /// ?????????????????? NET_DAY_PLANS_INFO stuDayPlansInfo[20]; /// ?????????????? int nWeekPlansNum; /// ???????????? NET_WEEK_PLANS_INFO stuWeekPlansInfo[10]; /// ???????? int nCommonDatePlanNum; /// ??????????????? NET_COMMON_DATE_PLAN_INFO stuCommonDatePlanInfo[8]; /// ??????????? int nSpecialDatePlanNum; /// ??????????????? NET_SPECIAL_DATE_PLANS_INFO stuSpecialDatePlanInfo[8]; /// ??????????? }NET_CFG_RTSC_SCH_VARLANE_MANAGEMENT_INFO; ///@brief ?????????? typedef struct tagNET_BARRIERS_INFO { int nBarrierNo; /// ?????????1??? int nPhaseNum; /// ???????????? NET_PHASES_INFO stuPhaseInfo[16]; /// ???????? char szReserved[32]; /// ?????? }NET_BARRIERS_INFO; ///@brief ????????? typedef struct tagNET_RINGS_INFO { int nRingNo; /// ????????1??? int nBarriersNum; /// ?????????? NET_BARRIERS_INFO stuBarriesInfo[4]; /// ?????? char szReserved[32]; /// ?????? }NET_RINGS_INFO; ///@brief ???????????,?????????NET_EM_CFG_RTSC_TEMP_SCH typedef struct tagNET_CFG_RTSC_TEMP_SCH_INFO { DWORD dwSize; /// ??????? int nStartTimeNum; /// ???????????????? int nStartTime[4]; /// ????????????? int[0]? Int[1]?? ????????? int nEndTimeNum; /// ????????????????? int nEndTime[4]; /// ?????????????? int[0]? Int[1]?? ????????? int nRingsNum; /// ????????? NET_RINGS_INFO stuRingsInfo[4]; /// ????? int nOverLapsNum; /// ???????????????? NET_OVER_LAPS_INFO stuOverLapsInfo[16]; /// ???????????? }NET_CFG_RTSC_TEMP_SCH_INFO; /**********************************************???????start**************************************************/ ///@brief ????????? typedef struct tagNET_EXAM_OBJ_INFO { char szName[256]; /// ????????? char szAbbreviation[64]; /// ????????? BOOL bRequired; /// ???????? BOOL bIsUsed; /// ??????????? BYTE bReserverd[1024]; /// ??????? } NET_EXAM_OBJ_INFO; ///@brief ??????????, ?????????NET_EM_CFG_COURSE_INFO typedef struct tagNET_CFG_COURSE_INFO { DWORD dwSize; /// ??????? UINT nExamObjNum; /// ??????????, ??stuExamNum ??????????????? NET_EXAM_OBJ_INFO stuExamNum[128]; /// ????????? } NET_CFG_COURSE_INFO; ///@brief ??????? typedef struct tagNET_EXAMINATION_ROOM_INFO { char szExamRoomName[256]; /// ???????? char szExamRoomNo[256]; /// ??????? UINT nCandidatesNum; /// ???????? UINT nChannelNum; /// ????IPC ???????, ??nChannels ??????????????? UINT nChannels[512]; /// ????IPC??? BYTE bReserverd[1024]; /// ??????? } NET_EXAMINATION_ROOM_INFO; ///@brief ????????, ?????????NET_EM_CFG_EXAMINATION_ROOM_INFO typedef struct tagNET_CFG_EXAMINATION_ROOM_INFO { DWORD dwSize; /// ??????? UINT nEaxmRoomNum; /// ????????, ??stuEaxmRoomInfo ??????????????? NET_EXAMINATION_ROOM_INFO stuEaxmRoomInfo[256]; /// ??????? char szExamSiteName[256]; /// ???????? char szExamSiteNo[256]; /// ?????? } NET_CFG_EXAMINATION_ROOM_INFO; ///@brief ??????????, ???????? typedef struct tagNET_CUSTOM_FILE_DIR_NAME_INFO { UINT nCustomDirNum; /// ??????????????, ??szCustomDirName ??????????????? char szCustomDirName[32][256]; /// ????????????(":"??????????) UINT nCustomFileNum; /// ???????????????, ??szCustomFileName ??????????????? char szCustomFileName[32][256]; /// ?????????????(":"??????????) BYTE bReserverd[1024]; /// ??????? } NET_CUSTOM_FILE_DIR_NAME_INFO; ///@brief ??????????, ?????????? typedef struct tagNET_CUSTOM_FILE_DIR_RULE_INFO { UINT nCustomDirNum; /// ??????????????, ??szCustomDirRule ??????????????? char szCustomDirRule[32][256]; /// ??????????????(":"??????????) UINT nCustomFileNum; /// ???????????????, ??szCustomFileRule ??????????????? char szCustomFileRule[32][256]; /// ???????????????(":"??????????) BYTE bReserverd[1024]; }NET_CUSTOM_FILE_DIR_RULE_INFO; ///@brief ????????????????????, ?????????NET_EM_CFG_RECORD_NAME_RULE_INFO typedef struct tagNET_CFG_RECORD_NAME_RULE_INFO { DWORD dwSize; /// ??????? BYTE bReserverd1[4]; /// ?????? NET_CUSTOM_FILE_DIR_NAME_INFO stuCustomNameInfo; /// ??????????, ???????? NET_CUSTOM_FILE_DIR_RULE_INFO stuCustomRuleInfo; /// ??????????, ?????????? } NET_CFG_RECORD_NAME_RULE_INFO; ///@brief ?????? typedef enum tagEM_NET_KVM_CONTROL_MODE { EM_NET_KVM_CONTROL_MODE_UNKNOWN, /// ??? EM_NET_KVM_CONTROL_MODE_DEFAULT, /// ????? EM_NET_KVM_CONTROL_MODE_WIN7_MULTISCREEN /// Win7?????????? } EM_NET_KVM_CONTROL_MODE; ///@brief KVM????????????????, ?????????NET_EM_CFG_KVM_CONTROL_DATA_MODE typedef struct tagNET_CFG_KVM_CONTROL_DATA_MODE_INFO { DWORD dwSize; /// ??????? EM_NET_KVM_CONTROL_MODE emMode; /// ?????? } NET_CFG_KVM_CONTROL_DATA_MODE_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_PRIVACY_FACEID_INFO { DWORD dwSize; /// ??????? int nCount; /// ???ID???? int nFaceID[32]; /// ????????????ID???? } NET_CFG_PRIVACY_FACEID_INFO; ///@brief ????????????????????,?????????NET_EM_CFG_CHANG_BAI_VEHICLE_PROHIBITED typedef struct tagNET_CFG_CHANG_BAI_VEHICLE_PROHIBITED_INFO { DWORD dwSize; /// ??????? NET_TIME stuVehicleProhibitedStartTime; /// ??????????(???????) NET_TIME stuVehicleProhibitedEndTime; /// ???????????(???????) } NET_CFG_CHANG_BAI_VEHICLE_PROHIBITED_INFO; ///@brief NVR????????IPC????, ?????????NET_EM_CFG_TUXI_SN_ACCESS_TABLE typedef struct tagNET_CFG_TUXI_SN_ACCESS_TABLE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????? int nCount; /// ?????????????? char szTable[512][64]; /// ?????????? } NET_CFG_TUXI_SN_ACCESS_TABLE_INFO; ///@brief ????????, ????????? NET_EM_CFG_ATTENDANCECFG_XL_CUSTOM typedef struct tagNET_CFG_ATTENDANCECFG_XL_CUSTOM_INFO { DWORD dwSize; /// ??????? int nAttendanceType; /// ????????????0-???1-??? int nCheckInEarlyTime; /// ???-??????????(????) int nCheckInDelayTime; /// ???-??????????(????) int nCheckOutEarlyTime; /// ???-??????????(????) int nCheckOutDelayTime; /// ???-??????????(????) } NET_CFG_ATTENDANCECFG_XL_CUSTOM_INFO; /**********************************************???????end**************************************************/ ///@brief ??????????????????????????, ????????? NET_EM_CFG_HB_ECOLOGY_INFO typedef struct tagNET_CFG_HB_ECOLOGY_INFO { DWORD dwSize; /// ??????? BYTE bReserverd[4]; /// ?????? char szDeviceID[128]; /// ????????? char szUserUniqueID[128]; /// ??????????? } NET_CFG_HB_ECOLOGY_INFO; ///@brief ????????????, ?????????NET_EM_CFG_LOSS_FRAME_ALARM typedef struct tagNET_CFG_LOSS_FRAME_ALARM_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? } NET_CFG_LOSS_FRAME_ALARM_INFO; ///@brief ?????? typedef enum tagEM_NET_CONSUMPTION_MODE { EM_NET_CONSUMPTION_MODE_UNKNOWN = -1, /// ??? EM_NET_CONSUMPTION_MODE_QUOTA, /// ???????? EM_NET_CONSUMPTION_MODE_NONQUOTA, /// ????????? EM_NET_CONSUMPTION_MODE_DEPOSIT, /// ??? } EM_NET_CONSUMPTION_MODE; ///@brief ??????????, ????????? NET_EM_CFG_CONSUMPTION_STRATEGY typedef struct tagNET_CFG_CONSUMPTION_STRATEGY_INFO { DWORD dwSize; /// ??????? EM_NET_CONSUMPTION_MODE emMode; /// ?????? BOOL bOfflineEnable; /// ???????????, TRUE:??????????? FALSE:????????????? UINT nConsumptionInterval; /// ????????????, ??????????????[1,600] }NET_CFG_CONSUMPTION_STRATEGY_INFO; ///@brief ?????? typedef enum tagEM_NET_WIEGAND_MODE { EM_NET_WIEGAND_TRANSFER_MODE_UNKNOWN = -1, /// ??? EM_NET_WIEGAND_TRANSFER_MODE_INPUT, /// ???????? EM_NET_WIEGAND_TRANSFER_MODE_OUTPUT, /// ??????? } EM_NET_WIEGAND_MODE; ///@brief ?????? typedef enum tagEM_NET_WIEGAND_TRANSFER_MODE { EM_NET_WIEGAND_MODE_UNKNOWN = -1, /// ??? EM_NET_WIEGAND_MODE_BIT_34, /// ????34bit????,4???????2Bit???? EM_NET_WIEGAND_MODE_BIT_66, /// ????66bit????,8???????2Bit???? EM_NET_WIEGAND_MODE_BIT_26, /// ????26bit????,3???????2Bit???? EM_NET_WIEGAND_MODE_BIT_32, /// ????32bit????,4??????????????? EM_NET_WIEGAND_MODE_BIT_42, /// ????42bit????,5???????2Bit???? } EM_NET_WIEGAND_TRANSFER_MODE; ///@brief ??????? typedef enum tagEM_NET_WIEGAND_OUT_TYPE { EM_NET_WIEGAND_OUT_TYPE_UNKNOWN = -1, /// ??? EM_NET_WIEGAND_OUT_TYPE_ID, /// ???ID EM_NET_WIEGAND_OUT_TYPE_CARD_NO, /// ??????? } EM_NET_WIEGAND_OUT_TYPE; ///@brief ???????? typedef struct tagNET_WIEGAND_INFO { EM_NET_WIEGAND_MODE emMode; /// ?????? int nPulseWidth; /// ???????,????us int nPulseStep; /// ??????,????us EM_NET_WIEGAND_TRANSFER_MODE emTransferMode; /// ?????? EM_NET_WIEGAND_OUT_TYPE emOutType; /// ??????? DWORD dwInputType; /// ????????????????????????????????????0????????????? /// Bit0-???????? /// Bit1-???????? /// Bit2~Bit31-???? UINT nDoorNo; /// ????, ???? 0: ??1???, 1: ??2??? BYTE bReserverd[1024]; /// ??????? }NET_WIEGAND_INFO; ///@brief ????????, ????????? NET_EM_CFG_WIEGAND typedef struct tagNET_CFG_WIEGAND_INFO { DWORD dwSize; /// ??????? int nCount; /// stuWiegandInfos????????? NET_WIEGAND_INFO stuWiegandInfos[8]; /// ??????????? }NET_CFG_WIEGAND_INFO; ///@brief ???????, ????????? NET_EM_CFG_QRCODE_KEY_INFO_CONFIG typedef struct tagNET_CFG_QRCODE_KEY_INFO { DWORD dwSize; /// ??????? char szCustomizedKey[65]; /// ??????? char szReserved1[3]; /// ?????? }NET_CFG_QRCODE_KEY_INFO; ///@brief ?????????? ??????NET_EM_CFG_AI_PICK_DETECT typedef struct tagNET_CFG_AI_PICK_DETECT_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????? char szIP[32]; /// ?????IP??? UINT nPort; /// ?????????? BOOL bKeyWordsEnable; /// ?????????????? int nKeyWordsNum; /// ???????? char szKeyWordsText[300][64]; /// ????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_AI_PICK_DETECT_INFO; ///@brief ?????????????????????? ??????NET_EM_CFG_DISABLE_LIGHTING_LINKAGE typedef struct tagNET_CFG_DISABLE_LIGHTING_LINKAGE_INFO { DWORD dwSize; /// ???????, ????? BOOL bEnable; /// ??????????????? char szName[32]; /// ???????????? }NET_CFG_DISABLE_LIGHTING_LINKAGE_INFO; ///@brief ??????????????????????? ??????NET_EM_CFG_DISABLE_VOICE_LINKAGE typedef struct tagNET_CFG_DISABLE_VOICE_LINKAGE_INFO { DWORD dwSize; /// ???????, ????? BOOL bEnable; /// ?????????????????? char szName[32]; /// ???????????? }NET_CFG_DISABLE_VOICE_LINKAGE_INFO; ///@brief ??????????????? typedef struct tagNET_MOTION_DETECT_WINDOW { UINT nThreshold; /// ??????????[0, 100] UINT nSensitive; /// ?????????[0, 100] int nMotionRow; /// ??????????????? int nMotionCol; /// ??????????????? BYTE nRegion[32][32]; /// ??????????? int nId; /// ???????ID?? char szName[256]; /// ??????????? char szResvered[256]; /// ??????? }NET_MOTION_DETECT_WINDOW; ///@brief ????????????????, ??????NET_EM_CFG_MOTION_DETECT typedef struct tagNET_CFG_MOTION_DETECT_INFO { DWORD dwSize; /// ???????, ????? BOOL bEnable; /// ??????????? BOOL bPtzManualEnable; /// ?????????????????????? BOOL bOsdTwinkleEnable; /// ???????OSD?????? UINT nVolumeRatio; /// ???????, 1-100, 0 ????????????? UINT nSubRatio; /// ???????????, 1-100, 0 ????????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ?????????? int nMotionDetectWindowCount; /// ?????????????????????? NET_MOTION_DETECT_WINDOW stuMotionDetectWindow[4]; /// ??????????????????? }NET_CFG_MOTION_DETECT_INFO; ///@brief ???????????, ?????? NET_EM_CFG_LEASE_RULES typedef struct tagNET_CFG_LEASE_RULES_INFO { DWORD dwSize; /// ???????, ????? BOOL bEnable; /// ?????????? int nReminderTime; /// ???????;?????????????????????????????? int nPaddingTime; /// ???????;????????????????????????????? }NET_CFG_LEASE_RULES_INFO; ///@brief ??????? EVENT_IVS_NUMBERSTAT (????????????????)????????? typedef struct tagNET_CFG_NUMBER_STAT_INFO { DWORD dwSize; /// ???????? BOOL bEnable; /// ?????????? char szName[128]; /// ???????? int nObjectTypeNum; /// ?????????????? char szObjectTypes[16][16]; /// ??????????????? int nPtzPresetId; /// ?????????, 0~65535 int nDetectRegionCount; /// ??????????? NET_POINT_EX stuDetectRegion[20]; /// ????? EM_NUMBERSTAT_TYPE emType; /// ???????????, ????"Region" ???????? "Entrance" ????????? NET_POINT_EX stuDirection[2]; /// ???????????, ????????????????????????????, ???????????????. ????????????, ????????????, ?????????????[0,8191]????. UINT nRecordInterval; /// ???????, ??????, 1~3600 UINT nReportStatisticsInterval; /// ??????????, ??????, 1~3600 UINT nMinDuration; /// ??????????, ??????, 1~3600 int nUpperLimit; /// ????????, ??????, 1~65535 int nLowerLimit; /// ????????, ??????, 1~65535 int nSensitivity; /// ??????, ????[1, 10] UINT nEnterThreshold; /// ???????????????????, 0????????? UINT nExitThreshold; /// ??????????????????, 0????????? UINT nInsideThreshold; /// ????????????????????, 0????????? UINT nPassedThreshold; /// ???????????????????, 0????????? UINT nStayMinDuration; /// ?????????, 1-1800s UINT nAreaID; /// ????ID,??????????????????? int nDetectLineNum; /// ????????????? NET_POINT_EX stuDetectLine[20]; /// ?????????? NET_TSECT stuTimeSection[8][6]; /// ??????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_NUMBER_STAT_INFO; ///@brief ????????????????, ??????NET_EM_CFG_MAN_NUM_DETECTION_EX typedef struct tagNET_CFG_NUMBER_STAT_INFO_EX { DWORD dwSize; /// ???????? NET_CFG_NUMBER_STAT_INFO stuInfo[8]; /// ???????????????? int nRetNum; /// ??????????????????? }NET_CFG_NUMBER_STAT_INFO_EX; ///@brief ?????????????????????? typedef struct tagNET_GENEAL_ATTITUDE_REGION_INFO { BOOL bEnable; /// ??????????????? UINT nRegionId; /// ????id UINT nRegionType; /// ????????: 1-??????? 2-???????? UINT nRegionDirect; /// ??????????: 0-??????? 1-???????? 2-?????? 3-??????? 4-??????? 5-?????? int nDetectRegionNum; /// ????????? NET_POINT_EX stuDetectRegion[20]; /// RegionId????????????? char szResvered[252]; /// ??????? }NET_GENEAL_ATTITUDE_REGION_INFO; ///@brief ?????????????????, ??????NET_EM_CFG_GENEAL_ATTITUDE typedef struct tagNET_CFG_GENEAL_ATTITUDE_INFO { DWORD dwSize; /// ???????? BOOL bEnable; /// ??????? char szName[128]; /// ???????? int nObjectTypeNum; /// ?????????????? char szObjectTypes[16][16]; /// ??????????????? int nPtzPresetId; /// ?????????, 0~65535 int nDetectRegionNum; /// ??????????? NET_POINT_EX stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????, ????:??(5s-60s) UINT nRecordInterval; /// ??????????, ????:??(0s-300s) UINT nSensitivity; /// ??????, ?????????????, ??1-10 UINT nRateEnable; /// ??????????????0-??????1-???? NET_EM_ATTITUDE_TYPE emAttitudeType; /// ??????? int nRegionInfoNum; /// ?????????????????????????? NET_GENEAL_ATTITUDE_REGION_INFO stuRegionInfo[16]; /// ?????????????????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_CFG_GENEAL_ATTITUDE_INFO; ///@brief ?????????, ??????NET_EM_CFG_QUEUE_DETECTION typedef struct tagNET_CFG_QUEUE_DETECTION_INFO { DWORD dwSize; /// ???????? BOOL bEnable; /// ??????? char szName[128]; /// ???????? int nObjectTypeNum; /// ?????????????? char szObjectTypes[16][16]; /// ??????????????? int nPtzPresetId; /// ?????????, 0~65535 NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? NET_POINT_EX stuDetectLine[2]; /// ????? UINT nOccupyLineMargin; /// ??????, ????A???????????, 0-100 UINT nTriggerTime; /// ?????????? NET_POINT_EX stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ??????????? int nThreshold; /// ????????? int nDetectType; /// ??????????: 0:???, 1-??????????????, 2-??????????????, 3-???????????, 4-??????????, 5-???????????? UINT nPlanID; /// ???ID UINT nAreaID; /// ????ID BOOL bStayDetectEnable; /// ??????????????????, ????????EVENT_IVS_QUEUESTAY_DETECTION int nStayMinDuration; /// ??????????????, ??????, ????[1, 1800] BOOL bManNumAlarmEnable; /// ???????????????????, ????????EVENT_IVS_QUEUENUM_DETECTION }NET_CFG_QUEUE_DETECTION_INFO; ///@brief ?????????, ??????NET_EM_CFG_QUEUE_DETECTION_EX typedef struct tagNET_CFG_QUEUE_DETECTION_INFO_EX { DWORD dwSize; /// ???????? NET_CFG_QUEUE_DETECTION_INFO stuInfo[8]; /// ????????? int nRetNum; /// ???????????? }NET_CFG_QUEUE_DETECTION_INFO_EX; ///@brief ??????????????????, ??????NET_EM_CFG_MAN_NUM_DETECTION typedef struct tagNET_CFG_MAN_NUM_DETECTION_INFO { DWORD dwSize; /// ???????? BOOL bEnable; /// ?????????? char szName[128]; /// ???????? int nObjectTypeNum; /// ?????????????? char szObjectTypes[16][16]; /// ??????????????? int nPtzPresetId; /// ?????????, 0~65535 NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? NET_POINT_EX stuDetectRegion[20]; /// ????? int nDetectRegionNum; /// ??????????? int nThreshold; /// ????????? int nDetectType; /// ??????????: 0:???, 1-??????????????, 2-??????????????, 3-???????????, 4-??????????, 5-????????????, 6-???????????????, 7-???????????????, 8-?????????,????????????????????,????????, 9-????????,???????????????????,??????????, 10-?????????, ?????????? int nDetectObjectNum; /// ?????????????? int nDetectObject[16]; /// ???????????: 0:???, 1: ??, 2: ??????, 3: ??????? UINT nSensitivity; /// ??????, ?????????????, ??1-10 int nMaxHeight; /// ???????,????cm int nMinHeight; /// ?????????,????cm UINT nPlanID; /// ???ID UINT nAreaID; /// ????ID BOOL bStayDetectEnable; /// ??????????????????, ????????EVENT_IVS_QUEUESTAY_DETECTION int nStayMinDuration; /// ??????????????, ??????, ????[1, 1800] BOOL bManNumAlarmEnable; /// ???????????????????, ????????EVENT_IVS_QUEUENUM_DETECTION UINT nMinDuration; /// ??????????????????, ??????, ???????????? UINT nReportInterval; /// ???????????????????,?0?????????, ???0 ????[0,300], ????: ?? int nPersonNum; /// ???????????? UINT nAlarmPerson[2]; /// ???????? UINT nStayReportInterval; /// ?????????????????,?0?????????, ???0 ????[0,300], ????: ?? }NET_CFG_MAN_NUM_DETECTION_INFO; ///@brief ??????????????????, ??????NET_EM_CFG_MAN_NUM_DETECTION_EX typedef struct tagNET_CFG_MAN_NUM_DETECTION_INFO_EX { DWORD dwSize; /// ???????? NET_CFG_MAN_NUM_DETECTION_INFO stuInfo[8]; /// ?????????????????? int nRetNum; /// ????????????????????? }NET_CFG_MAN_NUM_DETECTION_INFO_EX; ///@brief ??????????, ?????? NET_EM_CFG_EVENT_INFO_SPEC typedef struct tagNET_CFG_EVENT_INFO_SPEC_INFO { DWORD dwSize; /// ???????, ????? int nCategoryType; /// ???????Category?????????: 0:???Category 1:???InductiveVehicleType }NET_CFG_EVENT_INFO_SPEC_INFO; ///@brief ??????????????, ?????? NET_EM_CFG_APPLY_WORKTIME_CONFIG typedef struct tagNET_CFG_APPLY_WORKTIME_CONFIG_INFO { DWORD dwSize; /// ???????, ????? int nOptionalTimeNum; /// ?????????????? char szOptionalTime[16][16]; /// ?????????? }NET_CFG_APPLY_WORKTIME_CONFIG_INFO; ///@brief ?????????????, ?????? NET_EM_CFG_DEV_STATE_LIGHT typedef struct tagNET_CFG_DEV_STATE_LIGHT_INFO { DWORD dwSize; /// ???????, ????? BOOL bManualEnable; /// ????????????? UINT nLightColor; /// ???????: 1:???, 2:??? UINT nDelay; /// ?????????????????, ?????? }NET_CFG_DEV_STATE_LIGHT_INFO; ///@brief ??L?????????????????????? typedef struct tagNET_FPALARM_ENABLE_CONFIG_INFO { int nChannel; /// ????? int nType; /// -1 : ??? 0 : ?????????L???? 1 : ??L 2 : ???? BOOL bUploadEnable; /// ???????????????? char szResvered[124]; /// ??????? }NET_FPALARM_ENABLE_CONFIG_INFO; ///@brief ??L???????????????????, ?????? NET_EM_CFG_FPALARM_ENABLE_CONFIG typedef struct tagNET_CFG_FPALARM_ENABLE_CONFIG_INFO { DWORD dwSize; /// ???????, ????? int nFPAlarmNum; /// ??L?????????????????????????? NET_FPALARM_ENABLE_CONFIG_INFO stuFPAlarmConfig[16]; ///??L??????????????????? }NET_CFG_FPALARM_ENABLE_CONFIG_INFO; ///@brief EDID????, ?????? NET_EM_CFG_EDID typedef struct tagNET_CFG_EDID_INFO { DWORD dwSize; /// ???????, ????? UINT nFPS; /// ???????? UINT nWidth; /// ???????????? UINT nHeight; /// ??????????? }NET_CFG_EDID_INFO; ///@brief ?????????????, ?????? NET_EM_CFG_AUTO_PAN typedef struct tagNET_CFG_AUTO_PAN_INFO { DWORD dwSize; /// ???????, ????? UINT nPanSpeed; /// ????????,0~7 }NET_CFG_AUTO_PAN_INFO; ///@brief ????????? typedef enum tagEM_CONSTANT_LIGHT_COLOR { NET_EM_CONSTANT_LIGHT_COLOR_UNKNOW = -1, /// ??? NET_EM_CONSTANT_LIGHT_COLOR_BLUE, /// ??? NET_EM_CONSTANT_LIGHT_COLOR_RED, /// ??? NET_EM_CONSTANT_LIGHT_COLOR_GREEN, /// ??? NET_EM_CONSTANT_LIGHT_COLOR_PURPLE, /// ??? NET_EM_CONSTANT_LIGHT_COLOR_YELLOW, /// ??? NET_EM_CONSTANT_LIGHT_COLOR_LIGHTBLUE, /// ???? NET_EM_CONSTANT_LIGHT_COLOR_COLOURLESS /// ??? }EM_CONSTANT_LIGHT_COLOR; ///@brief ????????? typedef enum tagEM_ALARM_LIGHT_COLOR { NET_EM_ALARM_LIGHT_COLOR_UNKNOW = -1, /// ??? NET_EM_ALARM_LIGHT_COLOR_BLUE, /// ??? NET_EM_ALARM_LIGHT_COLOR_RED, /// ??? NET_EM_ALARM_LIGHT_COLOR_GREEN, /// ??? NET_EM_ALARM_LIGHT_COLOR_PURPLE, /// ??? NET_EM_ALARM_LIGHT_COLOR_YELLOW, /// ??? NET_EM_ALARM_LIGHT_COLOR_LIGHTBLUE, /// ???? NET_EM_ALARM_LIGHT_COLOR_WHITE /// ??? }EM_ALARM_LIGHT_COLOR; ///@brief ???????? typedef enum tagEM_ALARM_TONE { NET_EM_ALARM_TONE_UNKNOW = -1, /// ??? NET_EM_ALARM_TONE_QUICK, /// ?? NET_EM_ALARM_TONE_MID, /// ?? NET_EM_ALARM_TONE_SLOW /// ?? }EM_ALARM_TONE; ///@brief ???????? typedef enum tagEM_ALARM_DURATION { NET_EM_ALARM_DURATION_UNKNOW = -1, /// ??? NET_EM_ALARM_DURATION_SHORT, /// ?? NET_EM_ALARM_DURATION_MID, /// ?? NET_EM_ALARM_DURATION_LONG /// ?? }EM_ALARM_DURATION; ///@brief EAS?????????????????? typedef struct tagNET_EARS_DETECTION_CONFIG_INFO { UINT nTagTooClose; /// ???????????????0--???? 1--??? UINT nLabelProtection; /// ??????????????0?????? 1????? UINT nTxStrgenth; /// ????????0~31 UINT nAntiNoiseLevel; /// ????????0~15 UINT nHitCount; /// ??????????0~15 EM_CONSTANT_LIGHT_COLOR emConstantLightColor; /// ????????? EM_ALARM_LIGHT_COLOR emAlarmLightColor; /// ????????? EM_ALARM_TONE emAlarmTone; /// ???????? EM_ALARM_DURATION emAlarmDuration; /// ???????? UINT nRx1Threshold; /// ???????1?????0~31 UINT nRx1Gain; /// ???????1?????0~31 UINT nRx1Eigenvalue; /// ???????1???????0~15 UINT nRx1Delay; /// ???????1?????0~31 UINT nRx2Threshold; /// ???????2?????0~31 UINT nRx2Gain; /// ???????2?????0~31 UINT nRx2Eigenvalue; /// ???????2???????0~15 UINT nRx2Delay; /// ???????2?????0~31 char szReserved[1020]; /// ?????? }NET_EARS_DETECTION_CONFIG_INFO; ///@brief EAS???????????????, ?????? NET_EM_CFG_EARS_DETECTION_CONFIG typedef struct tagNET_CFG_EARS_DETECTION_CONFIG_INFO { DWORD dwSize; /// ???????, ????? UINT nRetConfigNum; /// ?????????????? UINT nMaxConfigNum; /// ????????????????????????? NET_EARS_DETECTION_CONFIG_INFO* pstEARSDetectionConfig; /// EAS??????????????? }NET_CFG_EARS_DETECTION_CONFIG_INFO; ///@brief ????????, ?????? NET_EM_CFG_STATE_DISPLAY typedef struct tagNET_CFG_STATE_DISPLAY_INFO { DWORD dwSize; /// ???????, ????? int nState; /// 0??????1??????2: ????, -1:??? char szBgName[128]; /// ?????? char szDoorStateName[128]; /// ???????? int nStateTextNum; /// ???????????????????? int nSubStateTextNum; /// ?????????????????????? char szStateText[10][128]; /// ?????????state?????????ystate?0???["???"]?????????????? char szSubStateText[10][128]; /// ???????????state????????????????????????state??2??["???????????"]??????????? BOOL bDoorplateEnable; /// ????????? }NET_CFG_STATE_DISPLAY_INFO; ///@brief ??????? typedef enum tagEM_PTZ_FUNCTION { NET_EM_PTZ_FUNCTION_UNKNOWN, /// ??? NET_EM_PTZ_FUNCTION_NONE, /// None NET_EM_PTZ_FUNCTION_SCAN, /// Scan???? NET_EM_PTZ_FUNCTION_PATTERN, /// Pattern???? NET_EM_PTZ_FUNCTION_TOUR, /// Tour???? NET_EM_PTZ_FUNCTION_AUTOPAN, /// AutoPan???? NET_EM_PTZ_FUNCTION_PRESET, /// Preset???? NET_EM_PTZ_FUNCTION_HEATMAP, /// HeatMap???? NET_EM_PTZ_FUNCTION_PATROL, /// Patrol???? }EM_PTZ_FUNCTION; ///@brief ???????? typedef enum tagEM_PTZ_TASK_NAME { NET_EM_PTZ_TASK_NAME_UNKNOWN, /// ??? NET_EM_PTZ_TASK_NAME_AUTOMOVEMENT, /// ??????? NET_EM_PTZ_TASK_NAME_IDLEMOTION, /// ???????? NET_EM_PTZ_TASK_NAME_POWERUP, /// ???????? NET_EM_PTZ_TASK_NAME_LINK, /// ??????? NET_EM_PTZ_TASK_NAME_INTELIGENCE, /// ???? NET_EM_PTZ_TASK_NAME_MANUAL, /// ??? }EM_PTZ_TASK_NAME; ///@brief ???????????, ?????? NET_EM_CFG_PTZ_MOVEMENT typedef struct tagNET_CFG_PTZ_MOVEMENT_INFO { DWORD dwSize; /// ???????, ????? EM_PTZ_FUNCTION emFunction; /// ??????? int nIndex; /// ??????,??"Function"?"HeatMap"?, Index?????????? EM_PTZ_TASK_NAME emTaskName; /// ???????? }NET_CFG_PTZ_MOVEMENT_INFO; ///@brief ??????????? typedef struct tagNET_CFG_COMM_ATTR { UINT nBaudRate; /// ???????1200??2400??4800??9600??19200??38400??57600??115200 UINT nDataBit; /// ????????5??6??7??8 char szParity[32]; /// ????????"Even", "Mark", "None", "Odd", "Space" char szStopBit[16]; /// ??????"1", "1.5", "2" char szReserved[256]; /// ?????? } NET_CFG_COMM_ATTR; ///@brief ???????????????????????????, ?????? NET_EM_CFG_COMMPORT_COMM typedef struct tagNET_COMMPORT_COMM_INFO { BOOL bEnable; /// ??????????true?????????????????????????????? int nAddress; /// ????????????????????????????????????????? char szProtocolName[32]; /// ???????? char szMode[16]; /// ????????? char szFuncName[16]; /// ???????: "None":?? "Phone":?????? "ICCard":IC?? "Pad":Pad???? "LightBox":?????? "Radar":???????????Radar "Detector":???????????????????... char szDeviceID[32]; /// ???????ID char szDirection[32]; /// ?????485??????????????? ??????Read?? ??????Write?? NET_CFG_COMM_ATTR stAttribute; /// ???????? char szReserved[512]; /// ?????? }NET_COMMPORT_COMM_INFO; ///@brief ???????????????????????? typedef struct tagNET_CFG_COMMPORT_COMM_INFO { DWORD dwSize; /// ???????, ????? UINT nCommPortCommInfoNum; /// ???????? NET_COMMPORT_COMM_INFO stCommPortInfos[128]; /// ??????????????????????????? }NET_CFG_COMMPORT_COMM_INFO; ///@brief ???????? typedef enum tagNET_EM_DISPLAY_THEMES { NET_EM_CFG_DISPLAY_THEMES_UNKNOW = -1, /// ??? NET_EM_CFG_DISPLAY_THEMES_COMMON, /// ???????? NET_EM_CFG_DISPLAY_THEMES_INDOOR /// ??????????? }NET_EM_DISPLAY_THEMES; ///@brief ???????????????, ?????? NET_EM_CFG_VDP_THEMES typedef struct tagNET_CFG_VDP_THEMES_INFO { DWORD dwSize; /// ???????, ????? NET_EM_DISPLAY_THEMES emDisplayTheme; /// ???????? }NET_CFG_VDP_THEMES_INFO; ///@brief ????????????, ?????? NET_EM_CFG_ACCESS_CONTROLLER_CONFIG typedef struct tagNET_CFG_ACCESS_CONTROLLER_CONFIG_INFO { DWORD dwSize; /// ???????, ????? BOOL bIsTypeValid; /// nType????????????????????? int nType; /// ???????????????????????????????, 0:????, 1:??? }NET_CFG_ACCESS_CONTROLLER_CONFIG_INFO; ///@brief ???????????? typedef enum tagNET_EM_CFG_OPERATE_TYPE { NET_EM_CFG_SNAP_MODE, /// ????????,??????? NET_SNAP_MODE NET_EM_CFG_DEV_CAR_COACH, /// ???????????, ??????? NET_DEV_CAR_COACH_INFO NET_EM_CFG_YUEQING_SUPPLYLIGHTING, /// ?????????????, ??????? NET_YUEQING_SUPPLYLIGHTING_INFO NET_EM_CFG_MEDIA_GLOBAL, /// ?????????????, ??????? NET_MEDIA_GLOBAL_INFO NET_EM_CFG_PARKINGSPACECELL_STATUS, /// ????????(??????????????????????), ??????? NET_PARKINGSPACECELL_STATUS_INFO NET_EM_CFG_PARKINGSPACELIGHT_STATE, /// ??????????????????, ??????? NET_PARKINGSPACELIGHT_STATE_INFO NET_EM_CFG_COAXIAL_LIGHT, /// ??????????????, ??????? NET_CFG_COAXIAL_LIGHT_INFO NET_EM_CFG_VIDEO_OUT, /// ??????????, ??????? NET_CFG_VIDEO_OUT_INFO NET_EM_CFG_MEDIA_ENCRYPT = 9, /// ??????????????,??????? NET_MEDIA_ENCRYPT_INFO,??????????,???????????-1 NET_EM_CFG_COUNTRY, /// ????/????????, ??????? NET_CFG_COUNTRY_INFO,??????????,???????????-1 NET_EM_CFG_VIDEOSTANDARD, /// ??????????, ??????? NET_CFG_VIDEOSTANDARD_INFO,??????????,???????????-1, ??????????????SECAM??? NET_EM_CFG_SERIAL_PUSH_LOG, /// ????????????????????? ??????? NET_CFG_SERIALPUSHLOG_INFO??????????????????-1 NET_EM_CFG_PRESET_SNAP_PICTURE_NUM, /// ?????????????????,??????? NET_CFG_PRESET_SNAP_PICTURE_NUM NET_EM_CFG_DOWNLOAD_ENCRYPT, /// ???????????????, ??????? NET_DOWNLOAD_ENCRYPT_INFO,??????????,???????????-1 NET_EM_CFG_LIFT_CONTROL_OPTION, /// ????????????????????? NET_CFG_LIFTCONTROL_OPTION,??????????,???????????-1 NET_EM_CFG_HEALTH_CODE, /// ????????????????????? NET_CFG_HEALTH_CODE_INFO, ??????????,???????????-1 NET_EM_CFG_RTMP, /// RTMP ???????????? NET_CFG_RTMP_INFO????????????,???????????-1 NET_EM_CFG_HUMAN_THERMOMETRY_COMPENSATE,/// ??????????????(????????????), ??????? NET_CFG_HUMAN_THERMOMETRY_COMPENSATE_INFO NET_EM_CFG_LOCAL_HEAT_IMAGE_THERMOMETRY,/// NVR??????????????????? NET_CFG_LOCAL_HEAT_IMAGE_THERMOMETRY_INFO, ??????????,???????????-1 NET_EM_CFG_ACCESSCONTROL_MEASURE_TEMP, /// ???????????, ??????? NET_CFG_ACCESSCONTROL_MEASURE_TEMP_INFO, ??????????,???????????-1 NET_EM_CFG_DEBUGINFO_REDIR, /// ????????????????, ??????? NET_CFG_DEBUGINFO_REDIR_INFO NET_EM_CFG_JT_SERVER, /// ??????????????, ??????? NET_CFG_JT_SERVER_INFO, ??????????,???????????-1 NET_EM_CFG_REMOTE_DEVICE_TIME_SYNC, /// ???????????????, ??????? NET_CFG_REMOTE_DEVICE_TIME_SYNC_INFO, ??????????,???????????-1 NET_EM_CFG_REMOTE_ALARM_OUT, /// ?????????????, ??????? NET_CFG_REMOTE_ALARMOUT_INFO NET_EM_CFG_REMAINDER_TIME_WARN, /// ??????????????,???????? NET_CFG_REMAINDER_TIME_WARN_INFO NET_EM_CFG_QR_CODE, /// ???????????????, ???????? NET_CFG_QR_CODE_INFO , ???????????-1 NET_EM_CFG_NMP_GLOBAL, /// NMP????????????, ???????NET_CFG_NMP_GLOBAL_INFO, ??????????,???????????-1 NET_EM_CFG_HEAT_IMAGING_TEMPER, /// ??????????????????????, ???????NET_CFG_HEAT_IMAGING_TEMPER_INFO NET_EM_CFG_IP_TABLE_FILTER, /// ????????????????, ???????NET_CFG_IP_TABLE_FILTER_INFO, ??????????,???????????-1 NET_EM_CFG_HB_ECOLOGY_INFO, /// ??????????????????????????, ??????? NET_CFG_HB_ECOLOGY_INFO, ??????????,???????????-1 NET_EM_CFG_LOSS_FRAME_ALARM, /// ????????????, ???????NET_CFG_LOSS_FRAME_ALARM_INFO NET_EM_CFG_ALARMIN, /// ??????????, ???????NET_CFG_ALARMIN_INFO NET_EM_CFG_USB_FLASH, /// ???USB????????????????NET_CFG_USB_FLASH, ??????????,???????????-1 NET_EM_CFG_DISPLAY_CONNECT, /// ????????????????? ???????NET_CFG_DISPLAY_CONNECT, ??????????,???????????-1 NET_EM_CFG_AI_PICK_DETECT, /// ?????????, ??????? NET_CFG_AI_PICK_DETECT_INFO NET_EM_CFG_DISABLE_LIGHTING_LINKAGE, /// ?????????????????????, ??????? NET_CFG_DISABLE_LIGHTING_LINKAGE_INFO, ??????????,???????????-1 NET_EM_CFG_DISABLE_VOICE_LINKAGE, /// ??????????????????????, ??????? NET_CFG_DISABLE_VOICE_LINKAGE_INFO, ??????????,???????????-1 NET_EM_CFG_MOTION_DETECT, /// ????????????, ??????? NET_CFG_MOTION_DETECT_INFO NET_EM_CFG_SNAP_FPS, /// ????????????????? NET_CFG_SNAP_FPS NET_EM_CFG_STREAM_LOCK, /// ????????????, ??????? NET_CFG_STREAM_LOCK_INFO, ??????????,???????????-1 NET_EM_CFG_CAMERA_STREAM_LOCK, /// ????????????, ??????? NET_CFG_CAMERA_STREAM_LOCK_INFO NET_EM_CFG_EAR_DETECTION_CONFIG, /// EAS RF????????, ??????? NET_CFG_EAR_DETECTION_CONFIG_INFO NET_EM_CFG_SOUND_CONFIG, /// ????????, ??????? NET_CFG_SOUND_CONFIG_INFO NET_EM_CFG_PASSENGER_FLOW_CONFIG, /// ???????????????, ??????? NET_CFG_PASSENGER_FLOW_CONFIG_INFO NET_EM_CFG_TRAFFIC_LAMP_CONFIG, /// ?????????, ??????? NET_CFG_TRAFFIC_LAMP_CONFIG_INFO, ??????????,???????????-1 NET_EM_CFG_LOCAL_INFO, /// ?????????????????????, ??????? NET_CFG_LOCAL_INFO NET_EM_CFG_DISABLE_BEEP_LINKAGE, /// ???????????????????, ??????? NET_CFG_DISABLE_BEEP_LINKAGE_INFO, ??????????,???????????-1 NET_EM_CFG_AREA_ARM_MODE, /// Area??????????, ??????? NET_CFG_AREA_ARM_MODE_INFO, ??????????,???????????-1 NET_EM_CFG_STORE_ENCRYPT, /// ?????????????, ??????? NET_STORE_ENCRYPT_INFO,??????????,???????????-1 NET_EM_CFG_VEHICLE_ALARM_LINK_PARAM, /// ???????????????????, ??????? NET_CFG_VEHICLE_ALARM_LINK_PARAM_INFO,??????????,???????????-1 NET_EM_CFG_MOBILE_PHONE_APPLICATION, /// ???push notification????, ??????? NET_CFG_MOBILE_PHONE_APPLICATION_INFO,??????????,???????????-1 NET_EM_CFG_VSP_CGI, /// CGI????????????, ??????? NET_CFG_VSP_CGI_INFO,??????????,???????????-1 NET_EM_CFG_VSP_NTP_SERVER, /// NTP Server????????????, ??????? NET_CFG_CFG_VSP_NTP_SERVER_INFO,??????????,???????????-1 NET_EM_CFG_DEVICE_DISCOVERY, /// ???????????, ??????? NET_CFG_DEVICE_DISCOVERY_INFO,??????????,???????????-1 NET_EM_CFG_LLDP_GLOBAL, /// LLDPConfig ???????, ??????? NET_CFG_LLDP_GLOBAL_INFO,??????????,???????????-1 NET_EM_CFG_LOGIN_AUTH_CTRL, /// ?????????????????, ??????? NET_CFG_LOGIN_AUTH_CTRL_INFO,??????????,???????????-1 NET_EM_CFG_DISPLAY_INFORMATION, /// ?????????, ??????? NET_CFG_DISPLAY_INFORMATION_INFO,??????????,???????????-1 NET_EM_CFG_LIGHT_COLOR_RECOVER, /// ?????????, ??????? NET_CFG_LIGHT_COLOR_RECOVER_INFO NET_EM_CFG_FLEX_STREAM, /// ???????????????, ??????? NET_CFG_FLEX_STREAM_INFO NET_EM_CFG_LINE_PILE_INFO, /// ????????????????????, ??????? NET_CFG_LINE_PILE_INFO_LIST,??????????,???????????-1 NET_EM_CFG_CONTROL_CASE, /// ?????????????????, ??????? NET_CFG_CONTROL_CASE_INFO, ??????????,???????????-1 NET_EM_CFG_LAMP_EXTERNAL_DEVICE, /// ???????????????, ??????? NET_CFG_LAMP_EXTERNAL_DEVICE_INFO, ??????????,???????????-1 NET_EM_CFG_HOSPITAL_LIGHT_CONTROL_DEVICE, /// ?????????????485??????????????, ??????? NET_CFG_HOSPITAL_LIGHT_CONTROL_DEVICE_INFO, ??????????,???????????-1 NET_EM_CFG_EVENT_INFO_SPEC, /// ??????????, ??????? NET_CFG_EVENT_INFO_SPEC_INFO NET_EM_CFG_APPLY_WORKTIME_CONFIG, /// ??????????????, ??????? NET_CFG_APPLY_WORKTIME_CONFIG_INFO??????????,???????????-1 NET_EM_CFG_DEV_STATE_LIGHT, /// ?????????????, ??????? NET_CFG_DEV_STATE_LIGHT_INFO, ??????????,???????????-1 NET_EM_CFG_FPALARM_ENABLE_CONFIG, /// ??L???????????????????, ??????? NET_CFG_FPALARM_ENABLE_CONFIG_INFO, ??????????,???????????-1 NET_EM_CFG_FREQUENCY_ANALYSIS, /// ???????????????, ??????? NET_CFG_FREQUENCY_ANALYSIS_INFO, ??????????,???????????-1 NET_EM_CFG_INTELLI_SCHEME_TOUR, /// ????????????????????, ??????? NET_CFG_CFG_INTELLI_SCHEME_TOUR_INFO, ??????????,???????????-1 NET_EM_CFG_EDID, /// EDID????, ??????? NET_CFG_EDID_INFO NET_EM_CFG_AUTO_PAN, /// ?????????????, ??????? NET_CFG_AUTO_PAN_INFO NET_EM_CFG_EARS_DETECTION_CONFIG, /// EAS???????????????, ??????? NET_CFG_EARS_DETECTION_CONFIG_INFO NET_EM_CFG_STATE_DISPLAY, /// ????????, ??????? NET_CFG_STATE_DISPLAY_INFO, ??????????,???????????-1 /*********OSD???????????*************************************************************************************************/ NET_EM_CFG_CHANNELTITLE = 1000, /// ??????????????????????????? NET_OSD_CHANNEL_TITLE,????????????emOsdBlendType???????? NET_EM_CFG_TIMETITLE, /// ?????????????????????????? NET_OSD_TIME_TITLE,????????????emOsdBlendType???????? NET_EM_CFG_CUSTOMTITLE, /// ???????????????????????????? NET_OSD_CUSTOM_TITLE,????????????stuCustomTitle.emOsdBlendType???????? NET_EM_CFG_CUSTOMTITLETEXTALIGN, /// ???????????????????????????????? NET_OSD_CUSTOM_TITLE_TEXT_ALIGN NET_EM_CFG_OSDCOMMINFO, /// ??????????????????????? NET_OSD_COMM_INFO NET_EM_CFG_OSD_PTZZOOM, /// ?????????????????? NET_OSD_PTZZOOM_INFO NET_EM_CFG_GPSTITLE, /// ????GPS??????????????????? NET_OSD_GPS_TITLE NET_EM_CFG_OSD_NUMBERSTATPLAN, /// ?????????????OSD????, ???NumberStatPlan???????(???)???????????NET_OSD_NUMBER_STATPLAN NET_EM_CFG_GPSSTARNUM_OSD, /// GPS??????OSD????, ??????? NET_CFG_GPSSTARNUM_OSD_INFO NET_EM_CFG_PICTURETITLE, /// ??????,??????? NET_OSD_PICTURE_TITLE NET_EM_CFG_OSD_FACEFLOWSTAT, /// ??????????OSD???????????? NET_OSD_FACEFLOWSTAT_INFO NET_EM_CFG_PTZ_PRESET, /// ???????????,??????? NET_OSD_CFG_PTZ_PRESET NET_EM_CFG_PTZ_PATTERN, /// ?????????????????,??????? NET_OSD_CFG_PTZ_PATTERN NET_EM_CFG_PTZ_RS485_DETECT, /// ???RS485??????????????,??????? NET_OSD_CFG_PTZ_RS485_DETECT NET_EM_CFG_PTZ_COORDINATES, /// ??????????????????,??????? NET_OSD_CFG_PTZ_COORDINATES NET_EM_CFG_PTZ_DIRECTION, /// ??????????????????,??????? NET_OSD_CFG_PTZ_DIRECTION NET_EM_CFG_TEMPERATURE, /// ??????????????????,??????? NET_OSD_CFG_TEMPERATURE NET_EM_CFG_COVERS, /// ?????,??????? NET_OSD_CFG_COVERS NET_EM_CFG_USER_DEF_TITLE, /// ????????OSD??????????? NET_OSD_USER_DEF_TITLE DHOP??? NET_EM_CFG_SNAP_OSD, /// ???OSD????, ??????? NET_CFG_SNAP_OSD NET_EM_CFG_OBJECT_DETECT_SNAP_SHOT, /// IPC??????(??????)??????OSD????, ??????? NET_CFG_OBJECT_DETECT_SNAP_SHOT /*********encode ???????*************************************************************************************************/ NET_EM_CFG_ENCODE_VIDEO = 1100, /// ?????????????????????????? NET_ENCODE_VIDEO_INFO NET_EM_CFG_ENCODE_VIDEO_PACK, /// ??????????????????????????? NET_ENCODE_VIDEO_PACK_INFO NET_EM_CFG_ENCODE_VIDEO_SVC, /// ??????????SVC???????????? NET_ENCODE_VIDEO_SVC_INFO NET_EM_CFG_ENCODE_VIDEO_PROFILE, /// ??????????profile???????????? NET_ENCODE_VIDEO_PROFILE_INFO NET_EM_CFG_ENCODE_AUDIO_COMPRESSION, /// ????????????????????????? NET_ENCODE_AUDIO_COMPRESSION_INFO NET_EM_CFG_ENCODE_AUDIO_INFO, /// ?????????????????????? NET_ENCODE_AUDIO_INFO NET_EM_CFG_ENCODE_SNAP_INFO, /// ?????????????????? NET_ENCODE_SNAP_INFO NET_EM_CFG_ENCODE_SNAPTIME, /// ???????????????????????? NET_ENCODE_SNAP_TIME_INFO NET_EM_CFG_ENCODE_CHANNELTITLE, /// ??????????????????? NET_ENCODE_CHANNELTITLE_INFO NET_EM_CFG_ENCODE_DELAY_MODE, /// ??????????????? ??????? NET_ENCODE_DELAY_MODE_INFO NET_EM_CFG_ENCODE_SIGNAL_FORMAT, /// ?????????????????????????? NET_ENCODE_SIGNAL_FORMAT_INFO /**********??????????***************************************************************************************************/ NET_EM_CFG_AUDIOIN_SOURCE = 1200, /// ??????????????????????? NET_ENCODE_AUDIO_SOURCE_INFO NET_EM_CFG_AUDIOIN_DENOISE, /// ??????????????????? NET_AUDIOIN_DENOISE_INFO NET_EM_CFG_AUDIOIN_VOLUME, /// ??????????????????????? NET_AUDIOIN_VOLUME_INFO NET_EM_CFG_AUDIOOUT_VOLUME, /// ?????????????????????? NET_AUDIOOUT_VOLUME_INFO NET_EM_CFG_AUDIOOUT_MODE, /// ????????????, ??????? NET_AUDIOOUT_MODE_INFO NET_EM_CFG_LOOPPLAYBACK_AUDIOALARM, /// ????????????????????????? NET_LOOPPLAYBACK_AUDIOALARM_INFO,??????????,???????????-1 NET_EM_CFG_REMOTE_AUDIO_OUTPUT_VOLUME, /// ??????????, ??????? NET_CFG_REMOTE_AUDIO_OUTPUT_VOLUME_INFO /**********videoin ???????***********************************************************************************************/ NET_EM_CFG_VIDEOIN_SWITCHMODE = 1300, /// ?????????????????? NET_VIDEOIN_SWITCH_MODE_INFO NET_EM_CFG_VIDEOIN_COLOR, /// ?????????????????????? NET_VIDEOIN_COLOR_INFO NET_EM_CFG_VIDEOIN_IMAGE_OPT, /// ??????????????????? NET_VIDEOIN_IMAGE_INFO NET_EM_CFG_VIDEOIN_STABLE, /// ?????????????????? NET_VIDEOIN_STABLE_INFO NET_EM_CFG_VIDEOIN_IRISAUTO, /// ?????????????????? NET_VIDEOIN_IRISAUTO_INFO NET_EM_CFG_VIDEOIN_IMAGEENHANCEMENT, /// ?????????????????? NET_VIDEOIN_IMAGEENHANCEMENT_INFO NET_EM_CFG_VIDEOIN_EXPOSURE_NORMAL, /// ?????????????????????? NET_VIDEOIN_EXPOSURE_NORMAL_INFO NET_EM_CFG_VIDEOIN_EXPOSURE_OTHER, /// ??????????????????????? NET_VIDEOIN_EXPOSURE_OTHER_INFO NET_EM_CFG_VIDEOIN_EXPOSURE_SHUTTER, /// ?????????????????? NET_VIDEOIN_EXPOSURE_SHUTTER_INFO NET_EM_CFG_VIDEOIN_BACKLIGHT, /// ???????????????? NET_VIDEOIN_BACKLIGHT_INFO NET_EM_CFG_VIDEOIN_INTENSITY, /// ???????????????????????????? NET_VIDEOIN_INTENSITY_INFO NET_EM_CFG_VIDEOIN_LIGHTING, /// ????????????????? NET_VIDEOIN_LIGHTING_INFO NET_EM_CFG_VIDEOIN_DEFOG, /// ??????????????? NET_VIDEOIN_DEFOG_INFO NET_EM_CFG_VIDEOIN_FOCUSMODE, /// ????????????????? NET_VIDEOIN_FOCUSMODE_INFO NET_EM_CFG_VIDEOIN_FOCUSVALUE, /// ?????????????????? NET_VIDEOIN_FOCUSVALUE_INFO NET_EM_CFG_VIDEOIN_WHITEBALANCE, /// ????????????????? NET_VIDEOIN_WHITEBALANCE_INFO NET_EM_CFG_VIDEOIN_DAYNIGHT, /// ????????????????? NET_VIDEOIN_DAYNIGHT_INFO NET_EM_CFG_VIDEOIN_DAYNIGHT_ICR, /// ?????ICR???????????????????? NET_VIDEOIN_DAYNIGHT_ICR_INFO NET_EM_CFG_VIDEOIN_SHARPNESS, /// ??????????????? NET_VIDEOIN_SHARPNESS_INFO NET_EM_CFG_VIDEOIN_COMM_DENOISE, /// ?????????????????? NET_VIDEOIN_DENOISE_INFO NET_EM_CFG_VIDEOIN_3D_DENOISE, /// 3D ???????????????? NET_VIDEOIN_3D_DENOISE_INFO NET_EM_CFG_VIDEOIN_FOCUSEX, /// ?????????????????? NET_VIDEOIN_FOCUS_INFO_EX NET_EM_CFG_VIDEOIN_LIGHTINGEX, /// ?????????????????????? NET_VIDEOIN_LIGHTINGEX_INFO NET_EM_CFG_VIDEOIN_VIEWRANGESTATUS, /// ???????????????????? NET_CFG_VIDEOIN_VIEWRANGESTATUS_INFO NET_EM_CFG_VIDEOIN_LIGHTING_SCHEME, /// ?????, ??????? NET_CFG_VIDEOIN_LIGHTING_SCHEME_INFO NET_EM_CFG_VIDEOIN_ALARM_LIGHTING, /// ??????, ??????? NET_CFG_VIDEOIN_ALARM_LIGHTING_INFO NET_EM_CFG_VIDEOIN_FACE_AUTOEXPOSURE, /// ????????????????????????????, ??????? NET_CFG_VIDEOIN_FACE_AUTOEXPOSURE_INFO /***********??????????*****************************************************************************************/ NET_EM_CFG_ENCODE_PLAN = 1400, /// ????????????, ??????? NET_ENCODE_PLAN_INFO NET_EM_CFG_COMPOSE_CHANNEL, /// ??????????, ??????? NET_COMPOSE_CHANNEL_INFO NET_EM_CFG_BURN_PARAM, /// ???????, ??????? NET_BURN_PARAM_INFO NET_EM_CFG_COMPOSE_PLAN, /// ??????????????????, ??????? NET_COMPOSE_PLAN_INFO /**********???????????????**************************************************************************************/ NET_EM_CFG_ALARM_SOUND = 1500, /// ????????????????, ??????? NET_ALARM_SOUND_INFO NET_EM_CFG_LOCAL_EXT_ALARM = 1501, /// ????????????,??????? NET_LOCAL_EXT_ALARM_INFO,?????? NET_EM_CFG_REMOTE_ALARM_BELL = 1502, /// ??????????????, ??????? NET_CFG_REMOTE_ALARM_BELL_INFO NET_EM_CFG_FIRE_WARNINGMODE = 1503, /// ?????????, ??????? NET_FIREWARNING_MODE_INFO NET_EM_CFG_FIRE_WARNING = 1504, /// ???????????(????????????????????), ???????? NET_FIRE_WARNING_INFO NET_EM_CFG_COAXIAL_ALARMLOCAL = 1506, /// CVI ?????????????????? NET_COAXIAL_ALARMLOCAL_INFO /**********??????????????**************************************************************************************/ NET_EM_CFG_ACCESS_POINT = 1600, /// ????WiFi?????????(?????), ??????? NET_NETAPP_ACCESSPOINT NET_EM_CFG_LDAP, /// LDAP????, ??????? NET_NETAPP_LDAP NET_EM_CFG_SYSLOG, /// Syslog????????, ??????? NET_NETAPP_SYSLOG NET_EM_CFG_NETAUTOADAPTTRANSIT, /// ?????????????????,???????NET_NETAUTOADAPTTRANSIT NET_EM_CFG_WIRELESS, /// ????????(??????3G/4G????)??????, ??????? NET_NETAPP_WIRELESS NET_EM_CFG_WIRELESS_EXPERT, /// ??????????????????, ??????? NET_NETAPP_WIRELESS_EXPERT NET_EM_CFG_IPV6, /// IPV6???????????? NET_CFG_IPV6_INFO, ??????????????????-1 /**************???????????**************************************************************************************/ NET_EM_CFG_NAS = 1700, /// NAS ????, ??????? NET_NAS_INFO NET_EM_CFG_PPPOE, /// PPPOE ???????????? NET_PPPOE_INFO NET_EM_CFG_EMAIL, /// Email ???????????? NET_EMAIL_INFO NET_EM_CFG_DDNS, /// DDNS ???????????? NET_DDNS_INFO /**************SCADA????????**************************************************************************************/ NET_EM_CFG_SCADA_PROTOCOLS_MANAGER = 1800, /// ??????????????????? NET_SCADA_PROTOCOLS_MANAGER NET_EM_CFG_SCADA_DEVICEINFO_CFG, /// ?????????????????? NET_SCADA_DEVICEINFO_CFG NET_EM_CFG_SCADA_CONTROLLER_SITE, /// ?????????????????? NET_CFG_SCADA_CONTROLLER_SITE_INFO /**************NetApp????????*************************************************************************************/ NET_EM_CFG_NETAPP_LINK_LAYER_VPN = 1900, /// ??????VPN????,??????? NET_NETAPP_LINK_LAYER_VPN_CFG NET_EM_CFG_NETAPP_SSHD, /// SSH?????????,??????? NET_NETAPP_SSHD_CFG NET_EM_CFG_NETAPP_COMMUNICATION_LIST, /// ???????, ??????? NET_NETAPP_COMMUNICATION_LIST_CFG, ??????????,???????????-1 NET_EM_CFG_NETAPP_WEB, /// Web??????????, ??????? NET_NETAPP_WEB_CFG /**************????????????***********************************************************************************/ NET_EM_CFG_VSP_CHINA_TOWER = 2000, /// (??????????????)??????????????????,??????? NET_VSP_CHINA_TOWER NET_EM_CFG_VSP_SHDXJT = 2001, /// ??????????????????????,??????? NET_VSP_SHDXJT NET_EM_CFG_VSP_CONSUME, /// ????????????????? NET_CFG_VSP_CONSUME????????????????????-1 /**********???????????*******************************************************************************************/ NET_EM_CFG_STEREO_CALIBRATE = 2100, /// ???????, ???????NET_STEREO_CALIBRATE_INFO NET_EM_CFG_STEREO_CALIBRATEMATRIX_MULTISENSOR, /// ????????????CalibrateMatrix(MultiSensor), ???????? NET_MULTI_SENSOR_INFO NET_EM_CFG_CROWDDISTRIMAP_CALIBRATE, /// ?????????????, ???????? NET_CROWDDISTRIMAP_CALIBRATE_INFO NET_EM_CFG_TRAFFIC_NOPASSING, /// ???????????, ???????? NET_TRAFFIC_NOPASSING_INFO NET_EM_CFG_FIGHT_CALIBRATE, /// ????????, ???????? NET_FIGHT_CALIBRATE_INFO NET_EM_CFG_FACE_RECOGNITION_ALARM, /// ?????????????????????, ??????? NET_FACE_RECOGNITION_ALARM_INFO NET_EM_CFG_STEREO_CALIBRATEMATRIX_MULTIMODE, /// ???????????? CalibrateMatrix(MultiMode), ???????? NET_CALIBRATEMATRIX_MULTIMODE_INFO NET_EM_CFG_AUTO_SNAP_SCHEDULE, /// ????????????????, ??????? NET_CFG_AUTO_SNAP_SCHEDULE_INFO NET_EM_CFG_PARKING_TIMEOUT_DETECT, /// ?????????????, ??????? NET_CFG_PARKING_TIMEOUT_DETECT NET_EM_CFG_SMART_MOTION_DETECT, /// ?????????????, ??????? NET_CFG_SMART_MOTION_DETECT NET_EM_CFG_EXTERNAL_ANALYSE_TASK_CAPS, /// ???????????????????, ??????? NET_CFG_EXTERNAL_ANALYSE_TASK_CAPS, ???????-1 NET_EM_CFG_TIMEDIV_TOUR_CONFIG, /// ???????????? ??????? NET_CFG_TIMEDIV_TOUR_CONFIG_INFO ???????-1 NET_EM_CFG_TRAFFIC_TOLL_GATE, /// ??????????????, ??????? NET_CFG_TRAFFIC_TOLL_GATE_INFO NET_EM_CFG_NUMBER_STAT, /// ????????????????, ??????? NET_CFG_NUMBER_STAT_INFO NET_EM_CFG_GENEAL_ATTITUDE, /// ?????????????????, ??????? NET_CFG_GENEAL_ATTITUDE_INFO NET_EM_CFG_QUEUE_DETECTION, /// ?????????, ??????? NET_CFG_QUEUE_DETECTION_INFO NET_EM_CFG_MAN_NUM_DETECTION, /// ??????????????????, ??????? NET_CFG_MAN_NUM_DETECTION_INFO NET_EM_CFG_NUMBER_STAT_EX, /// ????????????????, ??????? NET_CFG_NUMBER_STAT_INFO_EX NET_EM_CFG_QUEUE_DETECTION_EX, /// ?????????, ??????? NET_CFG_QUEUE_DETECTION_INFO_EX NET_EM_CFG_MAN_NUM_DETECTION_EX, /// ??????????????????, ??????? NET_CFG_MAN_NUM_DETECTION_INFO_EX /**********???????***********************************************************************************************/ NET_EM_CFG_RADAR = 2200, /// ??????????????? DEV_RADAR_CONFIG NET_EM_CFG_RADAR_RFIDCARD = 2201, /// ???RFID?????????????????????,???????????-1,??????? NET_CFG_RADAR_RFIDCARD_INFO NET_EM_CFG_RADAR_REMOTE_CARD = 2202, /// ???????RFID????????????, ??????? NET_CFG_RADAR_REMOTE_CARD_INFO NET_EM_CFG_RADAR_RFID_READ_DISTANCE = 2203, /// RFID??????????, ??????? NET_CFG_RADAR_RFID_READ_DISTANCE_INFO NET_EM_CFG_RADAR_STATIC_BACKGROUND = 2204, /// ???????????????????????????, ??????????,???????????-1, ??????? NET_CFG_RADAR_STATIC_BACKGROUND_INFO NET_EM_CFG_FIND_DEVICE_LIGHT = 2205, /// ???????????, ??????????,???????????-1, ??????? NET_CFG_FIND_DEVICE_LIGHT_INFO NET_EM_CFG_EVENT_NOTIFICATION_DELAY = 2206, /// ?????????????, ??????????,???????????-1, ??????? NET_CFG_EVENT_NOTIFICATION_DELAY_INFO /**********????????????????***********************************************************************************/ NET_EM_CFG_VTH_PASSWORD = 2300, /// ????????????????,??????? NET_CFG_VTH_PASSWORD_INFO NET_EM_CFG_REGISTAR = 2301, /// ????????????,??????? NET_CFG_REGISTAR_INFO NET_EM_CFG_SIP = 2302, /// sip????, ??????? NET_CFG_SIPSERVER_INFO NET_EM_CFG_DEVICE_LOGIN_INFO = 2303, /// ??????????????????? NET_CFG_DEVICE_LOGIN_INFO /**********?????????????***************************************************************************************/ NET_EM_CFG_AELENSMASK = 2400, ///?????????????????????NET_CFG_AELENSMASK_INFO NET_EM_CFG_ULTRASONIC = 2500, ///??????????????????NET_CFG_ULTRASONIC_INFO /**********???????????????***************************************************************************************/ NET_EM_CFG_ARMSCHEDULE = 2600, /// ??????????????????? NET_CFG_ARMSCHEDULE_INFO NET_EM_CFG_CID_REPORT = 2601, /// CID????????, ???????NET_CFG_CID_REPORT_INFO NET_EM_CFG_VSP_HONEYWELL = 2602, /// ?????????????????????NET_CFG_VSP_HONEYWELL_INFO NET_EM_CFG_KBUSER_PASSWORD = 2603, /// ??????????????????????????????????? NET_CFG_KBUSER_PASSWORD /**********????????????????***********************************************************************************/ NET_EM_CFG_RECORDEXTRA = 3610, /// ??????????????, ??????? NET_CFG_RECORDEXTRA_INFO NET_EM_CFG_AUTO_RECORDBACKUP_RESTORE = 3611, /// ????????????, ??????? NET_CFG_AUTORECORDBACKUPRESTORE_INFO NET_EM_CFG_FACESNAPSHOT = 3612, /// IPC?????????????? ??????? NET_CFG_FACESNAPSHOT_INFO NET_EM_CFG_TIME_RECORDBACKUP_RESTORE = 3613, /// ???????????????, NET_CFG_TIME_RECORDBACKUP_RESTORE_INFO; ???????-1 NET_EM_CFG_RECORD_DOWNLOAD_SPEED_ALL = 3614, /// ??????????????, ??????? NET_CFG_RECORD_DOWNLOAD_SPEED_ALL_INFO,??????,???????-1 /**********?????????????***************************************************************************************/ NET_EM_VIDEODIAGNOSIS_PROJECT = 3700, /// ????????????, ??????? NET_VIDEODIAGNOSIS_PROJECT_INFO NET_EM_CFG_VIDEO_DIAGNOSIS_PROJECT_MONTH = 3701,/// ?????????????????, ??????? NET_CFG_VIDEODIAGNOSIS_PROJECT_MONTH_INFO,???????-1 /***********???????????******************************************************************************************/ NET_EM_CFG_POSITIONREPORTPOLICY = 3800, /// ????GPS??????????????????, ??????? NET_CFG_POSITIONREPORTPOLICY_INFO NET_EM_CFG_VEHICLE_WORKTIMESCHEDULE, /// ?????????????????????? NET_CFG_VEHICLE_WORKTIMESCHEDULE_INFO NET_EM_CFG_VEHICLE_LOAD, /// ????????????, ??????? NET_CFG_VEHICLE_LOAD_INFO NET_EM_CFG_TICKETPRINT, /// ??????????, ??????? NET_CFG_TICKETPRINT_INFO NET_EM_CFG_VEHICLEAUTOMAIN, /// ACC?????????, ??????? NET_CFG_VEHICLEAUTOMAIN_INFO NET_EM_CFG_VEHICLENETSERVER, /// ???????????????, ??????? NET_CFG_VEHICLENETSERVER_INFO NET_EM_CFG_IMSIBIND, /// ?????????IMSI??????, ??????? NET_CFG_IMSIBIND_INFO NET_EM_CFG_VEHICLE_MAINTAINCE, /// ??????????????,??????? NET_CFG_VEHICLE_MAINTAINCE_INFO NET_EM_CFG_SAFETYABNORMAL_ALARM, /// ?????????????, ??????? NET_CFG_SAFETYABNORMAL_INFO NET_EM_CFG_VEHICLE_COLLISION, /// ???????????, ??????? NET_CFG_VEHICLE_COLLISION_INFO NET_EM_CFG_VEHICLE_TURNOVER, /// ??????????, ??????? NET_CFG_VEHICLE_TURNOVER_INFO NET_EM_CFG_VEHICLE_SUDDENTURN, /// ???????????, ??????? NET_CFG_VEHICLE_SUDDENTURN_INFO NET_EM_CFG_VEHICLE_ACCELERATION, /// ?????????????, ??????? NET_CFG_VEHICLE_ACCELERATION_INFO NET_EM_CFG_VEHICLE_DECELERATION, /// ?????????????, ??????? NET_CFG_VEHICLE_DECELERATION_INFO NET_EM_CFG_VEHICLE_ACC, /// ACC ???????????, ??????? NET_CFG_VEHICLE_ACC_INFO NET_EM_CFG_VEHICLE_DSMALARMCONTROL, /// DSM???????????????, ??????? NET_CFG_VEHICLE_DSMALARMCONTROL_INFO NET_EM_CFG_VEHICLE_NOT_INSPECT_ALARM, /// ???????????????????????????? ??????? NET_CFG_VEHICLE_NOT_INSPECT_ALARM_INFO ??????,???????-1 /***********??????????******************************************************************************************/ NET_EM_CFG_ACCESSCTL_BLACKLIST = 3900, /// ?????????????????????????? NET_CFG_ACCESSCTL_BLACKLIST NET_EM_CFG_ACCESSCTL_BLACKLIST_LINK = 3901, /// ??????????????????????,??????? NET_CFG_ALARM_MSG_HANDLE NET_EM_CFG_ACCESSCTL_SPECIALDAY_GROUP = 3902, /// ??????????????, ??????? NET_CFG_ACCESSCTL_SPECIALDAY_GROUP_INFO NET_EM_CFG_ACCESSCTL_SPECIALDAYS_SCHEDULE = 3903, /// ??????????????, ??????? NET_CFG_ACCESSCTL_SPECIALDAYS_SCHEDULE_INFO NET_EM_CFG_ACCESSCTL_AUTH_MODE = 3904, /// ??????????????????????????NET_CFG_ACCESSCTL_AUTH_MODE NET_EM_CFG_ACS_FACE_RECOGNITION_SCHEME = 3905, /// ????????????????,??????? NET_CFG_ACS_FACE_RECOGNITION_SCHEME NET_EM_CFG_FORBIDDEN_ADVERT_PLAY = 3906, /// ?????????????, ??????? NET_CFG_FORBIDDEN_ADVERT_PLAY, ??????????????-1 NET_EM_CFG_BGY_CUSTOMERCFG = 3907, /// ???????????????, ??????? NET_CFG_BGY_CUSTOMERCFG, ??????????????-1 NET_EM_CFG_ACCESSCTL_KEYBINDINGINFOCFG = 3908, /// ?????????????????????, ??????? NET_CFG_ACCESSCTL_KEYBINDINGINFOCFG, ??????????????-1 NET_EM_CFG_HOST_DEVICE = 3909, /// ?????????????????, ??????? NET_CFG_HOST_DEVICE, ??????????????-1 NET_EM_CFG_VTH_ALPA_CLOUD = 3910, /// ?????Alpa??????????????, ??????? NET_CFG_VTH_ALPA_CLOUD, ??????? ???????-1 NET_EM_CFG_VTH_FETCHINFO = 3911, /// ??????????????????????? NET_CFG_VTH_FETCHINFO?? ??????? ???????-1 NET_EM_CFG_CUSTOMER_DEVICEINFO = 3912, /// ???????????????????????, ??????? NET_CFG_CUSTOMER_DEVICEINFO, ??????? ???????-1 NET_EM_CFG_BLUE_TOOTH = 3913, /// ????????????????? ??????? NET_CFG_BLUE_TOOTH, ??????? ???????-1 NET_EM_CFG_TALK_BACK = 3914, /// ???????????????????????? NET_CFG_TALKBACK NET_EM_CFG_FORNT_COVER_DISPLAY_TEXT = 3915, /// ????????????????????????? ??????? NET_CFG_FORNT_COVER_DISPLAY_TEXT, ??????? ???????-1 NET_EM_CFG_CITIZENPICTURECOMPARE = 3916, /// ???????????????????????? NET_CFG_CITIZENPICTURECOMPARE ?????? ???????-1 NET_EM_CFG_VIDEOTALK_SIGNLIGHT = 3917, /// ??????????????????????????? NET_CFG_VIDEOTALK_SIGNLIGHT NET_EM_CFG_ESD_COMMSETTING = 3918, /// ESD???????????????? ??????? NET_CFG_ESD_COMMSETTING ?????? ???????-1 NET_EM_CFG_BSCCUSTOM = 3919, /// ?????????? ??????? NET_CFG_BSCCUSTOM NET_EM_CFG_ACCESS_FACE_RECOGNITION = 3920, /// ???????????????????????????? NET_CFG_ACCESS_FACE_RECOGNITION NET_EM_CFG_CONSUMPTION_STRATEGY = 3921, /// ??????????, ??????? NET_CFG_CONSUMPTION_STRATEGY_INFO, ?????? ???????-1 NET_EM_CFG_WIEGAND = 3922, /// ????????, ??????? NET_CFG_WIEGAND_INFO, ?????? ???????-1 NET_EM_CFG_CUSTOM_WEATHER_INFO = 3923, /// ??????????????????????, ??????? NET_CFG_CUSTOM_WEATHER_INFO ?????? ???????-1 NET_EM_CFG_HOSPITAL_LOGO = 3924, /// ??Logo????, ?????????????????Logo??, ??????? NET_CFG_HOSPITAL_LOGO_INFO, ??????????????-1 NET_EM_CFG_ACCESS_DISPLAY = 3925, /// ?????????????, ??????? NET_CFG_ACCESS_DISPLAY_INFO, ??????, ???????-1 NET_EM_CFG_ACCESS_CONFIG = 3926, /// ?????????????, ??????? NET_CFG_ACCESS_CONFIG_INFO, ??????, ???????-1 NET_EM_CFG_ACCESSCTL_HOLIDAY_GROUP = 3927, /// (????)??????????????, ??????? NET_CFG_ACCESSCTL_HOLIDAY_GROUP_INFO ??????? ???????-1 NET_EM_CFG_ACCESSCTL_HOLIDAY_SCHEDULE = 3928, /// (????)?????????????, ??????? NET_CFG_ACCESSCTL_HOLIDAY_SCHEDULE_INFO ??????? ???????-1 NET_EM_CFG_ICBC_DOOR_PARAS = 3929, /// ??????????????????NET_CFG_ICBC_DOOR_PARAS ??????? ???????-1 NET_EM_CFG_WORK_SCENE = 3930, /// ?????????????????????????? ????????? ???????NET_CFG_WORK_SCENE_INFO ??????? ???????-1 NET_EM_CFG_CUSTOMER_DEV_SETTING = 3931, /// ??????????"??????"????, ??????? NET_CFG_CUSTOMER_DEV_SETTING_INFO ??????? ???????-1 NET_EM_CFG_CUSTOMER_ON_DUTY_MODEL_INFO = 3932, /// ??????? ?????????????, ??????? NET_CFG_CUSTOMER_ON_DUTY_MODEL_INFO ??????, ???????-1 NET_EM_CFG_CUSTOMER_TEMP_POLICY, /// ???????????, ??????? NET_CFG_CUSTOMER_TEMP_POLICY_INFO ??????, ???????-1 NET_EM_CFG_USER_PASS_DATA_COUNT_CLEAR = 3934, /// ??????????????????????, ??????? NET_EM_CFG_USER_PASS_DATA_COUNT_CLEAR_INFO ??????, ???????-1 NET_EM_CFG_SAMPO_SERVICE_NAME = 3935, /// ????????????????????????????????,??????? NET_EM_CFG_SAMPO_SERVICE_NAME_INFO ??????, ???????-1 NET_EM_CFG_USER_PASS_PERMISSION = 3936, /// ?????????????????????,??????? NET_EM_CFG_USER_PASS_PERMISSION_INFO ??????, ???????-1 NET_EM_CFG_HOSPITAL_TALK_CONFIG = 3937, /// ???????,??????? NET_EM_CFG_HOSPITAL_TALK_CONFIG_INFO ??????, ???????-1 NET_EM_CFG_SECRET_PROJECT_CONFIG = 3938, /// ????,??????? NET_EM_CFG_SECRET_PROJECT_CONFIG_INFO ??????, ???????-1 NET_EM_CFG_QRCODE_DISPLAY_CONFIG = 3939, /// ????????????,??????? NET_EM_CFG_QRCODE_DISPLAY_CONFIG_INFO ??????, ???????-1 NET_EM_CFG_ACCESS_OPEN_DOOR_SAFETY_FOLLOW = 3940, /// ????????????????????,??????? NET_EM_CFG_ACCESS_OPEN_DOOR_SAFETY_FOLLOW_INFO ??????, ???????-1 NET_EM_CFG_CARD_NO_CONVERT_CONFIG = 3941, /// ???????????????,??????? NET_EM_CFG_CARD_NO_CONVERT_CONFIG_INFO ??????, ???????-1 NET_EM_CFG_QRCODE_KEY_INFO_CONFIG = 3942, /// ???????,??????? NET_CFG_QRCODE_KEY_INFO ??????, ???????-1 /***********????************************************************************************************************/ NET_EM_CFG_SERIALNOWHITETABLE = 4000, /// ???????????????????????NVR ????, ??????? NET_CFG_SERIALNOWHITETABLE_INFO NET_EM_CFG_LXSJ_WXJJ = 4001, /// ??????? NET_CFG_LXSJ_WXJJ_INFO NET_EM_CFG_SENSOR_ALARM_GLOBAL = 4002, /// ????????????????? ??????? NET_CFG_SENSOR_ALARM_GLOBAL_INFO NET_EM_CFG_SENSOR_ALARM = 4003, /// ?????????????? ??????? NET_CFG_SENSOR_ALARM_INFO NET_EM_CFG_VSP_LXSJ = 4004, /// ????????????????? ??????? NET_CFG_VSP_LXSJ_INFO??????????????new???? NET_EM_CFG_TIMINGCAPTURE = 4005, /// ?????????? ??????? NET_CFG_TIMINGCAPTURE_INFO NET_EM_CFG_WATER_MONITOR_TITLE = 4006, /// ??????????OSD???? ??????? NET_CFG_WATER_MONITOR_TITLE_INFO NET_EM_CFG_ATTENDANCE_MODEL_INFO = 4007, /// ?????????????????? NET_CFG_ATTENDANCE_MODEL_INFO????????????????-1 NET_EM_CFG_KT_RTSP_FLAG = 4008, /// RTSP?????????, ??????? NET_CFG_KT_RTSP_FLAG_INFO ,??????????,???????????-1 NET_EM_CFG_RTSP_ABORT_LIST = 4009, /// ???RTSP????????????????????????(???????????????), ??????? NET_CFG_RTSP_ABORT_LIST_INFO ,??????????,???????????-1 NET_EM_CFG_FILE_HOLD_DAYS = 4010, /// ????????????, ???????NET_CFG_FILE_HOLD_DAYS_INFO NET_EM_CFG_ACCESS_FUNCTION = 4011, /// ??????????, ??????? NET_CFG_ACCESS_FUNCTION_INFO, ??????????,???????????-1 NET_EM_CFG_RELAY_STATE = 4012, /// ??????????????????? NET_CFG_RELAY_STATE_INFO NET_EM_CFG_OSD_PLAN = 4013, /// OSD ???????, ??????? NET_CFG_OSD_PLANS_INFO NET_EM_CFG_ENVIRONMENT_DETECT = 4014, /// ????????????????????, ??????? NET_CFG_ENVIRONMENT_DETECT_INFO NET_EM_CFG_AC_GZYD = 4015, /// ????????????????????????????????????, ??????? NET_CFG_AC_GZYD_INFO NET_EM_CFG_CARD_MNG = 4016, /// ?????????cpu????ic??????????,??????? NET_CFG_CARD_MNG_INFO NET_EM_CFG_WORK_MODE = 4017, /// IPC????APP????????? ??????? NET_CFG_WORK_MODE_INFO NET_EM_CFG_WATER_QUALITY_DETECTION = 4018, /// ????????????????? ??????? NET_CFG_WATER_QUALITY_DETECTION_INFO NET_EM_CFG_FINANCIAL_CABINET_ALARM = 4019, /// ?????????????? ??????? NET_CFG_FINANCIAL_CABINET_ALARM_INFO NET_EM_CFG_FINANCIAL_CABINET_CONFIG = 4020, /// ???????????? ??????? NET_CFG_FINANCIAL_CABINET_CONFIG_INFO NET_EM_CFG_NUCLEIC_ACID_RULER = 4021, /// ???????????????, ??????? NET_CFG_NUCLEIC_ACID_RULER_INFO, ??????????, ???????????-1 NET_EM_CFG_LEASE_RULES = 4022, /// ???????????, ??????? NET_CFG_LEASE_RULES_INFO, ??????????, ???????????-1 NET_EM_CFG_COMMPORT_COMM = 4023, /// ???????????????????????????? NET_CFG_COMMPORT_COMM_INFO????????????, ???????????-1 NET_EM_CFG_VDP_THEMES = 4024, /// ???????????????, ??????? NET_CFG_VDP_THEMES_INFO, ??????????????????????-1 NET_EM_CFG_ACCESS_CONTROLLER_CONFIG = 4025, /// ????????????, ??????? NET_CFG_ACCESS_CONTROLLER_CONFIG_INFO, ??????????????????????-1 /***********?????????************************************************************************************************/ NET_EM_CFG_CLOUDUPLOADTIME = 5000, /// ?????????????????????????, ??????? NET_CFG_CLOUDUPLOADTIME_INFO /***********????????????************************************************************************************************/ ///????? CLIENT_SetConfig ?,restart??????? NET_EM_CFG_RADAR_MAPPARA = 6000, /// ?????????????, ??????? NET_CFG_RADAR_MAPPARA_INFO NET_EM_CFG_RADAR_CALIBRATION = 6001, /// ???????????, ??????? NET_CFG_RADAR_CALIBRATION_INFO NET_EM_CFG_RADAR_LINKSD = 6002, /// ?????????????????, ??????? NET_CFG_RADAR_LINKSD_INFO NET_EM_CFG_RADAR_RULELINE = 6003, /// ????????????, ??????? NET_CFG_RADAR_RULELINE_INFO NET_EM_CFG_RADAR_ANALYSERULE = 6004, /// ?????????????, ??????? NET_CFG_RADAR_ANALYSERULE_INFO NET_EM_CFG_RADAR_TRACKGLOBALCONFIG = 6005, /// ?????????????, ??????? NET_CFG_RADAR_TRACKGLOBALCONFIG_INFO NET_EM_CFG_RADAR_RADARPARA = 6006, /// ??????????, ??????? NET_CFG_RADAR_RADARPARA_INFO NET_EM_CFG_RADAR_REMOTESDLINK = 6007, /// ????????????????????, ??????? NET_CFG_RADAR_REMOTESDLINK_INFO NET_EM_CFG_RADAR_RADARLINKDEVICE= 6008, /// ?????????????????, ??????? NET_CFG_RADAR_RADARLINKDEVICE_INFO NET_EM_CFG_RADAR_MAPOSDPARA = 6009, /// ?????OSD????????, ??????? NET_CFG_RADAR_MAPOSDPARA_INFO NET_EM_CFG_RADAR_DEVLIST = 6010, /// ??????????????, ???????NET_CFG_RADAR_DEVLIST_INFO NET_EM_CFG_RADAR_RULE_BIND_SD = 6011, /// ??????????????, ???????NET_CFG_RADAR_RULE_BIND_SD_INFO NET_EM_CFG_RADAR_SCREEN_RULE = 6012, /// ?????????????????, ???????NET_CFG_RADAR_SCREEN_RULE_INFO NET_EM_CFG_RADAR_ALGORITHM_PARAM = 6013, /// ????????????????, ??????? NET_CFG_RADAR_ALGORITHM_PARAM_INFO NET_EM_CFG_RADAR_TRACK_FREQUENCY = 6014, /// ??????????????, ??????? NET_CFG_RADAR_TRACK_FREQUENCY_INFO NET_EM_CFG_RADAR_TRACK_MOVE_MODE = 6015, /// ?????????????????????, ??????? NET_CFG_CFG_RADAR_TRACK_MOVE_MODE_INFO NET_EM_CFG_MINIRADAR_DECT_PARAM = 6016, /// Mini?????????????, ??????? NET_CFG_MINIRADAR_DECT_PARAM_INFO NET_EM_CFG_MINIRADAR_INDOOR_ALARM = 6017, /// Mini?????????, ??????? NET_CFG_MINIRADAR_INDOOR_ALARM_INFO NET_EM_CFG_MINIRADAR_COMP_INFO = 6018, /// Mini????????????, ??????? NET_CFG_MINIRADAR_COMP_INFO NET_EM_CFG_MINIRADAR_INSTALL_INFO = 6019, /// Mini???????????, ??????? NET_CFG_MINIRADAR_INSTALL_INFO NET_EM_CFG_MINIRADAR_REGION_DETECT = 6020, /// Mini??????????????, ??????? NET_CFG_MINIRADAR_REGION_DETECT_INFO NET_EM_CFG_MINIRADAR_SCREEN_CONFIG = 6021, /// Mini?????????????, ??????? NET_CFG_MINIRADAR_SCREEN_CONFIG_INFO /***********??????????************************************************************************************************/ NET_EM_CFG_PTZ_SPEED = 7000, /// ?????????? ??????? NET_CFG_PTZ_SPEED NET_EM_CFG_PTZ_HORIZONTAL_ROTATION_GROUP_SCAN = 7001, /// ????????????? ??????? NET_CFG_HORIZONTAL_ROTATION_GROUP_SCAN_INFO NET_EM_CFG_AUTOSCAN = 7002, /// ?????????? ??????? NET_CFG_AUTOSCAN_INFO NET_EM_CFG_INTELLI_TOUR = 7003, /// ????????? ??????? NET_CFG_INTELLI_TOUR NET_EM_CFG_AUTO_PATTERN = 7004, /// ??????????, ??????? NET_CFG_AUTO_PATTERN_INFO NET_EM_CFG_PTZ_DIRECTION_CORRECT = 7005, /// ??????????????,??????? NET_CFG_PTZ_DIRECTION_CORRECT_INFO NET_EM_CFG_RAIN_FALL_CONFIG = 7006, /// ????????????(??????? NET_CFG_RAIN_FALL_CONFIG_INFO) NET_EM_CFG_PTZ_ELEVATION = 7007, /// ??????????????(??????? NET_CFG_PTZ_ELEVATION_INFO) NET_EM_CFG_PTZ_MOVEMENT, /// ???????????, ??????? NET_CFG_PTZ_MOVEMENT_INFO NET_EM_CFG_PTZ_HEATER, /// ??????????, ??????? NET_CFG_PTZ_HEATER_INFO /***********?????????????************************************************************************************************/ NET_EM_CFG_CASCADE_LIGHT = 8000, /// NVR????????IPC???, ??????? NET_CFG_CASCADE_LIGHT_INFO NET_EM_CFG_LE_SMARTTRACK = 8001, /// ???????????, ??????? NET_CFG_LE_SMARTTRACK_INFO NET_EM_CFG_LE_LENS_MASK = 8002, /// ??????????, ??????? NET_CFG_LE_LENS_MASK_INFO /***********??????????************************************************************************************************/ NET_EM_CFG_VSP_PAAS = 9000, /// ???????????????, ??????? NET_CFG_VSP_PAAS_INFO NET_EM_CFG_VSP_GAYS_SERVER = 9001, /// ?????????????????(????????),??????? NET_CFG_VSP_GAYS_SERVER_INFO,???????-1 NET_EM_CFG_VSP_CO_SIGN_SERVER = 9002, /// ????????????????,???????NET_CFG_VSP_CO_SIGN_SERVER_INFO,???????-1 NET_EM_CFG_VSP_GAVI = 9003, /// ??????????????????????????,??????? NET_CFG_VSP_GAVI_INFO,???????-1 NET_EM_CFG_VSP_ONVIF = 9004, /// ONVIF????????, ??????? NET_CFG_VSP_ONVIF_INFO, ???????-1 NET_EM_CFG_VSP_LRLXXF_MODULE = 9005, /// ??????????????????, ??????? NET_CFG_VSP_LRLXXF_MODULE_INFO, ???????-1 NET_EM_CFG_VSP_LRLXXF_CUSTOM = 9006, /// ???????????????????, ??????? NET_CFG_VSP_LRLXXF_CUSTOM_INFO, ???????-1 NET_EM_CFG_VSP_TERMINAL_REGISTER_INFO, /// ????????????????????????, ??????? NET_CFG_VSP_TERMINAL_REGISTER_INFO, ???????-1 /***********???????**************************************************************************************************/ NET_EM_CFG_TRAFFICSTROBE = 9100, /// ???????, ??????? NET_CFG_TRAFFICSTROBE_INFO /***********LED??????************************************************************************************************/ NET_EM_CFG_LED_TEXT = 9200, /// LED?????????, ??????? NET_CFG_LED_TEXT NET_EM_CFG_LED_TEXT_ARRAY = 9201, /// LED?????????????, ??????? NET_CFG_LED_TEXT_ARRAY /***********??????????************************************************************************************************/ NET_EM_CFG_DISABLE_LINKAGE = 9300, /// ???????????,??????? NET_CFG_DISABLE_LINKAGE, ??????????,???????????-1 NET_EM_CFG_DISABLE_LINKAGE_TIME_SECTION = 9301, /// ????????????????????, ??????? NET_CFG_DISABLE_LINKAGE_TIME_SECTION, ??????????,???????????-1 NET_EM_CFG_REMOTE_DISABLE_LINKAGE = 9302, /// ???????????????????, ??????? NET_CFG_REMOTE_DISABLE_LINKAGE_INFO NET_EM_CFG_REMOTE_DISABLE_LINKAGE_TIME_SECTION_SYNC = 9303, /// ?????????????????"?????????????"????, ??????? NET_CFG_REMOTE_DISABLE_LINKAGE_TIME_SECTION_SYNC_INFO, ??????????,??????????????-1 /***********???????????************************************************************************************************/ NET_EM_CFG_MATRIX_NETKBDFASTCTRL = 9400, /// ?????????????????, ??????? NET_CFG_MATRIX_NETKBDFASTCTRL_INFO /***********Vedio???????************************************************************************************************/ NET_EM_CFG_VIDEO_CHANNEL_LABEL = 9600, /// ???????????? ??????? NET_CFG_VIDEO_CHANNEL_LABEL_INFO NET_EM_CFG_VIDEO_IMAGE_CTRL = 9601, /// ?????????????????? ,??????? NET_EM_CFG_VIDEO_IMAGE_CTRL_INFO /***********Traffic???????***************************************************************************************************/ NET_EM_CFG_TRAFFIC_LATTICE_SCREEN = 10000, /// ????????????????, ??????? NET_CFG_TRAFFIC_LATTICE_SCREEN_INFO NET_EM_CFG_TRAFFIC_VOICE_BROADCAST = 10001, /// ??????????????????? ??????? NET_CFG_TRAFFIC_VOICE_BROADCAST_INFO NET_EM_CFG_SCENE_SNAP_SHOT_WITH_RULE2= 10002, /// ???????????? ??????? NET_CFG_SCENE_SNAP_SHOT_WITH_RULE2_INFO NET_EM_CFG_TRAFFIC_PARKING_SNAP_TIMER, /// ????????????????????, ??????? NET_CFG_TRAFFIC_PARKING_SNAP_TIMER_INFO, ??????????,???????????-1 NET_EM_CFG_VEHICLE_INFO = 10004, /// ???????????, ??????? NET_CFG_VEHICLE_INFO, ??????????,???????????-1 NET_EM_CFG_VEHICLE_WORK_MODE = 10005, /// ??????????????, ??????? NET_CFG_VEHICLE_WORK_MODE, ??????????,???????????-1 /***********DoorBell???????????******************************************************************************************/ NET_EM_CFG_DOORBELL_EXTERNALDOORBELL = 11000, /// ???????????,??????? NET_CFG_DOORBELL_EXTERNALDOORBELL, ??????????,???????????-1 /***********????????????******************************************************************************************/ NET_EM_CFG_HOT_COLD_SPOT_WARNING = 1505, /// ???????????, ???????? NET_HOT_COLD_SPOT_WARNING_INFO NET_EM_CFG_SENSOR_MAINTAIN = 11100, /// ???????????????,??????? NET_CFG_SENSOR_MAINTAIN NET_EM_CFG_TILT_LIMIT = 11101, /// ??????????????,??????? NET_CFG_TILT_LIMIT NET_EM_CFG_RADIO_REGULATOR = 11102, /// ??????????????????, ??????? NET_CFG_RADIO_REGULATOR???????????-1 NET_EM_CFG_HUMAN_THERM_CALIBRATE = 11103,/// ????????????, ??????? NET_CFG_HUMAN_THERM_CALLBRATE_INFO ????????????-1 NET_EM_CFG_TELESCOPE_OPTIONS = 11104, /// ?????????,??????? NET_CFG_TELESCOPE_OPTIONS_INFO NET_EM_CFG_ENVIRONMENT_THERM_INFO = 11105, /// ??????????(????????????,????,??????),???????????????????? ??????? NET_CFG_ENVIRONMENT_THERM_INFO NET_EM_CFG_THERMOMETRY_SHIELD = 11106, /// ?????????????? ??????? NET_CFG_THERMOMETRY_SHIELD_INFO NET_EM_CFG_BURNING_CHECK = 11107, /// ??????????? ??????? NET_CFG_BURNING_CHECK_INFO NET_EM_CFG_CALIBRATE_POINTS = 11108, /// ?????????????, ??????? NET_CFG_CALIBRATE_POINTS_INFO /***********????????????******************************************************************************************/ NET_EM_CFG_KVM_MAIN_NODE = 12000, /// ??????????????????,??????? NET_CFG_KVM_MAIN_NODE NET_EM_CFG_KVM_HOT_KEY = 12001, /// ???????????????????,??????? NET_CFG_KVM_HOT_KEY NET_EM_CFG_KM_TRANS_ENCRYPT = 12002, /// ??????????????,??????? NET_CFG_KM_TRANS_ENCRYPT NET_EM_CFG_NET_TV_DEVICE = 12003, /// ??????????????,??????? NET_CFG_NET_TV_DEVICE /***********??????????******************************************************************************************/ NET_EM_CFG_COURSE_RECORD_DEFAULT_CONFIG = 12100, /// ??????????, ??????? NET_CFG_COURSE_RECORD_DEFAULT_CONFIG NET_EM_CFG_COURSE_RECORD_UPLOAD = 12101, /// ??????????????????????, ??????? NET_CFG_COURSE_RECORD_UPLOAD NET_EM_CFG_COURSE_RECORD_EX = 12102, /// ???????????????StorageScheduleGlobal????????, ???????NET_CFG_COURSE_RECORD_EX /***********AroundWifi???????******************************************************************************************/ NET_EM_CFG_WIFI_INSTALL_PARAM = 12200, /// Wifi??????????, ??????? NET_CFG_WIFI_INSTALL_PARAM, ??????????,???????????-1 /***********??????????******************************************************************************************/ NET_EM_CFG_STORAGE_HEALTH_ABNORMAL = 12300, /// ????????????, ??????? NET_CFG_STORAGE_HEALTH_ABNORMAL, ??????????,???????????-1 NET_EM_CFG_STORAGE_GLOBAL = 12301, /// ?????????????, ??????? NET_CFG_STORAGE_GLOBAL, ??????????,???????????-1 NET_EM_CFG_NAS_DIRECTORY = 12302, /// ????????????????, ??????? NET_CFG_NAS_DIRECTORY NET_EM_CFG_DISK_FIRMWARE_INFO = 12303, /// ????????, ??????? NET_CFG_DISK_FIRMWARE_INFO, ??????????,???????????-1 /***********lora ???????????******************************************************************************************/ NET_EM_CFG_LORA_GATEWAY_BASIC = 12400, /// Lora???????????????, ??????? NET_CFG_LORA_GATEWAY_BASIC NET_EM_CFG_LORA_GATEWAY_ACCESS = 12401, /// Lora???????????, ??????? NET_CFG_LORA_GATEWAY_ACCESS NET_EM_CFG_LORA_GATEWAY_RADIO = 12402, /// Lora???????????, ??????? NET_CFG_LORA_GATEWAY_RADIO /***********????????????????******************************************************************************************/ NET_EM_CFG_VTS_INFO = 12500, /// ??????????????, ??????? NET_CFG_VTS_INFO, ??????????,???????????-1 NET_EM_CFG_HOSPITAL_BACKLIGHT_PLAN, /// ????????????, ??????? NET_CFG_HOSPITAL_BACKLIGHT_PLAN, ??????????, ???????????-1 NET_EM_CFG_HOSPITAL_INTRODUCE, /// ??/??????????????, ??????? NET_CFG_HOSPITAL_INTRODUCE_INFO, ??????????, ???????????-1 NET_EM_CFG_HOSPITAL_CHECKLIST, /// ?????/???????????????, ??????? NET_CFG_HOSPITAL_CHECKLIST_INFO, ??????????, ???????????-1 NET_EM_CFG_HOSPITAL_MEDIA_INFO, /// ?????????????????????????, ??????? NET_CFG_HOSPITAL_MEDIA_INFO, ??????????, ???????????-1 NET_EM_CFG_VTS_BASIC_INFO, /// VTS????????, ??????? NET_CFG_VTS_BASIC_INFO, ??????????,???????????-1 /***********????????******************************************************************************************/ NET_EM_CFG_SOUND = 12600, /// ????????, ??????? NET_CFG_SOUND NET_EM_CFG_VOICE_PLAY_PLAN, /// ??????????????, ??????? NET_CFG_VOICE_PLAY_PLAN??????????, ??????????-1 NET_EM_CFG_SMART_SOUND_DETECT, /// ???????????????????NET_CFG_SMART_SOUND_DETECT,?????????????? /***********???????????******************************************************************************************/ NET_EM_CFG_DHRS = 12700, /// 485???????????????, ??????? NET_CFG_DHRS /***********?????????????******************************************************************************************/ NET_EM_CFG_ADVERT_PLAY_RULE = 12800, /// ???????????????, ??????? NET_CFG_ADVERT_PLAY_RULE, ????????, ??????????-1 /***********???????????******************************************************************************************/ NET_EM_CFG_XRAY_UPLOAD_PLATFORM = 12900, /// ??????????????????????????, ??????? NET_CFG_XRAY_UPLOAD_PLATFORM, ????????, ??????????-1 NET_EM_CFG_XRAY_OVERLAY = 12901, /// X??????????????, ??????? NET_CFG_XRAY_OVERLAY_INFO, ????????, ??????????-1 /***********??????????******************************************************************************************/ NET_EM_CFG_COURSE_INFO = 13000, /// ??????????, ???????NET_CFG_COURSE_INFO, ????????, ??????????-1 NET_EM_CFG_EXAMINATION_ROOM_INFO, /// ????????, ???????NET_CFG_EXAMINATION_ROOM_INFO, ????????, ??????????-1 NET_EM_CFG_RECORD_NAME_RULE_INFO, /// ????????????????????, ???????NET_CFG_RECORD_NAME_RULE_INFO, ????????, ??????????-1 NET_EM_CFG_REDUNDANT_STORAGE_STRATEGY, /// ?????????????????, ??????? NET_CFG_REDUNDANT_STORAGE_STRATEGY_INFO, ????????, ??????????-1 NET_EM_CFG_RECORD_SHORTAGE_ALARM, /// ????????????????????????????? NET_CFG_RECORD_SHORTAGE_ALARM_INFO NET_EM_CFG_KVM_CONTROL_DATA_MODE, /// KVM???????????????????????? NET_CFG_KVM_CONTROL_DATA_MODE_INFO, ????????, ??????????-1 NET_EM_CFG_PRIVACY_FACEID, /// ????????????ID???????????????? NET_CFG_PRIVACY_FACEID_INFO, ????????, ??????????-1 NET_EM_CFG_CHANG_BAI_VEHICLE_PROHIBITED, /// ???????????????????????????? NET_CFG_CHANG_BAI_VEHICLE_PROHIBITED_INFO, ????????, ??????????-1 NET_EM_CFG_TUXI_SN_ACCESS_TABLE, /// NVR????????IPC????, ??????? NET_CFG_TUXI_SN_ACCESS_TABLE_INFO, ????????, ??????????-1 NET_EM_CFG_ATTENDANCECFG_XL_CUSTOM, /// ????????, ??????? NET_CFG_ATTENDANCECFG_XL_CUSTOM_INFO, ????????, ??????????-1 /***********???????????******************************************************************************************/ NET_EM_CFG_RTSC_SCH_CROSSLIST = 14000, /// ????????????????, ???????NET_CFG_RTSC_SCH_CROSSLIST_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_CHANNELS, /// ?????, ???????NET_CFG_RTSC_SCH_CHANNELS_INFO NET_EM_CFG_RTSC_SCH_PLANS, /// ?????????, ???????NET_CFG_RTSC_SCH_PLANS_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_MANAGE, /// ??????????????, ??????? NET_CFG_RTSC_SCH_MANAGE_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_VEHICLE_DETECTORLIST, /// ?????????????????? NET_CFG_RTSC_SCH_VEHICLE_DETECTORLIST_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_PEDDETECTOR_LIST, /// ????????????????????? NET_CFG_RTSC_SCH_PEDDETECTOR_LIST_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_PEDDESTRAIN_PRIORITY, /// ????????????????????????? NET_CFG_RTSC_SCH_PEDDESTRAIN_PRIORITY_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_OVERFLOW_CONTROL, /// ???????????????????? NET_CFG_RTSC_SCH_OVERFLOW_CONTROL_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_NIGHTASK, /// ????????????? NET_CFG_RTSC_SCH_NIGHTASK_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_OPTIMIZES, /// ??????????????????????????????? NET_CFG_RTSC_SCH_OPTIMIZES_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_VARLANELIST, /// ?????????????????? NET_CFG_RTSC_SCH_VARLANELIST_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_SCH_VARLANE_MANAGEMENT, /// ???????????????????????? NET_CFG_RTSC_SCH_VARLANE_MANAGEMENT_INFO, ????????, ??????????-1 NET_EM_CFG_RTSC_TEMP_SCH, /// ??????????????????? NET_CFG_RTSC_TEMP_SCH_INFO, ????????, ??????????-1 /******************************************************************************************************************/ /***********EAS???????******************************************************************************************/ NET_EM_CFG_EAS_SYSTEM_CONFIG = 14500, /// EAS??????????, ??????? NET_CFG_EAS_SYSTEM_CONFIG_INFO NET_EM_CFG_EAS_COIL_SWITH, /// EAS??????????, ??????? NET_CFG_EAS_COIL_SWITH_INFO NET_EM_CFG_EAS_ECO_MODE_SETTING, /// ????????????????????????, ??????? NET_CFG_EAS_ECO_MODE_SETTING_INFO, ????????, ??????????-1 NET_EM_CFG_EAS_NOISE_COLLECT_MODE, /// EAS???????????, ??????? NET_CFG_EAS_NOISE_COLLECT_MODE /******************************************************************************************************************/ } NET_EM_CFG_OPERATE_TYPE; ////////////////////////////////////////////////////////////////////// /// RPC?????? ////////////////////////////////////////////////////////////////////// #define RPC_METHOD_MONITORWALL_ADD "monitorWallManager.addMonitorWall" /// ???????? /*********************************************************************** ** ??????????? ***********************************************************************/ ///@brief ???????????????????? typedef void (CALLBACK *fDisConnect)(LLONG lLoginID, char *pchDVRIP, LONG nDVRPort, LDWORD dwUser); ///@brief ???????????????????? typedef void (CALLBACK *fHaveReConnect)(LLONG lLoginID, char *pchDVRIP, LONG nDVRPort, LDWORD dwUser); ///@brief ????????????????????? typedef void (CALLBACK *fSubDisConnect)(EM_INTERFACE_TYPE emInterfaceType, BOOL bOnline, LLONG lOperateHandle, LLONG lLoginID, LDWORD dwUser); ///@brief ???????????????????, (param?????SDK?????????? ) typedef void (CALLBACK *fRealPlayDisConnect)(LLONG lOperateHandle, EM_REALPLAY_DISCONNECT_EVENT_TYPE dwEventType, void* param, LDWORD dwUser); ///@brief ??????????????????(pBuffer?????SDK??????????) /// ??? dwDataType ???????????????????????????????? EM_REALDATA_FLAG; ?????? dwDataType ?????? NET_DATA_CALL_BACK_VALUE ??? typedef void (CALLBACK *fRealDataCallBack)(LLONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief ??????????????????--???(pBuffer?????SDK??????????) /// ??? dwDataType ???????????????????????????????? EM_REALDATA_FLAG; ?????? dwDataType ?????? NET_DATA_CALL_BACK_VALUE ??? typedef void (CALLBACK *fRealDataCallBackEx)(LLONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, LONG param, LDWORD dwUser); ///@brief ??????????????????--???(pBuffer?????SDK??????????) /// ??? dwDataType ???????????????????????????????? EM_REALDATA_FLAG; ?????? dwDataType ?????? NET_DATA_CALL_BACK_VALUE ??? /// ??????????param ???????????????????????????????????????? NET_STREAMCONVERT_INFO typedef void (CALLBACK *fRealDataCallBackEx2)(LLONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, LLONG param, LDWORD dwUser); ///@brief ???????????????? typedef void (CALLBACK *fDrawCallBack)(LLONG lLoginID, LLONG lPlayHandle, HDC hDC, LDWORD dwUser); ///@brief ??????????????????? typedef void (CALLBACK *fTimeDownLoadPosCallBack) (LLONG lPlayHandle, DWORD dwTotalSize, DWORD dwDownLoadSize, int index, NET_RECORDFILE_INFO recordfileinfo, LDWORD dwUser); ///@brief ???????????????????????? typedef void (CALLBACK *fTimeDownLoadPosCallBackEx) (LLONG lPlayHandle, DWORD dwTotalSize, DWORD dwDownLoadSize, int index, NET_RECORDFILE_INFOEX recordfileinfoEx, LDWORD dwUser); ///@brief ?????????????(pBuf?????SDK??????????) typedef BOOL (CALLBACK *fMessCallBack)(LONG lCommand, LLONG lLoginID, char *pBuf, DWORD dwBufLen, char *pchDVRIP, LONG nDVRPort, LDWORD dwUser); ///@brief ??????????? /// bAlarmAckFlag : TRUE,??????????????????????FALSE,??????????????? /// nEventID ????? CLIENT_AlarmAck ??????????????,?? bAlarmAckFlag ? TRUE ?,?????????? /// pBuf?????SDK?????????? typedef BOOL (CALLBACK *fMessCallBackEx1)(LONG lCommand, LLONG lLoginID, char *pBuf, DWORD dwBufLen, char *pchDVRIP, LONG nDVRPort, BOOL bAlarmAckFlag, LONG nEventID, LDWORD dwUser); ///@brief ??????????? typedef struct tagNET_MESSAGE_CALLBACK_INFO { int nAlarmType; /// ??????????? DH_ALARM_ACCESS_CTL_EVENT,? fMessCallBack??fMessCallBackEx1 ???? lCommand ??? BYTE byReserved1[4]; /// ?????? LLONG lLoginID; /// ?????? char* pBuf; /// ???????????SDK?????????????????? lCommand ?????????????? ALARM_ACCESS_CTL_EVENT_INFO DWORD dwBufLen; /// pBuf ???? BOOL bAlarmAckFlag; /// TRUE,??????????????????????FALSE,??????????????? char* pszIP; /// ???IP int nPort; /// ?????? int nEventID; /// ???ID BOOL bRestoreEvent; /// ???????????? BYTE byReserved[1020]; /// ?????? }NET_MESSAGE_CALLBACK_INFO; ///@brief ????????????? /// dwUser ???????????? typedef BOOL (CALLBACK *fMessCallBackEx2)(NET_MESSAGE_CALLBACK_INFO* pInfo, LDWORD dwUser); ///@brief ???????????????????? typedef int (CALLBACK *fServiceCallBack)(LLONG lHandle, char *pIp, WORD wPort, LONG lCommand, void *pParam, DWORD dwParamLen, LDWORD dwUserData); ///@brief ?????????????????????????(pDataBuf?????SDK??????????) /// ??byAudioFlag?2???pDataBuf???????????PCM???????????????byAudioFlag?1??????????CLIENT_AudioDec????????????byAudioFlag?2?????????????? typedef void (CALLBACK *pfAudioDataCallBack)(LLONG lTalkHandle, char *pDataBuf, DWORD dwBufSize, BYTE byAudioFlag, LDWORD dwUser); ///@brief fAudioDataCallBackEx ????????? typedef struct tagNET_AUDIO_DATA_CB_INFO { BYTE* pBuf; /// ??????????????? DWORD dwBufSize; /// ?????????????????? DH_TALK_CODING_TYPE emAudioCode; /// ????????? BYTE* pRawBuf; /// ??????????????????? DWORD dwRawBufSize; /// ???????????????????? int nAudioBit; /// ????,??8??16?? DWORD dwSampleRate; /// ??????,??8000??16000?? BYTE bReserved[256]; /// ?????? }NET_AUDIO_DATA_CB_INFO; ///@brief ?????????? typedef enum tagEM_AUDIO_SOURCE_FLAG { EM_AUDIO_SOURCE_FLAG_UNKNOWN = -1, /// ????? EM_AUDIO_SOURCE_FLAG_LOCAL = 0, /// ??????????????????????? EM_AUDIO_SOURCE_FLAG_REMOTE = 1, /// ?????????????????????????????? }EM_AUDIO_SOURCE_FLAG; ///@brief ????????????????????????? typedef void (CALLBACK *fAudioDataCallBackEx)(LLONG lTalkHandle, NET_AUDIO_DATA_CB_INFO* stAudioInfo, EM_AUDIO_SOURCE_FLAG emAudioFlag, LDWORD dwUser); ///@brief ???????????????????? /// nTotalSize = 0, nSendSize = -1 ?????????? /// nTotalSize = 0, nSendSize = -2 ??????????? /// nTotalSize = 0, nSendSize = -3 ????????????? /// nTotalSize = 0, nSendSize = -4 ?????????????? /// nTotalSize = 0, nSendSize = -5 ????????????????????? /// nTotalSize = -1, nSendSize = XX ??????????? /// nTotalSize = XX, nSendSize = XX ????????????????? typedef void (CALLBACK *fUpgradeCallBack) (LLONG lLoginID, LLONG lUpgradechannel, int nTotalSize, int nSendSize, LDWORD dwUser); ///@brief ???????????????????????G??????????? /// nTotalSize = 0, nSendSize = -1 ?????????? /// nTotalSize = 0, nSendSize = -2 ??????????? /// nTotalSize = 0, nSendSize = -3 ????????????? /// nTotalSize = 0, nSendSize = -4 ?????????????? /// nTotalSize = 0, nSendSize = -5 ????????????????????? /// nTotalSize = -1, nSendSize = XX ??????????? /// nTotalSize = XX, nSendSize = XX ????????????????? typedef void (CALLBACK *fUpgradeCallBackEx) (LLONG lLoginID, LLONG lUpgradechannel, INT64 nTotalSize, INT64 nSendSize, LDWORD dwUser); ///@brief ????????????????(pBuffer?????SDK??????????) typedef void (CALLBACK *fTransComCallBack) (LLONG lLoginID, LLONG lTransComChannel, char *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief ??????????????????????(pBuffer?????SDK??????????) typedef void (CALLBACK *fLogDataCallBack)(LLONG lLoginID, char *pBuffer, DWORD dwBufSize, DWORD nTotalSize, BOOL bEnd, LDWORD dwUser); ///@brief ????????????(pBuf?????SDK??????????) /// EncodeType ?????????10?????jpeg?? 0??mpeg4??i? typedef void (CALLBACK *fSnapRev)(LLONG lLoginID, BYTE *pBuf, UINT RevLen, UINT EncodeType, DWORD CmdSerial, LDWORD dwUser); ///@brief GPS????????? typedef void (CALLBACK *fGPSRev)(LLONG lLoginID, GPS_Info GpsInfo, LDWORD dwUserData); ///@brief GPS?????????--??? typedef void (CALLBACK *fGPSRevEx)(LLONG lLoginID, GPS_Info GpsInfo, ALARM_STATE_INFO stAlarmInfo, LDWORD dwUserData, void *reserved); ///@brief GPS?????????--???2 typedef void (CALLBACK *fGPSRevEx2)(LLONG lLoginID, const LPNET_GPS_LOCATION_INFO lpData, LDWORD dwUserData, void *reserved); ///@brief GPS?????????????? typedef void (CALLBACK *fGPSTempHumidityRev)(LLONG lLoginID, GPS_TEMP_HUMIDITY_INFO GpsTHInfo, LDWORD dwUserData); ///@brief ???????? typedef void (CALLBACK *fMessDataCallBack)(LLONG lCommand, LPNET_CALLBACK_DATA lpData, LDWORD dwUser); ///@brief ????????? typedef void (CALLBACK *fTransFileCallBack)(LLONG lHandle, int nTransType, int nState, int nSendSize, int nTotalSize, LDWORD dwUser); ///@brief ?????????????;nSequence????????????????,?0??????????????,?2??????????????????????,?1??????????? /// int nState = (int*) reserved ????????????????, ?0?????????????????,?1???????????????????????,?2?????????????????? typedef int (CALLBACK *fAnalyzerDataCallBack)(LLONG lAnalyzerHandle, DWORD dwAlarmType, void* pAlarmInfo, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser, int nSequence, void *reserved); ///@brief ????????????(pDevNetInfo?????SDK??????????) typedef void (CALLBACK *fSearchDevicesCB)(DEVICE_NET_INFO_EX *pDevNetInfo, void* pUserData); ///@brief ????????????(pDevNetInfo?????SDK??????????) typedef void (CALLBACK *fSearchDevicesCBEx)(LLONG lSearchHandle,DEVICE_NET_INFO_EX2 *pDevNetInfo, void* pUserData); ///@brief ???YUV?????????? typedef void (CALLBACK *fYUVDataCallBack)(LLONG lPlaybackHandle, BYTE *pBuffer, DWORD dwBufSize, LONG param, LDWORD dwUser, void *reserved); ///@brief: ???Demux?????????? ///@param[out]: LLONG lPlaybackHandle /// ??????? ///@param[out]: BYTE* pBuffer /// ??????????? ///@param[out]: DWORD dwBufSize /// pBuffer??????? ///@param[out]: int nType /// ???????????????1????????2?????? ///@param[out]: LONG param /// ?????????????????? /// ??nType??1?????????????????????????param?????tagVideoFrameParam????^ /// encode?????????0???????1??MPEG4??2?????H264??3?????JPEG??4?????H264??,6?????JPEG2000??7?????AVS??8?????H264??9??MPEG2??10??VNC;11,SVAC??12?????H265 /// ??nType??2?????????????????????????param?????tagCBPCMDataParam???? /// encode?????????0,?????7??PCM8??8??G729??9??IMA??10??PCM MULAW??11??G721??12??PCM8_VWIS??13??MS_ADPCM??14??G711A??15??AMR??16??PCM16??22??G711U??25??G723??26??AAC??27??G726, 40kbps??28??G726, 32kbps??29??G726, 24kbps??30??G726, 16kbps??31??mp2??32??ogg vorbis??33??mp3??34??G722_1??38??OPUS?? ///@param[out]: LDWORD dwUser /// ??????? ///@param[out]: void* reserved /// ?????? typedef void (CALLBACK *fDemuxDataCallBack)(LLONG lPlaybackHandle, BYTE *pBuffer, DWORD dwBufSize, int nType, LONG param, LDWORD dwUser, void *reserved); ///@brief ????????? typedef void (CALLBACK *fSubLogDataCallBack)(LLONG lLogHandle, NET_EM_LOG_QUERY_TYPE emLogType, const DH_DEVICE_LOG_ITEM_EX *pstuLogData, const int& nCount, LDWORD dwUser, void *reserved); /************************************************************************ ** ?????? ***********************************************************************/ ///@brief ????SDK???????,??CLIENT_Init???????szInBuffer??????????????????????????????????????NET_EM_SDK_LOCAL_CFG_TYPE?????????? ///@param[in] emCfgType ???????? ///@param[in] szInBuffer ??????????????????????????????????????NET_EM_SDK_LOCAL_CFG_TYPE?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetSDKLocalCfg(NET_EM_SDK_LOCAL_CFG_TYPE emCfgType, void* szInBuffer); ///@brief ???SDK?????????szOutBuffer ?????????????????????????????????????NET_EM_SDK_LOCAL_CFG_TYPE?????????? ///@param[in] emCfgType ???????? ///@param[out] szOutBuffer ??????????????????????????????????????NET_EM_SDK_LOCAL_CFG_TYPE?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSDKLocalCfg(NET_EM_SDK_LOCAL_CFG_TYPE emCfgType, void* szOutBuffer); ///@brief SDK????? ///@param[in] cbDisConnect ?????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Init(fDisConnect cbDisConnect, LDWORD dwUser); ///@brief SDK?????, ???NETSDK_INIT_PARAM????????????, ??NetSDK????????????????????????lpInitParam???????????CLIENT_Init??????? ///@param[in] cbDisConnect ?????????? ///@param[in] dwUser ?????????? ///@param[in] lpInitParam ????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_InitEx(fDisConnect cbDisConnect, LDWORD dwUser, LPNETSDK_INIT_PARAM lpInitParam = NULL); ///@brief SDK??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_Cleanup(); ///@brief ??????????????,??CLIENT_Init?????? ///@param[in] pstuRunParams ????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRunModeParams(NET_RUNMODE_PARAMS *pstuRunParams); ///@brief ?????????????????????,??????SDK?????????????? ///@param[in] cbAutoConnect ??????????? ///@param[in] dwUser ?????????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetAutoReconnect(fHaveReConnect cbAutoConnect, LDWORD dwUser); ///@brief ?????????????????????,??SVR????????????????????? ///@param[in] cbSubDisConnect ??????????? ///@param[in] dwUser ?????????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSubconnCallBack(fSubDisConnect cbSubDisConnect, LDWORD dwUser); ///@brief ???????????????? ///@return ????????? CLIENT_NET_API DWORD CALL_METHOD CLIENT_GetLastError(void); ///@brief ???????????????????????? ///@param[in] nWaitTime ?????? ///@param[in] nTryTimes ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetConnectTime(int nWaitTime, int nTryTimes); ///@brief ?????????????(pNetParam???????????????) ///@param[in] pNetParam ???????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetNetworkParam(NET_PARAM *pNetParam); ///@brief ???UDP???????????? ///@param[out] pUdpOption udp??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_GetUdpOption(NET_UDP_OPTION *pUdpOption); ///@brief ????UDP???????????? ///@param[in] pUdpOption udp??????? ///@return CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetUdpOption(NET_UDP_OPTION *pUdpOption); ///@brief ???SDK??????? ///@return ????? CLIENT_NET_API DWORD CALL_METHOD CLIENT_GetSDKVersion(); ///@brief ????????(lpDeviceInfo???????????????) ///@param[in] pchDVRIP ip??? ///@param[in] wDVRPort ??? ///@param[in] pchUserName ????? ///@param[in] pchPassword ???? ///@param[out] lpDeviceInfo ??????, ??????????????? ///@param[out] error ??????,?????????? /// error = -1 ????????????????? /// error = 0 ????? /// error = 1 ??????????? /// error = 2 ??????????? /// error = 3 ?????? /// error = 4 ?????? /// error = 5 ???????? /// error = 6 ?????????????? /// error = 7 ???,??????? /// error = 8 ????????? /// error = 9 ????????? /// error = 10 ????????????? /// error = 11 ????3?????? /// error = 12 ?????????U???U????????? /// error = 13 ?????IP???????????? /// error = 18 ????????????????????? /// error = 19 ??????? /// error = 20 ???????????????? /// error = 21 ????????????????????? CLIENT_ModifyDevPassword ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_Login(const char *pchDVRIP, WORD wDVRPort, const char *pchUserName, const char *pchPassword, LPNET_DEVICEINFO lpDeviceInfo, int *error = 0); ///@brief ????????? ///@param[in] pchDVRIP ip??? ///@param[in] wDVRPort ??? ///@param[in] pchUserName ????? ///@param[in] pchPassword ???? ///@param[in] nSpecCap ??????? /// nSpecCap = 0?TCP?????????,void* pCapParam??NULL /// nSpecCap = 2????????????,void* pCapParam?????????????ID /// nSpecCap = 3?????????????,void* pCapParam??NULL /// nSpecCap = 4?UDP?????????,void* pCapParam??NULL /// nSpecCap = 6????????????????,void* pCapParam??NULL /// nSpecCap = 7?SSL????,void* pCapParam??NULL /// nSpecCap = 9??????????,??????void* pCapParam?????????????????????? /// nSpecCap = 12?LDAP??????,void* pCapParam??NULL /// nSpecCap = 13?AD??????,void* pCapParam??NULL /// nSpecCap = 14?Radius??????,void* pCapParam??NULL /// nSpecCap = 15?Socks5??????,??????void* pCapParam????Socks5????????IP&&port&&ServerName&&ServerPassword????? /// nSpecCap = 16???????????,??????void* pCapParam????SOCKET? /// nSpecCap = 19?P2P??????,void* pCapParam??NULL /// nSpecCap = 20????????????,void* pCapParam??NULL ///@param[in] pCapParam ????nSpecCap????, ??????????????? ///@param[out] lpDeviceInfo ??????, ??????????????? ///@param[out] error ??????,???????????? error?????????????????? CLIENT_Login ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_LoginEx(const char *pchDVRIP, WORD wDVRPort, const char *pchUserName, const char *pchPassword, int nSpecCap, void* pCapParam, LPNET_DEVICEINFO lpDeviceInfo, int *error = 0); ///@brief ??????????(lpDeviceInfo, pCapParam???????????????) /// ???????????? error?????????????????? CLIENT_Login ///@param[in] pchDVRIP ip??? ///@param[in] wDVRPort ??? ///@param[in] pchUserName ????? ///@param[in] pchPassword ???? ///@param[in] emSpecCap ??????? ///@param[in] pCapParam ????emSpecCap????, ??????????????? ///@param[out] lpDeviceInfo ??????, ??????????????? ///@param[out] error ??????,???????????? error?????????????????? CLIENT_Login ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_LoginEx2(const char *pchDVRIP, WORD wDVRPort, const char *pchUserName, const char *pchPassword, EM_LOGIN_SPAC_CAP_TYPE emSpecCap, void* pCapParam, LPNET_DEVICEINFO_Ex lpDeviceInfo, int *error = 0); ///@brief ?????????? /// nSpecCap = 0?TCP?????????,nSpecCap = 6???????????????? /// nSpecCap = 19?P2P??? /// pCapParam??????????????? ///@param[in] pchDVRIP ip??? ///@param[in] wDVRPort ??? ///@param[in] pchUserName ????? ///@param[in] pchPassword ???? ///@param[in] nSpecCap ??????? /// nSpecCap = 0?TCP?????????,nSpecCap = 6???????????????? /// nSpecCap = 19?P2P??? ///@param[in] pCapParam ????nSpecCap????, ??????????????? ///@param[in] cbLogin ??????? ///@param[in] dwUser ?????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartLogin(char *pchDVRIP, WORD wDVRPort, char *pchUserName, char *pchPassword, int nSpecCap, void* pCapParam, fHaveLogin cbLogin, LDWORD dwUser); ///@brief ?????CLIENT_StartLogin()?????????11?????????????????(pInParam, pOutParam???????????????) ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartLoginEx(NET_IN_STARTLOGINEX* pInParam, NET_OUT_STARTLOGINEX* pOutParam); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopLogin(LLONG lLoginID); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopLoginEx(LLONG lLoginID); ///@brief ???????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Logout(LLONG lLoginID); ///@brief ????TLS?????? typedef enum tagEM_LOGIN_TLS_TYPE { EM_LOGIN_TLS_TYPE_NO_TLS = 0, /// ??????- ????tls????, ????? EM_LOGIN_TLS_TYPE_TLS_ADAPTER = 1, /// ?????-?????tls???? EM_LOGIN_TLS_TYPE_TLS_COMPEL = 2, /// ?????-???tls???? EM_LOGIN_TLS_TYPE_TLS_MAIN_ONLY = 3, /// ?????-????tls???? EM_LOGIN_TLS_TYPE_TLS_GENERAL = 4, /// ?????-???tls?????????????????? EM_LOGIN_TLS_TYPE_TLS_UPNP = 5, /// ?????-???tls????????????????????????????????UPNP????tls??????????????????TLS,?????????TLS }EM_LOGIN_TLS_TYPE; ///@brief CLIENT_LoginWithHighLevelSecurity ??????? typedef struct tagNET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY { DWORD dwSize; /// ??????? char szIP[64]; /// IP int nPort; /// ??? char szUserName[64]; /// ????? char szPassword[64]; /// ???? EM_LOGIN_SPAC_CAP_TYPE emSpecCap; /// ????? BYTE byReserved[4]; /// ?????? void* pCapParam; /// ?? CLIENT_LoginEx ??? pCapParam ?? nSpecCap ??? EM_LOGIN_TLS_TYPE emTLSCap; /// ?????TLS???????????emSpecCap?EM_LOGIN_SPEC_CAP_TCP??EM_LOGIN_SPEC_CAP_SERVER_CONN ????? tls???(TLS???????????????) }NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY; ///@brief CLIENT_LoginWithHighLevelSecurity ??????? typedef struct tagNET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY { DWORD dwSize; /// ??????? NET_DEVICEINFO_Ex stuDeviceInfo; /// ?????? int nError; /// ???????? CLIENT_Login ???????? BYTE byReserved[132]; /// ?????? }NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY; ///@brief ?????????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_LoginWithHighLevelSecurity(NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY* pstInParam, NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY* pstOutParam); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[out] pemProtocolType ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevProtocolType(LLONG lLoginID, EM_DEV_PROTOCOL_TYPE *pemProtocolType); ///@brief ???VK??? typedef struct tagNET_IN_GET_VKINFO { DWORD dwSize; /// ??????? int nChannelID; /// ???ID }NET_IN_GET_VKINFO; ///@brief ???VK???? typedef struct tagNET_OUT_GET_VKINFO { DWORD dwSize; /// ??????? NET_VKINFO stuVKInfo; /// VK???????? BOOL bContainPrevVKInfo; /// ?????????VK????????,TRUE?????????VK??????FALSE??????????VK????? NET_VKINFO stuPrevVKInfo; /// ????VK???????? }NET_OUT_GET_VKINFO; ///@brief ????VK??? typedef struct tagNET_IN_UPDATE_VKINFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? }NET_IN_UPDATE_VKINFO; ///@brief ????VK???? typedef struct tagNET_OUT_UPDATE_VKINFO { DWORD dwSize; /// ??????? char szVKID[128]; /// VKID }NET_OUT_UPDATE_VKINFO; ///@brief ????VK??????? typedef void (CALLBACK *fAttachVK)(LLONG lLoginID, LLONG lAttachHandle,int nChannelID,const NET_VKINFO* pVKInfo,LDWORD dwUser); ///@brief ????VK??? typedef struct tagNET_IN_ATTACH_VK { DWORD dwSize; /// ??????? int nChannelID; /// ????? fAttachVK cbAttachVK; /// ??????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_VK; ///@brief ????VK???? typedef struct tagNET_OUT_ATTACH_VK { DWORD dwSize; /// ??????? NET_VKINFO stuCurrentVKInfo; /// ???VK???????? BOOL bContainPrevVKInfo; /// ?????????VK????????,TRUE?????????VK??????FALSE??????????VK????? NET_VKINFO stuPrevVKInfo; /// ????VK???????? }NET_OUT_ATTACH_VK; ///@brief ????????????????? typedef struct tagNET_MEDIA_ENCRYPT_CAPS_INFO { BOOL bSupport; /// ?????????????? BYTE byReserved[256]; /// ??????? }NET_MEDIA_ENCRYPT_CAPS_INFO; ///@brief ???????????????? typedef struct tagNET_IN_GET_MEDIA_ENCRYPT_CAPS { DWORD dwSize; /// ??????? int nChannelOffset; /// ??????????? int nChannelCount; /// ??????????????? }NET_IN_GET_MEDIA_ENCRYPT_CAPS; ///@brief ????????????????? typedef struct tagNET_OUT_GET_MEDIA_ENCRYPT_CAPS { DWORD dwSize; /// ??????? NET_MEDIA_ENCRYPT_CAPS_INFO* pstuCapsInfo; /// ????????????????? int nMaxCapsInfoCount; /// ??????????????????????? int nRetCapsInfoCount; /// ??????????????????????? }NET_OUT_GET_MEDIA_ENCRYPT_CAPS; ///@brief ????VK ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpdateVK(LLONG lLoginID, const NET_IN_UPDATE_VKINFO* pInParam, NET_OUT_UPDATE_VKINFO* pOutParam, int nWaitTime); ///@brief ????VK,??????????????vk????????vk??? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachVK( LLONG lLoginID, const NET_IN_ATTACH_VK* pInParam, NET_OUT_ATTACH_VK* pOutParam, int nWaitTime); ///@brief ???????VK ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachVK( LLONG lAttachHandle); ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_GetMediaEncryptCaps( LLONG lLoginID, const NET_IN_GET_MEDIA_ENCRYPT_CAPS* pInParam, NET_OUT_GET_MEDIA_ENCRYPT_CAPS* pOutParam, int nWaitTime); ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] hWnd ?????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealPlay(LLONG lLoginID, int nChannelID, HWND hWnd); ///@brief ????????nChannelID NVR???????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] hWnd ?????? ///@param[in] rType ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealPlayEx(LLONG lLoginID, int nChannelID, HWND hWnd, DH_RealPlayType rType = DH_RType_Realplay); ///@brief ???????????????????(pBuffer?????SDK??????????) typedef void (CALLBACK *fEncryptRealDataCallBackEx)(LLONG lRealHandle, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief ?????????????????????(pBuffer?????SDK??????????) typedef void (CALLBACK *fOriginalRealDataCallBack)(LLONG lRealHandle, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief CLIENT_RealPlayForSpGdpr ?????? typedef struct tagNET_IN_REALPLAY_FOR_SP_GDPR { DWORD dwSize; /// ???????????????????? int nChannelID; /// ??? DH_RealPlayType rType; /// ???? BYTE szReserved[4]; /// ?????? HWND hWnd; /// ?????? fRealDataCallBackEx2 cbRealData; /// ???????? fOriginalRealDataCallBack pOriginalRealDataCallBack; /// ???????????? fEncryptRealDataCallBackEx pEncryptRealDataCallBackEx; /// ?????????????? fRealPlayDisConnect cbDisconnect; /// ?????? LDWORD dwUser; /// ??????? } NET_IN_REALPLAY_FOR_SP_GDPR; ///@brief CLIENT_RealPlayForSpGdpr ???? typedef struct tagNET_OUT_REALPLAY_FOR_SP_GDPR { DWORD dwSize; /// ???????????????????? }NET_OUT_REALPLAY_FOR_SP_GDPR; ///@brief ?????--?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out]pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealPlayForSpGdpr(LLONG lLoginID, const NET_IN_REALPLAY_FOR_SP_GDPR* pInParam, NET_OUT_REALPLAY_FOR_SP_GDPR* pOutParam, DWORD dwWaitTime); ///@brief CLIENT_RealPlayEx2 ?????? typedef struct tagNET_IN_REALPLAY { DWORD dwSize; /// ???????????????????? int nChannelID; /// ??? DH_RealPlayType rType; /// ???? BYTE szReserved[4]; /// ?????? HWND hWnd; /// ?????? fRealDataCallBackEx2 cbRealData; /// ???????? fOriginalRealDataCallBack pOriginalRealDataCallBack; /// ???????????? fEncryptRealDataCallBackEx pEncryptRealDataCallBackEx; /// ?????????????? fRealPlayDisConnect cbDisconnect; /// ?????? fVKInfoCallBack pVKInfoCallBack; /// VK?????? LDWORD dwUser; /// ??????? BOOL bWait; /// ??????????????? } NET_IN_REALPLAY; ///@brief CLIENT_RealPlayEx2 ???? typedef struct tagNET_OUT_REALPLAY { DWORD dwSize; /// ???????????????????? }NET_OUT_REALPLAY; ///@brief ?????--???Ex2??? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealPlayEx2(LLONG lLoginID, const NET_IN_REALPLAY* pInParam, NET_OUT_REALPLAY* pOutParam, DWORD dwWaitTime); ///@brief ???????,??????0???????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] hWnd ?????? ///@param[in] rType ???????? ///@param[in] cbRealData ?????????? ///@param[in] cbDisconnect ?????? ///@param[in] dwUser ?????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartRealPlay(LLONG lLoginID, int nChannelID, HWND hWnd, DH_RealPlayType rType, fRealDataCallBackEx cbRealData, fRealPlayDisConnect cbDisconnect, LDWORD dwUser, DWORD dwWaitTime = 10000); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] hWnd ?????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_MultiPlay(LLONG lLoginID, HWND hWnd); ///@brief ??????????? ///@param[in] lMultiHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopMultiPlay(LLONG lMultiHandle); ///@brief ????hPlayHandle?????????? ///@param[in] hPlayHandle ?????? ///@param[in] pchPicFileName ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CapturePicture(LLONG hPlayHandle, const char *pchPicFileName); ///@brief ???????hPlayHandle?????????? ///@param[in] hPlayHandle ?????? ///@param[in] pchPicFileName ??????? ///@param[in] eFormat ????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CapturePictureEx(LLONG hPlayHandle, const char *pchPicFileName, NET_CAPTURE_FORMATS eFormat); ///@brief CLIENT_CapturePictureEx2 ?????? typedef struct tagNET_IN_CAPTURE_PICTURE { DWORD dwSize; /// ??????? NET_CAPTURE_FORMATS emFormat; /// ???????? char szPicFilePath[256]; /// ?????????? } NET_IN_CAPTURE_PICTURE; ///@brief CLIENT_CapturePictureEx2 ?????? typedef struct tagNET_OUT_CAPTURE_PICTURE { DWORD dwSize; /// ??????? NET_TIME_EX stuTime; /// ????? } NET_OUT_CAPTURE_PICTURE; ///@brief ???????????(????????????????????), hPlayHandle?????????? ///@param[in] lPlayHandle ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CapturePictureEx2(LLONG lPlayHandle, NET_IN_CAPTURE_PICTURE *pstInParam, NET_OUT_CAPTURE_PICTURE *pstOutParam); ///@brief ??????????????? ///@param[in] lRealHandle ?????? ///@param[in] cbRealData ?????????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRealDataCallBack(LLONG lRealHandle, fRealDataCallBack cbRealData, LDWORD dwUser); ///@brief ??????? typedef enum _PrerecordStreamType { Prerecord_RType_Realplay_0, /// ?????-?????? Prerecord_RType_Realplay_1, /// ?????-??????1 Prerecord_RType_Realplay_2, /// ?????-??????2 Prerecord_RType_Realplay_3, /// ?????-??????3 }EM_PRERECODE_STREAM_TYPE; ///@brief ?? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[out] emPreRecord ?????? ///@param[in] nWaitTime ????????, ???????? ///@return ??? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PrerecordStream(LLONG lLoginID, int nChannelID,EM_PRERECODE_STREAM_TYPE emPreRecord, int nWaitTime); ///@brief ???????????????, ??? CLIENT_SetRealDataCallBackEx(Ex2) ???? dwFlag ???? /// ??? '|' ?????, ?? dwFlag = REALDATA_FLAG_RAW_DATA | REALDATA_FLAG_YUV_DATA typedef enum tagEM_REALDATA_FLAG { REALDATA_FLAG_RAW_DATA = 0x01, /// ????????, ???fRealDataCallBack(Ex/Ex2)????????? dwDataType ?0, 0x01 = 0x01 << 0 REALDATA_FLAG_DATA_WITH_FRAME_INFO = 0x02, /// ????????????????, ???fRealDataCallBack(Ex/Ex2)????????? dwDataType ?1, 0x02 = 0x01 << 1 REALDATA_FLAG_YUV_DATA = 0x04, /// YUV ??????, ???fRealDataCallBack(Ex/Ex2)????????? dwDataType ?2, 0x04 = 0x01 << 2 REALDATA_FLAG_PCM_AUDIO_DATA = 0x08, /// PCM ?????????, ???fRealDataCallBack(Ex/Ex2)????????? dwDataType ?3, 0x08 = 0x01 << 3 } EM_REALDATA_FLAG; ///@brief ???????????????--??? ///@param[in] lRealHandle ?????? ///@param[in] cbRealData ?????????????? ///@param[in] dwUser ?????????? ///@param[in] dwFlag ??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRealDataCallBackEx(LLONG lRealHandle, fRealDataCallBackEx cbRealData, LDWORD dwUser, DWORD dwFlag); ///@brief ??????????????????? ///@param[in] lRealHandle ?????? ///@param[in] cbRealData ?????????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetEncryptRealDataCallBack(LLONG lRealHandle, fEncryptRealDataCallBackEx cbRealData, LDWORD dwUser); ///@brief ???????????????--???Ex2 ///@param[in] lRealHandle ?????? ///@param[in] cbRealData ?????????????? ///@param[in] dwUser ?????????? ///@param[in] dwFlag ??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRealDataCallBackEx2(LLONG lRealHandle, fRealDataCallBackEx2 cbRealData, LDWORD dwUser, DWORD dwFlag); ///@brief ????????????????????? ///@param[in] lRealHandle ?????? ///@param[in] cbRealData ?????????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetOriginalRealDataCallBack(LLONG lRealHandle, fOriginalRealDataCallBack cbRealData, LDWORD dwUser); ///@brief ????VK??????:lPlayHandle ?????????????????? ///@param[in] lPlayHandle ?????? ///@param[in] cbVKInfo vk?????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetVKInfoCallBack(LLONG lPlayHandle, fVKInfoCallBack cbVKInfo, LDWORD dwUser); ///@brief ????????????? ///@param[in] lRealHandle ?????? ///@param[in] nLevel ????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AdjustFluency(LLONG lRealHandle, int nLevel); ///@brief ???????????? ///@param[in] lRealHandle ?????? ///@param[in] pchFileName ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SaveRealData(LLONG lRealHandle, const char *pchFileName); ///@brief ???????????????? ///@param[in] lRealHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSaveRealData(LLONG lRealHandle); ///@brief ??????????? ///@param[in] lPlayHandle ?????? ///@param[in] nBrightness ???? ///@param[in] nContrast ???? ///@param[in] nHue ??? ///@param[in] nSaturation ????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ClientSetVideoEffect(LLONG lPlayHandle, unsigned char nBrightness, unsigned char nContrast, unsigned char nHue, unsigned char nSaturation); ///@brief ?????????? ///@param[in] lPlayHandle ?????? ///@param[out] nBrightness ???? ///@param[out] nContrast ???? ///@param[out] nHue ??? ///@param[out] nSaturation ????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ClientGetVideoEffect(LLONG lPlayHandle, unsigned char *nBrightness, unsigned char *nContrast, unsigned char *nHue, unsigned char *nSaturation); ///@brief ????????????? ///@param[in] cbDraw ??????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API void CALL_METHOD CLIENT_RigisterDrawFun(fDrawCallBack cbDraw, LDWORD dwUser); ///@brief ?????? ///@param[in] hPlayHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OpenSound(LLONG hPlayHandle); ///@brief ??????????lPlayHandle?????????? ///@param[in] lPlayHandle ?????? ///@param[in] nVolume ???? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetVolume(LLONG lPlayHandle, int nVolume); ///@brief ????????????????????????,????????????????????,????4?????????,?????I?,???????,?????????? ///@param[in] lPlayHandle ?????? ///@param[in] bEnable ???????????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PlayEnableLargePicAdjustment(LLONG lPlayHandle, BOOL bEnable); ///@brief ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloseSound(); ///@brief ??????? ///@param[in] lRealHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopRealPlay(LLONG lRealHandle); ///@brief ???????--??? ///@param[in] lRealHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopRealPlayEx(LLONG lRealHandle); ///@brief ???????????????? typedef enum tagEM_REAL_DATA_TYPE { EM_REAL_DATA_TYPE_PRIVATE, /// ??????? EM_REAL_DATA_TYPE_GBPS, /// ????PS????????????????G711A EM_REAL_DATA_TYPE_TS, /// TS????????????????AAC??MP2 EM_REAL_DATA_TYPE_MP4, /// MP4???(???????????????????????????,????dwDataType??0)????????????MP2??AAC?? G711A EM_REAL_DATA_TYPE_H264, /// ???????,h264??h265????????? EM_REAL_DATA_TYPE_FLV_STREAM, /// ???FLV????????????AAC??G711A??G711U EM_REAL_DATA_TYPE_PS, /// PS????????????????AAC??MP2 EM_REAL_DATA_TYPE_DHTS, /// DHTS EM_REAL_DATA_TYPE_CDJFPS, /// ??????????G711A??G711U??MP2?????????????????????????AAC EM_REAL_DATA_TYPE_RTP, /// RTP???? }EM_REAL_DATA_TYPE; ///@brief ???????? typedef enum tagEM_ASYNC_REALPLAY_STATE { EM_ASYNC_REALPLAY_NORMAL, /// ????????????? EM_ASYNC_REALPLAY_SUCCESS, /// ?????????, ????????? EM_ASYNC_REALPLAY_CHECK_ERROR, /// ???????????? EM_ASYNC_REALPLAY_SPECIAL_CHANNEL_ERROR, /// ????????????????? EM_ASYNC_REALPLAY_INVALID_CHANNEL, /// ?? ??? EM_ASYNC_REALPLAY_SETUPSESSION_ERROR, /// ????????? EM_ASYNC_REALPLAY_RENDER_ERROR, /// ????????????? EM_ASYNC_REALPLAY_OPENCHANNEL_ERROR, /// ??????????? EM_ASYNC_REALPLAY_GDPR_ERROR, /// GDPR?????? } EM_ASYNC_REALPLAY_STATE; ///@brief: ?????????????? ///@param[out]: LLONG lAsyncTaskHandle /// ?????????????, ?????CLIENT_StopAsynRealPlay ??????????????, /// ????????????????????, ???????????????????,????????? ///@param[out]: LLONG lPlayHandle /// ?????????????, ?????????????????????, ???CLIENT_StopRealPlayEx ???????? ///@param[out]: LLONG lLoginID /// ?????? ///@param[out]: int nChannelID /// ????? ///@param[out]: HWND emState /// ???????? ///@param[out]: LDWORD dwUser /// ??????? typedef void (CALLBACK *fAsynPlayCallBack)(LLONG lAsyncTaskHandle, LLONG lPlayHandle, LLONG lLoginID, int nChannelID, EM_ASYNC_REALPLAY_STATE emState, LDWORD dwUser); ///@brief CLIENT_StartAsynRealPlay ?????????? typedef struct tagNET_IN_START_ASYN_REAL_PLAY { DWORD dwSize; /// ??????? int nChannel; /// ????????? DH_RealPlayType emPlayType; /// ??????? EM_REAL_DATA_TYPE emDataType; /// ???????????????? HWND hPlayWnd; /// ????????? fRealDataCallBackEx2 cbRealDataCallBack; /// ???????? fOriginalRealDataCallBack cbOriginalRealDataCallBack; /// ???????????? fEncryptRealDataCallBackEx cbEncryptRealDataCallBack; /// ?????????????? fRealPlayDisConnect cbDisconnect; /// ?????? fVKInfoCallBack cbVKInfoCallBack; /// VK?????? fAsynPlayCallBack cbAsynPlayCallBack; /// ???????????? LDWORD dwUser; /// ??????? } NET_IN_START_ASYN_REAL_PLAY; ///@brief CLIENT_StartAsynRealPlay?????????? typedef struct tagNET_OUT_START_ASYN_REAL_PLAY { DWORD dwSize; /// ??????? } NET_OUT_START_ASYN_REAL_PLAY; ///@brief:?????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_START_ASYN_REAL_PLAY :pInParam /// ?????????? ///@param[out]: NET_OUT_START_ASYN_REAL_PLAY :pOutParam /// ?????????? ///@param[in]: DWORD :dwWaitTime /// ?????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartAsynRealPlay(LLONG lLoginID, NET_IN_START_ASYN_REAL_PLAY *pInParam, NET_OUT_START_ASYN_REAL_PLAY *pOutParam, DWORD dwWaitTime); ///@brief ?????????????, lAsyncTaskHandle ?CLIENT_StartAsynRealPlay ?????? ///@param[in] lAsyncTaskHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopAsynRealPlay(LLONG lAsyncTaskHandle); ///@brief ????????????? typedef struct tagNET_IN_MOVERELATIVELY_INFO { DWORD dwSize; /// ??????? PTZ_SPACE_RELATIVELY_UNIT stuTranslation; /// x, y, zoom ?????????? -1~1 PTZ_SPACE_RELATIVELY_UNIT stuSpeed; /// x, y, zoom ?????????? 0~1 }NET_IN_MOVERELATIVELY_INFO; ///@brief ??????? typedef enum tagNET_EM_PTZ_DIRECTION_TYPE { NET_EM_PTZ_DIRECTION_TYPE_UNKNOWN, /// ??? NET_EM_PTZ_DIRECTION_TYPE_EAST, /// ?? NET_EM_PTZ_DIRECTION_TYPE_SOUTH, /// ?? NET_EM_PTZ_DIRECTION_TYPE_WEST, /// ?? NET_EM_PTZ_DIRECTION_TYPE_NORTH, /// ?? }NET_EM_PTZ_DIRECTION_TYPE; ///@brief ??????????? DH_EXTPTZ_SET_DIRECTION typedef struct tagNET_IN_SET_DIRECTION_INFO { DWORD dwSize; /// ??????? NET_EM_PTZ_DIRECTION_TYPE emDirection; /// ??????? }NET_IN_SET_DIRECTION_INFO; ///@brief ??????????? DH_EXTPTZ_BASE_MOVE_ABSOLUTELY typedef struct tagNET_IN_PTZBASE_MOVEABSOLUTELY_INFO { DWORD dwSize; /// ??????? int nZoomFlag; /// 1??????????; 2???????????; 3??????????????0??????????? NET_PTZSPACE_UNNORMALIZED stuPosition; /// ????????????????????????????,????10?? /// ?????????(0~3600) /// ??????????(-1800~1800) /// ?????????????nZoomFlag?1?(0~??????????*10)??nZoomFlag?3?(0~16384) NET_PTZSPACE_UNNORMALIZED stuSpeed; /// ????speed????????????? P??T????0.01??/?????????????100?????????????PtzSpeedLevel??????????????[0??100000]?????????????????PtzSpeedLevel?????????????????????zoom??????0~100?? int nRegionCode; /// ???? BYTE byReserved[444]; /// ?????? }NET_IN_PTZBASE_MOVEABSOLUTELY_INFO; ///@brief ???????????????PT DH_EXTPTZ_BASE_MOVE_ABSOLUTELY_ONLYPT typedef struct tagNET_IN_PTZBASE_MOVEABSOLUTELY_ONLYPT_INFO { DWORD dwSize; /// ??????? int nPositionP; /// P??????????0~36000??????100???? int nPositionT; /// T??????????-18000~18000??????100???? int nSpeedP; /// P????????0.01??/?????????????100???????????[0??100000] int nSpeedT; /// T????????0.01??/?????????????100???????????[0??100000] BYTE byReserved[1024]; /// ?????? }NET_IN_PTZBASE_MOVEABSOLUTELY_ONLYPT_INFO; ///@brief ???????????????zoom DH_EXTPTZ_BASE_MOVE_ABSOLUTELY_ONLYZOOM typedef struct tagNET_IN_PTZBASE_MOVEABSOLUTELY_ONLYZOOM_INFO { DWORD dwSize; /// ??????? int nZoomFlag; /// 1??????????; 2???????????; 3??????????????0??????????? int nZoomValue; /// ????zoomFlag????Zoom?????????? /// 1??0~???????????*100; /// 3:??????(0~16384) int nZoomSpeed; /// zoom??????0~100?? BYTE byReserved[1024]; /// ?????? }NET_IN_PTZBASE_MOVEABSOLUTELY_ONLYZOOM_INFO; ///@brief ?????????????? ??? DH_EXTPTZ_BASE_MOVE_CONTINUOUSLY ??? typedef struct tagNET_IN_PTZBASE_MOVE_CONTINUOUSLY_INFO { DWORD dwSize; /// ??????? int nSpeedX; /// ????????,????0.01??/??,????100??,????[-10000, 10000],?????,????? int nSpeedY; /// ?????????,????0.01??/??,????100??,????[-10000, 10000],?????,????? int nZoom; /// ????,???? [-100, 100],??????????? int nMoveTime; /// ??????,?????? BYTE byReserved[1020]; /// ?????? }NET_IN_PTZBASE_MOVE_CONTINUOUSLY_INFO; ///@brief ????????????? ??? DH_EXTPTZ_BASE_SET_FOCUS_MAP_VALUE ??? typedef struct tagNET_IN_PTZBASE_SET_FOCUS_MAP_VALUE_INFO { DWORD dwSize; /// ??????? int nfocusMapValue; /// ???????, ??????[0??28672] }NET_IN_PTZBASE_SET_FOCUS_MAP_VALUE_INFO; ///@brief ???????????????????? ???DH_EXTPTZ_STOP_MOVE??? typedef struct tagNET_IN_STOP_MOVE_INFO { DWORD dwSize; /// ??????? }NET_IN_STOP_MOVE_INFO; ///@brief ?????????? ???DH_EXTPTZ_START??? typedef struct tagNET_IN_PTZ_START_INFO { DWORD dwSize; /// ??????? char szCode[32]; /// ?????? int nArg1; /// ???????1 int nArg2; /// ???????2 int nArg3; /// ???????3 int nArg4; /// ???????4 }NET_IN_PTZ_START_INFO; ///@brief ??????????? ???DH_EXTPTZ_STOP??? typedef struct tagNET_IN_PTZ_STOP_INFO { DWORD dwSize; /// ??????? char szCode[32]; /// ?????? int nArg1; /// ???????1 int nArg2; /// ???????2 int nArg3; /// ???????3 int nArg4; /// ???????4 }NET_IN_PTZ_STOP_INFO; ///@brief ???????? ???DH_EXTPTZ_START_PATTERN_RECORD??? typedef struct tagNET_IN_START_PATTERN_RECORD_INFO { DWORD dwSize; /// ??????? char szName[64]; /// ?????? int nIndex; /// ????? }NET_IN_START_PATTERN_RECORD_INFO; ///@brief ??????? ???DH_EXTPTZ_STOP_PATTERN_RECORD??? typedef struct tagNET_IN_STOP_PATTERN_RECORD_INFO { DWORD dwSize; /// ??????? int nIndex; /// ????? }NET_IN_STOP_PATTERN_RECORD_INFO; ///@brief ???????? ???DH_EXTPTZ_START_PATTERN_REPLAY??? typedef struct tagNET_IN_START_PATTERN_REPLAY_INFO { DWORD dwSize; /// ??????? int nIndex; /// ????? }NET_IN_START_PATTERN_REPLAY_INFO; ///@brief ??????? ???DH_EXTPTZ_STOP_PATTERN_REPLAY??? typedef struct tagNET_IN_STOP_PATTERN_REPLAY_INFO { DWORD dwSize; /// ??????? int nIndex; /// ????? }NET_IN_STOP_PATTERN_REPLAY_INFO; ///@brief ??????????, ???DH_EXTPTZ_MOVE_DIRECTLY??? typedef struct tagNET_IN_MOVE_DIRECTLY_INFO { DWORD dwSize; /// ??????? PTZ_SPEED_UNIT stuScreen; /// ??????? PTZ_SPEED_UNIT stuSpeed; /// ?????????? }NET_IN_MOVE_DIRECTLY_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] dwPTZCommand ??????????? ///@param[in] dwStep ???? ///@param[in] dwStop ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZControl(LLONG lLoginID, int nChannelID, DWORD dwPTZCommand, DWORD dwStep, BOOL dwStop); ///@brief ??????????,param4??????????????????????????DH_EXTPTZ_ControlType???????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] dwPTZCommand ??????????? ///@param[in] param1 ????1 ///@param[in] param2 ????2 ///@param[in] param3 ????3 ///@param[in] dwStop ?????? ///@param[in] param4 ????4 ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DHPTZControl(LLONG lLoginID, int nChannelID, DWORD dwPTZCommand, unsigned char param1, unsigned char param2, unsigned char param3, BOOL dwStop,void* param4=NULL); ///@brief ????????????????,????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] dwPTZCommand ??????????? ///@param[in] lParam1 ????1 ///@param[in] lParam2 ????2 ///@param[in] lParam3 ????3 ///@param[in] dwStop ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DHPTZControlEx(LLONG lLoginID, int nChannelID, DWORD dwPTZCommand, LONG lParam1, LONG lParam2, LONG lParam3, BOOL dwStop ); ///@brief ????????????????,?????????????,????,param4??????????????????????????DH_EXTPTZ_ControlType???????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] dwPTZCommand ??????????? ///@param[in] lParam1 ????1 ///@param[in] lParam2 ????2 ///@param[in] lParam3 ????3 ///@param[in] dwStop ?????? ///@param[in] param4 ????4 ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DHPTZControlEx2(LLONG lLoginID, int nChannelID, DWORD dwPTZCommand, LONG lParam1, LONG lParam2, LONG lParam3, BOOL dwStop , void* param4 = NULL); ///@brief ??????????????????????(NET_AREASCAN_EPTZ_CMD) ///@param[in] lLoginID ?????? ///@param[in] dwPTZCommand ??????????? ///@param[in] szInBuffer ????????????????????????dwPTZCommand???????? ///@param[in] dwInBufferSize szInBuffer???? ///@param[out] szOutBuffer ????????????????????????dwPTZCommand???????? ///@param[in] dwOutBufferSize szOutBuffer???? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DHPTZAreaScan(LLONG lLoginID ,DWORD dwPTZCommand, char* szInBuffer, DWORD dwInBufferSize,char* szOutBuffer = NULL, DWORD dwOutBufferSize = 0, int waittime=1000); ///@brief CLIENT_DHPTZCalibrateSingleDirection ??? typedef struct tagNET_IN_CALIBRATE_SINGLEDIRECTION { DWORD dwSize; int nMode; /// ???????1?????????2???????? }NET_IN_CALIBRATE_SINGLEDIRECTION; ///@brief ??????????????????????, ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ??????????? /// nRecordFileType == EM_RECORD_TYPE_CARD??pchCardid??????????????????59??? /// nRecordFileType == EM_RECORD_TYPE_FIELD??pchCardid?????????????????????????256??? ///@param[in] tmMonth ?????? ///@param[in] pchCardid ???? nRecordFileType ???? ///@param[out] pRecordStatus ????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRecordStatus(LLONG lLoginID, int nChannelId, int nRecordFileType, LPNET_TIME tmMonth, char* pchCardid, LPNET_RECORD_STATUS pRecordStatus, int waittime=1000); ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ??????????? /// nRecordFileType == EM_RECORD_TYPE_CARD??pchCardid??????????????????59??? /// nRecordFileType == EM_RECORD_TYPE_FIELD??pchCardid?????????????????????????256??? ///@param[in] tmStart ?????? ///@param[in] tmEnd ??????? ///@param[in] pchCardid ???? nRecordFileType ???? ///@param[out] bResult ????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRecordTime(LLONG lLoginID, int nChannelId, int nRecordFileType, LPNET_TIME tmStart, LPNET_TIME tmEnd, char* pchCardid, BOOL *bResult, int waittime=1000); ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ??????????? /// nRecordFileType == EM_RECORD_TYPE_CARD??pchCardid??????????????????59??? /// nRecordFileType == EM_RECORD_TYPE_FIELD??pchCardid?????????????????????????256??? ///@param[in] tmStart ?????? ///@param[in] tmEnd ??????? ///@param[in] pchCardid ???? nRecordFileType ???? ///@param[out] nriFileinfo ????????? ///@param[in] maxlen ???? ///@param[out] filecount ??????? ///@param[in] waittime ????????, ???????? ///@param[in] bTime ????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRecordFile(LLONG lLoginID, int nChannelId, int nRecordFileType, LPNET_TIME tmStart, LPNET_TIME tmEnd, char* pchCardid, LPNET_RECORDFILE_INFO nriFileinfo, int maxlen, int *filecount, int waittime=1000, BOOL bTime = FALSE); ///@brief CLIENT_QueryRecordFileEx ?????????? typedef struct tagNET_IN_QUERY_RECORD_FILE_EX { DWORD dwSize; /// ?????????????? int nChannelId; /// ????? EM_QUERY_RECORD_TYPE emRecordFileType; /// ???????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char* pszCardID; /// ???? BOOL bTime; /// ?????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stuStartTime, stuEndTime), ?FALSE?????????stuStartTime, stuEndTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// UTC??????(???UTC???), ??stuEndTimeRealUTC?????????(stuStartTime, stuEndTime)???? NET_TIME stuEndTimeRealUTC; /// UTC???????(???UTC???), ??stuStartTimeRealUTC?????????(stuStartTime, stuEndTime)???? }NET_IN_QUERY_RECORD_FILE_EX; ///@brief CLIENT_QueryRecordFileEx ?????????? typedef struct tagNET_OUT_QUERY_RECORD_FILE_EX { DWORD dwSize; /// ?????????????? NET_RECORDFILE_INFOEX* pstuFileinfo; /// ??????????????????, ???????????? int nMaxlen; /// ??????????????NET_RECORDFILE_INFOEX ??????????????? int nFileCount; /// ?????????????? }NET_OUT_QUERY_RECORD_FILE_EX; ///@brief ???????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRecordFileEx(LLONG lLoginID, NET_IN_QUERY_RECORD_FILE_EX* pstuInParam, NET_OUT_QUERY_RECORD_FILE_EX* pstuOutParam, int nWaitTime); ///@brief ??????????????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartQueryRecordFile(LLONG lLoginID, NET_IN_START_QUERY_RECORDFILE *pInParam, NET_OUT_START_QUERY_RECORDFILE *pOutParam); ///@brief ????????? ///@param[in] lQueryHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopQueryRecordFile(LLONG lQueryHandle); ///@brief ???????????????????,?????????????16???,?????????????16????? ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ??????????? /// nRecordFileType == EM_RECORD_TYPE_CARD??pchCardid??????????????????59??? /// nRecordFileType == EM_RECORD_TYPE_FIELD??pchCardid?????????????????????????256??? ///@param[in] tmStart ?????? ///@param[in] tmEnd ??????? ///@param[in] pchCardid ???? nRecordFileType ???? ///@param[out] nriFileinfo ????????? ///@param[in] maxlen ???? ///@param[out] filecount ??????? ///@param[in] waittime ????????, ???????? ///@param[in] bTime ????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QuickQueryRecordFile(LLONG lLoginID, int nChannelId, int nRecordFileType, LPNET_TIME tmStart, LPNET_TIME tmEnd, char* pchCardid, LPNET_RECORDFILE_INFO nriFileinfo, int maxlen, int *filecount, int waittime=1000, BOOL bTime = FALSE); ///@brief ?????????????(pFurthrestTime???????????????) ///@param[in] lLoginID ?????? ///@param[in] nRecordFileType ??????????? /// nRecordFileType == EM_RECORD_TYPE_CARD??pchCardid??????????????????59??? /// nRecordFileType == EM_RECORD_TYPE_FIELD??pchCardid?????????????????????????256??? ///@param[in] pchCardid ???? nRecordFileType ???? ///@param[out] pFurthrestTime ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryFurthestRecordTime(LLONG lLoginID, int nRecordFileType, char *pchCardid, NET_FURTHEST_RECORD_TIME* pFurthrestTime, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ??????????? /// nRecordFileType == EM_RECORD_TYPE_CARD??pchCardid??????????????????59??? /// nRecordFileType == EM_RECORD_TYPE_FIELD??pchCardid?????????????????????????256??? ///@param[in] cardid ???? nRecordFileType ???? ///@param[in] time_start ?????? ///@param[in] time_end ??????? ///@param[in] bTime ????? ///@param[in] waittime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_FindFile(LLONG lLoginID, int nChannelId, int nRecordFileType, char* cardid, LPNET_TIME time_start, LPNET_TIME time_end, BOOL bTime, int waittime); ///@brief ??????????(lpFindData???????????????) ///@param[in] lFindHandle ?????? ///@param[out] lpFindData ????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API int CALL_METHOD CLIENT_FindNextFile(LLONG lFindHandle,LPNET_RECORDFILE_INFO lpFindData); ///@brief ?????????????? ///@param[in] lFindHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindClose(LLONG lFindHandle); ///@brief ???????????(lpRecordFile???????????????) ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwUserData ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByRecordFile(LLONG lLoginID, LPNET_RECORDFILE_INFO lpRecordFile, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwUserData); ///@brief ???????????--???(lpRecordFile???????????????) ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByRecordFileEx(LLONG lLoginID, LPNET_RECORDFILE_INFO lpRecordFile, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser); ///@brief ???????????????? typedef struct tagNET_IN_PLAY_BACK_BY_FILE_INFO { LPNET_RECORDFILE_INFO pRecordFile; /// ????????? HWND hWnd; /// ???????, ???NULL fDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? LDWORD dwDataUser; /// ???????????? int nPlayDirection; /// ???????, 0:????; 1:????; int nWaittime; /// ????????, ????????? fVKInfoCallBack pVKInfoCallBack; /// VK?????? LDWORD dwVKInfoUser; /// VK???????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????LPNET_RECORDFILE_INFO????starttime, endtime), ?FALSE?????????LPNET_RECORDFILE_INFO????starttime, endtime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// ???????UTC???(???UTC???) NET_TIME stuEndTimeRealUTC; /// ???????UTC???(???UTC???) BYTE bReserved[964]; /// ?????? }NET_IN_PLAY_BACK_BY_FILE_INFO; ///@brief ???????????????? typedef struct tagNET_OUT_PLAY_BACK_BY_FILE_INFO { BYTE bReserved[1024]; /// ?????? }NET_OUT_PLAY_BACK_BY_FILE_INFO; ///@brief ???????????--??? ///@param[in] lLoginID ?????? ///@param[in] pstNetIn ??????????, ??????????????????? ///@param[out] pstNetOut ??????????, ??????????????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByRecordFileEx2(LLONG lLoginID, const NET_IN_PLAY_BACK_BY_FILE_INFO *pstNetIn, NET_OUT_PLAY_BACK_BY_FILE_INFO *pstNetOut); ///@brief ???????????--?????????????(lpRecordFile???????????????) ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@param[in] fDisConnectCallBack ????????????? ///@param[in] dwDisUser ??????? ///@param[in] dwWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartPlayBackByRecordFile(LLONG lLoginID, LPNET_RECORDFILE_INFO lpRecordFile, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, fRealPlayDisConnect fDisConnectCallBack, LDWORD dwDisUser, DWORD dwWaitTime = 10000); ///@brief ???????????--???????(????????????????)(lpRecordFile???????????????) ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@param[in] nCutFrameRate ????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_FramCotrolPlayBackByRecordFile(LLONG lLoginID, LPNET_RECORDFILE_INFO lpRecordFile, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, unsigned int nCutFrameRate); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ?????? ///@param[in] lpStartTime ?????? ///@param[in] lpStopTime ??????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByTime(LLONG lLoginID, int nChannelID, LPNET_TIME lpStartTime, LPNET_TIME lpStopTime, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser); ///@brief ?????????--??????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] lpStartTime ???????? ///@param[in] lpStopTime ????????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ?????? ///@param[in] dwPosUser ????????????? ///@param[in] fDownLoadDataCallBack ?????? ///@param[in] dwDataUser ????????????? ///@return ??0?????? 0 ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByTimeForSpGdpr(LLONG lLoginID, int nChannelID, LPNET_TIME lpStartTime, LPNET_TIME lpStopTime, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser); ///@brief ?????????--??? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ?????? ///@param[in] lpStartTime ?????? ///@param[in] lpStopTime ??????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByTimeEx(LLONG lLoginID, int nChannelID, LPNET_TIME lpStartTime, LPNET_TIME lpStopTime, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser); ///@brief ?????????--????????,?????????,pstNetIn??pstNetOut????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ?????? ///@param[in] pstNetIn ??????????, ??????????????????? ///@param[out] pstNetOut ??????????, ??????????????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByTimeEx2(LLONG lLoginID, int nChannelID, NET_IN_PLAY_BACK_BY_TIME_INFO *pstNetIn, NET_OUT_PLAY_BACK_BY_TIME_INFO *pstNetOut); ///@brief ?????????--????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ?????? ///@param[in] lpStartTime ?????? ///@param[in] lpStopTime ??????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@param[in] fDisConnectCallBack ????????????? ///@param[in] dwDisUser ??????? ///@param[in] dwWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartPlayBackByTime(LLONG lLoginID, int nChannelID, LPNET_TIME lpStartTime, LPNET_TIME lpStopTime, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, fRealPlayDisConnect fDisConnectCallBack, LDWORD dwDisUser, DWORD dwWaitTime = 10000); ///@brief ?????????--???????(????????????????) ///@param[in] lLoginID ?????? ///@param[in] nChannelID ?????? ///@param[in] lpStartTime ?????? ///@param[in] lpStopTime ??????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@param[in] nCutFrameRate ????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_FramCotrolPlayBackByTime(LLONG lLoginID, int nChannelID, LPNET_TIME lpStartTime, LPNET_TIME lpStopTime, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, unsigned int nCutFrameRate); ///@brief ????????????(lpRecordFile???????????????) ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] hWnd ?????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwPosUser ??????? ///@param[in] fDownLoadDataCallBack ????????????? ///@param[in] dwDataUser ??????? ///@param[in] dwUser ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackBySynopsisFile(LLONG lLoginID, LPNET_SYNOPSISFILE_INFO lpRecordFile, HWND hWnd, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwPosUser, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, LDWORD dwUser); ///@brief ???????????(pParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pParam ??????????, ??????????????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_MultiPlayBack(LLONG lLoginID, NET_MULTI_PLAYBACK_PARAM *pParam); ///@brief ?????????????? ///@param[in] lPlayHandle: ?????? ///@param[in] offsettime: ??????????? ///@param[in] offsetbyte: ???????????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SeekPlayBack(LLONG lPlayHandle, unsigned int offsettime, unsigned int offsetbyte); ///@brief ????????????????? typedef struct tagNET_IN_SEEK_PLAYBACK_PARAM { DWORD dwSize; unsigned int nOffsettime; /// ??????????????????????????0xffffffff????????????? unsigned int nOffsetbyte; /// ????????????????????????K????????0xffffffff?????????????????offsettime???????????????????^offsetbyte=??????????*????????????????? int nStreamMode; /// ????????0?????????? 1?????I? }NET_IN_SEEK_PLAYBACK_PARAM; ///@brief ????????????????? typedef struct tagNET_OUT_SEEK_PLAYBACK_PARAM { DWORD dwSize; }NET_OUT_SEEK_PLAYBACK_PARAM; ///@brief ??????????????,??????I??? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SeekPlayBackEx(LLONG lPlayHandle, const NET_IN_SEEK_PLAYBACK_PARAM *pstuInParam, NET_OUT_SEEK_PLAYBACK_PARAM *pstuOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lPlayHandle: ?????? ///@param[in] lpSeekTime: ??????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SeekPlayBackByTime(LLONG lPlayHandle, LPNET_TIME lpSeekTime); ///@brief ???????????? ///@param[in] lPlayHandle: ?????? ///@param[in] bPause: ??????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PausePlayBack(LLONG lPlayHandle, BOOL bPause); ///@brief ???????? ///@param[in] lPlayHandle: ?????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FastPlayBack(LLONG lPlayHandle); ///@brief ????????? ///@param[in] lPlayHandle: ?????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SlowPlayBack(LLONG lPlayHandle); ///@brief ???????????? ///@param[in] lPlayHandle: ?????? ///@param[in] emSpeed: ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPlayBackSpeed(LLONG lPlayHandle, EM_PLAY_BACK_SPEED emSpeed); ///@brief ?????????? typedef enum tagEM_PLAYBACK_SPEED_TYPE { EM_PLAYBACK_SPEED_FAST, /// ??? EM_PLAYBACK_SPEED_SLOW, /// ???? } EM_PLAYBACK_SPEED_TYPE; ///@brief ?????? typedef enum tagEM_PLAYBACK_DIRECTION { EM_PLAYBACK_DIRECTION_FORWARD, /// ???? EM_PLAYBACK_DIRECTION_REVERSE, /// ???? } EM_PLAYBACK_DIRECTION; ///@brief CLIENT_SetPlayBackCustomSpeed ?????????? typedef struct tagNET_IN_PLAYBACK_CUSTOM_SPEED { DWORD dwSize; /// ??????? EM_PLAYBACK_SPEED_TYPE emSpeedType; /// ??????? EM_PLAYBACK_DIRECTION emDirection; /// ??????? int nPlaySpeed; /// ???????, ???????2????? } NET_IN_PLAYBACK_CUSTOM_SPEED; ///@brief CLIENT_SetPlayBackCustomSpeed ?????????? typedef struct tagNET_OUT_PLAYBACK_CUSTOM_SPEED { DWORD dwSize; /// ??????? } NET_OUT_PLAYBACK_CUSTOM_SPEED; ///@brief ????????????, ??????????????? ///@param[in] lPlayHandle ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPlayBackCustomSpeed(LLONG lPlayHandle, const NET_IN_PLAYBACK_CUSTOM_SPEED* pstInParam, NET_OUT_PLAYBACK_CUSTOM_SPEED* pstOutParam); ///@brief ????????? ///@param[in] lPlayHandle ?????? ///@param[in] bStop ???? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StepPlayBack(LLONG lPlayHandle, BOOL bStop); ///@brief ??????????--?????????? ///@param[in] lPlayHandle ?????? ///@param[in] bBackward FLASE ????,TRUE ???? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PlayBackControlDirection(LLONG lPlayHandle, BOOL bBackward); ///@brief ????????? ///@param[in] lPlayHandle ?????? ///@param[in] framerate ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetFramePlayBack(LLONG lPlayHandle, int framerate); ///@brief ????????? ///@param[in] lPlayHandle ?????? ///@param[out] fileframerate ?????? ///@param[out] playframerate ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFramePlayBack(LLONG lPlayHandle, int *fileframerate, int *playframerate); ///@brief ????????????? ///@param[in] lPlayHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NormalPlayBack(LLONG lPlayHandle); ///@brief ??????????(lpPlayBackParam?????????????) ///@param[in] lPlayHandle ?????? ///@param[in] lpPlayBackParam ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SmartSearchPlayBack(LLONG lPlayHandle, LPIntelligentSearchPlay lpPlayBackParam); ///@brief ??????OSD??? ///@param[in] lPlayHandle ?????? ///@param[out] lpOsdTime osd??? ///@param[out] lpStartTime ?????? ///@param[out] lpEndTime ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPlayBackOsdTime(LLONG lPlayHandle, LPNET_TIME lpOsdTime, LPNET_TIME lpStartTime, LPNET_TIME lpEndTime); ///@brief ??????? ///@param[in] lPlayHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopPlayBack(LLONG lPlayHandle); ///@brief ????????? typedef struct tagNET_IN_SUPPLEMENT_BY_TIME_INFO { int nChannelID; /// ????? NET_TIME stStartTime; /// ?????? NET_TIME stStopTime; /// ??????? HWND hWnd; /// ???????, ???NULL fDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? LDWORD dwDataUser; /// ???????????? fVKInfoCallBack pVKInfoCallBack; /// VK?????? LDWORD dwVKInfoUser; /// VK???????????? BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stStopTime), ?FALSE?????????stStartTime, stStopTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// ???????UTC???(???UTC???) NET_TIME stuEndTimeRealUTC; /// ???????UTC???(???UTC???) char bReserved[972]; /// ?????? }NET_IN_SUPPLEMENT_BY_TIME_INFO; ///@brief ?????????? typedef struct tagNET_OUT_SUPPLEMENT_BY_TIME_INFO { char bReserved[1024]; /// ?????? }NET_OUT_SUPPLEMENT_BY_TIME_INFO; ///@brief ?????????,pstIn??pstOut????????????? ///@param[in] lLoginID ?????? ///@param[in] pstIn ??????????, ??????????????????? ///@param[out] pstOut ??????????, ??????????????????? ///@return ??? CLIENT_NET_API LLONG CALL_METHOD CLIENT_SupplementByTime(LLONG lLoginID, NET_IN_SUPPLEMENT_BY_TIME_INFO *pstIn, NET_OUT_SUPPLEMENT_BY_TIME_INFO *pstOut); ///@brief ????? ///@param[in] lSupplementHandle ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSupplement(LLONG lSupplementHandle); ///@brief ??????????(lpRecordFile???????????????) ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] sSavedFileName ?????????????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwUserData ??????? ///@param[in] bUseUTCTime ???utc??? ///@return ??? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByRecordFile(LLONG lLoginID, LPNET_RECORDFILE_INFO lpRecordFile, char *sSavedFileName, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwUserData, BOOL bUseUTCTime = FALSE); ///@brief ??????????--??? ///@param[in] lLoginID ?????? ///@param[in] lpRecordFile ????????? ///@param[in] sSavedFileName ?????, ?????????????????????????; fDownLoadDataCallBack?????, ????????????????????? ///@param[in] cbDownLoadPos ???????????? ///@param[in] dwUserData ??????? ///@param[in] fDownLoadDataCallBack ???????????? ///@param[in] dwDataUser ??????? ///@param[in] pReserved ?????????????(????????? 8 ???????( ///@param[in] bUseUTCTime ???utc??? ///@return ??? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByRecordFileEx(LLONG lLoginID, LPNET_RECORDFILE_INFO lpRecordFile, char *sSavedFileName, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwUserData, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, void* pReserved = NULL, BOOL bUseUTCTime = FALSE); ///@brief CLIENT_DownloadByRecordFileEx3 ?????? typedef struct tagNET_IN_DOWNLOAD { DWORD dwSize; /// ???????????????????? UINT nOffLength; /// ?????? LPNET_RECORDFILE_INFO lpRecordFile; /// ????????? char* pszSavedFileName; /// ?????????????? fDownLoadPosCallBack cbDownLoadPos; /// ???????????? LDWORD dwUserData; /// ????????????????????? fDataCallBack fDownLoadDataCallBack; /// ????????????? LDWORD dwDataUser; /// ?????????????????????? BOOL bUseUTCTime; /// ??????UTC??? char szResvered[4]; /// ?????? } NET_IN_DOWNLOAD; ///@brief CLIENT_DownloadByRecordFileEx3 ?????? typedef struct tagNET_OUT_DOWNLOAD { DWORD dwSize; /// ???????????????????? }NET_OUT_DOWNLOAD; ///@brief ???????--???Ex3?????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByRecordFileEx3(LLONG lLoginID, const NET_IN_DOWNLOAD* pstuInParam, NET_OUT_DOWNLOAD* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@brief ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ????????? ???EM_QUERY_RECORD_TYPE ///@param[in] tmStart ?????? ///@param[in] tmEnd ??????? ///@param[in] sSavedFileName ?????????????? ///@param[in] cbTimeDownLoadPos ???????????? ///@param[in] dwUserData ??????? ///@return ??? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByTime(LLONG lLoginID, int nChannelId, int nRecordFileType, LPNET_TIME tmStart, LPNET_TIME tmEnd, char *sSavedFileName, fTimeDownLoadPosCallBack cbTimeDownLoadPos, LDWORD dwUserData); ///@brief ?????????????--??? ///@param[in] lLoginID ?????? ///@param[in] nChannelId ????? ///@param[in] nRecordFileType ????????? ???EM_QUERY_RECORD_TYPE ///@param[in] tmStart ?????? ///@param[in] tmEnd ??????? ///@param[in] sSavedFileName ?????, ?????????????????????????; fDownLoadDataCallBack?????, ????????????????????? ///@param[in] cbTimeDownLoadPos ???????????? ///@param[in] dwUserData ??????? ///@param[in] fDownLoadDataCallBack ???????????? ///@param[in] dwDataUser ??????? ///@param[in] pReserved ?????????????(????????? 8 ???????( ///@return ??? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByTimeEx(LLONG lLoginID, int nChannelId, int nRecordFileType, LPNET_TIME tmStart, LPNET_TIME tmEnd, char *sSavedFileName, fTimeDownLoadPosCallBack cbTimeDownLoadPos, LDWORD dwUserData, fDataCallBack fDownLoadDataCallBack, LDWORD dwDataUser, void* pReserved = NULL); ///@brief ?????????????,????KB ///@param[in] lFileHandle ?????? ///@param[out] nTotalSize ????????? ///@param[out] nDownLoadSize ????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDownloadPos(LLONG lFileHandle, int *nTotalSize, int *nDownLoadSize); ///@brief ????????? ///@param[in] lFileHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopDownload(LLONG lFileHandle); ///@brief ?????????????? ///@param[in] lFileHandle ?????? ///@param[in] bPause ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PauseDownload(LLONG lFileHandle, BOOL bPause); /***** ------------------------------------- ???????????? ????????????? ????? ---------------------*/ #define NET_DATA_CALL_BACK_VALUE 1000 /// ???EM_REAL_DATA_TYPE???,????????????????????(fRealDataCallBackEx,fDataCallBack)???????dwDataType??? /// ???????????????????NET_DATA_CALL_BACK_VALUE. /// ??,dwDataType = NET_DATA_CALL_BACK_VALUE + emDataType /// ????????????????????????????,??????????? dwDataType ??????? NET_DATA_CALL_BACK_VALUE??emDataType??? /// ??,EM_REAL_DATA_TYPE_PRIVATE???????????? ///@brief ??????????? typedef enum tagEM_AUDIO_DATA_TYPE { EM_AUDIO_DATA_TYPE_DEFAULT = 0, /// ??? EM_AUDIO_DATA_TYPE_AAC, /// ??????????AAC EM_AUDIO_DATA_TYPE_G711A, /// ??????????G711A EM_AUDIO_DATA_TYPE_G711U, /// ??????????G711U EM_AUDIO_DATA_TYPE_MP2, /// ??????????MP2 }EM_AUDIO_DATA_TYPE; ///@brief ???? typedef struct tagNET_DATA_CALL_BACK_TIME { DWORD dwYear; /// ?? DWORD dwMonth; /// ?? DWORD dwDay; /// ?? DWORD dwHour; /// ? DWORD dwMinute; /// ?? DWORD dwSecond; /// ?? DWORD dwMillisecond; /// ???? DWORD dwPTS; /// pts ???? DWORD dwDTS; /// dts ???? DWORD dwReserved[3]; /// ?????? } NET_DATA_CALL_BACK_TIME; ///@brief ????? typedef enum tagEM_DATA_CALL_BACK_FRAM_TYPE { EM_DATA_CALL_BACK_FRAM_TYPE_UNKNOWN = 0, /// ????????? EM_DATA_CALL_BACK_FRAM_TYPE_VIDEO, /// ??????????? EM_DATA_CALL_BACK_FRAM_TYPE_AUDIO, /// ??????????? EM_DATA_CALL_BACK_FRAM_TYPE_DATA, /// ???????????? }EM_DATA_CALL_BACK_FRAM_TYPE; ///@brief ??????? typedef enum tagEM_DATA_CALL_BACK_FRAM_SUB_TYPE { EM_DATA_CALL_BACK_FRAM_SUB_TYPE_INVALID = -1, ///???????? EM_DATA_CALL_BACK_FRAM_SUB_TYPE_I_FRAME, ///???I? EM_DATA_CALL_BACK_FRAM_SUB_TYPE_P_FRAME, ///???P? EM_DATA_CALL_BACK_FRAM_SUB_TYPE_B_FRAME, ///???B? }EM_DATA_CALL_BACK_FRAM_SUB_TYPE; ///@brief ????????? typedef struct tagNET_DATA_CALL_BACK_INFO { DWORD dwSize; /// ??????? DWORD dwDataType; /// ???????? unsigned char *pBuffer; /// ???? DWORD dwBufSize; /// ??????? NET_DATA_CALL_BACK_TIME stuTime; /// ???? EM_DATA_CALL_BACK_FRAM_TYPE emFramType; /// ????? EM_DATA_CALL_BACK_FRAM_SUB_TYPE emFramSubType; /// ??????? }NET_DATA_CALL_BACK_INFO; ///@brief ??????????????????????? typedef int (CALLBACK *fDataCallBackEx)(LLONG lRealHandle, NET_DATA_CALL_BACK_INFO *pDataCallBack, LDWORD dwUser); ///@brief ????????????????????????? typedef struct tagNET_IN_REALPLAY_BY_DATA_TYPE { DWORD dwSize; /// ??????? int nChannelID; /// ?????? HWND hWnd; /// ?????? DH_RealPlayType rType; /// ???????? fRealDataCallBackEx cbRealData; /// ?????????? EM_REAL_DATA_TYPE emDataType; /// ????????????? LDWORD dwUser; /// ??????? const char* szSaveFileName; /// ??????????? fRealDataCallBackEx2 cbRealDataEx; /// ??????????-??? EM_AUDIO_DATA_TYPE emAudioType; /// ?????? fDataCallBackEx cbRealDataEx2; /// ????????????????????????? }NET_IN_REALPLAY_BY_DATA_TYPE; ///@brief ?????????????????????????? typedef struct tagNET_OUT_REALPLAY_BY_DATA_TYPE { DWORD dwSize; /// ??????? }NET_OUT_REALPLAY_BY_DATA_TYPE; ///@brief ?????????????? ?????(???), ?????????? cbRealData ???????????????? emDataType ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealPlayByDataType(LLONG lLoginID, const NET_IN_REALPLAY_BY_DATA_TYPE* pstInParam, NET_OUT_REALPLAY_BY_DATA_TYPE* pstOutParam, DWORD dwWaitTime); ///@brief ??????????????????? ??? typedef struct tagNET_IN_PLAYBACK_BY_DATA_TYPE { DWORD dwSize; /// ??????? int nChannelID; /// ?????? NET_TIME stStartTime; /// ?????? NET_TIME stStopTime; /// ??????? HWND hWnd; /// ???????, ???NULL fDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? EM_REAL_DATA_TYPE emDataType; /// ????????????? LDWORD dwDataUser; /// ???????????? int nPlayDirection; /// ???????, 0:????; 1:????; EM_AUDIO_DATA_TYPE emAudioType; /// ??????? fDataCallBackEx fDownLoadDataCallBackEx;/// ????????????????????????? }NET_IN_PLAYBACK_BY_DATA_TYPE; ///@brief ??????????????????? ???? typedef struct tagNET_OUT_PLAYBACK_BY_DATA_TYPE { DWORD dwSize; /// ??????? }NET_OUT_PLAYBACK_BY_DATA_TYPE; ///@brief ???????????? ??????, ?????????? fDownLoadDataCallBack ???????????????? emDataType ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_PlayBackByDataType(LLONG lLoginID, const NET_IN_PLAYBACK_BY_DATA_TYPE* pstInParam, NET_OUT_PLAYBACK_BY_DATA_TYPE* pstOutParam, DWORD dwWaitTime); ///@brief ???????????????????? ??? typedef struct tagNET_IN_DOWNLOAD_BY_DATA_TYPE { DWORD dwSize; /// ??????? int nChannelID; /// ?????? EM_QUERY_RECORD_TYPE emRecordType; /// ??????? char* szSavedFileName; /// ???????????? NET_TIME stStartTime; /// ?????? NET_TIME stStopTime; /// ??????? fTimeDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? EM_REAL_DATA_TYPE emDataType; /// ????????????? LDWORD dwDataUser; /// ???????????? EM_AUDIO_DATA_TYPE emAudioType; /// ??????? }NET_IN_DOWNLOAD_BY_DATA_TYPE; ///@brief ???????????????????? ???? typedef struct tagNET_OUT_DOWNLOAD_BY_DATA_TYPE { DWORD dwSize; /// ??????? }NET_OUT_DOWNLOAD_BY_DATA_TYPE; ///@brief ??????????? ???????, ??????????????????????? fDownLoadDataCallBack ????????????????? emDataType ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByDataType(LLONG lLoginID, const NET_IN_DOWNLOAD_BY_DATA_TYPE* pstInParam, NET_OUT_DOWNLOAD_BY_DATA_TYPE* pstOutParam, DWORD dwWaitTime); ///@brief CLIENT_AdaptiveDownloadByTime ??? typedef struct tagNET_IN_ADAPTIVE_DOWNLOAD_BY_TIME { DWORD dwSize; /// ??????? int nChannelID; /// ?????? EM_QUERY_RECORD_TYPE emRecordType; /// ??????? char* szSavedFileName; /// ???????????? NET_TIME stStartTime; /// ?????? NET_TIME stStopTime; /// ??????? fTimeDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? EM_REAL_DATA_TYPE emDataType; /// ????????????? LDWORD dwDataUser; /// ???????????? char szEncryptPasswd[64]; /// ??????????????????????8 BOOL bOnlySupportRealUTC; /// ?TRUE?????????stuStartTimeRealUTC??stuEndTimeRealUTC(??????stStartTime, stStopTime), ?FALSE?????????stStartTime, stStopTime(??????stuStartTimeRealUTC??stuEndTimeRealUTC) NET_TIME stuStartTimeRealUTC; /// ???????UTC???(???UTC???) NET_TIME stuEndTimeRealUTC; /// ???????UTC???(???UTC???) fTimeDownLoadPosCallBackEx cbDownLoadPosEx; /// ???????????(???????UTC???????????????????) fVKInfoCallBack pVKInfoCallBack; /// VK?????? LDWORD dwVKInfoUser; /// VK???????????? BOOL bWait; /// ??????????????? }NET_IN_ADAPTIVE_DOWNLOAD_BY_TIME; ///@brief CLIENT_AdaptiveDownloadByTime ???? typedef struct tagNET_OUT_ADAPTIVE_DOWNLOAD_BY_TIME { DWORD dwSize; /// ??????? }NET_OUT_ADAPTIVE_DOWNLOAD_BY_TIME; ///@brief ????????????? ??????? CLIENT_StopDownload ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AdaptiveDownloadByTime( LLONG lLoginID, const NET_IN_ADAPTIVE_DOWNLOAD_BY_TIME* pstInParam, NET_OUT_ADAPTIVE_DOWNLOAD_BY_TIME* pstOutParam, DWORD dwWaitTime ); ///@brief CLIENT_DownloadByFileSelfAdapt ??? typedef struct tagNET_IN_DOWNLOAD_BYFILE_SELFADAPT { DWORD dwSize; /// ??????? int nChannelID; /// ?????? EM_QUERY_RECORD_TYPE emRecordType; /// ??????? char szFileName[MAX_PATH]; /// ???????????? unsigned int size; /// ???????, ?????Kbyte fDownLoadPosCallBack cbDownLoadPos; /// ?????? LDWORD dwPosUser; /// ???????????? fDataCallBack fDownLoadDataCallBack; /// ?????? EM_REAL_DATA_TYPE emDataType; /// ????????????? LDWORD dwDataUser; /// ???????????? /* ?????? */ unsigned int nFrameNum; /// ???????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? unsigned int nDriveno; /// ?????(???????????????????????,0??127??????????,????64???????1,128??????????) unsigned int nStartCluster; /// ?????? BYTE bImportantRecID; /// 0:?????? 1:?????? BYTE bHint; /// ???????????(nRecordFileType==4?,bImportantRecID<<8 +bHint ,????????????? ) BYTE bRecType; /// 0-????????? 1-????1????? 2-??????2 3-??????3??? char szEncryptPasswd[64]; /// ??????????????????????8 fVKInfoCallBack pVKInfoCallBack; /// VK?????? LDWORD dwVKInfoUser; /// VK???????????? }NET_IN_DOWNLOAD_BYFILE_SELFADAPT; ///@brief CLIENT_DownloadByFileSelfAdapt ???? typedef struct tagNET_OUT_DOWNLOAD_BYFILE_SELFADAPT { DWORD dwSize; /// ??????? }NET_OUT_DOWNLOAD_BYFILE_SELFADAPT; ///@brief ????????????????????, pstInParam ??pstOutParam ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DownloadByFileSelfAdapt(LLONG lLoginID, const NET_IN_DOWNLOAD_BYFILE_SELFADAPT* pstInParam, NET_OUT_DOWNLOAD_BYFILE_SELFADAPT* pstOutParam, DWORD dwWaitTime); ///@brief ??????(pSrcRect???????????????) ///@param[in] lPlayHandle ??????? ///@param[in] nRegionNum ???????? ///@param[in] pSrcRect ??????? ///@param[in] hDestWnd ?????? ///@param[in] bEnable ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDisplayRegion(LLONG lPlayHandle,DWORD nRegionNum, DH_DISPLAYRREGION *pSrcRect, HWND hDestWnd, BOOL bEnable); ///@brief ?????????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindFrameInfo(LLONG lLoginID, NET_IN_FIND_FRAMEINFO_PRAM *pInParam, NET_OUT_FIND_FRAMEINFO_PRAM* pOutParam, int nWaitTime); ///@brief ???????????????????????????????(pInParam, pOutParam???????????????) ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindNextFrameInfo(LLONG lFindHandle, NET_IN_FINDNEXT_FRAMEINFO_PRAM *pInParam, NET_OUT_FINDNEXT_FRAMEINFO_PRAM* pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FileStreamSetTags(LLONG lFindHandle, NET_IN_FILE_STREAM_TAGS_INFO *pInParam, NET_OUT_FILE_STREAM_TAGS_INFO *pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FileStreamGetTags(LLONG lFindHandle, NET_IN_FILE_STREAM_GET_TAGS_INFO *pInParam, NET_OUT_FILE_STREAM_GET_TAGS_INFO *pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FileStreamClearTags(LLONG lFindHandle, NET_IN_FILE_STREAM_TAGS_INFO *pInParam, NET_OUT_FILE_STREAM_TAGS_INFO *pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FileStreamFilterTags(LLONG lFindHandle, NET_IN_FILE_STREAM_FILTER_TAGS_INFO *pInParam, NET_OUT_FILE_STREAM_GET_TAGS_INFO *pOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lFindHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindFrameInfoClose(LLONG lFindHandle); ///@brief pInParam, pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FileStreamMotionMatch(LLONG lLoginID, const NET_IN_MOTIONMATCH_PARAM *pInParam, NET_OUT_MOTIONMATCH_PARAM* pOutParam, int nWaitTime); ///@brief ?????????, lFindHandle???CLIENT_FindFrameInfo????????????????CLIENT_TagManagerStartTag/CLIENT_TagManagerSetSubTag/CLIENT_TagManagerStopTag????? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FileStreamFindTags(LLONG lFindHandle, NET_IN_FINDTAGS_INFO *pInParam, NET_OUT_FINDTAGS_INFO *pOutParam, int nWaitTime); ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerGetTagState(LLONG lLoginID, NET_IN_TAGMANAGER_GETTAGSTATE_INFO *pInParam, NET_OUT_TAGMANAGER_GETTAGSTATE_INFO *pOutParam, int nWaitTime); ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerStartTag(LLONG lLoginID, NET_IN_TAGMANAGER_STARTTAG_INFO *pInParam, NET_OUT_TAGMANAGER_STARTTAG_INFO *pOutParam, int nWaitTime); ///@brief ??????, ???????????????20????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerSetSubTag(LLONG lLoginID, NET_IN_TAGMANAGER_SETSUBTAG_INFO *pInParam, NET_OUT_TAGMANAGER_SETSUBTAG_INFO *pOutParam, int nWaitTime); ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerStopTag(LLONG lLoginID, NET_IN_TAGMANAGER_STOPTAG_INFO *pInParam, NET_OUT_TAGMANAGER_STOPTAG_INFO *pOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerGetCaps(LLONG lLoginID, NET_IN_TAGMANAGER_GETCAPS_INFO *pInParam, NET_OUT_TAGMANAGER_GETCAPS_INFO *pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_TagManagerStartFind(LLONG lLoginID, NET_IN_TAGMANAGER_STARTFIND_INFO *pInParam, NET_OUT_TAGMANAGER_STARTFIND_INFO *pOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lFindID ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerDoFind(LLONG lFindID, NET_IN_TAGMANAGER_DOFIND_INFO *pInParam, NET_OUT_TAGMANAGER_DOFIND_INFO *pOutParam, int nWaitTime); ///@brief ??????????? ///@param[in] lFindID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TagManagerStopFind(LLONG lFindID); ///@brief ?????????????? ///@param[in] cbMessage ??????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API void CALL_METHOD CLIENT_SetDVRMessCallBack(fMessCallBack cbMessage,LDWORD dwUser); ///@brief ????????????????????Ex1 ///@param[in] cbMessage ??????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API void CALL_METHOD CLIENT_SetDVRMessCallBackEx1(fMessCallBackEx1 cbMessage, LDWORD dwUser); ///@brief ????????????????????Ex2 ///@param[in] cbMessage ??????????? ///@param[in] dwUser ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API void CALL_METHOD CLIENT_SetDVRMessCallBackEx2(fMessCallBackEx2 cbMessage, LDWORD dwUser); ///@brief CLIENT_SetCustomSubscribeParam ?????? typedef struct tagNET_IN_SET_CUSTOM_SUBSCRIBE_PARAM { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????????H???????? DWORD nAlarmTypes[64]; /// ???????????? int nAlarmTypeNum; /// ???????????? } NET_IN_SET_CUSTOM_SUBSCRIBE_PARAM; ///@brief ?????????H????? ///@param[in] pInParam : ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetCustomSubscribeParam(NET_IN_SET_CUSTOM_SUBSCRIBE_PARAM *pInParam); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartListen(LLONG lLoginID); ///@brief ????????????--??? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartListenEx(LLONG lLoginID); ///@brief ????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopListen(LLONG lLoginID); ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] dwAlarmType ???????? ///@param[in] nChannel ????? ///@param[in] pReserved dwAlarmType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AlarmReset(LLONG lLoginID, DWORD dwAlarmType, int nChannel, void* pReserved = NULL, int nWaitTime = 1000); ///@brief CLIENT_SetServerParam ?????? typedef struct tagNET_ACTIVE_RIGST_PARAMS { DWORD dwSize; /// ??????? BOOL bManualLogout; /// ????????????????????????????????SDK???????? } NET_ACTIVE_RIGST_PARAMS; ///@brief ?????????????????? ///@param[in] pParam ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetServerParam(NET_ACTIVE_RIGST_PARAMS* pParam); ///@brief ?????????,????????nTimeout??????????(????????????SDK??????) ///@param[in] ip ip??? ///@param[in] port ?????? ///@param[in] nTimeout ?????? ///@param[in] cbListen ??????? ///@param[in] dwUserData ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ListenServer(char* ip, WORD port, int nTimeout, fServiceCallBack cbListen, LDWORD dwUserData); ///@brief ?????? ///@param[in] lServerHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopListenServer(LLONG lServerHandle); ///@brief ??????????????? ///@param[in] devSerial ?????? ///@param[in] ip ip??? ///@param[in] port ?????? ///@param[in] bAccept ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ResponseDevReg(char *devSerial, char* ip, WORD port, BOOL bAccept); ///@brief ???????????????????? ///@param[out] lDevHandle : ?????? ///@param[out] pDevIp : ???ip ///@param[out] wDevPort : ?????? ///@param[out] dwUserData : ??????? typedef int (CALLBACK *fRedirectServerCallBack)( LLONG lDevHandle, char *pDevIp, WORD wDevPort, LDWORD dwUserData); ///@brief fRedirectServerCallBackEx??????? typedef struct tagNET_CB_REDIRECT_SERVER_CALLBACK_INFO { char* szIP; /// ???????????????????????????IP UINT nPort; /// ?????????????????????????????? char szDeviceID[256]; /// ???????????????????????????ID BYTE byReserved[1024]; /// ?????? }NET_CB_REDIRECT_SERVER_CALLBACK_INFO; ///@brief ??????????????????????? typedef int (CALLBACK *fRedirectServerCallBackEx)( LLONG lDevHandle, NET_CB_REDIRECT_SERVER_CALLBACK_INFO *pInParam, LDWORD dwUserData); ///@brief ???????????? ///@param[in] ip ip??? ///@param[in] port ?????? ///@param[in] cbListen ??????? ///@param[in] dwUserData ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartRedirectService(char* ip, WORD port,fRedirectServerCallBack cbListen, LDWORD dwUserData); ///@brief CLIENT_StartRedirectServiceEx?????????? typedef struct tagNET_IN_START_REDIRECT_SERVICE { DWORD dwSize; /// ???????, ????????????????????? BYTE byReserved[4]; /// ?????? char szIP[64]; /// ?????????????????IP WORD nPort; /// ???????????????????? BYTE byReserved1[6]; /// ?????? fRedirectServerCallBackEx cbFuncEx; /// ??????????????(???) LDWORD dwUserData; /// ???????, ??fRedirectServerCallBackEx?? }NET_IN_START_REDIRECT_SERVICE; ///@brief CLIENT_StartRedirectServiceEx?????????? typedef struct tagNET_OUT_START_REDIRECT_SERVICE { DWORD dwSize; /// ???????, ????????????????????? }NET_OUT_START_REDIRECT_SERVICE; ///@brief ?????????????????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartRedirectServiceEx(NET_IN_START_REDIRECT_SERVICE *pInParam, NET_OUT_START_REDIRECT_SERVICE *pOutParam); ///@brief ?????????? ///@param[in] lServerHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopRedirectService(LLONG lServerHandle); ///@brief ????????????????IP??Port ///@param[in] lDevHandle ??? ///@param[in] ARSIP IP??? ///@param[in] ARSPort ??? ///@param[in] nRetry ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetAutoRegisterServerInfo(LLONG lDevHandle, char* ARSIP, WORD ARSPort,WORD nRetry); ///@brief ????????????????????? typedef enum tagEM_DEV_PUSH_STREAM_TYPE { EM_DEV_PUSH_STREAM_TYPE_MAJOR, /// ?????? EM_DEV_PUSH_STREAM_TYPE_MINOR1, /// ??????1 EM_DEV_PUSH_STREAM_TYPE_MINOR2, /// ??????2 }EM_DEV_PUSH_STREAM_TYPE; ///@brief ????????????????? typedef struct tagNET_IN_REQUEST_START_PUSH_STREAM_TYPE { DWORD dwSize; /// ??????? int nChannelID; /// ????? EM_DEV_PUSH_STREAM_TYPE emStreamType; /// ???????? char szSSID[MAX_PUSH_STREAM_AUTH_SSID]; /// ???????ID??64?????? char szReciveServerIP[DH_MAX_IPADDR_LEN_EX]; /// ??????????IP int nReciveServerPort; /// ????????????? }NET_IN_REQUEST_START_PUSH_STREAM_TYPE; ///@brief ??????????????????? typedef struct tagNET_OUT_REQUEST_START_PUSH_STREAM_TYPE { DWORD dwSize; /// ??????? }NET_OUT_REQUEST_START_PUSH_STREAM_TYPE; ///@brief CLIENT_ReqDevStopPushStream??? typedef struct tagNET_IN_REQUEST_STOP_PUSH_STREAM_TYPE { DWORD dwSize; /// ??????? char szSSID[MAX_PUSH_STREAM_AUTH_SSID]; /// ???????ID??64?????? }NET_IN_REQUEST_STOP_PUSH_STREAM_TYPE; ///@brief CLIENT_ReqDevStopPushStream???? typedef struct tagNET_OUT_REQUEST_STOP_PUSH_STREAM_TYPE { DWORD dwSize; /// ??????? }NET_OUT_REQUEST_STOP_PUSH_STREAM_TYPE; ///@brief ?????????????????????? typedef struct tagNET_IN_QUERY_PUSH_STREAM_INFO { DWORD dwSize; /// ??????? char szSSID[MAX_PUSH_STREAM_AUTH_SSID]; /// ???????ID??64?????? }NET_IN_QUERY_PUSH_STREAM_INFO; ///@brief ??????????????????????? typedef struct tagNET_OUT_QUERY_PUSH_STREAM_INFO { DWORD dwSize; /// ??????? char szReciveServerIP[DH_MAX_IPADDR_LEN_EX]; /// ??????????IP int nReciveServerPort; /// ????????????? }NET_OUT_QUERY_PUSH_STREAM_INFO; ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ReqDevStartPushStream(LLONG lLoginID,const NET_IN_REQUEST_START_PUSH_STREAM_TYPE* pInParam, NET_OUT_REQUEST_START_PUSH_STREAM_TYPE* pOutParam, int nWaitTime); ///@brief ????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ReqDevStopPushStream(LLONG lLoginID,const NET_IN_REQUEST_STOP_PUSH_STREAM_TYPE* pInParam, NET_OUT_REQUEST_STOP_PUSH_STREAM_TYPE* pOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDevPushStreamInfo(LLONG lLoginID, const NET_IN_QUERY_PUSH_STREAM_INFO* pInParam, NET_OUT_QUERY_PUSH_STREAM_INFO* pOutParam, int nWaitTime); ///@brief ??????????????? typedef enum tagEM_PUSH_STREAM_CONNECT_STATE { EM_PUSH_STREAM_CONNECT_STATE_SETUP, /// ???????????????? EM_PUSH_STREAM_CONNECT_STATE_TEARDOWN, /// ??????????????? }EM_PUSH_STREAM_CONNECT_STATE; ///@brief ??????????????:??????????????? /// lClientHandle : ??????????? /// clientIP : ?????????IP /// clientPort : ??????????? /// clientConState : ??????????? /// dwUserData : ??????? typedef void (CALLBACK *fStreamClientState)(LLONG lClientHandle, char* clientIP, int clientPort, EM_PUSH_STREAM_CONNECT_STATE clientConState, LDWORD dwUserData); ///@brief ?????????????? /// lClientHandle : ??????????? /// pBuffer : ???????? /// dwBufSize : ??????????? /// dwUserData : ??????? typedef void (CALLBACK *fStreamDataComing)(LLONG lClientHandle, BYTE *pBuffer, DWORD dwBufSize,LDWORD dwUserData); ///@brief ???????????? ///@param[in] ip IP??? ///@param[in] port ??? ///@param[in] cbClientState ????????? ///@param[in] dwUserData1 ??????? ///@param[in] cbLiveStreamData ???????????? ///@param[in] dwUserData2 ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartReceiveStreamService(char *ip, WORD port,fStreamClientState cbClientState,LDWORD dwUserData1, fStreamDataComing cbLiveStreamData, LDWORD dwUserData2); ///@brief ??????????? ///@param[in] lServerHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopReceiveStreamService(LLONG lServerHandle); ///@brief ??????????????? ///@param[in] lClientHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopStreamClient(LLONG lClientHandle); ///@brief ?????????????????SSID ///@param[in] lServerHandle ?????? ///@param[in] pSSID ssid??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetStreamClientAuthID(LLONG lServerHandle, const char* pSSID); ///@brief ???????????,????????dwTimeOut?????????? ///@param[in] wPort ??? ///@param[in] pIp IP??? ///@param[in] pfscb ??? ///@param[in] dwTimeOut ?????? ///@param[in] dwUserData ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartService(WORD wPort, char *pIp = NULL, fServiceCallBack pfscb = NULL, DWORD dwTimeOut = 0xffffffff, LDWORD dwUserData = 0); ///@brief ?????? ///@param[in] lHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopService(LLONG lHandle); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ??????????????????? ///@param[in] pValue ????????????????????????EM_USEDEV_MODE???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDeviceMode(LLONG lLoginID, EM_USEDEV_MODE emType, void* pValue); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pfcb ?????? ///@param[in] dwUser ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartTalkEx(LLONG lLoginID, pfAudioDataCallBack pfcb, LDWORD dwUser); ///@brief CLIENT_StartTalkByDataType??? ??? typedef struct tagNET_IN_START_TALK_INFO { DWORD dwSize; /// ??????? fAudioDataCallBackEx pfAudioDataCallBackEx; /// ????????????? LDWORD dwUser; /// pfAudioDataCallBackEx?????????????? }NET_IN_START_TALK_INFO; ///@brief CLIENT_StartTalkByDataType??? ???? typedef struct tagNET_OUT_START_TALK_INFO { DWORD dwSize; /// ??????? }NET_OUT_START_TALK_INFO; ///@brief ????????????????????????????????????????CLIENT_StartTalkEx????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaittime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartTalkByDataType(LLONG lLoginID, const NET_IN_START_TALK_INFO* pInParam, NET_OUT_START_TALK_INFO* pOutParam,int nWaittime); ///@brief ??????? typedef enum EM_TALK_DIRECTION { EM_TALK_DIRECTION_UNKNOWN = 0, /// ??? EM_TALK_DIRECTION_UNI, /// ??????????????????????????? EM_TALK_DIRECTION_BILATERAL, /// ????? EM_TALK_DIRECTION_LISTEN, /// ??????????????????? }EM_TALK_DIRECTION; ///@brief ??????????:lTalkHandle ? CLIENT_StartTalkEx????? ///@param[in] lTalkHandle ?????? ///@param[out] pDirection ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetTalkDirection(LLONG lTalkHandle, EM_TALK_DIRECTION* pDirection); ///@brief ???PC????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordStart(); ///@brief ????PC????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordStop(); ///@brief ???PC?????(??CLIENT_RecordStart()???) ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordStartEx(LLONG lLoginID); ///@brief ???PC?????(??CLIENT_RecordStartEx()???, ????????????????playsdk???????????????)??????????CLIENT_RecordStopEx ///@param[in] lLoginID: ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordStartEx2(LLONG lLoginID); ///@brief ????PC?????(??CLIENT_RecordStop()???) ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordStopEx(LLONG lLoginID); ///@brief ????????????????(pSendBuf???????????????) ///@param[in] lTalkHandle ?????? ///@param[in] pSendBuf ????????????? ///@param[in] dwBufSize ??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LONG CALL_METHOD CLIENT_TalkSendData(LLONG lTalkHandle, char *pSendBuf, DWORD dwBufSize); ///@brief ??????????????????? typedef void (CALLBACK *fTalkSendPosCallBack) (LLONG lTalkHandle,DWORD dwTotalSize, DWORD dwSendSize, LDWORD dwUser); ///@brief CLIENT_TalkSendDataByFile??? ??? typedef struct tagNET_IN_TALK_SEND_DATA_FILE { DWORD dwSize; /// ??????? char* pFilePath; /// ??????????? fTalkSendPosCallBack cbSendPos; /// ????????????? LDWORD dwUser; /// ??????? DWORD dwSendInterval; /// ???????????0??100??????sdk??????????? /// ????100???????????100????????? BOOL bNeedHead; /// ?????????????? /// TRUE????????SDK??????????????????????? /// FALSE??????????SDK????????????????????????pFilePath?????????????????? /* ?????? */ DH_TALK_CODING_TYPE emEncodeType; /// ????????? int nAudioBit; /// ????,??8??16?? DWORD dwSampleRate; /// ??????,??8000??16000?? }NET_IN_TALK_SEND_DATA_FILE; ///@brief CLIENT_TalkSendDataByFile??? ???? typedef struct tagNET_OUT_TALK_SEND_DATA_FILE { DWORD dwSize; /// ??????? }NET_OUT_TALK_SEND_DATA_FILE; ///@brief CLIENT_TalkSendDataByStream??? ??? typedef struct tagNET_IN_TALK_SEND_DATA_STREAM { DWORD dwSize; /// ??????? BYTE* pBuf; /// ????????? DWORD dwBufSize; /// ???????????? BOOL bNeedHead; /// ?????????????? /// TRUE????????SDK??????????????????????? /// FALSE??????????SDK????????????????????????pBuf?????????????? /* ?????? */ DH_TALK_CODING_TYPE emEncodeType; /// ????????? int nAudioBit; /// ????,??8??16?? DWORD dwSampleRate; /// ??????,??8000??16000?? }NET_IN_TALK_SEND_DATA_STREAM; ///@brief CLIENT_TalkSendDataByStream??? ???? typedef struct tagNET_OUT_TALK_SEND_DATA_STREAM { DWORD dwSize; /// ??????? }NET_OUT_TALK_SEND_DATA_STREAM; ///@brief ?????????????????????????????????????????????????????????? ///@param[in] lTalkHandle ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ??????????????????????????-1???????????? CLIENT_NET_API LONG CALL_METHOD CLIENT_TalkSendDataByStream(LLONG lTalkHandle, const NET_IN_TALK_SEND_DATA_STREAM *pInParam, NET_OUT_TALK_SEND_DATA_STREAM* pOutParam); ///@brief ?????????????????????????? ///@param[in] lTalkHandle ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ??????? lTalkHandle?? ?????? 0 CLIENT_NET_API LLONG CALL_METHOD CLIENT_TalkSendDataByFile(LLONG lTalkHandle, const NET_IN_TALK_SEND_DATA_FILE *pInParam, NET_OUT_TALK_SEND_DATA_FILE* pOutParam); ///@brief ???????????? ///@param[in] lTalkHandle ?????? ///@return ??????? lTalkHandle?? ?????? 0 CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopTalkSendDataByFile(LLONG lTalkHandle); ///@brief ???????????(pAudioDataBuf???????????????) ///@param[in] pAudioDataBuf ????????????? ///@param[in] dwBufSize ??????????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_AudioDec(char *pAudioDataBuf, DWORD dwBufSize); ///@brief ??????????????(pAudioDataBuf???????????????) ///@param[in] lTalkHandle ?????? ///@param[in] pAudioDataBuf ????????????? ///@param[in] dwBufSize ??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AudioDecEx(LLONG lTalkHandle, char *pAudioDataBuf, DWORD dwBufSize); ///@brief ????????????????? ///@param[in] lTalkHandle ?????? ///@param[in] wVolume ???? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetAudioClientVolume(LLONG lTalkHandle, WORD wVolume); ///@brief ????????? ///@param[in] lTalkHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopTalkEx(LLONG lTalkHandle); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AudioBroadcastAddDev(LLONG lLoginID); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AudioBroadcastDelDev(LLONG lLoginID); ///@brief ???????--?????(?????????->??????) ///@param[in] aft ?????? ///@return 0 ?????? CLIENT_NET_API int CALL_METHOD CLIENT_InitAudioEncode(DH_AUDIO_FORMAT aft); ///@brief ???????--???????(lpInBuf, lpOutBuf???????????????) ///@param[in] lTalkHandle ?????? ///@param[in] lpInBuf ??????? ///@param[in] lpInLen ????????? ///@param[out] lpOutBuf ?????? ///@param[in/out] lpOutLen ?????????? ///@return 0 ?????? CLIENT_NET_API int CALL_METHOD CLIENT_AudioEncode(LLONG lTalkHandle, BYTE *lpInBuf, DWORD *lpInLen, BYTE *lpOutBuf, DWORD *lpOutLen); ///@brief ???????--?????? ///@return 0 ?????? CLIENT_NET_API int CALL_METHOD CLIENT_ReleaseAudioEncode(); ///@brief ?????????(pLogBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[out] pLogBuffer ????????? ///@param[in] maxlen ??????????????? ///@param[out] nLogBufferlen ??????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryLog(LLONG lLoginID, char *pLogBuffer, int maxlen, int *nLogBufferlen, int waittime=3000); ///@brief ?????????????????????(pQueryParam, pLogBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[out] pQueryParam ??????? ///@param[out] pLogBuffer ????????? ///@param[in] nLogBufferLen ??????????????? ///@param[out] pRecLogNum ??????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDeviceLog(LLONG lLoginID, QUERY_DEVICE_LOG_PARAM *pQueryParam, char *pLogBuffer, int nLogBufferLen, int *pRecLogNum, int waittime=3000); ///@brief ?????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDevLogCount(LLONG lLoginID, NET_IN_GETCOUNT_LOG_PARAM *pInParam, NET_OUT_GETCOUNT_LOG_PARAM* pOutParam , int waittime=3000); ///@brief ?????????????? ///@param[in] pLogDataCB ?????? ///@param[in] dwUser ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSubscribeLogCallBack(fSubLogDataCallBack pLogDataCB, LDWORD dwUser); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] nWaittime ????????, ???????? ///@param[in] pReserved ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartSubscribeLog(LLONG lLoginID, int nWaittime, void* pReserved); ///@brief ???????????? ///@param[in] lSubLogHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSubscribeLog(LLONG lSubLogHandle); ///@brief ???????????(pRSBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[out] pRSBuffer ??????????? ///@param[in] maxlen ??????????????? ///@param[out] nRSBufferlen ?????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRecordState(LLONG lLoginID, char *pRSBuffer, int maxlen, int *nRSBufferlen, int waittime=1000); ///@brief ??????????????????????????????????????, ?????????????????????????????,0-???,1-???,2-???,pRSBuffer???????????????? ///@param[in] lLoginID ?????? ///@param[out] pRSBuffer ??????????? ///@param[in] maxlen ??????????????? ///@param[out] nRSBufferlen ?????????????????? ///@param[out] pReserved ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryExtraRecordState(LLONG lLoginID, char *pRSBuffer, int maxlen, int *nRSBufferlen, void *pReserved, int waittime=1000); ///@brief ????????(pBuf???????????????,????nType?????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] nType ??????? ///@param[out] pBuf ???????????????,????nType?????????????? ///@param[in] nBufLen ????nType?????????????????? ///@param[out] pRetLen ???????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDevState(LLONG lLoginID, int nType, char *pBuf, int nBufLen, int *pRetLen, int waittime=1000); ///@brief ???????????,nType?DH_DEVSTATE_ALARM_FRONTDISCONNECT?????????1???(pBuf???????????????) ///@param[in] lLoginID ?????? ///@param[in] nType ??????? ///@param[in] nChannelID ????? ///@param[out] pBuf ???????????????,????nType?????????????? ///@param[in] nBufLen ????nType?????????????????? ///@param[out] pRetLen ???????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRemotDevState(LLONG lLoginID, int nType, int nChannelID, char *pBuf, int nBufLen, int *pRetLen, int waittime=1000); ///@brief ????????????(pSysInfoBuffer????????????????????????DH_SYS_ABILITY???????????nSystemType? ABILITY_DYNAMIC_CONNECT ?????????????sizeof(BOOL),??nSystemType?ABILITY_TRIGGER_MODE?????????sizeof(int)) ///@param[in] lLoginID ?????? ///@param[in] nSystemType ??????? ///@param[out] pSysInfoBuffer ???????????????,????nSystemType?????????????? ///@param[in] maxlen ????nSystemType?????????????????? ///@param[out] nSysInfolen ???????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QuerySystemInfo(LLONG lLoginID, int nSystemType, char *pSysInfoBuffer, int maxlen, int *nSysInfolen, int waittime=1000); ///@brief ???????????????????????????(??Json??????????????SDK)(szOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] szCommand ????????sdk????????????? ///@param[in] nChannelID ????? ///@param[out] szOutBuffer ??Json??????????????SD)(szOutBuffer???????????????) ///@param[in] dwOutBufferSize szOutBuffer???????????? ///@param[out] error ????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryNewSystemInfo(LLONG lLoginID, char* szCommand, int nChannelID, char* szOutBuffer, DWORD dwOutBufferSize, int *error, int waittime=1000); ///@brief ???????????????????????????????????????????????(??Json??????????????SDK)(szOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] szCommand ????????sdk????????????? ///@param[in] nChannelID ??? ///@param[out] szOutBuffer ??Json??????????????SD)(szOutBuffer???????????????) ///@param[in] dwOutBufferSize szOutBuffer???????????? ///@param[out] error ????????? ///@param[in] pExtendInfo ????szCommand??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryNewSystemInfoEx(LLONG lLoginID, char* szCommand, int nChannelID, char* szOutBuffer, DWORD dwOutBufferSize, int *error, void* pExtendInfo = NULL, int waittime=1000); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] lPlayHandle ?????? ///@return ?????????? CLIENT_NET_API LONG CALL_METHOD CLIENT_GetStatiscFlux(LLONG lLoginID, LLONG lPlayHandle); ///@brief ?????????(lpOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] dwProtocolIndex ?????????? ///@param[out] lpOutBuffer ?????????????????? ///@param[in] dwBufLen lpOutBuffer???????? ///@param[out] lpBytesReturned ??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPtzOptAttr(LLONG lLoginID,DWORD dwProtocolIndex,LPVOID lpOutBuffer,DWORD dwBufLen,DWORD *lpBytesReturned,int waittime=500); ///@brief CLIENT_GetDevCaps ??? NET_REMOTE_VIDEO_IN_ANALYSE_CAPS ??? typedef struct tagNET_IN_REMOTE_VIDEO_IN_ANALYSE_CAPS { DWORD dwSize; /// ??????? int nChannel; /// ????? }NET_IN_REMOTE_VIDEO_IN_ANALYSE_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_REMOTE_VIDEO_IN_ANALYSE_CAPS ???? typedef struct tagNET_OUT_REMOTE_VIDEO_IN_ANALYSE_CAPS { DWORD dwSize; /// ??????? int nSceneNum; /// ??????????????????????? EM_SCENE_CLASS_TYPE emSceneType[32]; /// ??????????????????? }NET_OUT_REMOTE_VIDEO_IN_ANALYSE_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_SUPPORT_UTC_CAPS ??? typedef struct tagNET_IN_UTC_CAPS { DWORD dwSize; /// ??????? }NET_IN_UTC_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_SUPPORT_UTC_CAPS ???? typedef struct tagNET_OUT_UTC_CAPS { DWORD dwSize; /// ??????? int nSupportUTCTimingCaps; /// ?????????UTC???????, ????????????, 0:?????, 1:??? int nSupportMediaFileFindGeneralUTCCaps; /// ???????????????????UTC????(?????????????????), 0:?????, 1:??? (?????p????: CLIENT_StartQueryRecordFile, CLIENT_QueryRecordFileEx, CLIENT_FindFileEx, CLIENT_FindNextFileEx, CLIENT_QueryRecordStatus(??????????)) int nSupportPlayBackUTCCaps; /// ???????????????UTC????, ????????????, 0:?????, 1:??? (?????p????: ??????????(CLIENT_PlayBackByTimeProxy, CLIENT_PlayBackByTimeEx2), ???????????(CLIENT_PlayBackByRecordFileEx2) ) int nSupportDownloadUTCCaps; /// ?????????????????UTC????, 0:?????, 1:??? (?????p????: CLIENT_AdaptiveDownloadByTime) int nSupportDownloadByAllSpeedUTCCaps; /// ??????????????????(?????????)??UTC????, 0:?????, 1:??? (?????p????: CLIENT_SupplementByTime) int nSupportMediaFileFindMobileEnforceUTCCaps; /// ?????????????????????????????????UTC????, 0:?????, 1:??? (?????p????: CLIENT_FindFileEx+DH_FILE_QUERY_MOBILE_ENFORCE+MEDIAFILE_MOBILE_ENFORCE_PARAM , CLIENT_FindNextFileEx+MEDIAFILE_MOBILE_ENFORCE_INFO) int nSupportAccessCardRecUTC; /// ?????????????UTC????????????? int nSupportAnnouncementRecUTC; /// ???????????????????????????UTC?????????????, 0:?????, 1:??? int nSupportVideoTalkLogRecUTC; /// ???????????????????UTC?????????????, 0:?????, 1:??? int nSupportFileStreamRecUTC; /// ?????????SMD????????????UTC?????????????, 0:?????, 1:??? int nSupportLogRecUTC; /// ????????????????????UTC?????????????, 0:?????, 1:??? int nSupportAccessControlAlarmRecordRecUTC; /// ????????????????????????UTC?????????????, 0:?????, 1:??? int nSupportFaceDBServerRecUTC; /// ??????????????????????????UTC?????????????, 0:?????, 1:??? int nSupportPOSUTC; /// ?????????POS???????????UTC?????????????, 0:?????, 1:??? int nSupportInteliPicSearchRealUTC; /// ???????????????????mediaFileFind????????, 0:?????, 1:??? }NET_OUT_UTC_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_PIC_MEDIA_ENCRYPT_CAPS ??? typedef struct tagNET_IN_PIC_MEDIA_ENCRYPT_CAPS { DWORD dwSize; /// ??????? }NET_IN_PIC_MEDIA_ENCRYPT_CAPS; ///@brief CLIENT_GetDevCaps ??? NET_PIC_MEDIA_ENCRYPT_CAPS ???? typedef struct tagNET_OUT_PIC_MEDIA_ENCRYPT_CAPS { DWORD dwSize; /// ??????? BOOL bPictureEncryptNotify; /// ???????????????????? }NET_OUT_PIC_MEDIA_ENCRYPT_CAPS; ///@brief MACRO_GROUP_GET_DEV_CAPS_35_BEGIN /// ???????????, ???CLIENT_GetDevCaps??? #define NET_DEV_CAP_SEQPOWER 0x01 /// ????????????, pInBuf=NET_IN_CAP_SEQPOWER*, pOutBuf=NET_OUT_CAP_SEQPOWER* #define NET_ENCODE_CFG_CAPS 0x02 /// ?????????????????, pInBuf=NET_IN_ENCODE_CFG_CAPS*, pOutBuf= NET_OUT_ENCODE_CFG_CAPS* #define NET_VIDEOIN_FISHEYE_CAPS 0x03 /// ????????, pInBuf=NET_IN_VIDEOIN_FISHEYE_CAPS*, pOutBuf=NET_OUT_VIDEOIN_FISHEYE_CAPS* #define NET_COMPOSITE_CAPS 0x04 /// ?????????????????????????????, pInBuf=NET_IN_COMPOSITE_CAPS*, pOutBuf=NET_OUT_COMPOSITE_CAPS* #define NET_VIDEO_DETECT_CAPS 0x05 /// ???????????????????,pInBuf=NET_IN_VIDEO_DETECT_CAPS* , pOutBuf=NET_OUT_VIDEO_DETECT_CAPS* #define NET_THERMO_GRAPHY_CAPS 0x06 /// ??????????????????,pInBuf=NET_IN_THERMO_GETCAPS*, pOutBuf=NET_OUT_THERMO_GETCAPS* #define NET_RADIOMETRY_CAPS 0x07 /// ???????????????????,pInBuf=NET_IN_RADIOMETRY_GETCAPS*, pOutBuf=NET_OUT_RADIOMETRY_GETCAPS* #define NET_POS_CAPS 0x08 /// POS??????,pInBuf = NET_IN_POS_GETCAPS *, pOutBuf = NET_OUT_POS_GETCAPS * #define NET_USER_MNG_CAPS 0x09 /// ???????????, pInBuf = NET_IN_USER_MNG_GETCAPS *, pOutBuf = NET_OUT_USER_MNG_GETCAPS * #define NET_MEDIAMANAGER_CAPS 0x0a /// ??? VideoInput ???????????,pInBuf=NET_IN_MEDIAMANAGER_GETCAPS*, pOutBuf=NET_OUT_MEDIAMANAGER_GETCAPS* #define NET_VIDEO_MOSAIC_CAPS 0x0b /// ???????????????????,pInBuf=NET_IN_MEDIA_VIDEOMOSAIC_GETCAPS*, pOutBuf=NET_OUT_MEDIA_VIDEOMOSAIC_GETCAPS* #define NET_SNAP_CFG_CAPS 0x0c /// ???????????????, pInBuf=NET_IN_SNAP_CFG_CAPS*, pOutBuf= NET_OUT_SNAP_CFG_CAPS* #define NET_VIDEOIN_CAPS 0x0d /// ?????????????, pInBUf = NET_IN_VIDEOIN_CAPS*, pOutBuf = NET_OUT_VIDEOIN_CAPS* #define NET_FACE_BOARD_CAPS 0x0e /// ????????????, pInBuf = NET_IN_FACEBOARD_CAPS*, pOutBuf = NET_OUT_FACEBOARD_CAPS* #define NET_EXTERNALSENSOR_CAPS 0x0f /// ????????????????????pInBuf = NET_IN_EXTERNALSENSOR_CAPS*, pOutBuf = NET_OUT_EXTERNALSENSOR_CAPS* #define NET_VIDEO_IMAGECONTROL_CAPS 0x10 /// ??????????????, pInBuf = NET_IN_VIDEO_IMAGECONTROL_CAPS*, pOutBuf = NET_OUT_VIDEO_IMAGECONTROL_CAPS* #define NET_VIDEOIN_EXPOSURE_CAPS 0x11 /// ???????????, pInBuf = NET_IN_VIDEOIN_EXPOSURE_CAPS*, pOutBuf = NET_OUT_VIDEOIN_EXPOSURE_CAPS* #define NET_VIDEOIN_DENOISE_CAPS 0x12 /// ????????, pInBuf = NET_IN_VIDEOIN_DENOISE_CAPS*, pOutBuf = NET_OUT_VIDEOIN_DENOISE_CAPS* #define NET_VIDEOIN_BACKLIGHT_CAPS 0x13 /// ????????????, pInBuf = NET_IN_VIDEOIN_BACKLIGHT_CAPS*, pOutBuf = NET_OUT_VIDEOIN_BACKLIGHT_CAPS* #define NET_VIDEOIN_WHITEBALANCE_CAPS 0x14 /// ?????????????, pInBuf = NET_IN_VIDEOIN_WHITEBALANCE_CAPS*, pOutBuf = NET_OUT_VIDEOIN_WHITEBALANCE_CAPS* #define NET_VIDEOIN_DAYNIGHT_CAPS 0x15 /// ??????????????????, pInBuf = NET_IN_VIDEOIN_DAYNIGHT_CAPS*, pOutBuf = NET_OUT_VIDEOIN_DAYNIGHT_CAPS* #define NET_VIDEOIN_ZOOM_CAPS 0x16 /// ??????????, pInBuf = NET_IN_VIDEOIN_ZOOM_CAPS*, pOutBuf = NET_OUT_VIDEOIN_ZOOM_CAPS* #define NET_VIDEOIN_FOCUS_CAPS 0x17 /// ???????????, pInBuf = NET_IN_VIDEOIN_FOCUS_CAPS*, pOutBuf = NET_OUT_VIDEOIN_FOCUS_CAPS* #define NET_VIDEOIN_SHARPNESS_CAPS 0x18 /// ???????????, pInBuf = NET_IN_VIDEOIN_SHARPNESS_CAPS*, pOutBuf = NET_OUT_VIDEOIN_SHARPNESS_CAPS* #define NET_VIDEOIN_COLOR_CAPS 0x19 /// ???????????, pInBuf = NET_IN_VIDEOIN_COLOR_CAPS*, pOutBuf = NET_OUT_VIDEOIN_COLOR_CAPS* #define NET_GET_MASTERSLAVEGROUP_CAPS 0x1a /// ??????????????, pInBuf = NET_IN_GET_MASTERSLAVEGROUP_CAPS*, pOutBuf = NET_OUT_GET_MASTERSLAVEGROUP_CAPS* #define NET_FACERECOGNITIONSE_CAPS 0x1b /// ?????????????????? pInBuf = NET_IN_FACERECOGNITIONSERVER_CAPSBILITYQUERY, pOutBuf = NET_OUT_FACERECOGNITIONSERVER_CAPSBILITYQUERY * #define NET_STORAGE_CAPS 0x1c /// ????????????, pInBuf = NET_IN_STORAGE_CAPS*, pOutBuf = NET_OUT_STORAGE_CAPS* #define NET_VIDEOIN_RAWFRAME_CAPS 0x1d /// ???????????????????, pInBuf = NET_IN_VIDEOIN_RAWFRAME_CAPS*, pOutBuf = NET_OUT_VIDEOIN_RAWFRAME_CAPS* #define NET_COAXIAL_CONTROL_IO_CAPS 0x1e /// ??????IO????????, pInBuf = NET_IN_GET_COAXIAL_CONTROL_IO_CAPS*, pOutBuf = NET_OUT_GET_COAXIAL_CONTROL_IO_CAPS* #define NET_FACEINFO_CAPS 0x1f /// ?????????????????????, pInBuf = NET_IN_GET_FACEINFO_CAPS*, pOutBuf = NET_OUT_GET_FACEINFO_CAPS* #define NET_ACCESSCONTROL_CAPS 0x20 /// ??????????, pInBuf = NET_IN_AC_CAPS*, pOutBuf = NET_OUT_AC_CAPS* #define NET_COAXIAL_CONTROL_IO_STATUS 0x21 /// ??????IO???????????, pInBuf = NET_IN_GET_COAXIAL_CONTROL_IO_STATUS*, pOutBuf = NET_OUT_GET_COAXIAL_CONTROL_IO_STATUS* #define NET_LIGHTINGCONTROL_CAPS 0x22 /// ????????????(IPC/SD???), pInBuf =NET_IN_LIGHTINGCONTROL_CAPS* ,pOutBuf=NET_OUT_LIGHTINGCONTROL_CAPS* #define NET_SUPPORT_GET_AUDIO_DECODE_CAPS 0x23 /// ??????????????????????????, pInBuf =NET_IN_SUPPORT_GET_AUDIO_DECODE_CAPS* ,pOutBuf=NET_OUT_SUPPORT_GET_AUDIO_DECODE_CAPS* #define NET_UNIFIEDINFOCOLLECT_CAPS 0x24 /// ????????????DMSS???????????,pInBuf = NET_IN_UNIFIEDINFOCOLLECT_CAPS*, pOutBuf = NET_OUT_UNIFIEDINFOCOLLECT_CAPS* #define NET_EXALARMBOX_CAPS 0x25 /// ???????????????????????, pInBuf = NET_IN_EXALARMBOX_CAPS*, pOutBuf = NET_OUT_EXALARMBOX_CAPS* #define NET_ALARMBOXMANAGER_CAPS 0x26 /// ????????????????????????pInBuf = NET_IN_ALARMBOXMANAGER_CAPS*, pOutBuf = NET_OUT_ALARMBOXMANAGER_CAPS* #define NET_GET_AUDIO_DETECT_CAPS 0x27 /// ????????????????, pInBuf = NET_IN_GET_AUDIO_DETECT_CAPS*, pOutBuf = NET_OUT_GET_AUDIO_DETECT_CAPS* #define NET_SUPPORT_FACEDB_DOWNLOAD 0x28 /// ????????????????????, pInBuf = NET_IN_SUPPORT_FACEDB_DOWNLOAD_CAPS*, pOutBuf = NET_OUT_SUPPORT_FACEDB_DOWNLOAD_CAPS* #define NET_GET_LENS_FUNC_CAPS 0x29 /// ???????????????, pInBuf = NET_IN_GET_LENS_FUNC_CAPS*, pOutBuf = NET_OUT_GET_LENS_FUNC_CAPS* #define NET_VIDEO_TALK_MANAGER_CAPS 0x2a /// ????????????? pInBuf = NET_IN_VIDEO_TALK_MANAGER_CAPS*, pOutBuf = NET_OUT_VIDEO_TALK_MANAGER_CAPS* #define NET_VIDEO_IN_DEFOG_CAPS 0x30 /// ???????????????, pInBuf = NET_IN_VIDEO_IN_DEFOG_CAPS*, pOutBuf = NET_OUT_VIDEO_IN_DEFOG_CAPS* #define NET_DIAGNOSIS_CAPS 0x31 /// ????????????????pInBuf = NET_IN_DIAGNOSIS_CAPS*, pOutBuf = NET_OUT_DIAGNOSIS_CAPS* #define NET_LOWRATEWPAN_CAPS 0x32 /// ????????WPAN????????pInBuf = NET_IN_LOWRATEWPAN_CAPS*, pOutBuf = NET_OUT_LOWRATEWPAN_CAPS* #define NET_GET_FILE_TRANSFER_CAPS 0x33 /// ???????????????????, pInBuf = NET_IN_GET_FILE_TRANSFER_CAPS*, pOutBuf = NET_OUT_GET_FILE_TRANSFER_CAPS* #define NET_AUDIO_OUTPUT_CAPS 0x34 /// ?????????????, pInBuf = NET_IN_AUDIO_OUTPUT_CAPS*, pOutBuf = NET_OUT_AUDIO_OUTPUT_CAPS* #define NET_REMOTE_FACE_RECOGNITION_CAPS 0x35 /// ????????????????????? pInBuf = NET_IN_REMOTE_FACE_RECOGNITION_CAPS*, pOutBuf = NET_OUT_REMOTE_FACE_RECOGNITION_CAPS* #define NET_REMOTE_COLLECT_DEVINFO_CAPS 0x36 /// ??????????????????? pInBuf = NET_IN_REMOTE_COLLECT_DEVINFO_CAPS*, pOutBuf = NET_OUT_REMOTE_COLLECT_DEVINFO_CAPS* #define NET_MONITOR_WALL_CAPS 0x37 /// ???????????????????????, pInBuf = NET_IN_MONITOR_WALL_CAPS_INFO*, pOutBuf = NET_OUT_MONITOR_WALL_CAPS_INFO* #define NET_REMOTE_SPEAK_CAPS 0x38 /// ???????????????????????? pInBuf = NET_IN_REMOTE_SPEAK_CAPS*, pOutBuf = NET_OUT_REMOTE_SPEAK_CAPS* #define NET_WLAN_CAPS 0x39 /// ???WLAN??????pInBuf = NET_IN_WLAN_CAPS_INFO*, pOutBuf = NET_OUT_WLAN_CAPS_INFO* #define NET_LOG_ONLINE_BACKUP_CAPS 0x3A /// ??????????????????? pInBuf = NET_IN_LOG_ONLINE_BACKUP_CAPS_INFO*, pOutBuf = NET_OUT_LOG_ONLINE_BACKUP_CAPS_INFO* #define NET_RECEIPT_EVENT_CAPS 0x3B /// ??????????????? pInBuf = NET_IN_RECEIPT_EVENT_CAPS_INFO*, pOutBuf = NET_OUT_RECEIPT_EVENT_CAPS_INFO* #define NET_ANALYSE_TASK_MANAGER_CAPS 0x3C /// ???????????????????? pInBuf = NET_IN_ANALYSE_TASK_MANAGER_CAPS_INFO*, pOutBuf = NET_OUT_ANALYSE_TASK_MANAGER_CAPS_INFO* #define NET_PERIPHERAL_CHIP_CAPS 0x3D /// ????????????? pInBuf = NET_IN_PERIPHERAL_CHIP_CAPS*, pOutBuf = NET_OUT_PERIPHERAL_CHIP_CAPS* #define NET_CITIZEN_IDENTITY_MANAGER_CAPS 0x3E /// ??????????????? pInBuf = NET_IN_CITIZEN_IDENTITY_MANAGER_CAPS*, pOutBuf = NET_OUT_CITIZEN_IDENTITY_MANAGER_CAPS* #define NET_AROUD_4G_PROBE_SEARCH_CAPS 0x3F /// ????????????????????? pInBuf = NET_IN_AROUD_4G_PROBE_SEARCH_CAPS *, pOutBuf = NET_OUT_AROUD_4G_PROBE_SEARCH_CAPS * #define NET_GET_ADVERTIMENT_CAPS 0x4A /// ????????????????(pInBuf = NET_IN_GET_ADVERTIMENT_CAPS*, pOutBuf = NET_OUT_GET_ADVERTIMENT_CAPS) #define NET_VIDEOIN_LIGHTING_MIX_SOLUTION_CAPS 0x40 /// ????????????? pInBuf = NET_IN_LIGHTING_MIX_SOLUTION_CAPS *, pOutBuf = NET_OUT_LIGHTING_MIX_SOLUTION_CAPS * #define NET_IXRAY_PACKAGE_MANAGER_CAPS 0x41 /// ???X????????????? pInBuf = NET_IN_IXRAY_PACKAGE_MANAGER_CAPS *, pOutBuf = NET_OUT_IXRAY_PACKAGE_MANAGER_CAPS * #define NET_FLOW_STAT_CAPS 0x42 /// ???OSD?????? pInBuf = NET_IN_FLOW_STAT_CAPS *, pOutBuf = NET_OUT_FLOW_STAT_CAPS * #define NET_FIRE_CONTROL_MANAGER_CAPS 0x43 /// ???????????????? pInBuf = NET_IN_FIRE_CONTROL_MANAGER_CAPS *, pOutBuf = NET_OUT_FIRE_CONTROL_MANAGER_CAPS * #define NET_REMOTE_VIDEO_IN_ANALYSE_CAPS 0x44 /// ??????????????????????????????????, pInBuf = NET_IN_REMOTE_VIDEO_IN_ANALYSE_CAPS*, pOutBuf = NET_OUT_REMOTE_VIDEO_IN_ANALYSE_CAPS* #define NET_SUPPORT_UTC_CAPS 0x45 /// ???????????, ???, ????, ?????????(?????????)??UTC????, pInBuf = NET_IN_UTC_CAPS*, pOutBuf = NET_OUT_UTC_CAPS* #define NET_VIDEOIN_MODE_ICR_CAPS 0x46 /// ??????ICR????????????(??VideoInMode?????Mode??????2 ???false,?????) pInBuf = NET_IN_VIDEOIN_MODE_CAPS *, pOutBuf = NET_OUT_VIDEOIN_MODE_CAPS* #define NET_PIC_MEDIA_ENCRYPT_CAPS 0x47 /// ???????????????????????????, pInBuf = NET_IN_PIC_MEDIA_ENCRYPT_CAPS*, pOutBuf = NET_OUT_PIC_MEDIA_ENCRYPT_CAPS* ///@brief MACRO_GROUP_GET_DEV_CAPS_35_END ///@brief ??????????(pInBuf, pOutBuf????????????????????nType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] nType ?????????????????? ///@param[in] pInBuf ???????????????,????nType???????????????????? ///@param[out] pOutBuf ???????????????,????nType???????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevCaps(LLONG lLoginID, int nType, void* pInBuf, void* pOutBuf, int nWaitTime); ///@brief MACRO_GROUP_QUERY_DEV_INFO_36_BEGIN /// ??????????,???CLIENT_QueryDevInfo??? #define NET_QUERY_DEV_STORAGE_NAMES 0x01 /// ??????????????????? , pInBuf=NET_IN_STORAGE_DEV_NAMES *, pOutBuf=NET_OUT_STORAGE_DEV_NAMES * #define NET_QUERY_DEV_STORAGE_INFOS 0x02 /// ????????????????????, pInBuf=NET_IN_STORAGE_DEV_INFOS*, pOutBuf= NET_OUT_STORAGE_DEV_INFOS * #define NET_QUERY_RECENCY_JNNCTION_CAR_INFO 0x03 /// ????????????????????, pInBuf=NET_IN_GET_RECENCY_JUNCTION_CAR_INFO*, pOutBuf=NET_OUT_GET_RECENCY_JUNCTION_CAR_INFO* #define NET_QUERY_LANES_STATE 0x04 /// ??????????,pInBuf = NET_IN_GET_LANES_STATE , pOutBuf = NET_OUT_GET_LANES_STATE #define NET_QUERY_DEV_FISHEYE_WININFO 0x05 /// ????????????? , pInBuf= NET_IN_FISHEYE_WININFO*, pOutBuf=NET_OUT_FISHEYE_WININFO * #define NET_QUERY_DEV_REMOTE_DEVICE_INFO 0x06 /// ???????????? , pInBuf= NET_IN_GET_DEVICE_INFO*, pOutBuf= NET_OUT_GET_DEVICE_INFO * #define NET_QUERY_SYSTEM_INFO 0x07 /// ??????????? , pInBuf= NET_IN_SYSTEM_INFO*, pOutBuf= NET_OUT_SYSTEM_INFO* #define NET_QUERY_REG_DEVICE_NET_INFO 0x08 /// ??????????????????????? , pInBuf=NET_IN_REGDEV_NET_INFO * , pOutBuf=NET_OUT_REGDEV_NET_INFO * #define NET_QUERY_DEV_THERMO_GRAPHY_PRESET 0x09 /// ?????????????? , pInBuf= NET_IN_THERMO_GET_PRESETINFO*, pOutBuf= NET_OUT_THERMO_GET_PRESETINFO * #define NET_QUERY_DEV_THERMO_GRAPHY_OPTREGION 0x0a /// ???????????????????,pInBuf= NET_IN_THERMO_GET_OPTREGION*, pOutBuf= NET_OUT_THERMO_GET_OPTREGION * #define NET_QUERY_DEV_THERMO_GRAPHY_EXTSYSINFO 0x0b /// ???????????????, pInBuf= NET_IN_THERMO_GET_EXTSYSINFO*, pOutBuf= NET_OUT_THERMO_GET_EXTSYSINFO * #define NET_QUERY_DEV_RADIOMETRY_POINT_TEMPER 0x0c /// ?????????????, pInBuf= NET_IN_RADIOMETRY_GETPOINTTEMPER*, pOutBuf= NET_OUT_RADIOMETRY_GETPOINTTEMPER * #define NET_QUERY_DEV_RADIOMETRY_TEMPER 0x0d /// ??????????????, pInBuf= NET_IN_RADIOMETRY_GETTEMPER*, pOutBuf= NET_OUT_RADIOMETRY_GETTEMPER * #define NET_QUERY_GET_CAMERA_STATE 0x0e /// ??????????, pInBuf= NET_IN_GET_CAMERA_STATEINFO*, pOutBuf= NET_OUT_GET_CAMERA_STATEINFO * #define NET_QUERY_GET_REMOTE_CHANNEL_AUDIO_ENCODE 0x0f /// ?????????????????, pInBuf= NET_IN_GET_REMOTE_CHANNEL_AUDIO_ENCODEINFO*, pOutBuf= NET_OUT_GET_REMOTE_CHANNEL_AUDIO_ENCODEINFO * #define NET_QUERY_GET_COMM_PORT_INFO 0x10 /// ?????????????, pInBuf=NET_IN_GET_COMM_PORT_INFO* , pOutBuf=NET_OUT_GET_COMM_PORT_INFO* #define NET_QUERY_GET_LINKCHANNELS 0x11 /// ??????????????????????,pInBuf=NET_IN_GET_LINKCHANNELS* , pOutBuf=NET_OUT_GET_LINKCHANNELS* #define NET_QUERY_GET_VIDEOOUTPUTCHANNELS 0x12 /// ????????????????????, pInBuf=NET_IN_GET_VIDEOOUTPUTCHANNELS*, pOutBuf=NET_OUT_GET_VIDEOOUTPUTCHANNELS* #define NET_QUERY_GET_VIDEOINFO 0x13 /// ?????????????, pInBuf=NET_IN_GET_VIDEOINFO*, pOutBuf=NET_OUT_GET_VIDEOINFO* #define NET_QUERY_GET_ALLLINKCHANNELS 0x14 /// ????????????????????,pInBuf=NET_IN_GET_ALLLINKCHANNELS* , pOutBuf=NET_OUT_GET_ALLLINKCHANNELS* #define NET_QUERY_VIDEOCHANNELSINFO 0x15 /// ????????????,pInBuf=NET_IN_GET_VIDEOCHANNELSINFO* , pOutBuf=NET_OUT_GET_VIDEOCHANNELSINFO* #define NET_QUERY_TRAFFICRADAR_VERSION 0x16 /// ????????????,pInBuf=NET_IN_TRAFFICRADAR_VERSION* , pOutBuf=NET_OUT_TRAFFICRADAR_VERSION* #define NET_QUERY_WORKGROUP_NAMES 0x17 /// ??????????????????,pInBuf=NET_IN_WORKGROUP_NAMES* , pOutBuf=NET_OUT_WORKGROUP_NAMES* #define NET_QUERY_WORKGROUP_INFO 0x18 /// ????????????,pInBuf=NET_IN_WORKGROUP_INFO* , pOutBuf=NET_OUT_WORKGROUP_INFO* #define NET_QUERY_WLAN_ACCESSPOINT 0x19 /// ??????????????????,pInBuf=NET_IN_WLAN_ACCESSPOINT* , pOutBuf=NET_OUT_WLAN_ACCESSPOINT* #define NET_QUERY_GPS_INFO 0x1a /// ??????GPS???,pInBuf=NET_IN_DEV_GPS_INFO* , pOutBuf=NET_OUT_DEV_GPS_INFO* #define NET_QUERY_IVS_REMOTE_DEVICE_INFO 0x1b /// ???IVS?????????????????????????, pInBuf = NET_IN_IVS_REMOTE_DEV_INFO*, pOutBuf = NET_OUT_IVS_REMOTE_DEV_INFO* #define NET_QUERY_SMART_SWITCH_INFO 0x1c /// ?????????????, pInBuf = NET_IN_SMART_SWITCH_INFO*, pOutBuf = NET_OUT_SMART_SWITCH_INFO* #define NET_QUERY_UPGRADE_STATE 0x1d /// ????????????, pInBuf = NET_IN_UPGRADE_STATE*, pOutBuf = NET_OUT_UPGRADE_STATE* #define NET_QUERY_VIDEO_ENCODE_CAPS 0x1e /// ????????????????, pInBuf = NET_IN_VIDEO_ENCODE_CAPS*, pOutBuf = NET_OUT_VIDEO_ENCODE_CAPS* #define NET_QUERY_AUDIO_ENCODE_CAPS 0x1f /// ????????????????, pInBuf = NET_IN_AUDIO_ENCODE_CAPS*, pOutBuf = NET_OUT_AUDIO_ENCODE_CAPS* #define NET_QUERY_AUDIO_IN_CAPS 0x20 /// ???????????????????, pInBuf = NET_IN_AUDIO_IN_CAPS*, pOutBuf = NET_OUT_AUDIO_IN_CAPS* #define NET_QUERY_SMART_ENCODE_CAPS 0x21 /// ???Smart??????????, pInBuf = NET_IN_SMART_ENCODE_CAPS*, pOutBuf = NET_OUT_SMART_ENCODE_CAPS* #define NET_QUERY_HARDDISK_TEMPERATURE 0x22 /// ?????????,pInBuf = NET_IN_HDD_TEMPERATURE*, pOutBuf = NET_OUT_HDD_TEMPERATURE* #define NET_QUERY_RAWFRAMEDATA 0x23 /// ???????????YUV????, pInBuf = NET_IN_RAWFRAMEDATA*, pOutBuf = NET_OUT_RAWFRAMEDARA* #define NET_QUERY_GETSPLICEDATA 0x24 /// ???????????????, pInBuf = NET_IN_GETSPLICEDATA*, pOutBuf = NET_OUT_GETSPLICEDATA* #define NET_QUERY_AUDIO_DECODE_CAPS 0x25 /// ????????????????, pInBuf = NET_IN_AUDIO_DECODE_CAPS*, pOutBuf = NET_OUT_AUDIO_DECODE_CAPS* #define NET_QUERY_DEVICE_ID 0x26 /// ??????ID, pInBuf = NET_IN_DEVICE_ID*, pOutBuf = NET_OUT_DEVICE_ID* #define NET_QUERY_REMOTE_DEVICE_CAPS 0x27 /// ???????????????????, pInBuf = NET_IN_REMOTEDEVICE_CAPS*?? pOutBuf= NET_OUT_REMOTEDEVICE_CAPS #define NET_QUERY_TRAFFIC_SNAP_RADAR 0x28 /// ???????????????, pInfo = NET_IN_TRAFFIC_SNAP_RADAR_INFO*, pOutBuf = NET_OUT_TRAFFIC_SNAP_RADAR_INFO* #define NET_QUERY_TRAFFIC_SNAP_STROBE 0x29 /// ???????????????, pInfo = NET_IN_TRAFFIC_SNAP_STROBE_INFO*, pOutBuf = NET_OUT_TRAFFIC_SNAP_STROBE_INFO* #define NET_QUERY_DEV_VARIABLE_CAPS_MANAGER_CHECK_START 0x30 /// ??????????????????????, pInBuf = NET_IN_DEV_VARIABLE_CAPS_MANAGER_CHECK_START_INFO*, pOutBuf = NET_OUT_DEV_VARIABLE_CAPS_MANAGER_CHECK_START_INFO* #define NET_QUERY_DEV_VARIABLE_CAPS_MANAGER_GET_FUNC_TYPE_LIST 0x31 /// ????????????????????, pInBuf = NET_IN_DEV_VARIABLE_CAPS_MANAGER_GET_FUNC_TYPE_LIST_INFO*, pOutBuf = NET_OUT_DEV_VARIABLE_CAPS_MANAGER_GET_FUNC_TYPE_LIST_INFO* #define NET_QUERY_GET_ALL_PARKING_SPACE_STATUS 0x32 /// ???????????????, pInBuf = NET_IN_GET_ALL_PARKING_SPACE_STATUS_INFO*, pOutBuf = NET_OUT_GET_ALL_PARKING_SPACE_STATUS_INFO* #define NET_QUERY_VEHICLE_STATE_INFO 0x33 /// ???????GPS?????, pInBuf = NET_IN_VEHICLE_STATE_INFO*, pOutBuf = NET_OUT_VEHICLE_STATE_INFO* #define NET_QUERY_HTTP_PROXY_PORT 0x34 /// ?????????????web???????, pInBuf = NET_IN_HTTP_PROXY_PORT*, pOutBuf = NET_OUT_HTTP_PROXY_PORT* #define NET_QUERY_TRAFFIC_RADAR_GET_OBJECT 0x35 /// ????????????????,pInBuf = NET_IN_TRAFFIC_RADAR_GET_OBJECT_INFO*,pOutBuf = NET_OUT_TRAFFIC_RADAR_GET_OBJECT_INFO* #define NET_QUERY_PTZ_CURRENT_FOV_VALUE 0x36 /// ?????????????????????????,pInBuf = NET_IN_PTZ_CURRENT_FOV_VALUE*,pOutBuf = NET_OUT_PTZ_CURRENT_FOV_VALUE* #define NET_QUERY_DEV_IO_STATS 0x37 /// ??????????????io???????,pInBuf = NET_IN_DEV_IO_STATS*,pOutBuf = NET_OUT_DEV_IO_STAT* #define NET_QUERY_VIDEO_IN_STATUS 0x38 /// ???????????????,pInBuf = NET_IN_VIDEO_IN_STATUS*,pOutBuf = NET_OUT_VIDEO_IN_STATUS* #define NET_QUERY_PTZBASE_GET_HFOV_VALUE 0x39 /// ???????????????????????????pInBuf = NET_IN_PTZBASE_GET_HFOV_VALUE*,pOutBuf = NET_OUT_PTZBASE_GET_HFOV_VALUE* #define NET_QUERY_PTZBASE_GET_CENTER_GPS 0x3a /// ???????????GPS?????pInBuf = NET_IN_PTZBASE_GET_CENTER_GPS*,pOutBuf = NET_OUT_PTZBASE_GET_CENTER_GPS* #define NET_QUERY_TRAFFIC_SNAP_PARK_SCREEN 0x3b /// ???????????????, pInfo = NET_IN_TRAFFIC_SNAP_PARK_SCREEN_INFO*, pOutBuf = NET_OUT_TRAFFIC_SNAP_PARK_SCREEN_INFO* #define NET_QUERY_HTTP_PROXY_INFO 0x3c /// ?????????????web???????, pInBuf = NET_IN_HTTP_PROXY_INFO*, pOutBuf = NET_OUT_HTTP_PROXY_INFO* #define NET_QUERY_TRAFFIC_RADAR_GET_OBJECT_EX 0x3d /// ???????????????????, pInBuf = NET_IN_TRAFFIC_RADAR_GET_OBJECT_EX_INFO*,pOutBuf = NET_OUT_TRAFFIC_RADAR_GET_OBJECT_EX_INFO* #define NET_QUERY_PTZBASE_GET_FOCUS_VALUE 0x3e /// ????????????? pInBuf = NET_IN_PTZBASE_GET_FOCUS_VALUE*, pOutBuf = NET_OUT_PTZBASE_GET_FOCUS_VALUE* #define NET_QUERY_PTZBASE_GET_VFOV_VALUE 0x3f /// ???????????????????????????pInBuf = NET_IN_PTZBASE_GET_VFOV_VALUE*,pOutBuf = NET_OUT_PTZBASE_GET_VFOV_VALUE* ///@brief MACRO_GROUP_QUERY_DEV_INFO_36_END ///@brief ?????????(pInBuf, pOutBuf???????????????,????nQueryType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] nQueryType ????????????????? ///@param[in] pInBuf ???????????????,???? nQueryType ???????????????????? ///@param[out] pOutBuf ???????????????,???? nQueryType ???????????????????? ///@param[out] pReserved ???????????????,???? nQueryType ???????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDevInfo(LLONG lLoginID, int nQueryType, void* pInBuf, void* pOutBuf, void *pReserved = NULL , int nWaitTime = 1000); ///@brief ??????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RebootDev(LLONG lLoginID); ///@brief ?????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ShutDownDev(LLONG lLoginID); ///@brief ???????(param????????????????????????type???????????) ///@param[in] lLoginID ?????? ///@param[in] type ??????????? ///@param[in] param ????????????????????????type??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ControlDevice(LLONG lLoginID, CtrlType type, void *param, int waittime = 1000); ///@brief ?????????(param????????????????????????type???????????) ///@param[in] lLoginID ?????? ///@param[in] type ??????????? ///@param[in] param ????????????????????????type??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartControlDevice(LLONG lLoginID, CtrlType type, void *param); ///@brief ?????????????????? CLIENT_ControlDevice (pInBuf, pOutBuf???????????????,????emType??????????) ///@param[in] lLoginID ?????? ///@param[in] emType ??????????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ControlDeviceEx(LLONG lLoginID, CtrlType emType, void* pInBuf, void* pOutBuf = NULL, int nWaitTime = 1000); ///@brief CLIENT_ManagerInstall???? EM_MANAGER_CTRL_UPDATELICENSE ??????? typedef struct tagNET_IN_MANAGER_UPDATELICENSE { DWORD dwSize; /// ??????? char szAppName[128]; /// ?????????????APP?????? UINT nDataLen; /// ??????????????? BYTE* pLicenseData; /// license?????????? ???????????? }NET_IN_MANAGER_UPDATELICENSE; ///@brief CLIENT_ManagerInstall???? EM_MANAGER_CTRL_UPDATELICENSE ??????? typedef struct tagNET_OUT_MANAGER_UPDATELICENSE { DWORD dwSize; /// ??????? }NET_OUT_MANAGER_UPDATELICENSE; ///@brief CLIENT_ManagerInstall???? EM_MANAGER_CTRL_GETCAPS ??????? typedef struct tagNET_IN_MANAGER_GETCAPS { DWORD dwSize; /// ??????? }NET_IN_MANAGER_GETCAPS; ///@brief CLIENT_ManagerInstall ???? EM_MANAGER_CTRL_GETCAPS ??????? typedef struct tagNET_OUT_MANAGER_GETCAPS { DWORD dwSize; /// ??????? BOOL bSupport; /// ??????DHOP }NET_OUT_MANAGER_GETCAPS; ///@brief CLIENT_ManagerInstall???? EM_MANAGER_CTRL_GETDHOPBASICINFO ??????? typedef struct tagNET_IN_MANAGER_GETDHOPBASICINFO { DWORD dwSize; /// ??????? }NET_IN_MANAGER_GETDHOPBASICINFO; ///@brief ?????? typedef struct tagNET_MANAGER_VERSION { char szDhopOs[32]; /// DHOP????? char szDhopSdk[32]; /// DHOP SDK??? char szSocSdk[32]; /// ???SDK????? BYTE byReserved[256]; /// ?????? }NET_MANAGER_VERSION; ///@brief ????? typedef struct tagNET_MANAGER_SYSTEM { TP_U64 nTotal; /// ??????? TP_U64 nFree; /// ????????? BYTE byReserved[256]; /// ?????? }NET_MANAGER_SYSTEM; ///@brief ??????? typedef struct tagNET_MANAGER_INTELLI { TP_U64 nTotal; /// ????????? TP_U64 nFree; /// ?????????? BYTE byReserved[256]; /// ?????? }NET_MANAGER_INTELLI; ///@brief ?????? typedef struct tagNET_MANAGER_MEMEORY { NET_MANAGER_SYSTEM stuSystem; /// ????? NET_MANAGER_INTELLI stuIntelli; /// ??????? BYTE byReserved[128]; /// ?????? }NET_MANAGER_MEMORY; ///@brief Flash??? typedef struct tagNET_MANAGER_FLASH { TP_U64 nTotal; /// ????Flash???? TP_U64 nFree; /// ??????Flash???? BYTE byReserved[128]; /// ?????? }NET_MANAGER_FLASH; ///@brief ???????? typedef struct tagNET_MANAGER_WORKCAPS { double dTotal; /// ???????? double dFree; /// ??????????? BYTE byReserved[128]; /// ?????? }NET_MANAGER_WORKCAPS; ///@brief ???????? typedef enum tagEM_NET_NETWORK_CARD_TYPE { EM_NET_NETWORK_CARD_TYPE_UNKNOWN = 0, /// ??????????? EM_NET_NETWORK_CARD_TYPE_NORMAL, /// ??????????? EM_NET_NETWORK_CARD_TYPE_FIBER, /// ??????? EM_NET_NETWORK_CARD_TYPE_WIRELESS, /// ???????? EM_NET_NETWORK_CARD_TYPE_TD_SCDMA, /// TD EM_NET_NETWORK_CARD_TYPE_WCDMA, /// WCDMA EM_NET_NETWORK_CARD_TYPE_CDMA1X, /// CDMA1X EM_NET_NETWORK_CARD_TYPE_CDMA2000, /// CDMA2000 EM_NET_NETWORK_CARD_TYPE_GSM, /// GSM EM_NET_NETWORK_CARD_TYPE_GPRS, /// GPRS EM_NET_NETWORK_CARD_TYPE_EDGE, /// EDGE EM_NET_NETWORK_CARD_TYPE_LTE, /// LTE EM_NET_NETWORK_CARD_TYPE_TD_LTE, /// TD_LTE EM_NET_NETWORK_CARD_TYPE_FDD_LTE, /// FDD-LTE EM_NET_NETWORK_CARD_TYPE_EVDO, /// EVDO }EM_NET_NETWORK_CARD_TYPE; ///@brief ??????? typedef struct tagNET_MANAGER_NETWORK { EM_NET_NETWORK_CARD_TYPE emNetWorkType; /// ???????? UINT nSpec; /// ??????? BYTE byReserved[128]; /// ?????? }NET_MANAGER_NETWORK; ///@brief CLIENT_ManagerInstall???? MANAGER_CTRL_GETDHOPBASICINFO ??????? typedef struct tagNET_OUT_MANAGER_GETDHOPBASICINFO { DWORD dwSize; /// ??????? char szPlatform[32]; /// ?????? NET_MANAGER_VERSION stuVersion; /// ?????? NET_MANAGER_MEMORY stuMemory; /// ?????? NET_MANAGER_FLASH stuFlash; /// Flash??? NET_MANAGER_WORKCAPS stuWorkCaps; /// ???????? NET_MANAGER_NETWORK stuNetWork; /// ??????? }NET_OUT_MANAGER_GETDHOPBASICINFO; ///@brief CLIENT_ManagerInstall???? ???????? typedef enum tagEM_NET_MANAGER_CTRL_TYPE { EM_MANAGER_CTRL_UPDATELICENSE, /// ??????????????APP????? (??????? NET_IN_MANAGER_UPDATELICENSE, NET_OUT_MANAGER_UPDATELICENSE) EM_MANAGER_CTRL_GETCAPS, /// ???DHOP??????? (??????? NET_IN_MANAGER_GETCAPS, NET_OUT_MANAGER_GETCAPS) EM_MANAGER_CTRL_GETDHOPBASICINFO, /// ???DHOP??????????? (??????? NET_IN_MANAGER_GETDHOPBASICINFO,NET_OUT_MANAGER_GETDHOPBASICINFO) }EM_NET_MANAGER_CTRL_TYPE; ///@brief ??????APP????????????? (pInBuf, pOutBuf???????????????,????emType??????????) ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ManagerInstall(LLONG lLoginID, EM_NET_MANAGER_CTRL_TYPE emType, void* pInBuf, void* pOutBuf, int nWaittime); ///@brief ?????????? typedef enum tagEM_NET_NEXT_OPERATE { EM_NET_NEXT_OPERATE_UNKNOWN = 0, /// ??????? EM_NET_NEXT_OPERATE_INSTALL, /// ???App; EM_NET_NEXT_OPERATE_UPDATE, /// ????App; }EM_NET_NEXT_OPERATE; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_PREPAREEX??????? typedef struct tagNET_IN_INSTALL_PREPAREEX { DWORD dwSize; /// ??????? char szAppName[32]; /// ??????app???? EM_NET_NEXT_OPERATE emNextOperate; /// ??????????? UINT nTotalLength; /// ?????????? BOOL bReliable; /// ????????? }NET_IN_INSTALL_PREPAREEX; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_PREPAREEX??????? typedef struct tagNET_OUT_INSTALL_PREPAREEX { DWORD dwSize; /// ??????? }NET_OUT_INSTALL_PREPAREEX; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_APPEND_DATA??????? typedef struct tagNET_IN_INSTALL_APPEND_DATA { DWORD dwSize; /// ??????? UINT nTotalLen; /// ???????????? UINT nAppendLen; /// ????????????????? BYTE* pAppendData; /// ?????????????????? ???????????? }NET_IN_INSTALL_APPEND_DATA; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_APPEND_DATA??????? typedef struct tagNET_OUT_INSTALL_APPEND_DATA { DWORD dwSize; /// ??????? }NET_OUT_INSTALL_APPEND_DATA; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_EXECUTE??????? typedef struct tagNET_IN_INSTALL_EXECUTE { DWORD dwSize; /// ??????? BOOL bAutoReboot; /// ???????????????? }NET_IN_INSTALL_EXECUTE; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_EXECUTE??????? typedef struct tagNET_OUT_INSTALL_EXECUTE { DWORD dwSize; /// ??????? }NET_OUT_INSTALL_EXECUTE; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_GETSTATE??????? typedef struct tagNET_IN_INSTALL_GETSTATE { DWORD dwSize; /// ??????? }NET_IN_INSTALL_GETSTATE; ///@brief ?????? typedef enum tagEM_NET_UPGRADE_STATUS { EM_NET_UPGRADE_UNKNOWN = 0, /// ????? EM_NET_UPGRADE_PREPARING, /// ???????; EM_NET_UPGRADE_DOWNLOADING, /// ????????????; EM_NET_UPGRADE_DOWNLOADFAILED, /// ???????; EM_NET_UPGRADE_UPGRADING, /// ????????; EM_NET_UPGRADE_INVALID, /// ???????????; EM_NET_UPGRADE_FAILED, /// ???????; EM_NET_UPGRADE_SUCCEEDED, /// ???????; EM_NET_UPGRADE_CANCELLED, /// ???????; EM_NET_UPGRADE_NOTENOUGHMEMORY, /// ??????; EM_NET_UPGRADE_FILEUNMATCH, /// ?????????????; EM_NET_UPGRADE_UNMATCHVERSION, /// ????????; EM_NET_UPGRADE_SAMEASOLDAPP, /// ????????????; EM_NET_UPGRADE_APPEXIST, /// ????????????; }EM_NET_UPGRADE_STATUS; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_GETSTATE??????? typedef struct tagNET_INSTALL_OUT_GETSTATE { DWORD dwSize; /// ??????? EM_NET_UPGRADE_STATUS emUpgradeStatus; /// ?????? int nProgress; /// ???????? char szFile[MAX_COMMON_STRING_256]; /// ??????? }NET_OUT_INSTALL_GETSTATE; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_CANCEL??????? typedef struct tagNET_INSTALL_IN_CANCEL { DWORD dwSize; /// ??????? }NET_IN_INSTALL_CANCEL; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADE_INSTALL_CANCEL??????? typedef struct tagNET_OUT_INSTALL_CANCEL { DWORD dwSize; /// ??????? }NET_OUT_INSTALL_CANCEL; ///@brief ??????? typedef enum tagEM_NET_UPGRADE_ACTION { EM_NET_UPGRADE_ACTION_UNKNOWN = 0, /// ???????; EM_NET_UPGRADE_ACTION_INSTALLAPP, /// ???APP; EM_NET_UPGRADE_ACTION_UPDATEAPP, /// ????APP; EM_NET_UPGRADE_ACTION_UPDATEMAINFIRMWARE, /// ?????????; EM_NET_UPGRADE_ACTION_UPDATELICENSE, /// ???????; }EM_NET_UPGRADE_ACTION; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADER_INSTALL_FIRMWAREEX??????? typedef struct tagNET_IN_INSTALL_FIRMWAREEX { DWORD dwSize; /// ??????? EM_NET_UPGRADE_ACTION emUpgradeAction; /// ??????? char szUrlString[1024]; /// ????????url???? char szAppName[64]; /// ?????????????APP?????? }NET_IN_INSTALL_FIRMWAREEX; ///@brief CLIENT_UpgraderInstall???? EM_UPGRADER_INSTALL_FIRMWAREEX??????? typedef struct tagNET_OUT_INSTALL_FIRMWAREEX { DWORD dwSize; /// ??????? }NET_OUT_INSTALL_FIRMWAREEX; ///@brief CLIENT_UpgraderInstall???? ???????? typedef enum tag_EM_NET_UPGRADE_INSTALL_TYPE { EM_UPGRADER_INSTALL_PREPAREEX, /// ??????? (??????? NET_IN_INSTALL_PREPAREEX, NET_OUT_INSTALL_PREPAREEX) EM_UPGRADER_INSTALL_APPEND_DATA, /// ???????? (??????? NET_IN_INSTALL_APPEND_DATA, NET_OUT_INSTALL_APPEND_DATA) EM_UPGRADER_INSTALL_EXECUTE, /// ??????? (??????? NET_IN_INSTALL_EXECUTE, NET_OUT_INSTALL_EXECUTE) EM_UPGRADER_INSTALL_GETSTATE, /// ????????? (??????? NET_IN_INSTALL_GETSTATE?? NET_OUT_INSTALL_GETSTATE) EM_UPGRADER_INSTALL_CANCEL, /// ??????? (??????? NET_IN_INSTALL_CANCEL, NET_OUT_INSTALL_CANCEL) EM_UPGRADER_INSTALL_FIRMWAREEX, /// ???????????????????? (??????? NET_IN_INSTALL_FIRMWAREEX, NET_OUT_INSTALL_FIRMWAREEX) }EM_NET_UPGRADE_INSTALL_TYPE; ///@brief ??????APP?????????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpgraderInstall(LLONG lLoginID, EM_NET_UPGRADE_INSTALL_TYPE emType, void* pInBuf, void* pOutBuf, int nWaittime); ///@brief EM_DHOPFILEMANAGER_START_UPLOADTOAPP ??? typedef struct tagNET_IN_DHOP_START_UPLOADTOAPP { DWORD dwSize; /// ??????? char szAppName[128]; /// ???App INT64 nFileSize; /// ??????????????,??? char szMd5Sum[32]; /// ????????????md5????? }NET_IN_DHOP_START_UPLOADTOAPP; ///@brief EM_DHOPFILEMANAGER_START_UPLOADTOAPP ???? typedef struct tagNET_OUT_DHOP_START_UPLOADTOAPP { DWORD dwSize; /// ??????? char szToken[64]; /// ?????????????,??????????????????? }NET_OUT_DHOP_START_UPLOADTOAPP; ///@brief EM_DHOPFILEMANAGER_STOP_UPLOADTOAPP ??? typedef struct tagNET_IN_DHOP_STOP_UPLOADTOAPP { DWORD dwSize; /// ??????? char szToken[64]; /// ???? }NET_IN_DHOP_STOP_UPLOADTOAPP; ///@brief EM_DHOPFILEMANAGER_STOP_UPLOADTOAPP ???? typedef struct tagNET_OUT_DHOP_STOP_UPLOADTOAPP { DWORD dwSize; /// ??????? }NET_OUT_DHOP_STOP_UPLOADTOAPP; ///@brief EM_DHOPFILEMANAGER_DO_UPLOADTOAPP ??? typedef struct tagNET_IN_DHOP_DO_UPLOADTOAPP { DWORD dwSize; /// ??????? char szToken[64]; /// ???? INT64 nOffset; /// ???????????????????????????,??????? INT64 nLength; /// ????????????????, ??????? BYTE *pData; /// ????????????????? }NET_IN_DHOP_DO_UPLOADTOAPP; ///@brief EM_DHOPFILEMANAGER_DO_UPLOADTOAPP ???? typedef struct tagNET_OUT_DHOP_DO_UPLOADTOAPP { DWORD dwSize; /// ??????? }NET_OUT_DHOP_DO_UPLOADTOAPP; ///@brief EM_DHOPFILEMANAGER_GET_UPLOADSTATE ??? typedef struct tagNET_IN_DHOP_GET_UPLOADSTATE { DWORD dwSize; /// ??????? char szToken[64]; /// ???? }NET_IN_DHOP_GET_UPLOADSTATE; ///@brief EM_DHOPFILEMANAGER_GET_UPLOADSTATE ???? typedef struct tagNET_OUT_DHOP_GET_UPLOADSTATE { DWORD dwSize; /// ??????? char szType[64]; /// ?????? char szUuid[64]; /// ??Id char szState[64]; /// ?????? int nProgress; /// ???? 0-100 }NET_OUT_DHOP_GET_UPLOADSTATE; ///@brief CLIENT_DhopFileManager ?????????? typedef enum tagEM_DHOPFILEMANAGER_TYPE { EM_DHOPFILEMANAGER_START_UPLOADTOAPP, /// ????????? (??????? pInBuf = NET_IN_DHOP_START_UPLOADTOAPP, pOutBuf = NET_OUT_DHOP_START_UPLOADTOAPP) EM_DHOPFILEMANAGER_STOP_UPLOADTOAPP, /// ?????????? (??????? pInBuf = NET_IN_DHOP_STOP_UPLOADTOAPP, pOutBuf = NET_OUT_DHOP_STOP_UPLOADTOAPP) EM_DHOPFILEMANAGER_DO_UPLOADTOAPP, /// ????????app (??????? pInBuf = NET_IN_DHOP_DO_UPLOADTOAPP, pOutBuf = NET_OUT_DHOP_DO_UPLOADTOAPP) EM_DHOPFILEMANAGER_GET_UPLOADSTATE, /// ???????? (??????? pInBuf = NET_IN_DHOP_GET_UPLOADSTATE, pOutBuf = NET_OUT_DHOP_GET_UPLOADSTATE) }EM_DHOPFILEMANAGER_TYPE; ///@brief ????????????????????App?? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DhopFileManager(LLONG lLoginID, EM_DHOPFILEMANAGER_TYPE emType, void* pInBuf, void* pOutBuf, int nWaitTime); #define DH_POS_EXCHANGE_GOODS_MAX 4 ///???????????????? #define DH_POS_EXCHANGE_FUSSY_KEY_MAX 4 ///????????????????????? ///@brief POS????????????????KEY????? typedef enum tagEM_NET_POS_EXCHANGE_FUSSY_KEY { EM_NET_POS_EXCHANGE_KEY_NULL = 0, /// ????????????,???????????????EM_NET_POS_EXCHANGE_KEY_NULL??????????????EM_NET_POS_EXCHANGE_KEY_GOODS??,???????????????????? EM_NET_POS_EXCHANGE_KEY_GOODS = 1, /// ????????????? ????? ?KEY?(?????????????????) } EM_NET_POS_EXCHANGE_FUSSY_KEY; ///@brief CLIENT_StartFind ??? NET_FIND_POS_EXCHANGE ??????? typedef struct tagNET_IN_POSEXCHANGE_STARTFIND { DWORD dwSize; ///??????? int nChannel; ///??????????????,??0???,????-1?,????????? NET_TIME_EX stuStartTime; ///??????,????, ??????? NET_TIME_EX stuEndTime; ///???????,????????????, ??????? char szGoods[DH_POS_EXCHANGE_GOODS_MAX][DH_COMMON_STRING_32]; ///?????,???,????? EM_NET_POS_EXCHANGE_FUSSY_KEY szFuzzyPattern[DH_POS_EXCHANGE_FUSSY_KEY_MAX]; ///???????????????,???????????????????, ///????,??????????????NULL int nPosId; ///Pos??????, -1?????? } NET_IN_POSEXCHANGE_STARTFIND; ///@brief CLIENT_StartFind ??? NET_FIND_POS_EXCHANGE ??????? typedef struct tagNET_OUT_POSEXCHANGE_STARTFIND { DWORD dwSize; /// ???????? unsigned int nToken; /// ??????? DWORD dwTotalCount; /// ??????????????? }NET_OUT_POSEXCHANGE_STARTFIND; ///@brief CLIENT_DoFind ??? NET_FIND_POS_EXCHANGE ??????? typedef struct tagNET_IN_POSEXCHANGE_DOFIND { DWORD dwSize; /// ???????? unsigned int nToken; /// ??????? unsigned int nBeginNumber; /// ?????? 0<=dwBeginNumber<=dwTotalCount-1 unsigned int nCount; /// ????????POS??????????? } NET_IN_POSEXCHANGE_DOFIND; ///@brief POS??????? typedef struct tagNET_POSEXCHANGE_INFO { NET_TIME stuExchangeTime; ///?????????? }NET_POSEXCHANGE_INFO; ///@brief POS????????????? typedef struct tagNET_POSEXCHANGE_INFO_EX { int nPosId; /// Pos?????? char cDetail[512]; /// ??????????? int nDetailLen; /// ??????????????? BYTE reserved[1024]; /// ??? } NET_POSEXCHANGE_INFO_EX; ///@brief CLIENT_DoFind ??? NET_FIND_POS_EXCHANGE ??????? typedef struct tagNET_OUT_POSEXCHANGE_DOFIND { DWORD dwSize; /// ???????? DWORD dwFound; /// ?????????? NET_POSEXCHANGE_INFO arrPOSExchangeInfo[DH_MAX_POS_EXCHANGE_INFO]; /// ????????????????? NET_POSEXCHANGE_INFO_EX stuInfoEx[DH_MAX_POS_EXCHANGE_INFO]; /// ??????? }NET_OUT_POSEXCHANGE_DOFIND; ///@brief CLIENT_StopFind ??? NET_FIND_POS_EXCHANGE ??????? typedef struct tagNET_IN_POSEXCHANGE_STOPFIND { DWORD dwSize; /// ???????? unsigned int nToken; /// ??????? } NET_IN_POSEXCHANGE_STOPFIND; ///@brief CLIENT_StopFind ??? NET_FIND_POS_EXCHANGE ??????? typedef struct tagNET_OUT_POSEXCHANGE_STOPFIND { DWORD dwSize; /// ???????? } NET_OUT_POSEXCHANGE_STOPFIND; ///@brief ?????????????? typedef enum tagNET_EM_BOAT_STATISTICAL_DIRECTION { NET_EM_BOAT_STATISTICAL_DIRECTION_UNKNOWN, /// ??? NET_EM_BOAT_STATISTICAL_DIRECTION_LEFT_TO_RIGHT, /// ???? NET_EM_BOAT_STATISTICAL_DIRECTION_RIGHT_TO_LEFT, /// ???? NET_EM_BOAT_STATISTICAL_DIRECTION_ALL, /// ?? } NET_EM_BOAT_STATISTICAL_DIRECTION; ///@brief ?????????? typedef enum tagNET_EM_BOAT_STATISTICAL_TIME_KEY { NET_EM_BOAT_STATISTICAL_TIME_KEY_UNKNOWN, /// ??? NET_EM_BOAT_STATISTICAL_TIME_KEY_MONTH, /// ?????? NET_EM_BOAT_STATISTICAL_TIME_KEY_DAY, /// ?????? NET_EM_BOAT_STATISTICAL_TIME_KEY_HOUR, /// ???????? } NET_EM_BOAT_STATISTICAL_TIME_KEY; ///@brief CLIENT_StartFind ??? NET_FIND_BOAT_STATISTICAL ??????? typedef struct tagNET_IN_BOAT_STATISTICAL_STARTFIND { DWORD dwSize; /// ??????? int nChannelNum; /// ?????????? int nChannels[512]; /// ?????? NET_TIME stuStartTime; /// ????????? NET_TIME stuEndTime; /// ?????????? int nChannel; /// ?????, ??0???, -1?????????????, Channel??Channels???????????????, ???????????, ?????????, ??Channels?? NET_EM_BOAT_STATISTICAL_DIRECTION emDirection; /// ??????? NET_EM_BOAT_STATISTICAL_TIME_KEY emTimeKey; /// ?????????? } NET_IN_BOAT_STATISTICAL_STARTFIND; ///@brief CLIENT_StartFind ??? NET_FIND_BOAT_STATISTICAL ??????? typedef struct tagNET_OUT_BOAT_STATISTICAL_STARTFIND { DWORD dwSize; /// ???????? unsigned int nToken; /// ??????? }NET_OUT_BOAT_STATISTICAL_STARTFIND; ///@brief CLIENT_DoFind ??? NET_FIND_BOAT_STATISTICAL ??????? typedef struct tagNET_IN_BOAT_STATISTICAL_DOFIND { DWORD dwSize; /// ???????? unsigned int nToken; /// ??????? } NET_IN_BOAT_STATISTICAL_DOFIND; ///@brief ?????????? typedef struct tagNET_BOAT_STATISTICAL_INFO { NET_TIME_EX stuStartTime; /// ?????? NET_TIME_EX stuEndTime; /// ??????? int nLeftToRightTotal; /// ???????? int nRightToLeftTotal; /// ?????? char szReserved[512]; /// ??????? } NET_BOAT_STATISTICAL_INFO; ///@brief CLIENT_DoFind ??? NET_FIND_BOAT_STATISTICAL ??????? typedef struct tagNET_OUT_BOAT_STATISTICAL_DOFIND { DWORD dwSize; /// ???????? int nCount; /// ?????????? NET_BOAT_STATISTICAL_INFO stuInfo[32]; /// ?????????????? }NET_OUT_BOAT_STATISTICAL_DOFIND; ///@brief CLIENT_StopFind ??? NET_FIND_BOAT_STATISTICAL ??????? typedef struct tagNET_IN_BOAT_STATISTICAL_STOPFIND { DWORD dwSize; /// ???????? unsigned int nToken; /// ??????? } NET_IN_BOAT_STATISTICAL_STOPFIND; ///@brief CLIENT_StopFind ??? NET_FIND_BOAT_STATISTICAL ??????? typedef struct tagNET_OUT_BOAT_STATISTICAL_STOPFIND { DWORD dwSize; /// ???????? } NET_OUT_BOAT_STATISTICAL_STOPFIND; ///@brief ??????????,??? CLIENT_StartFind CLIENT_DoFind CLIENT_StopFind ??? typedef enum tagNET_FIND { NET_FIND_RADIOMETRY, /// ??????????, pInBuf= NET_IN_RADIOMETRY_*FIND*, pOutBuf= NET_OUT_RADIOMETRY_*FIND* NET_FIND_POS_EXCHANGE, /// POS??????????,pInBuf = NET_IN_POSEXCHANGE_*FIND*,pOutBuf= NET_OUT_POSEXCHANGE_*FIND* NET_FIND_BOAT_STATISTICAL, /// ?????????????, pInBuf = NET_IN_BOAT_STATISTICAL_*FIND*, pOutBuf = NET_OUT_BOAT_STATISTICAL_*FIND* } NET_FIND; ///@brief ????????? typedef enum tagNET_VIDEOSTREAM_TYPE { NET_VIDEOSTREAM_NORMAL, /// ????? NET_VIDEOSTREAM_YUV, /// YUV??? } NET_VIDEOSTREAM_TYPE; #define MAX_EVENT_LINK_QUERY_CODE_NUMBER 8 /// ????????????? #define MAX_EVENT_LINK_NAME_NUMBER 16 /// ????????????????? ///@brief ?????????????? typedef enum tagEM_NET_QUERY_CODE { EM_NET_QUERY_CODE_UNKNOWN, /// ??? EM_NET_QUERY_CODE_CROSSLINEDETECTION, /// ??????/??????? CrossLineDetection EM_NET_QUERY_CODE_CROSSREGIONDETECTION, /// ??????????? CrossRegionDetection EM_NET_QUERY_CODE_TAKENAWAYDETECTION, /// ?????????? TakenAwayDetection EM_NET_QUERY_CODE_LEFTDETECTION, /// ?????????? LeftDetection EM_NET_QUERY_CODE_PARKINGDETECTION, /// ????????? ParkingDetection EM_NET_QUERY_CODE_WANDERDETECTION, /// ?????? WanderDetection EM_NET_QUERY_CODE_MOVEDETECTION, /// ????????? MoveDetection EM_NET_QUERY_CODE_FACEDETECTION, /// ???????? FaceDetection EM_NET_QUERY_CODE_RETROGRADEDETECTION, /// ?????????? RetrogradeDetection EM_NET_QUERY_CODE_NUMBERSTAT, /// ??????/???????????? NumberStat EM_NET_QUERY_CODE_TRAFFICJUNCTION, /// ??????????? TrafficJunction EM_NET_QUERY_CODE_RIOTERDETECTION, /// ??????? RioterDetection EM_NET_QUERY_CODE_ALARMLOCAL, /// ????????????? AlarmLocal EM_NET_QUERY_CODE_VIDEOMOTION, /// ???????????? VideoMotion EM_NET_QUERY_CODE_VIDEOBLIND, /// ????????? VideoBlind EM_NET_QUERY_CODE_AUDIODETECT, /// ?????????? AudioDetect EM_NET_QUERY_CODE_AUDIOANOMALY, /// ????????? AudioAnomaly EM_NET_QUERY_CODE_AUDIOMUTATION, /// ????????? AudioMutation EM_NET_QUERY_CODE_SCENECHANGE, /// IPC?????????? SceneChange EM_NET_QUERY_CODE_VIDEOUNFOCUS, /// ????????? VideoUnFocus EM_NET_QUERY_CODE_STORAGELOWSPACE, /// ???????????? StorageLowSpace EM_NET_QUERY_CODE_STORAGEFAILURE, /// ?????????? StorageFailure EM_NET_QUERY_CODE_LOGINFAILURE, /// ????????? LoginFailure EM_NET_QUERY_CODE_STORAGENOTEXIST, /// ????????????? StorageNotExist EM_NET_QUERY_CODE_IPCONFLICT, /// IP?????? IPConflict EM_NET_QUERY_CODE_NETABORT, /// ?????????????? NetAbort EM_NET_QUERY_CODE_HOTPLUG, /// ??????? HotPlug EM_NET_QUERY_CODE_STORAGEFORMAT, /// ?????? StorageFormat EM_NET_QUERY_CODE_EMERGENCYRECORDPULL, /// ??????????? EmergencyRecordPull } EM_NET_QUERY_CODE; ///@brief ?????????? typedef enum tagEM_NET_LINK_NAME { EM_NET_LINK_NAME_UNKNOWN, /// ??? EM_NET_LINK_NAME_DEFAULT, /// ???????,??eventManager.getCaps????????? default EM_NET_LINK_NAME_TIMESECTIONENABLE, /// ????????? TimeSectionEnable EM_NET_LINK_NAME_RECORDENABLE, /// ??? RecordEnable EM_NET_LINK_NAME_RECORDCLOUDENABLE, /// ??????? RecordCloudEnable EM_NET_LINK_NAME_ALARMOUTENABLE, /// ??????? AlarmOutEnable EM_NET_LINK_NAME_PTZLINKENABLE, /// ??????? PtzLinkEnable EM_NET_LINK_NAME_SNAPSHOTENABLE, /// ???? SnapshotEnable EM_NET_LINK_NAME_SNAPSHOTCLOUDENABLE, /// ?????? SnapshotCloudEnable EM_NET_LINK_NAME_MAILENABLE, /// ??????? MailEnable EM_NET_LINK_NAME_BEEPENABLE, /// ???? BeepEnable EM_NET_LINK_NAME_DEJITTERENABLE, /// ????? DejitterEnable EM_NET_LINK_NAME_TIPENABLE, /// ???????????? TipEnable EM_NET_LINK_NAME_MONITORTOURENABLE, /// ??????????? MonitorTourEnable EM_NET_LINK_NAME_MMSENABLE, /// ????? MMSEnable EM_NET_LINK_NAME_SUPPORTALARMBELL, /// ??????? SupportAlarmBell EM_NET_LINK_NAME_SUPPORTACCESSCONTROL, /// ??????? SupportAccessControl EM_NET_LINK_NAME_SIPCALLENABLE, /// SIP???? SipCallEnable EM_NET_LINK_NAME_SUPPORTALARMSERVER, /// ??????????????? SupportAlarmServer EM_NET_LINK_NAME_SUPPORTPTZLINKDELAY, /// ?????????? SupportPtzLinkDelay EM_NET_LINK_NAME_SUPPORTPSTNALARMSERVER,/// ???????????????? SupportPSTNAlarmServer EM_NET_LINK_NAME_SUPPORTICR, /// ICR(?????????)???? SupportICR EM_NET_LINK_NAME_BEEPTIME, /// ??????????? BeepTime EM_NET_LINK_NAME_DEJITTERRANGE, /// ????????? DejitterRange EM_NET_LINK_NAME_ALARMOUTLATCH, /// ?????????? AlarmOutLatch EM_NET_LINK_NAME_RECORDLATCH, /// ?????? RecordLatch EM_NET_LINK_NAME_VOICEENABLE, /// ??????? VoiceEnable EM_NET_LINK_NAME_LOGENABLE, /// ??????? LogEnable EM_NET_LINK_NAME_SUPPORTLIGHTCONTROL, /// ???????????? SupportLightControl EM_NET_LINK_NAME_SUPPORTVIDEOMATRIX, /// ??????????? SupportVideoMatrix } EM_NET_LINK_NAME; ///@brief CLIENT_getEventLink ?????? typedef struct tagNET_IN_EVENT_LINK { DWORD dwSize; /// ???????? int nCodeNum; /// ?????????????? EM_NET_QUERY_CODE szCodeName[MAX_EVENT_LINK_QUERY_CODE_NUMBER]; /// ?????????????? } NET_IN_EVENT_LINK; ///@brief CLIENT_getEventLink ?????? typedef struct tagNET_OUT_EVENT_LINK { DWORD dwSize; /// ???????? EM_NET_LINK_NAME szLinkName[MAX_EVENT_LINK_QUERY_CODE_NUMBER][MAX_EVENT_LINK_NAME_NUMBER]; /// ?????????? } NET_OUT_EVENT_LINK; ///@brief CLIENT_GetEventChannels ?????? typedef struct tagNET_IN_EVENT_CHANNELS { DWORD dwSize; /// ???????? unsigned int nEventCode; /// ????????????????????? ????IP?????MAC????????????????????????????????????????? }NET_IN_EVENT_CHANNELS; ///@brief CLIENT_GetEventChannels ?????? typedef struct tagNET_OUT_EVENT_CHANNELS { DWORD dwSize; /// ???????? int nChannelNum; /// ??????? int nEventChannelList[1024]; /// ??????????????????,????????????????????????????? BYTE byReserved[64]; /// ?????? }NET_OUT_EVENT_CHANNELS; ///@brief CLIENT_GetVideoInAnalyseEnableChannels ?????????? typedef struct tagNET_IN_VIDEOINANALYSE_GET_ENABLECHANNELS { DWORD dwSize; /// ???????? } NET_IN_VIDEOINANALYSE_GET_ENABLECHANNELS; ///@brief CLIENT_GetVideoInAnalyseEnableChannels ?????????? typedef struct tagNET_OUT_VIDEOINANALYSE_GET_ENABLECHANNELS { DWORD dwSize; /// ???????? int nLocalChnNum; /// ?????????????????? int nLocalChannel[DH_MAX_CAMERA_CHANNEL_NUM]; /// ??????????????????? int nRemoteChnNum; /// ?????????????????? int nRemoteChannel[DH_MAX_CAMERA_CHANNEL_NUM]; /// ?????????????????? } NET_OUT_VIDEOINANALYSE_GET_ENABLECHANNELS; ///@brief ??????????????????????(pInBuf, pOutBuf???????????????,????emType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFind(LLONG lLoginID, NET_FIND emType, void* pInBuf, void* pOutBuf, int nWaitTime = 1000); ///@brief ??????(pInBuf, pOutBuf???????????????,????emType?????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ??????????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFind(LLONG lLoginID, NET_FIND emType, void* pInBuf, void* pOutBuf, int nWaitTime = 1000); ///@brief ?????????????????????(pInBuf, pOutBuf???????????????,????emType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] emType ??????????? ///@param[in] pInBuf ???????????????????????? emType ??????????? ///@param[out] pOutBuf ???????????????????????? emType ??????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFind(LLONG lLoginID, NET_FIND emType, void* pInBuf, void* pOutBuf, int nWaitTime = 1000); ///@brief ????????????(pRsBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] pRSBuffer ????????????? ///@param[in] nRSBufferlen ????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupRecordState(LLONG lLoginID, char *pRSBuffer, int nRSBufferlen); ///@brief ??????????????????(pRsBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] pRSBuffer ????????????? ///@param[in] nRSBufferlen ????????????????? ///@param[in] pReserved ?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupExtraRecordState(LLONG lLoginID, char *pRSBuffer, int nRSBufferlen, void* pReserved); ///@brief ???IO??(pState???????????????,????emType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] emType ??????????? ///@param[out] pState ???????????????,????emType?????????????????????????????????????? ///@param[in] maxlen pState??????????? ///@param[out] nIOCount io???? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryIOControlState(LLONG lLoginID, DH_IOTYPE emType, void *pState, int maxlen, int *nIOCount, int waittime=1000); ///@brief IO????(pState???????????????,????emType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] emType ??????????? ///@param[in] pState ???????????????,????emType?????????????????????????????????????? ///@param[in] maxlen pState??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IOControl(LLONG lLoginID, DH_IOTYPE emType, void *pState, int maxlen); ///@brief ???I???nChannelID???????,nSubChannel??????????(0????,1????????1) ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] nSubChannel ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MakeKeyFrame(LLONG lLoginID, int nChannelID, int nSubChannel=0); ///@brief ??????????? typedef void (CALLBACK *fConnectMessCallBack)(LLONG lConnectHandle, NET_CLOUDSERVICE_CONNECT_RESULT* pConnectResult, void* pReserved, LDWORD dwUser); ///@brief ???????????,pConnectParm???????????????,?????sizeof(NET_CLOUDSERVICE_CONNECT_PARAM) ///@param[in] lLoginID ?????? ///@param[in] pConnectParm ??????? ///@param[in] pConnectMessCB ??????? ///@param[in] dwUser ?????????? ///@param[in] pReserved ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ConnectCloudService(LLONG lLoginID, NET_CLOUDSERVICE_CONNECT_PARAM* pConnectParm, fConnectMessCallBack pConnectMessCB, LDWORD dwUser, void* pReserved); ///@brief ?????????(info???????????????,?????sizeof(USER_MANAGE_INFO)) ///@param[in] lLoginID ?????? ///@param[out] info ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryUserInfo(LLONG lLoginID, USER_MANAGE_INFO *info, int waittime=1000); ///@brief ?????????--???(info???????????????,?????sizeof(USER_MANAGE_INFO_EX)) ///@param[in] lLoginID ?????? ///@param[out] info ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryUserInfoEx(LLONG lLoginID, USER_MANAGE_INFO_EX *info, int waittime=1000); ///@brief ?????????--??????64??????(info???????????????) ///@param[in] lLoginID ?????? ///@param[out] info ?????? ///@param[out] pReserved ???????, ???????,????NULL ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryUserInfoNew(LLONG lLoginID, USER_MANAGE_INFO_NEW *info, void* pReserved, int waittime = 1000); ///@brief ?????????--????????????3072(pstuInfo???????????????) ///@param[in] lLoginID ?????? ///@param[in] pstuInfo ??????????, ??????????????????? ///@param[out] pReserved ??????????, ???????,????NULL ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryUserInfoNewEx(LLONG lLoginID, NET_USER_MANAGE_INFO_NEW_EX *pstuInfo, void* pReserved, int waittime = 3000); ///@brief ??????????(opParam, subParam???????????????,????nOperateType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] nOperateType ???????? ///@param[in] opParam ???????????????????????????????????? nOperateType ??????????? ///@param[in] subParam ????????????????????????????????????? nOperateType ??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateUserInfo(LLONG lLoginID, int nOperateType, void *opParam, void *subParam, int waittime=1000); ///@brief ??????????--???(opParam, subParam???????????????,????nOperateType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] nOperateType ???????? ///@param[in] opParam ???????????????????????????????????? nOperateType ??????????? ///@param[in] subParam ????????????????????????????????????? nOperateType ??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateUserInfoEx(LLONG lLoginID, int nOperateType, void *opParam, void *subParam, int waittime=1000); ///@brief ??????????--??????64??????(opParam, subParam???????????????,????nOperateType??????????????????????????????????????) ///@param[in] lLoginID ?????? ///@param[in] nOperateType ???????? ///@param[in] opParam ???????????????????????????????????? nOperateType ??????????? ///@param[in] subParam ????????????????????????????????????? nOperateType ??????????? ///@param[out] pRetParam ????????????????????????????????? nOperateType ??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateUserInfoNew(LLONG lLoginID, int nOperateType, void *opParam, void *subParam, void* pRetParam, int waittime = 1000); ///@brief ??????????????,TransComType??2??????????????,??2???????????????,?????????0??????,1:485 ///@param[in] lLoginID ?????? ///@param[in] TransComType TransComType??2??????????????,??2???????????????,?????????0??????,1:485 ///@param[in] baudrate ?????? ///@param[in] databits ?????? ///@param[in] stopbits ???? ///@param[in] parity ?????? ///@param[in] cbTransCom ?????? ///@param[in] dwUser ?????????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CreateTransComChannel(LLONG lLoginID, int TransComType, unsigned int baudrate, unsigned int databits, unsigned int stopbits, unsigned int parity, fTransComCallBack cbTransCom, LDWORD dwUser); ///@brief ??????????????(pBuffer???????????????) ///@param[in] lTransComChannel ?????? ///@param[in] pBuffer ????????????? ///@param[in] dwBufSize ??????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SendTransComData(LLONG lTransComChannel, char *pBuffer, DWORD dwBufSize); ///@brief ????????????? ///@param[in] lTransComChannel ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DestroyTransComChannel(LLONG lTransComChannel); ///@brief ????????????(pCommState???????????????) ///@param[in] lLoginID ?????? ///@param[in] TransComType TransComType??2??????????????,??2???????????????,?????????0??????,1:485 ///@param[out] pCommState ?????????????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryTransComParams(LLONG lLoginID, int TransComType, DH_COMM_STATE* pCommState, int nWaitTime = 500); ///@brief ??????????????,pchFileName?????????????????????MAX_PATH ///@param[in] lLoginID ?????? ///@param[in] pchFileName ??????? ///@param[in] cbUpgrade ?????????? ///@param[in] dwUser ?????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartUpgrade(LLONG lLoginID, char *pchFileName, fUpgradeCallBack cbUpgrade, LDWORD dwUser); ///@brief ??????????????--???,pchFileName?????????????????????MAX_PATH ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pchFileName ??????? ///@param[in] cbUpgrade ?????????? ///@param[in] dwUser ?????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartUpgradeEx(LLONG lLoginID, EM_UPGRADE_TYPE emType, char *pchFileName, fUpgradeCallBack cbUpgrade, LDWORD dwUser); ///@brief ??????????????--??????G??????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pchFileName ??????? ///@param[in] cbUpgrade ?????????? ///@param[in] dwUser ?????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartUpgradeEx2(LLONG lLoginID, EM_UPGRADE_TYPE emType, char *pchFileName, fUpgradeCallBackEx cbUpgrade, LDWORD dwUser); ///@brief ???????? ///@param[in] lUpgradeID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SendUpgrade(LLONG lUpgradeID); ///@brief ??????????????? ///@param[in] lUpgradeID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopUpgrade(LLONG lUpgradeID); ///@brief ?????????????? typedef enum tagEM_REMOTE_UPGRADE_CB_TYPE { EM_REMOTE_UPGRADE_CB_TYPE_APPENDING, /// ?????? nParam1 ???????? nParam2 ???????? EM_REMOTE_UPGRADE_CB_TYPE_EXECUTE, /// ????? nParam1 ?????? EM_REMOTE_UPGRADE_CB_TYPE_FAILED, /// ????? nParam1 ?????? EM_REMOTE_UPGRADE_CB_TYPE_CANCEL, /// ?????? }EM_REMOTE_UPGRADE_CB_TYPE; ///@brief ???????????????????? typedef void (CALLBACK *fRemoteUpgradeCallBack) (LLONG lLoginID, LLONG lUpgradeID, EM_REMOTE_UPGRADE_CB_TYPE emState, INT64 nParam1, INT64 nParam2, LDWORD dwUser); ///@brief ?????????????? typedef enum tagEM_REMOTE_DEV_PROTOCOL_TYPE { EM_REMOTE_DEV_PROTOCOL_TYPE_UNKNOWN, /// ??? EM_REMOTE_DEV_PROTOCOL_TYPE_DAHUA, EM_REMOTE_DEV_PROTOCOL_TYPE_ONVIF, /// Onvif??????? }EM_REMOTE_DEV_PROTOCOL_TYPE; ///@brief ????????? typedef struct tagNET_REMOTE_UPGRADE_CHNL_INFO { UINT nChannel; /// ???????? char szDeviceID[128]; /// ??????ID, RemoteDevice ???? EM_REMOTE_DEV_PROTOCOL_TYPE emProtocolType; /// ?????????????? BYTE byReserved[380]; /// ?????? }NET_REMOTE_UPGRADE_CHNL_INFO; ///@brief CLIENT_StartRemoteUpgrade-??????? typedef struct tagNET_IN_START_REMOTE_UPGRADE_INFO { DWORD dwSize; /// ???????? UINT nListNum; /// ??????????????????? NET_REMOTE_UPGRADE_CHNL_INFO *pstuList; /// ?????????????????? void *pReserved; /// ?????? char szFileName[256]; /// ??????????? fRemoteUpgradeCallBack cbRemoteUpgrade; /// ?????????????? LDWORD dwUser; /// ??????? UINT nPacketSize; /// ????????????????0????16K }NET_IN_START_REMOTE_UPGRADE_INFO; ///@brief CLIENT_StartRemoteUpgrade-??????? typedef struct tagNET_OUT_START_REMOTE_UPGRADE_INFO { DWORD dwSize; /// ???????? }NET_OUT_START_REMOTE_UPGRADE_INFO; ///@brief CLIENT_SelectRemoteUpgraderDevList-??????? typedef struct tagNET_IN_SELECT_REMOTE_UPGRADE_DEVLIST_INFO { DWORD dwSize; /// ???????? UINT nListNum; /// ??????????????????? NET_REMOTE_UPGRADE_CHNL_INFO *pstuList; /// ?????????????????? void *pReserved; /// ???????????? char szFileName[256]; /// ??????????? }NET_IN_SELECT_REMOTE_UPGRADE_DEVLIST_INFO; ///@brief CLIENT_SelectRemoteUpgraderDevList-??????? typedef struct tagNET_OUT_SELECT_REMOTE_UPGRADE_DEVLIST_INFO { DWORD dwSize; /// ???????? }NET_OUT_SELECT_REMOTE_UPGRADE_DEVLIST_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SelectRemoteUpgraderDevList(LLONG lLoginID, const NET_IN_SELECT_REMOTE_UPGRADE_DEVLIST_INFO* pInParam, NET_OUT_SELECT_REMOTE_UPGRADE_DEVLIST_INFO* pOutParam, int nWaitTime); ///@brief ???????????? typedef enum tagEM_REMOTE_UPGRADE_STATE { EM_REMOTE_UPGRADE_STATE_UNKNOWN, /// ??? EM_REMOTE_UPGRADE_STATE_INIT, /// ?????(??????) EM_REMOTE_UPGRADE_STATE_DOWNLOADING, /// ???????????? EM_REMOTE_UPGRADE_STATE_UPGRADING, /// ???????? EM_REMOTE_UPGRADE_STATE_FAILED, /// ??????? EM_REMOTE_UPGRADE_STATE_SUCCEEDED, /// ??????? EM_REMOTE_UPGRADE_STATE_CANCELLED, /// ??????? EM_REMOTE_UPGRADE_STATE_PREPARING, /// ??????? }EM_REMOTE_UPGRADE_STATE; ///@brief ???????????? typedef struct tagNET_REMOTE_UPGRADER_STATE { int nChannel; /// ????? EM_REMOTE_UPGRADE_STATE emState; /// ?? int nProgress; /// ???? char szDeviceID[128]; /// ??????ID }NET_REMOTE_UPGRADER_STATE; ///@brief ???????????????? typedef struct tagNET_REMOTE_UPGRADER_NOTIFY_INFO { LDWORD nStateNum; /// ???? NET_REMOTE_UPGRADER_STATE* pstuStates; /// ?????? BYTE byReserved[1024]; /// ??? }NET_REMOTE_UPGRADER_NOTIFY_INFO; ///@brief ????????????? typedef void (CALLBACK *fRemoteUpgraderStateCallback) (LLONG lLoginId, LLONG lAttachHandle, NET_REMOTE_UPGRADER_NOTIFY_INFO* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief CLIENT_AttachRemoteUpgradeState-??????? typedef struct tagNET_IN_ATTACH_REMOTEUPGRADE_STATE { DWORD dwSize; /// ???????? fRemoteUpgraderStateCallback cbCallback; /// ??? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_REMOTEUPGRADE_STATE; ///@brief CLIENT_AttachRemoteUpgradeState-??????? typedef struct tagNET_OUT_ATTACH_REMOTEUPGRADE_STATE { DWORD dwSize; /// ???????? }NET_OUT_ATTACH_REMOTEUPGRADE_STATE; ///@brief ????????? typedef enum tagENUM_VENDOR_TYPE { ENUM_VENDOR_TYPE_UNKNOWN, ///??? ENUM_VENDOR_TYPE_GENERAL, ///General ENUM_VENDOR_TYPE_DH, ///DH ENUM_VENDOR_TYPE_OEM, ///OEM ENUM_VENDOR_TYPE_LC, ///LC ENUM_VENDOR_TYPE_EZIP, ///EZIP }ENUM_VENDOR_TYPE; ///@brief ?????? typedef enum tagENUM_STANDARD_TYPE { ENUM_STANDARD_TYPE_UNKNOWN, ///??? ENUM_STANDARD_TYPE_PAL, ///P-PAL ENUM_STANDARD_TYPE_NTSC, ///N-NTSC ENUM_STANDARD_TYPE_PAL_NTSC, ///PN-PAL/NTSC ???P?? ENUM_STANDARD_TYPE_NTSC_PAL, ///NP-NTSC/PAL ???N?? ENUM_STANDARD_TYPE_SECAM, ///S-SECAM }ENUM_STANDARD_TYPE; ///@brief ?????? typedef struct tagNET_UPGRADER_SERIAL_INFO_EX { ENUM_VENDOR_TYPE emVendor; ENUM_STANDARD_TYPE emStandard; /// ?????? NET_TIME_EX stuBuild; /// ???????? char szChip[DH_COMMON_STRING_16]; /// ????????????? char szClass[DH_COMMON_STRING_64]; /// ??????? char szSerial[DH_COMMON_STRING_256]; /// ?????? char szLanguage[DH_COMMON_STRING_128]; /// ???? char szSn[DH_COMMON_STRING_64]; /// ?????? char szSWVersion[DH_COMMON_STRING_64]; /// ??????? char szTag[DH_COMMON_STRING_256]; /// ??????? BYTE byReserved[1024]; /// ??????? }NET_UPGRADER_SERIAL_INFO_EX; ///@brief CLIENT_GetRemoteUpdateSerialEx-??????? typedef struct tagNET_IN_GET_REMOTEUPDATE_SERIAL_EX { DWORD dwSize; /// ???????? int nChannelId; /// ?????????? }NET_IN_GET_REMOTEUPDATE_SERIAL_EX; ///@brief CLIENT_GetRemoteUpdateSerialEx-??????? typedef struct tagNET_OUT_GET_REMOTEUPDATE_SERIAL_EX { DWORD dwSize; /// ???????? int nRetNum; /// ??????? NET_UPGRADER_SERIAL_INFO_EX stuSerialInfo[MAX_UPGRADER_SERIAL_INFO];/// ???????????? }NET_OUT_GET_REMOTEUPDATE_SERIAL_EX; ///@brief ????????????? typedef struct tagNET_REMOTEUPGRADE_DATA_PARAM { char szCheckSum[128]; /// ??????????? int nCheckType; /// ???????????? 0:????MD5????? BYTE byReserved[892]; /// ?????? }NET_REMOTEUPGRADE_DATA_PARAM; ///@brief CLIENT_SetRemoteUpgradeUrl-??????? typedef struct tagNET_IN_SET_REMOTEUPGRADE_URL { DWORD dwSize; /// ???????? int nChannelNum; /// ????????????? int nChannels[256]; /// ??????????? char szUrl[256]; /// ???????????? NET_REMOTEUPGRADE_DATA_PARAM stuParam; /// ????????????? char szSpareUrls[4][256]; /// ???URL int nSpareUrlNum; /// ???URL???? }NET_IN_SET_REMOTEUPGRADE_URL; ///@brief CLIENT_SetRemoteUpgradeUrl-??????? typedef struct tagNET_OUT_SET_REMOTEUPGRADE_URL { DWORD dwSize; /// ???????? }NET_OUT_SET_REMOTEUPGRADE_URL; ///@brief CLIENT_GetRemoteUpgradeState ??? typedef struct tagNET_IN_GET_REMOTEUPGRADE_STATE { DWORD dwSize; }NET_IN_GET_REMOTEUPGRADE_STATE; ///@brief CLIENT_GetRemoteUpgradeState ???? typedef struct tagNET_OUT_GET_REMOTEUPGRADE_STATE { DWORD dwSize; int nMaxStateNum; /// ???????????? LDWORD nRetStateNum; /// ??????????? NET_REMOTE_UPGRADER_STATE* pstuStates; /// ?????? }NET_OUT_GET_REMOTEUPGRADE_STATE; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartRemoteUpgrade(LLONG lLoginID, const NET_IN_START_REMOTE_UPGRADE_INFO* pInParam, NET_OUT_START_REMOTE_UPGRADE_INFO* pOutParam, int nWaitTime = 500); ///@brief ?????????????????? ///@param[in] lUpgradeID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopRemoteUpgrade(LLONG lUpgradeID); ///@brief ????ipc??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRemoteUpgradeState( LLONG lLoginID, const NET_IN_ATTACH_REMOTEUPGRADE_STATE* pInParam, NET_OUT_ATTACH_REMOTEUPGRADE_STATE* pOutParam, int nWaitTime ); ///@brief ???????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRemoteUpgradeState( LLONG lAttachHandle ); ///@brief ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteUpdateSerialEx(LLONG lLoginID, const NET_IN_GET_REMOTEUPDATE_SERIAL_EX* pInParam, NET_OUT_GET_REMOTEUPDATE_SERIAL_EX* pOutParam, int nWaitTime); ///@brief ???URL?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRemoteUpgradeUrl(LLONG lLoginID, const NET_IN_SET_REMOTEUPGRADE_URL* pInParam, NET_OUT_SET_REMOTEUPGRADE_URL* pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteUpgradeState( LLONG lLoginID, const NET_IN_GET_REMOTEUPGRADE_STATE* pInParam, NET_OUT_GET_REMOTEUPGRADE_STATE* pOutParam, int nWaitTime ); ///@brief ??????????(lpOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] dwCommand ?????? ///@param[in] lChannel ???? ///@param[out] lpOutBuffer ??????? ///@param[in] dwOutBufferSize ???????????????? ///@param[out] lpBytesReturned ?????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevConfig(LLONG lLoginID, DWORD dwCommand, LONG lChannel, LPVOID lpOutBuffer, DWORD dwOutBufferSize, LPDWORD lpBytesReturned,int waittime=500); ///@brief ???????????(lpInBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] dwCommand ?????? ///@param[in] lChannel ???? ///@param[in] lpInBuffer ??????? ///@param[in] dwInBufferSize ???????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDevConfig(LLONG lLoginID, DWORD dwCommand, LONG lChannel, LPVOID lpInBuffer, DWORD dwInBufferSize, int waittime=500); ///@brief CLIENT_GetNewDevConfig pReserved???????? typedef struct tagNET_CONFIG_RESERVED_PARA { BOOL bOnlyLocal; /// ?????????????????? char szReserved[1020]; /// ??????? }NET_CONFIG_RESERVED_PARA; ///@brief ???????????????????(??Json??????????????SDK)(szOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] szCommand ?????? ///@param[in] nChannelID ????? ///@param[out] szOutBuffer ????????? json??? ///@param[in] dwOutBufferSize ???????????????? ///@param[out] error ?????? ///@param[in] waittime ????????, ???????? ///@param[in] pReserved ????? NET_CONFIG_RESERVED_PARA??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNewDevConfig(LLONG lLoginID, char* szCommand, int nChannelID, char* szOutBuffer, DWORD dwOutBufferSize, int *error, int waittime=500, void* pReserved = NULL); ///@brief ????????????????????(??Json??????????????SDK)(szInBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] szCommand ?????? ///@param[in] nChannelID ????? ///@param[in] szInBuffer ????????? json??? ///@param[in] dwInBufferSize ???????????????? ///@param[out] error ?????? ///@param[out] restart ?????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetNewDevConfig(LLONG lLoginID, char* szCommand, int nChannelID, char* szInBuffer, DWORD dwInBufferSize, int *error, int *restart, int waittime=500); ///@brief ?????????(Json???)(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteDevConfig(LLONG lLoginID, NET_IN_DELETECFG* pInParam, NET_OUT_DELETECFG* pOutParam, int waittime=500); ///@brief ????????????????(Json???)(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMemberNames(LLONG lLoginID, NET_IN_MEMBERNAME* pInParam, NET_OUT_MEMBERNAME* pOutParam, int waittime=500); ///@brief ??????????(lpInParam, lpOutParam???????????????,????????emType????????) ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] lpInParam ???????????????????????? emType ??????????? ///@param[in] nInParamLen lpInParam???????????? ///@param[out] lpOutParam ???????????????????????? emType ??????????? ///@param[in] nOutParamLen pOutBuf???????????? ///@param[out] pError ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryNetStat(LLONG lLoginID , EM_NET_QUERY_TYPE emType , void *lpInParam , int nInParamLen , void *lpOutParam , int nOutParamLen , int *pError = NULL , int nWaitTime=1000); ///@brief VideoInAnalyse????(szOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] szCommand ?????? ///@param[in] nChannelID ????? ///@param[in] emClassType ???????? ///@param[out] szOutBuffer ??????? ///@param[in] dwOutBufferSize szOutBuffer???????????? ///@param[out] error ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoInAnalyse(LLONG lLoginID, char* szCommand, int nChannelID, EM_SCENE_CLASS_TYPE emClassType, char* szOutBuffer, DWORD dwOutBufferSize, int *error, int waittime); ///@brief ?????????????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEventLink(LLONG lLoginID, NET_IN_EVENT_LINK* pInParam, NET_OUT_EVENT_LINK* pOutParam, int nWaitTime); ///@brief ??????????????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEventChannels(LLONG lLoginID, NET_IN_EVENT_CHANNELS* pInParam, NET_OUT_EVENT_CHANNELS* pOutParam, int nWaitTime); ///@brief ?????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoInAnalyseEnableChannels(LLONG lLoginID, const NET_IN_VIDEOINANALYSE_GET_ENABLECHANNELS* pInParam, NET_OUT_VIDEOINANALYSE_GET_ENABLECHANNELS* pOutParam, int nWaitTime); ///@brief ?????????????(pChannelName???????????????) ///@param[in] lLoginID ?????? ///@param[out] pChannelName ??????? ///@param[in] maxlen pChannelName?????????? ///@param[out] nChannelCount ??????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryChannelName(LLONG lLoginID, char *pChannelName, int maxlen, int *nChannelCount, int waittime=1000); ///@brief ??????????????(pbuf ???????????????,????????????512???) ///@param[in] lLoginID ?????? ///@param[in] pbuf ??????? ///@param[in] nbuflen pbuf?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupChannelName(LLONG lLoginID,char *pbuf, int nbuflen); ///@brief ?????????????????(struOsdString???????????????) ///@param[in] lLoginID ?????? ///@param[in] nChannelNo ????? ///@param[in] struOsdString ?????????? ///@param[in] nbuflen struOsdString?????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupChannelOsdString(LLONG lLoginID, int nChannelNo, DH_CHANNEL_OSDSTRING* struOsdString, int nbuflen); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[out] pDeviceTime ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDeviceTime(LLONG lLoginID, LPNET_TIME pDeviceTime, int waittime=1000); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pDeviceTime ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupDeviceTime(LLONG lLoginID, LPNET_TIME pDeviceTime); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[out] pDeviceTime ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDeviceTimeEx(LLONG lLoginID, LPNET_TIME_EX pDeviceTime, int waittime=1000); ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pDeviceTime ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupDeviceTimeEx(LLONG lLoginID, LPNET_TIME_EX pDeviceTime); ///@brief ?????????UTC????? ///@param[in] lLoginID ?????? ///@param[out] pDeviceTime ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDeviceUTC(LLONG lLoginID, LPNET_UTCTIME pDeviceTime, int waittime=1000); ///@brief ??????????UTC????? ///@param[in] lLoginID ?????? ///@param[in] pDeviceTime ??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDeviceUTC(LLONG lLoginID, LPNET_UTCTIME pDeviceTime); ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] wFlux ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetMaxFlux(LLONG lLoginID, WORD wFlux); ///@brief ???????????,szFileName?????????????????????MAX_PATH ///@param[in] lLoginID ?????? ///@param[in] szFileName ??????? ///@param[in] cbUploadPos ????????????? ///@param[in] dwUserData ??????? ///@param[in] param ???? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ImportConfigFile(LLONG lLoginID, char *szFileName, fDownLoadPosCallBack cbUploadPos, LDWORD dwUserData, DWORD param=0); ///@brief ????????????? ///@param[in] lImportHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopImportCfgFile(LLONG lImportHandle); ///@brief ???????????,szSavedFilePath?????????????????????MAX_PATH ///@param[in] lLoginID ?????? ///@param[in] emConfigFileType ??????????? ///@param[in] szSavedFilePath ??????? ///@param[in] cbDownLoadPos ????????????? ///@param[in] dwUserData ??????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ExportConfigFile(LLONG lLoginID, DH_CONFIG_FILE_TYPE emConfigFileType, char *szSavedFilePath, fDownLoadPosCallBack cbDownLoadPos, LDWORD dwUserData); ///@brief ????????????? ///@param[in] lExportHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopExportCfgFile(LLONG lExportHandle); ///@brief ????????????????????????DDNS????????????IP ///@param[in] pchDVRIP ddns????????? ///@param[in] wDVRPort ddns????????? ///@param[in] sDVRName ??????? ///@param[in] wDVRNameLen ?????????? ///@param[in] sDVRSerialNumber ????????? ///@param[in] wDVRSerialLen ???????????? ///@param[out] sGetIP ??z??ip??? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDVRIPByResolveSvr(char *pchDVRIP, WORD wDVRPort, BYTE *sDVRName, WORD wDVRNameLen, BYTE *sDVRSerialNumber, WORD wDVRSerialLen, char* sGetIP); ///@brief ????????????IPC??NVS?????(szBuf???????????????) ///@param[out] szBuf ???????????? ///@param[in] nBufLen szBuf???? ///@param[out] pRetLen ?????????? ///@param[in] dwSearchTime ??????? ///@param[in] szLocalIp ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SearchDevices(char* szBuf, int nBufLen, int* pRetLen, DWORD dwSearchTime, char* szLocalIp=NULL); ///@brief ??????????????IPC??NVS?????,pUserData???????????????????????, ??????1???????????????1?? ///@param[in] cbSearchDevices ?????????? ///@param[in] pUserData ??????? ///@param[in] szLocalIp ?????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartSearchDevices(fSearchDevicesCB cbSearchDevices, void* pUserData, char* szLocalIp=NULL); ///@brief ????????????????IPC??NVS????? ///@param[in] lSearchHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSearchDevices(LLONG lSearchHandle); ///@brief ??????IP (pDevNetInfo???????????????):???????????? ///@param[in] pDevNetInfo ?????????????? ///@param[in] dwWaitTime ????????, ???????? ///@param[out] iError ?????? ///@param[in] szLocalIp ?????? ///@param[in] reserved ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyDevice(DEVICE_NET_INFO_EX *pDevNetInfo, DWORD dwWaitTime, int *iError = NULL, char* szLocalIp = NULL, void *reserved = NULL); ///@brief ???????????? typedef enum tagEM_SEND_SEARCH_TYPE { EM_SEND_SEARCH_TYPE_MULTICAST_AND_BROADCAST, /// ?????????? EM_SEND_SEARCH_TYPE_MULTICAST, /// ??????? EM_SEND_SEARCH_TYPE_BROADCAST, /// ?????? }EM_SEND_SEARCH_TYPE; ///@brief ???????????? typedef struct tagNET_IN_STARTSERACH_DEVICE { DWORD dwSize; /// ??????? char szLocalIp[MAX_LOCAL_IP_LEN]; /// ?????????????IP fSearchDevicesCBEx cbSearchDevices; /// ????????????? void* pUserData; /// ???????????? EM_SEND_SEARCH_TYPE emSendType; /// ???????????? }NET_IN_STARTSERACH_DEVICE; ///@brief /// ????????????? typedef struct tagNET_OUT_STARTSERACH_DEVICE { DWORD dwSize; /// ??????? }NET_OUT_STARTSERACH_DEVICE; ///@brief ????????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartSearchDevicesEx(NET_IN_STARTSERACH_DEVICE* pInBuf, NET_OUT_STARTSERACH_DEVICE* pOutBuf); ///@brief ???IP??? typedef struct tagNET_IN_MODIFY_IP { DWORD dwSize; /// ??????? DEVICE_NET_INFO_EX2 stuDevNetInfo; /// ?????????? }NET_IN_MODIFY_IP; ///@brief ???IP???? typedef struct tagNET_OUT_MODIFY_IP { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_IP; ///@brief ??????IP (pDevNetInfo???????????????) ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyDeviceEx(NET_IN_MODIFY_IP* pInBuf, NET_OUT_MODIFY_IP* pOutBuf, int nWaitTime); ///@brief ?????????????IP (pIpSearchInfo???????????????) ??????1???????????????1?? ///@param[in] pIpSearchInfo ???????? ///@param[in] cbSearchDevices ?????????? ///@param[in] dwUserData ??????? ///@param[in] szLocalIp ?????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SearchDevicesByIPs(DEVICE_IP_SEARCH_INFO* pIpSearchInfo, fSearchDevicesCB cbSearchDevices, LDWORD dwUserData, char* szLocalIp, DWORD dwWaitTime); ///@brief ??????????????? ///@param[in] pstParam ????????????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDeviceSearchParam(const NET_DEVICE_SEARCH_PARAM* pstParam); ///@brief ????????(lpOutBuffer???????????????) ///@param[in] lLoginID ?????? ///@param[in] dwCommand ???? ///@param[in] nSubCommand ?????? ///@param[in] nParam ???? ///@param[out] lpOutBuffer ??????? ///@param[in] dwOutBufferSize ????????????? ///@param[out] lpBytesReturned ??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPlatFormInfo(LLONG lLoginID, DWORD dwCommand, int nSubCommand, int nParam, LPVOID lpOutBuffer, DWORD dwOutBufferSize, LPDWORD lpBytesReturned,int waittime=500); ///@brief lpInBuffer??????????????? ///@param[in] lLoginID ?????? ///@param[in] dwCommand ???? ///@param[in] nSubCommand ?????? ///@param[in] nParam ???? ///@param[in] lpInBuffer ???????? ///@param[in] dwInBufferSize ??????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPlatFormInfo(LLONG lLoginID, DWORD dwCommand, int nSubCommand, int nParam, LPVOID lpInBuffer, DWORD dwInBufferSize, int waittime=500); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????? ///@param[in] dwFocusCommand ???????? /// dwFocusCommand = 0???????? /// dwFocusCommand = 1???????????? /// dwFocusCommand = 2???????????,??????????????????nFocus??nZoom?????? ///@param[in] nFocus ??? ///@param[in] nZoom ?? ///@param[in] reserved ???????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FocusControl(LLONG lLoginID, int nChannelID, DWORD dwFocusCommand, double nFocus, double nZoom, void *reserved = NULL, int waittime=500); ///////////////////////////??????????/////////////////////////////// ///@brief ????????????? ///@param[in] OnSnapRevMessage ????? ///@param[in] dwUser ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSnapRevCallBack(fSnapRev OnSnapRevMessage, LDWORD dwUser); ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] par ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapPicture(LLONG lLoginID, SNAP_PARAMS par); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] par ?????? ///@param[in] reserved ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapPictureEx(LLONG lLoginID, SNAP_PARAMS *par, int *reserved = 0); ///@brief ????????,??????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapPictureToFile(LLONG lLoginID, const NET_IN_SNAP_PIC_TO_FILE_PARAM* pInParam, NET_OUT_SNAP_PIC_TO_FILE_PARAM* pOutParam, int nWaitTime); ///@brief CLIENT_SnapPicFromRecord ?????? typedef struct tagNET_IN_SNAP_PIC_FROM_REC { DWORD dwSize; /// ??????? UINT nChannel; /// ??????? int nStreamType; /// ????????, 0-?????? 1-?????? BYTE byReserved[4]; /// ??????????????? NET_TIME stuTime; /// ????????? }NET_IN_SNAP_PIC_FROM_REC; ///@brief CLIENT_SnapPicFromRecord ?????? typedef struct tagNET_OUT_SNAP_PIC_FROM_REC { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ??????????????? BYTE* pPicBuf; /// ?????????,????????????? UINT nBufLen; /// ?????????,?????????? UINT nRetLen; /// ????????????????? }NET_OUT_SNAP_PIC_FROM_REC; ///@brief ????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapPicFromRecord(LLONG lLoginID, const NET_IN_SNAP_PIC_FROM_REC* pInParam,NET_OUT_SNAP_PIC_FROM_REC* pOutParam, int nWaitTime); ///@brief CLIENT_ManualSnap ?????????? typedef struct tagNET_IN_MANUAL_SNAP { DWORD dwSize; /// ??????? UINT nChannel; /// ??????? UINT nCmdSerial; /// ?????????? char szFilePath[260]; /// ?????????? } NET_IN_MANUAL_SNAP; ///@brief ?????????? typedef enum tagEM_SNAP_ENCODE_TYPE { EM_SNAP_ENCODE_TYPE_UNKNOWN, /// ??? EM_SNAP_ENCODE_TYPE_JPEG, /// jpeg?? EM_SNAP_ENCODE_TYPE_MPEG4_I, /// mpeg4??i ? } EM_SNAP_ENCODE_TYPE; ///@brief CLIENT_ManualSnap ?????????? typedef struct tagNET_OUT_MANUAL_SNAP { DWORD dwSize; /// ??????? UINT nMaxBufLen; /// pRcvBuf?????,???????? char *pRcvBuf; /// ??????????, ????????????, ????????????????, ????????nMaxBufLen UINT nRetBufLen; /// ??????????????? EM_SNAP_ENCODE_TYPE emEncodeType; /// ???????? UINT nCmdSerial; /// ?????????? BYTE bReserved[4]; /// ?????? } NET_OUT_MANUAL_SNAP; ///@brief ?????, ?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ManualSnap(LLONG lLoginID, const NET_IN_MANUAL_SNAP *pInParam, NET_OUT_MANUAL_SNAP *pOutParam, const int nWaitTime); ///@brief ???????????? typedef struct tagNET_CB_ATTACH_SNAP_INFO { char *pRcvBuf; /// ????????????? UINT nBufLen; /// ????????? EM_SNAP_ENCODE_TYPE emEncodeType; /// ???????? UINT nCmdSerial; /// ???????????? BYTE byReserved[1028]; /// ??????? } NET_CB_ATTACH_SNAP_INFO; ///@brief ???????????????? typedef void (CALLBACK *fAttachSnapRev)(LLONG lAttachHandle, NET_CB_ATTACH_SNAP_INFO *pstAttachCbInfo, LDWORD dwUser); ///@brief CLIENT_AttachSnap ?????????? typedef struct tagNET_IN_ATTACH_INTER_SNAP { DWORD dwSize; /// ??????? UINT nChannel; /// ??????? UINT nCmdSerial; /// ?????????? UINT nIntervalSnap; /// ?????????? fAttachSnapRev cbAttachSnapRev; /// ??????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_INTER_SNAP; ///@brief CLIENT_AttachSnap ?????????? typedef struct tagNET_OUT_ATTACH_INTER_SNAP { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_INTER_SNAP; ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSnap(LLONG lLoginID, const NET_IN_ATTACH_INTER_SNAP *pInParam, NET_OUT_ATTACH_INTER_SNAP *pOutParam); ///@brief ????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSnap(LLONG lAttachHandle); ///@brief ????GPS?????????? ///@param[in] OnGPSMessage ?????????? ///@param[in] dwUser ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSubcribeGPSCallBack(fGPSRev OnGPSMessage, LDWORD dwUser); ///@brief ????GPS??????????--??? ///@param[in] OnGPSMessage ?????????? ///@param[in] dwUser ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSubcribeGPSCallBackEX(fGPSRevEx OnGPSMessage, LDWORD dwUser); ///@brief ????GPS??????????--???2 ///@param[in] OnGPSMessage ?????????? ///@param[in] dwUser ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSubcribeGPSCallBackEX2(fGPSRevEx2 OnGPSMessage, LDWORD dwUser); ///@brief:GPS??????? ///@param[in]: LLONG :lLoginID ///?????? ///@param[in]: BOOL :bStart ///TRUE:???? FALSE:??????? ///@param[in]: LONG :KeepTime ///??????????(??????) ??-1?,?????????????,???????????? ///@param[in]: LONG :InterTime ///?????????GPS???????(??????) ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_SubcribeGPS (LLONG lLoginID, BOOL bStart, LONG KeepTime, LONG InterTime); ///@brief CLIENT_SetGPSUuidInfo?????????? typedef struct tagNET_IN_SET_GPS_UUID_INFO { DWORD dwSize; char szUUID[64]; /// uuid,??????????? }NET_IN_SET_GPS_UUID_INFO; ///@brief CLIENT_SetGPSUuidInfo?????????? typedef struct tagNET_OUT_SET_GPS_UUID_INFO { DWORD dwSize; }NET_OUT_SET_GPS_UUID_INFO; ///@brief:????GPS???UUID ///@param[in]: LLONG :lLoginID ///?????? ///@param[in]: NET_IN_SUBCRIBE_GPS_INFO :pInParam ??????????, ??????????????????? ///@param[out]: NET_OUT_SET_GPS_UUID_INFO :pOutParam ??????????, ??????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetGPSUuidInfo(LLONG lLoginID, NET_IN_SET_GPS_UUID_INFO* pInParam, NET_OUT_SET_GPS_UUID_INFO* pOutParam); ///@brief ????GPS?????????????? ///@param[in] OnGPSMessage ?????????? ///@param[in] dwUser ??????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_SetSubcribeGPSTHCallBack(fGPSTempHumidityRev OnGPSMessage, LDWORD dwUser); ///@brief GPS???????????? ///@param[in]: lLoginID ?????? ///@param[in]: bStart ?????????????? ///@param[in]: InterTime ?????? ///@param[in]: Reserved ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SubcribeGPSTempHumidity (LLONG lLoginID, BOOL bStart, int InterTime, void* Reserved); ///@brief GPS?????????(pQueryParam, pLogBuffer???????????????) ///@param[in]: lLoginID ?????? ///@param[in]: pQueryParam ??????? ///@param[out]: pLogBuffer ???????????? ///@param[in]: nLogBufferLen ?????????????????? ///@param[out]: pRecLogNum ?????????????? ///@param[in]: bContinue ????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryGPSLog(LLONG lLoginID,QUERY_GPS_LOG_PARAM *pQueryParam, char *pLogBuffer, int nLogBufferLen, int *pRecLogNum, BOOL *bContinue, int waittime); ///@brief ????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AttachMission(LLONG lLoginID, NET_IN_ATTACH_MISSION_PARAM *pInParam, NET_OUT_ATTACH_MISSION_PARAM *pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachMission(LLONG lAttachHandle); ///@brief ???????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_BusConfirmEvent(LLONG lLoginID, const NET_IN_BUS_CONFIRM_EVENT* pInParam, NET_OUT_BUS_CONFIRM_EVENT* pOutParam, int nWaitTime = 3000); ///@brief ?????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDevicePosition(LLONG lLoginID, const NET_IN_SET_DEVICE_POSITION* pInParam, NET_OUT_SET_DEVICE_POSITION* pOutParam, int nWaitTime); ///@brief ????????????(pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevicePosition(LLONG lLoginID, const NET_IN_GET_DEVICE_POSITION* pInParam, NET_OUT_GET_DEVICE_POSITION* pOutParam, int nWaitTime); ///@brief ?????????????(???CLIENT_RealLoadPic()??CLIENT_RealLoadPicEx()??????, ????????????(Manual)????,?????????????((pInParam, pOutParam???????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapPictureByEvent(LLONG lLoginID, const NET_IN_SNAP_BY_EVENT* pInParam, NET_OUT_SNAP_BY_EVENT* pOutParam, int nWaitTime); ///////////////////////////????????????////////////////////////////// ///@brief ????????????(lpDecInfo???????????????) ///@param[in] lLoginID ?????? ///@param[out] lpDecInfo ????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDecoderInfo(LLONG lLoginID, LPDEV_DECODER_INFO lpDecInfo, int waittime=1000); ///@brief ????????????TV???(lpMonitorInfo???????????????) ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[out] lpMonitorInfo TV??? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDecoderTVInfo(LLONG lLoginID, int nMonitorID, LPDEV_DECODER_TV lpMonitorInfo, int waittime=1000); ///@brief ?????????????(lpEncoderInfo???????????????) ///@param[in] lLoginID ?????? ///@param[in] nDecoderID ?????????? ///@param[out] lpEncoderInfo ?????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDecEncoderInfo(LLONG lLoginID, int nDecoderID, LPDEV_ENCODER_INFO lpEncoderInfo, int waittime=1000); ///@brief ?????????TV??????(pDecTVOutEnable???????????????) ///@param[in] lLoginID ?????? ///@param[in] pDecTVOutEnable ??????? ///@param[in] nBufLen pDecTVOutEnable???????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDecTVOutEnable(LLONG lLoginID, BYTE *pDecTVOutEnable, int nBufLen, int waittime=1000); ///@brief ??????????????????????,??????0??? ///@param[in] lLoginID ?????? ///@param[in] bDecLayOutEnable ??????? ///@param[in] nChannel ????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDecLayOutEnable(LLONG lLoginID, BYTE bDecLayOutEnable, int nChannel, int waittime=1000); ///@brief ??????????????????????,??????0??? ///@param[in] lLoginID ?????? ///@param[out] pDecLayOutEnable ??????? ///@param[in] nChannel ????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDecLayOutEnable(LLONG lLoginID, BYTE *pDecLayOutEnable, int nChannel, int waittime=1000); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] cbMessData ?????????? ///@param[in] dwUser ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetOperateCallBack(LLONG lLoginID, fMessDataCallBack cbMessData, LDWORD dwUser); ///@brief ?????????TV??????,????????? nSplitType=-1?,pEncoderChannel?????DH_CTRL_DECTV_SCREEN??? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] bEnable ??? ///@param[in] nSplitType ????? ///@param[in] pEncoderChannel ?????????? ///@param[in] nBufLen pEncoderChannel????? ///@param[in] userdata ??????? ///@return ????0???? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CtrlDecTVScreen(LLONG lLoginID, int nMonitorID, BOOL bEnable, int nSplitType, BYTE *pEncoderChannel, int nBufLen, void* userdata=NULL); ///@brief ??????TV????????,?????????(lpEncoderInfo???????????????) ///@param[in] lLoginID ?????? ///@param[in] nDecoderID ?????????? ///@param[in] lpEncoderInfo ??????? ///@param[in] userdata ??????? ///@return ????0???? CLIENT_NET_API LLONG CALL_METHOD CLIENT_SwitchDecTVEncoder(LLONG lLoginID, int nDecoderID, LPDEV_ENCODER_INFO lpEncoderInfo, void* userdata=NULL); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] nSplitType ????? ///@param[in] pEncoderChannnel ?????????? ///@param[in] nBufLen pEncoderChannnel????? ///@param[in] waittime ????????, ???????? ///@return ???????id CLIENT_NET_API int CALL_METHOD CLIENT_AddTourCombin(LLONG lLoginID, int nMonitorID, int nSplitType, BYTE *pEncoderChannnel, int nBufLen, int waittime=1000); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] nCombinID ???????id ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelTourCombin(LLONG lLoginID, int nMonitorID, int nCombinID, int waittime=1000); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] nCombinID ???????id ///@param[in] nSplitType ????? ///@param[in] pEncoderChannel ?????????? ///@param[in] nBufLen pEncoderChannel????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetTourCombin(LLONG lLoginID, int nMonitorID, int nCombinID, int nSplitType, BYTE *pEncoderChannel, int nBufLen, int waittime=1000); ///@brief ??????????,nCombinID????0??32 ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] nCombinID ???????id ///@param[in] lpDecCombinInfo ??????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryTourCombin(LLONG lLoginID, int nMonitorID, int nCombinID, LPDEC_COMBIN_INFO lpDecCombinInfo, int waittime=1000); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] lpDecTourInfo ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDecoderTour(LLONG lLoginID, int nMonitorID, LPDEC_TOUR_COMBIN lpDecTourInfo, int waittime=1000); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[out] lpDecTourInfo ?????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDecoderTour(LLONG lLoginID, int nMonitorID, LPDEC_TOUR_COMBIN lpDecTourInfo, int waittime=1000); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] nDecoderID ?????????? ///@param[out] lpChannelStateInfo ?????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryDecChannelFlux(LLONG lLoginID, int nDecoderID, LPDEV_DECCHANNEL_STATE lpChannelStateInfo, int waittime=1000); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] nMonitorID ??????????? ///@param[in] emActionParam ??????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CtrlDecoderTour(LLONG lLoginID, int nMonitorID, DEC_CTRL_TOUR_TYPE emActionParam, int waittime = 1000); ///@brief ??????? typedef void (CALLBACK *fDecPlayBackPosCallBack)(LLONG lLoginID, int nEncoderID, DWORD dwTotalSize, DWORD dwPlaySize, LDWORD dwUser); ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] cbPlaybackPos ??????? ///@param[in] dwUser ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDecPlaybackPos(LLONG lLoginID, fDecPlayBackPosCallBack cbPlaybackPos, LDWORD dwUser); ///@brief ??????TV??????,????????? ///@param[in] lLoginID ?????? ///@param[in] nDecoderID ?????????? ///@param[in] emPlaybackMode ????? ///@param[in] lpInBuffer ????????????? ///@param[in] dwInBufferSize ????????????????? ///@param[in] userdata ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DecTVPlayback(LLONG lLoginID, int nDecoderID, DEC_PLAYBACK_MODE emPlaybackMode, LPVOID lpInBuffer, DWORD dwInBufferSize, void* userdata=NULL); ///@brief ??????TV????????? ///@param[in] lLoginID ?????? ///@param[in] nDecoderID ?????????? ///@param[in] emCtrlType ???????? ///@param[in] nValue ????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CtrlDecPlayback(LLONG lLoginID, int nDecoderID, DEC_CTRL_PLAYBACK_TYPE emCtrlType, int nValue, int waittime=1000); ///////////////////////////??????????/////////////////////////////// ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????????-1??????????? ///@param[in] dwAlarmType ????????? EVENT_IVS_ALL???????????????????? ///@param[in] cbAnalyzerData ??????? ///@param[in] dwUser ??????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealLoadPicture(LLONG lLoginID, int nChannelID, DWORD dwAlarmType, fAnalyzerDataCallBack cbAnalyzerData, LDWORD dwUser); ///@brief ???????????????????(??????,bNeedPicFile?????????????,Reserved????? RESERVED_PARA) ///@param[in] lLoginID ?????? ///@param[in] nChannelID ????????-1??????????? ///@param[in] dwAlarmType ????????? EVENT_IVS_ALL???????????????????? ///@param[in] bNeedPicFile ?????????? ///@param[in] cbAnalyzerData ??????? ///@param[in] dwUser ??????? ///@param[in] Reserved ????? RESERVED_PARA ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealLoadPictureEx(LLONG lLoginID, int nChannelID, DWORD dwAlarmType, BOOL bNeedPicFile, fAnalyzerDataCallBack cbAnalyzerData, LDWORD dwUser, void* Reserved); ///@brief ??????????????????? ///@param[in] lAnalyzerHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopLoadPic(LLONG lAnalyzerHandle); ///@brief fAnalyzerDataCallBackSec ????????????? typedef struct tagNET_REAL_LOAD_ENCRYPT_INFO { EM_ALGORITHM_LIST emAlgorithm; /// ?????? char szKey[128]; /// ??????? char szIV[128]; /// ?????????IV BYTE bReserved[512]; /// ??????? }NET_REAL_LOAD_ENCRYPT_INFO; ///@brief fAnalyzerDataCallBackSec?????? typedef struct tagNET_REAL_LOAD_PIC_INFO { DWORD dwAlarmType; /// ??????????? BYTE bReserved[4]; /// ?????? void* pAlarmInfo; /// ??????????,????dwAlarmType??????????????? BYTE* pOriBuffer; /// ????????? DWORD dwOriBufSize; /// ?????????? DWORD dwBufSize; /// ?????????? BYTE* pBuffer; /// ????????? NET_REAL_LOAD_ENCRYPT_INFO* pEncryptInfo; /// ????????? int nSequence; /// ????????????????,?0??????????????,?2??????????????????????,?1??????????? BYTE bReserved1[64]; /// ??????? }NET_REAL_LOAD_PIC_INFO; ///@brief ???????????????? ///@param[out] lAnalyzerHandle: ?????? ///@param[out] pstuInfo: ???????? ///@param[out] dwUser: ?????? ///@param[out] reserved: ???? ///@return void typedef void (CALLBACK *fAnalyzerDataCallBackSec)(LLONG lAnalyzerHandle, NET_REAL_LOAD_PIC_INFO* pstuInfo, LDWORD dwUser, void *reserved); ///@brief CLIENT_RealLoadPictureSec ?????????? typedef struct tagNET_IN_ATTACH_REAL_LOAD_PIC_SEC { DWORD dwSize; /// ??????? UINT nChannel; /// ????? DWORD dwAlarmType; /// ???????? BOOL bNeedPicFile; /// ????????? fAnalyzerDataCallBackSec cbAnalyzerDataSec; /// ??????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_REAL_LOAD_PIC_SEC; ///@brief CLIENT_RealLoadPictureSec ?????????? typedef struct tagNET_OUT_ATTACH_REAL_LOAD_PIC_SEC { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_REAL_LOAD_PIC_SEC; ///@brief ???????????????????(???????????) ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RealLoadPictureSec(LLONG lLoginID, const NET_IN_ATTACH_REAL_LOAD_PIC_SEC* pInParam, NET_OUT_ATTACH_REAL_LOAD_PIC_SEC* pOutParam, int nWaitTime); ///@brief ???????????????????(???????????) ///@param[in] lAnalyzerHandle: ??????,?? CLIENT_RealLoadPictureSec ???????????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopLoadPicSec(LLONG lAnalyzerHandle); ///@brief CLIENT_GetCustomInfoCaps ??????? typedef struct tagNET_IN_GET_CUSTOMINFO_CAPS { DWORD dwSize; /// ??????? }NET_IN_GET_CUSTOMINFO_CAPS; ///@brief CLIENT_GetCustomInfoCaps ??????? typedef struct tagNET_OUT_GET_CUSTOMINFO_CAPS { DWORD dwSize; /// ??????? BOOL bSupportXRaySubscribeRule; /// ?true????????????XRaySubscribeRule????????int /// ?????XRaySubscribeRule=1??????????0????UploadPlatform?????1????DangerPackageCondition???? }NET_OUT_GET_CUSTOMINFO_CAPS; ///@brief ?????????????CustomInfo??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCustomInfoCaps(LLONG lLoginID, const NET_IN_GET_CUSTOMINFO_CAPS* pInParam, NET_OUT_GET_CUSTOMINFO_CAPS* pOutParam, int nWaitTime=3000); ///@brief ??????????????????? /// ????????? CLIENT_RealLoadPictureEx/CLIENT_RealLoadPicture ???????????????,?????????,???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapManagerConfirmUpload(LLONG lLoginID, const NET_IN_SNAP_MANAGER_CONFIRM_UPLOAD* pstInParam, NET_OUT_SNAP_MANAGER_CONFIRM_UPLOAD* pstOutParam, int waittime=1000); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapManagerGetCaps(LLONG lLoginID, const NET_IN_SNAP_MANAGER_GET_CAPS* pstInParam, NET_OUT_SNAP_MANAGER_GET_CAPS* pstOutParam, int waittime=1000); ///@brief ????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapManagerStoragePicture(LLONG lLoginID, const NET_IN_SNAP_MANAGER_STORAGE_PICTURE* pstInParam, NET_OUT_SNAP_MANAGER_STORAGE_PICTURE* pstOutParam, int waittime=1000); ///@brief ???????????????,pQueryCondition????????????????????????emType???????? ///@param[in] lLoginID ?????? ///@param[in] emType ??????? ///@param[in] pQueryCondition ????????????????????????emType???????? ///@param[in] reserved ??????? ///@param[in] waittime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_FindFileEx(LLONG lLoginID, EM_FILE_QUERY_TYPE emType, void* pQueryCondition, void *reserved, int waittime=1000); ///@brief ???????:nFilecount:????????????, ???????????????? ?????0?????, <0????? /// ???????????, =1???????, >1???, <1???? }NET_OUT_PLAYER_GET_SPEED; ///@brief ??????????????????, ??? NET_PLAYER_OPERATE_SET_SPEED typedef struct tagNET_IN_PLAYER_SET_SPEED { DWORD dwSize; LLONG lPlayerID; /// ???????ID float fSpeed; /// ???????, >0?????, <0????? /// ???????????, =1???????, >1???, <1???? }NET_IN_PLAYER_SET_SPEED; ///@brief ??????????????????, ??? NET_PLAYER_OPERATE_SET_SPEED typedef struct tagNET_OUT_PLAYER_SET_SPPED { DWORD dwSize; }NET_OUT_PLAYER_SET_SPEED; ///@brief ??????????????????, ??? NET_PLAYER_OPERATE_GET_VOLUME typedef struct tagNET_IN_PLAYER_GET_VOLUME { DWORD dwSize; LLONG lPlayerID; /// ???????ID }NET_IN_PLAYER_GET_VOLUME; ///@brief ??????????????????, ??? NET_PLAYER_OPERATE_GET_VOLUME typedef struct tagNET_OUT_PLAYER_GET_VOLUME { DWORD dwSize; int nVolume; /// ????????, 0~100 }NET_OUT_PLAYER_GET_VOLUME; ///@brief ???????????????????, ??? NET_PLAYER_OPERATE_SET_VOLUME typedef struct tagNET_IN_PLAYER_SET_VOLUME { DWORD dwSize; LLONG lPlayerID; /// ???????ID int nVolume; /// ????????, 0~100 }NET_IN_PLAYER_SET_VOLUME; ///@brief ???????????????????, ??? NET_PLAYER_OPERATE_SET_VOLUME typedef struct tagNET_OUT_PLAYER_SET_VOLUME { DWORD dwSize; }NET_OUT_PLAYER_SET_VOLUME; ///@brief ??????????? typedef struct tagNET_PLAYER_PLAYLIST { DWORD dwSize; char szFilePath[MAX_PATH]; /// ???????, ??Url?????? char szUrl[MAX_PATH]; /// URL, ??FilePath?????? DH_DEVICE_PROTOCOL emUrlProtocol; /// URL???????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? }NET_PLAYER_PLAYLIST; ///@brief ?????????????????????, ??? NET_PLAYER_OPERATE_GET_PLAYLIST typedef struct tagNET_IN_PLAYER_GET_PLAYLIST { DWORD dwSize; LLONG lPlayerID; /// ???????ID NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nLimit; /// ??????????????, 0????????? }NET_IN_PLAYER_GET_PLAYLIST; ///@brief ?????????????????????, ??? NET_PLAYER_OPERATE_GET_PLAYLIST typedef struct tagNET_OUT_PLAYER_GET_PLAYLIST { DWORD dwSize; NET_PLAYER_PLAYLIST* pstuPlayLists; /// ????????, ?????????? int nMaxPlayListCount; /// ????????????, ??????? int nRetPlayListCount; /// ??????????????? }NET_OUT_PLAYER_GET_PLAYLIST; ///@brief ??????????????????????????????, ??? NET_PLAYER_OPERATE_GET_PLAYLIST_TS typedef struct tagNET_IN_PLAYER_GET_PLAYLIST_TS { DWORD dwSize; LLONG lPlayerID; /// ???????ID }NET_IN_PLAYER_GET_PLAYLIST_TS; ///@brief ??????????????????? typedef struct tagNET_PLAYLIST_TIMESECTION { DWORD dwSize; int nEvent; /// ??????????, ???? /// EVENT_ALARM_COMMON, EVENT_ALARM_VIDEOBLIND, EVENT_ALARM_VIDEOLOSS, /// EVENT_ALARM_MOTIONDETECT, EVENT_ALARM_LOCALALARM LPDH_TSECT pstuTSs; /// ??????? DWORD unMaxTS; /// ?????????? DWORD unRetTS; /// ??????????????? }NET_PLAYLIST_TIMESECTION; ///@brief ??????????????????????????????, ??? NET_PLAYER_OPERATE_GET_PLAYLIST_TS typedef struct tagNET_OUT_PLAYER_GET_PLAYLIST_TS { DWORD dwSize; DWORD dwEventNum; /// ??????????? NET_PLAYLIST_TIMESECTION stuTS[MAX_IVS_EVENT_NUM]; /// ??????????????????? }NET_OUT_PLAYER_GET_PLAYLIST_TS; ///@brief ???????????,pInParam??pOutParam??????????????????????????emType???????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInParam ??????????, ??????????????????????????emType???????? ///@param[out] pOutParam ??????????, ??????????????????????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateSplitPlayer(LLONG lLoginID, NET_PLAYER_OPERATE_TYPE emType, void* pInParam, void* pOutParam, int nWaitTime); ///@brief ????????????????????? typedef enum tagEM_SPLIT_PLAYER_STATUS { EM_SPLIT_PLAYER_STATUS_UNKNOWN, /// ????? EM_SPLIT_PLAYER_STATUS_FILE_CHANGED, /// ?????????????? EM_SPLIT_PLAYER_STATUS_STATE_CHANGED, /// ????? EM_SPLIT_PLAYER_STATUS_FILELIST_CHANGED, /// ????????????????? }EM_SPLIT_PLAYER_STATUS; ///@brief ????????????????? typedef struct tagNET_SPLIT_PLAYER_STATE { EM_SPLIT_PLAYER_STATUS emStatus; /// ?? char szReserved[508]; /// ??????? } NET_SPLIT_PLAYER_STATE; ///@brief CLIENT_AttachSplitPlayerState()?????????? typedef void (CALLBACK *fPlayerStateCallBack) (LLONG lLoginID, LLONG lAttachHandle, const NET_SPLIT_PLAYER_STATE *pInfo, int nInfoLen, LDWORD dwUser); ///@brief ??????????????????????????? typedef struct tagNET_IN_ATTACH_PLAYER_STATE { DWORD dwSize; LLONG lPlayerID; /// ???????ID fPlayerStateCallBack cbNotify; /// ????? LDWORD dwUser; }NET_IN_ATTACH_PLAYER_STATE; ///@brief ??????????????????????????? typedef struct tagNET_OUT_ATTACH_PLAYER_STATE { DWORD dwSize; }NET_OUT_ATTACH_PLAYER_STATE; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSplitPlayerState(LLONG lLoginID, const NET_IN_ATTACH_PLAYER_STATE* pInParam, NET_OUT_ATTACH_PLAYER_STATE* pOutParam, int nWaitTime); ///@brief ???????????????????? ///@param[in] hAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSplitPlayerState(LLONG hAttachHandle); ///@brief ?????????????????? typedef struct tagNET_SPLIT_PLAYER_PROCESS { double dbProcess; /// ???? NET_TIME stuTime; /// ??????????? char szReserved[512]; /// ??????? } NET_SPLIT_PLAYER_PROCESS; ///@brief CLIENT_AttachSplitPlayerProcess()?????????? typedef void (CALLBACK *fPlayerProcessCallBack) (LLONG lLoginID, LLONG lAttachHandle, const NET_SPLIT_PLAYER_PROCESS *pInfo, int nInfoLen, LDWORD dwUser); ///@brief ???????????????????????????? typedef struct tagNET_IN_ATTACH_PLAYER_PROCESS { DWORD dwSize; LLONG lPlayerID; /// ???????ID fPlayerProcessCallBack cbNotify; /// ?????? LDWORD dwUser; }NET_IN_ATTACH_PLAYER_PROCESS; ///@brief ???????????????????????????? typedef struct tagNET_OUT_ATTACH_PLAYER_PROCESS { DWORD dwSize; }NET_OUT_ATTACH_PLAYER_PROCESS; ///@brief ????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSplitPlayerProcess(LLONG lLoginID, const NET_IN_ATTACH_PLAYER_PROCESS* pInParam, NET_OUT_ATTACH_PLAYER_PROCESS* pOutParam, int nWaitTime); ///@brief ????????????????????? ///@param[in] hAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSplitPlayerProcess(LLONG hAttachHandle); ///@brief NET_ACCESS_LOCK_VER ??? typedef struct tagNET_ACCESS_LOCK_VER_IN { int nChannel; /// ????? char reserved[128]; /// ???? } NET_ACCESS_LOCK_VER_IN; ///@brief NET_ACCESS_LOCK_VER ???? typedef struct tagNET_ACCESS_LOCK_VER_OUT { char szVersion[32]; /// ??? NET_TIME stuTime; /// ??? char reserved[512]; /// ???? } NET_ACCESS_LOCK_VER_OUT; ///@brief ?????????, CLIENT_QueryDevState ??????? DH_DEVSTATE_ACCESS_LOCK_VER typedef struct tagNET_ACCESS_LOCK_VER { DWORD dwSize; NET_ACCESS_LOCK_VER_IN stuIn; /// ??? NET_ACCESS_LOCK_VER_OUT stuOut; /// ???? } NET_ACCESS_LOCK_VER; ///////////////////////////////// ????????? /////////////////////////////////////// ///@brief ???????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PowerControl(LLONG lLoginID, const DH_IN_WM_POWER_CTRL* pInParam, DH_OUT_WM_POWER_CTRL* pOutParam, int nWaitTime = 1000); ///@brief ?????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDisplayMode(LLONG lLoginID, const DH_IN_WM_SET_DISPLAY_MODE* pInParam, DH_OUT_WM_SET_DISPLAY_MODE* pOutParam, int nWaitTime = 1000); ///@brief ????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDisplayMode(LLONG lLoginID, const DH_IN_WM_GET_DISPLAY_MODE* pInParam, DH_OUT_WM_GET_DISPLAY_MODE* pOutParam, int nWaitTime = 1000); ///@brief ???????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_LoadMonitorWallCollection(LLONG lLoginID, const DH_IN_WM_LOAD_COLLECTION* pInParam, DH_OUT_WM_LOAD_COLLECTION* pOutParam, int nWaitTime = 1000); ///@brief ???????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SaveMonitorWallCollection(LLONG lLoginID, const DH_IN_WM_SAVE_COLLECTION* pInParam, DH_OUT_WM_SAVE_COLLECTION* pOutParam, int nWaitTime = 1000); ///@brief ???????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMonitorWallCollections(LLONG lLoginID, const DH_IN_WM_GET_COLLECTIONS* pInParam, DH_OUT_WM_GET_COLLECTIONS* pOutParam, int nWaitTime = 1000); ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RenameMonitorWallCollection(LLONG lLoginID, const DH_IN_WM_RENAME_COLLECTION* pInParam, DH_OUT_WM_RENAME_COLLECTION* pOutParam, int nWaitTime = 1000); ///@brief ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallGetScene(LLONG lLoginID, const DH_IN_MONITORWALL_GET_SCENE* pInParam, DH_OUT_MONITORWALL_GET_SCENE* pOutParam, int nWaitTime = 1000); ///@brief ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSetScene(LLONG lLoginID, const DH_IN_MONITORWALL_SET_SCENE* pInParam, DH_OUT_MONITORWALL_SET_SCENE* pOutParam, int nWaitTime = 1000); ///@brief CLIENT_GetCountOfMonitorWallScene??????????(?????????????????) typedef struct tagNET_IN_GET_COUNT_MONITORWALL_SCENE { DWORD dwSize; int nMonitorWallID; /// ???????? } NET_IN_GET_COUNT_MONITORWALL_SCENE; ///@brief CLIENT_GetCountOfMonitorWallScene??????????(?????????????????) typedef struct tagNET_OUT_GET_COUNT_MONITORWALL_SCENE { DWORD dwSize; unsigned int nSplitSceneCount; /// ??????????????????? unsigned int nSplitWndCount[300]; /// ????????????????????????????????????????????????????? } NET_OUT_GET_COUNT_MONITORWALL_SCENE; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCountOfMonitorWallScene(LLONG lLoginID, const NET_IN_GET_COUNT_MONITORWALL_SCENE* pInParam, NET_OUT_GET_COUNT_MONITORWALL_SCENE* pOutParam, int nWaitTime); ///@brief ????????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallGetAttributeCaps(LLONG lLoginID, const DH_IN_MONITORWALL_GET_ARRT_CAPS* pInParam, DH_OUT_MONITORWALL_GET_ARRT_CAPS* pOutParam, int nWaitTime = 1000); ///@brief ??????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallAutoAdjust(LLONG lLoginID, const DH_IN_MONITORWALL_AUTO_ADJUST* pInParam, DH_OUT_MONITORWALL_AUTO_ADJUST* pOutParam, int nWaitTime = 1000); ///@brief ??????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSetAttribute(LLONG lLoginID, const DH_IN_MONITORWALL_SET_ATTR* pInParam, DH_OUT_MONITORWALL_SET_ATTR* pOutParam, int nWaitTime = 1000); ///@brief ?????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSetBackLight(LLONG lLoginID, const DH_IN_MONITORWALL_SET_BACK_LIGHT* pInParam, DH_OUT_MONITORWALL_SET_BACK_LIGHT* pOutParam, int nWaitTime = 1000); ///@brief ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallGetPowerSchedule(LLONG lLoginID, const NET_IN_MW_GET_POWER_SCHEDULE* pInParam, NET_OUT_MW_GET_POWER_SCHEDULE* pOutParam, int nWaitTime); ///@brief ?????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSetPowerSchedule(LLONG lLoginID, const NET_IN_MW_SET_POWER_SCHEDULE* pInParam, NET_OUT_MW_SET_POWER_SCHEDULE* pOutParam, int nWaitTime); ///@brief ?????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallGetScrnCtrlParam(LLONG lLoginID, const NET_IN_MW_GET_SCRN_CTRL_PARAM* pInParam, NET_OUT_MW_GET_SCRN_CTRL_PARAM* pOutParam, int nWaitTime); ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSetScrnCtrlParam(LLONG lLoginID, const NET_IN_MW_SET_SCRN_CTRL_PARAM* pInParam, NET_OUT_MW_SET_SCRN_CTRL_PARAM* pOutParam, int nWaitTime); ///@brief ?????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallGetBackgroudColor(LLONG lLoginID, const NET_IN_MW_GET_BACKGROUDND_COLOR* pInParam, NET_OUT_MW_GET_BACKGROUDND_COLOR* pOutParam, int nWaitTime); ///@brief ??????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSetBackgroudColor(LLONG lLoginID, const NET_IN_MW_SET_BACKGROUD_COLOR* pInParam, NET_OUT_MW_SET_BACKGROUD_COLOR* pOutParam, int nWaitTime); ///@brief ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_MonitorWallAttachTour(LLONG lLoginID, const NET_IN_WM_ATTACH_TOUR* pInParam, NET_OUT_WM_ATTACH_TOUR* pOutParam, int nWaitTime); ///@brief ???????????????,pInParam??pOutParam??????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallDetachTour(LLONG lAttachHandle); ///@brief ?????????,pInParam??pOutParam???????????????,????????emType???????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateMonitorWall(LLONG lLoginID, NET_MONITORWALL_OPERATE_TYPE emType, void* pInParam, void* pOutParam, int nWaitTime); ///@brief ??????????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallSwitchDisplaySignal(LLONG lLoginID, const NET_IN_MW_SWITCH_DISPLAY_SIGNAL* pInParam, NET_OUT_MW_SWITCH_DISPLAY_SIGNAL* pOutParam, int nWaitTime); ///@brief ????????????????CLIENT_MonitorWallGetWindowInfo??? typedef struct tagNET_IN_MW_GET_WINODW_INFO { DWORD dwSize; ///??????? int nMonitorWallID; ///???????? const char* pszCompositeID; ///????????????ID }NET_IN_MW_GET_WINODW_INFO; ///@brief ?????????? typedef enum tagEM_NET_ENCODE_COMPRESSION { EM_NET_ENCODE_COMPRESSION_UNKNOWN, ///??? EM_NET_ENCODE_COMPRESSION_H264, ///H264 EM_NET_ENCODE_COMPRESSION_MPEG4, ///MPEG4 EM_NET_ENCODE_COMPRESSION_MJPEG, ///MJPEG EM_NET_ENCODE_COMPRESSION_SVAC, ///SVAC EM_NET_ENCODE_COMPRESSION_HIK, ///HIK EM_NET_ENCODE_COMPRESSION_H265, ///H265 }EM_NET_ENCODE_COMPRESSION; ///@brief ?????????? typedef struct tagNET_MW_GET_WINDOW_INFO { BOOL bEnable; ///????????? NET_VIDEOCHANNEL_STATE emState; ///????????? UINT unNetflow; ///????????(??????kbps) UINT unBitrate; ///????(??????kbps) UINT nFrame; ///??? CAPTURE_SIZE emResolution; ///????? UINT unRealTimeFrame; ///????????? EM_NET_ENCODE_COMPRESSION emCompression; ///?????????? EM_CAPTURE_SIZE_EX emResolutionEx; ///???????? BYTE byReserved[508]; ///?????? }NET_MW_GET_WINDOW_INFO; ///@brief ????????????????CLIENT_MonitorWallGetWindowInfo???? typedef struct tagNET_OUT_MW_GET_WINDOW_INFO { DWORD dwSize; ///???????????,dwSize ??w?? sizeof(NET_OUT_MW_GET_WINDOW_INFO) int nVideoInfoNum; ///????????????????????????,??0??????,?????? NET_MW_GET_WINDOW_INFO* pNetVideoChannelInfo; ///??????????????,?????????,?????????????????nVideoInfoNum???,???????????sizeof(NET_MW_GET_WINDOW_INFO)*nVideoInfoNum int nRetVideoInfoNum; ///??????????????????????????,SDK???? }NET_OUT_MW_GET_WINDOW_INFO; ///@brief ???????????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MonitorWallGetWindowInfo(LLONG lLoginID, const NET_IN_MW_GET_WINODW_INFO* pInParam, NET_OUT_MW_GET_WINDOW_INFO* pOutParam,int nWaitTime); /////////////////////////////////////////////////////////////////////////////////////////////////// /////////////???????????????? start //////////////////////////////////////////////// /////////////////////////////////////////////////// //////////////////////////////////////////////// ///@brief ???????????? typedef struct tagPANO_COMPOSITE_GROUP_INFO { char szGroupName[64]; /// ???????????? /*???????????????????????1????65*/ int nRow; /// ???? int nColumn; /// ???? int nEncChannel; /// ????????????????, ?????CLIENT_QueryMatrixCardInfo ????? BYTE byReserved[1028]; ///?????? } PANO_COMPOSITE_GROUP_INFO; ///@brief ????????????? ??????? typedef struct tagNET_IN_ADD_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? PANO_COMPOSITE_GROUP_INFO stuPanoCompositeGroup; /// ??????????? } NET_IN_ADD_PANO_COMPOSITE_GROUP; ///@brief ????????????? ??????? typedef struct tagNET_OUT_ADD_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? char szGroupID[32]; /// ??ID } NET_OUT_ADD_PANO_COMPOSITE_GROUP; ///@brief ???????????? ??????? typedef struct tagNET_IN_REMOVE_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? UINT nGroupNum; /// ??????????? char szGroupIdList[16][32]; /// ????????ID???? } NET_IN_REMOVE_PANO_COMPOSITE_GROUP; ///@brief ???????????? ??????? typedef struct tagNET_OUT_REMOVE_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? } NET_OUT_REMOVE_PANO_COMPOSITE_GROUP; ///@brief ??????????????????? typedef struct tagNET_IN_MODIFY_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? char szGroupID[32]; /// ??ID PANO_COMPOSITE_GROUP_INFO stuPanoCompositeGroup; /// ??????????? } NET_IN_MODIFY_PANO_COMPOSITE_GROUP; ///@brief ??????????????????? typedef struct tagNET_OUT_MODIFY_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? } NET_OUT_MODIFY_PANO_COMPOSITE_GROUP; ///@brief ?????????????????????????? typedef struct tagNET_IN_GET_ALL_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? } NET_IN_GET_ALL_PANO_COMPOSITE_GROUP; ///@brief ????????????? typedef struct tagPANO_COMPOSITE_GROUP_LIST_INFO { char szGroupID[32]; /// ??ID PANO_COMPOSITE_GROUP_INFO stuPanoCompositeGroup; /// ??????????? BYTE byReserved[1024]; ///?????? } PANO_COMPOSITE_GROUP_LIST_INFO; ///@brief ?????????????????????????? typedef struct tagNET_OUT_GET_ALL_PANO_COMPOSITE_GROUP { DWORD dwSize; /// ??????? UINT nGroupNum; /// ??????????? PANO_COMPOSITE_GROUP_LIST_INFO stuGroupInfoList[16]; /// ???????????? } NET_OUT_GET_ALL_PANO_COMPOSITE_GROUP; ///@brief ??????????????? typedef enum tagEM_SOURCE_STREAM_TYPE { EM_SOURCE_STREAM_UNKNOWN = -1, /// ??? EM_SOURCE_STREAM_MAIN, /// ?????? EM_SOURCE_STREAM_EXTRA1, /// ??????1 EM_SOURCE_STREAM_EXTRA2, /// ??????2 EM_SOURCE_STREAM_EXTRA3, /// ??????3 EM_SOURCE_STREAM_AUTO, /// ????????????? EM_SOURCE_STREAM_PREVIEW, /// ??????? } EM_SOURCE_STREAM_TYPE; ///@brief ?????????? typedef struct tagNET_SOURCE_DEVICE_INFO { int nDefinition; /// ??????, 0-????, 1-???? DH_DEVICE_PROTOCOL emProtocol; /// ???????? char szIp[32]; /// IP, ??????????? char szUser[64]; /// ????? char szPwd[64]; /// ???? int nPort; /// ??? int nVideoInputChannelNum; /// ???????????? int nAudioInputChannelNum; /// ???????????? DWORD dwHttpPort; /// Http????, 0-65535 DWORD dwRtspPort; /// Rtsp????, 0-65535 int nHint; /// 0-???????, 1-???????? char szDevClass[DH_DEV_TYPE_LEN]; /// ???????, ??IPC, DVR, NVR?? char szDevType[DH_DEV_TYPE_LEN]; /// ??????????, ??IPC-HF3300 char szMainStreamUrl[MAX_PATH]; /// ??????url??? BYTE byReserved[1028]; ///?????? } NET_SOURCE_DEVICE_INFO; ///@brief ???????????????? typedef struct tagPANO_COMPOSITE_GROUP_SOURCE_INFO { UINT nChannelID; /// ???????? EM_SOURCE_STREAM_TYPE emStreamType; /// ??????????? char szDeviceID[64]; /// ???ID, ??stuDeviceInfo ???? NET_SOURCE_DEVICE_INFO stuDeviceInfo; /// ??????????, szDeviceID ???????? BYTE byReserved[1024]; ///?????? } PANO_COMPOSITE_GROUP_SOURCE_INFO; ///@brief ???????????????????????? typedef struct tagNET_IN_SET_PANO_COMPOSITE_GROUP_SOURCE { DWORD dwSize; /// ??????? char szGroupID[32]; /// ????ID UINT nGroupSourceNum; /// ????????????, ??PANO_COMPOSITE_GROUP_INFO????????????????????????????????? PANO_COMPOSITE_GROUP_SOURCE_INFO *pstGroupSourceInfo; /// ???????????, ????????????????, ????????nGroupSourceNum * sizeof(PANO_COMPOSITE_GROUP_SOURCE_INFO) } NET_IN_SET_PANO_COMPOSITE_GROUP_SOURCE; ///@brief ???????????????????????? typedef struct tagNET_OUT_SET_PANO_COMPOSITE_GROUP_SOURCE { DWORD dwSize; /// ??????? } NET_OUT_SET_PANO_COMPOSITE_GROUP_SOURCE; ///@brief ??????????????????????? typedef struct tagNET_IN_GET_PANO_COMPOSITE_GROUP_SOURCE { DWORD dwSize; /// ??????? } NET_IN_GET_PANO_COMPOSITE_GROUP_SOURCE; ///@brief ???????????????????? typedef struct tagNET_COMPOSITE_GROUP_SOURCE_LIST { char szGroupID[32]; /// ????ID UINT nMaxGroupSrcNum; /// ????????????, ??????64?? UINT nGroupSourceNum; /// ?????????????????? PANO_COMPOSITE_GROUP_SOURCE_INFO *pstGroupSourceInfo; /// ??????????? BYTE byReserved[1024]; ///?????? } NET_COMPOSITE_GROUP_SOURCE_LIST; ///@brief ??????????????????????? typedef struct tagNET_OUT_GET_PANO_COMPOSITE_GROUP_SOURCE { DWORD dwSize; /// ??????? UINT nGroupSourceListNum; /// ???????????????????????? NET_COMPOSITE_GROUP_SOURCE_LIST stuGroupSourceList[16]; /// ???????????????????? } NET_OUT_GET_PANO_COMPOSITE_GROUP_SOURCE; ///@brief ???????????????? typedef enum tagEM_PANOCOMPOSITE_GROUP_OPERATE_TYPE { EM_PANOCOMPOSITE_GROUP_OPERATE_ADD, /// ?????????????, ???NET_IN_ADD_PANO_COMPOSITE_GROUP ?? NET_OUT_ADD_PANO_COMPOSITE_GROUP EM_PANOCOMPOSITE_GROUP_OPERATE_REMOVE, /// ????????????, ???NET_IN_REMOVE_PANO_COMPOSITE_GROUP ?? NET_OUT_REMOVE_PANO_COMPOSITE_GROUP EM_PANOCOMPOSITE_GROUP_OPERATE_MODIFY, /// ????????????, ???NET_IN_MODIFY_PANO_COMPOSITE_GROUP ?? NET_OUT_MODIFY_PANO_COMPOSITE_GROUP EM_PANOCOMPOSITE_GROUP_OPERATE_GET_ALL, /// ???????????????????, ???NET_IN_GET_ALL_PANO_COMPOSITE_GROUP ?? NET_OUT_GET_ALL_PANO_COMPOSITE_GROUP EM_PANOCOMPOSITE_GROUP_OPERATE_SET_SOURCE, /// ?????????????????, ???NET_IN_SET_PANO_COMPOSITE_GROUP_SOURCE ?? NET_OUT_SET_PANO_COMPOSITE_GROUP_SOURCE EM_PANOCOMPOSITE_GROUP_OPERATE_GET_SOURCE, /// ????????????????, ???NET_IN_GET_PANO_COMPOSITE_GROUP_SOURCE ?? NET_OUT_GET_PANO_COMPOSITE_GROUP_SOURCE } EM_PANOCOMPOSITE_GROUP_OPERATE_TYPE; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperatePanoCompositeGroup(LLONG lLoginID, EM_PANOCOMPOSITE_GROUP_OPERATE_TYPE emOperateType, void* pInParam, void* pOutParam, int nWaitTime); /////////////////////////////////////////////////////////////////////////////////////////////////// /////////////???????????????? end //////////////////////////////////////////////// /////////////////////////////////////////////////// //////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////// LED???//////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////// ///@brief ????LED?????????????????? typedef enum tagEM_LED_SET_CMD_TYPE { EM_LED_SET_CMD_DISPLAY_ENABLE, /// ?????????? EM_LED_SET_CMD_DISPLAY_LOCK, /// ???????????? EM_LED_SET_CMD_DISPLAY_TEST, /// ??????????? } EM_LED_SET_CMD_TYPE; ///@brief LED??????????? typedef enum tagEM_LED_IMAGE_TYPE { EM_LED_IMAGE_UNKNOWN = -1, /// ??? EM_LED_IMAGE_NORMAL, /// ??????? EM_LED_IMAGE_RED, /// ????? EM_LED_IMAGE_GREEN, /// ????? EM_LED_IMAGE_BLUE, /// ????? EM_LED_IMAGE_WHITE, /// ????? EM_LED_IMAGE_BLACK, /// ????? EM_LED_IMAGE_TRANSVERSE, /// ?????? EM_LED_IMAGE_VERTICAL, /// ?????? EM_LED_IMAGE_DIAGONAL, /// ?????? EM_LED_IMAGE_256GREY, /// 256????? EM_LED_IMAGE_AGINGSCREEN, /// ????? } EM_LED_IMAGE_TYPE; ///@brief CLIENT_SetLedDisplayCtrlParams?????????? typedef struct tagNET_IN_LED_SET_DISPLAY_CTRL_PARAMS { DWORD dwSize; /// ???????????,dwSize ??w?????????? int nChannel; /// ????? EM_LED_SET_CMD_TYPE emCmdType; /// ????LED?????????????????? BOOL bDisplayEnable; /// ?????????,emCmdType? EM_LED_SET_CMD_DISPLAY_ENABLE ????? BOOL bDisplayBlack; /// ??????????, emCmdType ? EM_LED_SET_CMD_DISPLAY_ENABLE ????? BOOL bDisplayLock; /// ???????????, emCmdType ? EM_LED_SET_CMD_DISPLAY_LOCK ????? EM_LED_IMAGE_TYPE emImageType; /// ???????????, emCmdType ? EM_LED_SET_CMD_DISPLAY_TEST ????? } NET_IN_LED_SET_DISPLAY_CTRL_PARAMS; ///@brief CLIENT_SetLedDisplayCtrlParams?????????? typedef struct tagNET_OUT_LED_SET_DISPLAY_CTRL_PARAMS { DWORD dwSize; /// ???????????,dwSize ??w?????????? } NET_OUT_LED_SET_DISPLAY_CTRL_PARAMS; ///@brief CLIENT_GetLedDisplayCtrlParams?????????? typedef struct tagNET_IN_LED_GET_DISPLAY_CTRL_PARAMS { DWORD dwSize; /// ???????????,dwSize ??w?????????? int nChannel; /// ????? } NET_IN_LED_GET_DISPLAY_CTRL_PARAMS; ///@brief CLIENT_GetLedDisplayCtrlParams?????????? typedef struct tagNET_OUT_LED_GET_DISPLAY_CTRL_PARAMS { DWORD dwSize; /// ???????????,dwSize ??w?????????? BOOL bDisplayEnable; /// ????????? BOOL bDisplayBlack; /// ?????????? BOOL bDisplayLock; /// ??????????? EM_LED_IMAGE_TYPE emImageType; /// ??????????? } NET_OUT_LED_GET_DISPLAY_CTRL_PARAMS; ///@brief ????LED????????????? (pInParam??pOutParam????????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetLedDisplayCtrlParams(LLONG lLoginID, const NET_IN_LED_SET_DISPLAY_CTRL_PARAMS* pInParam, NET_OUT_LED_SET_DISPLAY_CTRL_PARAMS* pOutParam,int nWaitTime); ///@brief ???LED????????????? (pInParam??pOutParam????????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetLedDisplayCtrlParams(LLONG lLoginID, const NET_IN_LED_GET_DISPLAY_CTRL_PARAMS* pInParam, NET_OUT_LED_GET_DISPLAY_CTRL_PARAMS* pOutParam,int nWaitTime); /////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////// ????????//////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////// #define MAX_PLAYDATES_COUNT 32 /// ?????????? #define MAX_SCREENTIME_COUNT 8 /// ????????????????? #define MAX_WINDOWS_COUNT 16 /// ???????????? #define MAX_ELEMENTS_COUNT 8 /// ?????????????????????? #define MAX_ELEMENTTEXT_LENGTH 512 /// ???????????????? #define MAX_NOTE_COUNT 4 /// ???????????????????????? #define MAX_PROGRAMMES_COUNT 32 /// ????????????? ///@brief ???????? typedef enum tagEM_SCREEN_DATE_TYPE { EM_SCREEN_DATE_UNKNOWN, /// ??? EM_SCREEN_DATE_MONTH, /// ??? EM_SCREEN_DATE_WEEK, /// ??? EM_SCREEN_DATE_DAY, /// ??? } EM_SCREEN_DATE_TYPE; ///@brief ????????? typedef struct tagNET_PROGRAMME_TIME_INFO { DWORD dwHour; /// ? DWORD dwMinute; /// ?? DWORD dwSecond; /// ?? } NET_PROGRAMME_TIME_INFO; ///@brief ???????????? typedef struct tagNET_SCREEN_TIME_INFO { BOOL bEnable; /// ??????? EM_SCREEN_DATE_TYPE emDateType; /// ?????????????? UINT nDateCount; /// ?????????????' UINT nPlayDates[MAX_PLAYDATES_COUNT]; /// ?????????? NET_PROGRAMME_TIME_INFO stuOpenTime; /// ??????? NET_PROGRAMME_TIME_INFO stuCloseTime; /// ??????? BYTE byReserved[128]; /// ???? } NET_SCREEN_TIME_INFO; ///@brief ???????????????? typedef struct NET_GUIDESCREEN_WINDOW_RECT_INFO { char szWindowID[MAX_COMMON_STRING_64]; /// ????ID NET_RECT stuRect; /// ???????? UINT nWindowBright; /// ??????????????????????????????????????0????????????? BYTE byReserved[132]; /// ???? } NET_GUIDESCREEN_WINDOW_RECT_INFO; ///@brief ??????????? typedef enum tagEM_SCREEN_STATUS_TYPE { EM_SCREEN_STATUS_UNKNOWN, /// ??? EM_SCREEN_STATUS_ON, /// ?? EM_SCREEN_STATUS_OFF, /// ?? } EM_SCREEN_STATUS_TYPE; #define MAX_MONTH_COUNT 12 /// ??????????? ///@brief ??????????????????? typedef struct tagNET_SUN_RISE_SET_TIME { /*?????????????24?????, ????????, ?????0 ????????????????*/ UINT nSunrise; /// ??????, ???????6 ? UINT nSunset; /// ???????, ???????18 ? BYTE byReserved[32]; /// ??????? } NET_SUN_RISE_SET_TIME; ///@brief ?????????????????????? typedef struct tagNET_GUIDESCREEN_AUTO_BRIGHT { BOOL bEnable; /// ????????????????? UINT nLightBright; /// ????????? UINT nDarkBright; /// ???????? NET_SUN_RISE_SET_TIME stuSunTime[MAX_MONTH_COUNT]; /// ?????????? BYTE byReserved[128]; /// ??????? } NET_GUIDESCREEN_AUTO_BRIGHT; ///@brief ???????????????? typedef struct tagNET_GUIDESCREEN_ATTRIBUTE_INFO { DWORD dwSize; char szScreenID[MAX_COMMON_STRING_64]; /// ??ID EM_SCREEN_STATUS_TYPE emStatus; /// ??????????? BOOL bIsForeverOpen; /// ?????????? UINT nScreenTime; /// ???????????? NET_SCREEN_TIME_INFO stuScreenTime[MAX_SCREENTIME_COUNT]; /// ????????????? UINT nBright; /// ?????????, 1-100 UINT nContrast; /// ?????????, 1-100 UINT nSaturation; /// ??????????, 1-100 UINT nVolume; /// ??????????? UINT nWidth; /// ???? UINT nHeight; /// ??? UINT nWindowsCount; /// ??????? NET_GUIDESCREEN_WINDOW_RECT_INFO stuWindows[MAX_WINDOWS_COUNT]; /// ??????? NET_GUIDESCREEN_AUTO_BRIGHT stuAutoBright; /// ?????????????????????? BYTE byReserved[512]; /// ??????? } NET_GUIDESCREEN_ATTRIBUTE_INFO; ///@brief ?????????????????????????? typedef struct tagNET_IN_SET_GUIDESCREEN_CFG { DWORD dwSize; UINT nScreenCount; /// ????????????????????, ????????? NET_GUIDESCREEN_ATTRIBUTE_INFO *pstGuideScreenCfg; /// ????????????????, ???????????, /// ?????nScreenCount ??NET_GUIDEESCREEN_ATTRIBUTE_INFO } NET_IN_SET_GUIDESCREEN_CFG; ///@brief ?????????????????????????? typedef struct tagNET_OUT_SET_GUIDESCREEN_CFG { DWORD dwSize; } NET_OUT_SET_GUIDESCREEN_CFG; ///@brief: ??????????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_SET_GUIDESCREEN_CFG* :pInParam /// ?????????? ///@param[out]: NET_OUT_SET_GUIDESCREEN_CFG* :pstOutPqram /// ?????????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetGuideScreenCfg(LLONG lLoginID, const NET_IN_SET_GUIDESCREEN_CFG* pInParam, NET_OUT_SET_GUIDESCREEN_CFG *pstOutPqram, const int nWaitTime); ///@brief ????????ID ?????????????????????? typedef struct tagNET_IN_GET_GUIDESCREEN_CFG_BYID { DWORD dwSize; char szScreenID[MAX_COMMON_STRING_64]; /// ??ID } NET_IN_GET_GUIDESCREEN_CFG_BYID; ///@brief ????????ID ?????????????????????? typedef struct tagNET_OUT_GET_GUIDESCREEN_CFG_BYID { DWORD dwSize; NET_GUIDESCREEN_ATTRIBUTE_INFO stuGuideScreenCfg; /// ???????????? } NET_OUT_GET_GUIDESCREEN_CFG_BYID; ///@brief: ????????ID ??????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_GUIDESCREEN_CFG_BYID* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_GUIDESCREEN_CFG_BYID* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetOneGuideScreenCfgById( LLONG lLoginID, const NET_IN_GET_GUIDESCREEN_CFG_BYID *pInParam, NET_OUT_GET_GUIDESCREEN_CFG_BYID* pOutParam, const int nWaitTime); ///@brief ?????????????????????????? typedef struct tagNET_IN_GET_ALL_GUIDESCREEN_CFG { DWORD dwSize; } NET_IN_GET_ALL_GUIDESCREEN_CFG; ///@brief ?????????????????????????? typedef struct tagNET_OUT_GET_ALL_GUIDESCREEN_CFG { DWORD dwSize; UINT nMaxScreen; /// ????????????, ????????? UINT nRetScreen; /// ???????????????? NET_GUIDESCREEN_ATTRIBUTE_INFO *pstGuideScreenCfg; /// ????????????????????????, ??????????? /// ?????nMaxScreen ??NET_GUIDESCREEN_ATTRIBUTE_INFO } NET_OUT_GET_ALL_GUIDESCREEN_CFG; ///@brief: ??????????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_ALL_GUIDESCREEN_CFG* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_ALL_GUIDESCREEN_CFG* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAllGuideScreenCfg( LLONG lLoginID, const NET_IN_GET_ALL_GUIDESCREEN_CFG *pInParam, NET_OUT_GET_ALL_GUIDESCREEN_CFG* pOutParam, const int nWaitTime); ///@brief ?????????? typedef enum tagEM_HORI_ALIGN_TYPE { EM_HORI_ALIGN_UNKNOWN, /// ??? EM_HORI_ALIGN_LEFT, /// ????? EM_HORI_ALIGN_CENTER, /// ???? EM_HORI_ALIGN_RIGHT, /// ????? } EM_HORI_ALIGN_TYPE; ///@brief ??????????? typedef enum tagEM_VERT_ALIGN_TYPE { EM_VERT_ALIGN_UNKNOWN, /// ??? EM_VERT_ALIGN_UP, /// ????? EM_VERT_ALIGN_CENTER, /// ???? EM_VERT_ALIGN_DOWN, /// ????? } EM_VERT_ALIGN_TYPE; ///@brief ????(????) ??? typedef enum tagEM_PIC_STYLE_TYPE { EM_PIC_STYLE_UNKNOWN, /// ??? EM_PIC_STYLE_DEFAULT, /// ??? EM_PIC_STYLE_UP, /// ???? EM_PIC_STYLE_DOWN, /// ???? EM_PIC_STYLE_LEFT, /// ???? EM_PIC_STYLE_RIGHT, /// ???? } EM_PIC_STYLE_TYPE; ///@brief ?????? typedef struct tagNET_GUIDESCREEN_TEXT_INFO { char szContent[MAX_ELEMENTTEXT_LENGTH]; /// ??????? UINT nFontSize; /// ??????? NET_COLOR_RGBA stuFontColor; /// ??????? char szFontStyle[MAX_COMMON_STRING_32]; /// ???????? double dbLineHeight; /// ???? EM_HORI_ALIGN_TYPE emHoriAlign; /// ???????? EM_VERT_ALIGN_TYPE emVertAlign; /// ????????? UINT nPlayTime; /// ???????, ?????? UINT nPlayCount; /// ??????? UINT nStayTime; /// ?????????????????????????????s EM_PIC_STYLE_TYPE emEnterStyle; /// ?????? EM_PIC_STYLE_TYPE emExitStyle; /// ??????? BYTE byReserved[128]; /// ??????? } NET_GUIDESCREEN_TEXT_INFO; ///@brief ?????????????????? typedef struct tagNET_GUIDESCREEN_NOTE_INFO { BOOL bEnable; /// ??????? NET_GUIDESCREEN_TEXT_INFO stuTextInfo; /// ?????????? NET_RECT stuRect; /// ???????????? BYTE byReserved[128]; /// ??????? } NET_GUIDESCREEN_NOTE_INFO; ///@brief ????????? typedef struct tagNET_VIDEO_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? char szPath[MAX_COMMON_STRING_128]; /// ?????? UINT nPlayCount; /// ??????? UINT nNote; /// ?????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????? BYTE byReserved[128]; /// ??????? } NET_VIDEO_ELEMENT_INFO; ///@brief ?????? typedef enum tagEM_PICTURE_TYPE { EM_PICTURE_TYPE_UNKNOWN = -1, /// ??? EM_PICTURE_TYPE_ORIGINAL, /// ???? EM_PICTURE_TYPE_COMPOSITE, /// ????? } EM_PICTURE_TYPE; ///@brief ???????? typedef struct tagNET_PICTURE_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? char szPath[MAX_COMMON_STRING_128]; /// ???????? UINT nPlayTime; /// ???????, ?????? UINT nPlayCount; /// ??????? UINT nDiaphaneity; /// ?????, 0-100 UINT nStayTime; /// ??????, ?????? EM_PIC_STYLE_TYPE emEnterStyle; /// ?????? EM_PIC_STYLE_TYPE emExitStyle; /// ??????? UINT nNote; /// ?????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????? EM_PICTURE_TYPE emPictureType; /// ?????? BYTE byReserved[124]; /// ??????? } NET_PICTURE_ELEMENT_INFO; ///@brief ?????????????????? typedef struct tagNET_TEXT_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? NET_GUIDESCREEN_TEXT_INFO stuElementsText; /// ????????? UINT nNote; /// ?????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????? BYTE byReserved[128]; /// ??????? } NET_TEXT_ELEMENT_INFO; ///@brief ???????????????????? typedef struct tagNET_PLACEHOLDER_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? UINT nNote; /// ?????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????? BYTE byReserved[128]; /// ??????? } NET_PLACEHOLDER_ELEMENT_INFO; ///@brief ??????? typedef enum tagEM_CAPTURE_TYPE { EM_CAPTURE_UNKNOWN, /// ??? EM_CAPTURE_VIDEO, /// ??? EM_CAPTURE_PICTURE, /// ?? } EM_CAPTURE_TYPE; ///@brief osd??????? typedef struct tagNET_CAPTURE_OSD_INFO { BOOL bEnable; /// ??????? NET_COLOR_RGBA stuFontColor; /// ??????? NET_COLOR_RGBA stuBackGroundColor; /// ??????? UINT nFontSize; /// ??????? char szContent[MAX_COMMON_STRING_512]; /// OSD???? BYTE byReserved[1024]; /// ??????? } NET_CAPTURE_OSD_INFO; ///@brief ????????? typedef struct tagNET_CAPTURE_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? char szUserName[DH_USER_NAME_LEN_EX]; /// ????? char szPassWord[DH_USER_PSW_LEN_EX]; /// ???? char szIP[DH_MAX_IPADDR_LEN_EX]; /// IP??? UINT nPort; /// ???? UINT nChannel; /// ????? EM_CAPTURE_TYPE emCaptureType; /// ??????? UINT nPlayTime; /// ???????, ?????? UINT nNote; /// ?????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????? NET_CAPTURE_OSD_INFO *pstOsdInfo; /// OSD???????, ????????????????????NULL????????(???)OSD??? BYTE byReserved[124]; /// ??????? } NET_CAPTURE_ELEMENT_INFO; ///@brief PDF?????? typedef struct tagNET_PDF_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? char szPdfPath[MAX_COMMON_STRING_128]; /// PDF??????? UINT nPlayTime; /// ???????, ????: ?? UINT nPlayCount; /// ??????? UINT nStayTime; /// ??????, ????: ?? EM_PIC_STYLE_TYPE emEnterStyle; /// ?????? EM_PIC_STYLE_TYPE emExitStyle; /// ??????? UINT nTextNote; /// ?????????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????????? BYTE byReserved[1024]; /// ??????? } NET_PDF_ELEMENT_INFO; ///@brief ????????? typedef struct tagNET_AUDIO_ELEMENT_INFO { char szName[MAX_COMMON_STRING_64]; /// ??????? BOOL bFillerState; /// ?????, ?????????????????????????????????????????????? char szAudioPath[MAX_COMMON_STRING_128]; /// ????????? UINT nPlayCount; /// ??????? UINT nTextNote; /// ?????????????? NET_GUIDESCREEN_NOTE_INFO stuNoteInfo[MAX_NOTE_COUNT]; /// ?????????? BYTE byReserved[1024]; /// ??????? } NET_AUDIO_ELEMENT_INFO; ///@brief ???????????????? typedef enum tagEM_ELEMENTS_TYPE { EM_ELEMENTS_UNKNOWN, /// ??? EM_ELEMENTS_VIDEO, /// ??????, ???NET_VIDEO_ELEMENT_INFO EM_ELEMENTS_PICTURE, /// ?????, ???NET_PICTURE_ELEMENT_INFO EM_ELEMENTS_TEXT, /// ??????, ???NET_TEXT_ELEMENT_INFO EM_ELEMENTS_PLACEHOLDER, /// ????????, ???NET_PLACEHOLDER_ELEMENT_INFO EM_ELEMENTS_CAPTURE, /// ??????, ???NET_CAPTURE_ELEMENT_INFO EM_ELEMENTS_PDF, /// PDF??????, ???NET_PDF_ELEMENT_INFO EM_ELEMENTS_AUDIO, /// ??????, ???NET_AUDIO_ELEMENT_INFO } EM_ELEMENTS_TYPE; ///@brief ??????????????? typedef enum tagEM_TOURPERIOD_TYPE { EM_TOURPERIOD_UNKNOWN, /// ??? EM_TOURPERIOD_PROGRAMME, /// ??????? EM_TOURPERIOD_PLAN, /// ??????? EM_TOURPERIOD_CUSTOM, /// ????????? } EM_TOURPERIOD_TYPE; ///@brief ????????????? typedef struct tagNET_ELEMENT_COMMON_INFO { EM_ELEMENTS_TYPE emElementsType; /// ??????????? BYTE byReserved[128]; /// ??????? } NET_ELEMENT_COMMON_INFO; ///@brief ???????????? typedef struct tagNET_GUIDESCREEN_WINDOW_INFO { char szWindowID[MAX_COMMON_STRING_64]; /// ????ID int nVolume; /// ?????????????????????????? NET_COLOR_RGBA stuColor; /// ?????????? UINT nDiaphaneity; /// ????????????0-100 EM_TOURPERIOD_TYPE emTourPeriodType; /// ??????????? UINT nTourPeriodTime; /// ?????????????????, ????????????????????? BOOL bAutoPlay; /// ??????????,Video??????? BOOL bLoopPlay; /// ??????????,Video??????? UINT nElementsCount; /// ??????????????? char* pstElementsBuf; /// ?????????????????????, ?????????????????? /// ???????????, ??????????????NET_ELEMENT_COMMON_INFO + ?????????????? UINT nBufLen; /// ????????????????????????? BYTE byReserved[128]; /// ??????? } NET_GUIDESCREEN_WINDOW_INFO; ///@brief ?????????????? typedef struct tagNET_ORDINARY_INFO { BOOL bTempletState; /// ??????????? char szDescription[MAX_COMMON_STRING_128]; /// ?????????? UINT nWhnCount; /// ???????????? NET_GUIDESCREEN_WINDOW_INFO stuWindowsInfo[MAX_WINDOWS_COUNT]; /// ???????????? BYTE byReserved[128]; /// ??????? } NET_ORDINARY_INFO; ///@brief ??????????????? typedef struct tagNET_PROGRAMME_INFO { char szProgrammeName[MAX_COMMON_STRING_64]; /// ??????? char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID, ???????????????????, ????????? BOOL bEnable; /// ?????????? NET_ORDINARY_INFO stuOrdinaryInfo; /// ????????? BYTE byReserved[512]; /// ??????? } NET_PROGRAMME_INFO; ///@brief ??????ID ???????????????? typedef struct tagNET_IN_GET_PROGRAMME_BYID { DWORD dwSize; char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID } NET_IN_GET_PROGRAMME_BYID; ///@brief ??????ID ???????????????? typedef struct tagNET_OUT_GET_PROGRAMME_BYID { DWORD dwSize; NET_PROGRAMME_INFO stuProgrammeInfo; /// ?????????? } NET_OUT_GET_PROGRAMME_BYID; ///@brief: ??????ID ????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_PROGRAMME_BYID* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_PROGRAMME_BYID* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetOneProgrammeById(LLONG lLoginID, const NET_IN_GET_PROGRAMME_BYID *pInParam, NET_OUT_GET_PROGRAMME_BYID *pOutParam, const int nWaitTime); ///@brief ???????????????????? typedef struct tagNET_IN_GET_ALL_PROGRAMMES { DWORD dwSize; } NET_IN_GET_ALL_PROGRAMMES; ///@brief ???????????????????? typedef struct tagNET_OUT_GET_ALL_PROGRAMMES { DWORD dwSize; UINT nMaxCnt; /// pstProgrammeInfo???NET_PROGRAMME_INFO ???? UINT nRetCnt; /// pstProgrammeInfo??????? NET_PROGRAMME_INFO ???? NET_PROGRAMME_INFO *pstProgrammeInfo; /// ??????????, ??????????? } NET_OUT_GET_ALL_PROGRAMMES; ///@brief: ????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_ALL_PROGRAMMES* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_ALL_PROGRAMMES* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAllProgrammes( LLONG lLoginID, const NET_IN_GET_ALL_PROGRAMMES* pInParam, NET_OUT_GET_ALL_PROGRAMMES* pOutParam, const int nWaitTime); ///@brief ????????????? typedef enum tagEM_BRIEFLYPROGRAM_TYPE { EM_BRIEFLYPROGRAM_UNKNOWN, /// ??? EM_BRIEFLYPROGRAM_BAR, /// ????? EM_BRIEFLYPROGRAM_ORDINARY, /// ?????? }EM_BRIEFLYPROGRAM_TYPE; ///@brief ????????? typedef struct tagNET_BRIEFLY_PROGRAMME_INFO { char szProgrammeName[MAX_COMMON_STRING_64]; /// ??????? char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID EM_BRIEFLYPROGRAM_TYPE emProgrammeType; /// ????????????? BOOL bEnable; /// ?????????? BOOL bTempletState; /// ??????????? BYTE byReserved[512]; /// ??????? } NET_BRIEFLY_PROGRAMME_INFO; ///@brief ???????????????????????? typedef struct tagNET_IN_GET_ALL_BRIEFLYPROGRAMMES { DWORD dwSize; } NET_IN_GET_ALL_BRIEFLYPROGRAMMES; ///@brief ???????????????????????? typedef struct tagNET_OUT_GET_ALL_BRIEFLYPROGRAMMES { DWORD dwSize; UINT nRetCnt; /// ?????????? NET_BRIEFLY_PROGRAMME_INFO stuBriProgrammes[MAX_PROGRAMMES_COUNT]; /// ????????? } NET_OUT_GET_ALL_BRIEFLYPROGRAMMES; ///@brief: ????????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_ALL_BRIEFLYPROGRAMMES* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_ALL_BRIEFLYPROGRAMMES* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAllBrieflyProgrammes( LLONG lLoginID, const NET_IN_GET_ALL_BRIEFLYPROGRAMMES* pInParam, NET_OUT_GET_ALL_BRIEFLYPROGRAMMES* pOutParam, const int nWaitTime); ///@brief ??????????????????? typedef struct tagNET_IN_ADD_ONE_PROGRAMME { DWORD dwSize; NET_PROGRAMME_INFO stuProgrammeInfo; /// ?????? } NET_IN_ADD_ONE_PROGRAMME; ///@brief ??????????????????? typedef struct tagNET_OUT_ADD_ONE_PROGRAMME { DWORD dwSize; char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID } NET_OUT_ADD_ONE_PROGRAMME; ///@brief: ???????????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_ADD_ONE_PROGRAMME* :pInParam /// ??????? ///@param[out]: NET_OUT_ADD_ONE_PROGRAMME* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddOneProgramme(LLONG lLoginID, const NET_IN_ADD_ONE_PROGRAMME* pInParam, NET_OUT_ADD_ONE_PROGRAMME *pOutParam, const int nWaitTime); ///@brief ?????????????????? typedef struct tagNET_IN_MODIFY_ONE_PROGRAMME { DWORD dwSize; NET_PROGRAMME_INFO stuProgrammeInfo; /// ?????? } NET_IN_MODIFY_ONE_PROGRAMME; ///@brief ?????????????????? typedef struct tagNET_OUT_MODIFY_ONE_PROGRAMME { DWORD dwSize; } NET_OUT_MODIFY_ONE_PROGRAMME; ///@brief: ??????ID ????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_MODIFY_ONE_PROGRAMME* :pInParam /// ??????? ///@param[out]: NET_OUT_MODIFY_ONE_PROGRAMME* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyOneProgrammeByID(LLONG lLoginID, const NET_IN_MODIFY_ONE_PROGRAMME* pInParam, NET_OUT_MODIFY_ONE_PROGRAMME* pOutParam, const int nWaitTime); ///@brief ??????????????????????? typedef struct tagNET_IN_DEL_PROGRAMMES { DWORD dwSize; UINT nProgrammeID; /// ???ID???? char szProGrammeIdList[MAX_PROGRAMMES_COUNT][MAX_COMMON_STRING_64]; /// ??????????ID????, ????????"all" ?????????? } NET_IN_DEL_PROGRAMMES; ///@brief ??????????????????????? typedef struct tagNET_OUT_DEL_PROGRAMMES { DWORD dwSize; } NET_OUT_DEL_PROGRAMMES; ///@brief: ????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_DEL_PROGRAMMES* :pInParam /// ??????? ///@param[out]: NET_OUT_DEL_PROGRAMMES* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelMultiProgrammesById( LLONG lLoginID, const NET_IN_DEL_PROGRAMMES* pInParam, NET_OUT_DEL_PROGRAMMES *pOutParam, const int nWaitTime); ///@brief ???????????????? typedef struct tagNET_IMMEDIATELY_PLAN_INFO { char szPlanName[MAX_COMMON_STRING_64]; /// ?????????? char szPlanID[MAX_COMMON_STRING_64]; /// ??????ID, ???????????????, ????????? char szSplitScreenID[MAX_COMMON_STRING_64]; /// ????ID BOOL bEnable; /// ?????????? UINT nPlayTime; /// ???????, ???? : ???? char szProgrammeName[MAX_COMMON_STRING_64]; /// ??????????????? char szProgrammeID[MAX_COMMON_STRING_64]; /// ???????????ID char szTemplateType[MAX_COMMON_STRING_64]; /// ??????? BYTE byReserved[448]; /// ??????? } NET_IMMEDIATELY_PLAN_INFO; ///@brief ????????? typedef struct tagNET_PROGRAMME_DATA { DWORD dwYear; /// ?? DWORD dwMonth; /// ?? DWORD dwDay; /// ?? } NET_PROGRAMME_DATA; ///@brief ????? typedef enum tagEM_REVIES_STATE { EM_REVIES_UNKNOWN, /// ??? EM_REVIES_PASS, /// ??? EM_REVIES_NOTPASS, /// ????? } EM_REVIES_STATE; ///@brief ??????????????? typedef struct tagNET_PROGRAMME_OF_PLAN { char szProgrammeName[MAX_COMMON_STRING_64]; /// ??????? char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID BOOL bIsBgProgramme; /// ??????? NET_PROGRAMME_TIME_INFO stuSatrtTime; /// ????????? NET_PROGRAMME_TIME_INFO stuEndTime; /// ?????????? BYTE byReserved[128]; /// ??????? } NET_PROGRAMME_OF_PLAN; ///@brief ?????????????? typedef enum tagEM_TIMERPLAN_DATE_TYPE { EM_TIMERPLAN_DATE_UNKNOWN, /// ??? EM_TIMERPLAN_DATE_MONTH, /// ??? EM_TIMERPLAN_DATE_WEEK, /// ??? EM_TIMERPLAN_DATE_DAY, /// ??? EM_TIMERPLAN_DATE_CUSTOM, /// ????? } EM_TIMERPLAN_DATE_TYPE; ///@brief ???????????????? typedef struct tagNET_TIMER_PLAN_INFO { char szPlanName[MAX_COMMON_STRING_64]; /// ?????????? char szPlanID[MAX_COMMON_STRING_64]; /// ??????ID char szSplitScreenID[MAX_COMMON_STRING_64]; /// ????ID EM_TIMERPLAN_DATE_TYPE emDataType; /// ?????????????? UINT nDataCount; /// ????????????? UINT nPlayDates[MAX_PLAYDATES_COUNT]; /// ??????????????? NET_PROGRAMME_DATA stuSatrtDate; /// ?????????? NET_PROGRAMME_DATA stuEndDate; /// ??????????? EM_REVIES_STATE emReviewState; /// ????? char szReviewOpinion[MAX_COMMON_STRING_64]; /// ?????? BOOL bOverdue; /// ????????? UINT nProgrammes; /// ??????? NET_PROGRAMME_OF_PLAN stuProgrammes[MAX_PROGRAMMES_COUNT]; /// ???????? BYTE byReserved[512]; /// ??????? } NET_TIMER_PLAN_INFO; ///@brief ???????????????????? typedef struct tagNET_IN_GET_ALL_PROGRAMMEPLANS { DWORD dwSize; } NET_IN_GET_ALL_PROGRAMMEPLANS; ///@brief ???????????????????? typedef struct tagNET_OUT_GET_ALL_PROGRAMMEPLANS { DWORD dwSize; UINT nMaxPlanCnt; /// ??????????????????????, ???????? UINT nRetImmCnt; /// ??????????????????? NET_IMMEDIATELY_PLAN_INFO* pstImmePlan; /// ???????????? UINT nRetTimerCnt; /// ??????????????????? NET_TIMER_PLAN_INFO* pstTimerPlan; /// ???????????? } NET_OUT_GET_ALL_PROGRAMMEPLANS; ///@brief: ???????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_ALL_PROGRAMMEPLANS* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_ALL_PROGRAMMEPLANS* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAllProgrammePlans( LLONG lLoginID, const NET_IN_GET_ALL_PROGRAMMEPLANS *pInParam, NET_OUT_GET_ALL_PROGRAMMEPLANS *pOutParam, const int nWaitTime); ///@brief ?????????? typedef enum tagEM_PROGRAMMEPLAN_TYPE { EM_PROGRAMMEPLAN_UNKNOWN, /// ??? EM_PROGRAMMEPLAN_IMME, /// ?????? EM_PROGRAMMEPLAN_TIMER, /// ?????? } EM_PROGRAMMEPLAN_TYPE; ///@brief ?????????ID ???????????????? typedef struct tagNET_IN_GET_PROGRAMMEPLAN_BYID { DWORD dwSize; char szPlanID[MAX_COMMON_STRING_64]; /// ??????ID } NET_IN_GET_PROGRAMMEPLAN_BYID; ///@brief ?????????ID ???????????????? typedef struct tagNET_OUT_GET_PROGRAMMEPLAN_BYID { DWORD dwSize; EM_PROGRAMMEPLAN_TYPE emPlanType; /// ?????????? NET_IMMEDIATELY_PLAN_INFO stuImmePlan; /// ????????????, emPlanType ?EM_PROGRAMMEPLAN_IMME????? NET_TIMER_PLAN_INFO stuTimerPlan; /// ????????????, emPlanType ?EM_PROGRAMMEPLAN_TIMER????? } NET_OUT_GET_PROGRAMMEPLAN_BYID; ///@brief: ?????????ID ????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_GET_PROGRAMMEPLAN_BYID* :pInParam /// ??????? ///@param[out]: NET_OUT_GET_PROGRAMMEPLAN_BYID* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetOneProgrammePlanByID( LLONG lLoginID, NET_IN_GET_PROGRAMMEPLAN_BYID *pInParam, NET_OUT_GET_PROGRAMMEPLAN_BYID* pOutParam, const int nWaitTime); ///@brief ??????????????????? typedef struct tagNET_IN_ADD_IMME_PROGRAMMEPLAN { DWORD dwSize; NET_IMMEDIATELY_PLAN_INFO stuImmePlan; /// ???????????? } NET_IN_ADD_IMME_PROGRAMMEPLAN; ///@brief ??????????????????? typedef struct tagNET_IN_ADD_TIMER_PROGRAMMEPLAN { DWORD dwSize; NET_TIMER_PLAN_INFO stuTimerPlan; /// ???????????? } NET_IN_ADD_TIMER_PROGRAMMEPLAN; ///@brief ???????????????? typedef struct tagNET_OUT_ADD_PROGRAMMEPLAN { DWORD dwSize; char szPlanID[MAX_COMMON_STRING_64]; /// ??????ID } NET_OUT_ADD_PROGRAMMEPLAN; ///@brief: ???????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_ADD_IMME_PROGRAMMEPLAN* :pInParam /// ??????? ///@param[out]: NET_OUT_ADD_PROGRAMMEPLAN* :pstOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddOneImmediProgrammePlan( LLONG lLoginID, const NET_IN_ADD_IMME_PROGRAMMEPLAN* pInParam, NET_OUT_ADD_PROGRAMMEPLAN* pOutParam, const int nWaitTime); ///@brief: ???????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_ADD_TIMER_PROGRAMMEPLAN* :pInParam /// ??????? ///@param[out]: NET_OUT_ADD_PROGRAMMEPLAN* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddOneTimerProgrammePlan( LLONG lLoginID, const NET_IN_ADD_TIMER_PROGRAMMEPLAN* pInParam, NET_OUT_ADD_PROGRAMMEPLAN* pOutParam, const int nWaitTime); ///@brief ?????????????????? typedef struct tagNET_IN_MODIFY_IMME_PROGRAMMEPLAN { DWORD dwSize; NET_IMMEDIATELY_PLAN_INFO stuImmePlan; /// ???????????? } NET_IN_MODIFY_IMME_PROGRAMMEPLAN; ///@brief ?????????????????? typedef struct tagNET_OUT_MODIFY_IMME_PROGRAMMEPLAN { DWORD dwSize; } NET_OUT_MODIFY_IMME_PROGRAMMEPLAN; ///@brief: ??????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_MODIFY_IMME_PROGRAMMEPLAN* :pInParam /// ??????? ///@param[out]: NET_OUT_MODIFY_IMME_PROGRAMMEPLAN* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyOneImmediProgrammePlan( LLONG lLoginID, const NET_IN_MODIFY_IMME_PROGRAMMEPLAN* pInParam, NET_OUT_MODIFY_IMME_PROGRAMMEPLAN* pOutParam, const int nWaitTime); ///@brief ?????????????????? typedef struct tagNET_IN_MODIFY_TIMER_PROGRAMMEPLAN { DWORD dwSize; NET_TIMER_PLAN_INFO stuTimerPlan; /// ???????????? } NET_IN_MODIFY_TIMER_PROGRAMMEPLAN; ///@brief ?????????????????? typedef struct tagNET_OUT_MODIFY_TIMER_PROGRAMMEPLAN { DWORD dwSize; } NET_OUT_MODIFY_TIMER_PROGRAMMEPLAN; ///@brief: ??????????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_MODIFY_TIMER_PROGRAMMEPLAN* :pInParam /// ??????? ///@param[out]: NET_OUT_MODIFY_TIMER_PROGRAMMEPLAN* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyOneTimerProgrammePlan( LLONG lLoginID, const NET_IN_MODIFY_TIMER_PROGRAMMEPLAN* pInParam, NET_OUT_MODIFY_TIMER_PROGRAMMEPLAN* pOutParam, const int nWaitTime); ///@brief ??????????????????? typedef struct tagNET_IN_DEL_PROGRAMMEPLANS { DWORD dwSize; UINT nPlanIDNum; /// ??????ID???? char szPlanID[MAX_PROGRAMMES_COUNT][MAX_COMMON_STRING_64]; /// ??????ID, ????????"all" ?????????? } NET_IN_DEL_PROGRAMMEPLANS; ///@brief ??????????????????? typedef struct tagNET_OUT_DEL_PROGRAMMEPLANS { DWORD dwSize; } NET_OUT_DEL_PROGRAMMEPLANS; ///@brief: ???????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_DEL_PROGRAMMEPLANS* :pInParam /// ??????? ///@param[out]: NET_OUT_DEL_PROGRAMMEPLANS* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelMultiProgrammePlans( LLONG lLoginID, const NET_IN_DEL_PROGRAMMEPLANS* pInParam, NET_OUT_DEL_PROGRAMMEPLANS* pOutParam, const int nWaitTime); #define MAX_GD_COUNT 170 ///@brief ?????????? typedef enum tagEM_GD_COLOR_TYPE { EM_GD_COLOR_RED, /// ??? EM_GD_COLOR_GREEN, /// ??? EM_GD_COLOR_YELLOW, /// ??? } EM_GD_COLOR_TYPE; ///@brief ??????????????????? typedef struct tagNET_IN_SET_GD_STATUS { DWORD dwSize; char szScreenID[MAX_COMMON_STRING_64]; /// ????ID, ??????ID UINT nGDNum; /// ??????? EM_GD_COLOR_TYPE emStatus[MAX_GD_COUNT]; /// ?????? } NET_IN_SET_GD_STATUS; ///@brief ??????????????????? typedef struct tagNET_OUT_SET_GD_STATUS { DWORD dwSize; } NET_OUT_SET_GD_STATUS; ///@brief: ???????????? ///@param[in]: LLONG :lLoginID /// ?????? ///@param[in]: NET_IN_SET_GD_STATUS* :pInParam /// ??????? ///@param[in]: NET_OUT_SET_GD_STATUS* :pOutParam /// ??????? ///@param[in]: int :nWaitTime /// ????????? ///@return: BOOL CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetGuideScreenGDStatus( LLONG lLoginID, const NET_IN_SET_GD_STATUS* pInParam, NET_OUT_SET_GD_STATUS* pOutParam, const int nWaitTime); /////////////////////////////////////////////////////////////////////////////////////////////////// /////////////// ????????(?????????????????????????????????????)////////////////// /////////////// ??????????????????????????????? ????????????????????////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////// ///@brief LOGO?????? typedef struct tagNET_PROGRAM_LOGO_INFO { char szLogoPath[MAX_COMMON_STRING_128]; /// Logo???? NET_RECT stuBackgroundRect; /// Logo???? UINT nDiaphaneity; /// ?????, 0-100 BYTE byReserved[128]; /// ??????? } NET_PROGRAM_LOGO_INFO; ///@brief ??????????? typedef struct tagNET_PROGRAM_BAR_INFO { char szContent[MAX_COMMON_STRING_512]; /// ??????? NET_COLOR_RGBA stuFontColor; /// ??????? UINT nFontSize; /// ??????? char szFontStyle[MAX_COMMON_STRING_32]; /// ???????? UINT nPlaySpeed; /// ??????? NET_RECT stuBackgroundRect; /// ????????? NET_COLOR_RGBA stuBackColor; /// ???????????? UINT nDiaphaneity; /// ?????, 0-100 BYTE byReserved[128]; /// ??????? } NET_PROGRAM_BAR_INFO; ///@brief ????????????? typedef struct tagNET_PLAYBOX_WINDOWS_INFO { NET_RECT stuRect; /// ???????? UINT nZorder; /// ????Z???? int nVolume; /// ?????????????????????????? NET_COLOR_RGBA stuBackColor; /// ?????????? UINT nDiaphaneity; /// ????????????0-100 EM_TOURPERIOD_TYPE emTourPeriodType; /// ??????????? UINT nTourPeriodTime; /// ?????????????????, ????????????????????? BOOL bAutoPlay; /// ??????????,Video??????? BOOL bLoopPlay; /// ??????????,Video??????? UINT nElementsCount; /// ??????????????? char* pstElementsBuf; /// ?????????????????????, ?????????????????? /// ???????????, ??????????????NET_ELEMENT_COMMON_INFO + ?????????????? UINT nBufLen; /// ????????????????????????? BYTE byReserved[128]; /// ??????? } NET_PLAYBOX_WINDOWS_INFO; ///@brief ??????????? typedef struct tagNET_PROGRAM_ORDINARY_INFO { BOOL bTempletState; /// ??????????? char szDescription[MAX_COMMON_STRING_128]; /// ?????????? UINT nWidth; /// ???????? UINT nHeight; /// ??????? int nWinCount; /// ???????? NET_PLAYBOX_WINDOWS_INFO stuWindowsInfo[MAX_WINDOWS_COUNT]; /// ??????? BYTE byReserved[128]; /// ??????? } NET_PROGRAM_ORDINARY_INFO; ///@brief ???????????? typedef enum tagEM_PLAYBOXPROGRAM_TYPE { EM_PROGRAM_ON_PLAYBOX_LOGO, /// LOGO, ??????? NET_PROGRAM_LOGO_INFO EM_PROGRAM_ON_PLAYBOX_BAR, /// ?????, ??????? NET_PROGRAM_BAR_INFO EM_PROGRAM_ON_PLAYBOX_ORDINARY, /// ??????, ??????? NET_PROGRAM_ORDINARY_INFO }EM_PLAYBOXPROGRAM_TYPE; ///@brief ??????????? typedef struct tagNET_PROGRAM_ON_PLAYBOX { char szProgrammeName[MAX_COMMON_STRING_64]; /// ??????? char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID, ??????????????? BOOL bEnable; /// ?????????? EM_PLAYBOXPROGRAM_TYPE emProgramType; /// ??????? NET_PROGRAM_LOGO_INFO stuLogoInfo; /// LOGO??????, emProgramType?EM_PROGRAM_ON_PLAYBOX_LOGO????? NET_PROGRAM_BAR_INFO stuBarInfo; /// ???????????, emProgramType?EM_PROGRAM_ON_PLAYBOX_BAR????? NET_PROGRAM_ORDINARY_INFO stuOrdinaryInfo; /// ?????????, emProgramType?EM_PROGRAM_ON_PLAYBOX_ORDINARY????? BYTE byReserved[512]; /// ??????? } NET_PROGRAM_ON_PLAYBOX; ///@brief ????????????????????????????? typedef struct tagNET_IN_GET_ALL_PLAYBOX_PROGRAM { DWORD dwSize; } NET_IN_GET_ALL_PLAYBOX_PROGRAM; ///@brief ????????????????????????????? typedef struct tagNET_OUT_GET_ALL_PLAYBOX_PROGRAM { DWORD dwSize; UINT nMaxProgramCount; /// ?????????????????????? UINT nRetProgramCount; /// ???????????????? NET_PROGRAM_ON_PLAYBOX *pstProgramInfo; /// ?????????????, ?????????????? } NET_OUT_GET_ALL_PLAYBOX_PROGRAM; ///@brief ???programme ID ?????????????????????????? typedef struct tagNET_IN_GET_PLAYBOX_PROGRAM_BYID { DWORD dwSize; char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID } NET_IN_GET_PLAYBOX_PROGRAM_BYID; ///@brief ???programme ID ?????????????????????????? typedef struct tagNET_OUT_GET_PLAYBOX_PROGRAM_BYID { DWORD dwSize; NET_PROGRAM_ON_PLAYBOX stuPlayBoxProgram; /// ??????????? } NET_OUT_GET_PLAYBOX_PROGRAM_BYID; ///@brief ???????????????????????????? typedef struct tagNET_IN_ADD_ONE_PLAYBOX_PRAGROM { DWORD dwSize; NET_PROGRAM_ON_PLAYBOX stuPlayBoxProgram; /// ??????????? } NET_IN_ADD_ONE_PLAYBOX_PRAGROM; ///@brief ???????????????????????????? typedef struct tagNET_OUT_ADD_ONE_PLAYBOX_PRAGROM { DWORD dwSize; char szProgrammeID[MAX_COMMON_STRING_64]; /// ???ID } NET_OUT_ADD_ONE_PLAYBOX_PRAGROM; ///@brief ??????????????ID?????????????? typedef struct tagNET_IN_MODIFY_PLAYBOX_PROGRAM_BYID { DWORD dwSize; NET_PROGRAM_ON_PLAYBOX stuPlayBoxProgram; /// ??????????? } NET_IN_MODIFY_PLAYBOX_PROGRAM_BYID; ///@brief ??????????????ID?????????????? typedef struct tagNET_OUT_MODIFY_PLAYBOX_PROGRAM_BYID { DWORD dwSize; } NET_OUT_MODIFY_PLAYBOX_PROGRAM_BYID; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAllProgramOnPlayBox( LLONG lLoginID, const NET_IN_GET_ALL_PLAYBOX_PROGRAM* pInParam, NET_OUT_GET_ALL_PLAYBOX_PROGRAM* pOutParam, const int nWaitTime); ///@brief ???programme ID ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetOneProgramByIdOnPlayBox( LLONG lLoginID, const NET_IN_GET_PLAYBOX_PROGRAM_BYID* pInParam, NET_OUT_GET_PLAYBOX_PROGRAM_BYID* pOutParam, const int nWaitTime); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddOneProgramToPlayBox( LLONG lLoginID, const NET_IN_ADD_ONE_PLAYBOX_PRAGROM* pInParam, NET_OUT_ADD_ONE_PLAYBOX_PRAGROM* pOutParam, const int nWaitTime); ///@brief ??????????????ID??????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyProgramOnPlayBoxById( LLONG lLoginID, const NET_IN_MODIFY_PLAYBOX_PROGRAM_BYID* pInParam, NET_OUT_MODIFY_PLAYBOX_PROGRAM_BYID* pOutParam, const int nWaitTime); ////////////////////////////// ????????? ////////////////////////////////////////// ///@brief ?????????-??????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OrganizationAddNodes(LLONG lLoginID, const DH_IN_ORGANIZATION_ADD_NODES* pInParam, DH_OUT_ORGANIZATION_ADD_NODES* pOutParam, int nWaitTime = 1000); ///@brief ?????????-??????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OrganizationDeleteNodes(LLONG lLoginID, const DH_IN_ORGANIZATION_DELETE_NODES* pInParam, DH_OUT_ORGANIZATION_DELETE_NODES* pOutParam, int nWaitTime = 1000); ///@brief ?????????-?????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OrganizationGetNodes(LLONG lLoginID, const DH_IN_ORGANIZATION_GET_NODES* pInParam, DH_OUT_ORGANIZATION_GET_NODES* pOutParam, int nWaitTime = 1000); ///@brief ?????????-??????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OrganizationSetNode(LLONG lLoginID, const DH_IN_ORGANIZATION_SET_NODE* pInParam, DH_OUT_ORGANIZATION_SET_NODE* pOutParam, int nWaitTime = 1000); //////////////////////////// ??????? ///////////////////////////////// ///@brief ??????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartSniffer(LLONG lLoginID, const DH_IN_START_SNIFFER* pInParam, DH_OUT_START_SNIFFER* pOutParam, int nWaitTime = 1000); ///@brief ????? ///@param[in] lLoginID ?????? ///@param[in] lSnifferID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSniffer(LLONG lLoginID, LLONG lSnifferID); ///@brief ????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSnifferInfo(LLONG lLoginID, const DH_IN_GET_SNIFFER_INFO* pInParam, DH_OUT_GET_SNIFFER_INFO* pOutParam, int nWaitTime = 1000); ///@brief ???????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSniffer(LLONG lLoginID, const NET_IN_ATTACH_SNIFFER* pInParam, NET_OUT_ATTACH_SNIFFER* pOutParam, int nWaitTime); ///@brief ?????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSniffer(LLONG lAttachHandle); ///@brief ??????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSnifferCaps(LLONG lLoginID, const NET_IN_GET_SNIFFER_CAP* pInParam, NET_OUT_GET_SNIFFER_CAP* pOutParam, int nWaitTime); //////////////////////////// ?????????? ///////////////////////////////// ///@brief ??JPEG??? ///@param[in] lPlayHandle ??? ///@param[out] pJpegBuf ??????????? ///@param[in] dwBufSize pJpegBuf???????? ///@param[out] pJpegSize ?????????? ///@param[in] quality ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPicJPEG(LLONG lPlayHandle, BYTE* pJpegBuf, DWORD dwBufSize,DWORD *pJpegSize,int quality); //////////////////////////// ?????????? ///////////////////////////////// ///@brief ??????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CreateRemoteFile(LLONG lLoginID, const DH_IN_CREATE_REMOTE_FILE* pInParam, DH_OUT_CREATE_REMOTE_FILE* pOutParam, int nWaitTime = 1000); ///@brief ??????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveRemoteFiles(LLONG lLoginID, const DH_IN_REMOVE_REMOTE_FILES* pInParam, DH_OUT_REMOVE_REMOTE_FILES* pOutParam, int nWaitTime = 1000); ///@brief ??????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RenameRemoteFile(LLONG lLoginID, const DH_IN_RENAME_REMOTE_FILE* pInParam, DH_OUT_RENAME_REMOTE_FILE* pOutParam, int nWaitTime = 1000); ///@brief ????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ListRemoteFile(LLONG lLoginID, const DH_IN_LIST_REMOTE_FILE* pInParam, DH_OUT_LIST_REMOTE_FILE* pOutParam, int nWaitTime = 1000); ///@brief ?????????, ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UploadRemoteFile(LLONG lLoginID, const DH_IN_UPLOAD_REMOTE_FILE* pInParam, DH_OUT_UPLOAD_REMOTE_FILE* pOutParam, int nWaitTime = 1000); ///@brief ????????????????????,lUploadFileHandle ? CLIENT_StartUploadRemoteFile ??????? /// nTotalSize = 0, nSendSize = -1 ??????????? /// nTotalSize = 0, nSendSize = -2 ?????????? typedef void (CALLBACK *fUploadFileCallBack) (LLONG lUploadFileHandle, int nTotalSize, int nSendSize, LDWORD dwUser); ///@brief ???????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] cbUploadFile ??????? ///@param[in] dwUser ??????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartUploadRemoteFile(LLONG lLoginID, const DH_IN_UPLOAD_REMOTE_FILE* pInParam, DH_OUT_UPLOAD_REMOTE_FILE* pOutParam, fUploadFileCallBack cbUploadFile, LDWORD dwUser); ///@brief ?????????? ///@param[in] lUploadFileID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopUploadRemoteFile(LLONG lUploadFileID); ///@brief ??????, ????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PlayAudioFile(LLONG lLoginID, const NET_IN_PLAY_AUDIO_FILE* pInParam, NET_OUT_PLAY_AUDIO_FILE* pOutParam, int nWaitTime = 1000); ///@brief ???????, ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DownloadRemoteFile(LLONG lLoginID, const DH_IN_DOWNLOAD_REMOTE_FILE* pInParam, DH_OUT_DOWNLOAD_REMOTE_FILE* pOutParam, int nWaitTime = 1000); ///@brief ????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetFileAttribute(LLONG lLoginID, const DH_IN_SET_FILEATTRIBUTE* pInParam, DH_OUT_SET_FILEATTRIBUTE* pOutParam, int nWaitTime = 1000); ///@brief ?????????????????????????????????????????????????????pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DownloadPieceFile(LLONG lLoginID, const NET_IN_DOWNLOAD_PIECE_FILE* pInParam, NET_OUT_DOWNLOAD_PIECE_FILE* pOutParam,int nWaitTime = 1000); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMediaFileInfo(LLONG lLoginID, const NET_IN_GET_NEDIA_FILE_INFO* pInParam, NET_OUT_GET_NEDIA_FILE_INFO* pOutParam, const int nWaitTime); ///@brief ?????????????????????????????(?????/????),pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartListMediaFileInfo(LLONG lLoginID, const NET_IN_START_LIST_FILE_INFO* pInParam, NET_OUT_START_LIST_FILE_INFO* pOutParam, const int nWaitTime); ///@brief ??????????????????????????(?????/????),pInParam??pOutParam??????????????? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoListMediaFileInfo(LLONG lFindHandle, const NET_IN_DO_LIST_FILE_INFO* pInParam, NET_OUT_DO_LIST_FILE_INFO* pOutParam, const int nWaitTime); ///@brief ????????????????????????????(?????/????), lFindHandle ????CLIENT_StartListMediaFileInfo ????? ///@param[in] lFindHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopListMediaFileInfo(LLONG lFindHandle); ///@brief ???????????????, pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NotifyFileUploadProgress(LLONG lLoginID, const NET_IN_NOTIFY_FILE_UPLOAD_PROGRESS_INFO* pstInParam, NET_OUT_NOTIFY_FILE_UPLOAD_PROGRESS_INFO* pstOutParam, const int nWaitTime); ///@brief ????????????(??????) ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveMediaFilesInfo(LLONG lLoginID, const NET_IN_REMOVE_MEDIA_FILES_INFO* pstInParam, NET_OUT_REMOVE_MEDIA_FILES_INFO* pstOutParam, const int nWaitTime); ////////////////////////////// ?????????? //////////////////////////////////////// ///@brief ???ISCSI Target????, pInParam == NULL???????targets,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetISCSITargets(LLONG lLoginID, const DH_IN_ISCSI_TARGETS* pInParam, DH_OUT_ISCSI_TARGETS* pOutParam, int nWaitTime = 1000); ///@brief pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetBitmap(LLONG lLoginID , const DH_IN_BITMAP* pInParam, DH_OUT_BITMAP* pOutParam, int nWaitTime = 1000); ///@brief ?????????????????,pstuNames??????????????? ///@param[in] lLoginID ?????? ///@param[out] pstuNames ?????????????? ///@param[in] nMaxCount ??????????????????? ///@param[out] pnRetCount ??????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStorageDeviceNames(LLONG lLoginID, DH_STORAGE_DEVICE_NAME* pstuNames, int nMaxCount, int* pnRetCount, int nWaitTime = 1000); ///@brief ????????????,pDevice??????????????? ///@param[in] lLoginID ?????? ///@param[in] pszDevName ?????????? ///@param[out] pDevice ????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStorageDeviceInfo(LLONG lLoginID, const char* pszDevName, DH_STORAGE_DEVICE* pDevice, int nWaitTime = 1000); ///@brief ?????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRecordInfo(LLONG lLoginID, const NET_IN_ATTACH_RECORD_INFO* pInParam, NET_OUT_ATTACH_RECORD_INFO* pOutParam, int nWaitTime = 1000); ///@brief ????????????????????,lAttachHandle??CLIENT_AttachRecordInfo?????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRecordInfo(LLONG lAttachHandle); ///@brief ????????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_NetStorageAttachWriteInfo(LLONG lLoginID, const NET_IN_STORAGE_ATTACH_WRITE_INFO* pInParam, NET_OUT_STORAGE_ATTACH_WRITE_INFO* pOutParam, int nWaitTime); ///@brief ????????????????,lAttachHandle??CLIENT_NetStorageAttachWriteInfo?????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NetStorageDetachWriteInfo(LLONG lAttachHandle); ///@brief ???????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NetStorageGetWriteInfo(LLONG lLoginID, const NET_IN_STORAGE_GET_WRITE_INFO* pInParam, NET_OUT_STORAGE_GET_WRITE_INFO* pOutParam, int nWaitTime); ///@brief RAID????, ?????????????????????,pInBuf??pOutBuf???????????????,????????emType???????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInBuf ??????????, ???????????????????,????????emType???????? ///@param[out] pOutBuf ??????????, ???????????????????,????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateRaid(LLONG lLoginID, NET_RAID_OPERATE_TYPE emType, void* pInBuf, void* pOutBuf, int nWaitTime); ///@brief ??????????,????????????CLIENT_AttachDevStorageDevFormat????????? pszDevName??CLIENT_GetStorageDeviceInfo????pszDevName??????? ///@param[in] lLoginID ?????? ///@param[in] pszDevName ?????????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DevStorageFormatPartitionAsyn(LLONG lLoginID, const char* pszDevName, const NET_IN_DEVSTORAGE_FORMAT_PARTITION_ASYN* pInParam, NET_OUT_DEVSTORAGE_FORMAT_PARTITION_ASYN* pOutParam, const int nWaitTime); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachDevStorageDevFormat(LLONG lLoginID, const NET_IN_DEVSTORAGE_ATTACH_DEV_FORMAT* pInParam, const int nWaitTime); ///@brief ?????????????????????, lAttachHandle ?CLIENT_AttachDevStorageDevFormat ??????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachDevStorageDevFormat(LLONG lAttachHandle); /////////////////////////////// ??????? /////////////////////////////////////// ///@brief ????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MatrixSearch(LLONG lLoginID, const DH_IN_MATRIX_SEARCH* pInParam, DH_OUT_MATRIX_SEARCH* pOutParam, int nWaitTime = 1000); ///@brief ?????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMatrixTree(LLONG lLoginID, const DH_IN_GET_MATRIX_TREE* pInParam, DH_OUT_GET_MATRIX_TREE* pOutParam, int nWaitTime = 1000); ///@brief ????????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSuperiorMatrixList(LLONG lLoginID, const DH_IN_GET_SUPERIOR_MATRIX_LIST* pInParam, DH_OUT_GET_SUPERIOR_MATRIX_LIST* pOutParam, int nWaitTime = 1000); /************************************************************************/ /* ?????? */ /************************************************************************/ ///@brief ????????? ///@param[in] lLoginID ?????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartRecordBackupRestore(LLONG lLoginID); ///@brief ???????? ///@param[in] lRestoreID ?????? ///@return CLIENT_NET_API void CALL_METHOD CLIENT_StopRecordBackupRestore(LLONG lRestoreID); ///@brief ??????????????,pInParam??????????????? ///@param[in] lRestoreID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddRecordBackupRestoreTask(LLONG lRestoreID, const DH_IN_ADD_REC_BAK_RST_TASK* pInParam, int nWaitTime = 1000); ///@brief ???????????????, pInParam pOutParam ??????????????? ///@param[in] lRestoreID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddRecordBackupRestoreRemoteTask(LLONG lRestoreID, const DH_IN_ADD_REC_BAK_RST_REMOTE_TASK* pInParam, DH_OUT_ADD_REC_BAK_RST_REMOTE_TASK* pOutParam, int nWaitTime); ///@brief ?????????????,pInParam??????????????? ///@param[in] lRestoreID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveRecordBackupRestoreTask(LLONG lRestoreID, const DH_IN_REMOVE_REC_BAK_RST_TASK* pInParam, int nWaitTime = 1000); ///@brief ????????????????,pInParam??pOutParam??????????????? ///@param[in] lRestoreID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryRecordBackupRestoreTask(LLONG lRestoreID, const DH_IN_QUERY_REC_BAK_RST_TASK* pInParam, DH_OUT_QUERY_REC_BAK_RST_TASK* pOutParam, int nWaitTime = 1000); ///@brief ????????????????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindRecordBackupRestoreTaskInfos(LLONG lLoginID, const NET_IN_FIND_REC_BAK_RST_TASK* pInParam, NET_OUT_FIND_REC_BAK_RST_TASK* pOutParam, int nWaitTime = 3000); ///@brief ??????????? typedef enum tagEM_RECORD_BACKUP_STREAM_TYPE { EM_RECORD_BACKUP_STREAM_TYPE_UNKNOWN, /// ??? EM_RECORD_BACKUP_STREAM_TYPE_JPG, /// ???? EM_RECORD_BACKUP_STREAM_TYPE_MAIN, /// ????????? }EM_RECORD_BACKUP_STREAM_TYPE; ///@brief ????????? typedef enum tagEM_RECORD_BACKUP_STATE { EM_RECORD_BACKUP_STATE_UNKNOWN, /// ??? EM_RECORD_BACKUP_STATE_NORMAL, /// ??????? EM_RECORD_BACKUP_STATE_RUNNING, /// ?????? EM_RECORD_BACKUP_STATE_FINISHED, /// ????? EM_RECORD_BACKUP_STATE_FAILED, /// ??? EM_RECORD_BACKUP_STATE_PAUSE, /// ??? }EM_RECORD_BACKUP_STATE; ///@brief ????????????? typedef struct tagNET_RECORD_BACKUP_RESTORE_TASK_INFO { UINT nTaskID; /// ????ID char byReserved[4]; /// ?????? char szDevice[128]; /// ???????? int nChannelID; /// ????? int nRemoteChannel; /// ???????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? double dbLength; /// ????????????,???????, -1?????? EM_RECORD_BACKUP_STREAM_TYPE emStreamType[32]; /// ??????????? int nStreamTypeNums; /// ??????????????? EM_RECORD_BACKUP_STATE emState; /// ?????????, 0-???????, 1-??????, 2-???, 3-???, 4-??? NET_RECORD_BACKUP_PROGRESS stuProgress; /// ?????????? EM_RECORD_BACKUP_FAIL_REASON emFailReason; /// ???????, ??emState????3??????????? char szReserved[252]; /// ??????? } NET_RECORD_BACKUP_RESTORE_TASK_INFO; ///@brief CLIENT_GetRecordBackupRestoreTaskInfoOffline ?????????? typedef struct tagNET_IN_GET_RECORD_BACKUP_RESTORE_TASK_INFO_OFFLINE { DWORD dwSize; } NET_IN_GET_RECORD_BACKUP_RESTORE_TASK_INFO_OFFLINE; ///@brief CLIENT_GetRecordBackupRestoreTaskInfoOffline ?????????? typedef struct tagNET_OUT_GET_RECORD_BACKUP_RESTORE_TASK_INFO_OFFLINE { DWORD dwSize; int nMaxCount; /// ???????, ????2048?? int nReturnCount; /// ??????????????????, ????2048?? char byReserved[4]; /// ?????? NET_RECORD_BACKUP_RESTORE_TASK_INFO* pTasks; /// ?????????????,??????????????????sizeof(DH_RECORD_BACKUP_RESTORE_TASK_INFO)*nMaxCount } NET_OUT_GET_RECORD_BACKUP_RESTORE_TASK_INFO_OFFLINE; ///@brief ?????????????????????,lRestoreID??CLIENT_StartRecordBackupRestore???, pInParam??pOutParam??????????????? ///@param[in] lRestoreID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRecordBackupRestoreTaskInfoOffline(LLONG lRestoreID, const NET_IN_GET_RECORD_BACKUP_RESTORE_TASK_INFO_OFFLINE* pInParam, NET_OUT_GET_RECORD_BACKUP_RESTORE_TASK_INFO_OFFLINE* pOutParam, int nWaitTime = 1000); //////////////////////////// Encode Manager ///////////////////////////////// ///@brief ??????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEncodePlan(LLONG lLoginID, const DH_IN_GET_ENCODE_PLAN* pInParam, DH_OUT_GET_ENCODE_PLAN* pOutParam, int nWaitTime = 1000); ///@brief ???????????????????????????????????, pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEncodePlanByResolution(LLONG lLoginID, const NET_IN_GET_ENCODEPLANE_BY_RESOLUTION* pInParam, NET_OUT_GET_ENCODEPLANE_BY_RESOLUTION* pOutParam, int nWaitTime); /************************************************************************/ /* ????????????? */ /************************************************************************/ ///@brief ???????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindRecord(LLONG lLoginID, NET_IN_FIND_RECORD_PARAM* pInParam, NET_OUT_FIND_RECORD_PARAM* pOutParam, int waittime=1000); ///@brief ??????:nFilecount:????????????, ????????????nRetRecordNumdwSize == nBufLen typedef void (CALLBACK *fAttachAIOFileprocCB) (LLONG lAttachHandle, NET_CB_AIOFILEPROC* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_attachAIOFileProc()??????? typedef struct tagNET_IN_ATTACH_AIO { DWORD dwSize; fAttachAIOFileprocCB cbNotify; /// ??????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_AIO; ///@brief CLIENT_attachAIOFileProc ??????? typedef struct tagNET_OUT_ATTACH_AIO { DWORD dwSize; }NET_OUT_ATTACH_AIO; ///@brief ?????? typedef enum tagNET_EM_ADVERT_ACTION { NET_EM_ADVERT_ACTION_UNKNOWN = 0, NET_EM_ADVERT_ACTION_START, /// start NET_EM_ADVERT_ACTION_STOP, /// stop }NET_EM_ADVERT_ACTION; ///@brief ??????? typedef enum tagNET_EM_ADVERT_POSITION { NET_EM_ADVERT_POSITION_UNKNOWN = 0, NET_EM_ADVERT_POSITION_TOP, /// top ???? NET_EM_ADVERT_POSITION_MIDDLE, /// middle ???? NET_EM_ADVERT_POSITION_BOTTOM, /// bottom ??? }NET_EM_ADVERT_POSITION; ///@brief CLIENT_SetAdvert ??????????(????NVR???) typedef struct tagNET_IN_SET_ADVERT { DWORD dwSize; NET_EM_ADVERT_ACTION emAction; /// ?????? int nSpeed; /// ????????? NET_EM_ADVERT_POSITION emPosition; /// ??????? } NET_IN_SET_ADVERT; ///@brief CLIENT_SetAdvert ??????????(????NVR???) typedef struct tagNET_OUT_SET_ADVERT { DWORD dwSize; } NET_OUT_SET_ADVERT; ///@brief CLIENT_AIOScreen ??????????(NVR????) typedef struct tagNET_IN_AIO_SCREEN { DWORD dwSize; } NET_IN_AIO_SCREEN; ///@brief CLIENT_AIOScreen ??????????(NVR????) typedef struct tagNET_OUT_AIO_SCREEN { DWORD dwSize; char szName[DH_COMMON_STRING_256]; /// ?????????? } NET_OUT_AIO_SCREEN; ///@brief CLIENT_AIOandroidAdb ??????????(??????adb????????) typedef struct tagNET_IN_CONTROL_ANDROID_ADB { DWORD dwSize; BOOL bEnable; /// ?????adb } NET_IN_CONTROL_ANDROID_ADB; ///@brief CLIENT_AIOandroidAdb ??????????(??????adb????????) typedef struct tagNET_OUT_CONTROL_ANDROID_ADB { DWORD dwSize; } NET_OUT_CONTROL_ANDROID_ADB; ///@brief ??????????? typedef struct tagNET_CFG_LINKGROUP_INFO { BOOL bEnable; /// ????????????? char szGroupID[64]; /// ??????ID BYTE bySimilarity; /// ???????? BYTE bReserved1[3]; /// ?????? char szColorName[32]; /// ???????????????????? BOOL bShowTitle; /// ????????????????????????????? BOOL bShowPlate; /// ???????????????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? BYTE bReserved[512]; /// ??????? }NET_CFG_LINKGROUP_INFO; ///@brief ?????????? typedef struct tagNET_CFG_STRANGERMODE_INFO { BOOL bEnable; /// ????????? char szColorHex[8]; /// ???????????????????? BOOL bShowTitle; /// ????????????????????????????? BOOL bShowPlate; /// ???????????????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ???????? BYTE bReserved[512]; /// ??????? }NET_CFG_STRANGERMODE_INFO; ///@brief ???????? typedef struct tagNET_CFG_CALIBRATEBOX_INFO { POINTCOORDINATE stuCenterPoint; /// ??????????????(?????????????[0,8191]????) float fRatio; /// ??????????????(????1?????????????0.5????????????????) }NET_CFG_CALIBRATEBOX_INFO; ///@brief ?????? typedef struct tagNET_CFG_SIZE { union { float nWidth; /// ?? float nArea; /// ??? }; float nHeight; /// ?? } NET_CFG_SIZE; ///@brief ???????? typedef struct tagNET_CFG_SIZEFILTER_INFO { int nCalibrateBoxNum; /// ???????? NET_CFG_CALIBRATEBOX_INFO stuCalibrateBoxs[10]; /// ?????(???????????????) bool bMeasureModeEnable; /// ?????????????????? BYTE bMeasureMode; /// ???????,0-???????????????????, 1-???????????????, 2-?????????????? bool bFilterTypeEnable; /// ?????????????????? /* ByArea,ByRatio?????????????????ByArea??ByRatio?????? 2012/03/06 */ BYTE bFilterType; /// ????????:0:"ByLength",1:"ByArea", 2"ByWidthHeight" bool bFilterMinSizeEnable; /// ????????????????????? bool bFilterMaxSizeEnable; /// ??????????????????? bool abByArea; bool abMinArea; bool abMaxArea; bool abMinAreaSize; bool abMaxAreaSize; bool bByArea; /// ?????????? ???????ComplexSizeFilter?????????? NET_CFG_SIZE stuFilterMinSize; /// ??????????? "ByLength"???????????????"ByArea"???????????????????(?????????????????????????)?? NET_CFG_SIZE stuFilterMaxSize; /// ????????? "ByLength"???????????????"ByArea"???????????????????(?????????????????????????)?? float nMinArea; /// ??????? float nMaxArea; /// ?????? NET_CFG_SIZE stuMinAreaSize; /// ??????????????? "???????"?"????"??????????????????????????"???????"?"?????????"??????????????????????? NET_CFG_SIZE stuMaxAreaSize; /// ??????????????, ??? bool abByRatio; bool abMinRatio; bool abMaxRatio; bool abMinRatioSize; bool abMaxRatioSize; bool bByRatio; /// ?????????? ???????ComplexSizeFilter?????????? bool bReserved1[2]; double dMinRatio; /// ????????? double dMaxRatio; /// ??????? NET_CFG_SIZE stuMinRatioSize; /// ????????????????????????????????????????? NET_CFG_SIZE stuMaxRatioSize; /// ?????????????????? int nAreaCalibrateBoxNum; /// ??????????? NET_CFG_CALIBRATEBOX_INFO stuAreaCalibrateBoxs[10]; /// ???????? int nRatioCalibrateBoxs; /// ???????????? NET_CFG_CALIBRATEBOX_INFO stuRatioCalibrateBoxs[10]; /// ????????? bool abBySize; /// ????????????????????? bool bBySize; /// ??????????? BYTE bReserved[518]; /// ??????? }NET_CFG_SIZEFILTER_INFO; ///@brief ?????????? typedef enum tagEM_SENSOR_TYPE { EM_SENSOR_TYPE_UNKNOWN, /// ??? EM_SENSOR_TYPE_NC, /// ???? EM_SENSOR_TYPE_NO, /// ???? }EM_SENSOR_TYPE; ///@brief ???????????? typedef struct tagNET_LOCAL_EXT_ALARM_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????? char szName[MAX_LOCAL_EXT_ALARM_NAME_LEN]; /// ??????????? EM_SENSOR_TYPE emSensorType; /// ?????????? NET_CFG_ALARM_MSG_HANDLE stuEventHandler; /// ???????? }NET_LOCAL_EXT_ALARM_INFO; ///@brief ???????????? typedef enum tagNET_EM_FIREWARNING_MODE_TYPE { NET_EM_FIREWARNING_TYPE_PTZPRESET, /// ??????????????? NET_EM_FIREWARNING_TYPE_SPACEEXCLUDE, /// ???????? } NET_EM_FIREWARNING_MODE_TYPE; ///@brief ????????????? NET_EM_CFG_FIRE_WARNINGMODE typedef struct tagNET_FIREWARNING_MODE_INFO { DWORD dwSize; /// ??????? NET_EM_FIREWARNING_MODE_TYPE emFireWarningMode; /// ????????? } NET_FIREWARNING_MODE_INFO; ///@brief ???????? typedef enum tagNET_EM_FIREWARNING_DETECTMODE_TYPE { NET_EM_FIREWARNING_DETECTMODE_TYPE_AUTO, /// ???(???) NET_EM_FIREWARNING_DETECTMODE_TYPE_NORMAL, /// ???? } NET_EM_FIREWARNING_DETECTMODE_TYPE; ///@brief ?????? typedef enum tagNET_EM_FIREWARNING_DETECTTARGET_TYPE { NET_EM_FIREWARNING_DETECTTARGET_TYPE_FIRE, /// ?????(???) NET_EM_FIREWARNING_DETECTTARGET_TYPE_SMOKE, /// ?????? } NET_EM_FIREWARNING_DETECTTARGET_TYPE; #define MAX_FIREWARNING_DETECTRGN_NUM 32 /// ?????????????? #define MAX_FIREWARNING_RULE_NUM 32 /// ??????? #define MAX_FIREWARNING_DETECTWND_NUM 8 /// ??????????? ///@brief ????????????? typedef struct tagNET_FIREWARN_EVENTHANDLE_INFO { NET_CFG_TIME_SCHEDULE stuTimeSection; /// ???????? BOOL bRecordEnable; /// ???????????????RecordChannels??????TRUE???????action?start??????stop????????FALSE????????? int nRecordChannelNum; /// ?????????? int nRecordChannels[32]; /// ???????????? int nRecordLatch; /// ?????????????????????[10,300] BOOL bAlarmOutEnable; /// ?????????? int nAlarmOutChannelNum; /// ?????????????? int nAlarmOutChannels[32]; /// ???????????????? int nAlarmOutLatch; /// ?????????????????????????????????[10, 300] int nPtzLinkNum; /// ????????? DH_PTZ_LINK struPtzLink[16]; /// ??????? BOOL bPtzLinkEnable; /// ?????????? BOOL bSnapshotEnable; /// ??????? int nSnapshotChannelNum; /// ??????????? int nSnapshotChannels[32]; /// ????????????? BOOL bMailEnable; /// ????????????????????????? BYTE byReserved[1024]; /// ??????? } NET_FIREWARN_EVENTHANDLE_INFO; ///@brief ?????? typedef struct tagNET_FIREWARN_DETECTWND_INFO { int nRgnNum; /// ??????????? BYTE byReservedAlign[4]; /// ??????? INT64 nRegions[MAX_FIREWARNING_DETECTRGN_NUM]; /// ??????? NET_POSTIONF stuPostion; /// ????????? int nTargetSize; /// ??????(???????:Normal????,??????????) int nSensitivity; /// ?????????????????:Normal?????? int nWindowsID; /// ????ID char szName[32]; /// ???????? BYTE byReserved[256]; /// ??????? } NET_FIREWARN_DETECTWND_INFO; ///@brief ?????????????? typedef struct tagNET_FIREWARN_RULE_INFO { BOOL bEnable; /// ???????????????? int nPresetId; /// ??????,???????????????????? int nRow; /// ??????????????? int nCol; /// ??????????????? NET_EM_FIREWARNING_DETECTMODE_TYPE emFireWarningDetectMode; /// ?????? NET_EM_FIREWARNING_DETECTTARGET_TYPE emFireWarningDetectTragetType; /// ??????????? BOOL bTimeDurationEnable; /// ?????????????? int nFireDuration; /// ??????????????????????????????????????????????? /// ?????????????????????????? NET_FIREWARN_EVENTHANDLE_INFO stuEventHandler; /// ????????? int nDetectWindowNum; /// ??????? NET_FIREWARN_DETECTWND_INFO stuDetectWnd[MAX_FIREWARNING_DETECTWND_NUM]; /// ?????? BYTE byReserved[256]; /// ??????? } NET_FIREWARN_RULE_INFO; ///@brief ???????????(???????????New???????) NET_EM_CFG_FIRE_WARNING typedef struct tagNET_FIRE_WARNING_INFO { DWORD dwSize; /// ??????? int nFireWarnRuleNum; /// ?????????????? NET_FIREWARN_RULE_INFO stuFireWarnRule[MAX_FIREWARNING_RULE_NUM]; /// ??????????????? } NET_FIRE_WARNING_INFO; ///@brief ????????? typedef enum tagEM_HOT_ALARM_CONDITION { EM_HOT_ALARM_CONDITION_UNKNOWN, /// ??? EM_HOT_ALARM_CONDITION_ABOVE_MAX, /// ??????????? EM_HOT_ALARM_CONDITION_ABOVE_MAX_AND_BELOW_MIN, /// ????????????????????????????(???????????????????) } EM_HOT_ALARM_CONDITION; ///@brief ????????? typedef enum tagEM_COLD_ALARM_CONDITION { EM_COLD_ALARM_CONDITION_UNKNOWN, /// ??? EM_COLD_ALARM_CONDITION_BELOW_MIN, /// ??????????? EM_COLD_ALARM_CONDITION_ABOVE_MAX_AND_BELOW_MIN, /// ????????????????????????????(???????????????????) } EM_COLD_ALARM_CONDITION; ///@brief ???????????(???????????New???????) NET_EM_CFG_HOT_COLD_SPOT_WARNING typedef struct tagNET_HOT_COLD_SPOT_WARNING_INFO { DWORD dwSize; /// ??????? BOOL bHotAlarmEnable; /// ???????? BOOL bColdAlarmEnable; /// ???????? EM_HOT_ALARM_CONDITION emHotAlarmCondition; /// ????????? EM_COLD_ALARM_CONDITION emColdAlarmCondition; /// ????????? BYTE byReserved[4]; /// ?????? double dHotThreshold; /// ??????????? double dColdThreshold; /// ??????????? BOOL bHotSpotLinkEnable; /// ?????????? BOOL bColdSpotLinkEnable; /// ?????????? NET_CFG_ALARM_MSG_HANDLE stuEventHandler; /// ???????? } NET_HOT_COLD_SPOT_WARNING_INFO; ///@brief ??????????? typedef struct tagNET_HIGH_FREQUENCY_ALARM { char szAlarmName[32]; /// ??????????? BOOL nEnable; /// ?????????? int nAppearTimes; /// ????????????????????????????????????????? int nStatPeriod; /// ??????????????????????? char szReserved[1020]; /// ?????? } NET_HIGH_FREQUENCY_ALARM; ///@brief ??????????? typedef struct tagNET_LOW_FREQUENCY_ALARM { BOOL nEnable; /// ?????????? int nStatPeriod; /// ??????????????????????? int nAppearTimes; /// ????????????????????????????????????????? char szReserved[1020]; /// ?????? } NET_LOW_FREQUENCY_ALARM; ///@brief ??????? typedef struct tagNET_FREQUENCY_ANALYSIS_GROUP_LIST { char szGroupID[64]; /// ??????ID NET_HIGH_FREQUENCY_ALARM stuHighFrequencyAlarm; /// ??????????? NET_LOW_FREQUENCY_ALARM stuLowFrequencyAlarm; /// ??????????? NET_CFG_ALARM_MSG_HANDLE stuEventHandler; /// ???????? BOOL bEnable; /// ??????????? char szReserved[1020]; /// ?????? } NET_FREQUENCY_ANALYSIS_GROUP_LIST; ///@brief ??????????????? NET_EM_CFG_FREQUENCY_ANALYSIS typedef struct tagNET_CFG_FREQUENCY_ANALYSIS_INFO { DWORD dwSize; /// ???????, ???? UINT nScheduleID; /// ???ID???????????ID??????? NET_CFG_ALARM_MSG_HANDLE stuDefaultHandler; /// ?????????web????????????????????????????????? NET_FREQUENCY_ANALYSIS_GROUP_LIST* pstuGroupList; /// ??????????????????????????????sizeof(NET_FREQUENCY_ANALYSIS_GROUP_LIST)*nGroupListNum int nGroupListNum; /// ??????????????? int nGroupListRetNum; /// ????????????????? } NET_CFG_FREQUENCY_ANALYSIS_INFO; ///@brief ??????? typedef struct tagNET_INTELLI_TOUR_PATH { UINT nSchemeID; /// ??????, ??????1~300 UINT nDuration; /// ??????, ??????30~900, ???????? UINT nSpeed; /// ?????????, ??????1~10 char byReserved[508]; /// ?????? } NET_INTELLI_TOUR_PATH; ///@brief ???????? typedef struct tagNET_INTELLI_TOUR_GROUP { DH_TSECT stuTimeSection; /// ???? int nTourPathNum; /// ?????????????? NET_INTELLI_TOUR_PATH stuTourPath[10]; /// ??????? char byReserved[1020]; /// ?????? } NET_INTELLI_TOUR_GROUP; ///@brief ???????????? typedef struct tagNET_CFG_INTELLI_TOUR_PLAN { NET_INTELLI_TOUR_GROUP stuTourGroup[16]; /// ???????? int nGroupNum; /// ???????? char byReserved[1020]; /// ?????? } NET_INTELLI_TOUR_PLAN; ///@brief ???????????????????? NET_EM_CFG_INTELLI_SCHEME_TOUR typedef struct tagNET_CFG_CFG_INTELLI_SCHEME_TOUR_INFO { DWORD dwSize; /// ???????, ???? BOOL bEnable; /// ??????????????????? EM_TOUR_PRIOR_MODE emTourPriMode; /// ????????? UINT nIdleWaitingTime; /// ????????????????????????????????????????????????????,????:?? UINT nSceneSwitchingTime; /// ?????????????????????????????????????????????????????????????????????????????????? NET_INTELLI_TOUR_PLAN stuTourPlan[7]; /// ???????????? int nTourPlanNum; /// ???????????????? } NET_CFG_CFG_INTELLI_SCHEME_TOUR_INFO; ///@brief ???????? typedef enum tagNET_EM_PTZ_HEATER_MODE { NET_EM_PTZ_HEATER_MODE_UNKNOWN, /// ??? NET_EM_PTZ_HEATER_MODE_AUTO, /// ??? NET_EM_PTZ_HEATER_MODE_MANUAL, /// ??? NET_EM_PTZ_HEATER_MODE_CLOSE, /// ??? NET_EM_PTZ_HEATER_MODE_TIME, /// ??? } NET_EM_PTZ_HEATER_MODE; ///@brief ?????????? typedef enum tagNET_EM_PTZ_HEATER_TYPE { NET_EM_PTZ_HEATER_TYPE_UNKNOWN, /// ??? NET_EM_PTZ_HEATER_TYPE_TOTAL, /// ???????? NET_EM_PTZ_HEATER_TYPE_THERMAL, /// ???????????? NET_EM_PTZ_HEATER_TYPE_VISUAL, /// ???????????? NET_EM_PTZ_HEATER_TYPE_DEMISTING, /// ?????????????? NET_EM_PTZ_HEATER_TYPE_PTZ, /// ????????? NET_EM_PTZ_HEATER_TYPE_SHIELD, /// ????????? } NET_EM_PTZ_HEATER_TYPE; ///@brief ??????????????? typedef enum tagNET_EM_MULTI_HEATER_TYPE { NET_EM_MULTI_HEATER_TYPE_UNKNOWN, /// ??? NET_EM_MULTI_HEATER_TYPE_TOTAL, /// ???????? NET_EM_MULTI_HEATER_TYPE_THERMAL, /// ???????????? NET_EM_MULTI_HEATER_TYPE_VISUAL, /// ???????????? NET_EM_MULTI_HEATER_TYPE_DEMISTING, /// ?????????????? } NET_EM_MULTI_HEATER_TYPE; ///@brief ????????????? typedef enum tagNET_EM_MULTI_HEATER_MODE { NET_EM_MULTI_HEATER_MODE_UNKNOWN, /// ??? NET_EM_MULTI_HEATER_MODE_AUTO, /// ??? NET_EM_MULTI_HEATER_MODE_MANUAL, /// ??? } NET_EM_MULTI_HEATER_MODE; ///@brief ?????????????????? typedef struct tagNET_MULTI_HEATER_INFO { BOOL bEnable; /// ?????????,TRUE??,FALSE??(???????????) NET_EM_MULTI_HEATER_TYPE emType; /// ?????????? NET_EM_MULTI_HEATER_MODE emMode; /// ???????? int nStartTemperature; /// ???????????????0.1??,????[-1000, 2000] int nStopTemperature; /// ??????????????0.1??,????[-1000, 2000] (-100??200??) char szReserved[1024]; /// ?????? } NET_MULTI_HEATER_INFO; ///@brief ?????????? NET_EM_CFG_PTZ_HEATER typedef struct tagNET_CFG_PTZ_HEATER_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????,TRUE??,FALSE??(???????????) BOOL bAutoEnable; /// ?????????,TRUE??,FALSE??(???????????) NET_EM_PTZ_HEATER_MODE emMode; /// ???????? UINT nDuration; /// ??????????????????1-120???? int nTimeSectionsNum; /// ???????????????? char szTimeSections[6][32]; /// ??????????????????????????6?????? int nStartTemperature; /// ???????????????0.1??,????[-1000, 2000] int nStopTemperature; /// ??????????????0.1??,????[-1000, 2000] (-100??200??) NET_EM_PTZ_HEATER_TYPE emType; /// ?????????? int nMultiHeaterInfoNum; /// ????????????????????????? int nRetMultiHeaterInfoNum; /// ??????????????????????????????? NET_MULTI_HEATER_INFO* pstuMultiHeaterInfo; /// ???????????????????????????????????????????sizeof(NET_MULTI_HEATER_INFO)*nMultiHeaterInfoNum } NET_CFG_PTZ_HEATER_INFO; ///@brief ????????? typedef enum tagEM_ALARM_OUT_MODE { EM_ALARM_OUT_MODE_UNKNOWN = -1, /// ??? EM_ALARM_OUT_MODE_AUTO, /// ??? EM_ALARM_OUT_MODE_FORCED, /// ?????? EM_ALARM_OUT_MODE_CLOSE, /// ?????? } EM_ALARM_OUT_MODE; ///@brief ?????????????? (?????? NET_EM_CFG_REMOTE_ALARM_BELL) typedef struct tagNET_CFG_REMOTE_ALARM_BELL_INFO { DWORD dwSize; /// ??????? EM_ALARM_OUT_MODE emMode; /// ????????? } NET_CFG_REMOTE_ALARM_BELL_INFO; ///@brief ?????????????????? typedef struct tagNET_CFG_ACCESSCTL_BLACKLIST { DWORD dwSize; BOOL bEnable; /// ??????? }NET_CFG_ACCESSCTL_BLACKLIST; ///@brief ????????????? typedef struct tagNET_CFG_VSP_HONEYWELL_INFO { DWORD dwSize; ///??????? BOOL bEnable; ///??? char szIPAddress[64]; ///??????IP??? int nPort; ///????????? char szUserName[128]; ///????? char szPassword[128]; ///???? char szUserCode[8]; ///????? }NET_CFG_VSP_HONEYWELL_INFO; ///@brief ????????? typedef struct tagNET_CFG_LOG_GROUP_INFO { UINT nSize; /// ??????????????????1400 UINT nBatch; /// ???????????????20 ????1 UINT nDelay; /// ????????????, ??????60000 ????60000 ?????????? BYTE byReserved[32]; /// ??????? }NET_CFG_LOG_GROUP_INFO; ///@brief ????????????? typedef struct tagNET_CFG_LOG_SERVER_INFO { BOOL bEnable; /// ????????? char szIP[40]; /// IP UINT nPort; /// ??? UINT nProtocol; /// ???????? 0: TCP 1: UDP UINT nSerial; /// ????????????????0xFFFF????1??(0x0001)???????1????2??(0x0002)???????2????3??(0x0004)???????3?????????? NET_CFG_LOG_GROUP_INFO stuLogGroup; /// ????????? BYTE byReserved[256]; /// ??????? }NET_CFG_LOG_SERVER_INFO; ///@brief ??????? typedef struct tagNET_CFG_LOG_APPEND_INFO { BOOL bSequence; /// ????????????? BOOL bDate; /// ?????????? BOOL bTime; /// ????????? char szCustom[32]; /// ???????? BYTE byReserved[32]; /// ??????? }NET_CFG_LOG_APPEND_INFO; ///@brief ???????????????????????? NET_EM_CFG_SERIAL_PUSH_LOG?? typedef struct tagNET_CFG_SERIALPUSHLOG_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??? NET_CFG_LOG_SERVER_INFO stuServerInfo[16]; /// ????????? int nServerCount; /// ????????????? NET_CFG_LOG_APPEND_INFO stuAppendInfo[16]; /// ?????? int nAppendCount; /// ????????? }NET_CFG_SERIALPUSHLOG_INFO; ///@brief CVI ????????? typedef struct tagNET_CFG_COAXIAL_ALARMLOCAL { BOOL bEnable; /// ??? char szName[64]; /// ????????? NET_SENSE_METHOD emSenseMethod; /// ?????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ?????????? BYTE byReserved[1024]; /// ?????? }NET_CFG_COAXIAL_ALARMLOCAL; ///@brief CVI?????????? typedef struct tagNET_COAXIAL_ALARMLOCAL_INFO { DWORD dwSize; /// ??????? NET_CFG_COAXIAL_ALARMLOCAL* pstuAlaramCfg; /// ??????? int nCount; /// pstuAlaramCfg ???? int nCountRet; /// ?????????????? }NET_COAXIAL_ALARMLOCAL_INFO; ///@brief ???????????? typedef struct tagNET_CFG_STORAGE_HEALTH_ABNORMAL { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ?????????? } NET_CFG_STORAGE_HEALTH_ABNORMAL; ///@brief ????????????? typedef struct tagNET_CFG_STORAGE_GLOBAL { DWORD dwSize; /// ??????? UINT nFileHoldTime; /// ????????????????, ??????????????. 0~31, ???????, 0??????????? BOOL bLogRecordSearch; /// ????????????? BOOL bLogPictureSearch; /// ????????????? BOOL bShareStorageWizard; /// ?????????????????? UINT nDiskCheckTime; /// ??????????????????, ????:??? } NET_CFG_STORAGE_GLOBAL; ///@brief ??????????? typedef enum tagEM_CFG_NAS_DIRECTORY_PROTOCAL { EM_CFG_NAS_DIRECTORY_PROTOCAL_UNKNOWN, /// ?????? EM_CFG_NAS_DIRECTORY_PROTOCAL_NFS, /// NFS EM_CFG_NAS_DIRECTORY_PROTOCAL_FTP, /// FTP EM_CFG_NAS_DIRECTORY_PROTOCAL_SAMBA, /// SAMBA EM_CFG_NAS_DIRECTORY_PROTOCAL_ISCSI, /// ISCSI EM_CFG_NAS_DIRECTORY_PROTOCAL_NONE, /// ??????LV, ?????????????? } EM_CFG_NAS_DIRECTORY_PROTOCAL; ///@brief ??????????? typedef enum tagEM_CFG_NAS_DIRECTORY_CACHE_TYPE { EM_CFG_NAS_DIRECTORY_CACHE_TYPE_UNKNOWN, /// ?????? EM_CFG_NAS_DIRECTORY_CACHE_TYPE_DIRECT, /// ??? EM_CFG_NAS_DIRECTORY_CACHE_TYPE_INDIRECT, /// ??? } EM_CFG_NAS_DIRECTORY_CACHE_TYPE; ///@brief ????????????? typedef struct tagNAS_DIRECTORY_CFG_INFO { DWORD dwSize; /// ??????? char szName[16]; /// ???? ????NASDirectory?????????????name char szGroupName[32]; /// ????????? char szUserName[64][32]; /// ????????? int nUserAuth[64]; /// ???????????????, ?????????, ??????????????:1 ???, 2 ?????, 4 ????? char szMemo[1024]; /// ??? char szValidIP[16]; /// ????IP int nUserNameRealNum; /// ???????????????????????? int nUserAuthRealNum; /// ?????????????????????????? UINT nTotalSpace; /// ??????(????M), ??????, ???????????. ????????????????, ????????????? UINT nBlockSize; /// ?????????????????????, ??????IPSAN???, ???????.???4096???,??????512???????? EM_CFG_NAS_DIRECTORY_PROTOCAL emProtocal; /// ???????? EM_CFG_NAS_DIRECTORY_CACHE_TYPE emCacheType; /// ???????? } NAS_DIRECTORY_CFG_INFO; ///@brief ????????????? NET_EM_CFG_NAS_DIRECTORY (???????????????????) typedef struct tagNET_CFG_NAS_DIRECTORY { DWORD dwSize; /// ??????? char szReserved[4]; /// ?????? int nNeedNASDirectoryInfoNum; /// ????????????????????, ???????????????????????????????????????????????? int nNASCfgRealNum; /// ?????????NAS?????????????? NAS_DIRECTORY_CFG_INFO* pNASDirectoryInfo; /// ?????????????????, ???????????? } NET_CFG_NAS_DIRECTORY; ///@brief ???????? typedef struct tagNET_DISK_FIRMWARE_INFO { char szModule[32]; /// ?????? char szBUS[8]; /// ??????????? char szFirmware[32]; /// ?????? char szReserved[512]; /// ?????? } NET_DISK_FIRMWARE_INFO; ///@brief ???????????? NET_EM_CFG_DISK_FIRMWARE_INFO typedef struct tagNET_CFG_DISK_FIRMWARE_INFO { DWORD dwSize; /// ??????? int nInfoCount; /// ?????? NET_DISK_FIRMWARE_INFO stuInfo[16]; /// ???????? char szDiskBoxFirmware[32]; /// ?????????? } NET_CFG_DISK_FIRMWARE_INFO; ///@brief Lora??????????????? typedef struct tagNET_CFG_LORA_GATEWAY_BASIC { DWORD dwSize; /// ??????? UINT nKeepAliveInterval; /// ?????????? char szGatewayID[32]; /// ????ID UINT nStatusReportInterval; /// ???????????? UINT nPushTimeout; /// ???????????????????? } NET_CFG_LORA_GATEWAY_BASIC; ///@brief NS????? typedef enum tagEM_LORA_GATEWAY_ACCESS_METHOD { EM_LORA_GATEWAY_ACCESS_METHOD_UNKNOWN, /// ??? EM_LORA_GATEWAY_ACCESS_METHOD_SEMTECHUDP, /// SemtechUDP EM_LORA_GATEWAY_ACCESS_METHOD_MQTT, /// MQTT } EM_LORA_GATEWAY_ACCESS_METHOD; ///@brief SemtechUDP??????? typedef struct tagNET_SEMTECHUDP_INFO { char szNSAddress[64]; /// NS??????? UINT nNSUpPort; /// NS??????? UINT nNSDownPort; /// NS??????? BYTE byReserved[1024]; /// ?????? } NET_SEMTECHUDP_INFO; ///@brief MQTT??????? typedef struct tagNET_MQTT_INFO { char szHost[64]; /// NS mqtt??????? char szAccount[256]; /// MQTT-Broker?????? char szPassword[256]; /// MQTT-Broker??????? UINT nPort; /// MQTT-Broker??? BYTE byReserved[1024]; /// ?????? } NET_MQTT_INFO; ///@brief Lora??????????? typedef struct tagNET_CFG_LORA_GATEWAY_ACCESS { DWORD dwSize; /// ??????? EM_LORA_GATEWAY_ACCESS_METHOD emMethod; /// NS????? NET_SEMTECHUDP_INFO stuSemtechUDPInfo; /// SemtechUDP??????? NET_MQTT_INFO stuMQTTInfo; /// MQTT??????? } NET_CFG_LORA_GATEWAY_ACCESS; ///@brief Lora??????? typedef struct tagNET_LORAGATEWAYRADIO_INFO { BOOL bEnable; /// ??? UINT nFreqMin; /// ???????(Hz) UINT nFreqMax; /// ??????(Hz) BYTE byReserved[1024]; /// ?????? } NET_LORAGATEWAYRADIO_INFO; ///@brief Lora??????????? typedef struct tagNET_CFG_LORA_GATEWAY_RADIO { DWORD dwSize; /// ??????? BOOL bEnable; /// ???????????????? NET_LORAGATEWAYRADIO_INFO stuRxInfo; /// Lora??????????? NET_LORAGATEWAYRADIO_INFO stuTxInfo; /// Lora??????????? } NET_CFG_LORA_GATEWAY_RADIO; ///@brief ????????? typedef struct tagNET_CFG_VTS_DEVICE_INFO { char szDeviceName[64]; /// ???????? char szAddress[40]; /// ??????Ip??? char szMachineAddress[64]; /// ??????????????? char szUsername[36]; /// ?????????? char szPassword[36]; /// ??????????? BOOL bEnable; /// ????????? BYTE byReserved[508]; /// ?????? } NET_CFG_VTS_DEVICE_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_VTS_INFO { DWORD dwSize; /// ??????? int nDeviceNum; /// ?????????? NET_CFG_VTS_DEVICE_INFO stuVTSDeviceInfo[8]; /// ????????? } NET_CFG_VTS_INFO; ///@brief ????????? typedef struct tagNET_CFG_VTS_BUILDING_INFO { char szLocalNumber[16]; ///???????? BOOL bEnableSection; ///?????????? BOOL bEnableBuilding; ///????????? BOOL bEnableUnit; ///??????????? int nBuildingNumBit; ///?????? char szReserved[512]; /// ?????? } NET_CFG_VTS_BUILDING_INFO; ///@brief VTS???????? typedef struct tagNET_CFG_VTS_BASIC_INFO { DWORD dwSize; /// ??????? int nRole; /// ???????????0-??? 1-???????Admin 2-??????Manager 3-???User char szDevID[16]; /// VTS???ID??,???3??,????????ID??4??????????????????DevID char szName[64]; /// ????????? NET_CFG_VTS_BUILDING_INFO stuVTSBuildingInfo; /// ????????? int nScene; /// ???????????? 0-??? 1-?????Building 2-???????Industry } NET_CFG_VTS_BASIC_INFO; ///@brief ???????? typedef struct tagNET_ALWAYS_ONTIME_SECTION { DH_TSECT stuTimeSection; /// ???????? UINT nBacklightLevel; /// ???????????????? char szReserved[256]; /// ?????? }NET_ALWAYS_ONTIME_SECTION; ///@brief ?????????????? typedef struct tagNET_CFG_HOSPITAL_BACKLIGHT_PLAN { DWORD dwSize; /// ??????? UINT nDefaultBacklightLevel; /// ?????????,????:[1,10] int nTimeSectionCount; /// ???????????? NET_ALWAYS_ONTIME_SECTION stuAlwaysOnTimeSection[5]; /// ???????? } NET_CFG_HOSPITAL_BACKLIGHT_PLAN; ///@brief ??/??????????????, ??? NET_EM_CFG_HOSPITAL_INTRODUCE typedef struct tagNET_CFG_HOSPITAL_INTRODUCE_INFO { DWORD dwSize; /// ??????? char szHospitalIntroURL[512]; /// ?????????(http???) char szSectionIntroURL[512]; /// ??????????(http???) char szHospitalIntroPic[512]; /// ?????????(????????????) char szSectionIntroPic[512]; /// ??????????(????????????) } NET_CFG_HOSPITAL_INTRODUCE_INFO; ///@brief ?????/???????????????, ??? NET_EM_CFG_HOSPITAL_CHECKLIST typedef struct tagNET_CFG_HOSPITAL_CHECKLIST_INFO { DWORD dwSize; /// ??????? char szCheckInfoDoc[512]; /// ????????????----????????(PDF???????) char szExpenseInfoDoc[512]; /// ?????????????----??????(PDF???????) char szCheckInfoPic[512]; /// ????????????----????????(????????????) char szExpenseInfoPic[512]; /// ?????????????----??????(????????????) } NET_CFG_HOSPITAL_CHECKLIST_INFO; ///@brief ??????????????? typedef struct tagNET_HOSPITAL_VIDEO_LIST { char szSnapURL[512]; /// ??????????? char szVideoURL[512]; /// ?????? char szName[512]; /// ??????? char szDuration[32]; /// ??????, eg:"00:20:00" char szImageURL[512]; /// ????? char szPdfURL[512]; /// pdf??? char szReserved[1024]; /// ??????? }NET_HOSPITAL_VIDEO_LIST; ///@brief ?????????????? typedef struct tagNET_HOSPITAL_MEDIA_VIDEO_INFO { char szGroupName[256]; /// ??????????? int nRetVideoListCount; /// ?????????????? int nVideoListNum; /// ??????? NET_HOSPITAL_VIDEO_LIST *pstuVideoList; /// ???????, ????????????, ?????sizeof(NET_HOSPITAL_VIDEO_LIST)*nVideoListNum char szReserved[256]; /// ??????? }NET_HOSPITAL_MEDIA_VIDEO_INFO; ///@brief ?????????????????????????, ??? NET_EM_CFG_HOSPITAL_MEDIA_INFO typedef struct tagNET_CFG_HOSPITAL_MEDIA_INFO { DWORD dwSize; /// ??????? int nVideoNum; /// ??????????????? NET_HOSPITAL_MEDIA_VIDEO_INFO stuVideoInfo[50]; /// ?????????????? } NET_CFG_HOSPITAL_MEDIA_INFO; ///@brief ???????????????? typedef struct tagNET_CFG_VTH_ALPA_CLOUD { DWORD dwSize; /// ??????? char szParam1[32]; /// ????????1 char szParam2[32]; /// ????????2 int nStatus; /// ??????? 0???????????1??????? BYTE byReserved[128]; /// ?????? }NET_CFG_VTH_ALPA_CLOUD; ///@brief ???????????????? typedef struct tagNET_CFG_VTH_FETCHINFO { DWORD dwSize; /// ??????? char szFtp[32]; /// FTP??? char szUser[32]; /// FTP????? char szPassword[32]; /// FTP???? int nPort; /// FTP??? BOOL bEnable; /// ????????? char szFtpPath[256]; /// ?????FTP??????? BYTE byReserved[512]; /// ?????? }NET_CFG_VTH_FETCHINFO; ///@brief ??????????????? typedef struct tagNET_CFG_CUSTOMER_DEVICEINFO { DWORD dwSize; /// ??????? char szAuthCheckCode[128]; /// ??????????? char szOrgId[32]; /// ??????id char szDeviceId[64]; /// ???id char szRegUrl[256]; /// ???????????? char szInformUrl[256]; /// ?????????? }NET_CFG_CUSTOMER_DEVICEINFO; ///@brief ??????? typedef enum tagEM_ADDRESS_TYPE { EM_ADDRESS_TYPE_UNKNOWN = 0, /// ?????????? EM_ADDRESS_TYPE_PUBLIC, /// ??????? EM_ADDRESS_TYPE_RANDOM, /// ?????? }EM_ADDRESS_TYPE; ///@brief ??????????????? typedef struct tagNET_BLUETOOTH_INFO { char szName[64]; /// ????????????? char szMac[20]; /// ???????Mac??? char szPin[20]; /// Pin??(??????) EM_ADDRESS_TYPE emAddressType; /// ??????? BYTE byReserved[512]; /// ?????? }NET_BLUETOOTH_INFO; ///@brief ???????????? typedef struct tagNET_CFG_BLUE_TOOTH { DWORD dwSize; /// ??????? BOOL bEnable; /// ????????????? char szModulName[32]; /// ???????? int nBlueDeviceNum; /// ???????????????? NET_BLUETOOTH_INFO stuBlueDeviceInfo[16]; /// ??????????????? }NET_CFG_BLUE_TOOTH; ///@brief ????????? typedef enum tagEM_AUDIO_COMPRESS_FORMAT { EM_AUDIO_COMPRESS_UNKNOWN = 0, /// ?????? EM_AUDIO_COMPRESS_PCM, /// PCM EM_AUDIO_COMPRESS_ADPCM, /// ADPCM EM_AUDIO_COMPRESS_G711AM, /// G.711A EM_AUDIO_COMPRESS_G711MU, /// G.711Mu EM_AUDIO_COMPRESS_G726, /// G.726 EM_AUDIO_COMPRESS_G729, /// G.729 EM_AUDIO_COMPRESS_MPEG2, /// MPEG2 EM_AUDIO_COMPRESS_AMR, /// AMR }EM_AUDIO_COMPRESS_FORMAT; ///@brief ?????????? typedef struct tagNET_TALKBACK_INFO { EM_AUDIO_COMPRESS_FORMAT emAudioCompresFormat; /// ????????? UINT nFrequency; /// ?????????? UINT nDepth; /// ??????? UINT nPacketPeriod; /// ??????? int nMode; /// ?????? NET_EM_PACK_TYPE emPackFormat; /// ????? BYTE byReserved[512]; /// ?????? }NET_TALKBACK_INFO; ///@brief ????????????? typedef struct tagNET_CFG_TALKBACK { DWORD dwSize; /// ??????? int nChannelNum; /// ?????????? NET_TALKBACK_INFO stuTalkBackInfo[16]; /// ?????????? }NET_CFG_TALKBACK; ///@brief ???????????? typedef enum tagEM_SYS_MODE { EM_SYS_MODE_UNKNOWN = 0, /// ????? EM_SYS_MODE_FACECOLLECT, /// ???????(?????????) EM_SYS_MODE_JOINCOLLECT, /// ???????? EM_SYS_MODE_VISITORVERIFY, /// ????? EM_SYS_MODE_CITIZENCOMPARE, /// ????????? EM_SYS_MODE_CITIZENIDCHECK, /// ?????????? EM_SYS_MODE_OTHER, /// ???? }EM_SYS_MODE; ///@brief ?????????????????????? typedef struct tagNET_CFG_FORNT_COVER_DISPLAY_TEXT { DWORD dwSize; /// ??????? int nTextLineNum; /// ????????????????????? char szTextLines[10][256]; /// ??????????????????????????????????10?? BYTE byReserved[512]; /// ?????? }NET_CFG_FORNT_COVER_DISPLAY_TEXT; ///@brief ???????????????? typedef struct tagNET_CFG_CITIZENPICTURECOMPARE { DWORD dwSize; /// ??????? int nThreshold; /// ????????? BOOL bUnlockEnable; /// ?????????????? BOOL bFuncEnable; /// ???????????? BOOL bCitizenIDCheck; /// ?????????????? EM_SYS_MODE emSysMode; /// ???????????? }NET_CFG_CITIZENPICTURECOMPARE; ///@brief ??????? typedef enum tagEM_SIGNLIGHT_TYPE { EM_SIGNLIGHT_TYPE_UNKNOWN = 0, /// ??? EM_SIGNLIGHT_TYPE_AUTO, /// ?????????sensor??????? EM_SIGNLIGHT_TYPE_TIMING, /// ????? EM_SIGNLIGHT_TYPE_OFF, /// ???? EM_SIGNLIGHT_TYPE_ON, /// ?????? }EM_SIGNLIGHT_TYPE; ///@brief ???????? typedef struct tagNET_SIGNLIGHT_INFO { EM_SIGNLIGHT_TYPE emSignLightType; /// ??????? int nTimeSectionsNum; /// ???????????? DH_TSECT stuTimeSection[6]; /// ??????? BYTE bReserved[64]; /// ?????? }NET_VIDEOTALK_SIGNLIGHT_INFO; ///@brief ??????????????? typedef struct tagNET_CFG_SIGNLIGHT { DWORD dwSize; /// ??????? int nSignLightNum; /// ???????? NET_VIDEOTALK_SIGNLIGHT_INFO stuSignLightInfo[16]; /// ???????? }NET_CFG_VIDEOTALK_SIGNLIGHT; ///@brief ??????? typedef enum tagEM_STARTCHECK_MODE { EM_STARTCHECK_MODE_UNKNOWN = 0, /// ??? EM_STARTCHECK_MODE_FACE, /// ??????? EM_STARTCHECK_MODE_CARD, /// ??????? }EM_STARTCHECK_MODE; ///@brief ????????? typedef struct tagNET_HAND_INFO { UINT nHighValue; /// k??????? UINT nLowValue; /// k??????? BYTE bReserved[64]; /// ?????? }NET_HAND_INFO; ///@brief ?????????? typedef struct tagNET_LEFT_FOOT_INFO { UINT nHighValue; /// k??????? UINT nLowValue; /// k??????? BYTE bReserved[64]; /// ?????? }NET_LEFT_FOOT_INFO; ///@brief ?????????? typedef struct tagNET_RIGHT_FOOT_INFO { UINT nHighValue; /// k??????? UINT nLowValue; /// k??????? BYTE bReserved[64]; /// ?????? }NET_RIGHT_FOOT_INFO; ///@brief ESD???????????????????? typedef struct tagNET_CFG_ESD_COMMSETTING { DWORD dwSize; /// ??????? EM_STARTCHECK_MODE emStartCheckMode; /// ??????? NET_HAND_INFO stuHand; /// ????????? NET_LEFT_FOOT_INFO stuLeftFoot; /// ?????????? NET_RIGHT_FOOT_INFO stuRightFoot; /// ?????????? }NET_CFG_ESD_COMMSETTING; ///@brief ???????? typedef enum tagEM_MAIN_PAGE_STATE { EM_MAIN_PAGE_STATE_UNKNOWN = 0, /// ??? EM_MAIN_PAGE_STATE_NORMAL, /// ???? EM_MAIN_PAGE_STATE_STANDBY, /// ???? EM_MAIN_PAGE_STATE_CHANNELCLOSED, /// ?????? EM_MAIN_PAGE_STATE_FORBIDENTER, /// ?????? EM_MAIN_PAGE_STATE_URGENTEVACUATE /// ??????? }EM_MAIN_PAGE_STATE; ///@brief ?????????? typedef struct tagNET_CFG_BSCCUSTOM { DWORD dwSize; /// ??????? UINT nSamePersonInterval; /// ??????.??n????,??????????????????.(0???????????) EM_MAIN_PAGE_STATE emMainPageState; /// ?????????????????? char szReserved[4]; /// ?????? }NET_CFG_BSCCUSTOM; ///@brief ???????????????????? typedef struct tagNET_CFG_ACCESS_FACE_RECOGNITION { DWORD dwSize; /// ??????? UINT nFaceRecogInterval; /// ?????,??????s,??????[1,60] BOOL bSecondConfirm; /// ???????????????????? UINT nSecondConfirmTimeout; /// ????????????????????????????s ??????[1,60] BOOL bIDAndFaceMode; /// ??????ID+???????? BOOL bFaceCollectionEnable; /// ?????????????????????????????????3s(false??????)?????? }NET_CFG_ACCESS_FACE_RECOGNITION; ///@brief ??????? typedef struct tagNET_CUSTOM_WEATHER_INFO { char szDate[20]; /// ??? char byReserved[4]; /// ?????? char szWeather[32]; /// ???? char szDayWeather[32]; /// ???????? char szNightWeather[32]; /// ???????? double dbTemperature; /// ??????????????? double dbMinTemperature; /// ??????????????? double dbMaxTemperature; /// ??????????????? char szWindForce[32]; /// ???? char szDayWindForce[32]; /// ??????? char szNightWindForce[32]; /// ??????? char szWindDirection[32]; /// ???? char szDayWindDirection[32]; /// ??????? char szNightWindDirection[32]; /// ??????? char szWeatherImage[512]; /// ??????? char szReserved[128]; /// ??????? }NET_CUSTOM_WEATHER_INFO; ///@brief ?????????????????????? typedef struct tagNET_CFG_CUSTOM_WEATHER_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ?????????? UINT nWeatherDataNums; /// ???????????? NET_CUSTOM_WEATHER_INFO stuWeatherData[32]; /// ??????? }NET_CFG_CUSTOM_WEATHER_INFO; ///@brief ??Logo???? typedef struct tagNET_CFG_HOSPITAL_LOGO_INFO { DWORD dwSize; /// ??????? char szBitmap[10240]; /// ????Logo??, base64????, ??????????10K char szName[256]; /// ?????? }NET_CFG_HOSPITAL_LOGO_INFO; ///@brief ?????????? typedef struct tagNET_HOME_PAGE { BOOL bButtonMainMenuVisible; /// ????????????? BOOL bButtonPasswordVisible; /// ?????????? BOOL bButtonQRCodeVisible; /// ??????????? BOOL bButtonCallVisible; /// ??????????? UINT nButtonCallType; /// ??????????????, 1?????????? 2???????????? 3????????????? 4?????????? }NET_HOME_PAGE; ///@brief ????????????????????? typedef struct tagNET_ADVERTISE_DISPLAY { UINT nAdvertiseVideoDisplay; /// ????????????????????????? 0????????????1:????????? UINT nAdvertisePicDisplay; /// ???????????????????????? 0????????????1:????????? char szReserved[128]; /// ??????? }NET_ADVERTISE_DISPLAY; ///@brief ???????????? typedef struct tagNET_ADVERTISE_SPLITLIST { UINT nAdvertiseSplitID; /// ??????????0????????1???????????????????????2??????????????????????3.??????????????????? char szAdvertiseSplitName[256]; /// ??????????????????web??????????????? char szReserved[128]; /// ??????? }NET_ADVERTISE_SPLITLIST; ///@brief ????????????? typedef struct tagNET_CFG_ACCESS_DISPLAY_INFO { DWORD dwSize; /// ??????? NET_HOME_PAGE stuHomePage; /// ?????????? UINT nAdvertiseSplitType; /// ??????????0???????? 1??????????????????????? 2?????????????????????? 3.??????????????????? UINT nAccessDisplayObject; /// ??????????0???????????? 2???????????????? NET_ADVERTISE_DISPLAY stuAdvertiseDisplay; /// ????????????????????? NET_ADVERTISE_SPLITLIST stuAdvertiseSplitList[32]; /// ?????????????????32?? int nAdvertiseSplitListNum; /// ????????????????? }NET_CFG_ACCESS_DISPLAY_INFO; ///@brief ????????????? typedef struct tagNET_CFG_ACCESS_CONFIG_INFO { DWORD dwSize; /// ??????? UINT nPhotoGraph; /// ?????????????, ?????????????????????????????????. 0:?????, 1:??? UINT nFingerprintPic; /// ???????????????????????????, 0:?????, 1:??? UINT nPrivacyMask; /// ?????????????????????????,????????????????????. 0:?????, 1:?????(???????????-30), 2:?????(???????????-20), 3:?????(???????????-10) }NET_CFG_ACCESS_CONFIG_INFO; ///@brief ???????? typedef struct tagNET_CFG_SOUND { DWORD dwSize; /// ??????? char szAlarmSoundPath[256]; /// ?????????????????? UINT nAlarmSoundDuration; /// ???????????,???????? } NET_CFG_SOUND; ///@brief ?????????????? typedef struct tagNET_VOICE_PLAY_PLAN_INFO { BOOL bEnable; /// ????????????????????? int nPlayTimes; /// ???????????,???????? char szVoicePath[128]; /// ????????????,???????? NET_CFG_TIME_SCHEDULE stuTimeSchedule; /// ???????? char szReserved[512]; /// ??????? } NET_VOICE_PLAY_PLAN_INFO; ///@brief ?????????????? (NET_EM_CFG_VOICE_PLAY_PLAN) typedef struct tagNET_CFG_VOICE_PLAY_PLAN_INFO { DWORD dwSize; /// ??????? unsigned int nVoicePlayPlanCount; /// ???????????????? NET_VOICE_PLAY_PLAN_INFO stuVoicePlayPlan[32]; /// ?????????????????????????????????????????????????????????? } NET_CFG_VOICE_PLAY_PLAN; ///@brief ?????????????? typedef struct tagSMART_SOUND_DETECT_INFO { BOOL bEnable; /// ?????????????? int nAudioTypeValidNum; /// ??????????????? EM_AUDIO_MUTATION_ALARM_TYPE emSoundTypes[32]; /// ??????????? UINT nSensitive; /// ?????????, ????[1,10] UINT nThreshold; /// ??????, ????[1,100] NET_CFG_ALARM_MSG_HANDLE stuEventHandler; /// ???????????? char szReserved[512]; /// ??????? } SMART_SOUND_DETECT_INFO; ///@brief ??????????? (NET_EM_CFG_SMART_SOUND_DETECT) typedef struct tagNET_CFG_SMART_SOUND_DETECT_INFO { DWORD dwSize; /// ??????? UINT nSoundDetectChannelNum; /// ????????? SMART_SOUND_DETECT_INFO* pSmartSoundDetectInfo; /// ??????????????????, ????????????????????????, ??????????????? } NET_CFG_SMART_SOUND_DETECT; ///@brief ?????????????? typedef struct tagBURNING_CHECK_INFO { BOOL bEnable; /// ?????????????? int nSensitivity; /// ??????????????[1,100] int nGrayThreshold; /// ?????????????[1,100] NET_CFG_ALARM_MSG_HANDLE stuEventHandler; /// ???????????? char szReserved[512]; /// ??????? }BURNING_CHECK_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_BURNING_CHECK_INFO { DWORD dwSize; /// ??????????????? int nChannelNum; /// ????????? BURNING_CHECK_INFO *pstuBurningCheckInfo; /// ?????????????????????????????????????????????????????????nChannelNum * sizeof(BURNING_CHECK_INFO) int nReturnChannelNum; /// ???????????? }NET_CFG_BURNING_CHECK_INFO; ///@brief ?????????? typedef struct tagNET_POINT_PAIR_INFO { NET_POINT_EX stuVisalPoint; /// ???????????????? NET_POINT_EX stuThermPoint; /// ???????????????? char szReserved[64]; /// ??????? }NET_POINT_PAIR_INFO; ///@brief ?????????? typedef struct tagNET_FUSION_POINTS_INFO { int nPresetId; /// ????ID UINT nPointPairCount; /// ????????????? NET_POINT_PAIR_INFO stuPointPair[16]; /// ?????????? char szReserved[256]; /// ??????? }NET_FUSION_POINTS_INFO; ///@brief ???????????????? typedef struct tagNET_CFG_CALIBRATE_POINTS_INFO { DWORD dwSize; /// ??????????????? BOOL bEnable; /// ??????? int nMode; /// ????, 0:???, 1:??????, 2:??????? int nHorizon; /// ????????????? int nVertical; /// ?????????????? UINT nFusionPointsCount; /// ????????????? NET_FUSION_POINTS_INFO stuFusionPoints[16]; /// ?????????? NET_POINT_EX stuVisPoint; /// ???, ??????????????????, ??????????????????????????????????????????????????????? NET_POINT_EX stuThmPoint; /// ???, ????????, ??????????????????????????????????????????????????????? int nVisZoom; /// ??????????????? *10 }NET_CFG_CALIBRATE_POINTS_INFO; ///@brief ??????? typedef enum tagEM_DISPLAY_MODE { EM_DISPLAY_MODE_UNKNOWN, /// ??? EM_DISPLAY_MODE_ROLL, /// ???? EM_DISPLAY_MODE_INTERCEPT, /// ??? } EM_DISPLAY_MODE; ///@brief ?????? typedef enum tagEM_DISPLAY_COLOR { EM_DISPLAY_COLOR_UNKNOWN, /// ??? EM_DISPLAY_COLOR_RED, /// ?? EM_DISPLAY_COLOR_GREEN, /// ?? EM_DISPLAY_COLOR_YELLOW, /// ?? } EM_DISPLAY_COLOR; ///@brief ???????? typedef struct tagNET_LOGIC_SCREEN { NET_RECT stuRegion; /// ?????????, ???????????? EM_DISPLAY_MODE emDisplayMode; /// ??????? EM_DISPLAY_COLOR emDisplayColor; /// ?????? BYTE byReserved[512]; /// ?????? } NET_LOGIC_SCREEN; ///@brief ???????????????? typedef enum tagEM_ROLL_SPEED_LEVEL { EM_ROLL_SPEED_LEVEL_UNKNOWN, /// ??? EM_ROLL_SPEED_LEVEL_SLOW, /// ?? EM_ROLL_SPEED_LEVEL_SLOWER, /// ???? EM_ROLL_SPEED_LEVEL_MEDIUM, /// ???? EM_ROLL_SPEED_LEVEL_FASTER, /// ??? EM_ROLL_SPEED_LEVEL_FAST /// ?? } EM_ROLL_SPEED_LEVEL; ///@brief 485????????????? typedef struct tagNET_CFG_LATTICE_SCREEN_CONFIG { UINT nAddress; /// ?????????????, ????[1,31] EM_ROLL_SPEED_LEVEL emRollSpeedLevel; /// ???????????????? int nLogicScreenNum; /// ????????? NET_LOGIC_SCREEN stuLogicScreens[8]; /// ????????, ???????????????????????? int nOutPutVoiceVolume; /// ????????????????, ??????[0, 100] int nOutPutVoiceSpeed; /// ???????????? ??????[0, 100] BYTE byReserved[1024]; /// ?????? } NET_CFG_LATTICE_SCREEN_CONFIG; ///@brief ??????????? typedef enum tagEM_DHRS_DEVICE_TYPE { EM_DHRS_DEVICE_TYPE_UNKNOWN, /// ??? EM_DHRS_DEVICE_TYPE_STEADYLIGHT, /// ?????? EM_DHRS_DEVICE_TYPE_STROBELIGHT, /// ???????485?????????? EM_DHRS_DEVICE_TYPE_POWERMODULE, /// ?????? EM_DHRS_DEVICE_TYPE_LATTICESCREEN, /// ?????? EM_DHRS_DEVICE_TYPE_INDICATORLIGHT, /// ???? EM_DHRS_DEVICE_TYPE_RAINBRUSH, /// ????????? EM_DHRS_DEVICE_TYPE_FLASHLAMP, /// ?????? EM_DHRS_DEVICE_TYPE_RFID, /// ?????? EM_DHRS_DEVICE_TYPE_COMMON, /// ???485 } EM_DHRS_DEVICE_TYPE; ///@brief ?????????? typedef struct tagNET_CFG_DHRS_DEVICE_INFO { BOOL bEnable; /// ?????????????? EM_DHRS_DEVICE_TYPE emType; /// ??????????? NET_CFG_LATTICE_SCREEN_CONFIG stuLatticeScreenConfig; /// 485?????????????, ??emType?EM_DHRS_DEVICE_TYPE_LATTICESCREEN ???? BYTE byReserved[4096]; /// } NET_CFG_DHRS_DEVICE_INFO; ///@brief 485?????????????????? typedef struct tagNET_CFG_DHRS_INFO { int nDeviceNum; /// ??????????? NET_CFG_DHRS_DEVICE_INFO stuDHRSDeviceInfo[32]; /// ?????????? } NET_CFG_DHRS_INFO; ///@brief 485??????????????? typedef struct tagNET_CFG_DHRS { DWORD dwSize; /// ??????? int nDHRSNum; /// ??????? NET_CFG_DHRS_INFO stuDHRSInfo[32]; /// 485??????????????????,???????????????????? } NET_CFG_DHRS; ///@brief ???????????????(NET_EM_CFG_ADVERT_PLAY_RULE) typedef struct tagNET_CFG_ADVERT_PLAY_RULE { DWORD dwSize; /// ??????? NET_CFG_TIME_SCHEDULE stPlayTimeSchedule; /// ?????????? NET_CFG_TIME_SCHEDULE stSilentTimeSchedule; /// ?????????????? } NET_CFG_ADVERT_PLAY_RULE; ///@brief ??????????? typedef enum tagEM_XRAY_UPLOAD_PLATFORM_CURRENT_TYPE { EM_XRAY_UPLOAD_PLATFORM_CURRENT_TYPE_UNKNOWN = -1, /// ??? EM_XRAY_UPLOAD_PLATFORM_CURRENT_TYPE_BY_DANGER_LEVEL, /// ???????? EM_XRAY_UPLOAD_PLATFORM_CURRENT_TYPE_BY_DANGER_GROUP, /// ????????? } EM_XRAY_UPLOAD_PLATFORM_CURRENT_TYPE; ///@brief ????????????? typedef struct tagNET_XRAY_UPLOAD_PLATFORM_BY_DANGER_LEVEL { BOOL bHigh; /// ???? BOOL bWarning; /// ??? BOOL bSafety; /// ??? BOOL bUnknown; /// ?????? BYTE byReserved[512]; /// ?????? } NET_XRAY_UPLOAD_PLATFORM_BY_DANGER_LEVEL; ///@brief X?????? typedef struct tagNET_XRAY_OBJECT_INFO { EM_INSIDE_OBJECT_TYPE emType; /// ???????? BOOL bEnable; /// ????????? UINT nDetectThreshold; /// ????????? 0~100 char szType[32]; /// ??????????????????????????? char szReserved[224]; /// ??? }NET_XRAY_OBJECT_INFO; ///@brief ?????????????? typedef struct tagNET_XRAY_UPLOAD_PLATFORM_BY_DANGER_GROUP { EM_INSIDE_OBJECT_TYPE emGroupType; /// ???????? BOOL bGroupEnable; /// ?????????? NET_XRAY_OBJECT_INFO stuObjects[64]; /// ???? int nObjectsNum; /// ??????? char szGroupType[32]; /// ???????????? BYTE byReserved[480]; /// ?????? } NET_XRAY_UPLOAD_PLATFORM_BY_DANGER_GROUP; ///@brief ??????????????????????????(NET_EM_CFG_XRAY_UPLOAD_PLATFORM) typedef struct tagNET_CFG_XRAY_UPLOAD_PLATFORM { DWORD dwSize; /// ??????? EM_XRAY_UPLOAD_PLATFORM_CURRENT_TYPE emCurrentType; /// ??????????? NET_XRAY_UPLOAD_PLATFORM_BY_DANGER_LEVEL stuByDangerLevel; /// ????????????? NET_XRAY_UPLOAD_PLATFORM_BY_DANGER_GROUP stuByDangerGroup[64]; /// ?????????????? int nByDangerGroupNum; /// ????????????????????? } NET_CFG_XRAY_UPLOAD_PLATFORM; ///@brief X????????????????? typedef struct tagNET_XRAY_OVERLAY_INFO { UINT nStyle; /// ??????: 0-????????, 1-???????, 2-??????? UINT nxBackground; /// ??????????: 0-?????, 1-??? UINT nxConfidence; /// ????????: 0-?????, 1-??? UINT nxPackageBorder; /// ?????????: 0-?????, 1-??? UINT nxTrackEnable; /// ?????????: 0-?????, 1-??? UINT nxTrackName; /// ??????????: 0-?????, 1-??? UINT nObjectCenterPointRadius; /// ?????????, ???????? UINT nObjectBorderWidth; /// ????????, ???????? UINT nFontSize; /// ??????? char szReserved[256]; /// ?????? }NET_XRAY_OVERLAY_INFO; ///@brief X??????????????(NET_EM_CFG_XRAY_OVERLAY) typedef struct tagNET_CFG_XRAY_OVERLAY_INFO { DWORD dwSize; /// ??????? int nXRayOverlayNum; /// X?????????????????????, ?????8 NET_XRAY_OVERLAY_INFO stuXRayOverlay[8]; /// X?????????????? } NET_CFG_XRAY_OVERLAY_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_attachAIOFileProc(LLONG lLoginID, const NET_IN_ATTACH_AIO* pstInParam, NET_OUT_ATTACH_AIO *pstOutParam, int nWaitTime); ///@brief ??????????,lAttachHandle??CLIENT_attachAIOFileProc????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_detachAIOFileproc(LLONG lAttachHandle); ///@brief ????NVR??? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_SetAIOAdvert(LLONG lLoginID, const NET_IN_SET_ADVERT* pstInParam, NET_OUT_SET_ADVERT *pstOutParam, int nWaitTime); ///@brief NVR???? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AIOScreen(LLONG lLoginID, const NET_IN_AIO_SCREEN* pstInParam, NET_OUT_AIO_SCREEN *pstOutParam, int nWaitTime); ///@brief ????????????????????,lUploadFileHandle ? CLIENT_StartUploadAIOFile ???????, nError??????????? typedef void (CALLBACK *fUploadAIOFileCallBack) (LLONG lUploadFileHandle, int nTotalSize, int nSendSize, LDWORD dwUser, int nError); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] cbUploadFile ??????? ///@param[in] dwUser ??????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartUploadAIOFile(LLONG lLoginID, const NET_IN_UPLOAD_AIO_FILE* pInParam, NET_OUT_UPLOAD_AIO_FILE* pOutParam, fUploadAIOFileCallBack cbUploadFile, LDWORD dwUser); ///@brief ?????????? ///@param[in] lUploadFileID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopUploadAIOFile(LLONG lUploadFileID); ///@brief ??????adb???????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ControlAndroidAdb(LLONG lLoginID, const NET_IN_CONTROL_ANDROID_ADB* pstInParam, NET_OUT_CONTROL_ANDROID_ADB *pstOutParam, int nWaitTime); /* ???????ChannelTitle???????????(NET_EM_CFG_ENCODE_CHANNELTITLE)???????????????????????(????)??????????? ????????????????(NET_EM_CFG_ENCODE_CHANNELTITLE)??????????(void *)reserve????????????????????????(????)??????????? (void *)reserve?????BOOL?????????? ??????TRUE?????? ??????????????(??????????????????????????????????) ??????FALSE?????? ????????????(???????????)???????????????????????????????? ????reserve???(?NULL)??????FALSE??????????????????? */ ///@brief ??????????(szOutBuffer???????????????, ???????????????) ///@param[in] lLoginID ?????? ///@param[in] emCfgOpType ???????????? ///@param[in] nChannelID ????? ///@param[out] szOutBuffer ??????????, ??????????????????? ///@param[in] dwOutBufferSize ?????????????? ///@param[in] waittime ????????, ???????? ///@param[in] reserve ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetConfig(LLONG lLoginID, NET_EM_CFG_OPERATE_TYPE emCfgOpType, int nChannelID, void* szOutBuffer, DWORD dwOutBufferSize, int waittime=NET_INTERFACE_DEFAULT_TIMEOUT, void *reserve = NULL); ///@brief ???????????(szInBuffer???????????????, ???????????????) ///@param[in] lLoginID ?????? ///@param[in] emCfgOpType ???????????? ///@param[in] nChannelID ????? ///@param[in] szInBuffer ??????????, ??????????????????? ///@param[in] dwInBufferSize ?????????????? ///@param[in] waittime ????????, ???????? ///@param[out] restart ??????? ///@param[in] reserve ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetConfig(LLONG lLoginID, NET_EM_CFG_OPERATE_TYPE emCfgOpType, int nChannelID, void* szInBuffer, DWORD dwInBufferSize, int waittime=NET_INTERFACE_DEFAULT_TIMEOUT, int *restart = NULL, void *reserve = NULL); ///@brief ????????????????????????? typedef struct tagNET_IN_BUFFER_POLICY { DWORD dwSize; DH_RealPlayType emRealPlayType; /// ?????????????????????????????????????????? UINT nPolicy; /// ????????0????1??????2?? }NET_IN_BUFFER_POLICY; ///@brief ????????????,pInBuf??????????????? ///@param[in] lPlayHandle ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRealplayBufferPolicy(LLONG lPlayHandle,NET_IN_BUFFER_POLICY* pInBuf,int nWaitTime); ////////////////////////////////////////////////////////////////////// ///@brief TestOSD ???????? typedef enum tagEM_TESTOSD_OPERATE_TYPE { EM_TESTOSD_ADD_TEXT, /// ??????????? ??? NET_IN_TESTOSD_ADD_TEXT ?? NET_OUT_TESTOSD_ADD_TEXT EM_TESTOSD_GET_TEXT, /// ?????????? ??? NET_IN_TESTOSD_GET_TEXT ?? NET_OUT_TESTOSD_GET_TEXT EM_TESTOSD_MODIFY_TEXT, /// ?????????? ??? NET_IN_TESTOSD_MODIFY_TEXT ?? NET_OUT_TESTOSD_MODIFY_TEXT EM_TESTOSD_DELETE_TEXT, /// ?????????? ??? NET_IN_TESTOSD_DELETE_TEXT ?? NET_OUT_TESTOSD_DELETE_TEXT EM_TESTOSD_ADD_PICTURE, /// ????????? ??? NET_IN_TESTOSD_ADD_PIC ?? NET_OUT_TESTOSD_ADD_PIC EM_TESTOSD_GET_PICTURE, /// ???????? ??? NET_IN_TESTOSD_GET_PIC ?? NET_OUT_TESTOSD_GET_PIC EM_TESTOSD_DELETE_PICTURE, /// ???????? ??? NET_IN_TESTOSD_DELETE_PIC ?? NET_OUT_TESTOSD_DELETE_PIC }EM_TESTOSD_OPERATE_TYPE; ///@brief ?????? typedef struct tagNET_TEXT_OSD { char szText[DH_COMMON_STRING_256]; /// ??????? DH_POINT stuPoint; /// ??????? NET_COLOR_RGBA stuTextColor; /// ?????? int nFontSize; /// ?????????? 0-???????? 1-?????? 2-??????? BYTE byReserved[44]; /// ??????? }NET_TEXT_OSD; ///@brief ?????? typedef enum tagEM_OSDPIC_TYPE { EM_OSDPIC_UNKNOWN, /// ?????? EM_OSDPIC_HEADONFACE, /// ?????? EM_OSDPIC_SIDEFACE, /// ?????? EM_OSDPIC_MAP, /// ??? }EM_OSDPIC_TYPE; ///@brief ????? typedef struct tagNET_PICTURE_OSD { EM_OSDPIC_TYPE emPictureType; /// ?????? NET_RECT stuPictureLocation; /// ?????? BYTE byReserved[48]; /// ??????? }NET_PICTURE_OSD; ///@brief ?????????????? typedef struct tagNET_IN_TESTOSD_ADD_TEXT { DWORD dwSize; int nMaxCount; /// ??????????????? NET_TEXT_OSD *pstuTextInfo; /// ???????, ???????, ????? nMaxCount }NET_IN_TESTOSD_ADD_TEXT; ///@brief ??????????????? typedef struct tagNET_OUT_TESTOSD_ADD_TEXT { DWORD dwSize; int nReturnCount; /// ???????????? int *pnTextID; /// ????????????ID??, ???????, ????? nMaxCount int *pnReturnCode; /// ??????????, 0-??? 1-???, ???????, ????? nMaxCount }NET_OUT_TESTOSD_ADD_TEXT; ///@brief ????????????? typedef struct tagNET_IN_TESTOSD_GET_TEXT { DWORD dwSize; int nMaxCount; /// ??????????????? int *pnTextID; /// ????????????ID??, ???????, ????? nMaxCount }NET_IN_TESTOSD_GET_TEXT; ///@brief ?????????????? typedef struct tagNET_OUT_TESTOSD_GET_TEXT { DWORD dwSize; int nReturnCount; /// ???????????? NET_TEXT_OSD *pstuTextInfo; /// ???????, ???????, ????? nMaxCount }NET_OUT_TESTOSD_GET_TEXT; ///@brief ????????????? typedef struct tagNET_IN_TESTOSD_MODIFY_TEXT { DWORD dwSize; int nMaxCount; /// ??????????????? int *pnTextID; /// ????????????ID??, ???????, ????? nMaxCount NET_TEXT_OSD *pstuTextInfo; /// ???????, ???????, ????? nMaxCount }NET_IN_TESTOSD_MODIFY_TEXT; ///@brief ?????????????? typedef struct tagNET_OUT_TESTOSD_MODIFY_TEXT { DWORD dwSize; int nReturnCount; /// ???????????? int *pnReturnCode; /// ??????????, 0-??? 1-??? ???????, ??????????nValidCount }NET_OUT_TESTOSD_MODIFY_TEXT; ///@brief ????????????? typedef struct tagNET_IN_TESTOSD_DELETE_TEXT { DWORD dwSize; int nMaxCount; /// ??????????????? int *pnTextID; /// ????????????ID?? }NET_IN_TESTOSD_DELETE_TEXT; ///@brief ?????????????? typedef struct tagNET_OUT_TESTOSD_DELETE_TEXT { DWORD dwSize; int nReturnCount; /// ???????????? int *pnReturnCode; /// ??????????, 0-??? 1-??? }NET_OUT_TESTOSD_DELETE_TEXT; ///@brief ????????? typedef struct tagNET_IN_TESTOSD_ADD_PIC { DWORD dwSize; int nMaxCount; /// ??????????????? char (*pszFilePath)[MAX_PATH]; /// ????????????? NET_PICTURE_OSD *pstuPicture; }NET_IN_TESTOSD_ADD_PIC; ///@brief ?????????? typedef struct tagNET_OUT_TESTOSD_ADD_PIC { DWORD dwSize; int nReturnCount; /// ???????????? int *pnReturnCode; /// ??????????, 0-??? 1-??? }NET_OUT_TESTOSD_ADD_PIC; ///@brief ???????? typedef struct tagNET_IN_TESTOSD_GET_PIC { DWORD dwSize; int nCount; /// ????????? }NET_IN_TESTOSD_GET_PIC; ///@brief ????????? typedef struct tagNET_OUT_TESTOSD_GET_PIC { DWORD dwSize; int nReturnCount; /// ???????????? char (*pszFilePath)[MAX_PATH]; /// ????????????? NET_PICTURE_OSD *pstuPicture; }NET_OUT_TESTOSD_GET_PIC; ///@brief ???????? typedef struct tagNET_IN_TESTOSD_DELETE_PIC { DWORD dwSize; int nMaxCount; /// ??????????????? char (*pszFilePath)[MAX_PATH]; /// ????????????? }NET_IN_TESTOSD_DELETE_PIC; ///@brief ????? ???? typedef struct tagNET_OUT_TESTOSD_DELETE_PIC { DWORD dwSize; int nReturnCount; /// ???????????? int *pnReturnCode; /// ??????????, 0-??? 1-??? }NET_OUT_TESTOSD_DELETE_PIC; ///@brief ???????????????? typedef struct tagNET_IN_GET_ALARM_EVENT_LOG { DWORD dwSize; UINT nEventID; /// ???ID }NET_IN_GET_ALARM_EVENT_LOG; ///@brief ????????????????? typedef struct tagNET_OUT_GET_ALARM_EVENT_LOG { DWORD dwSize; DWORD dwAlarmType; /// ??????????? BYTE *byAlarmData; /// ?????????????????????,????????2*1024??? int nMaxDataLen; /// ??????????????????? int nRetDataLen; /// ?????????????? }NET_OUT_GET_ALARM_EVENT_LOG; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEventLog(LLONG lLoginID, const NET_IN_GET_ALARM_EVENT_LOG *pstuInParam, NET_OUT_GET_ALARM_EVENT_LOG *pstuOutParam, int nWaitTime); ///@brief TestOSD??????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ????????????????????????????emOperateType???? ///@param[out] pOutParam ??????????, ????????????????????????????emOperateType???? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateTestOSD(LLONG lLoginID, EM_TESTOSD_OPERATE_TYPE emOperateType, void *pInParam, void *pOutParam, int nWaitTime); ///@brief ?????????????????????????? typedef struct tagNET_IN_COURSECOMPOSITE_LOCK_CONTROL { DWORD dwSize; BOOL bLock; /// TRUE??????FALSE ???? int nClassRoomID; /// ????ID?? int nLogicChannel; /// ???????? }NET_IN_COURSECOMPOSITE_LOCK_CONTROL; ///@brief ??????????????????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_LOCK_CONTROL { DWORD dwSize; }NET_OUT_COURSECOMPOSITE_LOCK_CONTROL; ///@brief ???????????? typedef struct tagNET_IN_COURSECOMPOSITE_GET_LOCKINFO { DWORD dwSize; int nClassRoomID; /// ????ID?? int nLogicChannel; /// ???????? }NET_IN_COURSECOMPOSITE_GET_LOCKINFO; ///@brief ????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_GET_LOCKINFO { DWORD dwSize; BOOL bState; /// ?????? }NET_OUT_COURSECOMPOSITE_GET_LOCKINFO; ///@brief CLIENT_GetDevCaps NET_GET_ADVERTIMENT_CAPS ??? typedef struct tagNET_IN_GET_ADVERTIMENT_CAPS { DWORD dwSize; ///??????? }NET_IN_GET_ADVERTIMENT_CAPS; ///@brief ??????????????????? typedef enum tagEM_FILE_STORAGE_TYPE { EM_FILE_STORAGE_TYPE_UNKNOWN, /// ??? EM_FILE_STORAGE_TYPE_LOCAL, /// ??????????????????????????????????????FileManager.uploadFile????????????) EM_FILE_STORAGE_TYPE_FTP, /// ???????????FTP????????????????FTP??????????????????????????????? EM_FILE_STORAGE_TYPE_HTTP, /// ?????????????http??URL????????? }EM_FILE_STORAGE_TYPE; ///@brief ????????? typedef struct tagNET_LOCAL_STORAGE_INFO { char szPath[256]; /// ??????????????????????????????????????????????? BYTE byReserved[128]; /// ?????? }NET_LOCAL_STORAGE_INFO; ///@brief ???????????????? typedef enum tagEM_ADVERTISEMENT_STREAM_TYPE { EM_ADVERTISEMENT_STREAM_TYPE_UNKNOWN, /// ??? EM_ADVERTISEMENT_STREAM_TYPE_H264, /// H264???? EM_ADVERTISEMENT_STREAM_TYPE_H264_PRIVATE, /// H264?????dav??? EM_ADVERTISEMENT_STREAM_TYPE_H265, /// H265???? EM_ADVERTISEMENT_STREAM_TYPE_H265_PRIVATE, /// H265?????dav??? EM_ADVERTISEMENT_STREAM_TYPE_MPEG4, /// MPEG4???? EM_ADVERTISEMENT_STREAM_TYPE_MPEG4_PRIVATE, /// MPEG4?????dav??? }EM_ADVERTISEMENT_STREAM_TYPE; ///@brief ???????????????????????????????? typedef struct tagNET_ADVERTISEMENT_VIDEO { BOOL bSupport; /// ??????????????? int nStreamTypeNum; /// ?????????????????? EM_ADVERTISEMENT_STREAM_TYPE emAdvertiseMentType[32]; /// ???????????????? UINT nMinWidth; /// ???????????????? UINT nMaxWidth; /// ??????????????? UINT nMinHeight; /// ??????????????? UINT nMaxHeight; /// ?????????????? BYTE byReserved[128]; /// ?????? }NET_ADVERTISEMENT_VIDEO; ///@brief ??????? typedef enum tagEM_DEPTH_NUM { EM_DEPTH_NUM_UNKNOWN, /// ??? EM_DEPTH_NUM_EIGHT = 8, /// 8 EM_DEPTH_NUM_SIXTEEN = 16, /// 16 EM_DEPTH_NUM_TWENTYFOUR = 24, /// 24 }EM_DEPTH_NUM; ///@brief ???????????????? typedef struct tagNET_FORMATS_INFO { EM_SPEAK_AUDIO_TYPE emCompressionType; /// ????????? UINT nFrequency; /// ???????????????????8000-192000 EM_DEPTH_NUM emDepthNum; /// ??????? int nPacketPeriod; /// ????????????ms????????[10, 250] BYTE byReserved[128]; /// ?????? }NET_FORMATS_INFO; ///@brief ??????????????????????????? typedef struct tagNET_AUDIO_INFO { BOOL bSupport; /// ??????????????? int nFormatNum; /// ???????????????? NET_FORMATS_INFO stuFormatInfo[64]; /// ???????????????????????????????64??????????????????????????????? }NET_AUDIO_INFO; ///@brief ?????????????????????? typedef enum tagEM_ADVETTISEMENT_PICTURE_TYPE { EM_PICTURE_ADVETTISEMENT_TYPE_UNKNOWN, /// ??? EM_PICTURE_ADVETTISEMENT_TYPE_PNG, /// PNG??? EM_PICTURE_ADVETTISEMENT_TYPE_JPG, /// JPG??? EM_PICTURE_ADVETTISEMENT_TYPE_BMP, /// BMP??? }EM_ADVETTISEMENT_PICTURE_TYPE; ///@brief ???????????????????????????? typedef struct tagNET_PICTURE_INFO { BOOL bSupport; /// ?????????????? int nPictureNum; /// ?????????????????????? EM_ADVETTISEMENT_PICTURE_TYPE emAdPictureType[32]; /// ?????????????????????? UINT nMinWidth; /// ??????????????? UINT nMaxWidth; /// ?????????????? UINT nMinHeight; /// ?????????????? UINT nMaxHeight; /// ????????????? UINT nOnePicMaxSize; /// ??????????????????????KB UINT nMaxPicNums; /// ????????????? BYTE byReserved[128]; /// ?????? }NET_PICTURE_INFO; ///@brief CLIENT_GetDevCaps NET_GET_ADVERTIMENT_CAPS ??? typedef struct tagNET_OUT_GET_ADVERTIMENT_CAPS { DWORD dwSize; /// ??????? BOOL bSupport; /// ??????????? int nFileStorageTypeNum; /// ?????????????????????? EM_FILE_STORAGE_TYPE emFileStorageType[32]; /// ??????????????????? NET_LOCAL_STORAGE_INFO stuLocalStorage; /// ??FileStorageType?EM_FILE_STORAGE_TYPE_LOCAL???????????? NET_ADVERTISEMENT_VIDEO stuAdvertimentVideo; /// ???????????????????????????????? NET_AUDIO_INFO stuAudio; /// ??????????????????????????? UINT nOneAVFileMaxSize; /// ??????????????????????????KB UINT nMaxAVFileNums; /// ?????????????????????? NET_PICTURE_INFO stuPicture; /// ???????????????????????????? }NET_OUT_GET_ADVERTIMENT_CAPS; ///@brief ????????????????????????? typedef struct tagNET_IN_CTRL_QUERY_DELIVERYE_FILE { DWORD dwSize; ///??????? }NET_IN_CTRL_QUERY_DELIVERYE_FILE; ///@brief ???????????????????????????? typedef struct tagNET_IN_CTRL_QUERY_DELIVERYE_FILE_EX { DWORD dwSize; ///??????? }NET_IN_CTRL_QUERY_DELIVERYE_FILE_EX; ///@brief ????????????????????? typedef struct tagNET_QUERY_DELIVERY_FILE_INFO { BOOL bDownloaded; ///??????????????????? EM_DELIVERY_FILE_TYPE emFileType; ///??????? char szLocalPath[128]; ///??????????????????? int nSustain; ///?????????????????FileType?Image????? char szURL[128]; ///??????????? char szURLEx[512]; ///????????????????? BYTE bReserved[512]; /// ?????? }NET_QUERY_DELIVERY_FILE_INFO; ///@brief ?????????????????????(???) typedef struct tagNET_QUERY_DELIVERY_FILE_INFOEX { BOOL bDownloaded; ///??????????????????? EM_DELIVERY_FILE_TYPE emFileType; ///??????? char szLocalPath[128]; ///??????????????????? int nSustain; ///?????????????????FileType?Image????? char szURL[128]; ///??????????? char szURLEx[512]; ///????????????????? NET_CFG_TIME_SCHEDULE stuTimeSection; ///?????????? int nSize; /// ??????? int nID; /// ?????? BYTE bReserved[1024]; /// ?????? }NET_QUERY_DELIVERY_FILE_INFOEX; ///@brief ?????????????????????????? typedef struct tagNET_OUT_CTRL_QUERY_DELIVERYE_FILE { DWORD dwSize; /// ??????? BOOL bEnable; /// ??????? NET_TIME stuStartPlayTime; /// ??????????? NET_TIME stuStopPlayTime; /// ???????????? char szMode[20]; /// ?????? int nFileCount; /// ????????????????? NET_QUERY_DELIVERY_FILE_INFO stuFileInfo[MAX_VIDEO_FILE_LIST_NUM]; /// ??????????????????stuFileInfoEx?? EM_VIDEO_PLAY_MODE_TYPE emPlayMode; /// ???????? int nFileCountEx; /// ????????????????? NET_QUERY_DELIVERY_FILE_INFOEX stuFileInfoEx[MAX_VIDEO_FILE_LIST_NUM]; /// ?????????? char szName[128]; /// ??????? int nNumber; /// ??????????? NET_CFG_TIME_SCHEDULE stuTimeSection; /// ???????? }NET_OUT_CTRL_QUERY_DELIVERYE_FILE; ///@brief ????????????????????????????? typedef struct tagNET_OUT_CTRL_QUERY_DELIVERYE_FILE_EX { DWORD dwSize; /// ??????? int nFileNum; /// ?????????,??????? int nRetFileNum; /// ?????????,???????????? NET_OUT_CTRL_QUERY_DELIVERYE_FILE* pDeliveredFile; /// ????? }NET_OUT_CTRL_QUERY_DELIVERYE_FILE_EX; ///@brief ??????????????? typedef struct tagNET_IN_COURSECOMPOSITE_GET_INFO { DWORD dwSize; int nClassRoomId; /// ????ID?? }NET_IN_COURSECOMPOSITE_GET_INFO; ///@brief ????? typedef enum tagEM_COMPOSITECHANNEL_MODE { EM_COMPOSITECHANNEL_CUSTOMER = -1, /// ????? EM_COMPOSITECHANNEL_INVALID, /// ???? EM_COMPOSITECHANNEL_MOVIE, /// ????? EM_COMPOSITECHANNEL_NORMALCY, /// ????? EM_COMPOSITECHANNEL_PICK, /// ????? }EM_COMPOSITECHANNEL_MODE; ///@brief ????????? typedef struct tagNET_COMPOSITECHANNEL_INFO { char szCourseName[DH_COMMON_STRING_128]; /// ???????? char szTeacherName[DH_COMMON_STRING_64]; /// ??????? int nCompositeChannelMode; /// ?????; 0:??????1:??????? 2:??????? 3:??????? <0:?????????? int nChannelNum; /// ?????????? BOOL bCanStream[MAX_COURSE_LOGIC_CHANNEL]; /// ?????????????????????????? BYTE byReserved[256]; }NET_COMPOSITECHANNEL_INFO; ///@brief ???????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_GET_INFO { DWORD dwSize; NET_COMPOSITECHANNEL_INFO stuChannelInfo; /// ????????? }NET_OUT_COURSECOMPOSITE_GET_INFO; ///@brief ???????????????? typedef struct tagNET_IN_COURSECOMPOSITE_SET_INFO { DWORD dwSize; int nClassRoomId; /// ????ID?? NET_COMPOSITECHANNEL_INFO stuChannelInfo; /// ????????? }NET_IN_COURSECOMPOSITE_SET_INFO; ///@brief ????????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_SET_INFO { DWORD dwSize; }NET_OUT_COURSECOMPOSITE_SET_INFO; ///@brief ??????????????time??? typedef struct tagNET_IN_COURSECOMPOSITE_UPDATE_INFO { DWORD dwSize; int nClassRoomId; /// ????ID?? NET_TIME stuTime; /// ?????? }NET_IN_COURSECOMPOSITE_UPDATE_INFO; ///@brief ??????????????time???? typedef struct tagNET_OUT_COURSECOMPOSITE_UPDATE_INFO { DWORD dwSize; }NET_OUT_COURSECOMPOSITE_UPDATE_INFO; ///@brief ????????????????? typedef enum tagEM_COURSECOMPOSITE_OPERATE_TYPE { EM_COURSECOMPOSITE_TYPE_LOCK_CONTROL, ///???????????????????????????pInParam = NET_IN_COURSECOMPOSITE_LOCK_CONTROL,pOutParam = NET_OUT_COURSECOMPOSITE_LOCK_CONTROL EM_COURSECOMPOSITE_TYPE_GET_LOCKINFO, ///???????????????????????????????????pInParam = NET_IN_COURSECOMPOSITE_GET_LOCKINFO??pOutParam = NET_OUT_COURSECOMPOSITE_GET_LOCKINFO EM_COURSECOMPOSITE_TYPE_GET_INFO, ///????????????,???????pInParam = NET_IN_COURSECOMPOSITE_GET_INFO,pOutParam = NET_OUT_COURSECOMPOSITE_GET_INFO EM_COURSECOMPOSITE_TYPE_SET_INFO, ///?????????????,???????pInParam = NET_IN_COURSECOMPOSITE_SET_INFO,pOutParam = NET_OUT_COURSECOMPOSITE_SET_INFO EM_COURSECOMPOSITE_TYPE_UPDATE_INFO, ///????????????????time??????????????? pInParam = NET_IN_COURSECOMPOSITE_UPDATE_INFO, pOutParam = NET_OUT_COURSECOMPOSITE_UPDATE_INFO }EM_COURSECOMPOSITE_OPERATE_TYPE; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ????????????????????????????emOperateType???? ///@param[out] pOutParam ??????????, ????????????????????????????emOperateType???? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateCourseCompositeChannel(LLONG lLoginID, EM_COURSECOMPOSITE_OPERATE_TYPE emOperateType, void *pInParam, void *pOutParam, int nWaitTime); #define NET_MAX_WINDOWS_NUMBER 64 /// ????????????????? #define NET_MAX_MODE_NUMBER 64 /// ??????????????? ///@brief ?????????????? typedef struct tagNET_COMPOSITECHANNELMODE_WINDOWS { DH_RECT stRect; /// ????????, ????8192??????? int nLogicChannel; /// ????????, ?-1???????????????? int nZOrder; /// Z?? BYTE byReserved[64]; /// ??????? }NET_COMPOSITECHANNELMODE_WINDOWS; ///@brief ???????????? typedef struct tagNET_COMPOSITECHANNELMODE_INFO { char szName[DH_COMMON_STRING_128]; /// ?????? int nWindowNum; /// ????????? NET_COMPOSITECHANNELMODE_WINDOWS stWindows[NET_MAX_WINDOWS_NUMBER]; /// ??????? BYTE byReserved[64]; /// ??????? }NET_COMPOSITECHANNELMODE_INFO; ///@brief ???????????????? typedef struct tagNET_IN_COURSECOMPOSITE_CHANNEL_MODE_ADD { DWORD dwSize; /// ??????? int nCount; /// ??????????? NET_COMPOSITECHANNELMODE_INFO stModeInfo[NET_MAX_MODE_NUMBER]; /// ????? }NET_IN_COURSECOMPOSITE_CHANNEL_MODE_ADD; ///@brief ???????????????????? typedef struct tagNET_COURSECOMPOSITE_CHANNEL_MODE_ADD_RESULT { int nMode; /// ??, 0 ????, 1 ?????, 2 ?????, 3 ?????, ????0 ??????? int nReturnCode; /// ??????, 1 ???, 2 ???, 3 ????, 4 ??????? BYTE byReserved[64]; /// ??????? }NET_COURSECOMPOSITE_CHANNEL_MODE_ADD_RESULT; ///@brief ????????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_CHANNEL_MODE_ADD { DWORD dwSize; /// ??????? int nCount; /// ????????? NET_COURSECOMPOSITE_CHANNEL_MODE_ADD_RESULT stResult[NET_MAX_MODE_NUMBER]; /// ???????? }NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_ADD; ///@brief ??????????????? typedef struct tagNET_IN_COURSECOMPOSITE_CHANNEL_MODE_DELETE { DWORD dwSize; /// ??????? int nModeNum; /// ??????????? int nMode[NET_MAX_MODE_NUMBER]; /// ?????????? }NET_IN_COURSECOMPOSITE_CHANNEL_MODE_DELETE; ///@brief ???????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_CHANNEL_MODE_DELETE { DWORD dwSize; /// ??????? int nReturnNum; /// ??????????? int nReturnCode[NET_MAX_MODE_NUMBER]; /// ??????: 1 ???, 2 ??? }NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_DELETE; ///@brief ??????????????? typedef struct tagNET_IN_COURSECOMPOSITE_CHANNEL_MODE_MODIFY { DWORD dwSize; /// ??????? int nModeNum; /// ?????????? int nMode[NET_MAX_MODE_NUMBER]; /// ????? NET_COMPOSITECHANNELMODE_INFO stModeInfo[NET_MAX_MODE_NUMBER]; /// ????? }NET_IN_COURSECOMPOSITE_CHANNEL_MODE_MODIFY; ///@brief ???????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_CHANNEL_MODE_MODIFY { DWORD dwSize; /// ??????? int nReturnNum; /// ??????????, ??????????????? int nReturnCode[NET_MAX_MODE_NUMBER]; /// ??????: 1 ???, 2 ???, 3, ????, 4 ??????? }NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_MODIFY; ///@brief ??????????????? typedef struct tagNET_IN_COURSECOMPOSITE_CHANNEL_MODE_GET { DWORD dwSize; /// ??????? int nCount; /// ???????????? }NET_IN_COURSECOMPOSITE_CHANNEL_MODE_GET; ///@brief ???????????????? typedef struct tagNET_OUT_COURSECOMPOSITE_CHANNEL_MODE_GET { DWORD dwSize; /// ??????? int nReturnNum; /// ????????????? int nMode[NET_MAX_MODE_NUMBER]; /// ????? NET_COMPOSITECHANNELMODE_INFO stModeInfo[NET_MAX_MODE_NUMBER]; /// ????? }NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_GET; ///@brief ??????????????????? typedef enum tagNET_COURSECOMPOSITE_MODE_OPERATE_TYPE { NET_COURSECOMPOSITE_MODE_ADD, /// ??????,???????pInParam = NET_IN_COURSECOMPOSITE_CHANNEL_MODE_ADD, pOutParam = NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_ADD NET_COURSECOMPOSITE_MODE_DELETE, /// ?????,???????pInParam = NET_IN_COURSECOMPOSITE_CHANNEL_MODE_DELETE, pOutParam = NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_DELETE NET_COURSECOMPOSITE_MODE_MODIFY, /// ?????,???????pInParam = NET_IN_COURSECOMPOSITE_CHANNEL_MODE_MODIFY, pOutParam = NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_MODIFY NET_COURSECOMPOSITE_MODE_GET, /// ?????,???????pInParam = NET_IN_COURSECOMPOSITE_CHANNEL_MODE_GET, pOutParam = NET_OUT_COURSECOMPOSITE_CHANNEL_MODE_GET }NET_COURSECOMPOSITE_MODE_OPERATE_TYPE; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ????????????????????????????emOperateType???? ///@param[out] pOutParam ??????????, ????????????????????????????emOperateType???? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateCourseCompositeChannelMode(LLONG lLoginID, NET_COURSECOMPOSITE_MODE_OPERATE_TYPE emOperateType, void *pInParam, void *pOutParam, int nWaitTime); /////////////////////////////////////////////////////////////////// #define NET_UPGRADE_COUNT_MAX 256 ///??????????? ///@brief ??????????????? typedef struct tagNET_IN_UPGRADER_GETSERIAL { DWORD dwSize; /// ???????? } NET_IN_UPGRADER_GETSERIAL; ///@brief ????????? typedef struct tagNET_UPGRADER_SERIAL_INO { ENUM_VENDOR_TYPE emVendor; ENUM_STANDARD_TYPE emStandard; ///?????? NET_TIME_EX stuBuild; ///???????? char szChip[DH_COMMON_STRING_16]; ///????????????? char szSerial[DH_COMMON_STRING_256]; /// ?????? char szLanguage[DH_COMMON_STRING_128]; ///???? char szSn[DH_COMMON_STRING_64]; /// ?????? char szSWVersion[DH_COMMON_STRING_64]; /// ??????? char szTag[DH_COMMON_STRING_256]; ///??????? char szTag2[DH_COMMON_STRING_256]; ///???????2 char reserved[1024]; }NET_UPGRADER_SERIAL_INO; ///@brief ???????????????? typedef struct tagNET_OUT_UPGRADER_GETSERIAL { DWORD dwSize; /// ???????? NET_UPGRADER_SERIAL_INO stuSerialInfo[MAX_UPGRADER_SERIAL_INFO]; /// ????????? int nRetNum; /// ??????? } NET_OUT_UPGRADER_GETSERIAL; ///@brief ?????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInGetSerial ??????????, ??????????????????? ///@param[out] pstuOutGetSerial ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetUpdateSerial(LLONG lLoginID, NET_IN_UPGRADER_GETSERIAL *pstuInGetSerial, NET_OUT_UPGRADER_GETSERIAL *pstuOutGetSerial, int nWaitTime); ///@brief ???????????????? typedef struct tagNET_IN_CLOUD_UPGRADER_CHECK { DWORD dwSize; ENUM_VENDOR_TYPE emVendor; ENUM_STANDARD_TYPE emStandard; ///?????? NET_TIME_EX stuBuild; ///??????????????? char szUrl[DH_COMMON_STRING_1024]; /// ??URL char szClass[DH_COMMON_STRING_64]; /// ??????? char szSerial[DH_COMMON_STRING_256]; /// ???????????? char szLanguage[DH_COMMON_STRING_128]; /// ???? char szSN[DH_COMMON_STRING_64]; /// ????????? char szSWVersion[DH_COMMON_STRING_64]; /// ????????????? char szTag1[DH_COMMON_STRING_256]; /// ???????????????????? char szTag2[DH_COMMON_STRING_256]; /// ???????????????????? char szAccessKeyId[DH_COMMON_STRING_128];///Access Key ID char szSecretAccessKey[DH_COMMON_STRING_128];///Secret Access Key }NET_IN_CLOUD_UPGRADER_CHECK; ///@brief ???????????????? typedef struct tagNET_OUT_CLOUD_UPGRADER_CHECK { DWORD dwSize; BOOL bHasNewVersion; /// ?????????????? char szVersion[DH_COMMON_STRING_64]; ///?????? char szAttention[DH_COMMON_STRING_1024]; /// ??????????????????? char szPackageUrl[DH_COMMON_STRING_1024]; /// ???????????URL char szPackageId[DH_COMMON_STRING_64]; ///??????ID }NET_OUT_CLOUD_UPGRADER_CHECK; ///@brief ?????????????????????, ???HTTP???? ///@param[in] pIn ??????????, ??????????????????? ///@param[out] pOut ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUpgraderCheck(NET_IN_CLOUD_UPGRADER_CHECK *pIn, NET_OUT_CLOUD_UPGRADER_CHECK *pOut, DWORD dwWaitTime); ///@brief ???????? typedef enum tagemCloudDownloadState { emCloudDownloadState_Unknown, ///??? emCloudDownloadState_Success, ///????????(????????) emCloudDownloadState_Failed, ///?????????(???????????????????????) emCloudDownloadState_Downloading, ///?????????? emCloudDownloadState_NoEnoughDiskSpace, ///???????? }emCloudDownloadState; ///@brief ??????????????? typedef void (CALLBACK *fCloudDownload_Process_callback)(LLONG lDownHandle, emCloudDownloadState emState, double dwDownloadSpeed, DWORD dwProgressPercentage, LDWORD dwUser); ///@brief ??????????????????? typedef struct tagNET_IN_CLOUD_UPGRADER_DOWN { DWORD dwSize; char szPackageUrl[DH_COMMON_STRING_1024]; /// ???????????URL char szSaveFile[DH_COMMON_STRING_1024]; ///????????? fCloudDownload_Process_callback pfProcessCallback; ///?????? LDWORD dwUser; ///?????????? }NET_IN_CLOUD_UPGRADER_DOWN; ///@brief ???????????????????? typedef struct tagNET_OUT_CLOUD_UPGRADER_DOWN { DWORD dwSize; }NET_OUT_CLOUD_UPGRADER_DOWN; ///@brief ?? ????????????, ???HTTP???? ///@param[in] pIn ??????????, ??????????????????? ///@param[out] pOut ??????????, ??????????????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CloudUpgraderDownLoad(NET_IN_CLOUD_UPGRADER_DOWN *pIn, NET_OUT_CLOUD_UPGRADER_DOWN *pOut); ///@brief ????????, ???HTTP???? ///@param[in] lDownloadHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUpgraderStop(LLONG lDownloadHandle); ///@brief ?????????, ???HTTP???? ///@param[in] lDownloadHandle ??????? ///@param[in] bPause ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUpgraderPause(LLONG lDownloadHandle, BOOL bPause); ///@brief ??????? typedef enum tagNET_UPGRADE_REPORT_RESULT { NET_UPGRADE_REPORT_RESULT_UNKNWON, ///??? NET_UPGRADE_REPORT_RESULT_SUCCESS, ///??? NET_UPGRADE_REPORT_RESULT_FAILED, ///??? }NET_UPGRADE_REPORT_RESULT; ///@brief ?????????????? typedef struct tagNET_UPGRADE_REPORT { int nDeviceNum; ///??????? char szDevSerial[NET_UPGRADE_COUNT_MAX][MAX_COMMON_STRING_64]; /// ?????? char szPacketID[MAX_COMMON_STRING_128]; ///??????ID NET_UPGRADE_REPORT_RESULT emResult; ///??????? char szCode[MAX_COMMON_STRING_128]; /// ????????? char reserved[256]; }NET_UPGRADE_REPORT; ///@brief ????????????? typedef struct tagNET_IN_UPGRADE_REPORT { DWORD dwSize; int nCount; /// ?????????? NET_UPGRADE_REPORT *pstuUpgradeReport; ///?????????? char szAccessKeyId[DH_COMMON_STRING_128]; ///????ID char szSecretAccessKey[DH_COMMON_STRING_128]; ///??????? char szUrl[DH_COMMON_STRING_1024]; /// ??URL }NET_IN_UPGRADE_REPORT; ///@brief ?????????????? typedef struct tagNET_OUT_UPGRADE_REPORT { DWORD dwSize; }NET_OUT_UPGRADE_REPORT; ///@brief ??????????, ???HTTP???? ///@param[in] pIn ??????????, ??????????????????? ///@param[out] pOut ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUpgraderReport(NET_IN_UPGRADE_REPORT *pIn, NET_OUT_UPGRADE_REPORT *pOut, DWORD dwWaitTime); ///@brief ????????????? typedef struct tagNET_CLOUD_UPGRADER_STATE { DWORD dwSize; EM_UPGRADE_STATE emState; /// ?????? int nProgress; /// ???????? char szFileName[DH_COMMON_STRING_128]; /// ??????? TP_U64 nTotalLen; /// ????????????????????? char szFileNameEx[256]; /// ?????????? char szReserved[1024]; /// ?????? } NET_CLOUD_UPGRADER_STATE; ///@brief ????????????? typedef void (CALLBACK *fUpgraderStateCallback) (LLONG lLoginId, LLONG lAttachHandle, NET_CLOUD_UPGRADER_STATE* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief ????????????? typedef struct tagNET_IN_CLOUD_UPGRADER_ATTACH_STATE { DWORD dwSize; fUpgraderStateCallback cbUpgraderState; LDWORD dwUser; } NET_IN_CLOUD_UPGRADER_ATTACH_STATE; ///@brief ?????????????? typedef struct tagNET_OUT_CLOUD_UPGRADER_ATTACH_STATE { DWORD dwSize; } NET_OUT_CLOUD_UPGRADER_ATTACH_STATE; ///@brief ???????????? typedef struct tagNET_IN_CLOUD_UPGRADER_GET_STATE { DWORD dwSize; } NET_IN_CLOUD_UPGRADER_GET_STATE; ///@brief ????????????? typedef struct tagNET_OUT_CLOUD_UPGRADER_GET_STATE { DWORD dwSize; EM_UPGRADE_STATE emState; /// ?????? int nProgress; /// ???????? char szFileName[DH_COMMON_STRING_128]; /// ??????? } NET_OUT_CLOUD_UPGRADER_GET_STATE; ///@brief ??????????????????? typedef struct tagNET_IN_UPGRADER_GET_CAPS { DWORD dwSize; } NET_IN_UPGRADER_GET_CAPS; ///@brief ?????????????? typedef enum tagEM_EXTERN_DEVICE_UPGRADE_TYPE { EM_EXTERN_DEVICE_UPGRADE_TYPE_UNKNOWN = -1, /// ??? EM_EXTERN_DEVICE_UPGRADE_TYPE_NO_SUPPORT, /// ????? EM_EXTERN_DEVICE_UPGRADE_TYPE_SUPPORT, ///.??? }EM_EXTERN_DEVICE_UPGRADE_TYPE; ///@brief ????????????? typedef struct tagNET_UPGRADER_CAPS { UINT nOfflineTransfer; /// ???????????????????????,0 ?????,????; 1 ??? UINT nRemoteDownload; /// ??????????????????????,0 ?????; 1 ???,???? UINT nProtocol; /// ???????? /// bit1???http????, 0:?????, 1:??? EM_EXTERN_DEVICE_UPGRADE_TYPE emExternDeviceUpgrade; /// ????????????? BYTE byReserved[120]; /// ??????? }NET_UPGRADER_CAPS; ///@brief ???????????????????? typedef struct tagNET_OUT_UPGRADER_GET_CAPS { DWORD dwSize; NET_UPGRADER_CAPS stuCaps; /// ?????? } NET_OUT_UPGRADER_GET_CAPS; ///@brief ?????????????????? typedef struct tagNET_IN_UPGRADER_CANCEL { DWORD dwSize; } NET_IN_UPGRADER_CANCEL; ///@brief ?????????????????? typedef struct tagNET_OUT_UPGRADER_CANCEL { DWORD dwSize; } NET_OUT_UPGRADER_CANCEL; ///@brief ??????? typedef enum tagEM_CHIP_TYPE { EM_CHIP_TYPE_UNKNOWN, /// ??? EM_CHIP_TYPE_MAIN, /// ?????? EM_CHIP_TYPE_SUB, /// ??? EM_CHIP_TYPE_GEOGRAPHY, /// ??????????? EM_CHIP_TYPE_EXTEND_TANK_N, /// N?1,2,3 ????????N EM_CHIP_TYPE_EXTERN_DEVICE, /// ????????? }EM_CHIP_TYPE; ///@brief ??????????????? typedef struct tagNET_IN_UPGRADER_CHOSE_CHIP_INFO { DWORD dwSize; /// ??????? EM_CHIP_TYPE emChipType; /// ??????? }NET_IN_UPGRADER_CHOSE_CHIP_INFO; ///@brief ???????????????? typedef struct tagNET_OUT_UPGRADER_CHOSE_CHIP_INFO { DWORD dwSize; /// ??????? }NET_OUT_UPGRADER_CHOSE_CHIP_INFO; ///@brief ???????? typedef enum tagEM_UPGRADE_FILE_TYPE { EM_UPGRADE_FILE_TYPE_UNKNOWN, /// ??? EM_UPGRADE_FILE_TYPE_APPLICATION, /// ??? EM_UPGRADE_FILE_TYPE_SYSTEM, /// ?? EM_UPGRADE_FILE_TYPE_FIRMWARE, /// ??? }EM_UPGRADE_FILE_TYPE; ///@brief ??????????? typedef enum tagEM_CHECK_SUM_TYPE { EM_CHECK_SUM_TYPE_UNKNOWN, /// ??? EM_CHECK_SUM_TYPE_MD5, /// MD5 }EM_CHECK_SUM_TYPE; ///@brief ??????????????????????????? typedef struct tagNET_IN_UPGRADER_SET_EXTERN_DEVICE_INFO { DWORD dwSize; /// ??????? EM_UPGRADE_FILE_TYPE emUpgradeType; /// ???????? int nFileLength; /// ???????????? EM_CHECK_SUM_TYPE emCheckSumType; /// ??????????? char szCheckSum[128];/// ??????????? int nSessionID; /// ??????????????id }NET_IN_UPGRADER_SET_EXTERN_DEVICE_INFO; ///@brief ???????????????????????????? typedef struct tagNET_OUT_UPGRADER_SET_EXTERN_DEVICE_INFO { DWORD dwSize; /// ??????? }NET_OUT_UPGRADER_SET_EXTERN_DEVICE_INFO; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CloudUpgraderAttachState(LLONG lLoginID, const NET_IN_CLOUD_UPGRADER_ATTACH_STATE *pInParam, NET_OUT_CLOUD_UPGRADER_ATTACH_STATE *pOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUpgraderDetachState(LLONG lAttachHandle); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUpgraderGetState(LLONG lLoginID, const NET_IN_CLOUD_UPGRADER_GET_STATE *pInParam, NET_OUT_CLOUD_UPGRADER_GET_STATE *pOutParam, int nWaitTime); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpgraderGetCaps(LLONG lLoginID, const NET_IN_UPGRADER_GET_CAPS *pInParam, NET_OUT_UPGRADER_GET_CAPS *pOutParam, int nWaitTime); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpgraderCancel(LLONG lLoginID, const NET_IN_UPGRADER_CANCEL *pInParam, NET_OUT_UPGRADER_CANCEL *pOutParam, int nWaitTime); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpgraderChooseChip(LLONG lLoginID, const NET_IN_UPGRADER_CHOSE_CHIP_INFO *pInParam, NET_OUT_UPGRADER_CHOSE_CHIP_INFO *pOutParam, int nWaitTime); ///@brief ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpgraderSetExternDeviceInfo(LLONG lLoginID, const NET_IN_UPGRADER_SET_EXTERN_DEVICE_INFO *pInParam, NET_OUT_UPGRADER_SET_EXTERN_DEVICE_INFO *pOutParam, int nWaitTime); ///@brief CLIENT_UpgraderGetChipList??? typedef struct tagNET_IN_UPGRADER_GET_CHIPLIST_INFO { DWORD dwSize; /// ??????? }NET_IN_UPGRADER_GET_CHIPLIST_INFO; ///@brief CLIENT_UpgraderGetChipList???? typedef struct tagNET_OUT_UPGRADER_GET_CHIPLIST_INFO { DWORD dwSize; /// ??????? int nListNum; /// ????????????????? char szList[32][16]; /// ????????????????? }NET_OUT_UPGRADER_GET_CHIPLIST_INFO; ///@brief ???????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpgraderGetChipList(LLONG lLoginID, const NET_IN_UPGRADER_GET_CHIPLIST_INFO *pstuInParam, NET_OUT_UPGRADER_GET_CHIPLIST_INFO *pstuOutParam, int nWaitTime); ///@brief ??????????????? typedef struct tagNET_IN_CLOUDUPLOAD_GETCAPS { DWORD dwSize; /// ??????? }NET_IN_CLOUDUPLOAD_GETCAPS; ///@brief ???????????????? typedef struct tagNET_OUT_CLOUDUPLOAD_GETCAPS { DWORD dwSize; /// ??????? BOOL bAsyncUpload; /// ???????????,TRUE:???,FALSE:????? }NET_OUT_CLOUDUPLOAD_GETCAPS; ///@brief ?????????? typedef struct tagNET_IN_CLOUD_UPLOAD_PICTURE { DWORD dwSize; int nChannelID; /// ????? int nServerType; /// ??????????????,0-??????? 1-FTP?????? int nPicType; /// ?????? 0-?????????? 1-12????????? 2-?????? char szFileName[256]; /// Ocx????????????(web????????) char szAccessKeyId[DH_COMMON_STRING_64]; /// ??????????????? char szAccessKeySecret[DH_COMMON_STRING_64]; /// ?????????????? char szBucketName[DH_COMMON_STRING_32]; /// ???????????????? char szFileKey[256]; /// ????????????????? char szEndPoint[DH_COMMON_STRING_64]; /// ?????????????????? UINT nFileLength; /// ???????,????:??? char* pFileData; /// ??????? } NET_IN_CLOUD_UPLOAD_PICTURE; ///@brief ??????????? typedef struct tagNET_OUT_CLOUD_UPLOAD_PICTURE { DWORD dwSize; char szFileName[256]; /// ????????????????? char szFileURL[DH_COMMON_STRING_2048]; /// ????????????????,??web?????? BOOL bAsyncUploadPic; /// ???????????,TRUE:??,FALSE:??? } NET_OUT_CLOUD_UPLOAD_PICTURE; ///@brief ??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUploadPicture(LLONG lLoginID, const NET_IN_CLOUD_UPLOAD_PICTURE *pInParam, NET_OUT_CLOUD_UPLOAD_PICTURE *pOutParam, int nWaitTime); ///@brief ??????????? typedef struct tagNET_IN_CLOUD_UPLOAD_VIDEO { DWORD dwSize; int nChannelID; /// ????? int nServerType; /// ??????????????,0-??????? 1-FTP?????? int nAction; /// ????????,0-?????????? 1-????????? int nStrategy; /// ??????????,0-????? 1-???????(????????????????????????) char szAccessKeyId[DH_COMMON_STRING_64]; /// ??????????????? char szAccessKeySecret[DH_COMMON_STRING_64]; /// ?????????????? char szBucketName[DH_COMMON_STRING_32]; /// ???????????????? char szFileKey[256]; /// ????????????????? char szEndPoint[DH_COMMON_STRING_64]; /// ?????????????????? } NET_IN_CLOUD_UPLOAD_VIDEO; ///@brief ???????????? typedef struct tagNET_OUT_CLOUD_UPLOAD_VIDEO { DWORD dwSize; BOOL bAsyncUploadVideo; /// ????????????,TRUE:??,FALSE:??? } NET_OUT_CLOUD_UPLOAD_VIDEO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CloudUploadVideo(LLONG lLoginID, const NET_IN_CLOUD_UPLOAD_VIDEO *pInParam, NET_OUT_CLOUD_UPLOAD_VIDEO *pOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_SNAPPIC_INFO { char szFileName[256]; /// ???????????? BOOL bState; /// ???????????,FALSE:???,TRUE:??? char szUrl[2048]; /// ??????????????????URL BYTE byReserved[1024]; /// ?????? }NET_SNAPPIC_INFO; ///@brief ??????????? typedef struct tagNET_VIDEO_INFO { char szFileName[256]; /// ???????????????????? unsigned int nChannel; /// ????? NET_TIME stuStartTime; /// ??????????????????? NET_TIME stuEndTime; /// ???????????????????? BOOL bState; /// ????????????,FALSE:???,TRUE:??? BYTE byReserved[1024]; /// ?????? }NET_VIDEO_INFO; ///@brief ????????????????????? typedef struct tagNET_CLOUDUPLOAD_STATE { NET_SNAPPIC_INFO stuSnapPicInfo; /// ???????????? NET_VIDEO_INFO stuVideoInfo; /// ??????????? BYTE byReserved[2048]; /// ?????? }NET_CLOUDUPLOAD_STATE; ///@brief ????????????????????????? typedef void (CALLBACK *fCloudUploadStateCallBack)(LLONG lLoginID, LLONG lAttachHandle, NET_CLOUDUPLOAD_STATE* pBuf, int nBufLen, LDWORD dwUser); ///@brief CLIENT_AttachCloudUploadState?????? typedef struct tagNET_IN_ATTACH_CLOUDUPLOAD_STATE { DWORD dwSize; fCloudUploadStateCallBack cbCloudUploadState; /// ??????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_CLOUDUPLOAD_STATE; ///@brief CLIENT_AttachCloudUploadState?????? typedef struct tagNET_OUT_ATTACH_CLOUDUPLOAD_STATE { DWORD dwSize; }NET_OUT_ATTACH_CLOUDUPLOAD_STATE; ///@brief ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachCloudUploadState(LLONG lLoginID, NET_IN_ATTACH_CLOUDUPLOAD_STATE *pInBuf,NET_OUT_ATTACH_CLOUDUPLOAD_STATE *pOutBuf, int nWaitTime); ///@brief ????????????????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachCloudUploadState(LLONG lAttachHandle); ///////////////////////////////////////////////////////// ///@brief CLIENT_GetRecordState ??? typedef struct tagNET_IN_GET_RECORD_STATE { DWORD dwSize; /// ??????? int nChannel; /// ????? } NET_IN_GET_RECORD_STATE; ///@brief CLIENT_GetRecordState ???? typedef struct tagNET_OUT_GET_RECORD_STATE { DWORD dwSize; /// ??????? BOOL bState; /// ???????? } NET_OUT_GET_RECORD_STATE; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRecordState(LLONG lLoginID, const NET_IN_GET_RECORD_STATE *pInParam, NET_OUT_GET_RECORD_STATE *pOutParam, int nWaitTime); ///@brief ?????????? typedef struct tagNET_DELETE_CONDITION_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuStopTime; /// ????? int nChannels[64]; /// ??? int nChannelNum; /// nChannel?????? EM_STREAM_TYPE emStreamType; /// ???????? BYTE byReserved[1024]; /// ??????? } NET_DELETE_CONDITION_INFO; ///@brief CLIENT_DeleteRecordFile ?????????, ??? typedef struct tagNET_IN_DELETE_RECORD_FILE_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? NET_DELETE_CONDITION_INFO stuDeleteCondition; /// ??????? } NET_IN_DELETE_RECORD_FILE_INFO; ///@brief CLIENT_DeleteRecordFile ?????????, ???? typedef struct tagNET_OUT_DELETE_RECORD_FILE_INFO { DWORD dwSize; /// ??????? } NET_OUT_DELETE_RECORD_FILE_INFO; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteRecordFile(LLONG lLoginID, const NET_IN_DELETE_RECORD_FILE_INFO *pInParam, NET_OUT_DELETE_RECORD_FILE_INFO *pOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_EXAM_RECORDING_PLAN_INFO { char szName[64]; /// ??????????????UTF8???? char szNumber[64]; /// ???? int nCameraIPNum; /// ?????IP???? char szCameraIP[8][32]; /// ?????IP???? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szResvered[256]; /// ??????? }NET_EXAM_RECORDING_PLAN_INFO; ///@brief CLIENT_SetExamRecordingPlans ?????? typedef struct tagNET_IN_SET_EXAM_RECORDING_PLANS { DWORD dwSize; /// ??????? int nPlansNum; /// ?????????? NET_EXAM_RECORDING_PLAN_INFO *pstuPlans; /// ??????, ?????????????, ????1024?? } NET_IN_SET_EXAM_RECORDING_PLANS; ///@brief CLIENT_SetExamRecordingPlans ?????? typedef struct tagNET_OUT_SET_EXAM_RECORDING_PLANS { DWORD dwSize; /// ??????? } NET_OUT_SET_EXAM_RECORDING_PLANS; ///@brief ???????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetExamRecordingPlans(LLONG lLoginID, const NET_IN_SET_EXAM_RECORDING_PLANS *pstuInParam, NET_OUT_SET_EXAM_RECORDING_PLANS *pstuOutParam, int nWaitTime); ///@brief ???????????????????? typedef struct tagNET_IN_COURSERECORD_GETINFO { DWORD dwSize; int nClassRoomID; /// ????ID,0??????? }NET_IN_COURSERECORD_GETINFO; ///@brief ????????????????????? typedef struct tagNET_OUT_COURSERECORD_GETINFO { DWORD dwSize; int nChannelNum; /// ?????????? int nCanRecord[MAX_COURSE_LOGIC_CHANNEL]; /// 0:????,1:???,2?????,??????????????? }NET_OUT_COURSERECORD_GETINFO; ///@brief ????????????????????? typedef struct tagNET_IN_COURSERECORD_SETINFO { DWORD dwSize; int nClassRoomID; /// ????ID,0??????? int nChannelNum; /// ?????????? int nCanRecord[MAX_COURSE_LOGIC_CHANNEL]; /// 0:????,1:???,2?????,??????????????? }NET_IN_COURSERECORD_SETINFO; ///@brief ?????????????????????? typedef struct tagNET_OUT_COURSERECORD_SETINFO { DWORD dwSize; }NET_OUT_COURSERECORD_SETINFO; ///@brief ???????????time??? typedef struct tagNET_IN_COURSERECORD_UPDATE_INFO { DWORD dwSize; int nClassRoomID; /// ????ID,0??????? NET_TIME stuTime; /// ?????? }NET_IN_COURSERECORD_UPDATE_INFO; ///@brief ???????????time???? typedef struct tagNET_OUT_COURSERECORD_UPDATE_INFO { DWORD dwSize; }NET_OUT_COURSERECORD_UPDATE_INFO; ///@brief ????????????????????? typedef struct tagNET_IN_COURSERECORD_GET_TIME { DWORD dwSize; int nClassRoomID; /// ????ID??0??????? }NET_IN_COURSERECORD_GET_TIME; ///@brief ????????????????????? typedef struct tagNET_OUT_COURSERECORD_GET_TIME { DWORD dwSize; UINT nTime; /// ????????????:?? }NET_OUT_COURSERECORD_GET_TIME; ///@brief ????????????????? typedef enum tagEM_COURSERECORD_OPERATE_TYPE { EM_COURSERECORDE_TYPE_GET_INFO, ///?????????????,???????pInParam = NET_IN_COURSERECORD_GETINFO,pOutParam = NET_OUT_COURSERECORD_GETINFO EM_COURSERECORDE_TYPE_SET_INFO, ///?????????????,???????pInParam = NET_IN_COURSERECORD_SETINFO,pOutParam = NET_OUT_COURSERECORD_SETINFO EM_COURSERECORDE_TYPE_UPDATE_INFO, ///?????????????time??????,??????? pInParam = NET_IN_COURSERECORD_UPDATE_INFO, pOutParam = NET_OUT_COURSERECORD_UPDATE_INFO EM_COURSERECORDE_TYPE_GET_TIME, ///?????????????????????,??????? pInParam = NET_IN_COURSERECORD_GET_TIME, pOutParam = NET_OUT_COURSERECORD_GET_TIME }EM_COURSERECORD_OPERATE_TYPE; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ????????????????????????????emOperateType???? ///@param[out] pOutParam ??????????, ????????????????????????????emOperateType???? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateCourseRecordManager(LLONG lLoginID, EM_COURSERECORD_OPERATE_TYPE emOperateType, void *pInParam, void *pOutParam, int nWaitTime); ///@brief ??????? typedef void(CALLBACK *fConfigChangeCallBack)(LLONG lAttachHandle, char* szCommand, char* szBuffer, LDWORD dwUser); ///@brief ????????????? typedef struct tagNET_IN_ATTACH_CONFIGCHANNGE { DWORD dwSize; char* szCfgName; /// ????????,????dhconfigsdk.h??CLIENT_GetNewDevConfig??CLIENT_SetNewDevConfig???????????? fConfigChangeCallBack cbNotify; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_CONFIGCHANNGE; ///@brief ?????????????? typedef struct tagNET_OUT_ATTACH_CONFIGCHANNGE { DWORD dwSize; }NET_OUT_ATTACH_CONFIGCHANNGE; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachConfigChange(LLONG lLoginID, NET_IN_ATTACH_CONFIGCHANNGE *pInBuf,NET_OUT_ATTACH_CONFIGCHANNGE *pOutBuf, int nWaitTime); ///@brief ????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachConfigChange(LLONG lAttachHandle); ///@brief CLIENT_GetRingFileList ??? typedef struct tagNET_IN_GET_RINGFILELIST { DWORD dwSize; }NET_IN_GET_RINGFILELIST; ///@brief CLIENT_GetRingFileList ???? typedef struct tagNET_OUT_GET_RINGFILELIST { DWORD dwSize; UINT nRingFileNum; /// ?????????????? char szRingFileList[MAX_RINGFILE_NUM][DH_COMMON_STRING_64];/// ?????????? }NET_OUT_GET_RINGFILELIST; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRingFileList(LLONG lLoginID, NET_IN_GET_RINGFILELIST *pstuInParam, NET_OUT_GET_RINGFILELIST *pstuOutParam, int nWaitTime); ///@brief CLIENT_GetConnetionStatus ??? typedef struct tagNET_IN_GETCONNECTION_STATUS { DWORD dwSize; } NET_IN_GETCONNECTION_STATUS; ///@brief CLIENT_GetConnetionStatus ???? typedef struct tagNET_OUT_GETCONNECTION_STATUS { DWORD dwSize; int nChannelNum; /// ??????? int nStatus[MAX_ALARMEXT_MODULE_NUM]; /// ???????????????,??????0:??????1:????2:???? } NET_OUT_GETCONNECTION_STATUS; ///@brief ?????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetConnectionStatus(LLONG lLoginID,const NET_IN_GETCONNECTION_STATUS* pstuInParam, NET_OUT_GETCONNECTION_STATUS *pstuOutParam, int nWaitTime); #define MAX_ALARM_BOX_VIDEO_NUM 16 ///@brief CLIENT_GetAlarmBoxVideoConnectionStatus ??? typedef struct tagNET_IN_GETALARMBOXVIDEOCONNECTION_STATUS { DWORD dwSize; } NET_IN_GETALARMBOXVIDEOCONNECTION_STATUS; ///@brief CLIENT_GetAlarmBoxVideoConnectionStatus ???? typedef struct tagNET_OUT_GETALARMBOXVIDEOCONNECTION_STATUS { DWORD dwSize; int nChannelNum; /// ????????????? int nStatus[MAX_ALARM_BOX_VIDEO_NUM]; /// ?????????????????,?????? 0:?????????? 1:???? 2:???? } NET_OUT_GETALARMBOXVIDEOCONNECTION_STATUS; ///@brief ??????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAlarmBoxVideoConnectionStatus(LLONG lLoginID,const NET_IN_GETALARMBOXVIDEOCONNECTION_STATUS* pstuInParam, NET_OUT_GETALARMBOXVIDEOCONNECTION_STATUS *pstuOutParam, int nWaitTime); ///@brief ???????? typedef enum tagEM_GETUSERINFOBYCONDITION_USER_TYPE { EM_GETUSERINFOBYCONDITION_USER_TYPE_UNKNOWN, /// ??? EM_GETUSERINFOBYCONDITION_USER_TYPE_KEYPAD, /// ??????? EM_GETUSERINFOBYCONDITION_USER_TYPE_ICCARD, /// IC????? EM_GETUSERINFOBYCONDITION_USER_TYPE_REMOTECONTROL, /// ???????? EM_GETUSERINFOBYCONDITION_USER_TYPE_MOBILE, /// ?????? EM_GETUSERINFOBYCONDITION_USER_TYPE_KEY, /// key??? }EM_GETUSERINFOBYCONDITION_USER_TYPE; ///@brief ????? typedef enum tagEM_GETUSERINFOBYCONDITION_USER_STATUS { EM_GETUSERINFOBYCONDITION_USER_STATUS_UNKNOWN, /// ??? EM_GETUSERINFOBYCONDITION_USER_STATUS_NOPRESENT, /// ????????????????????? EM_GETUSERINFOBYCONDITION_USER_STATUS_INACTIVATED, /// ???????????????????????????????? EM_GETUSERINFOBYCONDITION_USER_STATUS_ACTIVATED, /// ????? }EM_GETUSERINFOBYCONDITION_USER_STATUS; ///@brief CLIENT_GetAlarmUserInfoByCondition ??? typedef struct tagNET_IN_GETALARMUSERINFO_BY_CONDITION { DWORD dwSize; EM_GETUSERINFOBYCONDITION_USER_TYPE emUserType; /// ??????? EM_GETUSERINFOBYCONDITION_USER_STATUS emUserStatus; /// ????? } NET_IN_GETALARMUSERINFO_BY_CONDITION; ///@brief ???????????? typedef enum tagEM_ALARM_USERAUTHORITY { EM_ALARM_USERAUTHORITY_UNKNOWN, /// ??? EM_ALARM_USERAUTHORITY_ARMING, /// ???? EM_ALARM_USERAUTHORITY_FORCEARMING, /// ?????? EM_ALARM_USERAUTHORITY_DISARM, /// ???? EM_ALARM_USERAUTHORITY_BYPASS, /// ???? EM_ALARM_USERAUTHORITY_PERMANENTBYPASS, /// ???????? EM_ALARM_USERAUTHORITY_ALARMCONFIRM, /// ???? EM_ALARM_USERAUTHORITY_QUERYLOG, /// ?????? EM_ALARM_USERAUTHORITY_DEBUGMODE, /// ?????? EM_ALARM_USERAUTHORITY_UPGRADE, /// ?????????????????????? EM_ALARM_USERAUTHORITY_SYSTEMCONFIG, /// ????/???????????? EM_ALARM_USERAUTHORITY_USERMANAGEMENT, /// ??????? }EM_ALARM_USERAUTHORITY; ///@brief ????????? typedef enum tagEM_ALARM_USER_GROUP { EM_ALARM_USER_GROUP_UNKNOWN, /// ??? EM_ALARM_USER_GROUP_ADMIN, /// ????? EM_ALARM_USER_GROUP_INSTALLER, /// ???? EM_ALARM_USER_GROUP_MANUFACTURER, /// ?????? EM_ALARM_USER_GROUP_OPERATOR, /// ????? }EM_ALARM_USER_GROUP; ///@brief ???? typedef enum tagEM_ALARM_ONECLICKARMING_FUNCTION { EM_ALARM_ONECLICKARMING_FUNCTION_UNKNOWN, /// ??? EM_ALARM_ONECLICKARMING_FUNCTION_ONOFF, /// ???? EM_ALARM_ONECLICKARMING_FUNCTION_ONONLY, /// ??? EM_ALARM_ONECLICKARMING_FUNCTION_OFFONLY, /// ??? }EM_ALARM_ONECLICKARMING_FUNCTION; ///@brief ???????? typedef enum tagEM_ALARM_ONECLICKARMING_TRIGGEROPTION { EM_ALARM_ONECLICKARMING_TRIGGEROPTION_UNKNOWN, /// ??? EM_ALARM_ONECLICKARMING_TRIGGEROPTION_IMPULSE, /// ???? EM_ALARM_ONECLICKARMING_TRIGGEROPTION_BISTABLE, /// ???? }EM_ALARM_ONECLICKARMING_TRIGGEROPTION; ///@brief ?????????? typedef enum tagEM_ARM_TYPE { EM_ARM_TYPE_UNKNOWN, /// ??? EM_ARM_TYPE_TOTAL_ARMING, /// Total???? EM_ARM_TYPE_PARTIAL1_ARMING, /// partial1???? EM_ARM_TYPE_PARTIAL2_ARMING, /// partial2???? EM_ARM_TYPE_PARTIAL_ARMING, /// partial1+2???? EM_ARM_TYPE_DENFENCE_ARMING, /// ?????? EM_ARM_TYPE_DISARMING, /// ???? }EM_ARM_TYPE; ///@brief ?????????? typedef enum tagNET_EM_SCENE_MODE { NET_EM_SCENE_MODE_UNKNOWN, /// ????? NET_EM_SCENE_MODE_OUTDOOR, /// ????? NET_EM_SCENE_MODE_INDOOR, /// ????? NET_EM_SCENE_MODE_WHOLE , /// ????? NET_EM_SCENE_MODE_RIGHTNOW, /// ?????? NET_EM_SCENE_MODE_AUTO, /// ????? NET_EM_SCENE_MODE_FORCE, /// ????? NET_EM_SCENE_MODE_CUSTOM, /// ??????? NET_EM_SCENE_MODE_SLEEPING, /// ?????? }NET_EM_SCENE_MODE; ///@brief ??????????? typedef struct tagNET_ALARM_USER_ONECLICKARMING { BOOL bEnable; /// ?????????? EM_ALARM_ONECLICKARMING_FUNCTION emFunction; /// ???????? EM_ALARM_ONECLICKARMING_TRIGGEROPTION emTriggerOption; /// ???????? NET_EM_SCENE_MODE emArmProfile; /// ??????????? EM_ARM_TYPE emArmMode; /// ???????? BYTE byReserved[256]; /// ??????? } NET_ALARM_USER_ONECLICKARMING; ///@brief ???????????????????? typedef struct tagNET_ALARM_USER_EXTERN { char szDuressPassword[64]; ///???????? char szCard[64][32]; /// ??????? int nCardNum; /// ??????????? char szReserved[1020]; /// ??????? } NET_ALARM_USER_EXTERN; ///@brief ????????????????? typedef struct tagNET_ALARM_USER { char szID[32]; /// ?????? EM_GETUSERINFOBYCONDITION_USER_STATUS emUserStatus; /// ????? char szName[64]; /// ????? char szPassword[64]; /// ???? int nAuthorityListNum; /// ???????????????? EM_ALARM_USERAUTHORITY emAuthorityList[32]; ///???????????? EM_ALARM_USER_GROUP emGroup; /// ????????? BOOL bReserved; /// ??????????????????????????? EM_GETUSERINFOBYCONDITION_USER_TYPE emUserType; /// ??????? UINT nInterval; /// ??????????????????????????????????????????????????????????????Key??????????????? NET_TIME stuAccessAllowTimeStart;/// ???????????? ?????? NET_TIME stuAccessAllowTimeEnd; /// ???????????? ??????? char szMemo[32]; /// ????????? int nSubSystemNum; /// ??????????????????????? int nSubSystems[64]; /// ?????????????????????????????????????????? int nZoneNum; /// ????????????? int nZones[256]; /// ????????????emUserType=EM_GETUSERINFOBYCONDITION_USER_TYPE_KEY?????????Key???????????Key????????????????Key????? NET_ALARM_USER_ONECLICKARMING stuOneClickArming; /// ??????????? NET_ALARM_USER_EXTERN* pstuAlarmUserExtern; /// ??????????????????????????? BYTE byReserved[256-POINTERSIZE]; /// ??????? } NET_ALARM_USER; ///@brief CLIENT_GetAlarmUserInfoByCondition ???? typedef struct tagNET_OUT_GETALARMUSERINFO_BY_CONDITION { DWORD dwSize; /// ??????? UINT nUserInfoNum; /// ?????????????? NET_ALARM_USER stuUserInfo[512]; /// ????????????? } NET_OUT_GETALARMUSERINFO_BY_CONDITION; ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAlarmUserInfoByCondition(LLONG lLoginID,const NET_IN_GETALARMUSERINFO_BY_CONDITION* pstuInParam, NET_OUT_GETALARMUSERINFO_BY_CONDITION *pstuOutParam, int nWaitTime); ///@brief ?????? typedef enum tagNET_ATTENDANCE_AUTHORITY { NET_ATTENDANCE_AUTHORITY_UNKNOWN = -1, NET_ATTENDANCE_AUTHORITY_CUSTOMER, ///?????? NET_ATTENDANCE_AUTHORITY_ADMINISTRATORS, ///????? }NET_ATTENDANCE_AUTHORITY; #define MAX_ATTENDANCE_USERNAME_LEN 36 ///@brief ?????????? typedef struct tagNET_ATTENDANCE_USERINFO { char szUserID[MAX_COMMON_STRING_32]; ///??????ID char szUserName[MAX_ATTENDANCE_USERNAME_LEN]; ///??????? char szCardNo[MAX_COMMON_STRING_32]; /// ???? NET_ATTENDANCE_AUTHORITY emAuthority; /// ?????? char szPassword[MAX_COMMON_STRING_32]; /// ???? int nPhotoLength; /// ?????????? char szClassNumber[MAX_CLASS_NUMBER_LEN]; /// ?? char szPhoneNumber[MAX_PHONENUMBER_LEN]; /// ??? NET_ACCESSCTLCARD_TYPE emCardType; /// ?????? BYTE byReserved[204]; /// ??????? }NET_ATTENDANCE_USERINFO; ///@brief CLIENT_Attendance_InsertFingerByUserID ??? typedef struct tagNET_IN_FINGERPRINT_INSERT_BY_USERID { DWORD dwSize; char szUserID[DH_COMMON_STRING_32]; /// ???ID int nSinglePacketLen; /// ???????????????? int nPacketCount; /// ????????????? char* szFingerPrintInfo; /// ???????(??????????nSinglePacketLen*nPacketCount) }NET_IN_FINGERPRINT_INSERT_BY_USERID; ///@brief CLIENT_Attendance_InsertFingerByUserID ???? typedef struct tagNET_OUT_FINGERPRINT_INSERT_BY_USERID { DWORD dwSize; int nFingerPrintID[DH_MAX_FINGER_PRINT]; ///???ID???? int nReturnedCount; ///???????????????? int nFailedCode; ///?????? 0?????; 1??????????; 2??????????????????????????. }NET_OUT_FINGERPRINT_INSERT_BY_USERID; ///@brief CLIENT_Attendance_RemoveFingerByUserID ???(removeByUserID) typedef struct tagNET_CTRL_IN_FINGERPRINT_REMOVE_BY_USERID { DWORD dwSize; char szUserID[DH_COMMON_STRING_32]; /// ???ID }NET_CTRL_IN_FINGERPRINT_REMOVE_BY_USERID; ///@brief CLIENT_Attendance_RemoveFingerByUserID ???? typedef struct tagNET_CTRL_OUT_FINGERPRINT_REMOVE_BY_USERID { DWORD dwSize; }NET_CTRL_OUT_FINGERPRINT_REMOVE_BY_USERID; ///@brief CLIENT_Attendance_RemoveFingerRecord ???(remove) typedef struct tagNET_CTRL_IN_FINGERPRINT_REMOVE { DWORD dwSize; int nFingerPrintID; ///?????? }NET_CTRL_IN_FINGERPRINT_REMOVE; ///@brief CLIENT_Attendance_RemoveFingerRecord ???? typedef struct tagNET_CTRL_OUT_FINGERPRINT_REMOVE { DWORD dwSize; }NET_CTRL_OUT_FINGERPRINT_REMOVE; ///@brief CLIENT_Attendance_GetFingerRecord ??? typedef struct tagNET_CTRL_IN_FINGERPRINT_GET { DWORD dwSize; int nFingerPrintID; ///?????? }NET_CTRL_IN_FINGERPRINT_GET; ///@brief CLIENT_Attendance_GetFingerRecord ???? typedef struct tagNET_CTRL_OUT_FINGERPRINT_GET { DWORD dwSize; char szUserID[DH_COMMON_STRING_32]; /// ????????????ID char szFingerPrintName[DH_COMMON_STRING_32]; /// ??????? int nFingerPrintID; /// ???ID int nRetLength; /// ?????????????????????? int nMaxFingerDataLength; /// ?????????????????? char* szFingerPrintInfo; /// ??????? }NET_CTRL_OUT_FINGERPRINT_GET; ///@brief CLIENT_Attendance_FindUser ??? typedef struct tagNET_IN_ATTENDANCE_FINDUSER { DWORD dwSize; int nOffset; /// ?????? int nPagedQueryCount; /// ????????????????????????100 }NET_IN_ATTENDANCE_FINDUSER; ///@brief CLIENT_Attendance_FindUser ???? typedef struct tagNET_OUT_ATTENDANCE_FINDUSER { DWORD dwSize; int nTotalUser; /// ???????? int nMaxUserCount; /// ???????????? NET_ATTENDANCE_USERINFO* stuUserInfo; /// ?????????????????????????(sizeof(NET_ATTENDANCE_USERINFO)*nMaxUserCount) int nRetUserCount; /// ?????????????? int nMaxPhotoDataLength; /// ??????????? int nRetPhoteLength; /// ????????????????? BYTE * pbyPhotoData; /// ??????? }NET_OUT_ATTENDANCE_FINDUSER; ///@brief CLIENT_Attendance_GetFingerByUserID ??? typedef struct tagNET_IN_FINGERPRINT_GETBYUSER { DWORD dwSize; char szUserID[MAX_COMMON_STRING_32]; /// ???ID }NET_IN_FINGERPRINT_GETBYUSER; ///@brief CLIENT_Attendance_GetFingerByUserID ???? typedef struct tagNET_OUT_FINGERPRINT_GETBYUSER { DWORD dwSize; int nFingerPrintIDs[DH_MAX_FINGER_PRINT]; /// ???ID???? int nRetFingerPrintCount; /// ??????????ID????????????????????????? int nSinglePacketLength; /// ???????????????? int nMaxFingerDataLength; /// ???????????????????? int nRetFingerDataLength; /// ??????????????????????? BYTE* pbyFingerData; /// ??????? }NET_OUT_FINGERPRINT_GETBYUSER; ///@brief CLIENT_Attendance_AddUser ??? typedef struct tagNET_IN_ATTENDANCE_ADDUSER { DWORD dwSize; NET_ATTENDANCE_USERINFO stuUserInfo; ///?????? BYTE *pbyPhotoData; /// ??????? }NET_IN_ATTENDANCE_ADDUSER; ///@brief CLIENT_Attendance_AddUser???? typedef struct tagNET_OUT_ATTENDANCE_ADDUSER { DWORD dwSize; }NET_OUT_ATTENDANCE_ADDUSER; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInAddUser ??????????, ??????????????????? ///@param[out] pstuOutAddUser ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_AddUser(LLONG lLoginID, NET_IN_ATTENDANCE_ADDUSER *pstuInAddUser, NET_OUT_ATTENDANCE_ADDUSER *pstuOutAddUser, int nWaitTime); ///@brief CLIENT_Attendance_DelUser ??? typedef struct tagNET_IN_ATTENDANCE_DELUSER { DWORD dwSize; char szUserID[MAX_COMMON_STRING_32]; ///???ID }NET_IN_ATTENDANCE_DELUSER; ///@brief CLIENT_Attendance_DelUser???? typedef struct tagNET_OUT_ATTENDANCE_DELUSER { DWORD dwSize; }NET_OUT_ATTENDANCE_DELUSER; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInDelUser ??????????, ??????????????????? ///@param[out] pstuOutDelUser ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_DelUser(LLONG lLoginID, NET_IN_ATTENDANCE_DELUSER *pstuInDelUser, NET_OUT_ATTENDANCE_DELUSER *pstuOutDelUser, int nWaitTime); ///@brief CLIENT_Attendance_ModifyUser ??? typedef struct tagNET_IN_ATTENDANCE_ModifyUSER { DWORD dwSize; NET_ATTENDANCE_USERINFO stuUserInfo; ///?????? BYTE *pbyPhotoData; /// ??????? }NET_IN_ATTENDANCE_ModifyUSER; ///@brief CLIENT_Attendance_ModifyUser???? typedef struct tagNET_OUT_ATTENDANCE_ModifyUSER { DWORD dwSize; }NET_OUT_ATTENDANCE_ModifyUSER; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInModifyUser ??????????, ??????????????????? ///@param[out] pstuOutModifyUser ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_ModifyUser(LLONG lLoginID, NET_IN_ATTENDANCE_ModifyUSER *pstuInModifyUser, NET_OUT_ATTENDANCE_ModifyUSER *pstuOutModifyUser, int nWaitTime); ///@brief CLIENT_Attendance_GetUser ??? typedef struct tagNET_IN_ATTENDANCE_GetUSER { DWORD dwSize; char szUserID[MAX_COMMON_STRING_32]; ///???ID }NET_IN_ATTENDANCE_GetUSER; ///@brief CLIENT_Attendance_GetUser???? typedef struct tagNET_OUT_ATTENDANCE_GetUSER { DWORD dwSize; NET_ATTENDANCE_USERINFO stuUserInfo; ///?????? int nMaxLength; /// ???????????????? BYTE * pbyPhotoData; /// ??????? }NET_OUT_ATTENDANCE_GetUSER; ///@brief ????? ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInGetUser ??????????, ??????????????????? ///@param[out] pstuOutGetUser ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_GetUser(LLONG lLoginID, NET_IN_ATTENDANCE_GetUSER *pstuInGetUser, NET_OUT_ATTENDANCE_GetUSER *pstuOutGetUser, int nWaitTime); ///@brief ????? ??????ID??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInInsert ??????????, ??????????????????? ///@param[out] pstuOutInsert ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_InsertFingerByUserID(LLONG lLoginID, NET_IN_FINGERPRINT_INSERT_BY_USERID* pstuInInsert, NET_OUT_FINGERPRINT_INSERT_BY_USERID* pstuOutInsert, int nWaitTime); ///@brief ????? ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInRemove ??????????, ??????????????????? ///@param[out] pstuOutRemove ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_RemoveFingerByUserID(LLONG lLoginID, NET_CTRL_IN_FINGERPRINT_REMOVE_BY_USERID* pstuInRemove, NET_CTRL_OUT_FINGERPRINT_REMOVE_BY_USERID* pstuOutRemove, int nWaitTime); ///@brief ????? ??????ID?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInGet ??????????, ??????????????????? ///@param[out] pstuOutGet ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_GetFingerRecord(LLONG lLoginID, NET_CTRL_IN_FINGERPRINT_GET* pstuInGet, NET_CTRL_OUT_FINGERPRINT_GET* pstuOutGet, int nWaitTime); ///@brief ????? ??????ID?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInRemove ??????????, ??????????????????? ///@param[out] pstuOutRemove ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_RemoveFingerRecord(LLONG lLoginID, NET_CTRL_IN_FINGERPRINT_REMOVE* pstuInRemove, NET_CTRL_OUT_FINGERPRINT_REMOVE* pstuOutRemove, int nWaitTime); ///@brief ????? ??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInFindUser ??????????, ??????????????????? ///@param[out] pstuOutFindUser ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_FindUser(LLONG lLoginID, NET_IN_ATTENDANCE_FINDUSER *pstuInFindUser, NET_OUT_ATTENDANCE_FINDUSER *pstuOutFindUser, int nWaitTime); ///@brief ????? ??????ID?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuIn ??????????, ??????????????????? ///@param[out] pstuOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Attendance_GetFingerByUserID(LLONG lLoginID, NET_IN_FINGERPRINT_GETBYUSER *pstuIn, NET_OUT_FINGERPRINT_GETBYUSER *pstuOut, int nWaitTime); ///@brief ???????????????? typedef enum tagEM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE { EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE_UNKNOWN = -1, /// ??? EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE_NONE = 0, /// ????????Z EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE_ONVIF, /// Onvif?????Z EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE_UPNP, /// UPnP?????Z }EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE; ///@brief fAttachDeviceDiscoveryCB ???? typedef struct tagNET_DEVICE_DISCOVERY_INFO { DWORD dwSize; char szMachineName[DH_COMMON_STRING_32]; /// ??????? char szDeviceClass[DH_COMMON_STRING_32]; /// ??????? char szDeviceType[DH_COMMON_STRING_32]; /// ?????? char szSerialNo[DH_COMMON_STRING_32]; /// ????????? char szVersion[DH_COMMON_STRING_32]; /// ???????????? char szMac[DH_COMMON_STRING_32]; /// ???MAC??? int nVideoInputChannels; /// ??????????????? int nRemoteVideoInputChannels; /// ??????????????? int nVideoOutputChannels; /// ??????????? int nAlarmInputChannels; /// ????????????? int nAlarmOutputChannels; /// ???????????? int nAudioInputChannels; /// ??????????????? int nPort; /// ?????? char szVendor[DH_COMMON_STRING_32]; /// ??????? int nInit; /// ????????????:0??????????????????,?????????????? 1??????? 2?????? char szIPv4Address[DH_COMMON_STRING_32]; /// IPv4??? char szIPv4SubnetMask[DH_COMMON_STRING_32]; /// IPv4???????? char szIPv4DefaultGateway[DH_COMMON_STRING_32]; /// IPv4??????? BOOL bIPv4DhcpEnable; /// IPv4??????DHCP char szIPv6Address[DH_COMMON_STRING_32]; /// IPv6??? char szIPv6DefaultGateway[DH_COMMON_STRING_32]; /// IPv6??????? char szIPv6LinkLocalAddress[DH_COMMON_STRING_32]; /// IPv6???????????,??????????,?????Gateway BOOL bIPv6DhcpEnable; /// IPv6??????Dhcp char szProtocol[DH_COMMON_STRING_32]; /// ?????????? }NET_DEVICE_DISCOVERY_INFO; ///@brief ????????????????????????,lAttachHandle??CLIENT_AttachDeviceDiscovery?????, pDeviceInfo???????, nDeviceNum?????????????? typedef void (CALLBACK *fAttachDeviceDiscoveryCB) (LLONG lAttachHandle, NET_DEVICE_DISCOVERY_INFO* pDeviceInfo, int nDeviceNum, LDWORD dwUser); ///@brief CLIENT_AttachDeviceDiscovery ?????????? typedef struct tagNET_IN_ATTACH_DEVICE_DISCOVERY { DWORD dwSize; EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE emSubClassID; /// ????????? fAttachDeviceDiscoveryCB cbNotify; /// ??????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_DEVICE_DISCOVERY; ///@brief CLIENT_AttachDeviceDiscovery ?????????? typedef struct tagNET_OUT_ATTACH_DEVICE_DISCOVERY { DWORD dwSize; } NET_OUT_ATTACH_DEVICE_DISCOVERY; ///@brief CLIENT_StartDeviceDiscovery ?????????? typedef struct tagNET_IN_START_DEVICE_DISCOVERY { DWORD dwSize; EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE emSubClassID; /// ????????? int nTimeOut; /// ???????,?????????????,??????????,?????????????. ?????? } NET_IN_START_DEVICE_DISCOVERY; ///@brief CLIENT_StartDeviceDiscovery ?????????? typedef struct tagNET_OUT_START_DEVICE_DISCOVERY { DWORD dwSize; } NET_OUT_START_DEVICE_DISCOVERY; ///@brief CLIENT_StopDeviceDiscovery ?????????? typedef struct tagNET_IN_STOP_DEVICE_DISCOVERY { DWORD dwSize; EM_NET_DEVICE_DISCOVERY_SUBCLASSID_TYPE emSubClassID; /// ????????? } NET_IN_STOP_DEVICE_DISCOVERY; ///@brief CLIENT_StopDeviceDiscovery ?????????? typedef struct tagNET_OUT_STOP_DEVICE_DISCOVERY { DWORD dwSize; } NET_OUT_STOP_DEVICE_DISCOVERY; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachDeviceDiscovery(LLONG lLoginID, const NET_IN_ATTACH_DEVICE_DISCOVERY *pInParam, NET_OUT_ATTACH_DEVICE_DISCOVERY *pOutParam, int nWaitTime); ///@brief ??????????, lAttachHandle?CLIENT_AttachDeviceDiscovery ????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachDeviceDiscovery(LLONG lAttachHandle); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartDeviceDiscovery(LLONG lLoginID, const NET_IN_START_DEVICE_DISCOVERY *pInParam, NET_OUT_START_DEVICE_DISCOVERY *pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopDeviceDiscovery(LLONG lLoginID, const NET_IN_STOP_DEVICE_DISCOVERY *pInParam, NET_OUT_STOP_DEVICE_DISCOVERY *pOutParam, int nWaitTime); ///@brief ??????????????????,pInBuf??pOutBuf??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDefenceArmMode(LLONG lLoginID, NET_IN_SET_DEFENCEMODE* pInBuf, NET_OUT_SET_DEFENCEMODE* pOutBuf = NULL, int nWaitTime = 1000); ///@brief ????????????????????,pInBuf??pOutBuf??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDefenceArmMode(LLONG lLoginID, NET_IN_GET_DEFENCEMODE* pInBuf, NET_OUT_GET_DEFENCEMODE* pOutBuf, int nWaitTime = 1000); ///@brief ?????????????????,pInBuf??pOutBuf??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetSubSystemArmMode(LLONG lLoginID, NET_IN_SET_SUBSYSTEMMODE* pInBuf, NET_OUT_SET_SUBSYSTEMMODE* pOutBuf = NULL, int nWaitTime = 1000); ///@brief ??????????????????,pInBuf??pOutBuf??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSubSystemArmMode(LLONG lLoginID, NET_IN_GET_SUBSYSTEMMODE* pInBuf, NET_OUT_GET_SUBSYSTEMMODE* pOutBuf, int nWaitTime = 1000); ///@brief ??????????????????,pInBuf??pOutBuf??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInBuf ??????????, ??????????????????? ///@param[out] pOutBuf ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetArmMode(LLONG lLoginID, NET_IN_GET_ARM_MODE* pInBuf, NET_OUT_GET_ARM_MODE* pOutBuf, int nWaitTime); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] nInsertCount ??????????????????? 20 ///@param[in] pInsertCards: ?????????????????????????????? NET_RECORDSET_ACCESS_CTL_CARD ????????????? nInsertCount ///@param[out] pRecNo: ??????????????? pInsertCards ???????-1 ????????????????????????? int ?????????? nInsertCount ///@param[in] reserved ??????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_InsertAccessControlCards(LLONG lLoginID, int nInsertCount, const NET_RECORDSET_ACCESS_CTL_CARD* pInsertCards, int* pRecNo, void* reserved = NULL, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ??????????? typedef struct tagNET_IMAGE_COMPARE_INFO { DWORD dwoffset; /// ???????????????????,????:??? DWORD dwLength; /// ??????,????:??? DWORD dwWidth; /// ?????? DWORD dwHeight; /// ????? BYTE byReserved[128]; /// ??????? } NET_IMAGE_COMPARE_INFO; ///@brief CLIENT_MatchTwoFace ??????? typedef struct tagNET_MATCH_TWO_FACE_IN { DWORD dwSize; NET_IMAGE_COMPARE_INFO stuOriginalImage; /// ?? NET_IMAGE_COMPARE_INFO stuCompareImage; /// ???? char *pSendBuf; /// ????????????? DWORD dwSendBufLen; /// ??????? } NET_MATCH_TWO_FACE_IN; ///@brief CLIENT_MatchTwoFace ??????? typedef struct tagNET_MATCH_TWO_FACE_OUT { DWORD dwSize; int nSimilarity; /// ?????????????,????0~100 } NET_MATCH_TWO_FACE_OUT; ///@brief ????????????????????faceRecognitionServer.matchTwoFace,pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MatchTwoFaceImage(LLONG lLoginID, const NET_MATCH_TWO_FACE_IN *pstInParam, NET_MATCH_TWO_FACE_OUT *pstOutParam, int nWaitTime = NET_INTERFACE_DEFAULT_TIMEOUT); ///@brief ????????? typedef enum tagEM_DECODE_FRAME_TYPE { EM_FRAME_TYPE_UNKNOWN = -1, /// ????? EM_FRAME_TYPE_VIDEO = 0, /// ???? EM_FRAME_TYPE_AUDIO = 1, /// ???? }EM_DECODE_FRAME_TYPE; ///@brief ??????????? typedef struct tagNET_FRAME_INFO_EX { DWORD dwSize; EM_DECODE_FRAME_TYPE emFrameType; ///????????,????????? int nFrameSeq; ///???? int nStamp; ///??????,???????? int nWidth; ///?????,????????.???????????????0. int nHeight; ///?????,???????????????0 int nFrameRate; ///????????????????? int nChannels; ///???????? int nBitPerSample; ///??????????? int nSamplesPerSec; ///?????????? int nRemainData; ///????????????? NET_TIME_EX nDataTime; ///??? }NET_FRAME_INFO_EX; ///@brief ???????? typedef struct tagNET_FRAME_DECODE_INFO { DWORD dwSize; EM_DECODE_FRAME_TYPE emFrameType; ///?????,?????FRAME_INFO_EX??nFrameType??? void* pAudioData; ///???????,????????? int nAudioDataLen; ///?????????? void* pVideoData[3]; ///??????????YUV???????? int nStride[3]; ///?????YUV???????????? int nWidth[3]; ///?????YUV????????????? int nHeight[3]; ///?????YUV???????????? }NET_FRAME_DECODE_INFO; ///@brief ?????????? typedef void (CALLBACK *fDecCallBack)(LLONG lLoginID, LLONG lPlayHandle, NET_FRAME_DECODE_INFO* pFrameDecodeInfo, NET_FRAME_INFO_EX* pFrameInfo, LDWORD dwUserData, LLONG nReserved); ///@brief ????????????? ///@param[in] cbDecCallBack ?????????? ///@param[in] dwUserData ?????????? ///@param[in] nReserved ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API void CALL_METHOD CLIENT_SetDecCallBack(fDecCallBack cbDecCallBack, LDWORD dwUserData, LLONG nReserved = 0); ///@brief ?????????????----??? ///@param[in] cbDecCallBack ?????????? ///@param[in] dwUserData ?????????? ///@param[in] emVideoStreamType ?????? ///@param[in] nReserved ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API void CALL_METHOD CLIENT_SetDecCallBackEx(fDecCallBack cbDecCallBack, LDWORD dwUserData, NET_VIDEOSTREAM_TYPE emVideoStreamType, LLONG nReserved); ///@brief ??????????(????????EncodePlane????emCfgOpType == NET_EM_CFG_ENCODE_PLAN) ///@param[in] lLoginID ?????? ///@param[in] emCfgOpType ???????????? ///@param[in] nChannelID ????? ///@param[out] lpOutBuffer ????????????? ///@param[in] dwOutBufferSize ????????????????? ///@param[in] nWaittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevDefaultConfig(LLONG lLoginID, NET_EM_CFG_OPERATE_TYPE emCfgOpType, int nChannelID, LPVOID lpOutBuffer, DWORD dwOutBufferSize, int nWaittime); #define NET_CUSTOM_PARKING_SPACE_NUMBER_MAX_LEN 32 /// ?????t???????? ///@brief ??????????? typedef enum tagEM_PARKINGSPACE_LIGHT_COLOR { EM_PARKINGSPACE_LIGHT_COLOR_UNKNOWN, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_RED, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_YELLOW, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_GREEN, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_BLUE, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_PURPLE, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_WHITE, /// ??? EM_PARKINGSPACE_LIGHT_COLOR_PINK, /// ??? }EM_PARKINGSPACE_LIGHT_COLOR; ///@brief ?????????? typedef enum tagEM_PARKINGSPACE_LIGHT_STATE { EM_PARKINGSPACE_LIGHT_STATE_UNKNOWN = -1, /// ??? EM_PARKINGSPACE_LIGHT_STATE_OFF, /// ?? EM_PARKINGSPACE_LIGHT_STATE_ON, /// ?? EM_PARKINGSPACE_LIGHT_STATE_GLINT, /// ??? EM_PARKINGSPACE_LIGHT_STATE_LAST_STATE, /// ??????? }EM_PARKINGSPACE_LIGHT_STATE; ///@brief ?????????????????????? typedef struct tagNET_PARKING_SPACE_LIGHT_PLAN_INFO { EM_PARKINGSPACE_LIGHT_COLOR emColor; /// ??? EM_PARKINGSPACE_LIGHT_STATE emState; /// ?? int nKeepTime; /// ???????,??????-1??????? BYTE byReserved[128]; /// ??????? }NET_PARKING_SPACE_LIGHT_PLAN_INFO; ///@brief ????????????????????? typedef struct tagNET_IN_SET_PARKING_SPACE_LIGHT_PLAN { DWORD dwSize; /// ??????? int nPhysicalLane; /// ????????????????????????.??????????????????? char szCustomParkNo[NET_CUSTOM_PARKING_SPACE_NUMBER_MAX_LEN]; /// ?????t????????????????????????????????? int nLightPlanNum; /// ????????? NET_PARKING_SPACE_LIGHT_PLAN_INFO* pstuLightPlan; /// ??????????????????????????? UINT nChannel; /// ????????0?????????????????????????????????????????? }NET_IN_SET_PARKING_SPACE_LIGHT_PLAN; ///@brief ?????????????????????? typedef struct tagNET_OUT_SET_PARKING_SPACE_LIGHT_PLAN { DWORD dwSize; /// ??????? }NET_OUT_SET_PARKING_SPACE_LIGHT_PLAN; ///@brief ???????????????????????,pNetDataIn??pNetDataOut???????????? ///@param[in] lLoginID ?????? ///@param[in] pNetDataIn ??????????, ??????????????????? ///@param[out] pNetDataOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetParkingSpaceLightPlan(LLONG lLoginID,const NET_IN_SET_PARKING_SPACE_LIGHT_PLAN* pNetDataIn,NET_OUT_SET_PARKING_SPACE_LIGHT_PLAN* pNetDataOut,int nWaitTime); ///@brief CLIENT_SyncParkingInfo ?????????????????????? typedef struct tagNET_IN_SYNC_PARKING_INFO { DWORD dwSize; /// ??????? int nChannel; /// ????? char szParkingNum[32]; /// ??????? DWORD dwPresetNum; /// ?????? BOOL bHaveCar; /// ??????????? BOOL bParkingFault; /// ????????????? int nSnapTimes; /// ?????????????????0-5?? int nSnapIntervel; /// ????????????????3-10?? }NET_IN_SYNC_PARKING_INFO; ///@brief CLIENT_SyncParkingInfo ??????????????????????? typedef struct tagNET_OUT_SYNC_PARKING_INFO { DWORD dwSize; /// ??????? }NET_OUT_SYNC_PARKING_INFO; ///@brief ???????????????????,??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pNetIn ??????????, ??????????????????? ///@param[out] pNetOut ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SyncParkingInfo(LLONG lLoginID, const NET_IN_SYNC_PARKING_INFO* pNetIn, NET_OUT_SYNC_PARKING_INFO* pNetOut, int nWaitTime); /************************************************************************ ** ?????????????????????? ***********************************************************************/ ///@brief ?????????????? typedef struct tagDEV_ALARM_OBJECTSTRUCTLIZE_PIC_INFO { char szCutPicPath[MAX_PATH]; /// ?????????????HTTP???? DWORD dwWidth; /// ?????? DWORD dwHeight; /// ????? BYTE byReserved[256]; /// ??????? } DEV_ALARM_OBJECTSTRUCTLIZE_PIC_INFO; ///@brief ????????????????????????????? typedef struct tagDEV_PERSON_CONDITION_RESULT_FEATURE_INFO { EM_DEV_EVENT_FACEDETECT_SEX_TYPE emSex; /// ??? BYTE byAge; /// ???? BYTE byCall; /// ???????? , 0-????? 1-?????? 2-???? BYTE byHat; /// ??????? , 0-????? 1-??????? 2-????? BYTE byBag; /// ???? , 0-????? 1-?????? 2-???? BYTE byUmbrella; /// ?????? , 0-????? 1-?????? 2-???? BYTE byGlasses; /// ??????? , 0-????? 1-??????? 2-????? BYTE byReserved1[2]; /// ?????? EM_DEV_EVENT_FACEDETECT_FEATURE_TYPE emEmotion; /// ????:???,???, ????, ???, ????, ????, ????, ???? NET_COLOR_RGBA stuUpperBodyColor; /// ???????? NET_COLOR_RGBA stuLowerBodyColor; /// ????????? BYTE byReserved[256]; /// ??????? } DEV_PERSON_CONDITION_FEATURE_INFO,DEV_PERSON_RESULT_FEATURE_INFO; ///@brief ?????????????? EVENT_IVS_OBJECTSTRUCTLIZE_PERSON typedef struct tagDEV_EVENT_OBJECTSTRUCTLIZE_PERSON_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? BYTE bReserved1[4]; /// ?????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; char szFilePath[MAX_PATH]; /// ?????????? DEV_PERSON_RESULT_FEATURE_INFO stuPersonFeatrue; /// ???????? NET_RECT stuBoundingBoxRect; /// ?????????????????????,Rect???8192????? DEV_ALARM_OBJECTSTRUCTLIZE_PIC_INFO stuImageInfo; /// ???????????????? int nImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_OBJECTSTRUCTLIZE_PERSON_INFO; ///@brief ?????????????????(???????????????????etc),????????????????????????????????????????????????????????????????????????. typedef struct tagDEV_EVENT_OBJECTSTRUCTLIZE_NONMOTOR_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? BYTE bReserved1[4]; /// ?????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? int nEventAction; /// ???????,0??????????,1???????????????,2????????????????; char szFilePath[MAX_PATH]; /// ?????????? char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN];/// ??????? DEV_PERSON_RESULT_FEATURE_INFO stuPersonFeatrue; /// ???????????????? NET_RECT stuBoundingBoxRect; /// ????????????????????????,Rect???8192????? DEV_ALARM_OBJECTSTRUCTLIZE_PIC_INFO stuImageInfo; /// ??????????????????? int nImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),????? NET_RESERVED_COMMON BYTE bReserved[1024]; /// ???????,???????. } DEV_EVENT_OBJECTSTRUCTLIZE_NONMOTOR_INFO; ///@brief ?????????????????? DH_ALARM_TUMBLE_DETECTION ???? typedef struct tagALARM_TUMBLE_DETECTION_INFO { int nAction; /// ???????,1??????????,2???????????; int nChannelID; /// ????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int UTCMS; /// UTC???????????? EM_CLASS_TYPE emClassType; /// ??????????????? int nObjectID; /// ???ID char szObjectType[DH_COMMON_STRING_16]; /// ????????,???????: /// "Unknown", "Human", "Vehicle", "Fire", "Smoke", "Plate", "HumanFace", /// "Container", "Animal", "TrafficLight", "PastePaper", "HumanHead", "BulletHole", "Entity" NET_RECT stuBoundingBox; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nTriggerType; /// ???????? -1: ??? 0: ?????? 1: ??? 2: ??? int nSubType; /// ????????????? -1:??? 0: ??????????1: ??????????2: ???????? char szMac[32]; /// ??????????Mac??? BYTE byReserved[984]; /// ??????? }ALARM_TUMBLE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TUMBLE_DETECTION(??????????)??????????????? typedef struct tagDEV_EVENT_TUMBLE_DETECTION_INFO { int nChannelID; /// ????? char szName[DH_EVENT_NAME_LEN]; /// ??????? int nAction; /// ???????,1???????????????,2????????????????; double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID int UTCMS; /// UTC???????????? EM_CLASS_TYPE emClassType; /// ??????????????? int nObjectID; /// ???ID char szObjectType[DH_COMMON_STRING_16]; /// ????????,???????: ///"Unknown", "Human", "Vehicle", "Fire", "Smoke", "Plate", "HumanFace", /// "Container", "Animal", "TrafficLight", "PastePaper", "HumanHead", "BulletHole", "Entity" NET_RECT stuBoundingBox; /// ????????? char szSerialUUID[22]; /// ???????????????????? /// ??????????21??????????\0?? /// ?2??%d%d:01-??????, 02-??, 03-???, 99-???? /// ????14??YYYYMMDDhhmmss:??????????? /// ??5??%u%u%u%u%u??????ID????00001 SCENE_IMAGE_INFO stuSceneImage; /// ??????? NET_IMAGE_INFO_EX2 *pstuImageInfo; /// ????????? int nImageInfoNum; /// ????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nDetectRegionNum; /// ????????? NET_POINT_EX stuDetectRegion[20]; /// ????? BYTE bReserved[834]; /// ??????? } DEV_EVENT_TUMBLE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_SPILLEDMATERIAL_DETECTION (???????????)??????????????? typedef struct tagDEV_EVENT_SPILLEDMATERIAL_DETECTION_INFO { int nChannelID; /// ????? char szName[128]; /// ??????? char bReserved[4]; /// ?????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID DH_MSG_OBJECT_EX stuObjects[MAX_OBJECT_NUM_EX]; /// ????????? int nObjectNum; /// ????????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? DH_POINT stuDetectLine[DH_MAX_DETECT_LINE_NUM]; /// ???????? int nDetectLineNum; /// ????????????? DH_POINT stuTrackLine[DH_MAX_TRACK_LINE_NUM];/// ????????? int nTrackLineNum; /// ??????????????? BYTE bEventAction; /// ???????,0??????????,1???????????????,2????????????????; BYTE bReserved1[3]; /// ??????? NET_CROSSLINE_DIRECTION_INFO emDirection; /// ??????????,??nObjectNum > 0??????????????stuObjects?????emPersonDirection???????? int nImageIndex; /// ???????, ???????(???????)????????????, ??0??? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESERVED_COMMON int nSourceIndex; /// ??????????index,-1???????????,-1??????????? char szSourceDevice[MAX_PATH]; /// ?????????????,???????????????????????? unsigned int nOccurrenceCount; /// ????????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? BYTE byReserved[1028]; /// ???????,???????. }DEV_EVENT_SPILLEDMATERIAL_DETECTION_INFO; ///@brief ??????????? typedef struct tagCITIZEN_PICTURE_COMPARE_IMAGE_INFO { DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? WORD wWidth; /// ??????, ????:???? WORD wHeight; /// ?????, ????:???? BYTE byReserved[256]; /// ??????? }CITIZEN_PICTURE_COMPARE_IMAGE_INFO; ///@brief ?????? typedef enum tagCITIZEN_PICTURE_COMPARE_TYPE { CITIZEN_PICTURE_COMPARE_TYPE_UNKNOWN = -1, CITIZEN_PICTURE_COMPARE_TYPE_LOCAL, /// ????????? CITIZEN_PICTURE_COMPARE_TYPE_FACEMAP, /// ??????? }CITIZEN_PICTURE_COMPARE_TYPE; ///@brief ?????????????? typedef struct tagCITIZEN_PICTURE_COMPARE_IMAGE_INFO_EX { CITIZEN_PICTURE_COMPARE_TYPE emType; /// ?????? DWORD dwOffSet; /// ??????????????????????????, ????:??? DWORD dwFileLenth; /// ???????, ????:??? WORD wWidth; /// ??????, ????:???? WORD wHeight; /// ?????, ????:???? BYTE byReserved[64]; /// ??????? }CITIZEN_PICTURE_COMPARE_IMAGE_INFO_EX; ///@brief ??????????? typedef struct tagNET_CARDNOARRAY_INFO { int nCardNum; /// ??????? char szCardInfo[5][64]; /// ??????? BYTE byReserved[1024]; /// ??????? }NET_CARDNOARRAY_INFO; ///@brief ?????????? typedef struct tagNET_FINGERPRINT_INFO { int nFingerNum; /// ??????? char szFingerInfo[8][2048]; /// ?????? BYTE byReserved[1024]; /// ??????? }NET_FINGERPRINT_INFO; ///@brief ?????? typedef enum tagEM_CARD_TYPE { EM_CARD_TYPE_UNKNOWN, /// ??? EM_CARD_TYPE_NORMAL, /// ????? EM_CARD_TYPE_ID, /// ID?? EM_CARD_TYPE_CPU, /// CPU?? EM_CARD_TYPE_IDENTITY, /// ????? EM_CARD_TYPE_ENCRYPTION_IC, /// ????IC?? }EM_CARD_TYPE; ///@brief ?????????????????????????????????????????????????????????????? ///@brief ??????????? EVENT_IVS_CITIZEN_PICTURE_COMPARE typedef struct tagDEV_EVENT_CITIZEN_PICTURE_COMPARE_INFO { /*???????*/ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0???????, -1?????? double dbPTS; /// ????(?????????) char szName[DH_EVENT_NAME_LEN]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /*?????????*/ bool bCompareResult; /// ????????,??????????????????????,true??????,false?????? BYTE nSimilarity; /// ?????????????,????????,????[1,100] BYTE nThreshold; /// ??????,????[1,100] EM_CITIZENIDCARD_SEX_TYPE emSex; /// ??? int nECType; /// ????(????DEV_EVENT_ALARM_CITIZENIDCARD_INFO??nECType????) char szCitizen[DH_COMMON_STRING_64]; /// ???????? char szAddress[DH_COMMON_STRING_256]; /// ?? char szNumber[DH_COMMON_STRING_64]; /// ????? char szAuthority[DH_COMMON_STRING_256]; /// ??????? NET_TIME stuBirth; /// ????????(??????) NET_TIME stuValidityStart; /// ???????????????(??????) BOOL bLongTimeValidFlag; /// ???? TRUE, ??????? ???????????,??? stuValidityEnd ??????? /// ???? FALSE, ??? ??????? ?? stuValidityEnd ? NET_TIME stuValidityEnd; /// ???????????????(??????) CITIZEN_PICTURE_COMPARE_IMAGE_INFO stuImageInfo[2]; /// ?????????????????????????????????? char szCardNo[DH_COMMON_STRING_32]; /// IC???? char szCellPhone[DH_COMMON_STRING_20]; /// ?????????????????????? NET_EXTENSION_INFO stuExtensionInfo; /// ?????? CITIZEN_PICTURE_COMPARE_IMAGE_INFO_EX stuImageInfoEx[6]; /// ???????? char szCallNumber[20]; /// ???????? NET_ACCESS_DOOROPEN_METHOD emDoorOpenMethod; /// ?????????????????????????? UINT nEventGroupID; /// ???ID,????????????????? UINT nEventType; /// ????????0?????????? 1?????????? 2??????? 3???????????? 4???????????? 9?????????-(?????????????????????????????????????? char szUserID[32]; /// ????????????ID char szBuildingNo[16]; /// ??? char szBuildingUnitNo[16]; /// ????? char szBuildingRoomNo[16]; /// ????? UINT nFaceIndex; /// ?????? EM_MASK_STATE_TYPE emMask; /// ?????? BOOL bManTemperature; /// ???????????????? NET_MAN_TEMPERATURE_INFO stuManTemperatureInfo; /// ?????????, bManTemperature ?TRUE ????? double dbBulkOilQuantity; /// ?????? int nScore; /// ??????????? NET_CARDNOARRAY_INFO* pstuCardNoArray; /// ??????????? NET_FINGERPRINT_INFO* pstuFingerPrint; /// ?????????? char szIDPhysicalNumber[20]; /// ???????????????????? EM_CARD_TYPE emCardType; /// ?????? int nCardTypeNum; /// ????????????? EM_CARD_TYPE arrCardTypeArray[5]; /// ?????????? UINT nVisitorNumber; /// ??????? char szTrafficPlate[32]; /// ?????? char szRespondentsName[32]; /// ?????????????????????????? char szStudentNum[32]; /// ????????????????FFFFFF??,??????????????????????????? }DEV_EVENT_CITIZEN_PICTURE_COMPARE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_PARKING_ON_RIGHT_TURN_ROUTE (????????)???????????????? typedef struct tagDEV_EVENT_TRAFFIC_PARKING_ON_RIGHT_TURN_ROUTE_INFO { int nChannelID; /// ?????,??0??? int nAction; /// ???????,0??????????,1???????????????,2????????????????; double dbPTS; /// ????(?????????) char szName[DH_EVENT_NAME_LEN]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nRuleID; /// ??????,????????????????????????????0 DH_MSG_OBJECT stuObject; /// ????????? DH_MSG_OBJECT stuVehicle; /// ??????? int nLane; /// ????????? DH_EVENT_FILE_INFO stuFileInfo; /// ???????????? NET_TIME_EX stuStartParkingTime; /// ????????? int nTriggerType; /// ????????,0??????,1???,2??? int nMark; /// ?????????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nSequence; /// ?????????,??3,2,1,1?????????,0?????????(bEventAction=2??????????) int nAlarmIntervalTime; /// ?????????,????:??(???????????????,??????????????????,????????????????????????????????,??????????????????) int nParkingAllowedTime; /// ??????????,???????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[DH_MAX_DETECT_REGION_NUM]; /// ?????????? DWORD dwSnapFlagMask; /// ?????(????),?????NET_RESEED_COMMON DH_RESOLUTION_INFO stuResolution; /// ??????????? EVENT_INTELLI_COMM_INFO stuIntelliCommInfo; /// ?????????????? NET_GPS_INFO stuGPSInfo; /// GPS??? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BOOL bHasNonMotor; /// ???????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ??????????? UINT nParkingDuration; /// ??????????, ????: ?? BYTE byPreAlarm; /// ?????????????,0 ??????????1 ??????(???????????????????????????????????????)???????????????????????????????????????????????????, char szReserved[1024]; /// ???????,???????. } DEV_EVENT_TRAFFIC_PARKING_ON_RIGHT_TURN_ROUTE_INFO; ///@brief ??????? EVENT_IVS_COLLISION_CONFLICT (?????????)????????????????? typedef struct tagNET_DEV_EVENT_COLLISION_CONFLICT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? NET_3DFLOAT_POINT stuPosition; /// ??????? NET_GPS_POSITION stuGPSPosition; /// ?????GPS???? NET_VEHICLE_FUSED_OBJECT stuObjects[4]; /// ??????????????? int nObjectsCount; /// ??????????????? UINT nLeftTime; /// ?????????TTC??????s,0????????? UINT nType; /// ???????: 0-??? 1-???? 2-??? 3-???? float fConflictLevel; /// ?????????????0-1????????????<=0.5??????? >0.5?????? float fConfidence; /// ????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_COLLISION_CONFLICT_INFO; ///@brief ??????? EVENT_IVS_PHOTOGRAPH_DETECTION (?????????????)????????????????? typedef struct tagNET_DEV_EVENT_PHOTOGRAPH_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? double dbPTS; /// ??????????,???????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? UINT nPresetID; /// ?????????????? int nDetectRegionCount; /// ??????????? NET_POINT_EX stuDetectRegion[20]; /// ??????????????? char szResvered1[4]; /// ?????? int nObjectCount; /// ?????????????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szDriverID[32]; /// ???ID NET_GPS_INFO stuGPSInfo; /// GPS??? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_PHOTOGRAPH_DETECTION_INFO; ///@brief ??????? EVENT_IVS_REFUELING_GUN_PERSON (???????????)????????????????? typedef struct tagNET_DEV_EVENT_REFUELING_GUN_PERSON_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? INT64 nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? double dbPTS; /// ??????????,???????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? NET_VAOBJECT_ANIMAL_INFO stuObjects[8]; /// ????????????? int nObjectCount; /// ????????????????? int nDetectRegionCount; /// ??????????? NET_POINT_EX stuDetectRegion[20]; /// ??????????????? char szUserName[32]; /// ??????? UINT nPresetID; /// ?????????????? int nType; /// ??????? 0????? 1????? 2????????? int nSex; /// ??? 0????? 1???? 2??? int nAgeSeg; /// ????? 0????? 2????? 10?????? 28?????? 50?????? 60?????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_REFUELING_GUN_PERSON_INFO; ///@brief ??????? EVENT_IVS_AUDIO_MUTATION (?????????)????????????????? typedef struct tagNET_DEV_EVENT_AUDIO_MUTATION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[32]; /// ??????? NET_TIME stuStartTime; /// ?????? UINT nACK; /// ????????ID int nGroupID; /// GroupID?????ID double dbPTS; /// ??????????,???????? NET_TIME_EX stuUTC; /// ?????????? UINT nEventID; /// ?????? EM_AUDIO_MUTATION_ALARM_TYPE emAudioType; /// ???????? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_AUDIO_MUTATION_INFO; ///@brief ??????? EVENT_IVS_OBJECT_APPEAR_DETECTION (?????????)????????????????? typedef struct tagNET_DEV_EVENT_OBJECT_APPEAR_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? NET_TIME_EX stuUTC; /// ?????????? UINT nRuleID; /// ????????????? UINT nEventID; /// ?????? UINT nSequence; /// ???? int nFrameSequence; /// ??????????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? char szReserved1[4]; /// ?????? int nObjectCount; /// ?????????????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_OBJECT_APPEAR_DETECTION_INFO; ///@brief ??????? EVENT_IVS_OBJECT_DISAPPEAR_DETECTION (?????????)????????????????? typedef struct tagNET_DEV_EVENT_OBJECT_DISAPPEAR_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? NET_TIME_EX stuUTC; /// ?????????? UINT nRuleID; /// ????????????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? UINT nEventID; /// ?????? UINT nSequence; /// ???? int nFrameSequence; /// ??????????? NET_POINT_EX stuDetectRegion[20]; /// ???????? int nDetectRegionCount; /// ??????????? int nObjectCount; /// ?????????????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_OBJECT_DISAPPEAR_DETECTION_INFO; ///@brief ??????? EVENT_IVS_OBJECT_STATE_DETECTION (????????)????????????????? typedef struct tagNET_DEV_EVENT_OBJECT_STATE_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? UINT nRuleID; /// ????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? UINT nEventID; /// ?????? double dbPTS; /// ??????????,???????? UINT nSequence; /// ???? int nFrameSequence; /// ??????????? NET_POINT_EX stuDetectRegion[20]; /// ???????? int nDetectRegionCount; /// ??????????? int nObjectCount; /// ?????????????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? UINT nObjectStatus; /// ?????, 1:????, 2:??, 0:??? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_OBJECT_STATE_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAPPED_IN_LIFT_DETECTION (??????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAPPED_IN_LIFT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? UINT nRuleID; /// ????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? UINT nEventID; /// ?????? UINT nPresetID; /// ??????????????, ??1???, 0?????????? UINT nTrappedTime; /// ???????, ????s ,????10s UINT nCurrentNumber; /// ????????????? UINT nElevatorWorkState; /// ??????????,0:???, 1:??????, 2:????????, 3:???????? char szElevatorFloor[32]; /// ????????????,????255 NET_POINT_EX stuDetectRegion[20]; /// ???????? int nDetectRegionNum; /// ??????????? int nObjectsNum; /// ?????????????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_TRAPPED_IN_LIFT_DETECTION_INFO; ///@brief ??????? DH_ALARM_TRAPPED_IN_LIFT_DETECTION (??????????)????????????????? typedef struct tagNET_ALARM_TRAPPED_IN_LIFT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? UINT nRuleID; /// ????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? int nGroupID; /// GroupID?????ID int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????? UINT nEventID; /// ?????? UINT nPresetID; /// ??????????????, ??1???, 0?????????? UINT nTrappedTime; /// ???????, ????s ,????10s UINT nCurrentNumber; /// ????????????? UINT nElevatorWorkState; /// ??????????,0:???, 1:??????, 2:????????, 3:???????? char szElevatorFloor[32]; /// ????????????,????255 NET_POINT_EX stuDetectRegion[20]; /// ???????? int nDetectRegionNum; /// ??????????? int nObjectsNum; /// ?????????????????? DH_MSG_OBJECT *pstuObjects; /// ?????????????? SCENE_IMAGE_INFO stuSceneImage; /// ???? char szReserved[1024]; /// ?????? }NET_ALARM_TRAPPED_IN_LIFT_DETECTION_INFO; ///@brief ????????? typedef struct tagNET_DVR_MILEAGE_UNIT { int nStartEnclosureID; /// ??????????? int nEndEnclosureID; /// ?????????? NET_TIME stuStartTime; /// ?????????????? NET_TIME stuEndTime; /// ???????,??????? int nMileage; /// ?????????????????????0.1Km int nTriggerCount; /// ???? char szReserved[256]; /// ?????? }NET_DVR_MILEAGE_UNIT; ///@brief ?????? typedef struct tagNET_CARD_INFO { char szCardID[64]; /// ???ID char szSwipeTime[32]; /// ????????????? char szReserved[256]; /// ?????? }NET_CARD_INFO; ///@brief ??????? typedef enum tagEM_SITE_TYPE { EM_SITE_TYPE_UNKNOW, /// ??? EM_SITE_TYPE_SIGNIN, /// ???/??? EM_SITE_TYPE_SIGNOUT, /// ???/??? EM_SITE_TYPE_NORMAL, /// ???????????????????? }EM_SITE_TYPE; ///@brief ????????? typedef struct tagNET_STATION_INFO { char szSiteName[64]; /// ????? EM_SITE_TYPE emSiteType; /// ????????????? char szReserved[252]; /// ?????? }NET_STATION_INFO; ///@brief ??????? typedef struct tagNET_TRIP_INFO { NET_TIME_EX stuStartTime; /// ???????????????? NET_TIME_EX stuEndTime; /// ????????????????? char szReserved[256]; /// ?????? }NET_TRIP_INFO; ///@brief ??????? DH_ALARM_SCHOOL_BUS_SWIPE_CARD (??????????)????????????????? typedef struct tagNET_ALARM_SCHOOL_BUS_SWIPE_CARD_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? NET_CARD_INFO stuCardInfo; /// ?????? NET_STATION_INFO stuStationInfo; /// ?????? NET_TRIP_INFO stuTripInfo; /// ??????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS??? char szReserved[1024]; /// ?????? }NET_ALARM_SCHOOL_BUS_SWIPE_CARD_INFO; ///@brief ?????????? typedef struct tagNET_CHANGE_CHANNEL_INFO { char szName[256]; /// ??????? char szSerialNo[64]; /// ?????? UINT nPort; /// ???? UINT nChannel; /// ????? char szMac[64]; /// Mac??? char szAddress[64]; /// ???????????? char szProtocolType[32]; /// ????????????????? char szOperationType[64]; /// ??????????????????"Add"(???????)???"Delete"??????????????"Modify"????????????? char szReserved[1024]; /// ?????? }NET_CHANGE_CHANNEL_INFO; ///@brief ??????? DH_ALARM_CHANNEL_INFO_CHANGE (????????????)????????????????? typedef struct tagNET_ALARM_CHANNEL_INFO_CHANGE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? int nChannelInfosNum; /// ?????????????????? NET_CHANGE_CHANNEL_INFO* pstuChannelInfos; /// ??????????, ??nChannelInfosNum > 0????? char szReserved[1024]; /// ?????? }NET_ALARM_CHANNEL_INFO_CHANGE_INFO; ///@brief ??????? DH_ALARM_VEHICLE_TRIGGER_MODE (?????????)????????????????? typedef struct tagNET_ALARM_VEHICLE_TRIGGER_MODE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuStartTime; /// ?????? NET_TIME_EX stuStopTime; /// ??????? char szUrl[256]; /// Url???? NET_POLICE_VEHICLE_DATA stuPoliceVehicleData; /// ???????????? char szReserved[1024]; /// ?????? }NET_ALARM_VEHICLE_TRIGGER_MODE_INFO; ///@brief ??????? DH_ALARM_POLICE_VEHICLE_DATA_PUSH (????app???????????)????????????????? typedef struct tagNET_ALARM_POLICE_VEHICLE_DATA_PUSH_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? char szUrl[256]; /// Url???? NET_POLICE_VEHICLE_DATA stuPoliceVehicleData; /// ???????????? char szReserved[1024]; /// ?????? }NET_ALARM_POLICE_VEHICLE_DATA_PUSH_INFO; ///@brief ??????? DH_ALARM_INSUFFICIENT_QUOTA_PERFORMANCE (????????????????)????????????????? typedef struct tagNET_ALARM_INSUFFICIENT_QUOTA_PERFORMANCE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? BOOL bIsGroupNameValid; /// ?????????????????? char szGroupName[64]; /// ????????????????????????? char szReserved[1024]; /// ?????? }NET_ALARM_INSUFFICIENT_QUOTA_PERFORMANCE_INFO; ///@brief ??????? DH_ALARM_STORAGE_HEALTH_ALARM (SSD???????????)????????????????? typedef struct tagNET_ALARM_STORAGE_HEALTH_ALARM_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? float fLifePercent; /// ??????SD?????????????????? char szName[128]; /// ???????????? char szReserved[1024]; /// ?????? }NET_ALARM_STORAGE_HEALTH_ALARM_INFO; ///@brief ??????? EVENT_IVS_LIGHT_DETECTION (????????)????????????????? typedef struct tagNET_DEV_EVENT_LIGHT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nEventID; /// ?????? double dbPTS; /// ??????????,???????? char szType[64]; /// ?????? int nCount; /// Count ????????????? UINT nPresetID; /// ?????????????????1??????0?????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_LIGHT_DETECTION_INFO; ///@brief ??????? EVENT_IVS_COVERING_DETECTION (??????????)????????????????? typedef struct tagNET_DEV_EVENT_COVERING_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nEventID; /// ?????? NET_EM_EVENT_DATA_TYPE emEventType; /// ????????????????????????????? char szObjectType[32]; /// ??????????????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_COVERING_DETECTION_INFO; ///@brief ??????? EVENT_IVS_ATM_SMASH_DETECTION (ATM?????????)????????????????? typedef struct tagNET_DEV_EVENT_ATM_SMASH_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? double dbPTS; /// ??????????,???????? UINT nEventID; /// ?????? UINT nPresetID; /// ?????????????????1??????0?????????? NET_POINT_EX stuDetectRegion[20]; /// ???????? int nDetectRegionNum; /// ??????????? int nObjectNum; /// ?????????????????? DH_MSG_OBJECT stuObjects[32]; /// ?????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_ATM_SMASH_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ASSISTANT_DRIVER_SMOKING (????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_ASSISTANT_DRIVER_SMOKING_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? int nLane; /// ?????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ?????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ?????????????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ?????????????????????? int nSequence; /// ?????????3-2-1/0??1????????????????0????????????, -1??? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_ASSISTANT_DRIVER_SMOKING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_ASSISTANT_DRIVER_CALLING (????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_ASSISTANT_DRIVER_CALLING_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? int nLane; /// ?????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ?????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ?????????????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ?????????????????????? int nSequence; /// ?????????3-2-1/0??1????????????????0????????????, -1??? char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_ASSISTANT_DRIVER_CALLING_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_PEOPLE_IN_MOTOR_ROUTE (???????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_PEOPLE_IN_MOTOR_ROUTE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? int nLane; /// ?????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ?????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ?????????????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ?????????????????????? int nViolationSnapSource; /// ???????, 0:???, 1:??? 2:??? 3:??? 4:??????????? 5:?????????? 6:???\?????????? 7:?????? 8:???????? 9:????? 10:?????? UINT nRuleID; /// ????????????? UINT nDSTTune; /// ????????, 0:???, 1:??????????????????, 2:?????????????????? UINT nTimeZone; /// ??????? UINT nEventType; /// ???????????, bit0??????????, bit1?????????? int nSequence; /// ?????????3-2-1/0??1????????????????0????????????, -1??? int nSpeed; /// ?????????km/h char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_PEOPLE_IN_MOTOR_ROUTE_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_PEOPLE_IN_NON_MOTOR_ROUTE (?????????????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_PEOPLE_IN_NON_MOTOR_ROUTE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? int nLane; /// ?????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? UINT nEventID; /// ?????? double dbPTS; /// ??????????,???????? DH_MSG_OBJECT stuObject; /// ??????? DH_MSG_OBJECT stuVehicle; /// ?????????????????????? VA_OBJECT_NONMOTOR stuNonMotor; /// ?????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ?????????????????????? int nViolationSnapSource; /// ???????, 0:???, 1:??? 2:??? 3:??? 4:??????????? 5:?????????? 6:???\?????????? 7:?????? 8:???????? 9:????? 10:?????? UINT nRuleID; /// ????????????? UINT nDSTTune; /// ????????, 0:???, 1:??????????????????, 2:?????????????????? UINT nTimeZone; /// ??????? UINT nEventType; /// ???????????, bit0??????????, bit1?????????? int nSequence; /// ?????????3-2-1/0??1????????????????0????????????, -1??? int nSpeed; /// ?????????km/h char szReserved[1020]; /// ?????? }NET_DEV_EVENT_TRAFFIC_PEOPLE_IN_NON_MOTOR_ROUTE_INFO; ///@brief ??????? EVENT_IVS_GATA_HEIGHT_DETECTION (?????????)????????????????? typedef struct tagNET_DEV_EVENT_GATA_HEIGHT_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ?????????? UINT nEventID; /// ?????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? float fGateHeight; /// ??????????????? int nObjectNum; /// ?????????????????? DH_MSG_OBJECT stuObjects[8]; /// ?????????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? char szReserved[1024]; /// ?????? }NET_DEV_EVENT_GATA_HEIGHT_DETECTION_INFO; ///@brief ????????? typedef enum tagEM_CURRENT_OPERATE_MODE { EM_CURRENT_OPERATE_UNKNOWN, /// ??? EM_CURRENT_OPERATE_MULPERIOD, /// ????????? EM_CURRENT_OPERATE_MANUAL_CONTROL, /// ??????? EM_CURRENT_OPERATE_TURNOFFLIGHT_CONTROL, /// ?????? EM_CURRENT_OPERATE_ALLRED_CONTROL, /// ?????? EM_CURRENT_OPERATE_ADAPTFILTER_CONTROL, /// ???????????? EM_CURRENT_OPERATE_INDUCTION_CONTROL, /// ??????? EM_CURRENT_OPERATE_YELLOWFLASH_CONTROL, /// ???????? EM_CURRENT_OPERATE_SINGAL_ADAPTINVE, /// ??????????? EM_CURRENT_OPERATE_TMPPLATFORM_PLAN, /// ??????????? EM_CURRENT_OPERATE_TEMP_HAND, /// ???????? EM_CURRENT_OPERATE_REALTIME_CONTROL, /// ???????? EM_CURRENT_OPERATE_LIGHT_OFF, /// ????? EM_CURRENT_OPERATE_RED_FLASH, /// ?????? EM_CURRENT_OPERATE_GREEN_FLASH, /// ?????? EM_CURRENT_OPERATE_PEDESTRAIN_PRIORITY, /// ????????????? EM_CURRENT_OPERATE_CONFGOVERFLOW_CONTROL, /// ???????????? EM_CURRENT_OPERATE_NIGHT_REQUEST, /// ????????? }EM_CURRENT_OPERATE_MODE; ///@brief ????? typedef enum tagEM_CAMERA_STATUS { EM_CAMERA_UNKNOWN, /// ??? EM_CAMERA_RED, /// ??? EM_CAMERA_YELLOW, /// ??? EM_CAMERA_GREEN, /// ??? EM_CAMERA_RED_FLASH, /// ???? EM_CAMERA_YELLOW_FLASH, /// ???? EM_CAMERA_GREEN_FLASH, /// ???? EM_CAMERA_LIGHT_OFF, /// ??? }EM_CAMERA_STATUS; ///@brief ??????????? typedef struct tagRUN_PHASE_INFO { int nPhaseNum; /// ????????A?1 int nPhaseOrder; /// nt, ?????????????????????1?? A1?1??A2??????2 unsigned int nCarLamp; /// ?????????????????????????????????bit??????1 unsigned int nPsgLamp; /// ?????????????????????????????????bit??????1 EM_CAMERA_STATUS emCameraStatus; /// ????? int nCntDown; /// ??????????????? BYTE byReserved[512]; /// ?????? }RUN_PHASE_INFO; ///@brief RTSC?????????, ?????????? DH_ALARM_RTSC_PHASE_RUNING typedef struct tagALARM_RTSC_PHASE_RUNNING_INFO { int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? EM_CURRENT_OPERATE_MODE emCurOperateMode; /// ????????? int nRunPhaseNum; /// ???????????? RUN_PHASE_INFO stRunPhaseInfo[16]; /// ??????????? BYTE byReserved[512]; /// ?????? }ALARM_RTSC_PHASE_RUNNING_INFO; ///@brief ??????????? typedef struct tagRUN_LAMP_INFO { int nLampNum; /// ?????? EM_CAMERA_STATUS emCameraStatus; /// ????? int nCntDown; /// ?????????????? BYTE byReserved[256]; /// ?????? }RUN_LAMP_INFO; ///@brief RTSC????????, ?????????? DH_ALARM_RTSC_LAMP_RUNING typedef struct tagALARM_RTSC_LAMP_RUNNING_INFO { int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? EM_CURRENT_OPERATE_MODE emCurOperateMode; /// ????????? int nRunLampNum; /// ??????????? RUN_LAMP_INFO stuRunLampInfo[16]; /// ??????????? BYTE byReserved[512]; /// ?????? }ALARM_RTSC_LAMP_RUNNING_INFO; ///@brief ????? typedef enum tagEM_STATUS { EM_STATUS_UNKNOWN = -1, /// ??? EM_STATUS_INVALID, /// ???? EM_STATUS_NORMAL, /// ???????? EM_STATUS_FAULT, /// ?????? EM_STATUS_OTHER, /// ???? }EM_STATUS; ///@brief ???????? typedef enum tagEM_LAMP_TYPE { EM_LAMP_TYPE_UNKNOWN, /// ??? EM_LAMP_TYPE_STRAIGHT, /// ????????????? EM_LAMP_TYPE_LEFT, /// ????????????? EM_LAMP_TYPE_RIGHT, /// ????????????? EM_LAMP_TYPE_MOTORVEHICLE, /// ?????????? EM_LAMP_TYPE_LEFT_NOMOTOR, /// ?????????????? EM_LAMP_TYPE_RIGHT_NOMOTOR, /// ?????????????? EM_LAMP_TYPE_NOMOTOR, /// ??????????? EM_LAMP_TYPE_SIDEWALK, /// ??????????? EM_LAMP_TYPE_TURNAROUND, /// ??????? EM_LAMP_TYPE_LANE, /// ???????? EM_LAMP_TYPE_CROSSING, /// ???????? EM_LAMP_TYPE_FLASH_WARN, /// ?????????? EM_LAMP_TYPE_TRAM_DEDICATED_STRAIGHT, /// ?????f????????????? EM_LAMP_TYPE_TRAM_DEDICATED_LEFT, /// ?????f????????????? EM_LAMP_TYPE_TRAM_DEDICATED_RIGHT, /// ?????f????????????? }EM_LAMP_TYPE; ///@brief ????????????? typedef struct tagSTEP_SEQUENCE_INFO { int nLampColorCount; /// ??????? int nLampColor[4]; /// ??? ??????????EM_LAMP_TYPE?EM_LAMP_TYPE_STRAIGHT-EM_LAMP_TYPE_FLASH_WARN???int[0]????????????????int[1]????????????????int[2]????????????????int[3]???? /// ???????????EM_LAMP_TYPE_TRAM_DEDICATED_STRAIGHT-EM_LAMP_TYPE_TRAM_DEDICATED_RIGHT???int[0]?????????????????????int[1]???????????????????int[2]??????????????????int[3]???? /// ??????0?????1?????2??????3????? int nTime; /// ?????????????s?? BYTE byReserved[128]; /// ?????? }STEP_SEQUENCE_INFO; ///@brief ????/?????????? typedef struct tagLAMP_INFO { EM_LAMP_TYPE emLampType; /// ???????? int nLampNo; /// ?????? int nStepNumber; /// ????? int nStepSequenceInfoNum; /// ????????????????? STEP_SEQUENCE_INFO stuStepSequenceInfo[10]; /// ????????????? BYTE byReserved[256]; /// ?????? }LAMP_INFO; ///@brief ????????? typedef struct tagLAMP_GROUP_INFO { int nLampNo; /// ?????? EM_LAMP_TYPE emLampType; /// ???????? int nRemainTime; /// ???????????????????????????s?? int nLampColorCount; /// ?????????? int nLampColor[4]; /// ?????????????????1~12?,int[0]?????????????int[1]?????????????int[2]?????????????int[3]???? /// ???????????13~15???int[0]?????????????????????int[1]???????????????????int[2]??????????????????int[3]???? /// ?????? 0????? 1????? 2??????3????? BYTE byReserved[128]; /// ?????? }LAMP_GROUP_INFO; ///@brief ??????????? typedef struct tagENTER_INFO { int nEnterDir; /// ??????? int nLampNumber; /// ?????????????0~48?? int nLampGroupNum; /// ????????????? LAMP_GROUP_INFO stuLampGroupInfo[48]; /// ???????????????1??M?????????????????????????? BYTE byReserved[64]; /// ?????? }ENTER_INFO; ///@brief ???????? typedef struct tagLAMP_STATE { int nEnterNumber; /// ?????????????????????0~8?? int nEnterInfoNum; /// ??????????????? ENTER_INFO stuEnterInfo[8]; /// ?????????????????1??N???????????????????????????? BYTE byReserved[128]; /// ?????? }LAMP_STATE; ///@brief ?????? typedef enum tagEM_CONTROL_MODE { EM_CONTROL_UNKNOWN, /// ??? EM_CONTROL_YELLOW_FLASH, /// ???????? EM_CONTROL_MULITI_TIME, /// ????????? EM_CONTROL_MANUAL, /// ??????? EM_CONTROL_INDUCTION, /// ??????? EM_CONTROL_WIRELESS_COORDINATION, /// ????????????? EM_CONTROL_SINGLE_OPTIMIZATION, /// ???????????? EM_CONTROL_BUS_SINGAL, /// ??????????? EM_CONTROL_EMERGENCY_SINGAL, /// ??????????? EM_CONTROL_OTHER, /// ???? }EM_CONTROL_MODE; ///@brief ??????? typedef struct tagLANE_INFO_EX { DWORD nLaneType; /// ???????? BYTE byReserved[64]; /// ?????? }LANE_INFO_EX; ///@brief ????????????? typedef enum tagEM_LANE_RUNING_STATE { EM_LANE_RUNING_UNKNOWN, /// ??? EM_LANE_RUNING_UNBLOCKED, /// ??? EM_LANE_RUNING_BASIC_UNBLOCKED, /// ??????? EM_LANE_RUNING_LIGHT_CONGESTION, /// ?????? EM_LANE_RUNING_MIDDLE_CONGESTION, /// ??????? EM_LANE_RUNING_SERIOUS_CONGESTION, /// ??????? }EM_LANE_RUNING_STATE; ///@brief ???????????????? typedef struct tagLANE_STATE_INFO { UINT nType; /// ???????? /// ?????????Bit0~Bit15?????? Bit0????? Bit1????? Bit2????? Bit3????? Bit4???????? Bit5????? Bit6??????? Bit7????????? Bit8???????f Bit9~ Bit15???? ??1?????????0????????? EM_LANE_RUNING_STATE emLaneRunState; /// ????????????? BYTE byReserved[128]; /// ?????? }LANE_STATE_INFO; ///@brief ???????(0~8) typedef struct tagLANE_STATE_INFO_EX { UINT nType; /// ???????? /// ?????????Bit0~Bit15?????? Bit0????? Bit1????? Bit2????? Bit3????? Bit4???????? Bit5????? Bit6??????? Bit7????????? Bit8???????f Bit9~ Bit15???? ??1?????????0????????? BYTE byReserved[128]; /// ?????? }LANE_STATE_INFO_EX; ///@brief ???????????????? typedef struct tagENTER_LANE_STATE { int nEnterDir; /// ???????(0~359)??????????????????????????????????????? int nLaneNumber; /// ?????????????????????????????????????????? int nLaneInfoNum; /// ??????????? LANE_STATE_INFO_EX stuLaneInfoEx[8]; /// ???????(0~8) BYTE byReserved[128]; /// ?????? }ENTER_LANE_STATE; ///@brief ?????????? typedef struct tagLANE_STATE { int nEnterNumber; /// ???????????????????????????????????????? int nEnterLaneStateNum; /// ???????????????????? ENTER_LANE_STATE stuEnterLaneStateInfo[8]; /// ??????????????????0~8??????1??N?????????????????????????????????????? BYTE byReserved[128]; /// ?????? }LANE_STATE; ///@brief ??????? typedef struct tagCTRL_INFO { DWORD nType; /// ?????????Bit0?????? Bit1????????? Bit2????????? Bit3~Bit7?????? ??1?????????0????????? int nNo; /// ??? int nDir; /// ???? ????????????????????????????????????????????? int nStatus; /// ????/?????? 1?????? 2????? BYTE byReserved[128]; /// ?????? }CTRL_INFO; ///@brief ????/????????? typedef struct tagLANE_CTRL_STATE { int nNumber; /// ????/??????? int nCtrlNum; /// ??????????? CTRL_INFO stuCtrlInfo[64]; /// ???????(0-64) BYTE byReserved[128]; /// ?????? }LANE_CTRL_STATE; ///@brief ?????????? typedef struct tagSTEP_INFO { int nEnterDir; /// ??????? int nEnterLampNumber; /// ??????????? int nLampInfoNum; /// ?????????? LAMP_INFO stuLampInfo[10]; /// ??????(0~10??????1??M??????????????????????? BYTE byReserved[128]; /// ?????? }STEP_INFO; ///@brief ??????????????? typedef struct tagCUR_STEP_INFO { int nLampNumber; /// ?????????? int nEnterNumber; /// ??????????????????? int nStepInfoNum; /// ?????????????? STEP_INFO stuStepInfo[8]; /// ????????????0~8??????1??N???????????????????????? BYTE byReserved[128]; /// ?????? }CUR_STEP_INFO; ///@brief ????????????????????? typedef struct tagNEXT_STEP_INFO { int nLampNumber; /// ?????????? int nEnterNumber; /// ??????????????????? int nStepInfoNum; /// ?????????????? STEP_INFO stuStepInfo[8]; /// ????????????0~8??????1??N???????????????????????? BYTE byReserved[128]; /// ?????? }NEXT_STEP_INFO; ///@brief ???????????, ?????????? DH_ALARM_RTSC_RUNING typedef struct tagALARM_RTSC_RUNNING_INFO { int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? DWORD dwReportState; /// bit0:?????? /// bit1:?????? /// bit2:???????? /// bit3:?????????? /// bit4:????/???????????? /// bit5:??????????????? /// bit6: ????????????????????? int nLongitudeNum; /// ??????? double dbLongitude[3]; /// ????,?????????????(?????????) int nLatitudeNum; /// ??????? double dbLatitude[3]; /// ????,?????????????(?????????) double dbAltitude; /// ??????????? NET_TIME_EX UTC; /// ???????????????????UTC????????? EM_STATUS emStatus; /// ????? EM_CONTROL_MODE emControlMode; /// ?????? LAMP_STATE stuLampStateInfo; /// ???????? LANE_STATE stuLaneStateInfo; /// ?????????? LANE_CTRL_STATE stuLaneCtrlStateInfo; /// ????/????????? CUR_STEP_INFO stuCurStepInfo; /// ??????????????? NEXT_STEP_INFO stuNextStepInfo; /// ????????????????????? BYTE byReserved[256]; /// ?????? }ALARM_RTSC_RUNNING_INFO; ///@brief ???????????? typedef struct tagLAN_TRAFFIC_INFO { int nPeriod; /// ???????(??) int nLaneType; /// ???????? int nTrafficFlux; /// ?????????????????????????? int nAverageSpeed; /// ??????????????????????????km/h?? int nIntervalAverageSpeed; /// ?????????????????????????km/h?? int nTimeOccupyRatio; /// ?????????0-100?? int nSpaceOccupyRatio; /// ?????????0-100?? int nQueueLen; /// ?????? ??????? BYTE byReserved[128]; /// ?????? }LAN_TRAFFIC_INFO; ///@brief ????????????? typedef struct tagENTER_TRAFFIC_INFO { int nEnterDir; /// ?????????????????????????????????????????????? int nEnterLaneNumbner; /// ??????????? int nLanTrafficInfoNum; /// ???????????????? LAN_TRAFFIC_INFO stuLanTrafficInfo[8]; /// ??????????????0~8????????1??M????????????????????????????? BYTE byReserved[128]; /// ?????? }ENTER_TRAFFIC_INFO; ///@brief ???????? typedef struct tagTRAFFIC_INFO { int nEnterNumber; /// ???????? int nEnterTrafficInfoNum; /// ????????????????? ENTER_TRAFFIC_INFO stuEnterTrafficInfo[8]; /// ?????????????, ????1??N??????????????????????????? BYTE byReserved[128]; /// ?????? }TRAFFIC_INFO; ///@brief ??????????????? typedef struct tagENTER_STATE_INFO { int nEnterDir; /// ?????????????????????????????????????????????? int nLaneNumber; /// ???????? int nLaneStateInfoNum; /// ???????????????????? LANE_STATE_INFO stuLaneStateInfo[8]; /// ????????????????(0~8), ????1??N?????????????????????????????? BYTE byReserved[128]; /// ?????? }ENTER_STATE_INFO; ///@brief ???????????? typedef struct tagTRAFFIC_STATE { int nEnterNumber; /// ???????? int nEnterStateInfoNum; /// ??????????????????? ENTER_STATE_INFO stuEnterStateInfo[8]; /// ???????????????(0~8), ????1??N????????????????????????????? int nPeriod; /// ???????????????????1~255 BYTE byReserved[124]; /// ?????? }TRAFFIC_STATE; ///@brief ?????????? typedef enum tagEM_TRAFFIC_EVENT { EM_TRAFFIC_EVENT_UNKNOWN, /// ??? EM_TRAFFIC_EVENT_ACCIDENT, /// ?????? EM_TRAFFIC_EVENT_ROAD_BARRIERS, /// ??????? EM_TRAFFIC_EVENT_ROAD_AREAWATER, /// ?????? EM_TRAFFIC_EVENT_ROAD_SLIPPERY, /// ??????? EM_TRAFFIC_EVENT_ROAD_ICY, /// ?????? EM_TRAFFIC_EVENT_ROAD_CONSTRUCTION, /// ??????? }EM_TRAFFIC_EVENT; ///@brief ????????? typedef struct tagTRAFFIC_EVENT { char szCarId[128]; /// ?????????????????? char szPlateNumber[128]; /// ??????? int nDrivingDir; /// ?????????????????????????????????????????????? EM_TRAFFIC_EVENT emTrafficEvent; /// ?????? BYTE byReserved[128]; /// ?????? }TRAFFIC_EVENT; ///@brief ????????????? typedef struct tagCAR_INFO { char szCarId[128]; /// ?????????????????? char szPlateNumber[128]; /// ??????? EM_CAR_TYPE emCarType; /// ???????? int nSpeed; /// ????????????m/s?? int nAcceleration; /// ?????????????????m/s2?? int nHeadDirAngle; /// ??????????????????????????????????????????????? int nAlarm; /// ??????????????????????????????????????????????????????Bit0??????????????Bit1~Bit7?????? BYTE byReserved[256]; /// ?????? }CAR_INFO; ///@brief ?????????????, ?????????? DH_ALARM_RTSC_TRAFFIC typedef struct tagALARM_RTSC_TRAFFIC_INFO { int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? DWORD dwReportState; /// bit0:?????? /// bit1:?????? /// bit2:???????? /// bit3:?????????? /// bit4:????/???????????? /// bit5:??????????????? int nLongitudeNum; /// ??????? double dbLongitude[3]; /// ????,?????????????(?????????) int nLatitudeNum; /// ??????? double dbLatitude[3]; /// ????,?????????????(?????????) double dbAltitude; /// ??????????? NET_TIME_EX UTC; /// ???????????????????UTC????????? TRAFFIC_INFO stuTrafficInfo; /// ???????? TRAFFIC_STATE stuTrafficState; /// ???????????? CAR_INFO stuCarInfo; /// ????????????? TRAFFIC_EVENT stuTrafficEvent; /// ????????? BYTE byReserved[256]; /// ?????? }ALARM_RTSC_TRAFFIC_INFO; /*******************************????????????************************************************/ ///@brief ??????????? typedef enum tagEM_HY_VIOLATION_TYPE { EM_HY_VIOLATION_TYPE_UNKNWON = -1, /// ??? EM_HY_VIOLATION_TYPE_MOTOR_ALARM, /// ?????????????? EM_HY_VIOLATION_TYPE_MOTOR_WARN, /// ????????????? } EM_HY_VIOLATION_TYPE; ///@brief ????????????????, ?????????? EVENT_HY_FIRE_DETECTION typedef struct tagDEV_EVENT_HY_FIRE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? /* ????????? */ EM_CLASS_TYPE emClassType; /// ??????????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ????????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nSequence; /// ?????????/0??1????????????????0???????????? UINT nCount; /// ????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? PTZ_POSITION_UNIT stuPtzPostion; /// PTZ????????? float fDistance[2]; /// ?????????????????????,???????? ????????????X??Y???????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserve[1024]; /// ?????? } DEV_EVENT_HY_FIRE_DETECTION_INFO; ///@brief ??????????????????????, ?????????? DH_ALARM_HY_FIRE_DETECTION typedef struct tagALARM_HY_FIRE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? /* ????????? */ EM_TRIGGER_TYPE emTriggerType; /// ???????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ????????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nSequence; /// ?????????/0??1????????????????0???????????? UINT nCount; /// ????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? PTZ_POSITION_UNIT stuPtzPostion; /// PTZ????????? float fDistance[2]; /// ?????????????????????,???????? ????????????X??Y???????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserve[1024]; /// ?????? } ALARM_HY_FIRE_DETECTION_INFO; ///@brief ??????????????????, ?????????? EVENT_HY_SMOG_DETECTION typedef struct tagDEV_EVENT_HY_SMOG_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? /* ????????? */ EM_CLASS_TYPE emClassType; /// ??????????????? EM_TRIGGER_TYPE emTriggerType; /// ???????? int nRuleID; /// ????ID, ??????????????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ???????????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nSequence; /// ?????????/0??1????????????????0???????????? UINT nCount; /// ????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ??????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_HY_SMOG_DETECTION_INFO; ///@brief ????????????????????????, ?????????? DH_ALARM_HY_SMOG_DETECTION typedef struct tagALARM_HY_SMOG_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? /* ????????? */ EM_TRIGGER_TYPE emTriggerType; /// ???????? int nRuleID; /// ????ID, ??????????????????? DH_MSG_OBJECT stuVehicle; /// ??????? DH_MSG_OBJECT stuObject; /// ???????????? int nMark; /// ??????? int nSource; /// ????????????????? int nFrameSequence; /// ??????????? int nSequence; /// ?????????/0??1????????????????0???????????? UINT nCount; /// ????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stTrafficCar; /// ?????????? EVENT_COMM_INFO stuCommInfo; /// ??????? BYTE byReserved[1024]; /// ??????? } ALARM_HY_SMOG_DETECTION_INFO; ///@brief ??????????????????????, ?????????? EVENT_HY_INFIRE_PASSAGE_DETECTION typedef struct tagDEV_EVENT_HY_INFIRE_PASSAGE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? char szPresetName[64]; /// ????????????????? /* ????????? */ EM_CLASS_TYPE emClassType; /// ??????????????? int nRuleID; /// ????ID, ??????????????????? UINT nObjectNum; /// ????????????? DH_MSG_OBJECT stuObjects[64]; /// ??????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? UINT nCount; /// ????????????? EM_EVENT_LEVEL emEventLevel; /// ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_HY_INFIRE_PASSAGE_DETECTION_INFO; ///@brief ???????????????????????????, ?????????? DH_ALARM_HY_INFIRE_PASSAGE_DETECTION typedef struct tagALARM_HY_INFIRE_PASSAGE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? char szPresetName[64]; /// ????????????????? /* ????????? */ int nRuleID; /// ????ID, ??????????????????? UINT nObjectNum; /// ????????????? DH_MSG_OBJECT stuObjects[64]; /// ??????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? UINT nCount; /// ????????????? EM_EVENT_LEVEL emEventLevel; /// ??????? NET_GPS_STATUS_INFO stuGPSStatusInfo; /// GPS??? BYTE byReserved[1024]; /// ??????? } ALARM_HY_INFIRE_PASSAGE_DETECTION_INFO; ///@brief ??????????????????/?????????????????, ?????????? EVENT_HY_OUTFIRE_PASSAGE_DETECTION typedef struct tagDEV_EVENT_HY_OUTFIRE_PASSAGE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? char szPresetName[64]; /// ????????????????? /* ????????? */ EM_CLASS_TYPE emClassType; /// ??????????????? int nAlarmNum; /// ??????? int nNoMotorNum; /// ?????????????? int nCount; /// ????????????? UINT nObjectNum; /// ????????????? DH_MSG_OBJECT stuObjects[64]; /// ??????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? EM_HY_VIOLATION_TYPE emViolationAlarmType; /// ??????????? UINT nParkingDuration; /// ??????????????????, 0????????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? PTZ_POSITION_UNIT stuPtzPostion; /// PTZ????????? SCENE_IMAGE_INFO stuSceneImage; /// ??????? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_HY_OUTFIRE_PASSAGE_DETECTION_INFO; ///@brief ??????????????????/???????????????????????, ?????????? DH_ALARM_HY_OUTFIRE_PASSAGE_DETECTION typedef struct tagALARM_HY_OUTFIRE_PASSAGE_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????????1??? UINT nPresetID; /// ??????????????, ???0 ????????? char szPresetName[64]; /// ????????????????? /* ????????? */ UINT nAlarmNum; /// ??????? UINT nNoMotorNum; /// ?????????????? UINT nCount; /// ????????????? UINT nObjectNum; /// ????????????? DH_MSG_OBJECT stuObjects[64]; /// ??????????????? int nDetectRegionNum; /// ????????????? DH_POINT DetectRegion[20]; /// ?????????? EM_HY_VIOLATION_TYPE emViolationAlarmType; /// ??????????? UINT nParkingDuration; /// ??????????????????, 0????????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? PTZ_POSITION_UNIT stuPtzPostion; /// PTZ????????? BYTE byReserved[1024]; /// ??????? } ALARM_HY_OUTFIRE_PASSAGE_DETECTION_INFO; ///@brief ???????????????????????, ?????????? EVENT_HY_MAN_LEAVING_DETECTION typedef struct tagDEV_EVENT_HY_MAN_LEAVING_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0??????????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) BYTE byReserved1[4]; /// ?????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ???ID UINT nPresetID; /// ??????????????, ???0 ????????? /* ????????? */ EM_CLASS_TYPE emClassType; /// ??????????????? UINT nAreaID; /// ????ID?????????PresetID??????????, ?0????????? int nDetectType; /// ?????, -1:??? 0: ?????????????? 1: ?????????????? 2: ?????????? 3: ???????????? 4: ??????????? UINT nPrevNumber; /// ???????? UINT nCurrentNumber; /// ??????? int nManListCount; /// ??????????? MAN_NUM_LIST_INFO stuManList[10]; /// ????????????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? BYTE byReserved[1024]; /// ??????? } DEV_EVENT_HY_MAN_LEAVING_DETECTION_INFO; ///@brief ?????????????????????????????, ?????????? DH_ALARM_HY_MAN_LEAVING_DETECTION typedef struct tagALARM_HY_MAN_LEAVING_DETECTION_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0??????????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) BYTE byReserved1[4]; /// ?????? NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID UINT nPresetID; /// ??????????????, ???0 ????????? /* ????????? */ UINT nAreaID; /// ????ID?????????PresetID??????????, ?0????????? int nDetectType; /// ?????, -1:??? 0: ?????????????? 1: ?????????????? 2: ?????????? 3: ???????????? 4: ??????????? UINT nPrevNumber; /// ???????? UINT nCurrentNumber; /// ??????? int nManListCount; /// ??????????? MAN_NUM_LIST_INFO stuManList[10]; /// ????????????? char szSourceID[32]; /// ???????ID????????????????????????????????????????????????????SourceID??? BYTE byReserved[1024]; /// ??????? } ALARM_HY_MAN_LEAVING_DETECTION_INFO; ///@brief ????????????????????? typedef enum tagEM_HY_FIRE_CONTROL_DEVICE_TYPE { EM_HY_FIRE_CONTROL_DEVICE_TYPE_UNKNOWN, /// ??? EM_HY_FIRE_CONTROL_DEVICE_TYPE_WIRELESSALARMHOST, /// ??????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_INTELLIELECMONITORDEV, /// ???????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_IMAGETYPESMOKEDETECTOR, /// ???????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_FLAMERECOGNITIONCAMERA, /// ???????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_SMOKEFIREDETECTOR, /// ???????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_TEMPERATUREFIREDETECTOR, /// ???????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_COMBUSTIBLEGASDETECTOR, /// ???????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_HANDLEALARMBUTTON, /// ?????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_SOUNDLIGHTALARM, /// ???????? EM_HY_FIRE_CONTROL_DEVICE_TYPE_FAULTELECTRICARCSENSOR, /// ??????????? }EM_HY_FIRE_CONTROL_DEVICE_TYPE; ///@brief ??????????????, ?????????? DH_ALARM_HY_FIRE_CONTROL_OFFLINE_FAULT typedef struct tagALARM_HY_FIRE_CONTROL_OFFLINE_FAULT_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0??????????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /* ????????? */ char szAddress[256]; /// ??????? char szChildNodeName[128]; /// ???????? char szChildNodeSN[64]; /// ????????????????????MAC-????ID EM_HY_FIRE_CONTROL_DEVICE_TYPE emDeviceType; /// ??????? NET_TIME_EX stuTime; /// ???????????????? BYTE byReserved[1024]; /// ??????? } ALARM_HY_FIRE_CONTROL_OFFLINE_FAULT_INFO; ///@brief ??????? typedef enum tagEM_HY_SMOKE_DEVICE_TYPE { EM_HY_SMOKE_DEVICE_TYPE_UNKNOWN, /// ??? EM_HY_SMOKE_DEVICE_TYPE_SURPLUS_ELECTRICITY, /// ???????????? EM_HY_SMOKE_DEVICE_TYPE_ELECTRICITY, /// ?????????? EM_HY_SMOKE_DEVICE_TYPE_TEMPERATURE, /// ????????? }EM_HY_SMOKE_DEVICE_TYPE; ///@brief ?????????????????, ?????????? DH_ALARM_HY_FIRE_CONTROL_SENSOR_FAULT typedef struct tagALARM_HY_FIRE_CONTROL_SENSOR_FAULT_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0??????????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /* ????????? */ char szAddress[256]; /// ??????? char szChildNodeName[128]; /// ???????? char szChildNodeSN[64]; /// ????????????????????MAC-????ID EM_HY_SMOKE_DEVICE_TYPE emDeviceType; /// ??????? NET_TIME_EX stuTime; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? } ALARM_HY_FIRE_CONTROL_SENSOR_FAULT_INFO; ///@brief ?????????????, ?????????? DH_ALARM_HY_FIRE_CONTROL_DISMANTLE_FAULT typedef struct tagALARM_HY_FIRE_CONTROL_DISMANTLE_FAULT_INFO { /* ?????????? */ int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0??????????, 1??????, 2???????, -1?????? char szName[128]; /// ??????? double dbPTS; /// ????(?????????) NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ???ID /* ????????? */ char szAddress[256]; /// ??????? char szSN[64]; /// ?????????? EM_HY_FIRE_CONTROL_DEVICE_TYPE emDeviceType; /// ??????? NET_TIME_EX stuTime; /// ???????????????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? BYTE byReserved[1024]; /// ??????? } ALARM_HY_FIRE_CONTROL_DISMANTLE_FAULT_INFO; /*******************************?????????????************************************************/ ///@brief ?????????? typedef struct tagDEV_OBJECT_FIND_SCOPE_INFO { BOOL bEnable; /// ???????????????? int nMinValue; /// ???????? int nMaxValue; /// ?????? } DEV_OBJECT_FIND_SCOPE_INFO; ///@brief ???????????? typedef struct tagDEV_OBJECT_SUNSHIELD_FIND_SCOPE_INFO { BYTE byFindType; /// ????????????:1 ?????????? 2 ??????????(????,?????????) int nMinSunShieldNum; /// ?????????????????(???)byFindType ?1???? int nMaxSunShieldNum; /// ???????????????(???)byFindType ?1???? NET_SUNSHADE_STATE emMasterShield; /// ?????????????????(???)byFindType ?2???? NET_SUNSHADE_STATE emSlaveShield; /// ?????????????????(???)byFindType ?2???? } DEV_OBJECT_SUNSHIELD_FIND_SCOPE_INFO; ///@brief ???????????????? typedef struct tagDEV_VEHICLE_CONDITION_FEATURE_INFO { char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? EM_NET_PLATE_TYPE emPlateType; /// ???????? NET_COLOR_RGBA stuPlateColor; /// ??????? EM_NET_VEHICLE_TYPE emVehicleType; /// ???????? NET_COLOR_RGBA stuVehicleColor; /// ??????? char szVehicleLogo[32]; /// ???? WORD wVehicleSubBrand; /// ????????? ???????????????????????? ?????????????? WORD wVehicleYearModel; /// ?????????? ?????????????????????? ?????????????? EM_VEHICLE_DIRECTION emVehicleDirection; /// ?????????? NET_SAFEBELT_STATE emMainSeat; /// ????????????????(???) NET_SAFEBELT_STATE emSlaveSeat; /// ????????????????(???) DEV_OBJECT_SUNSHIELD_FIND_SCOPE_INFO stuSunShieldInfo; /// ???????????(????) DEV_OBJECT_FIND_SCOPE_INFO stuDropInfo; /// ???????????(???) DEV_OBJECT_FIND_SCOPE_INFO stuPaperBoxInfo; /// ?????????????(???) DEV_OBJECT_FIND_SCOPE_INFO stuAnnualInspectionInfo; /// ???????????(???) BYTE byReserved[256]; /// ??????? } DEV_VEHICLE_CONDITION_FEATURE_INFO; ///@brief ?????????????? typedef struct tagDEV_VEHICLE_RESULT_FEATURE_INFO { char szPlateNumber[DH_MAX_PLATE_NUMBER_LEN]; /// ??????? EM_NET_PLATE_TYPE emPlateType; /// ???????? NET_COLOR_RGBA stuPlateColor; /// ??????? NET_COLOR_RGBA stuVehicleColor; /// ??????? char szVehicleLogo[32]; /// ???? WORD wVehicleSubBrand; /// ????????? ???????????????????????? ?????????????? WORD wVehicleYearModel; /// ?????????? ?????????????????????? ?????????????? int nVehicleWindowNum; /// ???????? NET_RECT stuVehicleWindow[4]; /// ????????,????0??????????????1?????????????????? EM_VEHICLE_DIRECTION emVehicleDirection; /// ?????????? NET_SAFEBELT_STATE emMainSeat; /// ???????????????? NET_SAFEBELT_STATE emSlaveSeat; /// ???????????????? NET_RECT stuMasterShield; /// ??????????????????? NET_RECT stuSlaveShield; /// ??????????????????? int nAnnualInspectionNum; /// ????????? NET_RECT stuAnnualInspection[8]; /// ????? int nDropNum; /// ??????? NET_RECT stuDrop[4]; /// ??????? int nPaperBoxNum; /// ????????? NET_RECT stuPaperBox[4]; /// ????????? BYTE byReserved[256]; /// ??????? } DEV_VEHICLE_RESULT_FEATURE_INFO; ///@brief ?????????? typedef enum tagEM_PIC_FEATURE_TYPE { EM_PIC_FEATURE_TYPE_UNKOWN, /// ??????? EM_PIC_FEATURE_TYPE_GLOBAL_SENCE, /// ?????? EM_PIC_FEATURE_TYPE_SMALL, /// ????? }EM_PIC_FEATURE_TYPE; ///@brief ?????????, typedef struct tagDEV_IMAGE_REQUEST_FEATURE_INFO { EM_PIC_FEATURE_TYPE emPicType; /// ??????(????) DWORD dwoffset; /// ???????????????????,????:??? DWORD dwLength; /// ??????,????:??? DWORD dwWidth; /// ?????? DWORD dwHeight; /// ????? BOOL bEnableRect; /// ?????Rect??? NET_RECT stuRect; /// (???)???GlobalScene????????????????????????????????????????????? BYTE byReserved[256]; /// ??????? } DEV_IMAGE_REQUEST_FEATURE_INFO; ///@brief ???????? typedef struct tagDEV_IMAGE_RESULT_FEATURE_INFO { DWORD dwSimilarity; /// ?????????,????0~100 NET_TIME stuTime; /// ?????/?????? DWORD dwObjectOffset; /// ????????????????????????,???????(??????????NeedData) DWORD dwObjectLength; /// ??????????,???????(??????????NeedData) char szObjectFilePath[MAX_PATH]; /// ?????HTTP???????(??????????NeedData) DWORD dwSceneOffset; /// ???????????????????????,???????(??????????NeedData) DWORD dwSceneLength; /// ??????????,???????(??????????NeedData) char szSceneFilePath[MAX_PATH]; /// ????HTTP???????(??????????NeedData) NET_RECT stuObjectRect; /// ??????????????????????? BYTE byReserved[256]; /// ??????? } DEV_IMAGE_RESULT_FEATURE_INFO; ///@brief CLIENT_DetectObjectStructlize ?????????? typedef struct tagNET_IN_OBJECTSTRUCTLIZE_DETECT_PIC { DWORD dwSize; int nWidth; /// ?????? int nHeight; /// ????? char *pBuffer; /// ?????????????????, ????????? int nBufferLen; /// ?????????????????????? }NET_IN_OBJECTSTRUCTLIZE_DETECT_PIC; ///@brief ???????????? typedef struct tagNET_OBJECT_DETECTED_INFO { DH_POINT stuPoint; /// ??????????????????, ??????????? DWORD dwWidth; /// ?????? DWORD dwHeight; /// ????? char szObjectType[16]; /// ????????, ???? NET_OBJFILTER_INFO ?? szObjectType ??? char szObjectSubType[32]; /// ?????????????????, ???? NET_OBJFILTER_INFO ?? szObjectSubType ??? DEV_PERSON_RESULT_FEATURE_INFO stuPersonResult; /// ????????????? DEV_VEHICLE_RESULT_FEATURE_INFO stuVehicleResult; /// ?????????????? BYTE byReserved[512]; /// ??????? } NET_OBJECT_DETECTED_INFO; ///@brief CLIENT_DetectObjectStructlize ?????????? typedef struct tagNET_OUT_OBJECTSTRUCTLIZE_DETECT_PIC { DWORD dwSize; int nObjectNum; /// ???????????? NET_OBJECT_DETECTED_INFO stuObjectinfos[DH_MAX_OBJECT_LIST]; /// ????????? }NET_OUT_OBJECTSTRUCTLIZE_DETECT_PIC; ///@brief ???????????????????, lAttachHandle?? CLIENT_AttachObjectStructlizeFindState ?????? typedef struct tagNET_CB_OBJECTSTRUCTLIZE_FIND_STATE { DWORD dwSize; int nToken; ///??????? int nProgress; ///????????????0-100,-1,??????token??????(????????????????????????) int nCurrentCount; ///?????????????????? }NET_OBJECTSTRUCTLIZE_FIND_STATE; ///@brief ???????????????????? /// pstStates ??????? nStateNum ??? typedef void (CALLBACK *fObjectStructlizeFindState)(LLONG lLoginID, LLONG lAttachHandle, NET_OBJECTSTRUCTLIZE_FIND_STATE* pstStates, int nStateNum, LDWORD dwUser); ///@brief CLIENT_AttachObjectStructlizeFindState ?????????? typedef struct tagNET_IN_OBJECTSTRUCTLIZE_FIND_STATE { DWORD dwSize; ///???????,???????? int nTokenNum; ///?????????,?0?,??????????????????? int nTokens[8]; ///??????? fObjectStructlizeFindState cbObjectSFindState; ///??????? LDWORD dwUser; ///??????? }NET_IN_OBJECTSTRUCTLIZE_FIND_STATE; ///@brief CLIENT_AttachObjectStructlizeFindState ?????????? typedef struct tagNET_OUT_OBJECTSTRUCTLIZE_FIND_STATE { DWORD dwSize; }NET_OUT_OBJECTSTRUCTLIZE_FIND_STATE; ///@brief CLIENT_StartFindObjectStructlize ?????????? typedef struct tagNET_IN_STARTFIND_OBJECTSTRUCTLIZE { DWORD dwSize; int nChannelNum; /// ??????? int stuChannelID[16]; /// ??????????? BOOL bTimeEnable; /// ??????????? NET_TIME stStartTime; /// (???)??????,??????????,??????? NET_TIME stEndTime; /// (???)???????,??????????,??????? /*????????????????*/ char szObjectType[16]; /// (????)????????, ? NET_OBJFILTER_INFO ??? char szObjectSubType[32]; /// (???)?????????????????? NET_OBJFILTER_INFO ??? int nSimilarity; /// (????)??????????????????,????0~100 DEV_PERSON_CONDITION_FEATURE_INFO stuPersonCondition; /// ???????????????????????????????AND??? DEV_VEHICLE_CONDITION_FEATURE_INFO stuVehicleCondition; /// ?????????????????????????????????AND??? DEV_IMAGE_REQUEST_FEATURE_INFO stuImageRequestInfo; /// ????? int nRectNum; /// ??????????????????? NET_RECT stuRect[4]; /// ?????????? /* ???????????? */ char *pBuffer; /// ??????, ????????? int nBufferLen; /// ??????????? }NET_IN_STARTFIND_OBJECTSTRUCTLIZE; ///@brief CLIENT_StartFindObjectStructlize ?????????? typedef struct tagNET_OUT_STARTFIND_OBJECTSTRUCTLIZE { DWORD dwSize; int nTotalCount; /// ?????????????????????? /// -1???????????????,?????? /// ??? CLIENT_AttachObjectStructlizeFindState ????? LLONG lFindHandle; /// ?????? int nToken; /// ????????????? }NET_OUT_STARTFIND_OBJECTSTRUCTLIZE; ///@brief CLIENT_DoFindObjectStructlize ?????????? typedef struct tagNET_IN_DOFIND_OBJECTSTRUCTLIZE { DWORD dwSize; LLONG lFindHandle; /// (????)?????? int nBeginNum; /// (????)?????????,0<=beginNumber<= totalCount-1 int nCount; /// (????)??????????????? EM_NEEDED_PIC_RETURN_TYPE emNeededData; /// (????)??????????????? }NET_IN_DOFIND_OBJECTSTRUCTLIZE; ///@brief doFind???????????? typedef struct tagNET_DODBFIND_OBJECT_DETECTED_INFO { int nChannelID; /// ????? char szObjectType[16]; /// ????????, ? NET_OBJFILTER_INFO ??? char szObjectSubType[32]; /// ?????????????????, ? NET_OBJFILTER_INFO ??? DEV_PERSON_RESULT_FEATURE_INFO stuPersonResult; /// ????????????? DEV_VEHICLE_RESULT_FEATURE_INFO stuVehicleResult; /// ?????????????? int nImageNum; /// ????????????????????????A??1;????????A????????1 DEV_IMAGE_RESULT_FEATURE_INFO stuImageResults[4]; /// ????????????? BYTE byReserved[512]; /// ??????? } NET_DODBFIND_OBJECT_DETECTED_INFO; ///@brief CLIENT_DoFindObjectStructlize ?????????? typedef struct tagNET_OUT_DOFIND_OBJECTSTRUCTLIZE { DWORD dwSize; int nfoundNum; /// ??????????? int nObjectNum; /// ???????????? NET_DODBFIND_OBJECT_DETECTED_INFO stuObjectinfos[DH_MAX_OBJECT_LIST]; /// ????????? /* ???????????? */ char *pBuffer; /// ??????, ????????? int nBufferLen; /// ??????????? int nBufRet; /// ?????????? }NET_OUT_DOFIND_OBJECTSTRUCTLIZE; ///@brief ????????????, ?????? pstInParam ?? pstOutPara m??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetectObjectStructlize(LLONG lLoginID, const NET_IN_OBJECTSTRUCTLIZE_DETECT_PIC* pstInParam, NET_OUT_OBJECTSTRUCTLIZE_DETECT_PIC *pstOutParam, int nWaitTime ); ///@brief ???????????? pstInParam ?? pstOutParam ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachObjectStructlizeFindState(LLONG lLoginID, const NET_IN_OBJECTSTRUCTLIZE_FIND_STATE* pstInParam, NET_OUT_OBJECTSTRUCTLIZE_FIND_STATE *pstOutParam, int nWaitTime ); ///@brief ???????????? lAttachHandle ? CLIENT_AttachObjectStructlizeFindState ??????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachObjectStructlizeFindState(LLONG lAttachHandle); ///@brief ?????????????????? pstInParam ?? pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindObjectStructlize(LLONG lLoginID, const NET_IN_STARTFIND_OBJECTSTRUCTLIZE* pstInParam, NET_OUT_STARTFIND_OBJECTSTRUCTLIZE *pstOutParam, int nWaitTime ); ///@brief ????????????:nFilecount:????????????, ???????????????? ?????1?,???emTemperatureType?ALL NET_TEMPERATUREEX_VALUE stuTemperatureEx[MAX_TEMPERATUREEX_POINT_NUM]; /// ??????? }NET_OUT_GET_TEMPERATUREEX; ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FaceBoard_GetTemperatureEx(LLONG lLoginID, const NET_IN_GET_TEMPERATUREEX *pInParam, NET_OUT_GET_TEMPERATUREEX *pOutParam, int nWaitTime); ///@brief CLIENT_GetAlarmOutState ??? typedef struct tagNET_IN_GET_ALARM_OUT_STATE { DWORD dwSize; /// ??????? } NET_IN_GET_ALARM_OUT_STATE; #define MAX_OUT_STATE_COUNT 32 ///@brief CLIENT_GetAlarmOutState ???? typedef struct tagNET_OUT_GET_ALARM_OUT_STATE { DWORD dwSize; /// ??????? int nState[MAX_OUT_STATE_COUNT]; /// ????????, 0??????, 1????? } NET_OUT_GET_ALARM_OUT_STATE; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAlarmOutState(LLONG lLoginID, const NET_IN_GET_ALARM_OUT_STATE *pInParam, NET_OUT_GET_ALARM_OUT_STATE *pOutParam, int nWaitTime); ///@brief ????????? typedef enum tagNET_EM_2DCODE_TYPE { NET_EM_2DCODE_TYPE_OZVISION, /// P2P???? NET_EM_2DCODE_TYPE_LCWEBSITE, /// LC???????? NET_EM_2DCODE_TYPE_EASY4IP, /// easy4ip???????? NET_EM_2DCODE_TYPE_DMSS, /// i/gDMSS???????? NET_EM_2DCODE_TYPE_VIDEOTALK, /// ??????????? NET_EM_2DCODE_TYPE_APPREGISTER, /// app??????????? NET_EM_2DCODE_TYPE_DEVAUTH, /// H500????MD???????? }NET_EM_2DCODE_TYPE; ///@brief ???????????? ??? typedef struct tagNET_IN_WORKDIRECTORY_GETGROUP_INFO { DWORD dwSize; char szDirectoryName[DH_COMMON_STRING_256]; /// ?????????? }NET_IN_WORKDIRECTORY_GETGROUP_INFO; ///@brief ???????????? ???? typedef struct tagNET_OUT_WORKDIRECTORY_GETGROUP_INFO { DWORD dwSize; char szGroupName[DH_COMMON_STRING_256]; /// ?????????? }NET_OUT_WORKDIRECTORY_GETGROUP_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_WorkDirectoryGetGroup(LLONG lLoginID, const NET_IN_WORKDIRECTORY_GETGROUP_INFO *pInParam, NET_OUT_WORKDIRECTORY_GETGROUP_INFO *pOutParam, int nWaitTime); ///@brief ?????????????? ??? typedef struct tagNET_IN_WORKDIRECTORY_SETGROUP_INFO { DWORD dwSize; char szGroupName[DH_COMMON_STRING_256]; /// ?????????? char szDirectoryName[DH_COMMON_STRING_256]; /// ?????????? }NET_IN_WORKDIRECTORY_SETGROUP_INFO; ///@brief ?????????????? ???? typedef struct tagNET_OUT_WORKDIRECTORY_SETGROUP_INFO { DWORD dwSize; }NET_OUT_WORKDIRECTORY_SETGROUP_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_WorkDirectorySetGroup(LLONG lLoginID, const NET_IN_WORKDIRECTORY_SETGROUP_INFO *pInParam, NET_OUT_WORKDIRECTORY_SETGROUP_INFO *pOutParam, int nWaitTime); ///@brief CLIENT_Get2DCode ??? typedef struct tagNET_IN_GET_2DCODE { DWORD dwSize; /// ??????? NET_EM_2DCODE_TYPE em2DCodeType; /// ????????? }NET_IN_GET_2DCODE; ///@brief CLIENT_Get2DCode ???? typedef struct tagNET_OUT_GET_2DCODE { DWORD dwSize; /// ??????? char sz2DCode[DH_COMMON_STRING_512]; /// ???????? }NET_OUT_GET_2DCODE; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Get2DCode(LLONG lLoginID, const NET_IN_GET_2DCODE *pInParam, NET_OUT_GET_2DCODE *pOutParam, int nWaitTime); ///@brief CLIENT_Set2DCode ??? typedef struct tagNET_IN_SET_2DCODE { DWORD dwSize; /// ??????? NET_EM_2DCODE_TYPE em2DCodeType; /// ????????? char sz2DCode[DH_COMMON_STRING_512]; /// ???????? }NET_IN_SET_2DCODE; ///@brief CLIENT_Set2DCode ???? typedef struct tagNET_OUT_SET_2DCODE { DWORD dwSize; /// ??????? }NET_OUT_SET_2DCODE; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Set2DCode(LLONG lLoginID, const NET_IN_SET_2DCODE *pInParam, NET_OUT_SET_2DCODE *pOutParam, int nWaitTime); ///@brief ???????? typedef enum tagEM_IMPORT_FACEDB_STATE { EM_IMPORT_FACEDB_UNKNOWN, /// ??? EM_IMPORT_FACEDB_ONGING, /// ?????? EM_IMPORT_FACEDB_END, /// ???????, ???????????? EM_IMPORT_FACEDB_BUSY, /// ?????????????????? EM_IMPORT_FACEDB_DATAERROR, /// ???????????? EM_IMPORT_FACEDB_INVALID, /// ???????? EM_IMPORT_FACEDB_SYNC_SUCCESS, /// ??????, ??????????? EM_IMPORT_FACEDB_SYNC_FALIED, /// ??????, ???????????? EM_IMPORT_FACEDB_DBFULL, /// ???????????????? EM_IMPORT_FACEDB_SDFULL, /// ??????????????? EM_IMPORT_FACEDB_CIPHER_ERROR, /// ??????????????? EM_IMPORT_FACEDB_SEND_FAIL, /// ??????????????? EM_IMPORT_FACEDB_UPLOAD_FAIL, /// ?????? EM_IMPORT_FACEDB_UPLOAD_NO_PERMISSION, /// ?????????? } EM_IMPORT_FACEDB_STATE; ///@brief ????????????? typedef enum tagEM_FACEDB_PROGRESS_TYPE { EM_FACEDB_PROGRESS_IMPORT, /// ????????? EM_FACEDB_PROGRESS_DEPLOY, /// ????????? } EM_FACEDB_PROGRESS_TYPE; ///@brief ????????????? typedef struct tagNET_IMPORT_FACEDB_STATE { unsigned int nProgress; /// ????, ???? EM_FACEDB_PROGRESS_TYPE emType; /// ???????? EM_IMPORT_FACEDB_STATE emState; /// ????? int nLogicChannel; /// ????????, 0??????????, 1?????????0, ??????? int nDeploySuccessNum; /// ????????????????? int nTotalNum; /// ??????? BYTE byReserved[500]; /// ??????? } NET_IMPORT_FACEDB_STATE; ///@brief ????????????????? typedef void (CALLBACK *fImportFaceDbCallBack) (LLONG lImportFaceDbHandle, NET_IMPORT_FACEDB_STATE *pstFaceDbState, LDWORD dwUser); ///@brief CLIENT_ImportFaceDB ?????????? typedef struct tagNET_IN_IMPORT_FACE_DB { DWORD dwSize; /// ??????? char szGroupId[DH_COMMON_STRING_64]; /// ?????ID char szPassWord[DH_COMMON_STRING_64]; /// ??????? char *pszFaceDBPath; /// ????????, ????????, ???????????szFaceDBFilePath fImportFaceDbCallBack cbImportState; /// ???????????? LDWORD dwUser; /// ??????? int nWaitTime; /// ?????? UINT nFaceDBFileNum; /// ??????????? char szFaceDBFilePath[32][256]; /// ???????????????, ???????? /// ?????????????????????, ???????????????????????? int nLogicChannelNum; /// ?????????? int nLogicChannels[10]; /// ????????????, -1??????????, 0??????????, 1?????????0, ??????? } NET_IN_IMPORT_FACE_DB; ///@brief CLIENT_ImportFaceDB ?????????? typedef struct tagNET_OUT_IMPORT_FACE_DB { DWORD dwSize; /// ??????? } NET_OUT_IMPORT_FACE_DB; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ImportFaceDB(LLONG lLoginID, const NET_IN_IMPORT_FACE_DB *pInParam, NET_OUT_IMPORT_FACE_DB *pOutParam); ///@brief ???????? ///@param[in] lImportFaceDbHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopImportFaceDB(LLONG lImportFaceDbHandle); ///@brief ??????????????? typedef enum tagEM_EXPORT_FACEDB_ERRORCODE { EM_EXPORT_FACEDB_REQUEST_SUCCESS = 1, /// ???????????? EM_EXPORT_FACEDB_NO_AUTHORITY = 2, /// ????? EM_EXPORT_FACEDB_NO_THIS_FILE = 3, /// ????????? EM_EXPORT_FACEDB_EXPORT_END = 4, /// ???????? EM_EXPORT_FACEDB_EXPORTING = 5, /// ?????? EM_EXPORT_FACEDB_FILE_READY = 8, /// ????????? EM_EXPORT_FACEDB_FILE_FAILED = 9, /// ????????? EM_EXPORT_FACEDB_WAIT_FILE = 10, /// ????????????, ???????????????? EM_EXPORT_FACEDB_SYSTEM_BUSY = 11, /// ???, ?????????????? EM_EXPORT_FACEDB_NO_PASSWORD = 12, /// ??????????????????, ?????????? } EM_EXPORT_FACEDB_ERRORCODE; ///@brief ????????????? typedef struct tagNET_EXPORT_FACEDB_STATE { unsigned int nProgress; /// ????, ???? EM_EXPORT_FACEDB_ERRORCODE emErrorCode; /// ?????? char *pDataBuf; /// ?????????? DWORD dwDataLen; /// ??????? int nLogicChannel; /// ????????, 0??????????, 1?????????0, ??????? BYTE byReserved[508]; /// ??????? } NET_EXPORT_FACEDB_STATE; ///@brief ????????????????? typedef void (CALLBACK *fExportStateCallBack)(LLONG lExportFaceDbHandle, NET_EXPORT_FACEDB_STATE *pstFaceDbState, LDWORD dwUser); ///@brief CLIENT_ExportFaceDB ?????????? typedef struct tagNET_IN_EXPORT_FACE_DB { DWORD dwSize; /// ??????? char szGroupId[DH_COMMON_STRING_64]; /// ?????ID char szPassWord[DH_COMMON_STRING_64]; /// ??????? fExportStateCallBack cbExportFaceDbCallBack; /// ?????????????? LDWORD dwUser; /// ??????? int nWaitTime; /// ?????? int nLogicChannel; /// ????????, 0??????????, 1?????????0, ??????? } NET_IN_EXPORT_FACE_DB; ///@brief CLIENT_ExportFaceDB ?????????? typedef struct tagNET_OUT_EXPORT_FACE_DB { DWORD dwSize; /// ??????? } NET_OUT_EXPORT_FACE_DB; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ExportFaceDB(LLONG lLoginID, const NET_IN_EXPORT_FACE_DB *pInParam, NET_OUT_EXPORT_FACE_DB *pOutParam); ///@brief ???????? ///@param[in] lExportFaceDbHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopExportFaceDB(LLONG lExportFaceDbHandle); ///@brief PIR?????????? typedef struct tagNET_DETECT_WINDOW_IFNO { int nRegionID; /// ???????ID char szRegionName[DH_COMMON_STRING_128]; /// ??????????? int nThreshold; /// ??????, ??[0, 100] int nSensitive; /// ??????, ??[0, 100] int nRegionRow; /// ??????????????? int nRegionCol; /// ??????????????? BYTE byRegion[DH_MOTION_ROW][DH_MOTION_COL]; /// ???????, ???32*32?????? int nLevel; /// ??????,??[1,6] BYTE byReserved[508]; /// ??????? } NET_DETECT_WINDOW_IFNO; ///@brief ?????????? typedef enum tagEM_PIR_LIGHT_LINK_TYPE { EM_PIR_LIGHT_LINK_TYPE_UNKNOWN, /// ??? EM_PIR_LIGHT_LINK_TYPE_FILCKER, /// ??? EM_PIR_LIGHT_LINK_TYPE_KEEPLIGHTING, /// ???? } EM_PIR_LIGHT_LINK_TYPE; ///@brief ???????????? typedef struct tagNET_LIGHTINGLINK_INFO { BOOL bEnable; /// ??????? EM_PIR_LIGHT_LINK_TYPE emLightLinkType; /// ?????????? int nFilckerIntevalTime; /// ?????????, ?????0.1s int nLightDuration; /// ?????????????????, ?????? DH_TSECT stuWhiteLightTimeSection[DH_TSCHE_DAY_NUM][DH_TSCHE_SEC_NUM]; /// ???????????????? BYTE byReserved[512]; /// ??????? } NET_LIGHTINGLINK_INFO ; ///@brief ??????????? typedef struct tagNET_PIR_LINK_INFO { BOOL bRecordEnable; /// ?????? BOOL bAlarmOutEnable; /// ?????????? BOOL bSnapshotEnable; /// ??????? BOOL bMailEnable; /// ????????????????????????? BOOL bAlarmBellEnable; /// ?????????? BOOL bLogEnable; /// ???????????? int nRecordChannelNum; /// ?????????? int nRecordChannels[DH_COMMON_STRING_64]; /// ???????????? int nRecordLatch; /// ?????????, ????[10,300] int nAlarmOutChannelNum; /// ?????????????? int AlarmOutChannels[DH_COMMON_STRING_32]; /// ???????????????? int nAlarmOutLatch; /// ?????????????????????,????[1,300] int nSnapshotChannelNum; /// ??????????? int SnapshotChannels[DH_COMMON_STRING_32]; /// ????????????? int nAlarmBellLatch; /// ?????????????,10~300 int nDejitter; /// ???????? NET_LIGHTINGLINK_INFO stLightingLink; /// ???????????? NET_CFG_TIME_SCHEDULE stTimeShecule; /// ???????? BYTE byReserved1[512]; /// ??????? }NET_PIR_LINK_INFO; /// PIR????????????? #define MAX_DETECT_WINDOW 4 ///@brief PIR??????? typedef struct tagNET_PIR_ALARM_INFO { BOOL bEnable; int nDetectWindowCount; /// PIR?????????? NET_DETECT_WINDOW_IFNO stDetectWindow[MAX_DETECT_WINDOW]; /// PIR??????? NET_PIR_LINK_INFO stPirLink; /// ??????????? } NET_PIR_ALARM_INFO; ///@brief CLIENT_GetPirAlarmParam ??? typedef struct tagNET_IN_GET_PIR_ALARM_PARAM { DWORD dwSize; int nChannel; /// ???????? } NET_IN_GET_PIR_ALARM_PARAM; ///@brief CLIENT_GetPirAlarmParam ???? typedef struct tagNET_OUT_GET_PIR_ALARM_PARAM { DWORD dwSize; NET_PIR_ALARM_INFO stPirAlarmInfo; /// PIR??????? int nPirAlarmNum; /// ???????????? NET_PIR_ALARM_INFO stPirAlarmInfoEx[MAX_PIRPARAM_NUM]; /// ?????????pir??????????10 } NET_OUT_GET_PIR_ALARM_PARAM; ///@brief CLIENT_SetPirAlarmParam ??? typedef struct tagNET_IN_SET_PIR_ALARM_PARAM { DWORD dwSize; int nChannel; /// ???????? NET_PIR_ALARM_INFO stPirAlarmInfo; /// PIR??????? int nPirAlarmNum; /// ??????????? NET_PIR_ALARM_INFO stPirAlarmInfoEx[MAX_PIRPARAM_NUM]; /// ?????????pir????? } NET_IN_SET_PIR_ALARM_PARAM; ///@brief CLIENT_SetPirAlarmParam ???? typedef struct tagNET_OUT_SET_PIR_ALARM_PARAM { DWORD dwSize; } NET_OUT_SET_PIR_ALARM_PARAM; ///@brief ???PIR???? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPirAlarmParam(LLONG lLoginID, const NET_IN_GET_PIR_ALARM_PARAM *pstInParam, NET_OUT_GET_PIR_ALARM_PARAM *pstOutParam, int nWaitTime); ///@brief ????PIR???? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPirAlarmParam(LLONG lLoginID, const NET_IN_SET_PIR_ALARM_PARAM *pstInParam, NET_OUT_SET_PIR_ALARM_PARAM *pstOutParam, int nWaitTime); ///@brief Onvif ????????? typedef enum tagEM_GROUP_TYPE { EM_GROUP_TYPE_UNKNOWN, /// UnKnown EM_GROUP_TYPE_ADMIN, /// admin EM_GROUP_TYPE_OPERATOR, /// operator EM_GROUP_TYPE_USER, /// user EM_GROUP_TYPE_ANONYMOUS, /// anonymous } EM_GROUP_TYPE; ///@brief ???????? typedef struct tagNET_MOTION_DATA { int nRegionID; /// ???????ID int nThreshold; /// ??????, ??[0, 100] BYTE byReserved[512]; /// ??????? } NET_MOTION_DATA; ///@brief Onvif ???????? typedef struct tagNET_ONVIF_USER_INFO { char szName[DH_COMMON_STRING_128]; /// ????? char szPassword[DH_COMMON_STRING_128]; /// ???? NET_TIME stuPasswordModifiedTime; /// ?????????????? EM_GROUP_TYPE emGroupType; /// ?????????? BOOL bReserved; /// ?????????????????????????????? BYTE byReserved[512]; /// ??????? } NET_ONVIF_USER_INFO; ///@brief ????Onvif?????CLIENT_AddOnvifUser ??? typedef struct tagNET_IN_ADD_ONVIF_USER_INFO { DWORD dwSize; /// ??????? char szName[128]; /// ????? char szPassword[128]; /// ???? EM_GROUP_TYPE emGroupType; /// ?????????? } NET_IN_ADD_ONVIF_USER_INFO; ///@brief ????Onvif?????CLIENT_AddOnvifUser ???? typedef struct tagNET_OUT_ADD_ONVIF_USER_INFO { DWORD dwSize; /// ??????? } NET_OUT_ADD_ONVIF_USER_INFO; ///@brief ??? Onvif?????CLIENT_ModifyOnvifUser ??? typedef struct tagNET_IN_MODIFYONVIF_USER_INFO { DWORD dwSize; /// ??????? char szName[DH_COMMON_STRING_128]; /// ?????????????? NET_ONVIF_USER_INFO stUserInfo; /// ???????? } NET_IN_MODIFYONVIF_USER_INFO; ///@brief ??? Onvif?????CLIENT_ModifyOnvifUser ???? typedef struct tagNET_OUT_MODIFYONVIF_USER_INFO { DWORD dwSize; /// ??????? } NET_OUT_MODIFYONVIF_USER_INFO; ///@brief ??????? Onvif ????????CLIENT_GetOnvifUserInfoAll ??? typedef struct tagNET_IN_GETONVIF_USERINFO_ALL_INFO { DWORD dwSize; /// ??????? } NET_IN_GETONVIF_USERINFO_ALL_INFO; ///@brief ??????? Onvif ???????? CLIENT_GetOnvifUserInfoAll ???? typedef struct tagNET_OUT_GETONVIF_USERINFO_ALL_INFO { DWORD dwSize; /// ??????? int nRetUserInfoNumber; /// ??????????????? NET_ONVIF_USER_INFO stuUserInfo[MAX_ONVIF_USER_NUM]; /// ??????????(???????????????) } NET_OUT_GETONVIF_USERINFO_ALL_INFO; ///@brief ??? Onvif ??????? CLIENT_ModifyOnvifUserPassword ??? typedef struct tagNET_IN_MODIFYONVIF_PASSWORD_INFO { DWORD dwSize; /// ??????? char szName[DH_COMMON_STRING_128]; /// ??????? char szPwd[DH_COMMON_STRING_128]; /// ??????? char szPwdOld[DH_COMMON_STRING_128]; /// ?????? } NET_IN_MODIFYONVIF_PASSWORD_INFO; ///@brief ??? Onvif ???????CLIENT_ModifyOnvifUserPassword ???? typedef struct tagNET_OUT_MODIFYONVIF_PASSWORD_INFO { DWORD dwSize; /// ??????? } NET_OUT_MODIFYONVIF_PASSWORD_INFO; ///@brief ????Onvif????? pstInParam??pstOutParam ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddOnvifUser(LLONG lLoginID, const NET_IN_ADD_ONVIF_USER_INFO *pstuInParam, NET_OUT_ADD_ONVIF_USER_INFO *pstuOutParam, int nWaitTime); ///@brief ??? Onvif ???????????? admin?????pstInParam??pstOutParam ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyOnvifUser(LLONG lLoginID, const NET_IN_MODIFYONVIF_USER_INFO *pstInParam, NET_OUT_MODIFYONVIF_USER_INFO *pstOutParam, int nWaitTime); ///@brief ??????? Onvif ????????pstInParam??pstOutParam ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetOnvifUserInfoAll(LLONG lLoginID, const NET_IN_GETONVIF_USERINFO_ALL_INFO *pstInParam, NET_OUT_GETONVIF_USERINFO_ALL_INFO *pstOutParam, int nWaitTime); ///@brief ??? Onvif ??????? pstInParam??pstOutParam ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyOnvifUserPassword(LLONG lLoginID, const NET_IN_MODIFYONVIF_PASSWORD_INFO *pstInParam, NET_OUT_MODIFYONVIF_PASSWORD_INFO *pstOutParam, int nWaitTime); #define MAX_MOTION_DATA_COUNT 4 /// ???????????? ///@brief ??????????? typedef struct tagNET_CB_MOTION_DATA { DWORD dwSize; int nMotionDataCount; /// ????????? NET_MOTION_DATA stMotionData[MAX_MOTION_DATA_COUNT]; /// ???????? int nRegionRow; /// ??????????????? int nRegionCol; /// ??????????????? BYTE byRegion[DH_MOTION_ROW][DH_MOTION_COL]; /// ???????, ???32*32?????? } NET_CB_MOTION_DATA; ///@brief ?????????????????????????,lAttachHandle??CLIENT_attachMotionData?????, ???1?? typedef void (CALLBACK *fAttachMotionDataCB) (LLONG lAttachHandle, NET_CB_MOTION_DATA* pBuf, LDWORD dwUser); ///@brief CLIENT_AttachMotionData ??????? typedef struct tagNET_IN_ATTACH_MOTION_DATA { DWORD dwSize; int nChannel; /// ????? fAttachMotionDataCB cbNotify; /// ??????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_MOTION_DATA; ///@brief CLIENT_AttachMotionData ??????? typedef struct tagNET_OUT_ATTACH_MOTION_DATA { DWORD dwSize; } NET_OUT_ATTACH_MOTION_DATA; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachMotionData(LLONG lLoginID, const NET_IN_ATTACH_MOTION_DATA* pstInParam, NET_OUT_ATTACH_MOTION_DATA *pstOutParam, int nWaitTime); ///@brief ???????????,lAttachHandle??CLIENT_attachMotionData????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachMotionData(LLONG lAttachHandle); ///@brief ???? typedef enum tagEM_SRC_INSRUCTION { EM_SRC_INSRUCTION_VTO_CALL, /// ???????? EM_SRC_INSRUCTION_VTO_CARD, /// ??????? EM_SRC_INSRUCTION_LIFT_CARD, /// ??????? EM_SRC_INSRUCTION_VTH_CALL, /// ????????? EM_SRC_INSRUCTION_VTO_FINGERPRINT, /// ???????? EM_SRC_INSRUCTION_VTO_PSW, /// ????????? }EM_SRC_INSRUCTION; ///@brief CLIENT_CallLift ??? typedef struct tagNET_IN_LIFTCONTROL_CALLLIFT_INFO { DWORD dwSize; char szFloorNo[4]; /// ???? char szRoomNo[12]; /// ????? char szUserID[8]; /// ???ID char szCardNo[32]; /// ???? EM_SRC_INSRUCTION emSrcInstruction; /// ???? }NET_IN_LIFTCONTROL_CALLLIFT_INFO; ///@brief CLIENT_CallLift ???? typedef struct tagNET_OUT_LIFTCONTROL_CALLLIFT_INFO { DWORD dwSize; }NET_OUT_LIFTCONTROL_CALLLIFT_INFO; ///@brief ????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CallLift(LLONG lLoginID, const NET_IN_LIFTCONTROL_CALLLIFT_INFO *pstInParam, NET_OUT_LIFTCONTROL_CALLLIFT_INFO *pstOutParam, int nWaitTime); ///@brief CLIENT_ControlLift ??? typedef struct tagNET_IN_LIFTCONTROL_CONTROLLIFT_INFO { DWORD dwSize; int nFloorNum; /// ??????? char szFloorNo[32][4]; /// ???? char szRoomNo[12]; /// ????? char szUserID[8]; /// ???ID char szCardNo[32]; /// ???? EM_SRC_INSRUCTION emSrcInstruction; /// ???? }NET_IN_LIFTCONTROL_CONTROLLIFT_INFO; ///@brief CLIENT_ControlLift ???? typedef struct tagNET_OUT_LIFTCONTROL_CONTROLLIFT_INFO { DWORD dwSize; }NET_OUT_LIFTCONTROL_CONTROLLIFT_INFO; ///@brief ??????????????:??????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ControlLift(LLONG lLoginID, const NET_IN_LIFTCONTROL_CONTROLLIFT_INFO *pstInParam, NET_OUT_LIFTCONTROL_CONTROLLIFT_INFO *pstOutParam, int nWaitTime); ///@brief CLIENT_GetFloorInfo??? typedef struct tagNET_IN_GET_FLOOR_INFO { DWORD dwSize; /// ??????? int nFloorNum; /// ??????? char szFloors[128][8]; /// ???? }NET_IN_GET_FLOOR_INFO; ///@brief ??????? typedef struct tagNET_FLOOR_INFO { char szFloor[16]; /// ???? UINT nControlModuleToken; /// ?????????????? UINT nControlModulePort; /// ?????????????? UINT nCallLiftModuleToken; /// ????????????????? UINT nCallLiftModulePort; /// ??????????????? BYTE byReserved[256]; /// ??????? }NET_FLOOR_INFO; ///@brief CLIENT_GetFloorInfo???? typedef struct tagNET_OUT_GET_FLOOR_INFO { DWORD dwSize; /// ??????? int nFloorInfoNum; /// ??????????? NET_FLOOR_INFO stuFloorInfo[128]; /// ??????? }NET_OUT_GET_FLOOR_INFO; ///@brief ???????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFloorInfo(LLONG lLoginID, const NET_IN_GET_FLOOR_INFO *pstInParam, NET_OUT_GET_FLOOR_INFO *pstOutParam, int nWaitTime); ///@brief CLIENT_GetElevatorWorkInfo ?????? typedef struct tagNET_IN_GET_ELEVATOR_WORK_INFO { DWORD dwSize; /// ??????? int nChannel; /// ???????? char szReserved[256]; /// ??????? }NET_IN_GET_ELEVATOR_WORK_INFO; ///@brief CLIENT_GetElevatorWorkInfo ?????? typedef struct tagNET_OUT_GET_ELEVATOR_WORK_INFO { DWORD dwSize; /// ??????? UINT nElevatorWorkState; /// ??????????, 0 ??????, 1 ????????, 2 ???????? char szElevatorFloor[32]; /// ???????????? UINT nElevatorWorkSpeed; /// ???????????, ????mm/s BOOL bIsCheckFloor; /// ??????????????(??????????????????????) UINT nCurrentNumber; /// ????????????? UINT nDoorState; /// ???????????0?????, 1???????? ,2??????? , 3??????? NET_TIME stuRealUTC; /// ???UTC??????????????????) NET_TIME stuUTC; /// ???????????????????UTC????????? 56 char szReserved[200]; /// ??????? }NET_OUT_GET_ELEVATOR_WORK_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetElevatorWorkInfo(LLONG lLoginID, const NET_IN_GET_ELEVATOR_WORK_INFO* pstuInParam, NET_OUT_GET_ELEVATOR_WORK_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef enum tagNET_ENUM_LOWRATEWPAN_CONFIG { NET_ENUM_LOWRATEWPAN_ACCESS_WORKMODE, /// ?????????????????? NET_LOWRATEWPAN_WORKMODE }NET_ENUM_LOWRATEWPAN_CONFIG; ///@brief ?????? typedef enum tagNET_ENUM_LOWRATEWPAN_WORKMODE { NET_ENUM_LOWRATEWPAN_WORKMODE_UNKNOWN, /// ??? NET_ENUM_LOWRATEWPAN_WORKMODE_NORMAL, /// ???? NET_ENUM_LOWRATEWPAN_WORKMODE_CLEAN, /// ??? NET_ENUM_LOWRATEWPAN_WORKMODE_DECORATION, /// ??? NET_ENUM_LOWRATEWPAN_WORKMODE_UNUSED, /// ??? NET_ENUM_LOWRATEWPAN_WORKMODE_OUTSTANDING, /// ??? }NET_ENUM_LOWRATEWPAN_WORKMODE; ///@brief ?????????? typedef struct tagNET_LOWRATEWPAN_WORKMODE { DWORD dwSize; NET_ENUM_LOWRATEWPAN_WORKMODE emWorkMode; /// ?????? }NET_LOWRATEWPAN_WORKMODE; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] SN ?????? ///@param[out] szOutBuffer ??????????, ????emType???????? ///@param[in] dwOutBufferSize szOutBuffer???????????? ///@param[in] nWaitTime ????????, ???????? ///@param[in] reserve ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetLowRateWPANConfig(LLONG lLoginID,NET_ENUM_LOWRATEWPAN_CONFIG emType,char* SN,void* szOutBuffer, DWORD dwOutBufferSize, int nWaitTime, void *reserve); ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] SN ?????? ///@param[in] szInBuffer ??????????, ????emType???????? ///@param[in] dwInBufferSize szInBuffer???????????? ///@param[in] nWaitTime ????????, ???????? ///@param[out] restart ?????????? ///@param[in] reserve ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetLowRateWPANConfig(LLONG lLoginID,NET_ENUM_LOWRATEWPAN_CONFIG emType,char* SN,void* szInBuffer, DWORD dwInBufferSize, int nWaitTime, int *restart, void *reserve); ///@brief CLIENT_GetVideoDiagnosisState ??? typedef struct tagNET_IN_GET_VIDEODIAGNOSIS_STATE { DWORD dwSize; /// ??????? char szProject[128]; /// ??????????????????????? }NET_IN_GET_VIDEODIAGNOSIS_STATE; ///@brief ????? typedef struct tagVIDEODIAGNOSIS_STATE { BOOL bEnable; /// ?????? BOOL bRunning; /// ??????????? ???????????????????????????????????????????? char szCurrentProject[MAX_PATH]; /// ?????????? char szCurrentTask[MAX_PATH]; /// ??????????? char szCurrentProfile[MAX_PATH]; /// ????????????????????? int nCurrentSourceCount; /// ?????????????????? int nCurrentSourceIndex; /// ??????????????? ??0??? DH_TSECT stCurrentTimeSection; /// ?????????? int nTaskCountOfProject; /// ?????????????? int nIndexOfCurrentTask; /// ?????????? ??0??? int nIncompleteCause; /// ????????????TaskState=2??????????????????? 0???????????????????1??????????????2????????? int nTaskState; /// ?????????? -1????? 0??????????1???????????2?????????3???????? BYTE byReserved[504]; /// ??????? }VIDEODIAGNOSIS_STATE; ///@brief CLIENT_GetVideoDiagnosisState ???? typedef struct tagNET_OUT_GET_VIDEODIAGNOSIS_STATE { DWORD dwSize; /// ??????? VIDEODIAGNOSIS_STATE stuState[2]; /// ??????,????????0:Tour,1:RealTime }NET_OUT_GET_VIDEODIAGNOSIS_STATE; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoDiagnosisState(LLONG lLoginID, const NET_IN_GET_VIDEODIAGNOSIS_STATE *pstInParam, NET_OUT_GET_VIDEODIAGNOSIS_STATE *pstOutParam, int nWaitTime); #define LOGIN_TYPE_DEVICE_NOT_SUPPORT 100 /// ????????????? ///@brief CLIENT_PostLoginTask ??????? typedef struct tagNET_POST_LOGIN_TASK { LLONG lLoginID; ///?????? char* pchDVRIP; ///???IP LONG nDVRPort; ///?????? BOOL bOnline; ///????? bOnline?TRUE????????????FALSE??????????? NET_DEVICEINFO_Ex stuDeviceInfo; ///????????? int nError; ///???????????bOnline?FALSE????nError ???????????????? CLIENT_Login ???? error ???????????nError? LOGIN_TYPE_DEVICE_NOT_SUPPORT ?????????????????????? char szReserve[1024]; ///??????? }NET_POST_LOGIN_TASK; ///@brief CLIENT_PostLoginTask ????????? typedef void (CALLBACK *fPostLoginTask)(DWORD dwTaskID, NET_POST_LOGIN_TASK* pOutParam, LDWORD dwUser); ///@brief ???????? typedef enum tagEM_TCP_LOGIN_CONFIG_TYPE { EM_TCP_LOGIN_CONFIG_TYPE_UNKNOWN = 0, /// ??????? EM_TCP_LOGIN_CONFIG_TYPE_MULTICAST, /// ??????? }EM_TCP_LOGIN_CONFIG_TYPE; ///@brief CLIENT_PostLoginTask ??????? typedef struct tagNET_IN_POST_LOGIN_TASK { DWORD dwSize; /// ??????????? char szReserve1[4]; /// ???????1 char* szIp; /// ???ip unsigned int nPort; /// ?????? char szReserve2[4]; /// ???????2 char* szName; /// ????? char* szPwd; /// ???? EM_LOGIN_SPAC_CAP_TYPE emSpecCap; /// ?????????????? EM_LOGIN_SPEC_CAP_TCP?? /// EM_LOGIN_SPEC_CAP_MAIN_CONN_ONLY??EM_LOGIN_SPEC_CAP_P2P EM_TCP_LOGIN_CONFIG_TYPE emConfigType; /// ??emSpecCap?EM_LOGIN_SPEC_CAP_TCP???????????????????,????????????????????? /// ???EM_TCP_LOGIN_CONFIG_TYPE_UNKNOWN??????????TCP?????EM_TCP_LOGIN_CONFIG_TYPE_MULTICAST????????????????? fPostLoginTask cbLogin; /// ????????? void* pUser; /// ?????????? BOOL bHighLevelSecurity; /// ???????????? EM_LOGIN_TLS_TYPE emTLSCap; /// ?????TLS???????????EM_LOGIN_SPEC_CAP_TCP????? tls???(TLS???????????????) char byReserved[128]; /// ?????? }NET_IN_POST_LOGIN_TASK; ///@brief CLIENT_PostLoginTask ??????? typedef struct tagNET_OUT_POST_LOGIN_TASK { DWORD dwSize; /// ??????????? }NET_OUT_POST_LOGIN_TASK; ///@brief ???????????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ??????? CLIENT_NET_API DWORD CALL_METHOD CLIENT_PostLoginTask(const NET_IN_POST_LOGIN_TASK* pInParam, NET_OUT_POST_LOGIN_TASK* pOutParam); ///@brief ??? CLIENT_PostLoginTask ?????????????dwTaskID ? CLIENT_PostLoginTask ????? ///@param[in] dwTaskID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CancelLoginTask(DWORD dwTaskID); /****************************** start ??????????? ?????????????????***************************************/ ///@brief ??????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ALARMCAPS typedef struct tagNET_IN_GET_ALARMCAPS { DWORD dwSize; /// ??????? }NET_IN_GET_ALARMCAPS; ///@brief Partial Arm????????? typedef struct tagNET_PARTIAL_ARM { BOOL bEnable; /// ??????Partial Arm????bSupportArmProfile????????????????Partial?????? int nIndex; /// ??Partial N??????????Index?1??????Partial1???? BYTE byReserved[64]; /// ?????? }NET_PARTIAL_ARM; ///@brief ??????????? typedef struct tagNET_AREA_ARM_MODE { BOOL bOutDoor; /// ????????????????????bSupportArmProfile??????????????????????????setArmMode??????????????"T" BOOL bAtHome; /// ????????????????,??bSupportArmProfile??????????????????????????setArmMode??????????????"p1" BOOL bTotalArm; /// ??????Total????????bSupportArmProfile????????????????Total?????? int nPartialArmNum; /// ??????Partial Arm????? NET_PARTIAL_ARM stuPartialArm[4]; /// ??????Partial Arm????????4?? BOOL bDisArm; /// ???????????????????????????? BYTE byReserved[516]; /// ?????? }NET_AREA_ARM_MODE; ///@brief ????SIM????? typedef struct tagNET_SUPPORT_MULITSIM_CARDS { int nIndex; /// sim????? BOOL bEnable; /// ??????? BYTE bReserved[64]; /// ?????? }NET_SUPPORT_MULITSIM_CARDS; ///@brief ?????????? typedef enum tagEM_BYPASSMODE_TYPE { EM_BYPASSMODE_TYPE_UNKNOWN, /// ??? EM_BYPASSMODE_TYPE_OFF, /// ????? EM_BYPASSMODE_TYPE_ACTIVE, /// ???? EM_BYPASSMODE_TYPE_BYPASSED, /// ???? EM_BYPASSMODE_TYPE_ISOLATED, /// ???? EM_BYPASSMODE_TYPE_TEST, /// ???? }EM_BYPASSMODE_TYPE; ///@brief ??????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ALARMCAPS typedef struct tagNET_OUT_GET_ALARMCAPS { DWORD dwSize; /// ??????? int nSiren; /// ??????????? int nAlarmIn; /// ??????????????? int nAlarmOut; /// ??????????????, ???82?? int nRemoteControl; /// ????????????? int nICCard; /// ????IC?????? int nKeypad; /// ??????????? int nTelephoneNumber; /// ?????????????? int nKeypadUserCount; /// ?????????????? int nAlarmAreas; /// ????Area????????????????? BOOL bSupportOneClickArmMode; /// ??????????????????? BOOL bSupportDefenceArmMode; /// ????????????????? BOOL bSupportArmProfile; /// ????????????????? NET_AREA_ARM_MODE stuAreaArmMode; /// ???????? int nZoomNum; /// ?????????????? EM_BYPASSMODE_TYPE emZoomMode[16]; /// ????????????? BOOL bSupportAlarmClear; /// ?????????????? int nNetworkUserCount; /// ??????????????? int nSupportMultiSIMCardsNum; /// ????SIM???? NET_SUPPORT_MULITSIM_CARDS stuSupportMultiSIMCards[8]; ///????SIM????? }NET_OUT_GET_ALARMCAPS; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ARMMODE typedef struct tagNET_IN_GET_ALARMMODE { DWORD dwSize; /// ??????? }NET_IN_GET_ALARMMODE; ///@brief ????????? typedef struct tagNET_ARMMODE_INFO { EM_ARM_STATE emArmState; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_ARMMODE_INFO; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ARMMODE typedef struct tagNET_OUT_GET_ALARMMODE { DWORD dwSize; /// ??????? int nArmModeRet; /// ???????????? NET_ARMMODE_INFO stuArmMode[MAX_AREA_NUMBER]; /// ????????? int nArmModeRetEx; /// ??????????????? ????8????????????? NET_ARMMODE_INFO stuArmModeEx[MAX_AREA_NUMBER_EX]; /// ????????? }NET_OUT_GET_ALARMMODE; ///@brief ???????????? typedef struct tagNET_ARM_OPTIONS { NET_EM_SCENE_MODE emSceneMode; /// ???? EM_AREAARM_TRIGGERMODE emAreaarmTriggerMode; /// ??????? int nId; /// ????????????????????????????????????????????key????????? char szName[64]; /// ?????????????????????????????? char szClientAddress[64]; /// ???????IP?????????????????TriggerMode?Remote?????????????? BYTE bReserved[132]; /// ?????? }NET_ARM_OPTIONS; ///@brief ?????????????????? typedef struct tagNET_DETAIL_INFO { NET_ARM_OPTIONS stuArmOption; /// ???????????? BYTE byReserved[128]; /// ?????? }NET_DETAIL_INFO; ///@brief ?????????? ????????????CLIENT_SetAlarmRegionInfo??emType?????NET_EM_SET_ALARMREGION_INFO_ARMMODE typedef struct tagNET_IN_SET_ALARMMODE { DWORD dwSize; /// ??????? EM_ARM_TYPE emArmType; /// ?????????? char szPwd[256]; /// ???? int nAreaNum; /// ???????? int arrAreas[MAX_AREA_NUMBER]; /// ????? NET_DETAIL_INFO stuDetail; /// ?????????????????? int nAreaNumEx; /// ???????????? int arrAreasEx[MAX_AREA_NUMBER_EX]; /// ???????? ????????8??????????? }NET_IN_SET_ALARMMODE; ///@brief ?????????? typedef struct tagARM_FAILED_DETAIL { int nArea; ///????????????? int nAlarmSourceRet; /// ?????????????? int arrAlarmSource[MAX_ZONE_NUMBER]; /// ??????????????????????? BYTE byReserved[1024]; /// ??????? }ARM_FAILED_DETAIL; ///@brief ????????? typedef struct tagNET_ZONE_ABNORMAL_INFO { int nIndex; /// ?????? char szName[32]; /// ???????? char szReason[32]; /// ?????????????????????????? BYTE byReserved[188]; /// ??????? }NET_ZONE_ABNORMAL_INFO; ///@brief ???????????????? typedef struct tagARM_FAILED_DETAIL_EX { int nArea; /// ????????????? int nAlarmSourceRetEx; /// ?????????????? int arrAlarmSourceEx[256]; /// ??????????????????????? int nZoneAbnormalNum; /// ????????????? NET_ZONE_ABNORMAL_INFO stuZoneAbnormal[1024]; /// ????????????????1024?? }ARM_FAILED_DETAIL_EX; ///@brief ???????? typedef struct tagNET_DEVICE_FAULT_INFO { char szName[32]; /// ??????? char szReason[32]; /// ????????????????????? BYTE byReserved[512]; /// ??????? }NET_DEVICE_FAULT_INFO; ///@brief ?????????? ????????????CLIENT_SetAlarmRegionInfo??emType?????NET_EM_SET_ALARMREGION_INFO_ARMMODE typedef struct tagNET_OUT_SET_ALARMMODE { DWORD dwSize; /// ??????? int nArmResult; /// ??????? 0:??? 1:??? int nFailedAreaRet; /// ??????????????? ARM_FAILED_DETAIL stuFailedDetail[MAX_AREA_NUMBER]; /// ??????????? int nFailedDetailNum; /// ??????????, ?????64 ARM_FAILED_DETAIL_EX* pstuFailedDetailEx; /// ????????????????? ????????????8????????? int nDeviceFaultNum; /// ???????????? NET_DEVICE_FAULT_INFO stuDeviceFault[256]; /// ????????????????256?? }NET_OUT_SET_ALARMMODE; ///@brief ?????????? ????????????CLIENT_SetAlarmRegionInfo??emType?????NET_EM_SET_ALARMREGION_INFO_BYPASSMODE typedef struct tagNET_IN_SET_BYPASSMODE { DWORD dwSize; /// ??????? char szPwd[256]; /// ???? EM_BYPASSMODE_TYPE emType; /// ?????? int nZoneNum; /// ???????? int arrZones[MAX_ZONE_NUMBER]; /// ?????? int nZoneNumEx; /// ??????????? int arrZonesEx[MAX_ZONE_NUMBER_EX]; /// ???????????????72???????? }NET_IN_SET_BYPASSMODE; ///@brief ?????????? ????????????CLIENT_SetAlarmRegionInfo??emType?????NET_EM_SET_ALARMREGION_INFO_BYPASSMODE typedef struct tagNET_OUT_SET_BYPASSMODE { DWORD dwSize; /// ??????? }NET_OUT_SET_BYPASSMODE; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_BYPASSMODE typedef struct tagNET_IN_GET_BYPASSMODE { DWORD dwSize; /// ??????? int nZoneNum; /// ???????? int arrZones[MAX_ZONE_NUMBER]; /// ??????, ??1??? int nZoneNumEx; /// ??????????? int arrZonesEx[MAX_ZONE_NUMBER_EX]; /// ????????? ????72????????? }NET_IN_GET_BYPASSMODE; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_BYPASSMODE typedef struct tagNET_OUT_GET_BYPASSMODE { DWORD dwSize; /// ??????? int nZoneRet; /// ???????? EM_BYPASSMODE_TYPE arrModes[MAX_ZONE_NUMBER]; /// ?????????? int nZoneRetEx; /// ??????????? EM_BYPASSMODE_TYPE arrModesEx[MAX_ZONE_NUMBER_EX]; /// ????????? ????72????????? }NET_OUT_GET_BYPASSMODE; ///@brief ????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_AREAZONES typedef struct tagNET_IN_GET_AREAZONES { DWORD dwSize; /// ??????? int nAreaNum; /// ??????? int arrArea[MAX_AREA_NUMBER]; /// ????? int nAreaNumEx; /// ??????? int arrAreaEx[MAX_AREA_NUMBER_EX]; /// ???????? ???????????8????????? }NET_IN_GET_AREAZONES; ///@brief ??????? typedef struct tagNET_AREA_INFO { int nArea; ///????? int nZoneRet; /// ?????????????? int arrZones[MAX_ZONE_NUMBER]; ///???????????? BYTE byReserved[1024]; /// ??????? }NET_AREA_INFO; ///@brief ??????? typedef struct tagNET_ZONES_INFO { int nIndex; /// ?????? char szName[128]; /// ???????? UINT nSupPartial; /// ??0???1????????Partial1 ??1???1????????Partial2 BYTE byReserved[512]; /// ??????? }NET_ZONES_INFO; ///@brief ????????????? typedef struct tagNET_AREA_INFO_EX { int nArea; /// ????? int nZoneRetEx; /// ????????????????? int arrZonesEx[MAX_ZONE_NUMBER_EX]; ///???????????? BYTE byReserved[1024]; /// ??????? }NET_AREA_INFO_EX; ///@brief ???????????????????? ?? NET_AREA_INFO_EX ?????????????? typedef struct tagNET_AREA_INFO_EX_SUPPLEMENT { NET_ZONES_INFO stuZonesInfo[MAX_ZONE_NUMBER_EX]; /// ??????? char szAreaName[128]; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_AREA_INFO_EX_SUPPLEMENT; ///@brief ????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_AREAZONES typedef struct tagNET_OUT_GET_AREAZONES { DWORD dwSize; /// ??????? int nAreaRet; /// ??????? NET_AREA_INFO stuAreaInfo[MAX_AREA_NUMBER]; /// ??????? int nAreaRetEx; /// ??????? NET_AREA_INFO_EX stuAreaInfoEx[MAX_AREA_NUMBER_EX]; /// ?????????? ????8????????????? NET_AREA_INFO_EX_SUPPLEMENT stuAreaInfoExSupplement[MAX_AREA_NUMBER_EX]; /// ????????????????? }NET_OUT_GET_AREAZONES; ///@brief ??????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ALLINSLOTS typedef struct tagNET_IN_GET_ALLINSLOTS { DWORD dwSize; /// ??????? }NET_IN_GET_ALLINSLOTS; ///@brief ??????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ALLINSLOTS typedef struct tagNET_OUT_GET_ALLINSLOTS { DWORD dwSize; /// ??????? int nLocol; /// ???????????, ???8?? int nWired; /// ???????????, ???64?? int nWireless; /// ???????????, ???64?? }NET_OUT_GET_ALLINSLOTS; ///@brief ?????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ALLOUTSLOTS typedef struct tagNET_IN_GET_ALLOUTSLOTS { DWORD dwSize; /// ??????? }NET_IN_GET_ALLOUTSLOTS; ///@brief ?????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ALLOUTSLOTS typedef struct tagNET_OUT_GET_ALLOUTSLOTS { DWORD dwSize; /// ??????? int nLocol; /// ??????????????, ???2?? int nWired; /// ?????????????????, ???80?? int nWireless; /// ?????????????????, ???80?? }NET_OUT_GET_ALLOUTSLOTS; ///@brief ??????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ZONECONNECTIONSSTATUS typedef struct tagNET_IN_GET_CONNECTIONSTATUS { DWORD dwSize; /// ??????? }NET_IN_GET_CONNECTIONSTATUS; ///@brief ????????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ZONECONNECTIONSSTATUS typedef struct tagNET_OUT_GET_CONNECTIONSTATUS { DWORD dwSize; /// ??????? int nZoneRet; /// ???????? bool arrZoneStates[MAX_ZONE_NUMBER];/// ??????????false:???? true:???? int nZoonRetEx; /// ??????????? BOOL arrZoneStatesEx[MAX_ZONE_NUMBER_EX];/// ?????????????FALSE:???? TRUE:?????????????????72????????? }NET_OUT_GET_CONNECTIONSTATUS; ///@brief ????????????? typedef enum tagEM_GET_AREASSTATUS_TYPE { EM_GET_AREASSTATUS_TYPE_UNKNOWN, /// ??? EM_GET_AREASSTATUS_TYPE_ACTIVE, /// ???? EM_GET_AREASSTATUS_TYPE_OPEN, /// ?? }EM_GET_AREASSTATUS_TYPE; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_AREASTATUS typedef struct tagNET_IN_GET_AREAS_STATUS { DWORD dwSize; /// ??????? EM_GET_AREASSTATUS_TYPE emType; /// ????????????? }NET_IN_GET_AREAS_STATUS; ///@brief ???????? typedef enum tagEM_ZONE_STATUS { EM_ZONE_STATUS_UNKNOWN, /// ??? EM_ZONE_STATUS_ALARM, /// ????????/?? EM_ZONE_STATUS_TAMPER, /// ???????? EM_ZONE_STATUS_MASK, /// ????????? EM_ZONE_STATUS_SHORT, /// ???????? EM_ZONE_STATUS_NORMAL, /// ???????? }EM_ZONE_STATUS; ///@brief ????????? typedef struct tagNET_ZONE_STATUS { int nIndex; /// ?????? EM_ZONE_STATUS emStatus; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_ZONE_STATUS; ///@brief ????????????? typedef struct tagNET_AREA_STATUS { int nArea; /// ????? int nZoneRet; /// ???????? NET_ZONE_STATUS stuZoneStatus[MAX_ZONE_NUMBER]; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_AREA_STATUS; ///@brief ???????????????? typedef struct tagNET_AREA_STATUS_EX { int nArea; /// ????? int nZoneRetEx; /// ??????????? NET_ZONE_STATUS stuZoneStatusEx[MAX_ZONE_NUMBER_EX]; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_AREA_STATUS_EX; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_AREASTATUS typedef struct tagNET_OUT_GET_AREAS_STATUS { DWORD dwSize; /// ??????? int nAreaRet; /// ??????? NET_AREA_STATUS stuAreaStatus[MAX_AREA_NUMBER]; ///?????????????? int nAreaRetEx; /// ?????????? NET_AREA_STATUS_EX stuAreaStatusEx[MAX_AREA_NUMBER_EX]; ///??????????????????????????????8??????????? }NET_OUT_GET_AREAS_STATUS; ///@brief ?????????? typedef enum tagEM_OUTPUT_TYPE { EM_OUTPUT_TYPE_UNKNOWN, /// ??? EM_OUTPUT_TYPE_SIREN, /// ???? EM_OUTPUT_TYPE_ALARMOUT, /// ?????? }EM_OUTPUT_TYPE; ///@brief ???????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_OUTPUTSTATE typedef struct tagNET_IN_GET_OUTPUT_STATE { DWORD dwSize; /// ??????? EM_OUTPUT_TYPE emType; /// ??????? }NET_IN_GET_OUTPUT_STATE; ///@brief ???????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_OUTPUTSTATE typedef struct tagNET_OUT_GET_OUTPUT_STATE { DWORD dwSize; /// ??????? int nStateRet; /// ?????? bool arrStates[82]; /// ??false:???true?? BYTE byReserved[6]; /// ???? int nStateRetEx; /// ????????? ????82??????????? BOOL arrStatesEx[MAX_ZONE_NUMBER_EX]; /// ??FLASE:???TRUE?? BYTE byReserved1[4]; /// ???? }NET_OUT_GET_OUTPUT_STATE; ///@brief ????????? ????????????CLIENT_SetAlarmRegionInfo??emType?????NET_EM_SET_ALARMREGION_INFO_OUTPUTSTATE typedef struct tagNET_IN_SET_OUTPUT_STATE { DWORD dwSize; /// ??????? EM_OUTPUT_TYPE emType; /// ??????? int nChannel; /// emType= EM_OUTPUT_TYPE_SIREN????????? /// emType= EM_OUTPUT_TYPE_ALARMOUT????????? bool action; /// ???????false:???true:?? BYTE byReserved[3]; /// ?????? }NET_IN_SET_OUTPUT_STATE; ///@brief ?????????????????????CLIENT_SetAlarmRegionInfo??emType?????NET_EM_SET_ALARMREGION_INFO_OUTPUTSTATE typedef struct tagNET_OUT_SET_OUTPUT_STATE { DWORD dwSize; /// ??????? }NET_OUT_SET_OUTPUT_STATE; ///@brief ??????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ZONESTROUBLE typedef struct tagNET_IN_GET_ZONES_TROUBLE { DWORD dwSize; /// ??????? }NET_IN_GET_ZONES_TROUBLE; ///@brief ???????????? typedef enum tagEM_ZONE_TROUBLE_TYPE { EM_ZONE_TROUBLE_TYPE_UNKNOWN, /// ??? EM_ZONE_TROUBLE_TYPE_TAMPER, /// ??????? EM_ZONE_TROUBLE_TYPE_MASK, /// ?????? EM_ZONE_TROUBLE_TYPE_SHORT, /// ??????? EM_ZONE_TROUBLE_TYPE_ALARM, /// ???????/?? EM_ZONE_TROUBLE_TYPE_NORMAL, /// ??????? }EM_ZONE_TROUBLE_TYPE; ///@brief ??????????? typedef struct tagNET_ZONE_TROUBLE_INFO { int nIndex; /// ?????? EM_ZONE_TROUBLE_TYPE emTroubleType; /// ???????? BYTE byReserved[1024]; /// ??????? }NET_ZONE_TROUBLE_INFO; ///@brief ??????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ZONESTROUBLE typedef struct tagNET_OUT_GET_ZONES_TROUBLE { DWORD dwSize; /// ??????? int nZoneRet; ///??????????? NET_ZONE_TROUBLE_INFO stuTroubleInfo[MAX_ZONE_NUMBER]; ///??????????? int nZoneRetEx; /// ?????????????? NET_ZONE_TROUBLE_INFO stuTroubleInfoEx[MAX_ZONE_NUMBER_EX]; ///??????????????????????72???????? }NET_OUT_GET_ZONES_TROUBLE; ///@brief ??????? typedef enum tagEM_CHANNELS_STATE_TYPE { EM_CHANNELS_STATE_TYPE_UNKNOWN, /// ??? EM_CHANNELS_STATE_TYPE_ALL, /// ??????? EM_CHANNELS_STATE_TYPE_ALARMIN, /// ??????????? EM_CHANNELS_STATE_TYPE_ALARMOUT, /// ?????????? EM_CHANNELS_STATE_TYPE_SIREN, /// ??????? }EM_CHANNELS_STATE_TYPE; ///@brief ??????????????? typedef struct tagNET_GET_CHANNELS_STATE_CONDITION { EM_CHANNELS_STATE_TYPE emType; /// ??????? BYTE byReserved[1020]; /// ??????? }NET_CHANNELS_STATE_CONDITION; ///@brief ???????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_CHANNELSSTATE typedef struct tagNET_IN_GET_CHANNELS_STATE { DWORD dwSize; /// ??????? NET_CHANNELS_STATE_CONDITION stuCondition; /// ??????????????? }NET_IN_GET_CHANNELS_STATE; ///@brief ????? typedef enum tagEM_DEV_STATUS { EM_DEV_STATUS_UNKNOWN = -1, /// ??? EM_DEV_STATUS_OFFLINE, /// ???? EM_DEV_STATUS_ONLINE, /// ???? }EM_DEV_STATUS; ///@brief ????? typedef enum tagEM_OUTPUT_STATE { EM_OUTPUT_STATE_UNKNOWN = -1, /// ??? EM_OUTPUT_STATE_CLOSE, /// ??? EM_OUTPUT_STATE_OPEN, /// ?? }EM_OUTPUT_STATE; ///@brief ?????????? typedef struct tagNET_SENSOR_STATE { int nExPowerState; /// ??????????? : 0:????, 1:?????? int nTamper; /// ????????? : 0:????, 1:?? int nLowPowerState; /// ???????? : 0:????, 1:?????, 2:???? char szReserved[244]; /// ??????? } NET_SENSOR_STATE; ///@brief ????? typedef struct tagNET_CHANNELS_STATE { EM_CHANNELS_STATE_TYPE emType; /// ??????? UINT nIndex; /// ????? EM_DEV_STATUS emOnlineState; /// ?????? EM_ZONE_STATUS emAlarmState; /// ??????????emType?EM_CHANNELS_STATE_TYPE_ALARMIN????? EM_OUTPUT_STATE emOutputState; /// ?????????emType?EM_CHANNELS_STATE_TYPE_ALARMOUT,EM_CHANNELS_STATE_TYPE_SIREN????? char szName[64]; /// ?????????? char szSN[32]; /// ??????SN?? NET_SENSOR_STATE stuSensorState; /// ?????????? BYTE byReserved[60]; /// ??????? }NET_CHANNELS_STATE; ///@brief ???????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_CHANNELSSTATE typedef struct tagNET_OUT_GET_CHANNELS_STATE { DWORD dwSize; /// ??????? UINT nChannelsStatesCount; /// ????????? NET_CHANNELS_STATE stuChannelsStates[1024]; /// ????? }NET_OUT_GET_CHANNELS_STATE; ///@brief ??????? typedef enum tagNET_EM_ACCESSORY_TYPE { NET_EM_ACCESSORY_TYPE_UNKNOWN, ///??? NET_EM_ACCESSORY_TYPE_Keypad, ///???? NET_EM_ACCESSORY_TYPE_MBUSExpansionModule, ///MBUS???????????/?????? NET_EM_ACCESSORY_TYPE_RS485ExpansionModule, ///RS485???????????/?????? NET_EM_ACCESSORY_TYPE_MBUSMotherBoard, ///MBUS???? }NET_EM_ACCESSORY_TYPE; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ACCESSORY typedef struct tagNET_IN_GET_ACCESSORY_INFO { DWORD dwSize; /// ??????? NET_EM_ACCESSORY_TYPE emAccessoryType; /// ??????? }NET_IN_GET_ACCESSORY_INFO; ///@brief ????????? typedef struct tagNET_ACCESSORY_GAPS { BYTE bySupportSensitivity; /// ???????????????? 0-?????, 1-???? BYTE byReserved[63]; /// ??????? }NET_ACCESSORY_GAPS; ///@brief ?????? typedef struct tagNET_ACCESSORY_INFO { NET_EM_ACCESSORY_TYPE emType; /// ??????? int nChannel; /// ????? UINT nAddr; /// ?????? UINT nAlarmInCount; /// ???????????????? int nAlarmInChannels[16]; /// ????????????????????,????????????????0 BYTE byReserved[4]; /// ??????? UINT nAlarmOutCount; /// ??????????????? int nAlarmOutChannels[16]; /// ????????????????????,????????????????0 char szModel[32]; /// ?????? char szName[64]; /// ??????? char szVersion[64]; /// ????????? NET_ACCESSORY_GAPS stuAccessoryCaps; /// ????????????? BYTE byReserved1[232]; /// ??????? }NET_ACCESSORY_INFO; ///@brief ????????? ????????????CLIENT_GetAlarmRegionInfo??emType?????NET_EM_GET_ALARMREGION_INFO_ACCESSORY typedef struct tagNET_OUT_GET_ACCESSORY_INFO { DWORD dwSize; /// ??????? UINT nMaxAccessoryInfo; /// ???????????? NET_ACCESSORY_INFO* pstuAccessoryInfos; /// ?????????,?????????????,????????? nMaxAccessoryInfo*sizeof(NET_ACCESSORY_INFO) UINT nRetAccessoryInfo; /// ???????????? }NET_OUT_GET_ACCESSORY_INFO; ///@brief ???????????? typedef enum tagNET_EM_GET_ALARMREGION_INFO { NET_EM_GET_ALARMREGION_INFO_UNKNOWN, ///??? NET_EM_GET_ALARMREGION_INFO_ALARMCAPS, ///????????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_ALARMCAPS?? pstuOutParam?????NET_OUT_GET_ALARMCAPS NET_EM_GET_ALARMREGION_INFO_ARMMODE, ///??????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_ALARMMODE?? pstuOutParam?????NET_OUT_GET_ALARMMODE NET_EM_GET_ALARMREGION_INFO_BYPASSMODE, ///??????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_BYPASSMODE?? pstuOutParam?????NET_OUT_GET_BYPASSMODE NET_EM_GET_ALARMREGION_INFO_AREAZONES, ///???????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_AREAZONES?? pstuOutParam?????NET_OUT_GET_AREAZONES NET_EM_GET_ALARMREGION_INFO_ALLINSLOTS, ///?????????????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_ALLINSLOTS?? pstuOutParam?????NET_OUT_GET_ALLINSLOTS NET_EM_GET_ALARMREGION_INFO_ALLOUTSLOTS, ///????????????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_ALLOUTSLOTS?? pstuOutParam?????NET_OUT_GET_ALLOUTSLOTS NET_EM_GET_ALARMREGION_INFO_ZONECONNECTIONSSTATUS, ///??????????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_CONNECTIONSTATUS?? pstuOutParam?????NET_OUT_GET_CONNECTIONSTATUS NET_EM_GET_ALARMREGION_INFO_AREASTATUS, ///??????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_AREAS_STATUS?? pstuOutParam?????NET_OUT_GET_AREAS_STATUS NET_EM_GET_ALARMREGION_INFO_OUTPUTSTATE, ///?????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_OUTPUT_STATE?? pstuOutParam?????NET_OUT_GET_OUTPUT_STATE NET_EM_GET_ALARMREGION_INFO_ZONESTROUBLE, ///???????????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_ZONES_TROUBLE?? pstuOutParam?????NET_OUT_GET_ZONES_TROUBLE NET_EM_GET_ALARMREGION_INFO_CHANNELSSTATE, ///?????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_CHANNELS_STATE?? pstuOutParam?????NET_OUT_GET_CHANNELS_STATE NET_EM_GET_ALARMREGION_INFO_ACCESSORY, ///??????????? ???CLIENT_GetAlarmRegionInfo???????pstuInParam?????NET_IN_GET_ACCESSORY_INFO?? pstuOutParam?????NET_OUT_GET_ACCESSORY_INFO }NET_EM_GET_ALARMREGION_INFO; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pstuInParam ??????????, ???????????????????,????????emType???????? ///@param[out] pstuOutParam ??????????, ???????????????????,????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAlarmRegionInfo(LLONG lLoginID, NET_EM_GET_ALARMREGION_INFO emType, const void *pstuInParam, void *pstuOutParam, int nWaitTime); ///@brief ???????????? typedef enum tagNET_EM_SET_ALARMREGION_INFO { NET_EM_SET_ALARMREGION_INFO_UNKNOWN, ///??? NET_EM_SET_ALARMREGION_INFO_ARMMODE, ///???????????? ???CLIENT_SetAlarmRegionInfo???????pstuInParam?????NET_IN_SET_ALARMMODE?? pstuOutParam?????NET_OUT_SET_ALARMMODE NET_EM_SET_ALARMREGION_INFO_BYPASSMODE, ///???????????? ???CLIENT_SetAlarmRegionInfo???????pstuInParam?????NET_IN_SET_BYPASSMODE?? pstuOutParam?????NET_OUT_SET_BYPASSMODE NET_EM_SET_ALARMREGION_INFO_OUTPUTSTATE, ///??????????? ???CLIENT_SetAlarmRegionInfo???????pstuInParam?????NET_IN_SET_OUTPUT_STATE?? pstuOutParam?????NET_OUT_SET_OUTPUT_STATE }NET_EM_SET_ALARMREGION_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pstuInParam ??????????, ???????????????????,????????emType???????? ///@param[out] pstuOutParam ??????????, ???????????????????,????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetAlarmRegionInfo(LLONG lLoginID, NET_EM_SET_ALARMREGION_INFO emType, const void *pstuInParam, void *pstuOutParam, int nWaitTime); /****************************** end ??????????? ?????????????????***************************************/ ///@brief ????????? typedef enum tagEM_DEVICE_NOTIFY_TYPE { EM_DEVICE_NOTIFY_TYPE_UNKNOWN, /// ??? EM_DEVICE_NOTIFY_TYPE_NEW, /// ????????? EM_DEVICE_NOTIFY_TYPE_UPDATE, /// ?????????? EM_DEVICE_NOTIFY_TYPE_REMOVE, /// ?????? EM_DEVICE_NOTIFY_TYPE_CONNECT, /// ?????????????? } EM_DEVICE_NOTIFY_TYPE; ///@brief ?????????????????? typedef struct tagNET_CB_ATTACH_DEVICE_STATE { EM_DEVICE_NOTIFY_TYPE emNotifyType; /// ?????? int nRetCount; /// ??????? char szDeviceIDs[MAX_LINK_DEVICE_NUM][DH_DEV_ID_LEN_EX]; /// ??????? BYTE byReserved[512]; /// ??????? }NET_CB_ATTACH_DEVICE_STATE; ///@brief ?????????????????? typedef void (CALLBACK *fDeviceStateCallBack)(LLONG lAttachHandle, NET_CB_ATTACH_DEVICE_STATE* pstDeviceState, LDWORD dwUser); ///@brief CLIENT_AttachDeviceState ?????????? typedef struct tagNET_IN_ATTACH_DEVICE_STATE { DWORD dwSize; fDeviceStateCallBack cbDeviceState; ///??????? LDWORD dwUser; ///??????? }NET_IN_ATTACH_DEVICE_STATE; ///@brief CLIENT_AttachDeviceState ?????????? typedef struct tagNET_OUT_ATTACH_DEVICE_STATE { DWORD dwSize; }NET_OUT_ATTACH_DEVICE_STATE; ///@brief CLIENT_AsyncAddDevice ?????????? typedef struct tagNET_IN_ASYNC_ADD_DEVICE { DWORD dwSize; int nCount; ///URL???? char szUrls[MAX_ADD_DEVICE_NUM][MAX_COMMON_STRING_512]; ///URL???????????:///?????:????@IP:??? ??????????????????? }NET_IN_ASYNC_ADD_DEVICE; ///@brief CLIENT_AsyncAddDevice ?????????? typedef struct tagNET_OUT_ASYNC_ADD_DEVICE { DWORD dwSize; UINT nTaskID; ///????ID }NET_OUT_ASYNC_ADD_DEVICE; ///@brief ??????????????? typedef enum tagEM_CUSTOM_DEV_PROTOCOL_TYPE { EM_CUSTOM_DEV_PROTOCOL_TYPE_PRIVATE, /// Private EM_CUSTOM_DEV_PROTOCOL_TYPE_DAHUA2, /// Dahua2 EM_CUSTOM_DEV_PROTOCOL_TYPE_DAHUA3, /// Dahua3 EM_CUSTOM_DEV_PROTOCOL_TYPE_GENERAL, /// ??URL??????????? EM_CUSTOM_DEV_PROTOCOL_TYPE_ONVIF, /// Onvif???? EM_CUSTOM_DEV_PROTOCOL_TYPE_ONVIFS, /// Onvif??????????? EM_CUSTOM_DEV_PROTOCOL_TYPE_GB28181, /// ????28181???? EM_CUSTOM_DEV_PROTOCOL_TYPE_EHOME, EM_CUSTOM_DEV_PROTOCOL_TYPE_DAHUA_REG, /// ??????? }EM_CUSTOM_DEV_PROTOCOL_TYPE; ///@brief ???????? typedef enum tagEM_VIDEOINPUTS_SERVICE_TYPE { EM_VIDEOINPUTS_SERVICE_TYPE_AUTO, /// ??? EM_VIDEOINPUTS_SERVICE_TYPE_TCP, /// TCP EM_VIDEOINPUTS_SERVICE_TYPE_UDP, /// UDP EM_VIDEOINPUTS_SERVICE_TYPE_MULTICAST, /// ??? }EM_VIDEOINPUTS_SERVICE_TYPE; ///@brief ?????????? typedef struct tagNET_CUSTOM_DEV_VIDEO_INPUTS { char szMainStreamUrl[256]; /// ??????URL????????????????????????General??????????????????URL?????????? char szExtraStreamUrl[256]; /// ??????URL????????????????????????General??????????????????URL?????????? EM_VIDEOINPUTS_SERVICE_TYPE emServiceType; /// ???????? BYTE byReserved[508]; /// ?????? }NET_CUSTOM_DEV_VIDEO_INPUTS; ///@brief CLIENT_AsyncAddCustomDevice ?????????? typedef struct tagNET_IN_ASYNC_ADD_CUSTOM_DEVICE { DWORD dwSize; int nPort; /// ???? char szAddress[128]; /// ?????????????? char szUserName[128]; /// ????? char szPassword[128]; /// ???? EM_CUSTOM_DEV_PROTOCOL_TYPE emProtocolType; /// ??????????????? int nRemoteChannelNum; /// ?????????????????????????? int nRemoteChannels[512]; /// ?????????????????IPC??????????1 BOOL bSetLogicChannelStart; /// ????????????????,FALSE??????????????????? int nLogicChannelStart; /// ????????????,????bSetLogicChannelStart?TRUE????? NET_CUSTOM_DEV_VIDEO_INPUTS stuVideoInput; /// ?????????? }NET_IN_ASYNC_ADD_CUSTOM_DEVICE; ///@brief CLIENT_AsyncAddCustomDevice ?????????? typedef struct tagNET_OUT_ASYNC_ADD_CUSTOM_DEVICE { DWORD dwSize; int nLogicChannelNum; /// ??????????????? int nLogicChannels[128]; /// ????????????????? char szDeviceID[128]; /// ???ID }NET_OUT_ASYNC_ADD_CUSTOM_DEVICE; ///@brief ??????????? typedef enum tagEM_DEVICE_ADD_STATE { EM_DEVICE_ADD_STATE_UNKNOWN, /// ??? EM_DEVICE_ADD_STATE_WAIT, /// ??????? EM_DEVICE_ADD_STATE_CONNECT, /// ?????? EM_DEVICE_ADD_STATE_FAILURE, /// ??????? EM_DEVICE_ADD_STATE_SUCCESS, /// ?????? EM_DEVICE_ADD_STATE_STOP, /// ?????? } EM_DEVICE_ADD_STATE; ///@brief ????????????????????? typedef struct tagNET_CB_ATTACH_ADD_DEVICE { UINT nTaskID; /// ????ID EM_DEVICE_ADD_STATE emAddState; /// ?????????? UINT nIndex; /// ????????????(??0???) BYTE byReserved[512]; /// ??????? }NET_CB_ATTACH_ADD_DEVICE; ///@brief ????????????????????? typedef void (CALLBACK *fAddDeviceCallBack)(LLONG lAttachHandle, NET_CB_ATTACH_ADD_DEVICE* pstAddDevice, LDWORD dwUser); ///@brief CLIENT_AttachAddDevice ?????????? typedef struct tagNET_IN_ATTACH_ADD_DEVICE { DWORD dwSize; fAddDeviceCallBack cbAddDevice; ///??????? LDWORD dwUser; ///??????? }NET_IN_ATTACH_ADD_DEVICE; ///@brief CLIENT_AttachAddDevice ?????????? typedef struct tagNET_OUT_ATTACH_ADD_DEVICE { DWORD dwSize; }NET_OUT_ATTACH_ADD_DEVICE; ///@brief CLIENT_GetAddDeviceInfo ?????????? typedef struct tagNET_IN_GET_ADD_DEVICE_LIST_INFO { DWORD dwSize; UINT nTaskID; /// ????ID int nCount; /// ??????? UINT nIndex[MAX_ADD_DEVICE_NUM]; /// ??????????(NET_IN_ADD_DEVICE??szUrls????????0???) }NET_IN_GET_ADD_DEVICE_LIST_INFO; ///@brief ???????????????? typedef struct tagNET_GET_ADD_DEVICE_INFO { char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID char szUrl[DH_COMMON_STRING_512]; /// url EM_DEVICE_ADD_STATE emAddState; /// ????????? UINT nErrorCode; /// ?????? BYTE byReserved[512]; /// ??????? }NET_GET_ADD_DEVICE_INFO; ///@brief CLIENT_GetAddDeviceInfo ?????????? typedef struct tagNET_OUT_GET_ADD_DEVICE_LIST_INFO { DWORD dwSize; int nRetCount; /// ??????? NET_GET_ADD_DEVICE_INFO stuDeviceInfo[MAX_ADD_DEVICE_NUM]; /// ?????????? }NET_OUT_GET_ADD_DEVICE_LIST_INFO; ///@brief CLIENT_GetDeviceInfo ?????????? typedef struct tagNET_IN_GET_DEVICE_LIST_INFO { DWORD dwSize; int nCount; /// ??????? char szDeviceIDs[MAX_LINK_DEVICE_NUM][DH_DEV_ID_LEN_EX]; /// ?????????? }NET_IN_GET_DEVICE_LIST_INFO; ///@brief ???????????????? typedef struct tagNET_GET_DEVICE_INFO { char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID char szUrl[DH_COMMON_STRING_512]; /// url char szSerialNo[DH_COMMON_STRING_32]; /// ????????? char szDeviceType[DH_COMMON_STRING_64]; /// ??????? char szDeviceClass[DH_DEV_CLASS_LEN]; /// ??????? int nMacCount; /// ???mac???? char szMacs[MAX_MACADDR_NUM][DH_MACADDR_LEN]; /// ???mac????? char szDevSoftVersion[DH_COMMON_STRING_128]; /// ???????????? char szDeviceName[DH_DEV_NAME_LEN]; /// ??????? char szDetail[DH_COMMON_STRING_512]; /// ????????? UINT nVideoInputCh; /// ???????????? UINT nVideoOutputCh; /// ??????????? UINT nAudioInputCh; /// ???????????? UINT nAudioOutputCh; /// ??????????? UINT nAlarmInputCh; /// ????????????? UINT nAlarmOutputCh; /// ???????????? UINT nErrorCode; /// ???????????? UINT nVtoDoors; /// ??????????????????? BYTE byOnline; /// ?????????? 0:???? 1?????? BYTE byReserved[511]; /// ??????? }NET_GET_DEVICE_INFO; ///@brief CLIENT_GetDeviceInfo ?????????? typedef struct tagNET_OUT_GET_DEVICE_LIST_INFO { DWORD dwSize; int nMaxCount; /// ??????????????? int nRetCount; /// ?????????????? NET_GET_DEVICE_INFO* pstuDeviceInfo; /// ??????????, ????????????????, ????????sizeof(NET_GET_DEVICE_INFO)*nMaxCount }NET_OUT_GET_DEVICE_LIST_INFO; ///@brief CLIENT_SetConnectChannel ?????????? typedef struct tagNET_IN_SET_CONNECT_CHANNEL { DWORD dwSize; char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID int nCount; /// ??????? UINT nChannels[MAX_DEVICE_CHANNEL_NUM]; /// ??????? }NET_IN_SET_CONNECT_CHANNEL; ///@brief CLIENT_SetConnectChannel ?????????? typedef struct tagNET_OUT_SET_CONNECT_CHANNEL { DWORD dwSize; }NET_OUT_SET_CONNECT_CHANNEL; ///@brief CLIENT_GetChannelInfo ?????????? typedef struct tagNET_IN_GET_CHANNEL_INFO { DWORD dwSize; char szDeviceID[DH_DEV_ID_LEN_EX]; /// ???ID }NET_IN_GET_CHANNEL_INFO; ///@brief ?????????????????? typedef struct tagNET_GET_CHANNEL_INFO { UINT nRemoteChannel; /// ???????? int nLogicChannel; /// ???????????,-1????????? char szName[DH_DEV_NAME_LEN]; /// ???? char szDetail[DH_COMMON_STRING_512]; /// ????????? char szDeviceType[DH_COMMON_STRING_64]; /// ??????? char szDeviceClass[DH_DEV_CLASS_LEN]; /// ??????? char szIP[DH_MAX_IPADDR_LEN]; /// ip??? char szMac[DH_MACADDR_LEN]; /// ???mac??? char szSerialNo[DH_DEV_SERIALNO_LEN]; /// ????????? char szDevSoftVersion[DH_COMMON_STRING_128]; /// ???????????? UINT nVideoInputCh; /// ???????????? UINT nVideoOutputCh; /// ??????????? UINT nAudioInputCh; /// ???????????? UINT nAudioOutputCh; /// ??????????? UINT nAlarmInputCh; /// ????????????? UINT nAlarmOutputCh; /// ???????????? BYTE byOnline; /// ??????????0:???? 1?????? BYTE byUsed; /// ????????????????? 0??????? 1????? BYTE byReserved[510]; /// ??????? }NET_GET_CHANNEL_INFO; ///@brief CLIENT_GetChannelInfo ?????????? typedef struct tagNET_OUT_GET_CHANNEL_INFO { DWORD dwSize; int nMaxCount; /// ??????????????? int nRetCount; /// ?????????????? NET_GET_CHANNEL_INFO* pstuChannelInfo; /// ??????????, ????????????????, ????????sizeof(NET_GET_CHANNEL_INFO)*nMaxCount }NET_OUT_GET_CHANNEL_INFO; ///@brief CLIENT_RemoveDevice ?????????? typedef struct tagNET_IN_REMOVE_DEVICE { DWORD dwSize; int nCount; /// ??????? char szDeviceIDs[MAX_LINK_DEVICE_NUM][DH_DEV_ID_LEN_EX]; /// ?????????? }NET_IN_REMOVE_DEVICE; ///@brief CLIENT_RemoveDevice ?????????? typedef struct tagNET_OUT_REMOVE_DEVICE { DWORD dwSize; }NET_OUT_REMOVE_DEVICE; ///@brief CLIENT_CancelAddDeviceTask ?????????? typedef struct tagNET_IN_CANCEL_ADD_TASK { DWORD dwSize; UINT nTaskID; /// ????ID }NET_IN_CANCEL_ADD_TASK; ///@brief CLIENT_CancelAddDeviceTask ?????????? typedef struct tagNET_OUT_CANCEL_ADD_TASK { DWORD dwSize; }NET_OUT_CANCEL_ADD_TASK; ///@brief CLIENT_ConfirmAddDeviceTask ?????????? typedef struct tagNET_IN_CONFIRM_ADD_TASK { DWORD dwSize; UINT nTaskID; /// ????ID }NET_IN_CONFIRM_ADD_TASK; ///@brief CLIENT_ConfirmAddDeviceTask ?????????? typedef struct tagNET_OUT_CONFIRM_ADD_TASK { DWORD dwSize; }NET_OUT_CONFIRM_ADD_TASK; ///@brief CLIENT_GetNMPDevInfo ?????????? typedef struct tagNET_IN_GET_NMPDEV_INFO { DWORD dwSize; /// ??????? }NET_IN_GET_NMPDEV_INFO; ///@brief ???????????????? typedef struct tagNET_NEM_CONNECT_DEVICE_INFO { char szAddress[40]; /// ?????????????? char szProtocolType[32]; /// ????????????????? char szDeviceType[64]; /// ?????? char szMac[18]; /// ???mac????????+???? char szName[64]; /// ??????? char szVendor[32]; BYTE byReserved[126]; /// ??????? }NET_NEM_CONNECT_DEVICE_INFO; ///@brief ?????????? typedef struct tagNET_NEIGHBORS_INFO { char szRemotePortId[64]; /// ???????????????? char szRemoteDevice[128]; /// ???????????? NET_NEM_CONNECT_DEVICE_INFO stuDeviceInfo; /// ?????? BYTE byReserved[128]; /// ??????? }NET_NEIGHBORS_INFO; ///@brief ????????? typedef enum tagEM_PORT_STATUS { EM_PORT_STATUS_UNKNOWN = -1, /// ??? EM_PORT_STATUS_DOWN, /// ?????? EM_PORT_STATUS_UP, /// ???? }EM_PORT_STATUS; ///@brief ????????? typedef enum tagEM_MEDIA_TYPE { EM_MEDIA_TYPE_UNKNOWN, /// ??? EM_MEDIA_TYPE_COPPER, /// ??? EM_MEDIA_TYPE_FIBER, /// ??? }EM_MEDIA_TYPE; ///@brief ???????? typedef enum tagEM_DUPLEX_MODE { EM_DUPLEX_MODE_UNKNOWN, /// ??? EM_DUPLEX_MODE_HALFDUPLEX, /// ????? EM_DUPLEX_MODE_FULLDUPLEX, /// ???? }EM_DUPLEX_MODE; ///@brief PoE?? typedef enum tagEM_POE_STATUS { EM_POE_STATUS_UNKNOWN = -1, /// ??? EM_POE_STATUS_NONENABLE, /// ??????? EM_POE_STATUS_ENABLE, /// ????? EM_POE_STATUS_UNSUPPORTED, /// ????? }EM_POE_STATUS; ///@brief ????????? typedef enum tagEM_FLOW_STATUS { EM_FLOW_STATUS_UNKNOWN = -1, /// ??? EM_FLOW_STATUS_NORMAL, /// ???? EM_FLOW_STATUS_ABNORMAL, /// ?? }EM_FLOW_STATUS; ///@brief ???????? typedef enum tagEM_PORT_ENABLE_STATUS { EM_PORT_ENABLE_STATUS_UNKONWON = -1, /// ??? EM_PORT_ENABLE_STATUS_OFF, /// ?? EM_PORT_ENABLE_STATUS_ON, /// ?? }EM_PORT_ENABLE_STATUS; ///@brief ???????? typedef enum tagEM_PORT_DUPLEX_MODE { EM_PORT_DUPLEX_MODE_UNKNOWN, /// ??? EM_PORT_DUPLEX_MODE_AUTO, /// ?????? EM_PORT_DUPLEX_MODE_HALF, /// ????? EM_PORT_DUPLEX_MODE_FULL, /// ??? } EM_PORT_DUPLEX_MODE; ///@brief ?????????????? typedef enum tagEM_PORT_DISTANCE_STATUS { EM_PORT_DISTANCE_STATUS_UNKNOWN = -1, /// ??? EM_PORT_DISTANCE_STATUS_OFF, /// ?? EM_PORT_DISTANCE_STATUS_ON, /// ?? EM_PORT_DISTANCE_STATUS_UNSUPPORT, /// ????? } EM_PORT_DISTANCE_STATUS; ///@brief ????????? typedef enum tagEM_PORT_FLOW_STATUS { EM_PORT_FLOW_STATUS_UNKNOWN = -1, /// ??? EM_PORT_FLOW_STATUS_OFF, /// ?? EM_PORT_FLOW_STATUS_ON, /// ?? } EM_PORT_FLOW_STATUS; ///@brief ???????????? typedef enum tagEM_PORT_FLOW_ENABLE_STATUS { EM_PORT_FLOW_ENABLE_STATUS_UNKNOWN = -1, /// ??? EM_PORT_FLOW_ENABLE_STATUS_OFF, /// ?? EM_PORT_FLOW_ENABLE_STATUS_ON, /// ?? } EM_PORT_FLOW_ENABLE_STATUS; ///@brief ??????????? typedef enum tagEM_PDALIVE_ENABLE_STATUS { EM_PDALIVE_ENABLE_STATUS_UNKNOWN = -1, /// ??? EM_PDALIVE_ENABLE_STATUS_OFF, /// ?? EM_PDALIVE_ENABLE_STATUS_ON, /// ?? } EM_PDALIVE_ENABLE_STATUS; ///@brief ????????????? typedef struct tagNET_SPEED_DUPLEX_CAP { UINT nSpeedCap; /// ????????????, 0 ?????????, ????:Mbps UINT nPortDuplexModeNum; /// ????????????????????, ??emPortDuplexMode??????????????? EM_PORT_DUPLEX_MODE emPortDuplexMode[4]; /// ???????? } NET_SPEED_DUPLEX_CAP; ///@brief ????????? typedef struct tagNET_NMPDEVPORT_INFO { DWORD dwLocalPortId; /// ?????????? EM_POE_STATUS emPoEStatus; /// PoE?? char szLocalPortDescr[64]; /// ????????????? int nChassisId; /// ????????ID int nSlotId; /// ????????ID char szAliasName[64]; /// ????????? DWORD dwAggregationId; /// ???ID??0???????????? DWORD dwSpeed; /// ??????????????????mbps EM_PORT_STATUS emStatus; /// ????????? EM_MEDIA_TYPE emMedia; /// ????????? EM_DUPLEX_MODE emDuplexMode; /// ???????? float fPoEPower; /// PoE???? TP_U64 dwInUcastPkts; /// ????????????? TP_U64 dwOutUcastPkts; /// ????????????? TP_U64 dwInBroadcastPkts; /// ??????????? TP_U64 dwOutBroadcastPkts; /// ??????????? TP_U64 dwInMulticastPkts; /// ???????????? TP_U64 dwOutMulticastPkts; /// ???????????? TP_U64 dwInDiscardPkts; /// ????????? TP_U64 dwOutDiscardPkts; /// ????????? INT64 nInPausePkts; /// ????Pause???????-1????????? INT64 nOutPausePkts; /// ????Pause???????-1????????? INT64 nInFilterPkts; /// ????????????????-1????????? TP_U64 dwInOctets; /// ???????????? TP_U64 dwOutOctets; /// ???????????? TP_U64 dwInRate; /// ?????????????????Byte TP_U64 dwOutRate; /// ?????????????????Byte EM_FLOW_STATUS emFlowStatus; /// ????????? int nRetNeighborsNum; /// ????????????? NET_NEIGHBORS_INFO stuNeighbors[255]; /// ?????????? EM_PORT_ENABLE_STATUS emPortEnableStatus; /// ???????? UINT nPortSpeedStatus; /// ????????????, 0 ????????? EM_PORT_DUPLEX_MODE emPortDuplexMode; /// ???????????? EM_PORT_DISTANCE_STATUS emPortDistanceStatus; /// ?????????????? EM_PORT_FLOW_STATUS emPortFlowStatus; /// ????????? EM_PORT_FLOW_ENABLE_STATUS emPortFlowEnable; /// ???????????? EM_PDALIVE_ENABLE_STATUS emPDaliveEnable; /// ??????????? UINT nInPortUsage; /// ?????????????????% UINT nOutPortUsage; /// ?????????????????% UINT nInThreshold; /// ?????????????????????% UINT nOutThreshold; /// ?????????????????????% UINT nRetSpeedDuplexCap; /// ???????????????, ??stuSpeedDuplexCap ??????????????? NET_SPEED_DUPLEX_CAP stuSpeedDuplexCap[32]; /// ????????????? TP_U64 nInTopRate; /// ????????????????????????Byte TP_U64 nOutTopRate; /// ????????????????????????Byte int nMediaCap; /// ????????????????????????? Bit0????? Bit1????? ?????????????????Media????????????? ?????0x03 = 0x01 | 0x02 ??????y?????????????????PortID??????????? BYTE byReserved[188]; /// ??????? }NET_NMPDEVPORT_INFO; ///@brief ?????? typedef struct tagNET_NMPDEV_INFO { char szAddress[40]; /// ?????????????? char szDeviceClass[64]; /// ??????? char szDeviceType[64]; /// ?????? char szMac[18]; /// ???mac????????+???? BYTE byReserved2[6]; /// ?????? char szProtocolType[32]; /// ????????????????? char szVersion[32]; /// ???????? char szSerialNo[64]; /// ????????? char szName[64]; /// ??????? DWORD dwRetPortNum; /// ???????????? int nPortListMaxNum; /// ???????????????? NET_NMPDEVPORT_INFO *pstuPorList; /// ???????? BOOL bPoESupport; /// ??????Poe float fPoETotalPower; /// PoE????? float fPoERemainPower; /// PoE????? DWORD dwUptime; /// ????????????????????????? int nCPUUsage; /// CPU?????????????-1????? EM_DEV_STATUS emStatus; /// ????? char szSubnetMask[40]; /// ???????? char szParent[128]; /// ????????????? char szVendor[32]; DWORD dwPortNumber; /// ????????? float fPoETopPower; /// Poe????????,????W int nMemUsage; /// ??????????????%, -1: ???? BYTE byReserved[1012]; /// ??????? }NET_NMPDEV_INFO; ///@brief CLIENT_GetNMPDevInfo ?????????? typedef struct tagNET_OUT_GET_NMPDEV_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? NET_NMPDEV_INFO stuNMPDevInfo; /// ?????? }NET_OUT_GET_NMPDEV_INFO; ///@brief CLIENT_GetNMPDevCaps ?????????? typedef struct tagNET_IN_GET_NMPDEV_CAPS { DWORD dwSize; /// ??????? } NET_IN_GET_NMPDEV_CAPS; ///@brief CLIENT_GetNMPDevCaps ?????????? typedef struct tagNET_OUT_GET_NMPDEV_CAPS { DWORD dwSize; /// ??????? BOOL bSupportPage; /// ???????????? } NET_OUT_GET_NMPDEV_CAPS; ///@brief CLIENT_GetNMPPortInfoByPage ?????????? typedef struct tagNET_IN_GET_NMPPORT_BY_PAGE { DWORD dwSize; /// ??????? UINT nOffset; /// ??????????????????????? UINT nPortNum; /// ??????????????????, ???0, ???????????, ??????????????? } NET_IN_GET_NMPPORT_BY_PAGE; ///@brief CLIENT_GetNMPPortInfoByPage ?????????? typedef struct tagNET_OUT_GET_NMPPORT_BY_PAGE { DWORD dwSize; /// ??????? UINT nTotalSize; /// ?????????? UINT nMaxPortCount; /// pstPortList???????????????, ???????? UINT nRetPortCount; /// ???????????????, ??pstPortList ???????????????? NET_NMPDEVPORT_INFO *pstPortList; /// ?????????????, ????????????????, ????????nMaxPortCount*sizeof(NET_NMPDEVPORT_INFO) } NET_OUT_GET_NMPPORT_BY_PAGE; ///@brief ????????? typedef struct tagNET_LOCAL_PORT_INFO { UINT nLocalPortId; /// ??????? char szLocalPortDescr[64]; /// ?????????? UINT nRetNeighborsNum; /// ??????????????, ??stuNeighbors ??????????????? NET_NEIGHBORS_INFO stuNeighbors[256]; /// ?????????? } NET_LOCAL_PORT_INFO; ///@brief ???????????????????? typedef struct tagNET_GET_NMPNEIGHBOR_CONDITION { UINT nLocalPortId; /// ???????????????[1,PortNumber] UINT nProtocolType; /// ???????????????????? 0:ALL 1:LLDP 2:ONVIF char szReserved[1024]; /// ??????? } NET_GET_NMPNEIGHBOR_CONDITION; ///@brief CLIENT_GetNMPNeighborInfoByPage ?????????? typedef struct tagNET_IN_GET_NMPNEIGHBOR_BY_PAGE { DWORD dwSize; /// ??????? UINT nOffset; /// ???????????????????????? UINT nNeighborNum; /// ??????????????????????, ???0, ?????????, ???????????????? BOOL bUseCondition; /// ?????????????? NET_GET_NMPNEIGHBOR_CONDITION stuCondition; /// ???????????????????? } NET_IN_GET_NMPNEIGHBOR_BY_PAGE; ///@brief CLIENT_GetNMPNeighborInfoByPage ?????????? typedef struct tagNET_OUT_GET_NMPNEIGHBOR_BY_PAGE { DWORD dwSize; /// ??????? UINT nTotalSize; /// ????????????? UINT nMatchSize; /// ??????????????????? UINT nMaxLocalPortNum; /// ???????????????????? NET_LOCAL_PORT_INFO *pstLocalPortList; /// ????????????????????? UINT nRetLocalPortNum; /// ????????????????????, ??pstLocalPortList ????????????? } NET_OUT_GET_NMPNEIGHBOR_BY_PAGE; ///@brief NMP ??????????? typedef struct tagNET_NMP_PORT_STATUS { UINT nLocalPortId; /// ???? EM_PORT_STATUS emPortStatus; /// ????????? BYTE byReserved[1024]; /// ??????? } NET_NMP_PORT_STATUS; ///@brief NMP ?????????????? typedef struct tagNET_CB_NMP_PORT_STATUS_INFO { char szAddress[64]; /// ip ??? char szMAC[24]; /// MAC??? NET_NMP_PORT_STATUS *pstPortStatusList; /// ????????????, ?????sdk ??????????? UINT nRetPortNum; /// ?????????????, ??pstPortStatusList ?????????????????? BYTE byReserved[1020]; /// ??????? } NET_CB_NMP_PORT_STATUS_INFO; ///@brief NMP ??????????????????, lAttachHandle ?? CLIENT_AttachNMPPortStatus???????? typedef void (CALLBACK *fNMPPortStatusCallBack)(LLONG lAttachHandle, NET_CB_NMP_PORT_STATUS_INFO *pstNMPPortStatus, LDWORD dwUser); ///@brief CLIENT_AttachNMPPortStatus ?????????? typedef struct tagNET_IN_ATTACH_NMP_PORT_STATUS { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ???? fNMPPortStatusCallBack cbNMPPortStatusCallBac; /// ??????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_NMP_PORT_STATUS; ///@brief CLIENT_ClearPortStatisticsInfo ?????????? typedef struct tagNET_IN_CLEAR_PORT_STATISTICS_INFO { DWORD dwSize; /// ??????? UINT nPortID; /// ??????????ID, 0??????????????????? } NET_IN_CLEAR_PORT_STATISTICS_INFO; ///@brief CLIENT_ClearPortStatisticsInfo ?????????? typedef struct tagNET_OUT_CLEAR_PORT_STATISTICS_INFO { DWORD dwSize; /// ??????? } NET_OUT_CLEAR_PORT_STATISTICS_INFO; ///@brief ???????? typedef enum tagEM_DUPLEX_STATE { EM_DUPLEX_STATE_UNKNOWN = -1, /// ??? EM_DUPLEX_STATE_DOWN, /// ??? EM_DUPLEX_STATE_AUTO, /// ??? EM_DUPLEX_STATE_10M_HALF, /// 10M ????? EM_DUPLEX_STATE_10M_FULL, /// 10M???? EM_DUPLEX_STATE_100M_HALF, /// 100M ????? EM_DUPLEX_STATE_100M_FULL, /// 100M???? EM_DUPLEX_STATE_1000M_FULL, /// 1000M???? EM_DUPLEX_STATE_2_5G_FULL, /// 2.5G???? EM_DUPLEX_STATE_5G_FULL, /// 5G???? EM_DUPLEX_STATE_10G_FULL, /// 10G???? EM_DUPLEX_STATE_25G_FULL, /// 25G???? EM_DUPLEX_STATE_40G_FULL, /// 40G???? EM_DUPLEX_STATE_100G_FULL, /// 100G???? } EM_DUPLEX_STATE; ///@brief POE?????? typedef enum tagEM_POE_ENABLE_STATUS { EM_POE_ENABLE_STATUS_UNKNOWN = -1, /// ??? EM_POE_ENABLE_STATUS_OFF, /// ?? EM_POE_ENABLE_STATUS_ON, /// ?? }EM_POE_ENABLE_STATUS; ///@brief ?????????? typedef struct tagNET_PORT_CFG_INFO { char szPortDescribe[64]; /// ??????????????????????????????????"."??"-"??"_"?? UINT nPortID; /// ??????????ID, ??1 ??? EM_DUPLEX_STATE emDuplexState; /// ???????? EM_PORT_FLOW_ENABLE_STATUS emFlowEnableCfg; /// ??????????? EM_POE_ENABLE_STATUS emPoeEnableCfg; /// PoE???????? EM_PORT_ENABLE_STATUS emPortEnableCfg; /// ?????????? UINT nSpeedCfg; /// ??????????, ????:Mbps, 0????????? EM_PORT_DUPLEX_MODE emDuplexModeCfg; /// ???????????? EM_PORT_DISTANCE_STATUS emLongDistanceCfg; /// ???????????????? EM_PDALIVE_ENABLE_STATUS emPDAliveCfg; /// PDalivePOE????????????? BYTE byReserved[2044]; /// ??????? } NET_PORT_CFG_INFO; ///@brief CLIENT_PortManagerSetPortInfo ?????????? typedef struct tagNET_IN_PORTMANAGER_SET_PORT_INFO { DWORD dwSize; /// ??????? UINT nPortCfgNum; /// ?????????????????, ???????? NET_PORT_CFG_INFO *pstPortCfgInfo; /// ??????????, ???????????????????, ???????:nPortCfgNum * sizeof(NET_PORT_CFG_INFO) } NET_IN_PORTMANAGER_SET_PORT_INFO; ///@brief CLIENT_PortManagerSetPortInfo ?????????? typedef struct tagNET_OUT_PORTMANAGER_SET_PORT_INFO { DWORD dwSize; /// ??????? } NET_OUT_PORTMANAGER_SET_PORT_INFO; ///@brief ???????? typedef enum tagEM_PORT_CONGESTION_STATUS { EM_PORT_CONGESTION_UNKNOWN, /// ??? EM_PORT_CONGESTION_NO, /// ?????/??????? EM_PORT_CONGESTION_IN, /// ????????????? EM_PORT_CONGESTION_OUT, /// ????????????? EM_PORT_CONGESTION_ALL, /// ???????/????/????????? } EM_PORT_CONGESTION_STATUS; ///@brief ????????? typedef struct tagNET_PORT_CONGESTION_INFO { UINT nLocalPortId; /// ??????? EM_PORT_CONGESTION_STATUS emCongestionStatus; /// ???????? TP_U64 nInRate; /// ?????????????????Byte TP_U64 nOutRate; /// ?????????????????Byte BYTE byReserved[1024]; /// ??????? } NET_PORT_CONGESTION_INFO; ///@brief NMP ????????????????? typedef struct tagNET_CB_NMP_PORT_CONGESTION_INFO { char szMAC[24]; /// MAC??? NET_PORT_CONGESTION_INFO stuPortCongestionInfo[256]; /// ??????????????? UINT nRetPortNum; /// ?????????????, ??stuPortCongestionInfo ?????????????????? BYTE byReserved[1020]; /// ??????? } NET_CB_NMP_PORT_CONGESTION_INFO; ///@brief NMP ????????????????????????, lAttachHandle ?? CLIENT_AttachNMPPortCongestion???????? typedef void (CALLBACK *fNMPPortCongestionCallBack)(LLONG lAttachHandle, NET_CB_NMP_PORT_CONGESTION_INFO *pstNMPCongestion, LDWORD dwUser); ///@brief CLIENT_AttachNMPPortCongestion ?????????? typedef struct tagNET_IN_ATTACH_NMP_PORT_CONGESTION { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ???? fNMPPortCongestionCallBack cbNMPPortCongestion; /// ?????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_NMP_PORT_CONGESTION; ///@brief IP ????????? typedef struct tagNET_IP_CONFICT_ALARM_INFO { char szAddress[64]; /// ?????ip UINT nMacNum; /// ????????????mac??????? char szMac[128][24]; /// ????????????mac??? UINT nVlanId; /// ???ip??????????vlanid char szVlanIP[64]; /// ???ip??????????vlanid?????ip BYTE byReserved[1024]; /// ??????? } NET_IP_CONFICT_ALARM_INFO; ///@brief NMP ?????????? typedef struct tagNET_NMP_LOOP_DETECT_INFO { UINT nLoopNum; /// ??????????? UINT nLoopGroup[256]; /// ??????, ????????? ????????????????????? BYTE byReserved[1020]; /// ??????? } NET_NMP_LOOP_DETECT_INFO; ///@brief NMP??? ????????? typedef struct tagNET_NMP_ALARM_INFO { NET_NMP_LOOP_DETECT_INFO stuLoopDetect[128]; /// NMP ?????????? UINT nLoopDetectNum; /// NMP ?????????????? UINT nIPConfictAlarmNum; /// IP ????????????? NET_IP_CONFICT_ALARM_INFO stuIPConfictAlarm[128]; /// IP ????????? BYTE byReserved[1024]; /// ??????? } NET_NMP_ALARM_INFO; ///@brief NMP??? ??????????????? typedef struct tagNET_CB_NMP_ALARM_INFO { char szMAC[24]; /// MAC??? NET_NMP_ALARM_INFO stuNmpAlarmInfo; /// NMP??? ????????? BYTE byReserved[1024]; /// ??????? } NET_CB_NMP_ALARM_INFO; ///@brief NMP??? ??????????????????????, lAttachHandle ?? CLIENT_AttachNMPAlarmInfo???????? typedef void (CALLBACK *fNMPAlarmInfoCallBack)(LLONG lAttachHandle, NET_CB_NMP_ALARM_INFO *pstNMPAlarmInfo, LDWORD dwUser); ///@brief CLIENT_AttachNMPAlarmInfo ?????????? typedef struct tagNET_IN_ATTACH_NMP_ALARM_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ???? fNMPAlarmInfoCallBack cbNMPAlarmInfo; /// NMP??? ??????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_NMP_ALARM_INFO; ///@brief CLIENT_GetDeviceInfoEx ?????????? typedef struct tagNET_IN_GET_DEVICE_INFO_EX { DWORD dwSize; /// ??????? int nCount; /// ??????? char szDeviceIDs[32][128]; /// ?????????? }NET_IN_GET_DEVICE_INFO_EX; ///@brief ??????? typedef enum tagEM_DEVICE_ATTRIBUTE { EM_DEVICE_ATTRIBUTE_UNKNOWN, /// ??? EM_DEVICE_ATTRIBUTE_MASTER, /// ?????? EM_DEVICE_ATTRIBUTE_ASSISTANT, /// ?????? }EM_DEVICE_ATTRIBUTE; ///@brief ?????????????????? typedef enum tagEM_NET_SERVER_TYPE { EM_NET_SERVER_TYPE_UNKNOWN = -1, /// ??? EM_NET_SERVER_TYPE_AUTO, /// ??? EM_NET_SERVER_TYPE_TCP, /// TCP EM_NET_SERVER_TYPE_UDP, /// UDP EM_NET_SERVER_TYPE_MULTICAST, /// ??? }EM_NET_SERVER_TYPE; ///@brief ??????????????????????? typedef enum tagEM_CHANNEL_PROTOCOL_TYPE { EM_CHANNEL_PROTOCOL_TYPE_UNKNOWN, /// ??? EM_CHANNEL_PROTOCOL_TYPE_ONVIF, /// Onvif???? EM_CHANNEL_PROTOCOL_TYPE_GB28181, /// ??????????? EM_CHANNEL_PROTOCOL_TYPE_RTSP, /// Rtsp??????? EM_CHANNEL_PROTOCOL_TYPE_GB35114, /// GB35114??????? }EM_CHANNEL_PROTOCOL_TYPE; ///@brief ?????? typedef struct tagNET_DEVICE_CHANNEL_INFO { UINT nRemoteChannel; /// ???????? int nLogicChannel; /// ???????????, -1????????? char szChannelID[32]; /// ??????? char szGbCode[32]; /// ?????????? char szName[128]; /// ???????????????? char szDetail[512]; /// ????????? char szDeviceType[64]; /// ?????? char szDeviceClass[16]; /// ??????? UINT nOnline; /// ??????????, 0:???? 1:???? UINT nUsed; /// ????????????????? 0:????? 1:??? char szIP[40]; /// ip??? char szMac[18]; /// mac??? char szReserved1[6]; /// ?????? char szSN[32]; /// ?????? char szSoftwareVersion[128]; /// ??????? UINT nVideoInChannels; /// ???????????? UINT nVideoOutChannels; /// ??????????? UINT nAudioInChannels; /// ???????????? UINT nAudioOutChannels; /// ??????????? UINT nAlarmInChannels; /// ????????????? UINT nAlarmOutChannels; /// ???????????? UINT nMaxExtraStream; /// ??????????????(0~3??) EM_NET_SERVER_TYPE emNetServerType; /// ?????????????????? EM_CHANNEL_PROTOCOL_TYPE emProtocolType; /// ??????????????????????? char szReserved2[4]; /// ?????? double dbTemperature; /// ??????????? NET_TIME stuStateChangeTime; /// ???????????????????? char szVideoImageChannelID[32]; /// ???????????? char szPlatformDoID[32]; /// ??????? char szReserved[1024]; /// ??????? }NET_DEVICE_CHANNEL_INFO; ///@brief ???????????????? typedef struct tagNET_GET_DEVICE_INFO_EX { char szDeviceID[128]; /// ???ID char szUrl[512]; /// url char szSerialNo[64]; /// ????????? char szGBCode[32]; /// ?????????? char szOrgCode[64]; /// ?????????????? char szDeviceType[64]; /// ??????? char szDeviceClass[16]; /// ??????? int nMacCount; /// ???mac???? char szMacs[8][18]; /// ???mac????? char szDevSoftVersion[128]; /// ???????????? char szDeviceName[128]; /// ??????? char szDetail[512]; /// ????????? UINT nVideoInChannel; /// ???????????? UINT nVideoOutChannel; /// ??????????? UINT nAudioInChannel; /// ???????????? UINT nAudioOutChannel; /// ??????????? UINT nAlarmIn; /// ????????????? UINT nAlarmOut; /// ???????????? UINT nOnline; /// ?????????? 0:???? 1?????? UINT nErrorCode; /// ???????????? UINT nVtoDoors; /// ??????????????????? UINT nIsPoeDevice; /// ?????POE???, 0????, 1??POE??? UINT nPoePort; /// Poe????, ??????>= 0; isPoeDevice??????????? BOOL bSupportedFR; /// ??????????? BOOL bControlSpeaker; /// ?????????????? EM_DEVICE_ATTRIBUTE emDeviceAttribute; /// ??????? BOOL bSupportedStatistic; /// ??????????? BOOL bIsMainProtocolExist; /// ???????????? BOOL bIsVideoImageEnable; /// ??????????? UINT nVideoImageOnline; /// ???????????? 0:???? 1:???? UINT nVideoImageErrorCode; /// ?????????????? char szVideoImageRegID[32]; /// ?????????? int nMaxChannelCount; /// ??????????????? int nRetChannelCount; /// ?????????????? NET_DEVICE_CHANNEL_INFO *pstuChannelsInfo; /// ??????, ????????????????, ????????sizeof(NET_DEVICE_CHANNEL_INFO)*nMaxChannelCount BOOL bControlLighter; /// ???????????? char szSummaryAddress[128]; /// ???????????? char szReserved[896]; /// ??????? }NET_GET_DEVICE_INFO_EX; ///@brief CLIENT_GetDeviceInfoEx ?????????? typedef struct tagNET_OUT_GET_DEVICE_INFO_EX { DWORD dwSize; /// ??????? int nMaxCount; /// ??????????????? int nRetCount; /// ?????????????? NET_GET_DEVICE_INFO_EX* pstuDeviceInfo; /// ??????????, ????????????????, ????????sizeof(NET_GET_DEVICE_INFO)*nMaxCount }NET_OUT_GET_DEVICE_INFO_EX; ///@brief CLIENT_SetDeviceChannelInfo ?????????? typedef struct tagNET_IN_SET_DEVICE_CHANNEL_INFO { DWORD dwSize; /// ??????? char szDeviceID[128]; /// ???ID UINT nRemoteChannel; /// ???????? char szName[128]; /// ???????????????? char szDetail[512]; /// ????????? char szMainStreamUrl[256]; /// ??????url char szChannelID[32]; /// ??????? char szVideoImageChannelID[32]; /// ???????????? } NET_IN_SET_DEVICE_CHANNEL_INFO; ///@brief CLIENT_SetDeviceChannelInfo ?????????? typedef struct tagNET_OUT_SET_DEVICE_CHANNEL_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_DEVICE_CHANNEL_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachDeviceState(LLONG lLoginID, const NET_IN_ATTACH_DEVICE_STATE *pInParam, NET_OUT_ATTACH_DEVICE_STATE *pOutParam, int nWaitTime); ///@brief ??????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachDeviceState(LLONG lAttachHandle); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AsyncAddDevice(LLONG lLoginID, const NET_IN_ASYNC_ADD_DEVICE *pInParam, NET_OUT_ASYNC_ADD_DEVICE *pOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AsyncAddCustomDevice(LLONG lLoginID, const NET_IN_ASYNC_ADD_CUSTOM_DEVICE *pInParam, NET_OUT_ASYNC_ADD_CUSTOM_DEVICE *pOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachAddDevice(LLONG lLoginID, const NET_IN_ATTACH_ADD_DEVICE *pInParam, NET_OUT_ATTACH_ADD_DEVICE *pOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachAddDevice(LLONG lAttachHandle); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAddDeviceInfo(LLONG lLoginID, const NET_IN_GET_ADD_DEVICE_LIST_INFO *pInParam, NET_OUT_GET_ADD_DEVICE_LIST_INFO *pOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDeviceInfo(LLONG lLoginID, const NET_IN_GET_DEVICE_LIST_INFO *pInParam, NET_OUT_GET_DEVICE_LIST_INFO *pOutParam, int nWaitTime); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetConnectChannel(LLONG lLoginID, const NET_IN_SET_CONNECT_CHANNEL *pInParam, NET_OUT_SET_CONNECT_CHANNEL *pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetChannelInfo(LLONG lLoginID, const NET_IN_GET_CHANNEL_INFO *pInParam, NET_OUT_GET_CHANNEL_INFO *pOutParam, int nWaitTime); ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveDevice(LLONG lLoginID, const NET_IN_REMOVE_DEVICE *pInParam, NET_OUT_REMOVE_DEVICE *pOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CancelAddDeviceTask(LLONG lLoginID, const NET_IN_CANCEL_ADD_TASK *pInParam, NET_OUT_CANCEL_ADD_TASK *pOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ConfirmAddDeviceTask(LLONG lLoginID, const NET_IN_CONFIRM_ADD_TASK *pInParam, NET_OUT_CONFIRM_ADD_TASK *pOutParam, int nWaitTime); ///@brief ???NMP?????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNMPDevInfo(LLONG lLoginID, const NET_IN_GET_NMPDEV_INFO *pInParam, NET_OUT_GET_NMPDEV_INFO *pOutParam, int nWaitTime); ///@brief ???NMP ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNMPDevCaps(LLONG lLoginID, const NET_IN_GET_NMPDEV_CAPS *pInParam, NET_OUT_GET_NMPDEV_CAPS *pOutParam, int nWaitTime); ///@brief ??????NMP ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNMPPortInfoByPage(LLONG lLoginID, const NET_IN_GET_NMPPORT_BY_PAGE *pInParam, NET_OUT_GET_NMPPORT_BY_PAGE *pOutParam, int nWaitTime); ///@brief ??????NMP ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNMPNeighborInfoByPage(LLONG lLoginID, const NET_IN_GET_NMPNEIGHBOR_BY_PAGE *pInParam, NET_OUT_GET_NMPNEIGHBOR_BY_PAGE *pOutParam, int nWaitTime); ///@brief ????NMP ???????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachNMPPortStatus(LLONG lLoginID, const NET_IN_ATTACH_NMP_PORT_STATUS *pInParam, int nWaitTime); ///@brief ???????NMP ????????, lAttachHandle ? CLIENT_AttachNMPPortStatus ??????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachNMPPortStatus(LLONG lAttachHandle); ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ClearPortStatisticsInfo(LLONG lLoginID, const NET_IN_CLEAR_PORT_STATISTICS_INFO *pInParam, NET_OUT_CLEAR_PORT_STATISTICS_INFO *pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PortManagerSetPortInfo(LLONG lLoginID, const NET_IN_PORTMANAGER_SET_PORT_INFO *pInParam, NET_OUT_PORTMANAGER_SET_PORT_INFO *pOutParam, int nWaitTime); ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachNMPPortCongestion(LLONG lLoginID, const NET_IN_ATTACH_NMP_PORT_CONGESTION *pInParam, int nWaitTime); ///@brief ??????????????, lAttachHandle ? CLIENT_AttachNMPPortCongestion ??????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachNMPPortCongestion(LLONG lAttachHandle); ///@brief ????NMP??? ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachNMPAlarmInfo(LLONG lLoginID, const NET_IN_ATTACH_NMP_ALARM_INFO *pInParam, int nWaitTime); ///@brief ???????NMP??? ????????????, lAttachHandle ? CLIENT_AttachNMPAlarmInfo ??????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachNMPAlarmInfo(LLONG lAttachHandle); ///@brief ??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDeviceInfoEx(LLONG lLoginID, const NET_IN_GET_DEVICE_INFO_EX *pstuInParam, NET_OUT_GET_DEVICE_INFO_EX *pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDeviceChannelInfo(LLONG lLoginID, const NET_IN_SET_DEVICE_CHANNEL_INFO *pstuInParam, NET_OUT_SET_DEVICE_CHANNEL_INFO *pstuOutParam, int nWaitTime); #define MAX_BOARD_NUM 2 /// ???????????? ///@brief ???????? typedef enum tagNET_EM_BOARD_STATE { NET_EM_BOARD_STATE_UNKNOWN = 0, /// ??? NET_EM_BOARD_STATE_MASTER, /// ???? NET_EM_BOARD_STATE_SLAVE /// ???? }NET_EM_BOARD_STATE; ///@brief ????????? typedef struct tagNET_BOARD_STATE_INFO { char szTarget[DH_COMMON_STRING_64]; /// ?????????? NET_EM_BOARD_STATE emState; /// ?????????? int nBoardSlot; /// ???????????? BYTE byReserved[1024]; /// ??????? }NET_BOARD_STATE_INFO; ///@brief CLIENT_GetDCSDoubleDevBoardState??????? typedef struct tagNET_IN_GET_BOARD_STATE { DWORD dwSize; /// ??????? }NET_IN_GET_BOARD_STATE; ///@brief CLIENT_GetDCSDoubleDevBoardState??????? typedef struct tagNET_OUT_GET_BOARD_STATE { DWORD dwSize; /// ??????? int nBoardRet; /// ????????????? NET_BOARD_STATE_INFO stuBoardStateList[MAX_BOARD_NUM]; /// ?????????? }NET_OUT_GET_BOARD_STATE; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDCSDoubleDevBoardState(LLONG lLoginID, const NET_IN_GET_BOARD_STATE* pInParam, NET_OUT_GET_BOARD_STATE* pOutParam, int waittime); ///@brief CLIENT_GetDiagnosisEncryptSystemInfo??????? typedef struct tagNET_IN_GET_ENCRYPT_SYSTEM_INFO { DWORD dwSize; }NET_IN_GET_ENCRYPT_SYSTEM_INFO; ///@brief CLIENT_GetDiagnosisEncryptSystemInfo??????? typedef struct tagNET_OUT_GET_ENCRYPT_SYSTEM_INFO { DWORD dwSize; char szEncryptContent[MAX_ENCRYPT_SYSTEM_INFO_CONTENT_LEN]; /// ?????????(????) }NET_OUT_GET_ENCRYPT_SYSTEM_INFO; ///@brief ??????????,???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDiagnosisEncryptSystemInfo(LLONG lLoginID, const NET_IN_GET_ENCRYPT_SYSTEM_INFO* pInParam, NET_OUT_GET_ENCRYPT_SYSTEM_INFO* pOutParam, int nWaitTime); /// ???????????? #define MAX_LOG_LIST_COUNT 100 ///@brief ??????????? typedef enum tagEM_QUERY_EVENT_LOG_TYPE { EM_QUERY_EVENT_LOG_TYPE_UNKNOWN, /// ??? EM_QUERY_EVENT_LOG_TYPE_MOTION_DETECT, /// ????????? EM_QUERY_EVENT_LOG_TYPE_INPUT_ALARM, /// ??????????? EM_QUERY_EVENT_LOG_TYPE_VIDEO_LOSS, /// ????????? EM_QUERY_EVENT_LOG_TYPE_NO_DISK, /// ???????? EM_QUERY_EVENT_LOG_TYPE_DISK_ERROR, /// ????????? EM_QUERY_EVENT_LOG_TYPE_DISK_FULL, /// ???????? EM_QUERY_EVENT_LOG_TYPE_NET_ABORT, /// ??????????? EM_QUERY_EVENT_LOG_TYPE_IP_CONFLICT, /// IP?????? EM_QUERY_EVENT_LOG_TYPE_TEMPERATURE_ALARM, /// ????????? EM_QUERY_EVENT_LOG_TYPE_POWER_FAULT, /// ?????????? } EM_QUERY_EVENT_LOG_TYPE; ///@brief ?????????? typedef struct tagNET_LOG_LIST_INFO { EM_QUERY_EVENT_LOG_TYPE emEventType; /// ??????? int nChannel; /// ??????????????, -1???????????????? NET_TIME stStartTime; /// ?????? BYTE byReserved[1024]; /// ??????? } NET_LOG_LIST_INFO; ///@brief CLIENT_QueryEventLog ??????? typedef struct tagNET_IN_QUERY_EVENT_LOG { DWORD dwSize; /// ??????? char szUUID[MAX_COMMON_STRING_128]; /// ???ID } NET_IN_QUERY_EVENT_LOG; ///@brief CLIENT_QueryEventLog ??????? typedef struct tagNET_OUT_QUERY_EVENT_LOG { DWORD dwSize; /// ??????? int nLogListCount; /// ??????? NET_LOG_LIST_INFO stLogList[MAX_LOG_LIST_COUNT]; /// ??????? char szDeviceName[MAX_COMMON_STRING_64]; /// ??????? int nQueryID; /// ???ID } NET_OUT_QUERY_EVENT_LOG; ///@brief ?????????????(pInParam??pOutParam????????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryEventLog(LLONG lLoginID, const NET_IN_QUERY_EVENT_LOG* pInParam, NET_OUT_QUERY_EVENT_LOG* pOutParam, int nWaitTime); ///@brief CLIENT_ConfirmEventLog ??????? typedef struct tagNET_IN_CONFIRM_EVENT_LOG { DWORD dwSize; /// ??????? char szUUID[MAX_COMMON_STRING_64]; /// ???ID int nQueryID; /// ???ID } NET_IN_CONFIRM_EVENT_LOG; ///@brief CLIENT_ConfirmEventLog ??????? typedef struct tagNET_OUT_CONFIRM_EVENT_LOG { DWORD dwSize; /// ??????? } NET_OUT_CONFIRM_EVENT_LOG; ///@brief ?????????????????????(pInParam??pOutParam????????????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ConfirmEventLog(LLONG lLoginID, const NET_IN_CONFIRM_EVENT_LOG* pInParam, NET_OUT_CONFIRM_EVENT_LOG* pOutParam, int nWaitTime); #define DH_MAX_DISKLISK_NUM 1024 /// ????????? ///@brief CLIENT_GetStorageBoundTimeEx ??? typedef struct tagNET_IN_GET_BOUND_TIMEEX { DWORD dwSize; /// ??????? int nDiskCount; /// ???????? int nDiskList[DH_MAX_DISKLISK_NUM]; /// ????????? }NET_IN_GET_BOUND_TIMEEX; ///@brief ???????????? typedef struct tagNET_BOUND_TIME_INFO { UINT nDiskNO; /// ????? NET_TIME_EX stuStartTime; /// ?????? NET_TIME_EX stuEndTime; /// ??????? BYTE byReserved[1024]; /// ??????? }NET_BOUND_TIME_INFO; ///@brief CLIENT_GetStorageBoundTimeEx ???? typedef struct tagNET_OUT_GET_BOUND_TIMEEX { DWORD dwSize; /// ??????? int nRetDiskCount; /// ???????????? NET_BOUND_TIME_INFO stuBoundTime[DH_MAX_DISKLISK_NUM]; /// ???????????? }NET_OUT_GET_BOUND_TIMEEX; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStorageBoundTimeEx(LLONG lLoginID, const NET_IN_GET_BOUND_TIMEEX* pInParam, NET_OUT_GET_BOUND_TIMEEX* pOutParam, int waittime); ///@brief CLIENT_GetStoragePortInfo ??? typedef struct tagNET_IN_GET_PORTINFO { DWORD dwSize; /// ??????? }NET_IN_GET_PORTINFO; ///@brief CLIENT_GetStoragePortInfo ???? typedef struct tagNET_OUT_GET_PORTINFO { DWORD dwSize; /// ??????? UINT nTotal; /// ????????????????????????? UINT nPlug; /// ??????????????, ?????????? UINT nMask; /// ????????????????????????????????? UINT nBadDisk; /// ????????????????????????? UINT nIDEDisk; /// ??????IDE????? UINT nESATA; /// eSATA???????? UINT nUSB2; /// ??????USB2.0?????USB??????? UINT nUSB3; /// ??????USB3.0?????USB??????? }NET_OUT_GET_PORTINFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStoragePortInfo(LLONG lLoginID, const NET_IN_GET_PORTINFO* pInParam, NET_OUT_GET_PORTINFO* pOutParam, int waittime); /// NAS?????????????? #define MAX_NASFILE_COUNT 1024 ///@brief NAS??????????? typedef enum tagEM_NAS_FILE_OPERATE_TYPE { EM_NAS_FILE_OPERATE_TYPE_COPY, /// ????, ???????pInParam = NET_IN_COPY_NAS_FILE,pOutParam = NET_OUT_COPY_NAS_FILE EM_NAS_FILE_OPERATE_TYPE_MOVE, /// ???, ???????pInParam = NET_IN_MOVE_NAS_FILE,pOutParam = NET_OUT_MOVE_NAS_FILE EM_NAS_FILE_OPERATE_TYPE_REMOVE, /// ???, ???????pInParam = NET_IN_REMOVE_NAS_FILE,pOutParam = NET_OUT_REMOVE_NAS_FILE } EM_NAS_FILE_OPERATE_TYPE; ///@brief NAS????????????? typedef enum tagEM_NAS_FILE_OPTION { EM_NAS_FILE_OPTION_UNKNOWN, /// ??? EM_NAS_FILE_OPTION_U, /// ????????????????????????????????? EM_NAS_FILE_OPTION_F, /// ??????????????????????? } EM_NAS_FILE_OPTION; ///@brief NAS?????????????? typedef struct tagNET_IN_COPY_NAS_FILE { DWORD dwSize; char szID[MAX_COMMON_STRING_128]; /// ????????????ID int nSrcNum; /// ????(??)?????? char szSrcList[MAX_NASFILE_COUNT][MAX_COMMON_STRING_128]; /// ????(??)?????? char szDstPath[MAX_COMMON_STRING_128]; /// ??????? EM_NAS_FILE_OPTION emOption; /// ??????? } NET_IN_COPY_NAS_FILE ; ///@brief NAS?????????????? typedef struct tagNET_OUT_COPY_NAS_FILE { DWORD dwSize; } NET_OUT_COPY_NAS_FILE; ///@brief NAS????????????? typedef struct tagNET_IN_MOVE_NAS_FILE { DWORD dwSize; char szID[MAX_COMMON_STRING_128]; /// ????????????ID int nSrcNum; /// ????(??)?????? char szSrcList[MAX_NASFILE_COUNT][MAX_COMMON_STRING_128]; /// ????(??)?????? char szDstPath[MAX_COMMON_STRING_128]; /// ??????? EM_NAS_FILE_OPTION emOption; /// ?????? } NET_IN_MOVE_NAS_FILE; ///@brief NAS????????????? typedef struct tagNET_OUT_MOVE_NAS_FILE { DWORD dwSize; } NET_OUT_MOVE_NAS_FILE; ///@brief NAS????????????? typedef struct tagNET_IN_REMOVE_NAS_FILE { DWORD dwSize; char szID[MAX_COMMON_STRING_128]; /// ????ID int nFileNum; /// ?????????? char szFileName[MAX_NASFILE_COUNT][MAX_COMMON_STRING_128]; /// ??????????? } NET_IN_REMOVE_NAS_FILE; ///@brief NAS????????????? typedef struct tagNET_OUT_REMOVE_NAS_FILE { DWORD dwSize; } NET_OUT_REMOVE_NAS_FILE; ///@brief NAS?????????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ???????????????????,????????emOperateType???????? ///@param[out] pOutParam ??????????, ???????????????????,????????emOperateType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateNASFile(LLONG lLoginID, EM_NAS_FILE_OPERATE_TYPE emOperateType, void *pInParam, void *pOutParam, int nWaitTime); #define MAX_FILE_COMPRESS_COUNT 8 /// ???????????? ///@brief ????????? typedef enum tagEM_COMPRESS_TYPE { EM_COMPRESS_TYPE_UNKNWON, /// ??? EM_COMPRESS_TYPE_ZIP, /// zip??? } EM_COMPRESS_TYPE; ///@brief ????????????????? typedef struct tagNET_IN_COMPRESS_FILE { DWORD dwSize; char szID[MAX_COMMON_STRING_128]; /// ????ID int nSrcNum; /// ????(??)?????? char szSrcFileList[MAX_FILE_COMPRESS_COUNT][MAX_COMMON_STRING_128]; /// ????(??)?????? char szDstFile[MAX_COMMON_STRING_128]; /// ?????? char szPassword[MAX_COMMON_STRING_64]; /// ???? EM_COMPRESS_TYPE emCompressType; /// ?????? } NET_IN_COMPRESS_FILE; ///@brief ????????????????? typedef struct tagNET_OUT_COMPRESS_FILE { DWORD dwSize; } NET_OUT_COMPRESS_FILE; ///@brief ????????????????? typedef struct tagNET_IN_DECOMPRESS_FILE { DWORD dwSize; char szID[MAX_COMMON_STRING_128]; /// ????ID char szSrcFile[MAX_COMMON_STRING_128]; /// ?????? char szDstPath[MAX_COMMON_STRING_128]; /// ?????????? char szPassword[MAX_COMMON_STRING_64]; /// ???? } NET_IN_DECOMPRESS_FILE; ///@brief ????????????????? typedef struct tagNET_OUT_DECOMPRESS_FILE { DWORD dwSize; } NET_OUT_DECOMPRESS_FILE; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] emOperateType ???????? ///@param[in] pInParam ??????????, ???????????????????,????????emOperateType???????? ///@param[out] pOutParam ??????????, ???????????????????,????????emOperateType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateFileCompress(LLONG lLoginID, EM_FILE_COMPRESS_TYPE emOperateType, void *pInParam, void *pOutParam, int nWaitTime); ///////////////////////////////////////???????????////////////////////////////////////////////////////////////////// #define MAX_GROUP_CHANNEL_NUM 1024 /// ???????????????????? #define MAX_GROUPID_LEN 64 /// ??ID???????????? #define MAX_GROUPNAME_LEN 128 /// ????????????????? ///@brief ?????????? typedef struct tagNET_NUMBERSTATGROUP_SUBTOTAL { int nTotal; /// ???????????????????? int nHour; /// ???????????? int nToday; /// ???????????, ?????????? int nTotalInTimeSection; /// IPC????????????clearSectionStat???????????Today???? BYTE byReserved[252]; } NET_NUMBERSTATGROUP_SUBTOTAL; ///@brief ?????????????? typedef struct tagNET_NUMBERSTATGROUP_SUMMARY { char szGroupID[MAX_GROUPID_LEN]; /// ??ID char szGroupName[MAX_GROUPNAME_LEN]; /// ???? int nChannelNum; /// ??????? int arChannelList[MAX_GROUP_CHANNEL_NUM]; /// ????????? NET_TIME_EX stuUTC; /// ??????????????????????? int nTimeZone; /// ????????? NET_NUMBERSTATGROUP_SUBTOTAL stuEnteredSubtotal; /// ???????? NET_NUMBERSTATGROUP_SUBTOTAL stuExitedSubtotal; /// ??????? int nInsideSubtotal; /// ?????????? BYTE byReserved[1024]; /// ???? } NET_NUMBERSTATGROUP_SUMMARY; ///@brief ?????????????????????????lAttachHandle ?? CLIENT_AttachNumberStatGroupSummary ????? typedef void (CALLBACK *fNumberStatGroupSumCallBack) (LLONG lAttachHandle, NET_NUMBERSTATGROUP_SUMMARY* pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief ???????????????????--??????? typedef struct tagNET_IN_ATTACH_NUMBERSTATGROUP_SUM { DWORD dwSize; /// ??????? fNumberStatGroupSumCallBack cbNumberStatGroupSum; /// ?????????????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_NUMBERSTATGROUP_SUM; ///@brief ???????????????????--??????? typedef struct tagNET_OUT_ATTACH_NUMBERSTATGROUP_SUM { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_NUMBERSTATGROUP_SUM; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachNumberStatGroupSummary(LLONG lLoginID, const NET_IN_ATTACH_NUMBERSTATGROUP_SUM* pInParam, NET_OUT_ATTACH_NUMBERSTATGROUP_SUM* pOutParam, int waittime); ///@brief ?????????????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachNumberStatGroupSummary(LLONG lAttachHandle); ///@brief ??????????--?????? ??????? typedef struct tagNET_IN_ADD_NUMBERSTATGROUP_INFO { DWORD dwSize; /// ??????? char szGroupName[MAX_GROUPNAME_LEN]; /// ???? int nChannelNum; /// ????? int arChannelList[MAX_GROUP_CHANNEL_NUM]; /// ??????? }NET_IN_ADD_NUMBERSTATGROUP_INFO; ///@brief ??????????--?????? ??????? typedef struct tagNET_OUT_ADD_NUMBERSTATGROUP_INFO { DWORD dwSize; /// ??????? char szGroupID[MAX_GROUPID_LEN]; /// GroupID }NET_OUT_ADD_NUMBERSTATGROUP_INFO; ///@brief ??????????--?????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddNumberStatGroup(LLONG lLoginID, const NET_IN_ADD_NUMBERSTATGROUP_INFO* pInParam, NET_OUT_ADD_NUMBERSTATGROUP_INFO* pOutParam, int waittime); ///@brief ??????????--????? ??????? typedef struct tagNET_IN_DEL_NUMBERSTATGROUP_INFO { DWORD dwSize; /// ??????? char szGroupID[MAX_GROUPID_LEN]; /// GroupID }NET_IN_DEL_NUMBERSTATGROUP_INFO; ///@brief ??????????--????? ??????? typedef struct tagNET_OUT_DEL_NUMBERSTATGROUP_INFO { DWORD dwSize; /// ??????? }NET_OUT_DEL_NUMBERSTATGROUP_INFO; ///@brief ??????????--????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelNumberStatGroup(LLONG lLoginID, const NET_IN_DEL_NUMBERSTATGROUP_INFO* pInParam, NET_OUT_DEL_NUMBERSTATGROUP_INFO* pOutParam, int waittime); ///@brief ????? typedef struct tagNET_NUMBERSTATGROUP_INFO { char szGroupID[MAX_GROUPID_LEN]; /// GroupID char szGroupName[MAX_GROUPNAME_LEN]; /// ?????? int nChannelNum; /// ??????? int arChannelList[MAX_GROUP_CHANNEL_NUM]; /// ????????? BYTE byReserved[512]; /// ???? }NET_NUMBERSTATGROUP_INFO; ///@brief ??????????--????? ??????? typedef struct tagNET_IN_MODIFY_NUMBERSTATGROUP_INFO { DWORD dwSize; /// ??????? NET_NUMBERSTATGROUP_INFO stuGroupInfo; }NET_IN_MODIFY_NUMBERSTATGROUP_INFO; ///@brief ??????????--????? ??????? typedef struct tagNET_OUT_MODIFY_NUMBERSTATGROUP_INFO { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_NUMBERSTATGROUP_INFO; ///@brief ??????????--????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyNumberStatGroup(LLONG lLoginID, const NET_IN_MODIFY_NUMBERSTATGROUP_INFO* pInParam, NET_OUT_MODIFY_NUMBERSTATGROUP_INFO* pOutParam, int waittime); ///@brief ??????????--????? ??????? typedef struct tagNET_IN_NUMBERSTATGROUPS_INFO { DWORD dwSize; /// ??????? char szGroupID[MAX_GROUPID_LEN]; /// GroupID }NET_IN_NUMBERSTATGROUPS_INFO; ///@brief ??????????--????? ??????? typedef struct tagNET_OUT_NUMBERSTATGROUPS_INFO { DWORD dwSize; /// ??????? int nGroupsRetNum; /// ?????????? int nGroupsMaxNum; /// ??????????????? NET_NUMBERSTATGROUP_INFO* pstuGroupList; /// ??????, ??????????????sizeof(NET_NUMBERSTATGROUP_INFO) * nGroupsMaxNum }NET_OUT_NUMBERSTATGROUPS_INFO; ///@brief ??????????--????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNumberStatGroups(LLONG lLoginID, const NET_IN_NUMBERSTATGROUPS_INFO* pInParam, NET_OUT_NUMBERSTATGROUPS_INFO* pOutParam, int waittime); ///@brief ??????????--???????? ??????? typedef struct tagNET_IN_NUMBERSTATGROUPSUMMARY_INFO { DWORD dwSize; /// ??????? char szGroupID[MAX_GROUPID_LEN]; /// GroupID }NET_IN_NUMBERSTATGROUPSUMMARY_INFO; ///@brief ??????????--???????? ??????? typedef struct tagNET_OUT_NUMBERSTATGROUPSUMMARY_INFO { DWORD dwSize; /// ??????? NET_NUMBERSTATGROUP_SUMMARY stuSummary; /// ????? }NET_OUT_NUMBERSTATGROUPSUMMARY_INFO; ///@brief ??????????--???????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNumberStatGroupSummary(LLONG lLoginID, const NET_IN_NUMBERSTATGROUPSUMMARY_INFO* pInParam, NET_OUT_NUMBERSTATGROUPSUMMARY_INFO* pOutParam, int waittime); ///@brief ????????????????? typedef enum tagEM_NUMBERSTATGROUP_RULE_TYPE { EM_NUMBERSTATGROUP_RULE_UNKNOWN = 0, EM_NUMBERSTATGROUP_RULE_NUMBERSTAT, /// ????Entered??Exited EM_NUMBERSTATGROUP_RULE_MANNUMBERDETECTION, /// ????Inside??? }EM_NUMBERSTATGROUP_RULE_TYPE; ///@brief ?????????? typedef enum tagEM_GRANULARITY_TYPE { EM_GRANULARITY_UNKNOWN = 0, EM_GRANULARITY_MINUTE, /// ?????? EM_GRANULARITY_HOUR, /// ????? EM_GRANULARITY_DAY, /// ???? EM_GRANULARITY_WEEK, /// ???? EM_GRANULARITY_MONTH, /// ???? EM_GRANULARITY_SEASON, /// ???? EM_GRANULARITY_YEAR /// ???? }EM_GRANULARITY_TYPE; ///@brief ??????? typedef struct tagNET_IN_NUMBERSTATGROUP_START_FIND_INFO { DWORD dwSize; /// ??????? char szGroupID[MAX_GROUPID_LEN]; /// ??ID,?""?????????? NET_TIME stStartTime; /// ?????? NET_TIME stEndTime; /// ??????? EM_NUMBERSTATGROUP_RULE_TYPE emRuleType; /// ????????????????? EM_GRANULARITY_TYPE emGranularity; /// ??????? UINT nPlanID; /// ???ID,?????????,??1??? }NET_IN_NUMBERSTATGROUP_START_FIND_INFO; ///@brief ?????? typedef struct tagNET_OUT_NUMBERSTATGROUP_START_FIND_INFO { DWORD dwSize; /// ??????? UINT nTotalCount; /// ???????????????? }NET_OUT_NUMBERSTATGROUP_START_FIND_INFO; ///@brief ??????????--??????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartFindNumberStatGroup(LLONG lLoginID, const NET_IN_NUMBERSTATGROUP_START_FIND_INFO* pInParam, NET_OUT_NUMBERSTATGROUP_START_FIND_INFO* pOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_NUMBERSTATGROUP_RECORD { char szGroupID[MAX_GROUPID_LEN]; /// ??ID char szGroupName[MAX_GROUPNAME_LEN]; /// ???? int nChannelNum; /// ??????? int arChannelList[MAX_GROUP_CHANNEL_NUM]; /// ????????? EM_NUMBERSTATGROUP_RULE_TYPE emRuleName; /// ???????? NET_TIME_EX stuStartTime; /// ???????? NET_TIME_EX stuEndTime; /// ?????????,?????????????????????????? UINT nEnteredSubtotal; /// ???????? UINT nExitedSubtotal; /// ??????? UINT nInsideSubtotal; /// ?????????? BYTE byReserved[1024]; /// ???? } NET_NUMBERSTATGROUP_RECORD; ///@brief CLIENT_DoFindNumberStatGroup??????? typedef struct tagNET_IN_NUMBERSTATGROUP_DO_FIND_INFO { DWORD dwSize; int nStartNo; /// ?????? int nCount; /// ???????????????? }NET_IN_NUMBERSTATGROUP_DO_FIND_INFO; ///@brief CLIENT_DoFindNumberStatGroup??????? typedef struct tagNET_OUT_NUMBERSTATGROUP_DO_FIND_INFO { DWORD dwSize; int nRetNum; /// ?????????????? int nMaxNum; /// ?????????????? NET_NUMBERSTATGROUP_RECORD* pstuInfo; /// ??????, ??????????,?????sizeof(NET_NUMBERSTATGROUP_RECORD)*nMaxNum }NET_OUT_NUMBERSTATGROUP_DO_FIND_INFO; ///@brief ??????????--???? ///@param[in] lFindHandle ??????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindNumberStatGroup(LLONG lFindHandle, const NET_IN_NUMBERSTATGROUP_DO_FIND_INFO* pInParam, NET_OUT_NUMBERSTATGROUP_DO_FIND_INFO* pOutParam, int nWaitTime); ///@brief ??????????--?????? ///@param[in] lFindHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindNumberStatGroup(LLONG lFindHandle); /**************************?????????????*************************/ #define MAX_SECONDARY_ANALYSE_TASK_NUM 32 /// ?????????????????????? #define MAX_SECONDARY_ANALYSE_RULE_NUM 8 /// ?????????????????????? #define MAX_SECONDARY_ANALYSE_EVENT_NUM 8 /// ????????????????????? ///@brief ???????????????? typedef enum tagEM_SECONDARY_ANALYSE_STATE { EM_SECONDARY_ANALYSE_UNKNOWN, /// ??? EM_SECONDARY_ANALYSE_WAIT_DOWNLOAD, /// ??????? EM_SECONDARY_ANALYSE_DOWNLOADING, /// ?????? EM_SECONDARY_ANALYSE_WAIT_ANALYSE, /// ??????? EM_SECONDARY_ANALYSE_ANALYSING, /// ?????? EM_SECONDARY_ANALYSE_FINISH_ANALYSE, /// ?????? EM_SECONDARY_ANALYSE_DOWNLOAD_FAILED, /// ??????? EM_SECONDARY_ANALYSE_CANCELLED, /// ??????? EM_SECONDARY_ANALYSE_NOTENOUGH_ANALYSER, /// ?????????? EM_SECONDARY_ANALYSE_ANALYSER_ERROR, /// ???????? EM_SECONDARY_ANALYSE_PAUSE_DOWNLOAD, /// ??????? EM_SECONDARY_ANALYSE_PAUSE_ANALYSE, /// ??????? } EM_SECONDARY_ANALYSE_STATE; ///@brief ??????????????????? typedef struct tagNET_ANALYSE_TASK_INFO { UINT nTaskID; /// ????ID EM_SECONDARY_ANALYSE_STATE emAnalyseState; /// ????????? char szTaskName[DH_COMMON_STRING_128]; /// ??????????? UINT nProgress; /// ??????????? BYTE byReserved[516]; /// ??????? } NET_ANALYSE_TASK_INFO; ///@brief ?????????????????????????? typedef struct tagNET_CB_SECONDARY_ANALYSE_INFO { int nRetAnalyseTaskCount; /// ????????????????????? BYTE byReserved1[4]; /// ?????? NET_ANALYSE_TASK_INFO stuAnalyseTaskInfo[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ??????????????? LDWORD dwUser; /// ??????? BYTE byReserved[512]; /// ??????? } NET_CB_SECONDARY_ANALYSE_INFO; ///@brief ????????????????????????? typedef int (CALLBACK *fSecondaryAnalyseCallBack)(LLONG lAnalyseHandle, NET_CB_SECONDARY_ANALYSE_INFO *pstSecondaryAnalyseInfo); ///@brief ????????????????????????? typedef struct tagNET_IN_ATTACH_SECONDARY_ANALYSE_STATE { DWORD dwSize; /// ??????????? BYTE byReserved[4]; /// ?????? fSecondaryAnalyseCallBack cbSecondaryAnalyse; /// ??????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_SECONDARY_ANALYSE_STATE; ///@brief ????????????????????????? typedef struct tagNET_OUT_ATTACH_SECONDARY_ANALYSE_STATE { DWORD dwSize; /// ??????????? } NET_OUT_ATTACH_SECONDARY_ANALYSE_STATE; ///@brief ????????????? typedef struct tagNET_ANALYSE_RULE_FACE_ANALYSIS_INFO { UINT nSimilarity; /// ????? UINT nGroupNum; /// ???????? char szGroupID[MAX_FACE_DB_NUM][DH_COMMON_STRING_64]; /// ?????ID BYTE byReserved[1024]; /// ??????? } NET_ANALYSE_RULE_FACE_ANALYSIS_INFO; ///@brief ???????? typedef enum tagEM_ANALYSE_RULE_TYPE { EM_ANALYSE_RULE_UNKNOWN, /// ??? EM_ANALYSE_RULE_FACE_ANALYSIS, /// ??????, ??????? NET_ANALYSE_RULE_FACE_ANALYSIS_INFO EM_ANALYSE_RULE_FACE_ATTRIBUTE, /// ?????, ????????? } EM_ANALYSE_RULE_TYPE; ///@brief ??????? typedef enum tagEM_ANALYSE_EVENT_TYPE { EM_ANALYSE_EVENT_UNKNOWN, /// ??? EM_ANALYSE_EVENT_ALL, /// ??????? EM_ANALYSE_EVENT_FACE_DETECTION, /// ????????, ??????? DEV_EVENT_FACEDETECT_INFO EM_ANALYSE_EVENT_FACE_RECOGNITION, /// ?????????, ??????? DEV_EVENT_FACERECOGNITION_INFO EM_ANALYSE_EVENT_TRAFFICJUNCTION, /// ??????????, ??????? DEV_EVENT_TRAFFICJUNCTION_INFO EM_ANALYSE_EVENT_HUMANTRAIT, /// ???????????, ??????? DEV_EVENT_HUMANTRAIT_INFO EM_ANALYSE_EVENT_XRAY_DETECTION, /// X?????????, ??????? DEV_EVENT_XRAY_DETECTION_INFO EM_ANALYSE_EVENT_WORKCLOTHESDETECT, /// ???(????/????????)??????, ??????? DEV_EVENT_WORKCLOTHES_DETECT_INFO EM_ANALYSE_EVENT_WORKSTATDETECTION, /// ?????????, ??????? DEV_EVENT_WORKSTATDETECTION_INFO EM_ANALYSE_EVENT_CORSSLINEDETECTION, /// ???????????, ??????? DEV_EVENT_CROSSLINE_INFO EM_ANALYSE_EVENT_CROSSREGIONDETECTION, /// ???????????, ??????? DEV_EVENT_CROSSREGION_INFO EM_ANALYSE_EVENT_FEATURE_ABSTRACT, /// ?????????? DEV_EVENT_FEATURE_ABSTRACT_INFO EM_ANALYSE_EVENT_ELECTRIC_GLOVE_DETECT, /// ????????????????, ??????? DEV_EVENT_ELECTRIC_GLOVE_DETECT_INFO EM_ANALYSE_EVENT_ELECTRIC_LADDER_DETECT, /// ????????????????, ??????? DEV_EVENT_ELECTRIC_LADDER_DETECT_INFO EM_ANALYSE_EVENT_ELECTRIC_CURTAIN_DETECT, /// ?????????????, ??????? DEV_EVENT_ELECTRIC_CURTAIN_DETECT_INFO EM_ANALYSE_EVENT_ELECTRIC_FENCE_DETECT, /// ?????????????????, ??????? DEV_EVENT_ELECTRIC_FENCE_DETECT_INFO EM_ANALYSE_EVENT_ELECTRIC_SIGNBOARD_DETECT, /// ????????????????, ??????? DEV_EVENT_ELECTRIC_SIGNBOARD_DETECT_INFO EM_ANALYSE_EVENT_ELECTRIC_BELT_DETECT, /// ????????????????, ??????? DEV_EVENT_ELECTRIC_BELT_DETECT_INFO EM_ANALYSE_EVENT_BANNER_DETECTION, /// ???????????, ???????? DEV_EVENT_BANNER_DETECTION_INFO EM_ANALYSE_EVENT_SMART_KITCHEN_CLOTHES_DETECTION, /// ???????????????, ??????? DEV_EVENT_SMART_KITCHEN_CLOTHES_DETECTION_INFO EM_ANALYSE_EVENT_WATER_STAGE_MONITOR, /// ?????????, ???????DEV_EVENT_WATER_STAGE_MONITOR_INFO EM_ANALYSE_EVENT_FLOATINGOBJECT_DETECTION, /// ??????????, ??????? DEV_EVENT_FLOATINGOBJECT_DETECTION_INFO EM_ANALYSE_EVENT_IVS_RIOTERDETECTION, /// ?????? ??????? DEV_EVENT_RIOTERL_INFO) EM_ANALYSE_EVENT_IVS_LEFTDETECTION, /// ?????????? ??????? DEV_EVENT_LEFT_INFO EM_ANALYSE_EVENT_IVS_PARKINGDETECTION, /// ????????? ??????? DEV_EVENT_PARKINGDETECTION_INFO EM_ANALYSE_EVENT_IVS_WANDERDETECTION, /// ????????????? DEV_EVENT_WANDER_INFO EM_ANALYSE_EVENT_IVS_VIDEOABNORMALDETECTION,/// ???????????? DEV_EVENT_VIDEOABNORMALDETECTION_INFO EM_ANALYSE_EVENT_MOVEDETECTION, /// ?????????, ??????? DEV_EVENT_MOVE_INFO EM_ANALYSE_EVENT_VIDEO_NORMAL_DETECTION, /// ??????????,??????????????????,?????????????????????????,??????? DEV_EVENT_VIDEO_NORMAL_DETECTION_INFO EM_ANALYSE_EVENT_CONVEYER_BELT_BULK, /// ?????????????????, ??????? DEV_EVENT_CONVEYER_BELT_BULK_INFO EM_ANALYSE_EVENT_CONVEYER_BELT_NONLOAD, /// ??????????????, ??????? DEV_EVENT_CONVEYER_BELT_NONLOAD_INFO EM_ANALYSE_EVENT_CONVEYER_BELT_RUNOFF, /// ??????????????, ??????? DEV_EVENT_CONVEYER_BELT_RUNOFF_INFO EM_ANALYSE_EVENT_CONVEYER_BELT_BLOCK, /// ???????????????, ??????? DEV_EVENT_CONVEYORBLOCK_DETECTION_INFO EM_ANALYSE_EVENT_NUMBER_STAT, /// ??????????, ??? ???? DEV_EVENT_NUMBERSTAT_INFO EM_ANALYSE_EVENT_FIGHTDETECTION, /// ??????, ??????? DEV_EVENT_FIGHT_INFO EM_ANALYSE_EVENT_SMOKEDETECTION, /// ??????????????, ??????? DEV_EVENT_SMOKE_INFO EM_ANALYSE_EVENT_FIREDETECTION, /// ???????, ??????? DEV_EVENT_FIRE_INFO EM_ANALYSE_EVENT_PHONECALL_DETECT, /// ??????????, ??????? DEV_EVENT_PHONECALL_DETECT_INFO EM_ANALYSE_EVENT_SMOKING_DETECT, /// ?????????, ??????? DEV_EVENT_SMOKING_DETECT_INFO EM_ANALYSE_EVENT_TUMBLE_DETECTION, /// ??????????, ??????? DEV_EVENT_TUMBLE_DETECTION_INFO EM_ANALYSE_EVENT_WATER_LEVEL_DETECTION, /// ??????????, ??????? DEV_EVENT_WATER_LEVEL_DETECTION_INFO EM_ANALYSE_EVENT_CLIMBDETECTION, /// ????????, ??????? DEV_EVENT_IVS_CLIMB_INFO EM_ANALYSE_EVENT_MAN_NUM_DETECTION, /// ???????????????????????, ???????DEV_EVENT_MANNUM_DETECTION_INFO EM_ANALYSE_EVENT_DIALRECOGNITION, /// ?????????, ???????DEV_EVENT_DIALRECOGNITION_INFO EM_ANALYSE_EVENT_ELECTRICFAULT_DETECT, /// ?????????????, ???????DEV_EVENT_ELECTRICFAULTDETECT_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_ROAD_BLOCK, /// ????????????,??????? DEV_EVENT_TRAFFIC_ROAD_BLOCK_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_ROAD_CONSTRUCTION, ///????????????????,??????? DEV_EVENT_TRAFFIC_ROAD_CONSTRUCTION_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_FLOWSTATE, /// ?????????????,??????? DEV_EVENT_TRAFFIC_FLOW_STATE EM_ANALYSE_EVENT_IVS_TRAFFIC_OVERSPEED, /// ???????,??????? DEV_EVENT_TRAFFIC_OVERSPEED_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_UNDERSPEED, /// ??????,??????? DEV_EVENT_TRAFFIC_UNDERSPEED_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_OVERYELLOWLINE,/// ????????,??????? DEV_EVENT_TRAFFIC_OVERYELLOWLINE_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_CROSSLANE, /// ??????????, ??????? DEV_EVENT_TRAFFIC_CROSSLANE_INFO EM_ANALYSE_EVENT_IVS_TRAFFICJAM, /// ?????????, ??????? DEV_EVENT_TRAFFICJAM_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_PEDESTRAIN, /// ??????????, ??????? DEV_EVENT_TRAFFIC_PEDESTRAIN_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_THROW, /// ?????????, ??????? DEV_EVENT_TRAFFIC_THROW_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_RETROGRADE, /// ??????????, ??????? DEV_EVENT_TRAFFIC_RETROGRADE_INFO EM_ANALYSE_EVENT_IVS_TRAFFICACCIDENT, /// ?????????, ??????? DEV_EVENT_TRAFFICACCIDENT_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_BACKING, /// ???????, ??????? DEV_EVENT_IVS_TRAFFIC_BACKING_INFO EM_ANALYSE_EVENT_IVS_FOG_DETECTION, /// ??????????, ??????? DEV_EVENT_FOG_DETECTION EM_ANALYSE_EVENT_IVS_CROSSREGIONDETECTION, /// ???????????, ??????? DEV_EVENT_CROSSREGION_INFO EM_ANALYSE_EVENT_IVS_TRAFFIC_PARKING, /// ?????????????????????? DEV_EVENT_TRAFFIC_PARKING_INFO EM_ANALYSE_EVENT_IVS_FINANCE_CASH_TRANSACTION,///????????????????,??????? DEV_EVENT_FINANCE_CASH_TRANSACTION_INFO EM_ANALYSE_EVENT_IVS_LEAVEDETECTION, /// ????????,??????? DEV_EVENT_IVS_LEAVE_INFO EM_ANALYSE_EVENT_IVS_LADLE_NO_DETECTION, /// ????????????,??????? DEV_EVENT_LADLE_NO_DETECTION_INFO EM_ANALYSE_EVENT_IVS_STAYDETECTION, /// ??????,??????? DEV_EVENT_STAY_INFO EM_ANALYSE_EVENT_IVS_NEAR_OBJECT_DETECT, /// ???????????,??????? DEV_EVENT_NEAR_OBJECT_DETECT_INFO EM_ANALYSE_EVENT_IVS_CRANE_LOAD_STAY_DETECTION, /// ?????????????,??????? DEV_EVENT_CRANE_LOAD_STAY_DETECTION_INFO EM_ANALYSE_EVENT_IVS_PIC_COMPARE_DETECTION, /// ???????????,??????? NET_DEV_EVENT_PIC_COMPARE_DETECTION_INFO EM_ANALYSE_EVENT_CONVEYOR_ARTICLE_TYPE, /// ??????????????, ??????? DEV_EVENT_CONVEYOR_ARTICLE_TYPE_INFO EM_ANALYSE_EVENT_CONVEYOR_BELT_STATUS, /// ??????????????????, ??????? NET_DEV_EVENT_CONVEYOR_BELT_STATUS_INFO EM_ANALYSE_EVENT_SIGNAL_LIGHTOFF_DETECTION, /// ?????????????, ??????? NET_DEV_EVENT_SIGNAL_LIGHTOFF_DETECTION_INFO EM_ANALYSE_EVENT_SIGNAL_LIGHT_ALWAYSON_DETECTION, /// ??????????????, ??????? NET_DEV_EVENT_SIGNAL_LIGHT_ALWAYSON_DETECTION_INFO EM_ANALYSE_EVENT_SIGNAL_LIGHT_ON_DETECTION, /// ?????????????, ??????? NET_DEV_EVENT_SIGNAL_LIGHT_ON_DETECTION_INFO EM_ANALYSE_EVENT_SIGNAL_LIGHT_NOBRIGHT_DETECTION, /// ????????????????, ??????? NET_DEV_EVENT_SIGNAL_LIGHT_NOBRIGHT_DETECTION_INFO EM_ANALYSE_EVENT_SIGNAL_LIGHT_BLOCKING_DETECTION, /// ?????????????, ??????? NET_DEV_EVENT_SIGNAL_LIGHT_BLOCKING_DETECTION_INFO EM_ANALYSE_EVENT_SIGNAL_LIGHT_FLASHYELLOW_DETECTION, /// ?????????????, ??????? NET_DEV_EVENT_SIGNAL_LIGHT_FLASHYELLOW_DETECTION_INFO EM_ANALYSE_EVENT_LEDSCREEN_NOTLIGHTUP_DETECTION, /// LED?????????, ??????? NET_DEV_EVENT_LEDSCREEN_NOTLIGHTUP_DETECTION_INFO EM_ANALYSE_EVENT_OBJECT_PLACEMENT_DETECTION, /// ?????????????, ??????? DEV_EVENT_OBJECT_PLACEMENT_DETECTION_INFOS EM_ANALYSE_EVENT_IVS_OPEN_INTELLI, /// ???????????(??? DEV_EVENT_OPEN_INTELLI_INFO) EM_ANALYSE_EVENT_FIRE_EXTINGUISHER_DETECTION, /// ???????????, ??????? DEV_EVENT_FIRE_EXTINGUISHER_DETECTION_INFO EM_ANALYSE_EVENT_CROSSLINEDETECTION_EX = 2000, /// ???????????(???), ??????? DEV_EVENT_CROSSLINE_INFO_EX } EM_ANALYSE_EVENT_TYPE; ///@brief ????????????????? typedef struct tagNET_ANALYSE_INFO { EM_ANALYSE_RULE_TYPE emAnalyseType; /// ???????? BYTE byReserved1[4]; /// ?????? void *pRuleInfo; /// ??????????, ????emAnalyseType????????????? BYTE byReserved[512]; /// ??????? } NET_ANALYSE_INFO; ///@brief ????????????????????????? typedef struct tagNET_SECONDARY_ANALYSE_TASK_INFO { char szRecordPath[DH_COMMON_STRING_256]; /// ?????????? int nAnalyseCount; /// ?????????????????? NET_ANALYSE_INFO stuAnalyseInfo[MAX_SECONDARY_ANALYSE_RULE_NUM]; /// ?????????????????? char szTaskName[DH_COMMON_STRING_128]; /// ???????? BOOL bNeedSave; /// ????????????? BYTE byReserved[1024]; /// ??????? } NET_SECONDARY_ANALYSE_TASK_INFO; ///@brief ????????????????????????? typedef struct tagNET_IN_SECONDARY_ANALYSE_ADDTASK { DWORD dwSize; /// ??????????? int nAnalyseTaskCount; /// ?????????????????? NET_SECONDARY_ANALYSE_TASK_INFO stuAnalyseTaskInfo[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ??????????????? } NET_IN_SECONDARY_ANALYSE_ADDTASK; ///@brief ????????????? typedef struct tagNET_TASK_ADD_RESULT_INFO { UINT nTaskID; /// ????ID, ????0????????0???????????????? char szLocalPath[DH_COMMON_STRING_256]; /// ????????????????????????? BYTE byReserved[1024]; /// ??????? } NET_TASK_ADD_RESULT_INFO; ///@brief ????????????????????????? typedef struct tagNET_OUT_SECONDARY_ANALYSE_ADDTASK { DWORD dwSize; /// ??????????? UINT nRetTaskResultNum; /// ???????????????????? NET_TASK_ADD_RESULT_INFO stuResultInfo[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ??????????????? } NET_OUT_SECONDARY_ANALYSE_ADDTASK; ///@brief ???????????????????????? typedef struct tagNET_IN_SECONDARY_ANALYSE_STARTTASK { DWORD dwSize; /// ??????????? UINT nTaskIdNum; /// ????ID????, ?0?????? UINT nTaskID[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ????ID??0?????? } NET_IN_SECONDARY_ANALYSE_STARTTASK; ///@brief ???????????????????????? typedef struct tagNET_OUT_SECONDARY_ANALYSE_STARTTASK { DWORD dwSize; /// ??????????? } NET_OUT_SECONDARY_ANALYSE_STARTTASK; ///@brief ???????????????????????? typedef struct tagNET_IN_SECONDARY_ANALYSE_PAUSETASK { DWORD dwSize; /// ??????????? UINT nTaskIdNum; /// ???????? UINT nTaskID[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ????ID } NET_IN_SECONDARY_ANALYSE_PAUSETASK; ///@brief ???????????????????????? typedef struct tagNET_OUT_SECONDARY_ANALYSE_PAUSETASK { DWORD dwSize; /// ??????????? } NET_OUT_SECONDARY_ANALYSE_PAUSETASK; ///@brief ???????????????????????? typedef struct tagNET_IN_SECONDARY_ANALYSE_REMOVETASK { DWORD dwSize; /// ??????????? UINT nTaskIdNum; /// ????????, 0????????? UINT nTaskID[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ????ID } NET_IN_SECONDARY_ANALYSE_REMOVETASK; ///@brief ???????????????????????? typedef struct tagNET_OUT_SECONDARY_ANALYSE_REMOVETASK { DWORD dwSize; /// ??????????? } NET_OUT_SECONDARY_ANALYSE_REMOVETASK; ///@brief ?????????????????????????????? typedef struct tagNET_IN_SECONDARY_ANALYSE_STARTFIND_TASK { DWORD dwSize; /// ??????????? UINT nTaskNum; /// ???????, ?0?????????? UINT nTaskID[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ????ID } NET_IN_SECONDARY_ANALYSE_STARTFIND_TASK; ///@brief ?????????????????????????????? typedef struct tagNET_OUT_SECONDARY_ANALYSE_STARTFIND_TASK { DWORD dwSize; /// ??????????? UINT nTotalCount; /// ?????????????????? } NET_OUT_SECONDARY_ANALYSE_STARTFIND_TASK; ///@brief ??????????????????? typedef struct tagNET_SECONDARY_ANALYSE_TASK_STATE_INFO { UINT nTaskID; /// ????ID char szTaskName[DH_COMMON_STRING_256]; /// ???????? char szRecordPath[DH_COMMON_STRING_256]; /// ?????????? BOOL bNeedSave; /// ????????????? char szLoaclPath[DH_COMMON_STRING_256]; /// ????????????????????????? EM_SECONDARY_ANALYSE_STATE emAnalyseState; /// ????????? NET_TIME stuStartTime; /// ???????? NET_TIME stuFinishTime; /// ?????????? UINT nProgress; /// ??????????? int nAnalyseCount; /// ?????????????????? NET_ANALYSE_INFO stuAnalyseInfo[MAX_SECONDARY_ANALYSE_RULE_NUM]; /// ?????????????????? BYTE byReserved[1024]; /// ??????? } NET_SECONDARY_ANALYSE_TASK_STATE_INFO; ///@brief ?????????????????????????????? typedef struct tagNET_IN_SECONDARY_ANALYSE_DOFIND_TASK { DWORD dwSize; /// ??????????? UINT nBeginNumber; /// ?????????????? UINT nCount; /// ?????????????????? } NET_IN_SECONDARY_ANALYSE_DOFIND_TASK; ///@brief ?????????????????????????????? typedef struct tagNET_OUT_SECONDARY_ANALYSE_DOFIND_TASK { DWORD dwSize; /// ??????????? UINT nFoundCount; /// ??????????????? NET_SECONDARY_ANALYSE_TASK_STATE_INFO stuAnalyseTaskInfo[MAX_SECONDARY_ANALYSE_TASK_NUM]; /// ??????????????????? } NET_OUT_SECONDARY_ANALYSE_DOFIND_TASK; ///@brief ???????????????? typedef struct tagNET_SECONDARY_ANALYSE_EVENT_INFO { EM_ANALYSE_EVENT_TYPE emEventType; /// ??????? BYTE byReserved1[4]; /// ?????? void *pstEventInfo; /// ??????, ????emEventType??????????? BYTE byReserved[1024]; /// ??????? } NET_SECONDARY_ANALYSE_EVENT_INFO; ///@brief ???????????????????????????? typedef struct tagNET_CB_ANALYSE_RESULT_INFO { UINT nTaskID; /// ????ID NET_TIME stuPicTime; /// ????? int nRetEventCount; /// ??????????? NET_SECONDARY_ANALYSE_EVENT_INFO stuEventInfo[MAX_SECONDARY_ANALYSE_EVENT_NUM];/// ???????????????? LDWORD dwUser; /// ??????? char szUserData[64]; /// ???????? ?????????? ???addPollingTask??UserData????? BYTE byReserved[960]; /// ??????? } NET_CB_ANALYSE_RESULT_INFO; ///@brief ????????????????????????? typedef int (CALLBACK *fAnalyseResultCallBack)(LLONG lAnalyseHandle, NET_CB_ANALYSE_RESULT_INFO *pstAnalyseResultInfo, BYTE *pBuffer, DWORD dwBufSize); ///@brief ????????????????????????? typedef struct tagNET_IN_ATTACH_SECONDARY_ANALYSE_RESULT { DWORD dwSize; /// ??????????? int nTaskNum; /// ???????????????, 0?????????? UINT nTaskID[MAX_SECONDARY_ANALYSE_TASK_NUM]; /// ????ID int nEventCount; /// ??????????????? EM_ANALYSE_EVENT_TYPE emEventType[MAX_SECONDARY_ANALYSE_TASK_NUM];/// ??????????? BOOL bNeedPicData; /// ???????????? fAnalyseResultCallBack cbAnalyseResult; /// ?????????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_SECONDARY_ANALYSE_RESULT; ///@brief ????????????????????????? typedef struct tagNET_OUT_ATTACH_SECONDARY_ANALYSE_RESULT { DWORD dwSize; /// ??????????? } NET_OUT_ATTACH_SECONDARY_ANALYSE_RESULT; ///@brief ?????????????????????, pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRecordSecondaryAnalyseTaskState(LLONG lLoginID, NET_IN_ATTACH_SECONDARY_ANALYSE_STATE *pstInParam, NET_OUT_ATTACH_SECONDARY_ANALYSE_STATE *pstOutParam, int nWaitTime); ///@brief ????????????????????? ///@param[in] lAnalyseHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRecordSecondaryAnalyseState(LLONG lAnalyseHandle); ///@brief ?????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordSecondaryAnalyseAddTask(LLONG lLoginID, NET_IN_SECONDARY_ANALYSE_ADDTASK *pstInParam, NET_OUT_SECONDARY_ANALYSE_ADDTASK *pstOutParam, int nWaitTime); ///@brief ????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordSecondaryAnalyseStartTask(LLONG lLoginID, NET_IN_SECONDARY_ANALYSE_STARTTASK *pstInParam, NET_OUT_SECONDARY_ANALYSE_STARTTASK *pstOutParam, int nWaitTime); ///@brief ????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordSecondaryAnalysePauseTask(LLONG lLoginID, NET_IN_SECONDARY_ANALYSE_PAUSETASK *pstInParam, NET_OUT_SECONDARY_ANALYSE_PAUSETASK *pstOutParam, int nWaitTime); ///@brief ????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordSecondaryAnalyseRemoveTask(LLONG lLoginID, NET_IN_SECONDARY_ANALYSE_REMOVETASK *pstInParam, NET_OUT_SECONDARY_ANALYSE_REMOVETASK *pstOutParam, int nWaitTime); ///@brief ?????????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_RecordSecondaryAnalyseStartFindTask(LLONG lLoginID, NET_IN_SECONDARY_ANALYSE_STARTFIND_TASK *pstInParam, NET_OUT_SECONDARY_ANALYSE_STARTFIND_TASK *pstOutParam, int nWaitTime); ///@brief ?????????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lFindHandle ??????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordSecondaryAnalyseDoFindTask(LLONG lFindHandle, NET_IN_SECONDARY_ANALYSE_DOFIND_TASK *pstInParam, NET_OUT_SECONDARY_ANALYSE_DOFIND_TASK *pstOutParam, int nWaitTime); ///@brief ????????????????????? ///@param[in] lFindHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecordSecondaryAnalyseStopFindTask(LLONG lFindHandle); ///@brief ??????????????????? pstInParam??pstOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRecordSecondaryAnalyseResult(LLONG lLoginID, NET_IN_ATTACH_SECONDARY_ANALYSE_RESULT *pstInParam, NET_OUT_ATTACH_SECONDARY_ANALYSE_RESULT *pstOutParam, int nWaitTime); ///@brief ?????????????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRecordSecondaryAnalyseResult(LLONG lAttachHandle); ///@brief ????? typedef enum tagEM_COMPARE_RESULT { EM_COMPARE_RESULT_UNKNOWN=-1, /// ??? EM_COMPARE_RESULT_SUCCESS, /// ??? EM_COMPARE_RESULT_OTHERERROR, /// ???????? EM_COMPARE_RESULT_NOTINDATABASE, /// ?????????? EM_COMPARE_RESULT_EXCEED_SINGLE_DAY_ENTER_TIMES, /// ?????????????????? EM_COMPARE_RESULT_NO_ENTER_RECORD_LEAVE_FAIL, /// ?????????????? EM_COMPARE_RESULT_AREA_FULL, /// ??????????? EM_COMPARE_RESULT_REPEATENTER_CHECK_FAIL, /// ???????????(????????????????????) }EM_COMPARE_RESULT; ///@brief ?????? typedef enum tagEM_FACE_OPEN_DOOR_TYPE { EM_FACE_OPEN_DOOR_TYPE_UNKNOWN = 0, /// ??? EM_FACE_OPEN_DOOR_TYPE_REMOTEFACE, /// ????????? EM_FACE_OPEN_DOOR_TYPE_REMOTEQRCODE /// ??????? }EM_FACE_OPEN_DOOR_TYPE; ///@brief ??????? typedef enum tagEM_EDUCATION_INFO_TYPE { EM_EDUCATION_INFO_TYPE_UNKNOWN, /// ??? EM_EDUCATION_INFO_TYPE_CHECK_IN, /// ??? EM_EDUCATION_INFO_TYPE_SIGN_BACK, /// ??? EM_EDUCATION_INFO_TYPE_ROLL_CALL, /// ???? EM_EDUCATION_INFO_TYPE_LEARNING_ABNORMAL, /// ???? EM_EDUCATION_INFO_TYPE_EXAMINATION, /// ???? EM_EDUCATION_INFO_TYPE_END_OF_STUDY, /// ?????? EM_EDUCATION_INFO_TYPE_EXPERIENCE_LEARNING, /// ?????? EM_EDUCATION_INFO_TYPE_NOT_LEARNING, /// ???? EM_EDUCATION_INFO_TYPE_MIDWAY_IN, /// ??????? EM_EDUCATION_INFO_TYPE_MIDWAY_LEAVE, /// ????? EM_EDUCATION_INFO_TYPE_CAMPUS_TIPS, /// ????????? EM_EDUCATION_INFO_TYPE_PHOTO_REPEAT, /// ???????????????? EM_EDUCATION_INFO_TYPE_LOW_FACE_QUALITY, /// ?????????????????? EM_EDUCATION_INFO_TYPE_FACE_BRIGHTNESS_TOO_LOW, /// ??????????????????? EM_EDUCATION_INFO_TYPE_FACE_BRIGHTNESS_TOO_HIGH, /// ??????????????????? EM_EDUCATION_INFO_TYPE_FACE_BRIGHTNESS_UNEVEN, /// ????????????????????? EM_EDUCATION_INFO_TYPE_PROVIDE_FRONT_FACE_PHOTO, /// ??????????? EM_EDUCATION_INFO_TYPE_UNCLEAR_FACE, /// ????????????????? EM_EDUCATION_INFO_TYPE_EYE_BEEN_COVERED, /// ?????????????????? EM_EDUCATION_INFO_TYPE_FACE_TOO_SMALL, /// ???????????????? EM_EDUCATION_INFO_TYPE_PROVIDE_COLOR_PHOTO, /// ?????????? EM_EDUCATION_INFO_TYPE_ABSENCE_OF_FACE, /// ???????????????? EM_EDUCATION_INFO_TYPE_NOT_WEAR_MASK, /// ?????????????????? EM_EDUCATION_INFO_TYPE_PHOTO_TOO_BIG, /// ?????????????????? EM_EDUCATION_INFO_TYPE_PHOTO_TOO_SAMLL, /// ???????????????????? } EM_EDUCATION_INFO_TYPE; ///@brief ???????? typedef enum tagEM_CUSTOM_EDUCATION_VOICE_TYPE { EM_CUSTOM_EDUCATION_VOICE_TYPE_UNKNOWN, /// ??? EM_CUSTOM_EDUCATION_VOICE_TYPE_LEAVE_SCHOOL_TIMEOUT, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ENTER_SCHOOL_TIMEOUT, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_LEAVE_SCHOOL, /// ???? EM_CUSTOM_EDUCATION_VOICE_TYPE_CARD_NOT_BIND, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_BOARDER, /// ?????? EM_CUSTOM_EDUCATION_VOICE_TYPE_PARENT_CARD_REPORT_LOST, /// ????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ENTER_SCHOOL_OVERDUE, /// ????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_PACKAGE_TO_PICKUP, /// ????????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ASKFORLEAVE, /// ??? EM_CUSTOM_EDUCATION_VOICE_TYPE_RETURN_SCHOOL_TIMEOUT_WHEN_ASKFORLEAVE, /// ????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_INANDOUT_SCHOOL_TIMENOTUP_WHEN_ASKFORLEAVE, /// ??????????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_REFUSE_LEAVE_SCHOOL_WHEN_ASKFORLEAVE, /// ????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_REFUSE_ENTER_SCHOOL_WHEN_ASKFORLEAVE, /// ????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ASKFORLEAVE_IN_REVIEW, /// ???????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ASKFORLEAVE_EXPIRED, /// ???????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ASKFORLEAVE_APPROVED, /// ???????? EM_CUSTOM_EDUCATION_VOICE_TYPE_FORBID_LEAVE_SCHOOL_WITH_LEAVE_INVALID, /// ?????????????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_TIME_ISNOT_UP, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_NOT_APPOINT, /// ???? EM_CUSTOM_EDUCATION_VOICE_TYPE_NO_PASSAGE_IN_NONPERMIT_TIMESECTION, /// ?????????????????? EM_CUSTOM_EDUCATION_VOICE_TYPE_INVALID_CARD, /// ?????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ALREADY_APPOINTED, /// ???? EM_CUSTOM_EDUCATION_VOICE_TYPE_ALLOW_BACK_SCHOOL, /// ???????? EM_CUSTOM_EDUCATION_VOICE_TYPE_GOODBYE, /// ??? EM_CUSTOM_EDUCATION_VOICE_TYPE_ENTER_SCHOOL_NORMALLY, /// ???????? EM_CUSTOM_EDUCATION_VOICE_TYPE_REPEAT_LEAVE_SCHOOLL, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_REPEAT_ENTER_SCHOOLL, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_DAY_STUDENT, /// ????? EM_CUSTOM_EDUCATION_VOICE_TYPE_WELCOME, /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE_FACULTY, /// ????? EM_CUSTOM_EDUCATION_VOICE_TYPE_TEACHER, /// ??? EM_CUSTOM_EDUCATION_VOICE_TYPE_HELLO_TEACHER, /// ????? EM_CUSTOM_EDUCATION_VOICE_TYPE_ALLOW_ACCESS = 33, /// ???????? EM_CUSTOM_EDUCATION_VOICE_TYPE_TTS_TEXT_VOICE_OUTPUT = 50, /// tts??????????? }EM_CUSTOM_EDUCATION_VOICE_TYPE; ///@brief ??????? typedef struct tagNET_CUSTOM_EDUCATION_INFO { EM_EDUCATION_INFO_TYPE emInfoType; /// ??????? int nStudentSeatNumber; /// ??????,??????1 char szInfoContent[128]; /// ??????? EM_CUSTOM_EDUCATION_VOICE_TYPE emVoiceType; /// ???????? } NET_CUSTOM_EDUCATION_INFO; ///@brief ??????? typedef struct tagNET_EPIDEMIC_AREA_EXPERIENCE { char szAddress[128]; /// ??? NET_TIME stuTime; /// ??? BYTE byReserved[256]; /// ?????? }NET_EPIDEMIC_AREA_EXPERIENCE; ///@brief ???????? typedef enum tagEM_HEALTH_CODE_STATUS { EM_HEALTH_CODE_STATUS_UNKNOWN = 0, /// ??? EM_HEALTH_CODE_STATUS_RED, /// ???? EM_HEALTH_CODE_STATUS_GREEN, /// ???? EM_HEALTH_CODE_STATUS_YELLOW, /// ???? EM_HEALTH_CODE_STATUS_INVALID, /// ???? EM_HEALTH_CODE_STATUS_GREY, /// ???? EM_HEALTH_CODE_STATUS_ORANGE, /// ???? EM_HEALTH_CODE_STATUS_PURPLE, /// ???? }EM_HEALTH_CODE_STATUS; ///@brief ????????? typedef struct tagNET_HEALTH_CODE_INFO { char szCitizenID[32]; /// ????? char szCitizenName[128]; /// ??????? char szPermanentAddr[128]; /// ????? char szCurrentAddr[128]; /// ?????? EM_HEALTH_CODE_STATUS emHealthCodeStatus; /// ???????? char szPhoneNumber[32]; /// ????? char szAbnormalCodeReason[256]; /// ????? NET_TIME stuQueryTime; /// ??????? int nEpidemicAreaExperience; /// stuEpidemicAreaExperience ???? NET_EPIDEMIC_AREA_EXPERIENCE stuEpidemicAreaExperience[10]; /// ???????? BYTE byReserved[512]; /// ?????? }NET_HEALTH_CODE_INFO; ///@brief ?????????? typedef enum tagEM_IDCARD_MSG_TYPE { EM_IDCARD_MSG_TYP_UNKNOWN = 0, /// ??? EM_IDCARD_MSG_TYP_QUERY, /// ????????? EM_IDCARD_MSG_TYPE_ISSUE_PERMISSION, /// ?????????? }EM_IDCARD_MSG_TYPE; ///@brief ?????? typedef struct tagNET_IDCARD_INFO { EM_IDCARD_MSG_TYPE emIDCardMsgType; /// ?????????? /// EM_IDCARD_MSG_TYP_QUERY???? nEventGroupID ?? szRoomNo ????????????????????????? /// EM_IDCARD_MSG_TYPE_ISSUE_PERMISSION??nEventGroupID ??szRoomNo??????????? szCitizenName ??????????????? char szCitizenName[32]; /// ???? EM_CITIZENIDCARD_SEX_TYPE emSexType; /// ??? int nMZ; NET_TIME stuBirthday; /// ????????????????? char szAddress[128]; /// ?? char szCitizenID[32]; /// ????? char szAuthority[48]; /// ??????? NET_TIME stuBeginValidTime; /// ???????????????????????????? NET_TIME stuEndValidTime; /// ??????????????????????????? int nEventGroupID; /// ?????ID ,?????????????????????????? BYTE byReserved[1024]; /// ?????? }NET_IDCARD_INFO; ///@brief ????? typedef enum tagEM_ALCOHOL_STATE { EM_ALCOHOL_STATE_UNKNOWN, /// ??? EM_ALCOHOL_STATE_NORMAL, /// ???? EM_ALCOHOL_STATE_DRINK, /// ???? }EM_ALCOHOL_STATE; ///@brief ???????? typedef enum tagEM_BUS_REPAIR_STATE { EM_BUS_REPAIR_STATE_UNKNOWN, /// ??? EM_BUS_REPAIR_STATE_NOT_REPAIR, /// ?????? EM_BUS_REPAIR_STATE_REPAIRING, /// ?????? }EM_BUS_REPAIR_STATE; ///@brief ???????? typedef enum tagEM_BUS_OIL_STATE { EM_BUS_OIL_STATE_UNKNOWN, /// ??? EM_BUS_OIL_STATE_REFUELED, /// ????? EM_BUS_OIL_STATE_NOT_REFUEL, /// ?????? }EM_BUS_OIL_STATE; ///@brief ????? typedef enum tagEM_BUS_WASH_STATE { EM_BUS_WASH_STATE_UNKNOWN, /// ??? EM_BUS_WASH_STATE_WASHED, /// ????? EM_BUS_WASH_STATE_NOT_WASH, /// ????? }EM_BUS_WASH_STATE; ///@brief ?????? typedef enum tagEM_BUS_CASH_STATE { EM_BUS_CASH_STATE_UNKNOWN, /// ??? EM_BUS_CASH_STATE_COLLECTED, /// ?????? EM_BUS_CASH_STATE_UNCOLLECT, /// ?????? }EM_BUS_CASH_STATE; ///@brief ????? typedef enum tagEM_SCHEDULE_STATE { EM_SCHEDULE_STATE_UNKNOWN, /// ??? EM_SCHEDULE_STATE_SCHEDULED, /// ????? EM_SCHEDULE_STATE_NOT_SCHEDULE, /// ????? }EM_SCHEDULE_STATE; ///@brief ???????? typedef struct tagNET_BUS_STATION_INFO { char szBusNo[64]; /// ???? char szParkPosition[64]; /// ???? EM_ALCOHOL_STATE emAlcoholState; /// ????? EM_BUS_REPAIR_STATE emRepairState; /// ?????? EM_BUS_OIL_STATE emOilState; /// ?????? EM_BUS_WASH_STATE emWashState; /// ????? EM_BUS_CASH_STATE emCashState; /// ?????? EM_SCHEDULE_STATE emScheduleState; /// ????? BYTE byReserved[1024]; /// ?????? }NET_BUS_STATION_INFO; ///@brief ??????? typedef struct tagNET_CUSTOM_WORKER_INFO { char szSex[8]; /// ??? char szRole[32]; /// ??? char szProjNo[32]; /// ???ID char szProjName[64]; /// ??????? char szBuilderName[64]; /// ?????????? char szBuilderID[32]; /// ???????ID char szBuilderType[32]; /// ??????????? char szBuliderTypeID[8]; /// ??????????ID char szPictureID[64]; /// ??????ID char szContractID[16]; /// ???????????? char szWorkerTypeID[8]; /// ????ID char szWorkerTypeName[32]; /// ???????? BOOL bPersonStatus; /// ????? BOOL bProjNameEx; /// szProjNameEx ??????????TRUE???szProjNameEx ???? char szProjNameEx[256]; /// ????????????? BYTE bReserved[1388]; /// ?????? }NET_CUSTOM_WORKER_INFO; ///@brief ?????? typedef struct tagNET_CUSTOM_VISITOR_INFO { char szVisitorName[128]; /// ??????? char szVisitorTel[32]; /// ????? char szVisitorStartTime[32]; /// ????????? char szVisitorEndTime[32]; /// ?????????? char szVisitorAccessFor[256]; /// ??????? char szVisitorCitizenID[32]; /// ???????? char szRespondentName[128]; /// ?????????? char szRespondentTel[32]; /// ???????? char szRespondentCompany[128]; /// ????????? char szRespondentSection[64]; /// ????????? char szReserved[1024]; /// ??????? }NET_CUSTOM_VISITOR_INFO; ///@brief ???????? typedef enum tagEM_CUSTOM_MEDICAL_VOICE_TYPE { EM_CUSTOM_MEDICAL_VOICE_TYPE_UNKNOWN, /// ??? EM_CUSTOM_MEDICAL_VOICE_TYPE_1, /// ????????????? EM_CUSTOM_MEDICAL_VOICE_TYPE_2, /// ????????????????? EM_CUSTOM_MEDICAL_VOICE_TYPE_3, /// ????????????? EM_CUSTOM_MEDICAL_VOICE_TYPE_4, /// ???????????????? EM_CUSTOM_MEDICAL_VOICE_TYPE_5, /// ?????????????????? EM_CUSTOM_MEDICAL_VOICE_TYPE_6, /// ????????????????? EM_CUSTOM_MEDICAL_VOICE_TYPE_7, /// ??????????????? }EM_CUSTOM_MEDICAL_VOICE_TYPE; ///@brief ???????????? typedef struct tagNET_OPENDOOR_MATCHINFO_EX { char szUserNameEx[128]; /// ???????? EM_CUSTOM_MEDICAL_VOICE_TYPE emVoiceType; /// ???????? NET_ANTIGEN_INFO stuAntigenInfo; /// ????????? char szVoiceTTSMessage[128]; /// tts??????? UINT nCheckLocal; /// ????????1:???????, ??emCompareResult?0???????????????,???????????????, 2:?????,????emCompareResult????????????????????, 255:?????,?????????? BYTE bReserved[1616]; /// ?????? }NET_OPENDOOR_MATCHINFO_EX; ///@brief ?????? typedef struct tagNET_OPENDOOR_MATCHINFO { char szUserID[32]; /// ??????ID char szUserName[32]; /// ????? EM_USER_TYPE emUserType; /// ??????? char szName[64]; /// ??????? UINT nMatchRate; /// ??????????0-100 EM_FACE_OPEN_DOOR_TYPE emOpenDoorType; /// ?????? NET_TIME stuActivationTime; /// (???????)???????? NET_TIME stuExpiryTime; /// (???????)??????? int nScore; /// ??????? char szCompanyName[MAX_COMPANY_NAME_LEN]; /// ???????? char szCompanionName[120]; /// ?????????? char szCompanionCompany[MAX_COMPANY_NAME_LEN]; /// ?????????????? char szPermissibleArea[MAX_COMMON_STRING_128]; /// ?????????? char szSection[200]; /// ???????? NET_CUSTOM_EDUCATION_INFO* pstuCustomEducationInfo; /// ??????? NET_HEALTH_CODE_INFO* pstuHealthCodeInfo; /// ????????? char szRoomNo[32]; /// ????? NET_IDCARD_INFO* pstuIDCardInfo; /// ?????? NET_BUS_STATION_INFO* pstuBusStationInfo; /// ???????? NET_CUSTOM_WORKER_INFO* pstuCustomWorkerInfo; /// ?????????? BOOL bUseMatchInfoEx; /// ?????????????????? NET_OPENDOOR_MATCHINFO_EX* pstuMatchInfoEx; /// ???????????? NET_HSJC_INFO* pstuHSJCInfo; /// ????????? NET_VACCINE_INFO* pstuVaccineInfo; /// ??????? NET_TRAVEL_INFO* pstuTravelInfo; /// ????????? NET_CUSTOM_VISITOR_INFO* pstuCustomVisitorInfo; /// ?????? int nRemoteQRCodeType; /// ???????????????????? 0-??????1-???????2-????????? BYTE byReserved[4]; /// ?????? }NET_OPENDOOR_MATCHINFO; ///@brief ????? typedef struct tagNET_OPENDOOR_IMAGEINFO { int nLibImageLen; /// ?????????????????150k int nSnapImageLen; /// ????????????????150k char* pLibImage; /// ????????????????????? char* pSnapImage; /// ???????????????????? BYTE byReserved[1024]; /// ?????? }NET_OPENDOOR_IMAGEINFO; ///@brief ??????????????? typedef struct tagNET_IN_FACE_OPEN_DOOR { DWORD dwSize; UINT nChannel; /// ??????? EM_COMPARE_RESULT emCompareResult; /// ????? NET_OPENDOOR_MATCHINFO stuMatchInfo; /// ?????? NET_OPENDOOR_IMAGEINFO stuImageInfo; /// ????? }NET_IN_FACE_OPEN_DOOR; ///@brief ??????????????? typedef struct tagNET_OUT_FACE_OPEN_DOOR { DWORD dwSize; }NET_OUT_FACE_OPEN_DOOR; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FaceOpenDoor(LLONG lLoginID, NET_IN_FACE_OPEN_DOOR* pInParam, NET_OUT_FACE_OPEN_DOOR* pOutParam,int nWaitTime); /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///@brief ?????? typedef enum tagEM_LOGIC_VOLUME_STATUS { EM_LOGIC_VOLUME_STATUS_UNKNOWN = -1, /// ??? EM_LOGIC_VOLUME_STATUS_NOT_NEED_REPAIR, /// ????????????? EM_LOGIC_VOLUME_STATUS_LV_NEED_REPAIR, /// ???????????? EM_LOGIC_VOLUME_STATUS_LV_REPAIRING, /// ??????????? EM_LOGIC_VOLUME_STATUS_LV_REPAIR_COMPLETE, /// ????????????? }EM_LOGIC_VOLUME_STATUS; ///@brief CLIENT_NASGetLogicVolumeStatus?????? typedef struct tagNET_IN_NAS_GETLOGICVOLUMESTATUS { DWORD dwSize; /// ??????? }NET_IN_NAS_GETLOGICVOLUMESTATUS; ///@brief CLIENT_NASGetLogicVolumeStatus?????? typedef struct tagNET_OUT_NAS_GETLOGICVOLUMESTATUS { DWORD dwSize; /// ??????? EM_LOGIC_VOLUME_STATUS emLVStatus; /// ?????? char szLvName[MAX_LV_NAME_NUM][MAX_LV_NAME_LEN]; /// ????????,??emLVStatus?EM_LOGIC_VOLUME_STATUS_LV_NEED_REPAIR??EM_LOGIC_VOLUME_STATUS_LV_REPAIRING????? int nRetLvNameNum; /// ??????????????? }NET_OUT_NAS_GETLOGICVOLUMESTATUS; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NASGetLogicVolumeStatus(LLONG lLoginID, const NET_IN_NAS_GETLOGICVOLUMESTATUS *pInParam, NET_OUT_NAS_GETLOGICVOLUMESTATUS *pOutParam, int nWaitTime); ///@brief ????????? typedef enum tagEM_LOGIC_VOLUME_REPAIR_STATUS { EM_LOGIC_VOLUME_REPAIR_STATUS_UNKNOWN = -1, /// ??? EM_LOGIC_VOLUME_REPAIR_STATUS_FAILED, /// ?????? EM_LOGIC_VOLUME_REPAIR_STATUS_SUCCESS, /// ?????? }EM_LOGIC_VOLUME_REPAIR_STATUS; ///@brief ??????? typedef struct tagNET_LV_STATE { EM_LOGIC_VOLUME_REPAIR_STATUS emLVRepairStatus; /// ????? char szLvName[MAX_LV_NAME_NUM][MAX_LV_NAME_LEN]; /// ???????? int nRetLvNameNum; /// ??????????????? BYTE byReserved[1024]; /// ???? }NET_LV_STATE; ///@brief ?????????????????????lAttachHandle ?? CLIENT_AttachNASRepairState ????? typedef void (CALLBACK *fLVRepairStateCallBack) (LLONG lAttachHandle, NET_LV_STATE* pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief CLIENT_AttachNASRepairState?????? typedef struct tagNET_IN_ATTACH_NAS_REPAIRSTATE { DWORD dwSize; /// ??????? fLVRepairStateCallBack cbLVRepairState; /// ???????????? BYTE byReserved[4]; /// ?????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_NAS_REPAIRSTATE; ///@brief CLIENT_AttachNASRepairState?????? typedef struct tagNET_OUT_ATTACH_NAS_REPAIRSTATE { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_NAS_REPAIRSTATE; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachNASRepairState(LLONG lLoginID, const NET_IN_ATTACH_NAS_REPAIRSTATE* pInParam, NET_OUT_ATTACH_NAS_REPAIRSTATE* pOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachNASRepairState(LLONG lAttachHandle); ///@brief ????????? typedef struct tagNET_FILE_FINEDER { unsigned int nRetFileListsCount; /// ???????????????? char szFileLists[MAX_FILE_LIST_NUM][MAX_FILE_LIST_LEN]; /// ??????????????? BOOL bFindFinished; /// ?????????,TRUE??????????,FALSE?????????? BYTE byReserved[1024]; /// ??????? }NET_FILE_FINEDER; ///@brief ?????????????????????lAttachHandle ?? CLIENT_AttachNASFileFinder ????? typedef void (CALLBACK *fNasFileFinderCallback) (LLONG lAttachHandle, NET_FILE_FINEDER* pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief CLIENT_AttachNASFileFinder?????? typedef struct tagNET_IN_ATTACHNASFILEFINDER { DWORD dwSize; /// ??????? int nFindPathsNum; /// ???????????????? char szFindPaths[MAX_FILE_FINDER_PATH_NUM][MAX_FILE_FINDER_PATH_LEN]; /// ?????????????? char szKey[MAX_KEY_LEN]; /// ????????? unsigned int nOffset; /// ????????? unsigned int nCount; /// ???????? fNasFileFinderCallback cbNasFileFinder; /// ????????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACHNASFILEFINDER; ///@brief CLIENT_AttachNASFileFinder?????? typedef struct tagNET_OUT_ATTACHNASFILEFINDER { DWORD dwSize; /// ??????? }NET_OUT_ATTACHNASFILEFINDER; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachNASFileFinder(LLONG lLoginID, const NET_IN_ATTACHNASFILEFINDER* pInParam, NET_OUT_ATTACHNASFILEFINDER* pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachNASFileFinder(LLONG lAttachHandle); ///@brief ????????????? typedef enum tagEM_PLAYBACK_STREAM_TYPE { EM_PLAYBACK_STREAM_TYPE_UNKNOWN = -1, /// ??? EM_PLAYBACK_STREAM_TYPE_ORIGINAL_STREAM, /// ?????????? EM_PLAYBACK_STREAM_TYPE_MAX, /// ???? }EM_PLAYBACK_STREAM_TYPE; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] emStreamType ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPlayBackStreamType(LLONG lLoginID, EM_PLAYBACK_STREAM_TYPE emStreamType); ///@brief CLIENT_GetFingerprintCaps?????? typedef struct tagNET_IN_GET_FINGERPRINTCAPS { DWORD dwSize; /// ??????? }NET_IN_GET_FINGERPRINTCAPS; ///@brief CLIENT_GetFingerprintCaps?????? typedef struct tagNET_OUT_GET_FINGERPRINTCAPS { DWORD dwSize; /// ??????? BOOL bSupportFingerprint; /// ?????????, TRUE:???; FALSE:????? }NET_OUT_GET_FINGERPRINTCAPS; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFingerprintCaps(LLONG lLoginID, NET_IN_GET_FINGERPRINTCAPS* pInParam, NET_OUT_GET_FINGERPRINTCAPS* pOutParam, int nWaitTime); ///@brief ???????????????????? typedef enum tagEM_DEVICE_MARKET_AREA { EM_DEVICE_MARKET_AREA_UNKNOWN, /// ??? EM_DEVICE_MARKET_AREA_MAINLAND, /// ???? EM_DEVICE_MARKET_AREA_OVERSEA, /// ???? }EM_DEVICE_MARKET_AREA; ///@brief CLIENT_GetMarketArea?????? typedef struct tagNET_IN_GET_MARKET_AREA { DWORD dwSize; /// ??????? }NET_IN_GET_MARKET_AREA; ///@brief CLIENT_GetMarketArea?????? typedef struct tagNET_OUT_GET_MARKET_AREA { DWORD dwSize; /// ??????? EM_DEVICE_MARKET_AREA emMarketArea; /// ???????? }NET_OUT_GET_MARKET_AREA; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMarketArea(LLONG lLoginID, const NET_IN_GET_MARKET_AREA* pInParam, NET_OUT_GET_MARKET_AREA* pOutParam, int nWaitTime); //////////////////////////////??????????? start////////////////////////////// ///@brief ?????????????(??? EM_RADAR_OPERATE_TYPE_STARTUPGRADE) typedef struct tagNET_IN_RADAR_STARTUPGRADE { DWORD dwSize; /// ??????? }NET_IN_RADAR_STARTUPGRADE; ///@brief ??????????????(??? EM_RADAR_OPERATE_TYPE_STARTUPGRADE) typedef struct tagNET_OUT_RADAR_STARTUPGRADE { DWORD dwSize; /// ??????? }NET_OUT_RADAR_STARTUPGRADE; ///@brief ?????????????(??? EM_RADAR_OPERATE_TYPE_GETCAPS) typedef struct tagNET_IN_RADAR_GETCAPS { DWORD dwSize; /// ??????? int nChannel; /// ????? char szRadarIP[32]; /// ???ip }NET_IN_RADAR_GETCAPS; ///@brief ?????????????? typedef struct tagNET_RADAR_CAPACITY_CAP { BOOL bSupport; /// ??????????? int nListNum; /// ??????????????????????? int nDistanceList[24]; /// ???????????????????? BYTE byReserved[224]; /// ??? }NET_RADAR_CAPACITY_CAP; ///@brief ????????????? typedef struct tagNET_RADAR_SCENE_CAP { BOOL bSupport; /// ??????????? BYTE byReserved[252]; /// ??? }NET_RADAR_SCENE_CAP; ///@brief ?????????????? typedef struct tagNET_RADAR_CHANNEL_CAP { BOOL bSupport; /// ??????????? int nListNum; /// ?????????????????????? int nChannelList[24]; /// ??????????????????? BYTE byReserved[224]; /// ??? }NET_RADAR_CHANNEL_CAP; ///@brief ???????????? typedef struct tagNET_RADAR_MOVEDDETECT_CAP { BOOL bSupport; /// ??????????? BYTE byReserved[252]; /// ??? }NET_RADAR_MOVEDDETECT_CAP; ///@brief ?????????????????????? typedef struct tagNET_RADAR_PROTOCAL_CAP { BOOL bSupport; /// ?????????????????? UINT nProtocalNum; /// ???????????????, ??szPtotoList ??????????????? char szPtotoList[10][32]; /// ??????????????????? int nLongitude; /// ?????????????????1000000???????????6????????????6????0????????120125400????120.1254 int nLatitude; /// ?????????????????1000000???????????6????????????6????0????????120125400????120.1254 int nAngle; /// ??????????????100????????112897???????128.97?? BYTE byReserved[1020]; /// ?????? } NET_RADAR_PROTOCAL_CAP; ///@brief ??????????????????? typedef enum tagEM_RADAR_GETCAPS_AREASUB_TYPE { EM_RADAR_GETCAPS_AREASUB_TYPE_UNKNOWN, /// ??? EM_RADAR_GETCAPS_AREASUB_TYPE_SECTOR, /// ???? EM_RADAR_GETCAPS_AREASUB_TYPE_ELLIPSE, /// ??? }EM_RADAR_GETCAPS_AREASUB_TYPE; ///@brief ??????? typedef enum tagEM_RADAR_GETCAPS_RADAR_TYPE { EM_RADAR_GETCAPS_RADAR_TYPE_UNKNOWN, /// ??? EM_RADAR_GETCAPS_RADAR_TYPE1, /// ??IP??? EM_RADAR_GETCAPS_RADAR_TYPE2, /// ??????? EM_RADAR_GETCAPS_RADAR_TYPE3, /// ??????? EM_RADAR_GETCAPS_RADAR_TYPE4, /// ??????? EM_RADAR_GETCAPS_RADAR_TYPE5, /// ??????? }EM_RADAR_GETCAPS_RADAR_TYPE; ///@brief ??????????????(??? EM_RADAR_OPERATE_TYPE_GETCAPS) typedef struct tagNET_OUT_RADAR_GETCAPS { DWORD dwSize; /// ??????? int nDetectionRange; /// ???????????????????100??,?????? int nDetectionAngle; /// ??????????????????100??,?????? int nDetectionHuman; /// ?????????????????????100??,?????? BOOL bExValid; /// ??????????????????(??????????????????????????????????????????????????) NET_RADAR_CAPACITY_CAP stuCapacityCap; /// ?????????????? NET_RADAR_SCENE_CAP stuSceneCap; /// ????????????? NET_RADAR_CHANNEL_CAP stuChannelCap; /// ?????????????? NET_RADAR_MOVEDDETECT_CAP stuMovedDetectCap; /// ???????????? NET_RADAR_PROTOCAL_CAP stuProtocalCap; /// ??????????????????? EM_RADAR_GETCAPS_AREASUB_TYPE emAreaSubType; /// ??????????? EM_RADAR_GETCAPS_RADAR_TYPE emRadarType; /// ??????? }NET_OUT_RADAR_GETCAPS; ///@brief ???????????(??? EM_RADAR_OPERATE_TYPE_GETSTATUS) typedef struct tagNET_IN_RADAR_GETSTATUS { DWORD dwSize; /// ??????? int nChannel; /// ????? }NET_IN_RADAR_GETSTATUS; ///@brief ????? typedef enum tagEM_RADAR_STATUS { EM_RADAR_STATUS_UNKNOWN, /// ??? EM_RADAR_STATUS_NORMAL, /// ???? EM_RADAR_STATUS_ABNORMAL, /// ?? }EM_RADAR_STATUS; ///@brief ????????????(??? EM_RADAR_OPERATE_TYPE_GETSTATUS) typedef struct tagNET_OUT_RADAR_GETSTATUS { DWORD dwSize; /// ??????? EM_RADAR_STATUS emRadarStatus; /// ????? }NET_OUT_RADAR_GETSTATUS; ///@brief ????????????????? typedef struct tagNET_RADAR_PIXELLINE { int nLeftX; /// ????X???? int nLeftY; /// ????Y???? int nRightX; /// ??????X???? int nRightY; /// ??????Y???? BYTE byReserved[64]; /// ??????? }NET_RADAR_PIXELLINE; ///@brief ??????????????????????(??? EM_RADAR_OPERATE_TYPE_CALCULATEREALSIZE) typedef struct tagNET_IN_RADAR_CALCULATEREALSIZE { DWORD dwSize; /// ??????? int nChannel; /// ????? NET_RADAR_PIXELLINE stuPixelLine; /// ????????????????? double dDistance; /// ?????????????????????????? }NET_IN_RADAR_CALCULATEREALSIZE; ///@brief ??????????????????????(??? EM_RADAR_OPERATE_TYPE_CALCULATEREALSIZE) typedef struct tagNET_OUT_RADAR_CALCULATEREALSIZE { DWORD dwSize; /// ??????? int nRealMapLength; /// ???????????????????????????100??????? int nRealMapWidth; /// ????????????????????????????100??????? }NET_OUT_RADAR_CALCULATEREALSIZE; ///@brief ?????????????????? typedef struct tagNET_RADAR_PIXELPOINT { int nPixelPointX; /// X????????????[0,8191] int nPixelPointY; /// Y????????????[0,8191] }NET_RADAR_PIXELPOINT; ///@brief ??????????????(??? EM_RADAR_OPERATE_TYPE_SETCALIBRATION) typedef struct tagNET_IN_RADAR_SETCALIBRATION { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ??????? NET_RADAR_PIXELPOINT stuPixelPoint; /// ?????????????????? double dInstallHeigt; /// ????????????????? }NET_IN_RADAR_SETCALIBRATION; ///@brief ???????????????(??? EM_RADAR_OPERATE_TYPE_SETCALIBRATION) typedef struct tagNET_OUT_RADAR_SETCALIBRATION { DWORD dwSize; /// ??????? }NET_OUT_RADAR_SETCALIBRATION; ///@brief ?????????? typedef enum tagEM_RADAR_OPERATE_TYPE { EM_RADAR_OPERATE_TYPE_STARTUPGRADE = 0, /// ??????????,???:NET_IN_RADAR_STARTUPGRADE,????:NET_OUT_RADAR_STARTUPGRADE EM_RADAR_OPERATE_TYPE_GETCAPS = 1, /// ??????????,???:NET_IN_RADAR_GETCAPS,????:NET_OUT_RADAR_GETCAPS EM_RADAR_OPERATE_TYPE_GETSTATUS = 2, /// ????????,???:NET_IN_RADAR_GETSTATUS,????:NET_OUT_RADAR_GETSTATUS EM_RADAR_OPERATE_TYPE_CALCULATEREALSIZE = 3, /// ???????????????????,???:NET_IN_RADAR_CALCULATEREALSIZE,????:NET_OUT_RADAR_CALCULATEREALSIZE EM_RADAR_OPERATE_TYPE_SETCALIBRATION = 4, /// ???????????????,???:NET_IN_RADAR_SETCALIBRATION,????:NET_OUT_RADAR_SETCALIBRATION }EM_RADAR_OPERATE_TYPE; ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pInBuf ??????????, ???????????????????,????????emType???????? ///@param[out] pOutBuf ??????????, ???????????????????,????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadarOperate(LLONG lLoginID, EM_RADAR_OPERATE_TYPE emType, void* pInBuf, void* pOutBuf, int nWaitTime); #define NET_RADAR_MAX_NUM_ALARMPOINT 64 /// ??????????????? ///@brief ??????????? typedef enum tagEM_RADAR_POINTTYPE { EM_RADAR_POINTTYPE_UNKNOWN, /// ??? EM_RADAR_POINTTYPE_ALARMPOINT, /// ??????????????????? EM_RADAR_POINTTYPE_LINKMONITORPOINT, /// ????????????????????? EM_RADAR_POINTTYPE_DISAPPEARTRACKPOINT, /// ??????????????? }EM_RADAR_POINTTYPE; ///@brief ??????????????????? typedef enum tagEM_RADAR_OBJECTTYPE { EM_RADAR_OBJECTTYPE_UNKNOWN, /// ???????? EM_RADAR_OBJECTTYPE_PERSON, /// ?????? EM_RADAR_OBJECTTYPE_VEHICLE, /// ??????????? EM_RADAR_OBJECTTYPE_TREE, /// ?????? EM_RADAR_OBJECTTYPE_BUILIDING, /// ?????????? EM_RADAR_OBJECTTYPE_SCREEN, /// ??????? EM_RADAR_OBJECTTYPE_ANIMAL, /// ???????? EM_RADAR_OBJECTTYPE_BIG_SHIP, /// ?????? EM_RADAR_OBJECTTYPE_MID_SHIP, /// ???????? EM_RADAR_OBJECTTYPE_SMALL_SHIP, /// ???????? EM_RADAR_OBJECTTYPE_STATIONARY_TARGET_TYPE, /// ?????????????? }EM_RADAR_OBJECTTYPE; ///@brief ?????????????? typedef struct tagNET_RADAR_ALARMPOINT_INFO { EM_RADAR_POINTTYPE emPointType; /// ???????????,?????????,??????,?????nPointType int nPointType; /// ??????????? ///bit0?????? ///bit1????????????????? ///bit2??????????????????????? ///bit3????????????????????? ///???????????????????????????0xC????????????????????????????????????????????? int nRegionNumber; /// ?????????????????,????[0,10]([1,10]????????,0???????????????????????) EM_RADAR_OBJECTTYPE emObjectType; /// ??????????????????? int nTrackID; /// ???????????,????[0,63] int nDistance; /// ???????????????-??????????????100??????,?????? int nAngle; /// ???????????????-?????????????100?????????????? int nSpeed; /// ?????????????100??????????????/?? int nLongitude; /// ????, ?????????, ???1000000??, ???????6??????, ????6????0????, ????120125400????120.1254 int nLatitude; /// ????, ?????????, ???1000000??, ???????6??????, ????6????0????, ????120125400????120.1254 char szTrackerIP[16]; /// ????????????????IP??? char szTargetUUID[32]; /// ???????id BYTE byReserved[456]; /// ??????? }NET_RADAR_ALARMPOINT_INFO; ///@brief ????????? typedef struct tagNET_RADAR_RULE_INFO { int nRuleID; /// ?????? int nPointNumber; /// ??????????? UINT nTrackerIP; /// ??????????????, 0 ?????? char byReserved[60]; /// ??????? } NET_RADAR_RULE_INFO; ///@brief ??????????????? typedef struct tagNET_RADAR_NOTIFY_ALARMPOINTINFO { int nNumAlarmPoint; /// ???????????? NET_RADAR_ALARMPOINT_INFO stuAlarmPoint[NET_RADAR_MAX_NUM_ALARMPOINT]; /// ?????????? int nChannel; /// ????? UINT nRuleNum; /// ???????? NET_RADAR_RULE_INFO stuRuleInfo[10]; /// ????????? NET_TIME stuRealUTC; /// ???????????????????????????UTC??? BYTE byReserved[272]; /// ??????? }NET_RADAR_NOTIFY_ALARMPOINTINFO; ///@brief ???????????????????? typedef void (CALLBACK *fRadarAlarmPointInfoCallBack) (LLONG lLoginId, LLONG lAttachHandle, const NET_RADAR_NOTIFY_ALARMPOINTINFO* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief ???????????????????(?????? CLIENT_AttachRadarAlarmPointInfo) typedef struct tagNET_IN_RADAR_ALARMPOINTINFO { DWORD dwSize; /// ??????? fRadarAlarmPointInfoCallBack cbAlarmPointInfo; /// ????????????? LDWORD dwUser; /// ??????? int nChannel; /// ????? }NET_IN_RADAR_ALARMPOINTINFO; ///@brief ????????????????????(?????? CLIENT_AttachRadarAlarmPointInfo) typedef struct tagNET_OUT_RADAR_ALARMPOINTINFO { DWORD dwSize; /// ??????? }NET_OUT_RADAR_ALARMPOINTINFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRadarAlarmPointInfo(LLONG lLoginID, const NET_IN_RADAR_ALARMPOINTINFO * pstInParam, NET_OUT_RADAR_ALARMPOINTINFO* pstOutParam, int nWaitTime); ///@brief ??????????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRadarAlarmPointInfo(LLONG lAttachHandle); ///@brief mini?????????? typedef struct tagNET_MINI_RADAR_ALARMPOINT_INFO { UINT nHeartRate; /// ?????(??????????????) UINT nBreathe; /// ?????(??????????????) BOOL bGetUpStatus; /// ??????(??????????????) BOOL bAFBStatus; /// ????(??????????????) BOOL bTurnOverStatus; /// ??????(??????????????) UINT nSleepQuality; /// ???????(??????????????) BOOL bPosture; /// ?????(???????) UINT nNum; /// ????(???????) int nId; /// ???ID??0-31???????????? int nXPosNum; /// ???????x???? int nXPos[32]; /// ???????x?????????????100???????32?? int nYPosNum; /// ???????y???? int nYPos[32]; /// ???????y?????????????100???????32?? int nSpeedNum; /// ?????? int nSpeed[32]; /// ??? m/s??100???????32?? int nTypeNum; /// ?????????? int nType[32]; /// ????????????????? UINT nHeartRateLevel; /// ????????1-5????????5????? UINT nDistance; /// ???????????????????????????????100?? int nGetUpTimes; /// ?????????????????, ???????0(??????????????) int nTurnTimes; /// ????????????????, ???????0(??????????????) char szReserved[248]; /// ??????? }NET_MINI_RADAR_ALARMPOINT_INFO; ///@brief ??????? typedef struct tagNET_RADAR_REGION_INFO { int nRegionID; /// ????ID 1:????????; 2:????????; 3:??????; 4:?????? BOOL bAction; /// TRUE:??? FALSE:?? char byReserved[24]; /// ??????? } NET_RADAR_REGION_INFO; ///@brief ?????mini?????????? typedef struct tagNET_MINI_RADAR_NOTIFY_ALARMPOINTINFO { UINT nSID; /// ?????SID int nAlarmPointNum; /// mini???????????? NET_MINI_RADAR_ALARMPOINT_INFO stuAlarmPoint[64]; /// mini?????????? int nRegionRealNum; /// ?????????????? NET_RADAR_REGION_INFO stuRegionInfo[4]; /// ??????? char szReserved[124]; /// ??????? }NET_MINI_RADAR_NOTIFY_ALARMPOINTINFO; ///@brief mini???????????????????? typedef void (CALLBACK *fMiniRadarAlarmPointInfoCallBack) (LLONG lLoginId, LLONG lAttachHandle, const NET_MINI_RADAR_NOTIFY_ALARMPOINTINFO* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief ????mini???????????????(?????? CLIENT_AttachMiniRadarAlarmPointInfo) typedef struct tagNET_IN_MINI_RADAR_ALARMPOINTINFO { DWORD dwSize; /// ??????? fMiniRadarAlarmPointInfoCallBack cbAlarmPointInfo; /// ????????????? LDWORD dwUser; /// ??????? }NET_IN_MINI_RADAR_ALARMPOINTINFO; ///@brief ????mini????????????????(?????? CLIENT_AttachMiniRadarAlarmPointInfo) typedef struct tagNET_OUT_MINI_RADAR_ALARMPOINTINFO { DWORD dwSize; /// ??????? UINT nSID; /// ?????SID }NET_OUT_MINI_RADAR_ALARMPOINTINFO; ///@brief ????mini???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out]pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE??????, FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachMiniRadarAlarmPointInfo(LLONG lLoginID, const NET_IN_MINI_RADAR_ALARMPOINTINFO * pstuInParam, NET_OUT_MINI_RADAR_ALARMPOINTINFO* pstuOutParam, int nWaitTime); ///@brief ???????mini???????????? ///@param[in] lAttachHandle ??????????? ///@return TRUE??????, FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachMiniRadarAlarmPointInfo(LLONG lAttachHandle); ///@brief ??????????????????????????? typedef struct tagNET_IN_RADAR_GET_LINKSTATE { DWORD dwSize; /// ??????? int nChannel; /// ????? int nSDLinkNum; /// ????????????ip?????????????0????????????????????????????? char szSDLinkIP[MAX_RADAR_SD_NUM][32];///???????????ip???? }NET_IN_RADAR_GET_LINKSTATE; ///@brief ????????? typedef enum tagNET_EM_RADAR_LINK_SD_STATE { NET_EM_RADAR_LINK_SD_STATE_UNKNOWN = -1, /// ??? NET_EM_RADAR_LINK_SD_STATE_NORMAL, /// ???? NET_EM_RADAR_LINK_SD_STATE_TIMEOUT, /// ??? NET_EM_RADAR_LINK_SD_STATE_OFFLINE, /// ???? NET_EM_RADAR_LINK_SD_STATE_NOT_LINK, /// ?????? }NET_EM_RADAR_LINK_SD_STATE; ///@brief ???????????? typedef struct tagNET_LINKSTATE_INFO { char szSDLinkIP[32]; /// ???????ip NET_EM_RADAR_LINK_SD_STATE emState; /// ????????? int nVirtualChannel; /// ????????????????????????,?????1??? BYTE byReserved[1020]; /// ???? }NET_LINKSTATE_INFO; ///@brief ??????????????????????????? typedef struct tagNET_OUT_RADAR_GET_LINKSTATE { DWORD dwSize; /// ??????? int nSDLinkNum; /// ??????????? NET_LINKSTATE_INFO stuSDLinkState[MAX_RADAR_SD_NUM];/// ???????????? }NET_OUT_RADAR_GET_LINKSTATE; ///@brief ???????????????????????? typedef struct tagNET_RADARLINKDEVICE_ADD_INFO { char szSDLinkIP[32]; /// ??????????ip char szUserName[128]; /// ????? char szPassword[32]; /// ???? int nPort; /// ?????? BYTE byReserved[316]; /// ???? }NET_RADARLINKDEVICE_ADD_INFO; ///@brief CLIENT_AddRadarLinkSD?????? typedef struct tagNET_IN_RADAR_ADD_RADARLINKSD { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_RADARLINKDEVICE_ADD_INFO stuDevices[MAX_RADAR_SD_NUM]; /// ??????????? int nDevicesNum; /// ??????????? }NET_IN_RADAR_ADD_RADARLINKSD; ///@brief ?????? typedef enum tagNET_EM_RADARLINKDEVICE_ADD_ERRORCODE { EM_EM_RADARLINKDEVICE_ADD_UNKNOWN = -1, /// ??? EM_EM_RADARLINKDEVICE_ADD_SUCCESS = 0, /// ???? EM_EM_RADARLINKDEVICE_ADD_TIMEOUT, /// ??? EM_EM_RADARLINKDEVICE_ADD_ACCOUNTERROR, /// ???????????????? EM_EM_RADARLINKDEVICE_ADD_NOTSUPPORT, /// ???????????? }NET_EM_RADARLINKDEVICE_ADD_ERRORCODE; ///@brief ???????????????????? typedef struct tagNET_RADARLINKDEVICE_ADD_RESULT { NET_EM_RADARLINKDEVICE_ADD_ERRORCODE emErrorCode; /// ?????? BYTE byReserved[252]; /// ???? }NET_RADARLINKDEVICE_ADD_RESULT; ///@brief CLIENT_AddRadarLinkSD?????? typedef struct tagNET_OUT_RADAR_ADD_RADARLINKSD { DWORD dwSize; /// ??????? int nRetResultNum; /// ??????????? NET_RADARLINKDEVICE_ADD_RESULT stuAddResult[MAX_RADAR_SD_NUM]; /// ??????????????????????????? }NET_OUT_RADAR_ADD_RADARLINKSD; ///@brief ???????????????????? typedef struct tagNET_RADARLINKDEVICE_DEL_INFO { char szSDLinkIP[32]; /// ??????????ip BYTE byReserved[224]; /// ???? }NET_RADARLINKDEVICE_DEL_INFO; ///@brief CLIENT_DelRadarLinkSD?????? typedef struct tagNET_IN_RADAR_DEL_RADARLINKSD { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_RADARLINKDEVICE_DEL_INFO stuDevices[MAX_RADAR_SD_NUM]; /// ??????????? int nDevicesNum; /// ???????????,?0????????????????? }NET_IN_RADAR_DEL_RADARLINKSD; ///@brief CLIENT_DelRadarLinkSD?????? typedef struct tagNET_OUT_RADAR_DEL_RADARLINKSD { DWORD dwSize; /// ??????? }NET_OUT_RADAR_DEL_RADARLINKSD; ///@brief CLIENT_RadarManualLocate?????? typedef struct tagNET_IN_RADAR_MANUAL_LOCATE { DWORD dwSize; /// ??????? int nChannelID; /// ????? NET_POINT stuLocatePoint; /// ??????????????? }NET_IN_RADAR_MANUAL_LOCATE; ///@brief CLIENT_RadarManualLocate?????? typedef struct tagNET_OUT_RADAR_MANUAL_LOCATE { DWORD dwSize; /// ??????? }NET_OUT_RADAR_MANUAL_LOCATE; ///@brief ?????? typedef enum tagNET_EM_RADAR_RFIDCARD_ACTION { EM_RADAR_RFIDCARD_ACTION_UNKNOWN = 0, /// ??? EM_RADAR_RFIDCARD_ACTION_LEAVE, /// ????? EM_RADAR_RFIDCARD_ACTION_ENTER, /// ??????? }NET_EM_RADAR_RFIDCARD_ACTION; ///@brief RFID?????? typedef struct tagNET_RADAR_RFIDCARD_INFO { char szCardID[24]; /// ???ID NET_EM_RADAR_RFIDCARD_ACTION emCardAction; /// ?????? UINT nCardEntryTime; /// ???????????UTC???? UINT nCardQuitTime; /// ?????????UTC????????????????0 BYTE byReserved[116]; /// ??????? }NET_RADAR_RFIDCARD_INFO; ///@brief ????????RFID??? typedef struct tagNET_RADAR_NOTIFY_RFIDCARD_INFO { int nChannel; int nCardNum; NET_RADAR_RFIDCARD_INFO stuCardInfo[256]; /// RFID?????? BYTE byReserved[1024]; /// ??????? }NET_RADAR_NOTIFY_RFIDCARD_INFO; ///@brief ???RFID????????????? typedef void (CALLBACK *fRadarRFIDCardInfoCallBack) (LLONG lLoginId, LLONG lAttachHandle, const NET_RADAR_NOTIFY_RFIDCARD_INFO* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief CLIENT_AttachRadarRFIDCardInfo?????? typedef struct tagNET_IN_ATTACH_RADAR_RFIDCARD_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????? fRadarRFIDCardInfoCallBack cbRFIDCardInfo; /// ???RFIDCard?????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_RADAR_RFIDCARD_INFO; ///@brief CLIENT_AttachRadarRFIDCardInfo?????? typedef struct tagNET_OUT_ATTACH_RADAR_RFIDCARD_INFO { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_RADAR_RFIDCARD_INFO; ///@brief CLIENT_GetRadarRFIDMode?????? typedef struct tagNET_IN_RADAR_GET_RFID_MODE { DWORD dwSize; /// ??????? }NET_IN_RADAR_GET_RFID_MODE; ///@brief CLIENT_GetRadarRFIDMode?????? typedef struct tagNET_OUT_RADAR_GET_RFID_MODE { DWORD dwSize; /// ??????? int nMode; /// RFID????????0??????????????????????????????1?????????????????RFID????????? }NET_OUT_RADAR_GET_RFID_MODE; ///@brief CLIENT_SetRadarRFIDMode?????? typedef struct tagNET_IN_RADAR_SET_RFID_MODE { DWORD dwSize; /// ??????? int nMode; /// RFID????????0??????????????????????????????1?????????????????RFID????????? }NET_IN_RADAR_SET_RFID_MODE; ///@brief CLIENT_SetRadarRFIDMode?????? typedef struct tagNET_OUT_RADAR_SET_RFID_MODE { DWORD dwSize; /// ??????? }NET_OUT_RADAR_SET_RFID_MODE; ///@brief ????????????????? typedef struct tagNET_MAP_BUILDING_INFO { char szRadarIP[32]; /// ???IP NET_EM_RADAR_LINK_SD_STATE emState; /// ????? char szReserved[252]; /// ??????? } NET_MAP_BUILDING_INFO ; ///@brief CLIENT_MapRadarBuilding?????? typedef struct tagNET_IN_RADAR_MAP_BUILDING { DWORD dwSize; /// ??????? int nCount; /// ?????????????? char szRadarIP[24][32]; /// ??????????IP, ????????????????????, ????????????????????? int nAction[24]; /// ???????????????????????szRadarIP????????0???????????????1????????????? }NET_IN_RADAR_MAP_BUILDING; ///@brief CLIENT_MapRadarBuilding?????? typedef struct tagNET_OUT_RADAR_MAP_BUILDING { DWORD dwSize; /// ??????? int nCount; /// ?????????????? NET_MAP_BUILDING_INFO stuMapInfo[24]; /// ?????? }NET_OUT_RADAR_MAP_BUILDING; ///@brief CLIENT_RadarManualTrack?????? typedef struct tagNET_IN_RADAR_MANUAL_TRACK { DWORD dwSize; /// ??????? char szSDIP[32]; /// ??????????? int nTrackID; /// ?????????????? int nTime; /// ????????????s int nAction; /// ???????, 0:?????????, 1:??????????, 2:?????????????????????????????????????????????? int arrCoordinate[2]; /// ???????????????????????1000000???????????6????????????0????????????1??????? int nAlarmType; /// ???????????, bit0??????? bit1??????AIS??? bit2????????? bit3?????????? ??bit????1???????????????0?????????????? int nSpeed; /// ??????????????????????km/h ????10000 ????????????0.0001?? int nAzimuth; /// ?????????????0?? ??????? 0-360??????100?????? int nChannel; /// ????? } NET_IN_RADAR_MANUAL_TRACK; ///@brief CLIENT_RadarManualTrack?????? typedef struct tagNET_OUT_RADAR_MANUAL_TRACK { DWORD dwSize; /// ??????? char szSDIP[32]; /// ??????????????????ip int nEventID; /// ??????????????????????id int szReserved[4]; /// ?????? char szTargetUUID[32]; /// ??????????id?????????????????????? char??????1-12???? ???????MAC????? 13-23?? ?? ????? 23-28?? ??????????? 29-32?? ???????id????TrackID??? }NET_OUT_RADAR_MANUAL_TRACK; ///@brief ????????AIS??? typedef struct tagNET_RADAR_NOTIFY_AIS_INFO { int nDataLength; /// AIS??????? UINT nData[512]; /// AIS???????? int nSID; /// ????ID BYTE byReserved[1024]; /// ??????? }NET_RADAR_NOTIFY_AIS_INFO; ///@brief ???AIS????????????? typedef void (CALLBACK *fRadarAISInfoCallBack) (LLONG lLoginId, LLONG lAttachHandle, const NET_RADAR_NOTIFY_AIS_INFO* pBuf, DWORD dwBufLen, void* pReserved, LDWORD dwUser); ///@brief CLIENT_AttachRadarAISInfo?????? typedef struct tagNET_IN_ATTACH_RADAR_AIS_INFO { DWORD dwSize; /// ??????? fRadarAISInfoCallBack cbAISInfo; /// ???AIS?????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_RADAR_AIS_INFO; ///@brief CLIENT_AttachRadarAISInfo?????? typedef struct tagNET_OUT_ATTACH_RADAR_AIS_INFO { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_RADAR_AIS_INFO; ///@brief ????? typedef struct tagNET_RADAR_SET_TRACK_INFO { int nTrackID; /// ??ID int nAISMatch; /// ???AIS???0????????1?????? char szReserved[64]; /// ?????? }NET_RADAR_SET_TRACK_INFO; ///@brief CLIENT_SetRadarTrackInfo ?????? typedef struct tagNET_IN_RADAR_SET_TRACK_INFO { DWORD dwSize; /// ??????? int nInfoNum; /// ????????? NET_RADAR_SET_TRACK_INFO stuInfo[128]; /// ????? }NET_IN_RADAR_SET_TRACK_INFO; ///@brief CLIENT_SetRadarTrackInfo ?????? typedef struct tagNET_OUT_RADAR_SET_TRACK_INFO { DWORD dwSize; /// ??????? }NET_OUT_RADAR_SET_TRACK_INFO; ///@brief CLIENT_SetDevicePower ?????? typedef struct tagNET_IN_RADAR_SET_DEVICE_POWER { DWORD dwSize; /// ??????? int nType; /// 0 : ?????????, ?????????????????? /// 1 : ??????????, ???????????????? }NET_IN_RADAR_SET_DEVICE_POWER; ///@brief CLIENT_SetDevicePower ?????? typedef struct tagNET_OUT_RADAR_SET_DEVICE_POWER { DWORD dwSize; /// ??????? }NET_OUT_RADAR_SET_DEVICE_POWER; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRadarLinkSDState(LLONG lLoginID, const NET_IN_RADAR_GET_LINKSTATE * pstInParam, NET_OUT_RADAR_GET_LINKSTATE* pstOutParam, int nWaitTime); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddRadarLinkSD(LLONG lLoginID, const NET_IN_RADAR_ADD_RADARLINKSD * pstInParam, NET_OUT_RADAR_ADD_RADARLINKSD* pstOutParam, int nWaitTime); ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelRadarLinkSD(LLONG lLoginID, const NET_IN_RADAR_DEL_RADARLINKSD * pstInParam, NET_OUT_RADAR_DEL_RADARLINKSD* pstOutParam, int nWaitTime); ///@brief ?????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadarManualLocate(LLONG lLoginID, const NET_IN_RADAR_MANUAL_LOCATE * pstInParam, NET_OUT_RADAR_MANUAL_LOCATE* pstOutParam, int nWaitTime); ///@brief ?????RFID?????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRadarRFIDCardInfo(LLONG lLoginID, const NET_IN_ATTACH_RADAR_RFIDCARD_INFO * pstInParam, NET_OUT_ATTACH_RADAR_RFIDCARD_INFO* pstOutParam, int nWaitTime); ///@brief ??????????RFID?????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRadarRFIDCardInfo(LLONG lAttachHandle); ///@brief ???RFID??????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRadarRFIDMode(LLONG lLoginID, const NET_IN_RADAR_GET_RFID_MODE * pstInParam, NET_OUT_RADAR_GET_RFID_MODE* pstOutParam, int nWaitTime); ///@brief ????RFID??????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRadarRFIDMode(LLONG lLoginID, const NET_IN_RADAR_SET_RFID_MODE * pstInParam, NET_OUT_RADAR_SET_RFID_MODE* pstOutParam, int nWaitTime); ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MapRadarBuilding(LLONG lLoginID, const NET_IN_RADAR_MAP_BUILDING * pstInParam, NET_OUT_RADAR_MAP_BUILDING* pstOutParam, int nWaitTime); ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadarManualTrack(LLONG lLoginID, const NET_IN_RADAR_MANUAL_TRACK* pstInParam, NET_OUT_RADAR_MANUAL_TRACK* pstOutParam, int nWaitTime); ///@brief ?????AIS??? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRadarAISInfo(LLONG lLoginID, const NET_IN_ATTACH_RADAR_AIS_INFO * pstInParam, NET_OUT_ATTACH_RADAR_AIS_INFO* pstOutParam, int nWaitTime); ///@brief ??????????AIS??? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRadarAISInfo(LLONG lAttachHandle); ///@brief ???????????????????AIS????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRadarTrackInfo(LLONG lLoginID, const NET_IN_RADAR_SET_TRACK_INFO* pstInParam, NET_OUT_RADAR_SET_TRACK_INFO* pstOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDevicePower(LLONG lLoginID, const NET_IN_RADAR_SET_DEVICE_POWER* pstInParam, NET_OUT_RADAR_SET_DEVICE_POWER* pstOutParam, int nWaitTime); ///@brief CLIENT_GetWaterRadarCaps ??????? typedef struct tagNET_IN_GET_WATERRADAR_CAPS { DWORD dwSize; /// ??????? }NET_IN_GET_WATERRADAR_CAPS; ///@brief CLIENT_GetWaterRadarCaps ??????? typedef struct tagNET_OUT_GET_WATERRADAR_CAPS { DWORD dwSize; /// ??????? BOOL bSupport; /// ?????????????????? FALSE: ????? TRUE: ??? }NET_OUT_GET_WATERRADAR_CAPS; ///@brief CLIENT_GetWaterRadarObjectInfo ??????? typedef struct tagNET_IN_GET_WATERRADAR_OBJECTINFO { DWORD dwSize; /// ??????? }NET_IN_GET_WATERRADAR_OBJECTINFO; ///@brief CLIENT_GetWaterRadarObjectInfo ??????? typedef struct tagNET_OUT_GET_WATERRADAR_OBJECTINFO { DWORD dwSize; /// ??????? float fWaterLevel; /// ??? ???? cm }NET_OUT_GET_WATERRADAR_OBJECTINFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetWaterRadarCaps(LLONG lLoginID, const NET_IN_GET_WATERRADAR_CAPS* pInParam, NET_OUT_GET_WATERRADAR_CAPS* pOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetWaterRadarObjectInfo(LLONG lLoginID, const NET_IN_GET_WATERRADAR_OBJECTINFO* pInParam, NET_OUT_GET_WATERRADAR_OBJECTINFO* pOutParam, int nWaitTime); ///@brief ??????????????RFID?????? typedef struct tagNET_RADAR_REGIONDETECTION_RFIDCARD_INFO { char szCardID[24]; /// ???ID char byReserved[256]; /// ??????? }NET_RADAR_REGIONDETECTION_RFIDCARD_INFO; ///@brief ????????????(??? DH_ALARM_RADAR_REGIONDETECTION) typedef struct tagALARM_RADAR_REGIONDETECTION_INFO { int nAction; /// ???????1:Start 2:Stop NET_TIME_EX stuTime; /// ???????????? int nChannelID; /// ????? int nObjectNum; /// ??????????? NET_RADAR_DETECT_OBJECT stuObjects[100]; /// ???????????? char szName[128]; /// ??????? int nPresetID; /// ?????????????? int nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] EM_RADAR_ALARM_TYPE emAlarmType; /// ???????? int nLongitude; /// ?????????1000000???????????6????????????6????0????????120125400????120.1254 int nLatitude; /// ?????????1000000???????????6????????????6????0????????120125400????120.1254 UINT nRuleID; /// ??????????????????????????????????? int nCardNum; /// RFID??????? NET_RADAR_REGIONDETECTION_RFIDCARD_INFO stuCardInfo[256]; /// RFID?????? UINT nAlarmLevel; /// ?????????0 ???????? 1???????????2??????? int nAlarmFlag; /// ???????????bit0?????????bit1??????AIS??? ??2bit??????????? ??3bit???????????? int nAlarmChannel; /// ????????????? UINT nEventID; /// ??????????????????????? int nSpeed; /// ????????????????????????????100?? ????m/s int nTrackID; /// ???????????id,????[0,63] int nObjectType; /// ????????????????????: 0x00???????? 0x01?????? 0x02??????????? 0x03?????? 0x04?????????? 0x05??????? 0x06???????? 0x07?????? 0x08???????? 0x09???????? int nUpDownGoing; /// ????/???????? -1:??? 0:???? 1:???? 2:???? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? int nDistance; /// ????????????????????????--????????100??????,?????? int nAngle; /// ????????????????????--????????100?????????????? char szTargetUUID[32]; /// ??????????id char byReserved[960]; /// ?????? }ALARM_RADAR_REGIONDETECTION_INFO; ///@brief ???????/?????????(??????DH_ALARM_RADAR_LINEDETECTION) typedef struct tagALARM_RADAR_LINEDETECTION_INFO { int nChannelID; /// ????? int nAction; /// ???????1:Start 2:Stop char szName[128]; /// ??????? NET_TIME_EX stuTime; /// ???????????? int nObjectNum; /// ??????????? NET_RADAR_DETECT_OBJECT stuObjects[100]; /// ???????????? int nPresetID; /// ?????????????? int nDetectRegionNum; /// ?????????? NET_POINT stuDetectRegion[20]; /// ???????,[0,8191] int nLongitude; /// ?????????1000000???????????6????????????6????0????????120125400????120.1254 int nLatitude; /// ?????????1000000???????????6????????????6????0????????120125400????120.1254 UINT nAlarmLevel; /// ?????????0 ???????? 1???????????2??????? int nAlarmFlag; /// ???????????bit0?????????bit1??????AIS??? EM_RADAR_ALARM_TYPE emAlarmType; /// ???????? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char byReserved[1012]; /// ?????? } ALARM_RADAR_LINEDETECTION_INFO; ///@brief ????????????????? typedef struct tagNET_RADAR_PLACE_INFO { int nRadarPixel[2]; /// ?????????????????? double dbRadarAngle; /// ?????????,?????? char byReserved[512]; /// ?????? } NET_RADAR_PLACE_INFO; ///@brief ????????????(??? NET_EM_CFG_RADAR_MAPPARA) typedef struct tagNET_CFG_RADAR_MAPPARA_INFO { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????? NET_RADAR_PIXELLINE stuPixelLine; /// ????????????????? double dDistance; /// ???????????????????,?????? NET_RADAR_PIXELPOINT stuPixelPoint; /// ?????????????????? double dRadarDirectionAngle; /// ?????????,?????? UINT nLongitudeNum; /// ??????? int nLongitude[4]; /// ????, ???4??, ???1000000??, ???????6??????, ????6????0????, ????120125400????120.1254 UINT nLatitudeNum; /// ??????? int nLatitude[4]; /// ????, ???4??, ???1000000??, ???????6??????, ????6????0????, ????120125400????120.1254 char byReserved1[4]; /// ?????? UINT nRadarPlaceNum; /// ????????????????? NET_RADAR_PLACE_INFO stuRadarPlaceInfo[4]; /// ?????????????????? }NET_CFG_RADAR_MAPPARA_INFO; ///@brief ????? typedef struct tagNET_RADAR_CALIBRATIONPOS { NET_RADAR_PIXELPOINT stuPixelPoint; /// ?????????????? double dPositionX; /// ?????,???????-1~1 double dPositionY; /// ??????,???????-1~1 double dZoom; /// ?????,??????? 0~1 BYTE byReserved[512]; /// ??????? }NET_RADAR_CALIBRATIONPOS; ///@brief ??????? typedef struct tagNET_RADAR_CALIBRATION_PARAS { int nCalibrationPosNum; /// ???????? BYTE byReserved1[4]; /// ?????? NET_RADAR_CALIBRATIONPOS stuCalibrationPos[4]; /// ????????? char szSDLinkIP[32]; /// ??????????ip double dLinkSDHeight; /// ?????????????????????? double dTiltRecoupAngle; /// ???????????????? BYTE byReserved[1024]; /// ??????? }NET_RADAR_CALIBRATION_PARAS; ///@brief ???????????(??? NET_EM_CFG_RADAR_CALIBRATION) typedef struct tagNET_CFG_RADAR_CALIBRATION_INFO { DWORD dwSize; /// ??????? int nCalibrationParasNum; /// ??????????? NET_RADAR_CALIBRATION_PARAS stuCalibrationParas[MAX_RADAR_SD_NUM]; /// ??????? double dInstallHeight; /// ????????????? double dSlopeAngle; /// ?????????? }NET_CFG_RADAR_CALIBRATION_INFO; ///@brief ?????????????????(??? NET_EM_CFG_RADAR_LINKSD) typedef struct tagNET_CFG_RADAR_LINKSD_INFO { DWORD dwSize; /// ??????? BOOL bRadarLink; /// ????????????? }NET_CFG_RADAR_LINKSD_INFO; #define NET_RADAR_MAX_NUM_RULELINE 10 /// ?????????????? #define NET_RADAR_MAX_NUM_POLYGON 24 /// ????????????????? ///@brief ?????????? typedef enum tagEM_RADAR_RULETYPE { EM_RADAR_RULETYPE_UNKNOWN, /// ??? EM_RADAR_RULETYPE_ALARM, /// ??? EM_RADAR_RULETYPE_SHIELD, /// ???? EM_RADAR_RULETYPE_HIGHALARM, /// ??????????? }EM_RADAR_RULETYPE; #define RADAR_TARGET_FILTER_HUMAN 0x01 /// ?? #define RADAR_TARGET_FILTER_CAR 0x02 /// ?? #define RADAR_TARGET_FILTER_ANIMAL 0x04 /// ???? ///@brief ?????? typedef struct tagNET_RADAR_RULELINE { char szName[DH_COMMON_STRING_128];/// ????????,???????? int nRegionNumber; /// ????????,????[1,10] BOOL bEnable; /// ?????????? EM_RADAR_RULETYPE emRuleType; /// ????????,??????????????? DH_POINT stuPolygon[DH_MAX_POLYGON_NUM]; /// ?????,?????????????????????????? int nPolygonPointNum; /// ?????????????,??????????[3, 24] int nTargetFilter; /// ?????? bit1:??, bit2:??, bit3:???? ???????|?????????& int nAlarmOutNumber; /// ???????????????????????NET_RADAR_ANALYSERULE????nAlarmOutNumber??? int nLongitudeNum; /// ???????, ??nLongitude ??????????????? int nLongitude[21]; /// ?????????,?????????, ???1000000??, ???????6????????????120125400????120.1254 int nLatitudeNum; /// ??????, ??nLatitude ??????????????? int nLatitude[21]; /// ?????????,?????????, ???1000000??, ???????6????????????120125400????120.1254 int nRadarPolygonNum; /// ????????????????????????????????? int nRadarPolygon[20][2]; /// ??????????????????????????????????????????int[][0u]?????? ?????????????100????int[][1u] :??? ???????? ????100?? BYTE byReserved[164]; /// ??????? }NET_RADAR_RULELINE; ///@brief ????????????(??? NET_EM_CFG_RADAR_RULELINE) typedef struct tagNET_CFG_RADAR_RULELINE_INFO { DWORD dwSize; /// ??????? int nNumRuleLine; /// ??????????????? NET_RADAR_RULELINE stuRuleLine[NET_RADAR_MAX_NUM_RULELINE]; ///?????? BOOL bUseEx; /// nNumRuleLineEx/stuRuleLineEx ??????? int nNumRuleLineEx; /// ??????????????? NET_RADAR_RULELINE stuRuleLineEx[25]; /// ?????? }NET_CFG_RADAR_RULELINE_INFO; ///@brief ???????????? typedef struct tagNET_RADAR_ANALYSERULE { char szSDLinkIP[32]; /// ??????????IP int nAlarmOutNumber; /// ????????????????? BOOL bEnable; /// ??????? NET_CFG_ALARM_MSG_HANDLE stuEventHandler; /// ???????????? BYTE byReserved[1024]; /// ??????? }NET_RADAR_ANALYSERULE; ///@brief ?????????????(??? NET_EM_CFG_RADAR_ANALYSERULE) typedef struct tagNET_CFG_RADAR_ANALYSERULE_INFO { DWORD dwSize; /// ??????? int nAnalyseRuleNum; /// ??????????????? NET_RADAR_ANALYSERULE stuAnalyseRules[MAX_RADAR_SD_NUM]; /// ???????????????? }NET_CFG_RADAR_ANALYSERULE_INFO; ///@brief ?????????? typedef enum tagEM_RADAR_TRACKSWITCHMODE { EM_RADAR_TRACKSWITCHMODE_UNKNOWN, /// ??? EM_RADAR_TRACKSWITCHMODE_ROTATION, /// ??? EM_RADAR_TRACKSWITCHMODE_TIMEFIRST, /// ??????? EM_RADAR_TRACKSWITCHMODE_DISTANCEFIRST, /// ???????? }EM_RADAR_TRACKSWITCHMODE; ///@brief ?????????????(??? NET_EM_CFG_RADAR_TRACKGLOBALCONFIG) typedef struct tagNET_CFG_RADAR_TRACKGLOBALCONFIG_INFO { DWORD dwSize; /// ??????? BOOL bSectorDisable; /// ??????????? int nTrajectoryTime; /// ?????,??????,????[3,30] int nTrackSwitchTime; /// ???????????,??????,????[1,15] EM_RADAR_TRACKSWITCHMODE emTrackSwitchMode; /// ?????????? }NET_CFG_RADAR_TRACKGLOBALCONFIG_INFO; ///@brief ????????? typedef enum tagNET_EM_RADAR_SCENE_TYPE { NET_EM_RADAR_SCENE_UNKNOWN = 0, /// ??? NET_EM_RADAR_SCENE_DEFAULT, /// ??? NET_EM_RADAR_SCENE_SHRUB, /// ??? NET_EM_RADAR_SCENE_ROOMY, /// ???? NET_EM_RADAR_SCENE_CUSTOM, /// ????? }NET_EM_RADAR_SCENE_TYPE; ///@brief ????? typedef struct tagNET_RADAR_SCENE { NET_EM_RADAR_SCENE_TYPE emType; /// ????????? BYTE byReserved[508]; /// ???? }NET_RADAR_SCENE; ///@brief ????????? typedef struct tagNET_RADAR_STRUCTURED { BOOL bEnable; /// ??????????? BYTE byReserved[508]; /// ???? }NET_RADAR_STRUCTURED; ///@brief ???????? typedef struct tagNET_RADAR_CAPACITY { int nPower; /// ???? 1:50??; 2:100??; 3:150?? BYTE byReserved[508]; /// ???? }NET_RADAR_CAPACITY; ///@brief ?????????? typedef struct tagNET_RADAR_RADARCHANNEL { int nRoute; /// ??????, 1: ???1 2:???2 BYTE byReserved[508]; /// ???? }NET_RADAR_RADARCHANNEL; ///@brief ??????????????? typedef struct tagNET_RADAR_TARGETRATIO { int nRatio; /// ?????????????? BYTE byReserved[60]; /// ???? }NET_RADAR_TARGETRATIO; ///@brief ??????????(??? NET_EM_CFG_RADAR_RADARPARA) typedef struct tagNET_CFG_RADAR_RADARPARA_INFO { DWORD dwSize; /// ??????? NET_RADAR_SCENE stuScene; /// ????? NET_RADAR_STRUCTURED stuStructured; /// ????????? NET_RADAR_CAPACITY stuCapacity; /// ???????? NET_RADAR_RADARCHANNEL stuRadarChannel; /// ?????????? NET_RADAR_TARGETRATIO stuTargetRatio; /// ??????????????? }NET_CFG_RADAR_RADARPARA_INFO; ///@brief ???????????????? typedef struct tagNET_REMOTESDLINK_INFO { char szSDLinkIP[32]; /// ??????????ip BOOL bRadarLink; /// ??????? BYTE byReserved[476]; /// ???? }NET_REMOTESDLINK_INFO; ///@brief ????????????????????(??? NET_EM_CFG_RADAR_REMOTESDLINK) typedef struct tagNET_CFG_RADAR_REMOTESDLINK_INFO { DWORD dwSize; /// ??????? int nLinkNum; /// ???????? NET_REMOTESDLINK_INFO stuLinkInfos[MAX_RADAR_SD_NUM];/// ???????????????? }NET_CFG_RADAR_REMOTESDLINK_INFO; ///@brief ????????????? typedef struct tagNET_RADARLINKDEVICE_INFO { char szSDLinkIP[32]; /// ???ip char szVendor[32]; /// ?????? int nPort; /// ??????(?????,?????CLIENT_AddRadarLinkSD) char szUserName[128]; /// ?????(?????,?????CLIENT_AddRadarLinkSD) char szPassword[32]; /// ????(?????,?????CLIENT_AddRadarLinkSD) char szDeviceType[32]; /// ??????? char szDeviceName[128]; /// ??????? BYTE byReserved[124]; /// ???? }NET_RADARLINKDEVICE_INFO; ///@brief ?????????????????(??? NET_EM_CFG_RADAR_RADARLINKDEVICE) typedef struct tagNET_CFG_RADAR_RADARLINKDEVICE_INFO { DWORD dwSize; /// ??????? int nDevNum; /// ??????? NET_RADARLINKDEVICE_INFO stuDevInfo[MAX_RADAR_SD_NUM]; /// ????????? }NET_CFG_RADAR_RADARLINKDEVICE_INFO; ///@brief OSD ???????? typedef enum tagNET_EM_OSD_AREA { NET_EM_OSD_AREA_UNKNOWN, /// ??? NET_EM_OSD_AREA_LEFT_TOP, /// ???? NET_EM_OSD_AREA_MID_TOP, /// ???? NET_EM_OSD_AREA_RIGHT_TOP, /// ???? NET_EM_OSD_AREA_MID_LEFT, /// ???? NET_EM_OSD_AREA_MID_RIGHT, /// ???? NET_EM_OSD_AREA_LEFT_BOTTOM, /// ???? NET_EM_OSD_AREA_MID_BOTTOM, /// ???? NET_EM_OSD_AREA_RIGHT_BOTTOM, /// ???? }NET_EM_OSD_AREA; ///@brief ?????OSD????????(??? NET_EM_CFG_RADAR_MAPOSDPARA) typedef struct tagNET_CFG_RADAR_MAPOSDPARA_INFO { DWORD dwSize; /// ??????? NET_EM_OSD_AREA emOSDArea; /// ???????? }NET_CFG_RADAR_MAPOSDPARA_INFO; ///@brief ????????? typedef struct tagNET_RADAR_DEVICE_INFO { char szProtocalType[32]; /// ???????? char szRadarIP[32]; /// ??????IP char szDeviceType[32]; /// ??????? char szDeviceName[32]; /// ??????? char szRadarVer[16]; /// Radar??????? char szUserName[128]; /// ????? char szPassWord[32]; /// ???? int nPort; /// ??????? int nLongitude; /// ????, ?????????, ???1000000??, ???????6??????, ????6????0????, ????120125400????120.1254 int nLatitude; /// ????, ?????????, ???1000000??, ???????6??????, ????6????0????, ????120125400????120.1254 int nAngle; /// ??????????, ???100??, ????112897, ?????128.97?? int nDectAngle; /// ???????????100???????????12897???????128.97?? int nDectDistance; /// ???????????100???????????16000?????????????160?? BYTE bReserved[1016]; /// ??????? } NET_RADAR_DEVICE_INFO; ///@brief ??????????????, ?????????NET_EM_CFG_RADAR_DEVLIST typedef struct tagNET_CFG_RADAR_DEVLIST_INFO { DWORD dwSize; /// ??????? UINT nRadarDevNum; /// ??????????, ??stuRadarDevList ?????????????? NET_RADAR_DEVICE_INFO stuRadarDevList[10]; /// ????????????? } NET_CFG_RADAR_DEVLIST_INFO; ///@brief ??????????????? typedef struct tagNET_RADAR_RULE_BIND_SD_RELATION { char szSDIP[32]; /// ?????????IP int nRuleId; /// ????ID BYTE bReserved[1020]; /// ??????? } NET_RADAR_RULE_BIND_SD_RELATION; ///@brief ??????????????, ?????????NET_EM_CFG_RADAR_RULE_BIND_SD typedef struct tagNET_CFG_RADAR_RULE_BIND_SD_INFO { DWORD dwSize; /// ??????? UINT nRuleSdRelationNum; /// ????????????????, ??stuRuleSdRelation ??????????????? NET_RADAR_RULE_BIND_SD_RELATION stuRuleSdRelation[10]; /// ??????????????? } NET_CFG_RADAR_RULE_BIND_SD_INFO; ///@brief ????????????? typedef struct tagNET_RADAR_SCREEN_RULE { char szRuleName[512]; /// ??????????????? int nDisplayColor; /// ????????????0???????1???????2????? int nDisplayMode; /// ???????????????0???????????1????????? int nDisplaySpeed; /// ???????????????????????????????????0??????????0-9 char szDisplayText[512]; /// ??????????????? int nRuleID; /// ????????????? char szReserved[1024]; /// ??????? } NET_RADAR_SCREEN_RULE; ///@brief ?????????????????, ?????????NET_EM_CFG_RADAR_SCREEN_RULE typedef struct tagNET_CFG_RADAR_SCREEN_RULE_INFO { DWORD dwSize; /// ??????? UINT nScreenRuleNum; /// ????????????????, stuScreenRule ??????????????? NET_RADAR_SCREEN_RULE stuScreenRule[10]; /// ????????????? } NET_CFG_RADAR_SCREEN_RULE_INFO; ///@brief ???????????? typedef struct tagNET_RADAR_ALGORITHM_PARAM { char szName[64]; /// ?????? int nValue; /// ?????, ????100????? }NET_RADAR_ALGORITHM_PARAM; ///@brief ????????????????, ????????? NET_EM_CFG_RADAR_ALGORITHM_PARAM typedef struct tagNET_CFG_RADAR_ALGORITHM_PARAM_INFO { DWORD dwSize; /// ??????? UINT nRadarAlgorithmParamNum; /// ????????????????, stuRadarAlgorithmParam ??????????????? NET_RADAR_ALGORITHM_PARAM stuRadarAlgorithmParam[20]; /// ???????????? } NET_CFG_RADAR_ALGORITHM_PARAM_INFO; ///@brief ?????????? typedef struct tagNET_RADAR_TRACK_FREQUENCY { int nFrequency; /// ???????????????100??????????/? }NET_RADAR_TRACK_FREQUENCY; ///@brief ??????????????, ????????? NET_EM_CFG_RADAR_TRACK_FREQUENCY typedef struct tagNET_CFG_RADAR_TRACK_FREQUENCY_INFO { DWORD dwSize; /// ??????? NET_RADAR_TRACK_FREQUENCY stuRadarTrackFrequency; /// ?????????? } NET_CFG_RADAR_TRACK_FREQUENCY_INFO; ///@brief ???????? ??????????????????24??? typedef struct tagNET_TRACK_MOVE_MODE_TIMESECTION { BOOL bEnable; /// ????????????? char szTime[32]; /// 00:00-00:00 ???:????(??????)-???:????(???????) char szReserved[252]; /// ??????? }NET_TRACK_MOVE_MODE_TIMESECTION; ///@brief ????????????????? typedef struct tagNET_RADAR_TRACK_MOVE_MODE_INFO { int nMode; /// -1:??? 0:??? 1:???????(?????????????????) 2:??????(???) 3:???? 4:???? BOOL bAllDayUse; /// TRUE:????????? FALSE:????????? NET_TRACK_MOVE_MODE_TIMESECTION stuTimeSection; /// ???????? ??????????????????24??? int nDayDistance; /// ??????????????????????????? int nNightDistance; /// ??????????????????????????? BOOL bEnable; /// ???????????????????? BOOL bRelayTrack; /// ??????????? char szReserved[1024]; /// ??????? }NET_RADAR_TRACK_MOVE_MODE_INFO; ///@brief ?????????????????????, ????????? NET_EM_CFG_RADAR_TRACK_MOVE_MODE typedef struct tagNET_CFG_CFG_RADAR_TRACK_MOVE_MODE_INFO { DWORD dwSize; /// ??????? int nTrackMoveModeNum; /// ???????????????????? NET_RADAR_TRACK_MOVE_MODE_INFO stuTrackMoveMode[10]; /// ????????????????? } NET_CFG_CFG_RADAR_TRACK_MOVE_MODE_INFO; ///@brief Mini?????????????, ????????? NET_EM_CFG_MINIRADAR_DECT_PARAM typedef struct tagNET_CFG_MINIRADAR_DECT_PARAM_INFO { DWORD dwSize; /// ??????? UINT nSensitivity; /// ?????? UINT nReportInterval; /// ?????????????? }NET_CFG_MINIRADAR_DECT_PARAM_INFO; ///@brief ?????????????? typedef struct tagNET_CFG_MINIRADAR_BREATHE { BOOL bEnable; /// ?????? UINT nMax; /// ????????????????????????????? UINT nMin; /// ????????????????????????????? UINT nDelay; /// ???????????????? UINT nAlarmOutMask; /// ?????????????????bit?????????????? char szReserved[1020]; /// ??????? }NET_CFG_MINIRADAR_BREATHE; ///@brief ????????????? typedef struct tagNET_CFG_MINIRADAR_HEATERATE { BOOL bEnable; /// ?????? UINT nMax; /// ????????????????????????????? UINT nMin; /// ????????????????????????????? UINT nDelay; /// ??????, ?????????? UINT nAlarmOutMask; /// ?????????????????bit?????????????? char szReserved[1020]; /// ??????? }NET_CFG_MINIRADAR_HEATERATE; ///@brief ??/?????? typedef struct tagNET_CFG_MINIRADAR_AFBSTATUS { BOOL bEnable; /// ?????? UINT nAFBFlag; /// 0????????? 1?????????? UINT nDelay; /// ??????, ?????????? UINT nAlarmOutMask; /// ?????????????????bit?????????????? char szReserved[1024]; /// ??????? }NET_CFG_MINIRADAR_AFBSTATUS; ///@brief ?????????? typedef struct tagNET_CFG_MINIRADAR_FALLALARM { BOOL bEnable; /// ?????? UINT nDelay; /// ??????, ?????????? UINT nAlarmOutMask; /// ?????????????????bit?????????????? char szReserved[1020]; /// ??????? }NET_CFG_MINIRADAR_FALLALARM; ///@brief ?????????? typedef struct tagNET_CFG_MINIRADAR_NUMALARM { BOOL bEnable; /// ?????? UINT nMax; /// ????????????????????????????? UINT nMin; /// ????????????????????????????? UINT nDelay; /// ???????????????? UINT nAlarmOutMask; /// ?????????????????bit?????????????? char szReserved[1020]; /// ??????? }NET_CFG_MINIRADAR_NUMALARM; ///@brief ??????? typedef struct tagNET_CFG_MINIRADAR_RESIDENTALARM { BOOL bEnable; /// ?????? UINT nTime; /// ????????????????????????? UINT nDelay; /// ??????????????????? UINT nAlarmOutMask; /// ?????????????????bit?????????????? char szReserved[1024]; /// ??????? }NET_CFG_MINIRADAR_RESIDENTALARM; ///@brief Mini?????????, ????????? NET_EM_CFG_MINIRADAR_INDOOR_ALARM typedef struct tagNET_CFG_MINIRADAR_INDOOR_ALARM_INFO { DWORD dwSize; /// ??????? NET_CFG_MINIRADAR_BREATHE stuBreathe; /// ?????????????? NET_CFG_MINIRADAR_HEATERATE stuHeateRate; /// ????????????? NET_CFG_MINIRADAR_AFBSTATUS stuAFBStatus; /// ??/?????? NET_CFG_MINIRADAR_FALLALARM stuFallAlarm; /// ?????????? NET_CFG_MINIRADAR_NUMALARM stuNumAlarm; /// ?????????? NET_CFG_MINIRADAR_RESIDENTALARM stuResidentAlarm; /// ??????? }NET_CFG_MINIRADAR_INDOOR_ALARM_INFO; ///@brief Mini????????????, ????????? NET_EM_CFG_MINIRADAR_COMP_INFO typedef struct tagNET_CFG_MINIRADAR_COMP_INFO { DWORD dwSize; /// ??????? int nRollAngle; /// ?????????????????100?? int nPitchAngle; /// ??????????????????100?? int nYawAngle; /// ?????????????????100?? }NET_CFG_MINIRADAR_COMP_INFO; ///@brief Mini???????????, ????????? NET_EM_CFG_MINIRADAR_INSTALL_INFO typedef struct tagNET_CFG_MINIRADAR_INSTALL_INFO { DWORD dwSize; /// ??????? UINT nInstallType; /// ??????(??????????) 0:???, 1:???, 2:???? UINT nInstallHeigh; /// ??????????????????100?? int nInstallAngle; /// ??????????????????100?? }NET_CFG_MINIRADAR_INSTALL_INFO; ///@brief Mini??????????????, ????????? NET_EM_CFG_MINIRADAR_REGION_DETECT typedef struct tagNET_CFG_MINIRADAR_REGION_DETECT_INFO { DWORD dwSize; /// ??????? UINT nFrontDecDis; /// ????????????????????100?? UINT nBehindDecDis; /// ????????????????????100?? UINT nLeftDecDis; /// ????????????????????100?? UINT nRightDecDis; /// ????????????????????100?? }NET_CFG_MINIRADAR_REGION_DETECT_INFO; ///@brief ????????????? typedef struct tagNET_MINIRADAR_SCREEN_CONFIG { char szStatus[64]; /// ?????? char szUIPrompts[1024]; /// UI????? UINT nMax; /// ??????????? UINT nMin; /// ???????????? char szResvered[1024]; /// ??????? }NET_MINIRADAR_SCREEN_CONFIG; ///@brief Mini??????????????, ????????? NET_EM_CFG_MINIRADAR_SCREEN_CONFIG typedef struct tagNET_CFG_MINIRADAR_SCREEN_CONFIG_INFO { DWORD dwSize; /// ??????? int nConfigNum; /// ??????????? NET_MINIRADAR_SCREEN_CONFIG stuConfig[6]; /// ???????? }NET_CFG_MINIRADAR_SCREEN_CONFIG_INFO; ///@brief CLIENT_SetRadarAlgData ??????? typedef struct tagNET_IN_SET_RADAR_ALGDATA_INFO { DWORD dwSize; /// ??????? UINT nAction; /// 0:??????????? 1:???????????? }NET_IN_SET_RADAR_ALGDATA_INFO; ///@brief CLIENT_SetRadarAlgData ??????? typedef struct tagNET_OUT_SET_RADAR_ALGDATA_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_RADAR_ALGDATA_INFO; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRadarAlgData(LLONG lLoginID, const NET_IN_SET_RADAR_ALGDATA_INFO* pstuInParam, NET_OUT_SET_RADAR_ALGDATA_INFO* pstuOutParam, int nWaitTime); //////////////////////////////??????????? end///////////////////////////////// //////////////////////////////???????????? start////////////////////////////// #define MAX_ACTIVITY_ANALYSE_GROUP 128 /// ????????????????????????? ///@brief ??????? typedef enum tagNET_EM_VS_TYPE { NET_EM_VS_TYPE_ACTIVITY_ANALYSE = 0, /// ??????????????,??? NET_VIDEOSTAT_SUMMARY_STEREO NET_EM_VS_TYPE_CROWD_DISTRI_MAP = 1, /// ?????????????????,??? NET_VIDEOSTAT_CROWD_DISTRI_MAP NET_EM_VS_TYPE_INTELLIG_PARKING = 3, /// ?????????????,??? NET_VIDEOSTAT_SUMMARY_INTELLIPARKING NET_EM_VS_TYPE_HEAD_LIFT_DETECTION = 4, /// ????????????????, ??? NET_VIDEOSTAT_SUMMARY_HEAD_LIFT_DETECTION NET_EM_VS_TYPE_TANK_CAPACITY_DETECTION = 5, /// ??????????????????, ??? NET_VIDEOSTAT_SUMMARY_TANK_CAPACITY_DETECTION }NET_EM_VS_TYPE; ///@brief ???????? typedef enum tagNET_EM_VS_DATA_TYPE { NET_EM_VS_DATA_TYPE_X = 0, /// ??????????????????? }NET_EM_VS_DATA_TYPE; ///@brief ??????????????? typedef struct tagNET_VIDEOSTAT_INSIDESUBTOTAL_INFO { int nPosXs[32]; /// ????????????????????????????????1024???,???????????????[0, 1023] int nPoxXsNum; /// nPoxXs??????????????? BYTE byReserved[988]; /// ??? }NET_VIDEOSTAT_INSIDESUBTOTAL_INFO; ///@brief ???????-??????????? typedef struct tagNET_VIDEOSTAT_SUMMARY_STEREO { NET_TIME_EX UTC; /// ??? int nChannelID; /// ????? int nPtzPresetId; /// ?????? NET_EM_VS_DATA_TYPE emType; /// ???????? NET_VIDEOSTAT_INSIDESUBTOTAL_INFO stuInsideSubtotal; /// ??????????????? BYTE reserved[1024]; /// ??????? } NET_VIDEOSTAT_SUMMARY_STEREO; ///@brief ????????????????? typedef struct tagNET_PEOPLE_REGION_INFO { char szRegionName[128]; /// ???????? UINT nRegionPeopleNum; /// ?????????????????? BYTE reserved[1020]; /// ??????? }NET_PEOPLE_REGION_INFO; ///@brief ????????????????? typedef struct tagNET_VIDEOSTAT_CROWD_DISTRI_MAP { NET_TIME_EX UTC; /// ??? UINT nChannelID; /// ????? UINT nPtzPresetId; /// ?????? UINT nRegionNum; /// ????????? NET_PEOPLE_REGION_INFO stuRegionList[16]; /// ?????????, ????????nRegionNum??????? BYTE reserved[1024]; /// ??????? }NET_VIDEOSTAT_CROWD_DISTRI_MAP; ///@brief ??????????????? typedef enum tagNET_EM_INTELLIPARKING_DATA_TYPE { NET_EM_INTELLIPARKING_DATA_TYPE_PLANAREA = 0, /// ??????????????????ID??????????PlanArea??????? NET_EM_INTELLIPARKING_DATA_TYPE_OPENAREA, /// ???????????????????????OpenArea??????? }NET_EM_INTELLIPARKING_DATA_TYPE; ///@brief ??????????????ID???????? typedef struct tagNET_INTELLIPARKING_PLANAREA_IDINFO { int nID; /// ?????????ID UINT nIsUsed; /// ????ID??????????? BYTE reserved[512]; /// ??????? } NET_INTELLIPARKING_PLANAREA_IDINFO; ///@brief ??????????????????? typedef struct tagNET_INTELLIPARKING_PLANAREA_INFO { int nIDInfoNum; /// ??????????????ID???????????? NET_INTELLIPARKING_PLANAREA_IDINFO stIDInfo[32]; /// ??????????????ID?????????? BYTE reserved[512]; /// ??????? } NET_INTELLIPARKING_PLANAREA_INFO; ///@brief ??????????????????? typedef struct tagNET_INTELLIPARKING_OPENAREA_INFO { int nID; /// ?????????ID int nParkingNum; /// ???????????? BYTE reserved[512]; /// ??????? } NET_INTELLIPARKING_OPENAREA_INFO; ///@brief ???????-????????????? typedef struct tagNET_VIDEOSTAT_SUMMARY_INTELLIPARKING { NET_TIME_EX UTC; /// ??? int nChannelID; /// ????? int nPtzPresetId; /// ?????? NET_EM_INTELLIPARKING_DATA_TYPE emType; /// ???????? NET_INTELLIPARKING_PLANAREA_INFO stPlanArea; /// ???????????????????,??emType?NET_EM_INTELLIPARKING_DATA_TYPE_PLANAREA????? NET_INTELLIPARKING_OPENAREA_INFO stOpenArea; /// ????????????????,??emType?NET_EM_INTELLIPARKING_DATA_TYPE_OPENAREA????? BYTE reserved[1024]; /// ??????? } NET_VIDEOSTAT_SUMMARY_INTELLIPARKING; ///@brief ???????????????? typedef struct tagNET_VIDEOSTAT_SUMMARY_HEAD_LIFT_DETECTION { int nChannelID; /// ????? int nPtzPresetId; /// ?????? NET_TIME_EX UTC; /// ??? UINT nFaceCount; /// ??????????? UINT nHumanCount; /// ??????????? char szReserved[1024]; /// ??????? } NET_VIDEOSTAT_SUMMARY_HEAD_LIFT_DETECTION; ///@brief ?????????????????? typedef struct tagNET_VIDEOSTAT_SUMMARY_TANK_CAPACITY_DETECTION { int nChannelID; /// ????? EM_TANK_STATUS emTankStatus; /// ??????? NET_TIME_EX stuUTC; /// ??? UINT nCurrentRatio; /// ??????????????? char szReserved[1024]; /// ??????? } NET_VIDEOSTAT_SUMMARY_TANK_CAPACITY_DETECTION; ///@brief ???????-?????????????????????lAttachHandle ?? CLIENT_AttachVideoStatistics????? typedef void (CALLBACK *fVideoStatisticsInfoCallBack) (LLONG lAttachHandle, NET_EM_VS_TYPE emType, void* pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief CLIENT_AttachVideoStatistics ??????? typedef struct tagNET_IN_ATTACH_VIDEO_STATISTICS { DWORD dwSize; /// ??????? int nChannelID; /// ????? fVideoStatisticsInfoCallBack cbCallBack; /// ?????????? LDWORD dwUser; /// ??????? NET_EM_VS_TYPE emType; /// ??????? }NET_IN_ATTACH_VIDEO_STATISTICS; ///@brief CLIENT_AttachVideoStatistics ??????? typedef struct tagNET_OUT_ATTACH_VIDEO_STATISTICS { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_VIDEO_STATISTICS; ///@brief ???????????? typedef struct tagNET_ACTIVITY_ANALYSE_DATA { BYTE byVersion; /// ????? BYTE byChannelID; /// ????? BYTE byPtzPresetID; /// ???? BYTE byReserved; /// ??? DWORD dwNumOfBranches; /// ???????????????????? DWORD dwDatas[MAX_ACTIVITY_ANALYSE_GROUP]; /// ???????????????, BYTE byReserved1[1024]; /// ?????? }NET_ACTIVITY_ANALYSE_DATA; ///@brief ??????????????? typedef struct tagNET_VIDEOSTAT_DATA_INFO { int nType; /// 0:?????????????? int nPartitionNum; /// ?????????????????????128 BYTE byReserved[1024]; /// ?????? }NET_VIDEOSTAT_DATA_INFO; ///@brief ???????????????? typedef struct tagNET_GET_VIDEO_STATISTICS_DATA_CONDITION { int nChannelID; /// ????? int nPtzPresetId; /// ?????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? NET_VIDEOSTAT_DATA_INFO stuVideoStatDataInfo; /// ?????????? }NET_GET_VIDEO_STATISTICS_DATA_CONDITION; ///@brief CLIENT_GetVideoStatisticsData ??????? typedef struct tagNET_IN_GET_VIDEO_STATISTICS_DATA { DWORD dwSize; /// ??????? NET_GET_VIDEO_STATISTICS_DATA_CONDITION stuCondition; /// ??????? }NET_IN_GET_VIDEO_STATISTICS_DATA; ///@brief CLIENT_GetVideoStatisticsData ??????? typedef struct tagNET_OUT_GET_VIDEO_STATISTICS_DATA { DWORD dwSize; /// ??????? NET_ACTIVITY_ANALYSE_DATA stuData; /// ???????? }NET_OUT_GET_VIDEO_STATISTICS_DATA; ///@brief ??????????????? typedef struct tagNET_GET_HEAD_LIFT_DATA_CONDITION { int nChannelID; /// ????? int nPtzPresetId; /// ?????? char szReserved[1024]; /// ??????? }NET_GET_HEAD_LIFT_DATA_CONDITION; ///@brief CLIENT_GetVideoStatisticsHeadLiftData ??????? typedef struct tagNET_IN_GET_VIDEO_STATISTICS_HEAD_LIFT_DATA { DWORD dwSize; /// ??????? NET_GET_HEAD_LIFT_DATA_CONDITION stuCondition; /// ??????? }NET_IN_GET_VIDEO_STATISTICS_HEAD_LIFT_DATA; ///@brief CLIENT_GetVideoStatisticsHeadLiftData ??????? typedef struct tagNET_OUT_GET_VIDEO_STATISTICS_HEAD_LIFT_DATA { DWORD dwSize; /// ??????? UINT nFaceCount; /// ??????????? UINT nHumanCount; /// ??????????? }NET_OUT_GET_VIDEO_STATISTICS_HEAD_LIFT_DATA; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachVideoStatistics(LLONG lLoginID, const NET_IN_ATTACH_VIDEO_STATISTICS* pstInParam, NET_OUT_ATTACH_VIDEO_STATISTICS* pstOutParam, int nWaitTime); ///@brief ?????????????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachVideoStatistics(LLONG lAttachHandle); ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoStatisticsData(LLONG lLoginID, const NET_IN_GET_VIDEO_STATISTICS_DATA* pstInParam, NET_OUT_GET_VIDEO_STATISTICS_DATA* pstOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoStatisticsHeadLiftData(LLONG lLoginID, const NET_IN_GET_VIDEO_STATISTICS_HEAD_LIFT_DATA* pstuInParam, NET_OUT_GET_VIDEO_STATISTICS_HEAD_LIFT_DATA* pstuOutParam, int nWaitTime); //////////////////////////////???????????? end////////////////////////////// #define NET_CFG_MAX_CTRLTYPE_NUM 16 /// ??????????? #define NET_MAX_ALL_SNAP_CAR_COUNT 32 /// ???????????????? ///@brief ???????????? typedef enum tagNET_EM_CFG_TRAFFICSTROBE_CTRTYPE { NET_EM_CFG_CTRTYPE_UNKNOWN = 0, /// ?????? NET_EM_CFG_CTRTYPE_TRAFFICTRUSTLIST, /// ????????????????????????????????????????? NET_EM_CFG_CTRTYPE_ALLSNAPCAR, /// ?????????????????? NET_EM_CFG_CTRTYPE_ORDER, /// ????????????????? } NET_EM_CFG_TRAFFICSTROBE_CTRTYPE; ///@brief ????????????? typedef enum tagNET_EM_CFG_ALL_SNAP_CAR { NET_EM_CFG_ALL_SNAP_CAR_UNKNOWN, /// ?????????? NET_EM_CFG_ALL_SNAP_CAR_PLATE, /// ????????????? NET_EM_CFG_ALL_SNAP_CAR_NOPLATE, /// ????????????? }NET_EM_CFG_ALL_SNAP_CAR; ///@brief ??????????? typedef struct tagNET_CFG_STATIONARY_OPEN { BOOL bEnable; /// ??? NET_CFG_TIME_SCHEDULE stTimeShecule; /// ????????????? }NET_CFG_STATIONARY_OPEN; ///@brief ??????????(??? NET_EM_CFG_TRAFFICSTROBE ????) typedef struct tagNET_CFG_TRAFFICSTROBE_INFO { DWORD dwSize; /// ??????? BOOL bEnable; /// ??? int nCtrlTypeCount; /// ????????????? NET_EM_CFG_TRAFFICSTROBE_CTRTYPE emCtrlType[NET_CFG_MAX_CTRLTYPE_NUM]; /// ????????? int nAllSnapCarCount; /// ???????????????? NET_EM_CFG_ALL_SNAP_CAR emAllSnapCar[NET_MAX_ALL_SNAP_CAR_COUNT]; /// ????????????? NET_ALARM_MSG_HANDLE stuEventHandler; /// ??????????????? NET_ALARM_MSG_HANDLE stuEventHandlerClose; /// ????????????? char szOrderIP[DH_MAX_IPADDR_EX_LEN]; /// ?????????????IP NET_EM_CFG_TRAFFICSTROBE_CTRTYPE emCtrlTypeOnDisconnect; /// ??IP?????????????????????????? NET_CFG_STATIONARY_OPEN stuStationaryOpen; /// ??????????? }NET_CFG_TRAFFICSTROBE_INFO; ///@brief CLIENT_DialRecognitionAddTask?????? typedef struct tagNET_IN_DIALRECOGNITION_ADD_TASK { DWORD dwSize; /// ??????? unsigned int nChannel; /// ????? unsigned int nPresetID; /// ????ID,????????IPC,????????0,???????????????? }NET_IN_DIALRECOGNITION_ADD_TASK; ///@brief ?????? typedef enum tagEM_ADD_RESULT { EM_ADD_RESULT_UNKNOWN, /// ??????? EM_ADD_RESULT_SUCCESS, /// ?????? EM_ADD_RESULT_PRESET_ERROR, /// ??????? }EM_ADD_RESULT; ///@brief CLIENT_DialRecognitionAddTask?????? typedef struct tagNET_OUT_DIALRECOGNITION_ADD_TASK { DWORD dwSize; /// ??????? EM_ADD_RESULT emAddResult; /// ?????? char szTaskID[MAX_TASK_ID_LEN]; /// ????ID,?????emAddResult?EM_ADD_RESULT_SUCCESS????? }NET_OUT_DIALRECOGNITION_ADD_TASK; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DialRecognitionAddTask(LLONG lLoginID, const NET_IN_DIALRECOGNITION_ADD_TASK* pInParam, NET_OUT_DIALRECOGNITION_ADD_TASK* pOutParam, int nWaitTime); ///@brief ??????????? typedef enum tagEM_DIAL_RECOGNITION_TASK_TYPE { EM_DIAL_RECOGNITION_TASK_TYPE_UNKNOWN, /// ??? EM_DIAL_RECOGNITION_TASK_TYPE_DIALCHECK, /// ?????? EM_DIAL_RECOGNITION_TASK_TYPE_QRCODECHECK, /// ???????? } EM_DIAL_RECOGNITION_TASK_TYPE; ///@brief CLIENT_DialRecognitionAddTaskEx?????? typedef struct tagNET_IN_DIALRECOGNITION_ADD_TASK_EX { DWORD dwSize; /// ??????? unsigned int nChannel; /// ????? unsigned int nPresetID; /// ????ID,????????IPC,????????0,???????????????? EM_DIAL_RECOGNITION_TASK_TYPE emType; /// ??????????? }NET_IN_DIALRECOGNITION_ADD_TASK_EX; ///@brief CLIENT_DialRecognitionAddTaskEx?????? typedef struct tagNET_OUT_DIALRECOGNITION_ADD_TASK_EX { DWORD dwSize; /// ??????? EM_ADD_RESULT emAddResult; /// ?????? char szTaskID[MAX_TASK_ID_LEN]; /// ????ID,?????emAddResult?EM_ADD_RESULT_SUCCESS????? }NET_OUT_DIALRECOGNITION_ADD_TASK_EX; ///@brief ???????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DialRecognitionAddTaskEx(LLONG lLoginID, const NET_IN_DIALRECOGNITION_ADD_TASK_EX* pInParam, NET_OUT_DIALRECOGNITION_ADD_TASK_EX* pOutParam, int nWaitTime); ///@brief ??????????? typedef enum tagEM_CURRENT_TASK_STATE { EM_CURRENT_TASK_STATE_UNKNWON, /// ??? EM_CURRENT_TASK_STATE_FAILED, /// ????????? EM_CURRENT_TASK_STATE_SUCCEEDED, /// ????????? }EM_CURRENT_TASK_STATE; ///@brief ?????? typedef enum tagEM_ERROR_CODE_TYPE { EM_ERROR_CODE_TYPE_UNKNOWN, /// ??????? EM_ERROR_CODE_TYPE_NORMAL, /// ???? EM_ERROR_CODE_TYPE_GET_PICTURE_ERROR, /// ???????? EM_ERROR_CODE_TYPE_ALGO_ERROR, /// ?????? }EM_ERROR_CODE_TYPE; ///@brief ?????? typedef struct tagNET_NODE_INFO { unsigned int nChannel; /// ???????? unsigned int nPresetID; /// ????ID EM_INSTRUMENT_TYPE emInstrumentType; /// ??????? NET_IMAGE_INFO stuImgaeInfo[MAX_IMAGE_INFO_NUM]; /// ????? int nRetImageInfoNum; /// ?????????????? char szDialResult[MAX_DIAL_RESULT_LEN]; /// ???????????? }NET_NODE_INFO; ///@brief ??????? typedef enum tagEM_NODE_INFO_TYPE { EM_NODE_INFO_TYPE_UNKNOWN, /// ??? EM_NODE_INFO_TYPE_DIAL_RECOGNITION, /// ?????? EM_NODE_INFO_TYPE_ELECTRIC_FAULT_DETECT, /// ?????????? EM_NODE_INFO_TYPE_QRCODE_CHECK, /// ??????? } EM_NODE_INFO_TYPE; ///@brief ?????????? typedef struct tagNET_ELECTRIC_FAULT_DETECT_INFO { EM_CLASS_TYPE emClassType; /// ??????????????? UINT nChannel; /// ???????? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nPresetID; /// ????ID int nEnableRulesNum; /// ????????????????? ELECTRIC_FAULT_ENABLE_RULES emEnableRules[16]; /// ????????????????? int nAirborneDetectNum; /// ??????????????????????? NET_AIRBORNE_DETECT stuAirborneDetectInfo[8]; /// ??????????????????? int nNestDetectNum; /// ?????????? NET_NEST_DETECT stuNestDetectInfo[8]; /// ?????? int nDialDetectNum; /// ???????????? NET_DIAL_DETECT stuDialDetectInfo[8]; /// ???????? int nLeakageDetectNum; /// ???????????? NET_LEAKAGE_DETECT stuLeakageDetectInfo[8]; /// ???????? int nDoorDetectNum; /// ???????????? NET_DOOR_DETECT stuDoorDetectInfo[8]; /// ???????? int nRespiratorDetectNum; /// ???????????? NET_RESPIRATOR_DETECT stuRespiratorDetectInfo[8]; /// ??????????? SCENE_IMAGE_INFO stuSceneImageInfo; /// ??? int nSmokingDetectNum; /// ???????????? NET_SMOKING_DETECT stuSmokingDetectInfo[8]; /// ???????? int nInsulatorDetectNum; /// ????????????? NET_INSULATOR_DETECT stuInsulatorDetectInfo[8]; /// ????????? int nCoverPlateDetectNum; /// ??????????? NET_COVER_PLATE_DETECT stuCoverPlateDetectInfo[8]; /// ??????? int nPressingPlateDetectNum; /// ??????????? NET_PRESSING_PLATE_DETECT stuPressingPlateDetectInfo[8]; /// ??????? BYTE bReserved[1024]; /// ?????? } NET_ELECTRIC_FAULT_DETECT_INFO; ///@brief ?????????? typedef struct tagNET_QRCODE_CHECK_INFO { EM_CLASS_TYPE emClassType; /// ??????????????? UINT nChannel; /// ???????? char szName[DH_EVENT_NAME_LEN]; /// ??????? double PTS; /// ????(?????????) NET_TIME_EX UTC; /// ???????????? int nEventID; /// ???ID UINT nPresetID; /// ????ID BYTE byReserved1[4]; /// ???? char szQRCode[512]; /// ?????????? BYTE byReserved[1024]; /// ?????? } NET_QRCODE_CHECK_INFO; ///@brief ????????? typedef struct tagNET_TASK_STATE { char szTaskID[MAX_TASK_ID_LEN]; /// ????ID EM_CURRENT_TASK_STATE emTaskState; /// ??????????? EM_ERROR_CODE_TYPE emErrorCode; /// ?????? NET_NODE_INFO stuNodeInfo; /// ??????,???????????EM_NODE_INFO_TYPE_DIAL_RECOGNITION, ???????????????pstuNodeInfo????????? /// ??????????????????, ?????????????pstuNodeInfo EM_NODE_INFO_TYPE emNodeInfoType; /// ??????? void* pstuNodeInfo; /// ????????EM_NODE_INFO_TYPE_DIAL_RECOGNITION, ??NET_NODE_INFO /// ????????EM_NODE_INFO_TYPE_ELECTRIC_FAULT_DETECT, ??NET_ELECTRIC_FAULT_DETECT_INFO /// ????????EM_NODE_INFO_TYPE_QRCODE_CHECK, ??NET_QRCODE_CHECK_INFO }NET_TASK_STATE; ///@brief ?????????????????????lAttachHandle ?? CLIENT_AttachDialRecognitionTaskProc ????? typedef void (CALLBACK *fTaskStateCallback) (LLONG lAttachHandle, NET_TASK_STATE* pBuf, BYTE *pBuffer, DWORD dwBufSize, LDWORD dwUser); ///@brief CLIENT_AttachDialRecognitionTaskProc?????? typedef struct tagNET_IN_ATTACH_TASK_PROC { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????????? fTaskStateCallback cbTaskState; /// ???????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_TASK_PROC; ///@brief CLIENT_AttachDialRecognitionTaskProc?????? typedef struct tagNET_OUT_ATTACH_TASK_PROC { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_TASK_PROC; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachDialRecognitionTaskProc(LLONG lLoginID, const NET_IN_ATTACH_TASK_PROC* pInParam, NET_OUT_ATTACH_TASK_PROC* pOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachDialRecognitionTaskProc(LLONG lAttachHandle); ///@brief ?????????????? typedef enum tagEM_LOCAL_CERTIFICATE_TYPE { EM_LOCAL_CERTIFICATE_TYPE_UNKNOWN, /// ??? EM_LOCAL_CERTIFICATE_TYPE_IDENTITY_AUTH_CERT, /// ?????????????????????? EM_LOCAL_CERTIFICATE_TYPE_DATA_AUTH_CERT, /// ?????????????????????????????? }EM_LOCAL_CERTIFICATE_TYPE; ///@brief ??????????????? typedef enum tagEM_NETWORK_TYPE { EM_NETWORK_TYPE_PUBLIC_SECURITY_INFO_NETWORK, /// ????????? EM_NETWORK_TYPE_VIDEO_PRIVATE_NETWORK, /// ?????? }EM_NETWORK_TYPE; ///@brief ?????????? typedef enum tagEM_DIGITAL_CERTIFICATE_TYPE { EM_DIGITAL_CERTIFICATE_TYPE_UNKNOWN, /// ??? EM_DIGITAL_CERTIFICATE_TYPE_GM, /// ???????? EM_DIGITAL_CERTIFICATE_TYPE_GENERAL, /// ??????? EM_DIGITAL_CERTIFICATE_TYPE_MAX, /// ???????,?????????,???????????? }EM_DIGITAL_CERTIFICATE_TYPE; ///@brief CLIENT_GetCertReqInfo?????? typedef struct tagNET_IN_GET_CERT_REQINFO { DWORD dwSize; /// ??????? EM_LOCAL_CERTIFICATE_TYPE emLocalCertType; /// ?????????????? int nForm; /// ?????????????,0???PKCS#10,????0 char szCountry[MAX_COUNTRY_CODE_LEN]; /// ?????????????????? char szProvince[MAX_PROVINCE_CODE_LEN]; /// ?????????????????? char szCity[MAX_CITY_CODE_LEN]; /// ??????????????????? char szArea[MAX_AREA_CODE_LEN]; /// ??????????????????? EM_NETWORK_TYPE emSpecificNetworkType; /// ??????????????? EM_DIGITAL_CERTIFICATE_TYPE emDigitalCertificateType; /// ?????????? char szCommonName[160]; /// ????????? char szOrganization[64]; /// ??????? char szOrganizationUnit[64]; /// ?????? int nPubKeyType; /// ??????????????????, 0:???, 1:RSA2048, 2:SM2 }NET_IN_GET_CERT_REQINFO; ///@brief CLIENT_GetCertReqInfo?????? typedef struct tagNET_OUT_GET_CERT_REQINFO { DWORD dwSize; /// ??????? int nReqInfoLen; /// ?????????????????? char szReqInfo[MAX_REQ_INFO_LEN]; /// ???????????? char szSigInfo[1024]; /// ????????? char szSigAlg[64]; /// ????? char szCACertSN[40]; /// ???SN?? char szIssuer[512]; /// ??????? }NET_OUT_GET_CERT_REQINFO; ///@brief ????????????????????,pstInParam??pstOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCertReqInfo(LLONG lLoginID, NET_IN_GET_CERT_REQINFO *pstInParam, NET_OUT_GET_CERT_REQINFO *pstOutParam, int nWaitTime); ///@brief ??????? typedef enum tagEM_CERT_TYPE { EM_CERT_TYPE_UNKNWON, /// ??? EM_CERT_TYPE_CA_CERT, /// ????CA??? EM_CERT_TYPE_ADMIN_CERT, /// ??????????????IdentityAuthCert EM_CERT_TYPE_IDENTITY_AUTH_CERT, /// ??????????, ?????????? EM_CERT_TYPE_DATA_AUTH_CERT, /// ??????????,?????????????????? EM_CERT_TYPE_REMOTE_IDENTITY_AUTH_CERT, /// ?????????, ??????????(??????????) EM_CERT_TYPE_REMOTE_DATA_AUTH_CERT, /// ?????????,??????????????????(??????????) EM_CERT_TYPE_REMOTE_CRL, /// ???????T?????????? EM_CERT_TYPE_DEF_ROOT_CA_CERT, /// ?????????CA???(???????????) EM_CERT_TYPE_DEF_SUB_CA_CERT, /// ??????????CA???(???????????) EM_CERT_TYPE_DEFAULT, /// ?????????????CA??? EM_CERT_TYPE_SELF_SIGN, /// ???????????? EM_CERT_TYPE_MAX, /// ???????,??????????????EM_CERT_TYPE_MAX??? }EM_CERT_TYPE; ///@brief ?????????????? typedef enum tagEM_CERT_SERVER_NAME { EM_CERT_SERVER_NAME_GENERAL, /// General EM_CERT_SERVER_NAME_802_1X, /// 802.1x EM_CERT_SERVER_NAME_HTTPS, /// HTTP over ssl/tls EM_CERT_SERVER_NAME_MAX, /// ???????,??????????????EM_SERVER_NAME_MAX????? }EM_CERT_SERVER_NAME; ///@brief CLIENT_ImportCert ?????? typedef struct tagNET_IN_IMPORT_CERT { DWORD dwSize; /// ??????? EM_CERT_TYPE emCertType; /// ??????? char* pszCert; /// ???????,????????????,?????nCertLen int nCertLen; /// ?????????????,???????5300????? BOOL bActiveCert; /// ????????????,??emDigitalCertificateType?EM_DIGITAL_CERTIFICATE_TYPE_GENERAL????? char szUserName[64]; /// ????????,??emCertType?EM_CERT_TYPE_ADMIN_CERT????? EM_DIGITAL_CERTIFICATE_TYPE emDigitalCertificateType; /// ?????????? int nKeyLen; /// ???????????????????,???????8192????? char* pszKey; /// ???????????,????????????,?????nKeyLen,??emDigitalCertificateType?EM_DIGITAL_CERTIFICATE_TYPE_GENERAL????? char szKeyPassword[64]; /// ?????????????,??emDigitalCertificateType?EM_DIGITAL_CERTIFICATE_TYPE_GENERAL????? int nKeyPasswordLen; /// ????????????????????? EM_CERT_SERVER_NAME emServerNames[8]; /// ??????????????,??emDigitalCertificateType?EM_DIGITAL_CERTIFICATE_TYPE_GENERAL????? /// General???????????,??????????General,??nServerNameNum?1,emServerNames[0]=EM_CERT_SERVER_NAME_GENERAL int nServerNameNum; /// ?????????????????????? }NET_IN_IMPORT_CERT; ///@brief ??????????? typedef struct tagNET_SUPPORT_CERT_LIST_INFO { EM_CERT_TYPE emCertType; /// ??????? NET_TIME stuEffectiveDate; /// ??????????? NET_TIME stuExpirationDate; /// ?????????? char szCertSN[40]; /// ????????? char szDeviceIdentifier[160]; /// ?????? char szRealCertSN[80]; /// ???????????? int nPubKeyType; /// ??????????????????, 0:???, 1:RSA2048, 2:SM2 int nCertUse; /// ??????????(??nPubKeyType?2?????), 0: ??????, 1: ???, 2: ???? BYTE byReserved[936]; /// ?????? }NET_SUPPORT_CERT_LIST_INFO; ///@brief CLIENT_ImportCert ?????? typedef struct tagNET_OUT_IMPORT_CERT { DWORD dwSize; /// ??????? int nRetSupportCertListNum; /// ????????????????? NET_SUPPORT_CERT_LIST_INFO stuSupportCertList[8]; /// ??????????? }NET_OUT_IMPORT_CERT; ///@brief ???????????????????,pstInParam??pstOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ImportCert(LLONG lLoginID, NET_IN_IMPORT_CERT *pstInParam, NET_OUT_IMPORT_CERT *pstOutParam, int nWaitTime); ///@brief CLIENT_ImportCRL?????? typedef struct tagNET_IN_IMPORT_CRL { DWORD dwSize; /// ??????? int nCRLLen; /// CRL??????????????????????5300????? char* pszCRL; /// CRL????,????????????,?????nCRLLen EM_DIGITAL_CERTIFICATE_TYPE emDigitalCertificateType; /// ?????????? BYTE byReserved[4]; /// ?????????? }NET_IN_IMPORT_CRL; ///@brief CLIENT_ImportCRL?????? typedef struct tagNET_OUT_IMPORT_CRL { DWORD dwSize; /// ??????? }NET_OUT_IMPORT_CRL; ///@brief ??????????????????????,pstInParam??pstOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ImportCRL(LLONG lLoginID, NET_IN_IMPORT_CRL *pstInParam, NET_OUT_IMPORT_CRL *pstOutParam, int nWaitTime); ///@brief ???????? typedef enum tagEM_PROTOCOL_NAME { EM_PROTOCOL_NAME_UNKNOWN, /// ??? EM_PROTOCOL_NAME_GB28181, /// Gb28181 EM_PROTOCOL_NAME_MAX, /// ???? }EM_PROTOCOL_NAME; ///@brief CLIENT_IntervideoManagerGetVersion?????? typedef struct tagNET_IN_GET_VERSION { DWORD dwSize; /// ??????? EM_PROTOCOL_NAME emProtocolName; /// ???????? }NET_IN_GET_VERSION; ///@brief CLIENT_IntervideoManagerGetVersion?????? typedef struct tagNET_OUT_GET_VERSION { DWORD dwSize; /// ??????? char szGB28181Version[MAX_GB28181_PROTOCOL_VERSION]; /// GB28181?????? }NET_OUT_GET_VERSION; ///@brief ?????????,pstInParam??pstOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IntervideoManagerGetVersion(LLONG lLoginID, NET_IN_GET_VERSION *pstInParam, NET_OUT_GET_VERSION *pstOutParam, int nWaitTime); ///@brief CLIENT_NASFileSetUserAuthInfo?????? typedef struct tagNET_IN_SET_USER_AUTH_INFO { DWORD dwSize; /// ??????? char szPassword[DH_COMMON_STRING_128]; /// ???? char szPasswordHint[DH_COMMON_STRING_128]; /// ??????????? char szPhoneNo[DH_COMMON_STRING_32]; /// ?????,??? char szEmail[DH_COMMON_STRING_128]; /// ????,??? }NET_IN_SET_USER_AUTH_INFO; ///@brief CLIENT_NASFileSetUserAuthInfo?????? typedef struct tagNET_OUT_SET_USER_AUTH_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_USER_AUTH_INFO; ///@brief ?????????????,pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NASFileSetUserAuthInfo(LLONG lLoginID, const NET_IN_SET_USER_AUTH_INFO* pInParam, NET_OUT_SET_USER_AUTH_INFO* pOutParam, int nWaitTime); ///@brief CLIENT_NASFileModifyPassword?????? typedef struct tagNET_IN_MODIFY_PASSWORD { DWORD dwSize; /// ??????? char szOldPassword[DH_COMMON_STRING_128]; /// ?????? char szNewPassword[DH_COMMON_STRING_128]; /// ?????? char szPasswordHint[DH_COMMON_STRING_128]; /// ??????????? }NET_IN_MODIFY_PASSWORD; ///@brief CLIENT_NASFileModifyPassword?????? typedef struct tagNET_OUT_MODIFY_PASSWORD { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_PASSWORD; ///@brief ?????????????,pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NASFileModifyPassword(LLONG lLoginID, const NET_IN_MODIFY_PASSWORD* pInParam, NET_OUT_MODIFY_PASSWORD* pOutParam, int nWaitTime); ///@brief CLIENT_NASFileAuthenticate?????? typedef struct tagNET_IN_AUTHENTICATE { DWORD dwSize; /// ??????? char szPassword[DH_COMMON_STRING_128]; /// ??????? }NET_IN_AUTHENTICATE; ///@brief CLIENT_NASFileAuthenticate?????? typedef struct tagNET_OUT_AUTHENTICATE { DWORD dwSize; /// ??????? }NET_OUT_AUTHENTICATE; ///@brief ?????????,pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_NASFileAuthenticate(LLONG lLoginID, const NET_IN_AUTHENTICATE* pInParam, NET_OUT_AUTHENTICATE* pOutParam, int nWaitTime); ///@brief ?????????? typedef enum tagEM_EXMODULE_TYPE { EM_EXMODULE_TYPE_UNKNOWN, ///??? EM_EXMODULE_TYPE_M_BUS, ///M-BUS EM_EXMODULE_TYPE_RS_485, ///RS-485 }EM_EXMODULE_TYPE; ///@brief CLIENT_GetExModuleInfo??????(??????NET_EM_GET_EXMODULE_INFO_DETAIL) typedef struct tagNET_IN_GETEXMODULEDETAIL { DWORD dwSize; ///??????? EM_EXMODULE_TYPE emType; ///?????????? int nAddr; ///???????? }NET_IN_GETEXMODULEDETAIL; ///@brief CLIENT_GetExModuleInfo??????(??????NET_EM_GET_EXMODULE_INFO_DETAIL) typedef struct tagNET_OUT_GETEXMODULEDETAIL { DWORD dwSize; ///??????? int nAlarmInChannelCount; ///????????????????? int alarmInChannels[16]; ///?????????????????????l????????????????????????-1 int nAlarmOutChannelCount; ///???????????????? int alarmOutChannels[16]; ///?????????????????????l????????????????????????-1 }NET_OUT_GETEXMODULEDETAIL; ///@brief ?????????? typedef enum tagNET_EM_GET_EXMODULE_INFO { NET_EM_GET_EXMODULE_INFO_UNKNOWN, ///??? NET_EM_GET_EXMODULE_INFO_DETAIL, ///??????????????????????NET_IN_GETEXMODULEDETAIL??????NET_OUT_GETEXMODULEDETAIL?? NET_EM_GET_EXMODULE_INFO_STATE, ///??????????????????NET_IN_EXMODULE_INFO??????NET_OUT_EXMODULE_INFO_ALL?? }NET_EM_GET_EXMODULE_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pstuInParam ??????????, ???????????????????,????????emType???????? ///@param[out] pstuOutParam ??????????, ???????????????????,????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetExModuleInfo(LLONG lLoginID, NET_EM_GET_EXMODULE_INFO emType,const void *pstuInParam, void *pstuOutParam, int nWaitTime); ///@brief CLIENT_GetNationInfo ??? typedef struct tagNET_IN_GET_NATIONINFO { DWORD dwSize; /// ??????? }NET_IN_GET_NATIONINFO; #define NET_COUNTRYZONE_LENGTH 64 /// ????/??????????? #define NET_COUNTRYABBR_LENGTH 4 /// ????/?????????? #define NET_LANGUAGE_LENGTH 12 /// ?????????? #define NET_TIMEZONE_LENGTH 80 /// ??????????????? ///@brief ????/?????????? typedef struct tagNET_NATION_INFO{ char szCountry[NET_COUNTRYZONE_LENGTH]; /// ????/????????,????ISO3166??? char szAbbreviation[NET_COUNTRYABBR_LENGTH]; /// ????/???????,????ISO3166??? char szLanguage[NET_LANGUAGE_LENGTH]; /// ???????, ??????????????????szLanguageEx EM_VIDEO_STANDARD emVideoStandard; /// ????????? char szTimeZoneDesc[NET_TIMEZONE_LENGTH]; /// ??????????? char szLanguageEx[32]; /// ?????????? BYTE byReserved[96]; /// ??????? }NET_NATION_INFO; ///@brief CLIENT_GetNationInfo ???? typedef struct tagNET_OUT_GET_NATIONINFO { DWORD dwSize; /// ??????? int nNationInfoCnt; /// ???????? NET_NATION_INFO arrNationInfo[300]; /// ????/??????????????????? }NET_OUT_GET_NATIONINFO; ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNationInfo(LLONG lLoginID, NET_IN_GET_NATIONINFO* pInParam, NET_OUT_GET_NATIONINFO* pOutParam, int waittime); ///@brief CLIENT_GetLanguageList ??? typedef struct tagNET_IN_GET_LANGUAGELIST { DWORD dwSize; /// ??????? }NET_IN_GET_LANGUAGELIST; #define NET_LANGUAGELIST_LENGTH 12 /// ????????????? ///@brief CLIENT_GetLanguageList ???? typedef struct tagNET_OUT_GET_LANGUAGELIST { DWORD dwSize; /// ??????? int nLangueListCnt; /// ?????????????,????????????????nLangueListCntEx char arrLanguageList[50][NET_LANGUAGELIST_LENGTH]; /// ???????????????????????????????arrLanguageListEx int nLangueListCntEx; /// ???????????????? char arrLanguageListEx[50][24]; /// ??????????? }NET_OUT_GET_LANGUAGELIST; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] waittime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetLanguageList(LLONG lLoginID, NET_IN_GET_LANGUAGELIST* pInParam, NET_OUT_GET_LANGUAGELIST* pOutParam, int waittime); #define MAX_SCENEID_LEN 32 ///????ID???? ///@brief CLIENT_ConfirmSceneChangeResult ??????? typedef struct tagNET_IN_CONFIRMSCENECHANGERESULT_INFO { DWORD dwSize; /// ??????? char szSceneID[MAX_SCENEID_LEN]; /// ????ID BOOL bResult; /// ???????: TRUE?????? FALSE?????? }NET_IN_CONFIRMSCENECHANGERESULT_INFO; ///@brief CLIENT_ConfirmSceneChangeResult ??????? typedef struct tagNET_OUT_CONFIRMSCENECHANGERESULT_INFO { DWORD dwSize; /// ??????? }NET_OUT_CONFIRMSCENECHANGERESULT_INFO; ///@brief ??????????????????? pstuInParam??pstuOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ConfirmSceneChangeResult(LLONG lLoginID, const NET_IN_CONFIRMSCENECHANGERESULT_INFO *pstuInParam, NET_OUT_CONFIRMSCENECHANGERESULT_INFO *pstuOutParam, int nWaitTime); ///@brief CLIENT_ConfirmAuthorizedResult ??????? typedef struct tagNET_IN_CONFIRM_AUTHORIZED_RESULT { DWORD dwSize; /// ??????? int nResult; /// 0:????????????????0:?????? /// 0x01: ???????????????????????/?????????????????????? /// 0x02: APP???????????????? char* pszQRCode; /// ??????????base64???? BOOL bIsTest; /// ??????????????????; TRUE:????????????????, FALSE:???????????????? UINT nTimeout; /// ????????????, ????????, ??????????????????? UINT nExpiryTime; /// ??????????, ????????, ??????????????????? }NET_IN_CONFIRM_AUTHORIZED_RESULT; ///@brief CLIENT_ConfirmAuthorizedResult ??????? typedef struct tagNET_OUT_CONFIRM_AUTHORIZED_RESULT { DWORD dwSize; /// ??????? }NET_OUT_CONFIRM_AUTHORIZED_RESULT; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ConfirmAuthorizedResult(LLONG lLoginID, const NET_IN_CONFIRM_AUTHORIZED_RESULT* pstInParam, NET_OUT_CONFIRM_AUTHORIZED_RESULT* pstOutParam, int nWaitTime); ///@brief CLIENT_GetSensorCollectSupportList?????? typedef struct tagNET_IN_GET_SENSOR_COLLECT_SUPPORT_LIST { DWORD dwSize; /// ??????? } NET_IN_GET_SENSOR_COLLECT_SUPPORT_LIST; ///@brief ????????????? typedef enum tagEM_SENSOR_MEDIA_TYPE { EM_SENSOR_MEDIA_TYPE_UNKNOWN, /// ??? EM_SENSOR_MEDIA_TYPE_COAXIAL, /// ???????????? EM_SENSOR_MEDIA_TYPE_433, /// ???433?????????? } EM_SENSOR_MEDIA_TYPE; ///@brief ????????????? typedef enum tagEM_WIRELESS_SENSOR_TYPE { EM_WIRELESS_SENSOR_TYPE_UNKNOWN, /// ??????? EM_WIRELESS_SENSOR_TYPE_HUMIDITY_SENSOR, /// ???????? EM_WIRELESS_SENSOR_TYPE_TEMP_SENSOR, /// ???????? EM_WIRELESS_SENSOR_TYPE_DOOR_MAGNETISM, /// ???????? EM_WIRELESS_SENSOR_TYPE_URGENCY_BUTTON, /// ??????? EM_WIRELESS_SENSOR_TYPE_PASSIVE_INFRARED, /// ???????? EM_WIRELESS_SENSOR_TYPE_CURTAIN_SENSOR, /// ??? EM_WIRELESS_SENSOR_TYPE_WATER_SENSOR, /// ??????? EM_WIRELESS_SENSOR_TYPE_SMOKING_SENSOR, /// ???????? EM_WIRELESS_SENSOR_TYPE_COAXIAL_EXTALARM, /// ????????? } EM_WIRELESS_SENSOR_TYPE; ///@brief ??????ID??? typedef struct tagNET_SENSOR_ID_INFO { EM_SENSOR_MEDIA_TYPE emMediaType; /// ????????????? DWORD nAPIndex; /// ???????? DWORD nAlarmChannel; /// ????????? NET_WIRELESS_DEVICE_TYPE emDeviceType; /// ??????????? EM_WIRELESS_SENSOR_TYPE emSensorType; /// ?????????? BYTE byReserved[128]; /// ??????? } NET_SENSOR_ID_INFO; /// ??????ID?????????? #define MAX_SENSOR_ID_COUNT 256 ///@brief CLIENT_GetSensorCollectSupportList?????? typedef struct tagNET_OUT_GET_SENSOR_COLLECT_SUPPORT_LIST { DWORD dwSize; /// ??????? int nCount; /// ??????ID???? NET_SENSOR_ID_INFO stInfo[MAX_SENSOR_ID_COUNT];/// ??????ID???? } NET_OUT_GET_SENSOR_COLLECT_SUPPORT_LIST; ///@brief ??????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSensorCollectSupportList(LLONG lLoginID, const NET_IN_GET_SENSOR_COLLECT_SUPPORT_LIST* pInParam, NET_OUT_GET_SENSOR_COLLECT_SUPPORT_LIST* pOutParam, int nWaitTime); ///@brief CLIENT_ControlDevice???? DH_CTRL_START_REMOTELOWRATEWPAN_ALARMBELL??????? typedef struct tagNET_IN_START_REMOTELOWRATEWPAN_ALARMBELL { DWORD dwSize; /// ??????? int nChannelID; /// ????????(-1???????) } NET_IN_START_REMOTELOWRATEWPAN_ALARMBELL; ///@brief CLIENT_ControlDevice???? DH_CTRL_START_REMOTELOWRATEWPAN_ALARMBELL??????? typedef struct tagNET_OUT_START_REMOTELOWRATEWPAN_ALARMBELL { DWORD dwSize; /// ??????? } NET_OUT_START_REMOTELOWRATEWPAN_ALARMBELL; ///@brief CLIENT_ControlDevice???? DH_CTRL_STOP_REMOTELOWRATEWPAN_ALARMBELL??????? typedef struct tagNET_IN_STOP_REMOTELOWRATEWPAN_ALARMBELL { DWORD dwSize; /// ??????? int nChannelID; /// ????????(-1???????) } NET_IN_STOP_REMOTELOWRATEWPAN_ALARMBELL; ///@brief CLIENT_ControlDevice???? DH_CTRL_STOP_REMOTELOWRATEWPAN_ALARMBELL??????? typedef struct tagNET_OUT_STOP_REMOTELOWRATEWPAN_ALARMBELL { DWORD dwSize; /// ??????? } NET_OUT_STOP_REMOTELOWRATEWPAN_ALARMBELL; ///@brief ???????? typedef enum tagEM_CALL_STATUS { EM_CALL_STATUS_UNKNOWN, EM_CALL_STATUS_TRYING, /// ????????????????? EM_CALL_STATUS_RINGING, /// ?????????????????? EM_CALL_STATUS_PREPARECONNECTED, /// ???????????? EM_CALL_STATUS_CONNECTED, /// ???????????????? EM_CALL_STATUS_CALLED, /// ??????????? EM_CALL_STATUS_PREPARELEAVINGMESSAGE, /// ?????????????? EM_CALL_STATUS_LEAVINGMESSAGECONNECTED, /// ????????????? EM_CALL_STATUS_CALLEND, /// ??????????? EM_CALL_STATUS_CALLTRANSFER, /// ??????????????? EM_CALL_STATUS_CALLTRANSFERCONNECTED, /// ????????? EM_CALL_STATUS_HELD, /// ???????? EM_CALL_STATUS_RESUME, /// ??????? EM_CALL_STATUS_DND, /// ????? EM_CALL_STATUS_REMOTESDPCHANGE, /// ???SDP??? EM_CALL_STATUS_REFUSE, /// ??? }EM_CALL_STATUS; ///@brief CLIENT_ControlDeviceEx???? DH_CTRL_SET_THIRD_CALLSTATUS ?????????? typedef struct tagNET_IN_VTP_THIRDCALL_STATUS { DWORD dwSize; EM_CALL_STATUS emCallStatus; /// ???????? }NET_IN_VTP_THIRDCALL_STATUS; ///@brief CLIENT_ControlDeviceEx???? DH_CTRL_SET_THIRD_CALLSTATUS ??????????? typedef struct tagNET_OUT_VTP_THIRDCALL_STATUS { DWORD dwSize; char szCallID[64]; /// ???id }NET_OUT_VTP_THIRDCALL_STATUS; ///@brief CLIENT_ControlDeviceEx???? DH_CTRL_ACCESS_CLEAR_STATUS ?????????? typedef struct tagNET_IN_ACCESS_CLEAR_STATUS { DWORD dwSize; }NET_IN_ACCESS_CLEAR_STATUS; ///@brief CLIENT_ControlDeviceEx???? DH_CTRL_ACCESS_CLEAR_STATUS ??????????? typedef struct tagNET_OUT_ACCESS_CLEAR_STATUS { DWORD dwSize; BOOL bClearResult; /// ???????????? }NET_OUT_ACCESS_CLEAR_STATUS; ///@brief ?????? typedef enum tagEM_ACCESS_DEAL_RECORD_STATUS { EM_ACCESS_DEAL_RECORD_STATUS_NO, /// ???? EM_ACCESS_DEAL_RECORD_STATUS_ENTRY, /// ???? EM_ACCESS_DEAL_RECORD_STATUS_EXIT, /// ???? }EM_ACCESS_DEAL_RECORD_STATUS; ///@brief CLIENT_ControlDeviceEx???? DH_CTRL_ACCESS_DEAL_RECORD ?????????? typedef struct tagNET_IN_ACCESS_DEAL_RECORD { DWORD dwSize; char szUserID[32]; /// ???ID int nType; /// 0-???, 1-???? EM_ACCESS_DEAL_RECORD_STATUS emStatus; /// ?????? }NET_IN_ACCESS_DEAL_RECORD; ///@brief CLIENT_ControlDeviceEx???? DH_CTRL_ACCESS_DEAL_RECORD ??????????? typedef struct tagNET_OUT_ACCESS_DEAL_RECORD { DWORD dwSize; BOOL bDealResult; /// ??????? EM_ACCESS_DEAL_RECORD_STATUS emStatus; /// ????? }NET_OUT_ACCESS_DEAL_RECORD; ///@brief ????????????? typedef struct tagNET_PROXY_SERVER_INFO { char szIP[DH_MAX_IPADDR_LEN_EX]; /// IP??? UINT nPort; /// ??? BYTE byReserved[84]; } NET_PROXY_SERVER_INFO ; ///@brief CLIENT_CheckCloudUpgrader ??? typedef struct tagNET_IN_CHECK_CLOUD_UPGRADER { DWORD dwSize; /// ??????? UINT nWay; /// ???????, 0-????????????????, 1-????????????????, 2-???????????? NET_PROXY_SERVER_INFO stProxy; /// ?????????????, way==1??????? } NET_IN_CHECK_CLOUD_UPGRADER; ///@brief ???????? typedef enum tagEM_CLOUD_UPGRADER_CHECK_STATE { EM_CLOUD_UPGRADER_CHECK_STATE_UNKNOWN, /// ??? EM_CLOUD_UPGRADER_CHECK_STATE_NONE, /// ?????????? EM_CLOUD_UPGRADER_CHECK_STATE_REGULAR, /// ??????? (?????????, ????????) EM_CLOUD_UPGRADER_CHECK_STATE_EMERGENCY, /// ??????? (????????????, ?????????) EM_CLOUD_UPGRADER_CHECK_STATE_AUTOMATIC, /// ??????? (??????????, ???????, ??????????????????) } EM_CLOUD_UPGRADER_CHECK_STATE; ///@brief ???????????????????? typedef enum tagEM_CLOUD_UPGRADER_PACKAGE_TYPE { EM_CLOUD_UPGRADER_PACKAGE_TYPE_UNKNOWN, /// ??? EM_CLOUD_UPGRADER_PACKAGE_TYPE_ALL, /// ???? EM_CLOUD_UPGRADER_PACKAGE_TYPE_PTZ, /// ???????? EM_CLOUD_UPGRADER_PACKAGE_TYPE_WEB, /// Web EM_CLOUD_UPGRADER_PACKAGE_TYPE_LOGO, /// Logo EM_CLOUD_UPGRADER_PACKAGE_TYPE_CUSTOM, /// Custom EM_CLOUD_UPGRADER_PACKAGE_TYPE_GUI, /// Gui EM_CLOUD_UPGRADER_PACKAGE_TYPE_PD, /// PD EM_CLOUD_UPGRADER_PACKAGE_TYPE_DATA, /// Data EM_CLOUD_UPGRADER_PACKAGE_TYPE_PTZ_POWER, /// ?????? EM_CLOUD_UPGRADER_PACKAGE_TYPE_PTZ_LIGHT, /// ?????? EM_CLOUD_UPGRADER_PACKAGE_TYPE_PTZ_HEATER, /// ????????? } EM_CLOUD_UPGRADER_PACKAGE_TYPE; ///@brief CLIENT_CheckCloudUpgrader ???? typedef struct tagNET_OUT_CHECK_CLOUD_UPGRADER { DWORD dwSize; /// ??????? EM_CLOUD_UPGRADER_CHECK_STATE emState; /// ?????? EM_CLOUD_UPGRADER_PACKAGE_TYPE emPackageType; /// ??????????????, State???None??????? char szOldVersion[MAX_COMMON_STRING_64]; /// ??????, State???None??????? char szNewVersion[MAX_COMMON_STRING_64]; /// ??????,State???None??????? char szAttention[MAX_COMMON_STRING_2048]; /// ????????????????? char szPackageURL[MAX_COMMON_STRING_256]; /// ????????????(???????????) char szPackageID[MAX_COMMON_STRING_64]; /// ??????ID char szCheckSum[MAX_COMMON_STRING_64]; /// ????????SHA-256????? char szBuildTime[MAX_COMMON_STRING_32]; /// ????????????? } NET_OUT_CHECK_CLOUD_UPGRADER; ///@brief ??????????????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CheckCloudUpgrader(LLONG lLoginID, const NET_IN_CHECK_CLOUD_UPGRADER* pInParam, NET_OUT_CHECK_CLOUD_UPGRADER* pOutParam, int nWaitTime); ///@brief ????????? typedef struct tagNET_CLOUD_UPGRADER_INFO { char szPackageURL[MAX_COMMON_STRING_256]; /// ????????????(???????????) char szPackageID[MAX_COMMON_STRING_64]; /// ??????ID char szCheckSum[MAX_COMMON_STRING_64]; /// ????????SHA-256????? BYTE byReserved[1024]; /// ??????? } NET_CLOUD_UPGRADER_INFO; ///@brief CLIENT_ExecuteCloudUpgrader ??? typedef struct tagNET_IN_EXECUTE_CLOUD_UPGRADER { DWORD dwSize; /// ??????? char szNewVersion[MAX_COMMON_STRING_64]; /// ?????check??????????? UINT nWay; /// ???????, 0-????????????????, 1-???????????????? NET_PROXY_SERVER_INFO stProxy; /// ?????????????, nWay==1??????? NET_CLOUD_UPGRADER_INFO stInfo; /// ????????? } NET_IN_EXECUTE_CLOUD_UPGRADER; ///@brief CLIENT_ExecuteCloudUpgrader ???? typedef struct tagNET_OUT_EXECUTE_CLOUD_UPGRADER { DWORD dwSize; /// ??????? } NET_OUT_EXECUTE_CLOUD_UPGRADER; ///@brief ?????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ExecuteCloudUpgrader(LLONG lLoginID, const NET_IN_EXECUTE_CLOUD_UPGRADER* pInParam, NET_OUT_EXECUTE_CLOUD_UPGRADER* pOutParam, int nWaitTime); ///@brief CLIENT_GetCloudUpgraderState ??? typedef struct tagNET_IN_GET_CLOUD_UPGRADER_STATE { DWORD dwSize; /// ??????? } NET_IN_GET_CLOUD_UPGRADER_STATE; ///@brief ?????????? typedef enum tagEM_CLOUD_UPGRADER_STATE { EM_CLOUD_UPGRADER_STATE_UNKNOWN, /// ??? EM_CLOUD_UPGRADER_STATE_NOUPGRADE, /// "Noupgrade"-?????????? EM_CLOUD_UPGRADER_STATE_PREPARING, /// "Preparing"-??????? EM_CLOUD_UPGRADER_STATE_DOWNLOADING, /// "Downloading"-???????????? EM_CLOUD_UPGRADER_STATE_DOWNLOADFAILED, /// "DownloadFailed"-??????? EM_CLOUD_UPGRADER_STATE_UPGRADING, /// "Upgrading"-???????? EM_CLOUD_UPGRADER_STATE_INVALID, /// "Invalid"-??????????? EM_CLOUD_UPGRADER_STATE_FAILED, /// "Failed"-??????????Flash??? EM_CLOUD_UPGRADER_STATE_SUCCEEDED, /// "Succeeded"-??????????Flash??? } EM_CLOUD_UPGRADER_STATE; ///@brief CLIENT_GetCloudUpgraderState ???? typedef struct tagNET_OUT_GET_CLOUD_UPGRADER_STATE { DWORD dwSize; /// ??????? EM_CLOUD_UPGRADER_STATE emState; /// ?????? UINT nProgress; /// ????????, ????Downloading/Upgrading??????? } NET_OUT_GET_CLOUD_UPGRADER_STATE; ///@brief ???????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCloudUpgraderState(LLONG lLoginID, const NET_IN_GET_CLOUD_UPGRADER_STATE* pInParam, NET_OUT_GET_CLOUD_UPGRADER_STATE* pOutParam, int nWaitTime); ///@brief CLIENT_GetCloudUpgraderAutoCheck ??????? typedef struct tagNET_IN_GET_CLOUD_UPGRADER_AUTO_CHECK { DWORD dwSize; /// ???????, ????? } NET_IN_GET_CLOUD_UPGRADER_AUTO_CHECK; ///@brief CLIENT_GetCloudUpgraderAutoCheck ??????? typedef struct tagNET_OUT_GET_CLOUD_UPGRADER_AUTO_CHECK { DWORD dwSize; /// ???????, ????? BOOL bFlag; /// ?????, TRUE-??????? FALSE-???????? } NET_OUT_GET_CLOUD_UPGRADER_AUTO_CHECK; ///@brief ?????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCloudUpgraderAutoCheck(LLONG lLoginID, const NET_IN_GET_CLOUD_UPGRADER_AUTO_CHECK* pstuInParam, NET_OUT_GET_CLOUD_UPGRADER_AUTO_CHECK* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetCloudUpgraderAutoCheck ??????? typedef struct tagNET_IN_SET_CLOUD_UPGRADER_AUTO_CHECK { DWORD dwSize; /// ???????, ????? BOOL bFlag; /// ?????, TRUE-??????? FALSE-???????? } NET_IN_SET_CLOUD_UPGRADER_AUTO_CHECK; ///@brief CLIENT_SetCloudUpgraderAutoCheck ??????? typedef struct tagNET_OUT_SET_CLOUD_UPGRADER_AUTO_CHECK { DWORD dwSize; /// ???????, ????? } NET_OUT_SET_CLOUD_UPGRADER_AUTO_CHECK; ///@brief ????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetCloudUpgraderAutoCheck(LLONG lLoginID, const NET_IN_SET_CLOUD_UPGRADER_AUTO_CHECK* pstuInParam, NET_OUT_SET_CLOUD_UPGRADER_AUTO_CHECK* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetVideoDiagnosisChannelNumber ?????? typedef struct tagNET_IN_GET_SUPPORT_CHANNEL_NUM { DWORD dwSize; /// ??????? }NET_IN_GET_SUPPORT_CHANNEL_NUM; ///@brief CLIENT_GetVideoDiagnosisChannelNumber ?????? typedef struct tagNET_OUT_GET_SUPPORT_CHANNEL_NUM { DWORD dwSize; /// ??????? int nCount; /// IVS-V???????????? }NET_OUT_GET_SUPPORT_CHANNEL_NUM; ///@brief ???IVS-V???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVideoDiagnosisChannelNumber(LLONG lLoginID, const NET_IN_GET_SUPPORT_CHANNEL_NUM* pInParam, NET_OUT_GET_SUPPORT_CHANNEL_NUM* pOutParam, int nWaitTime); #define MAX_VIDEO_CHANNEL_COUNT 128 /// ??????????? ///@brief CLIENT_GetRemoteLowRateWPANCaps ??? typedef struct tagNET_IN_GET_REMOTELOWRATEWPAN_CAPS { DWORD dwSize; /// ??????? int nChannelCount; /// ??????????????????? int stChannels[MAX_VIDEO_CHANNEL_COUNT]; /// ????????, ????????????????? } NET_IN_GET_REMOTELOWRATEWPAN_CAPS; ///@brief ??????? typedef struct tagNET_REMOTE_LOW_RATE_WPAN_CAPS { BOOL bSupportWirelessGateway; /// ????????????????? BYTE byRevserved[256]; /// ??????? } NET_REMOTE_LOW_RATE_WPAN_CAPS; ///@brief ?????? typedef enum tagEM_RETURN_CODE_TYPE { EM_RETURN_CODE_TYPE_UNKNOWN, /// ??? EM_RETURN_CODE_TYPE_OK, /// ?????? EM_RETURN_CODE_TYPE_FAILED, /// ??????? EM_RETURN_CODE_TYPE_TIMEOUT, /// ?????? } EM_RETURN_CODE_TYPE; ///@brief CLIENT_GetRemoteLowRateWPANCaps ???? typedef struct tagNET_OUT_GET_REMOTELOWRATEWPAN_CAPS { DWORD dwSize; /// ??????? int nRetChannelCount; /// ?????????????? NET_REMOTE_LOW_RATE_WPAN_CAPS stCaps[MAX_VIDEO_CHANNEL_COUNT]; /// ????????????????????? int nRetCodeCount; /// ????????????? EM_RETURN_CODE_TYPE stReturnCode[MAX_VIDEO_CHANNEL_COUNT]; /// ??????????????????? } NET_OUT_GET_REMOTELOWRATEWPAN_CAPS; ///@brief ?????????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteLowRateWPANCaps(LLONG lLoginID, const NET_IN_GET_REMOTELOWRATEWPAN_CAPS* pInParam, NET_OUT_GET_REMOTELOWRATEWPAN_CAPS* pOutParam, int nWaitTime); ///@brief CLIENT_GetCoaxialSensorInfo ??? typedef struct tagNET_IN_GET_COAXIAL_SENSOR_INFO { DWORD dwSize; /// ??????? int nChannel; /// ??????, -1????????? } NET_IN_GET_COAXIAL_SENSOR_INFO; ///@brief ?????????? typedef enum tagEM_SENSOR_CLASS_TYPE { EM_SENSOR_CLASS_TYPE_UNKOWN, /// ??? EM_SENSOR_CLASS_TYPE_ALARM_IN, /// ???????????????? EM_SENSOR_CLASS_TYPE_ALARM_OUT, /// ????????? EM_SENSOR_CLASS_TYPE_ANALOGALARM, /// ????????? } EM_SENSOR_CLASS_TYPE; #define MAX_COAXIAL_SENSOR_INFO_COUNT 256 /// ??????????????? ///@brief ????????? typedef struct tagNET_COAXIAL_SENSOR_INFO { NET_SENSOR_ID_INFO stSensorID; /// ??????ID??? BOOL bIsOnLine; /// ????????????? char szAlarmName[MAX_COMMON_STRING_128]; /// ??????????? EM_SENSOR_CLASS_TYPE emSensorClass; /// ?????????? char szSN[MAX_COMMON_STRING_32]; /// ???????????? BYTE byRevserved[256]; /// ??????? } NET_COAXIAL_SENSOR_INFO; ///@brief CLIENT_GetCoaxialSensorInfo ???? typedef struct tagNET_OUT_GET_COAXIAL_SENSOR_INFO { DWORD dwSize; /// ??????? int nRetCount; /// ??????????ID???? NET_COAXIAL_SENSOR_INFO stSensorInfo[MAX_COAXIAL_SENSOR_INFO_COUNT]; /// ????????????? } NET_OUT_GET_COAXIAL_SENSOR_INFO; ///@brief ????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCoaxialSensorInfo(LLONG lLoginID, const NET_IN_GET_COAXIAL_SENSOR_INFO* pInParam, NET_OUT_GET_COAXIAL_SENSOR_INFO* pOutParam, int nWaitTime); #define MAX_VIDEO_URL_LEN 256 /// ????URL??????? ///@brief ??????? typedef struct tagNET_VIDEO_SOURCE_INFO { EM_DEV_PROTOCOL_TYPE emProtocolType; /// ??????????? char szIp[DH_MAX_IPADDR_OR_DOMAIN_LEN]; /// ??????IP ??? int nPort; /// ?????????? char szUser[DH_NEW_USER_NAME_LENGTH]; /// ??????????? char szPwd[DH_NEW_USER_PSW_LENGTH]; /// ?????????? int nChannelID; /// ??????????? char szStreamUrl[512]; /// ????url???, emProtocolType?EM_DEV_PROTOCOL_GENERAL ????? BYTE byReserved[256]; /// ??????? } NET_VIDEO_SOURCE_INFO; ///@brief ??????? typedef enum tagEM_TRANSCODE_IMAGE_QUALITY { EM_TRANSCODE_IMAGE_QUALITY_SELFADAPT, /// ????? EM_TRANSCODE_IMAGE_QUALITY_Q10, /// 10% EM_TRANSCODE_IMAGE_QUALITY_Q30, /// 30% EM_TRANSCODE_IMAGE_QUALITY_Q50, /// 50% EM_TRANSCODE_IMAGE_QUALITY_Q60, /// 60% EM_TRANSCODE_IMAGE_QUALITY_Q80, /// 80% EM_TRANSCODE_IMAGE_QUALITY_Q100, /// 100% } EM_TRANSCODE_IMAGE_QUALITY; ///@brief ???????????????? typedef enum tagEM_TRANSCODE_VIDEO_COMPRESSION { EM_TRANSCODE_VIDEO_AUTO, /// auto EM_TRANSCODE_VIDEO_MPEG4, /// MPEG4 EM_TRANSCODE_VIDEO_MPEG2, /// MPEG2 EM_TRANSCODE_VIDEO_MPEG1, /// MPEG1 EM_TRANSCODE_VIDEO_MJPG, /// MJPG EM_TRANSCODE_VIDEO_H263, /// H.263 EM_TRANSCODE_VIDEO_H264, /// H.264 EM_TRANSCODE_VIDEO_H265, /// H.265 } EM_TRANSCODE_VIDEO_COMPRESSION; ///@brief ????????? typedef struct tagNET_TRANSCODE_VIDEO_FORMAT { EM_TRANSCODE_VIDEO_COMPRESSION emCompression; /// ????????? UINT nWidth; /// ??????? UINT nHeight; /// ?????? NET_EM_BITRATE_CONTROL emBitRateControl; /// ?????????? UINT nBitRate; /// ???????(kbps) float fFrameRate; /// ?????? UINT nIFrameInterval; /// I????(1-100)??????50????49??B???P??????????I??? EM_TRANSCODE_IMAGE_QUALITY emImageQuality; /// ??????? BYTE byReserved[512]; /// ??????? } NET_TRANSCODE_VIDEO_FORMAT; ///@brief ????????? typedef struct tagNET_TRANSCODE_AUDIO_FORMAT { NET_EM_AUDIO_FORMAT emCompression; /// ???????? UINT nFrequency; /// ?????????? BYTE byReserved[512]; /// ??????? } NET_TRANSCODE_AUDIO_FORMAT; ///@brief ???????????? typedef struct tagNET_TRANSCODE_SNAP_FORMAT { UINT nWidth; /// ?????? UINT nHeight; /// ????? BYTE byReserved[128]; /// ??????? } NET_TRANSCODE_SNAP_FORMAT; ///@brief ????????? typedef struct tagNET_TRANSCODE_WATER_MARK { char szText[256]; /// ???????? BYTE byReserved[512]; /// ??????? } NET_TRANSCODE_WATER_MARK; ///@brief ????????????? typedef struct tagNET_VIRTUALCHANNEL_POLICY { BOOL bDeleteByCaller; /// ????????????????????? /// ???????CLIENT_GetCapsOfTransCode????NET_OUT_TRANSCODE_GET_CAPS.bSupportDelByCaller?TRUE????? BOOL bContinuous; /// ????????? /// ???????CLIENT_GetCapsOfTransCode????NET_OUT_TRANSCODE_GET_CAPS.bSupportContinuous?TRUE????? UINT nVirtualChannel; /// ????????????????0???????????????????????????,???????? CLIENT_GetCapsOfTransCode?????nMinVirtualChannel~nMaxVirtualChannel??????????????????????? BYTE byReserved[508]; /// ??????? } NET_VIRTUALCHANNEL_POLICY; ///@brief CLIENT_GetVirtualChannelOfTransCode ?????????? typedef struct tagNET_IN_GET_VIRTUALCHANNEL_OF_TRANSCODE { DWORD dwSize; /// ??????? NET_VIDEO_SOURCE_INFO stuVideoSourceInfo; /// ??????? NET_TRANSCODE_VIDEO_FORMAT stuTransVideoFormat; /// ????????? NET_TRANSCODE_AUDIO_FORMAT stuTransAudioFormat; /// ????????? NET_VIRTUALCHANNEL_POLICY stuVirtualChnPolicy; /// ????????????? NET_TRANSCODE_SNAP_FORMAT stuSnapFormat; /// ???????????? NET_TRANSCODE_WATER_MARK stuWaterMark[4]; /// ?????? } NET_IN_GET_VIRTUALCHANNEL_OF_TRANSCODE; ///@brief CLIENT_GetVirtualChannelOfTransCode ?????????? typedef struct tagNET_OUT_GET_VIRTUALCHANNEL_OF_TRANSCODE { DWORD dwSize; /// ??????? UINT nVirtualChannel; /// ????????? } NET_OUT_GET_VIRTUALCHANNEL_OF_TRANSCODE; ///@brief CLIENT_DelVirtualChannelOfTransCode ?????????? typedef struct tagNET_IN_DEL_VIRTUALCHANNEL_OF_TRANSCODE { DWORD dwSize; /// ??????? int nVirtualChannel; /// ?????????, -1 ??????????????????? } NET_IN_DEL_VIRTUALCHANNEL_OF_TRANSCODE; ///@brief CLIENT_DelVirtualChannelOfTransCode ?????????? typedef struct tagNET_OUT_DEL_VIRTUALCHANNEL_OF_TRANSCODE { DWORD dwSize; /// ??????? } NET_OUT_DEL_VIRTUALCHANNEL_OF_TRANSCODE; ///@brief CLIENT_GetCapsOfTransCode ?????????? typedef struct tagNET_IN_TRANDCODE_GET_CAPS { DWORD dwSize; /// ??????? } NET_IN_TRANDCODE_GET_CAPS; ///@brief CLIENT_GetCapsOfTransCode ?????????? typedef struct tagNET_OUT_TRANSCODE_GET_CAPS { DWORD dwSize; /// ??????? int nMinVirtualChannel; /// ????????????? int nMaxVirtualChannel; /// ???????????? BOOL bSupportErrorCode; /// ???????????????????? BOOL bSupportContinuous; /// ???????????????????????????????????????? BOOL bSupportDelByCaller; /// ????????????????????????? BOOL bSupportSpecifyVirtualChannel; /// ?????????????????????????? /// ?????true???????CLIENT_GetVirtualChannelOfTransCode???????????nVirtualChannel????????????????nMinVirtualChannel~nMaxVirtualChannel???????? /// ???????false????????????????????????? float fMaxDownLoadSpeed; /// ????????????????? UINT nSupportCompressMaxChannel; /// ????????????????????? char szSupportCompressResolutionRangeMin[32]; /// ???????????? ????? char szSupportCompressResolutionRangeMax[32]; /// ???????????? ???? int nSupportCompressFpsRangeMin; /// ??????????? ????? int nSupportCompressFpsRangeMax; /// ??????????? ???? char szSupportCompressAudioTypes[64][32]; /// ?????????? int nSupportCompressAudioTypesNum; /// ?????????????? int nSupportCompressCompressionTypesNum; /// ????????????????? char szSupportCompressCompressionTypes[64][32]; /// ????????????? } NET_OUT_TRANSCODE_GET_CAPS; ///@brief ???????????? typedef enum tagEM_VIRCHANNEL_STATUS { EM_VIRCHANNEL_STATUS_UNKNOWN = -1, /// ??? EM_VIRCHANNEL_STATUS_OVER_DECODE, /// ???????? EM_VIRCHANNEL_STATUS_OVER_COMPRESS, /// ??????? EM_VIRCHANNEL_STATUS_NO_ORIGI_STREAM, /// ???????? EM_VIRCHANNEL_STATUS_SLAVE_OFFLINE, /// ????????????????? EM_VIRCHANNEL_STATUS_UNKNOWN_FAILURE = 255, /// ??????????? } EM_VIRCHANNEL_STATUS; ///@brief ??????????????? typedef struct tagNET_CB_VIRTUALCHANNEL_STATUS_INFO { UINT nVirChannelID; /// ???????????? EM_VIRCHANNEL_STATUS emVirChannelStatus; /// ???????????? BYTE byReserved[1024]; /// ??????? } NET_CB_VIRTUALCHANNEL_STATUS_INFO; ///@brief ??????????????????????, lAttachHandle ? CLIENT_AttachVirtualChannelStatus ?????????? typedef int (CALLBACK *fVirtualChannelStatusCallBack)(const LLONG lAttachHandle, const NET_CB_VIRTUALCHANNEL_STATUS_INFO *pstVirChnStatusInfo, const LDWORD dwUser); ///@brief CLIENT_AttachVirtualChannelStatus ?????????? typedef struct tagNET_IN_ATTACH_VIRTUALCHANNEL_STATUS { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????????? fVirtualChannelStatusCallBack cbVirtualChannelStatus; /// ??????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_VIRTUALCHANNEL_STATUS; ///@brief CLIENT_GetRemoteCompressStatus ?????????? typedef struct tagNET_IN_REMOTE_COMPRESS_STATUS { DWORD dwSize; /// ??????? } NET_IN_REMOTE_COMPRESS_STATUS; ///@brief ??????? typedef enum tagEM_REMOTE_COMPRESS_TRADE_TYPE { EM_REMOTE_COMPRESS_TRADE_UNKNOWN = -1, /// ??? EM_REMOTE_COMPRESS_TRADE_PLAY, /// ?????? EM_REMOTE_COMPRESS_TRADE_PLAYBACK, /// ?????? EM_REMOTE_COMPRESS_TRADE_PLAYBACK_X2, /// ??????X2 EM_REMOTE_COMPRESS_TRADE_PLAYBACK_X4, /// ??????X4 EM_REMOTE_COMPRESS_TRADE_PLAYBACK_X8, /// ??????X8 EM_REMOTE_COMPRESS_TRADE_DOWNLOAD, /// ??????? EM_REMOTE_COMPRESS_TRADE_PLAYBACK_HALF, /// ??????X1/2 EM_REMOTE_COMPRESS_TRADE_PLAYBACK_QUARTER, /// ??????X1/4 EM_REMOTE_COMPRESS_TRADE_PLAYBACK_EIGHTH, /// ??????X1/8 } EM_REMOTE_COMPRESS_TRADE_TYPE; ///@brief ????? typedef enum tagEM_REMOTE_COMPRESS_STATUS { EM_REMOTE_COMPRESS_STATUS_UNKNOWN = -1, /// ??? EM_REMOTE_COMPRESS_STATUS_OVERDECODE, /// ???????????? EM_REMOTE_COMPRESS_STATUS_OVERCOMPRESS, /// ??????????? EM_REMOTE_COMPRESS_STATUS_ABNORMALCHANNEL, /// ???????? EM_REMOTE_COMPRESS_STATUS_OFFLINE, /// ??????? EM_REMOTE_COMPRESS_STATUS_ABNORMALSTREAM, /// ?????? EM_REMOTE_COMPRESS_STATUS_NORMAL, /// ???? EM_REMOTE_COMPRESS_STATUS_OTHER = 255, /// ???? } EM_REMOTE_COMPRESS_STATUS; ///@brief ???????????????? typedef struct tagNET_REMOTE_COMPRESS_STATUS_INFO { UINT nChannel; /// ????????, ??????????????????????????????? UINT nRemoteChannel; /// ??????????? char szIPAddr[64]; /// ????????IP??? EM_DEV_PROTOCOL_TYPE emProtocolType; /// ????????????????? UINT nPort; /// ???? EM_REMOTE_COMPRESS_TRADE_TYPE emTradeType; /// ??????? EM_REMOTE_COMPRESS_STATUS emRemoteCompressStatus; /// ????? CAPTURE_SIZE emOriginResolution; /// ???????????, ?????????????????????????????????????????????????????????????????????????N??P???????????"WWxHH"??????? UINT nOriginBitrate; /// ??????????????????????, ???? Kbps UINT nCompressBitrate; /// ???????????????????????, ???? Kbps CAPTURE_SIZE emCompressResolution; /// ????????????, ?????????????????????????????????????????????????????????????????????????N??P???????????"WWxHH"???????, INT64 nStartStreamTime; /// ??????????????????????????????????????????????? char szOriginCompressionType[32]; /// ????????????,??????H.264 char szCompressCompressionType[32]; /// ???????????????????????H.264 BYTE byReserved[952]; /// ??????? } NET_REMOTE_COMPRESS_STATUS_INFO; ///@brief CLIENT_GetRemoteCompressStatus ?????????? typedef struct tagNET_OUT_REMOTE_COMPRESS_STATUS { DWORD dwSize; /// ??????? NET_REMOTE_COMPRESS_STATUS_INFO stuInfo[1024]; /// ???????????????? int nstuInfoNum; /// ???????????????????? } NET_OUT_REMOTE_COMPRESS_STATUS; ///@brief ??????? typedef struct tagNET_REMOTE_COMPRESS_REMAIN_ENCODE { UINT nWidth; /// ????????????: ???? UINT nHeight; /// ???????????: ???? UINT nFPS; /// ??????, ????: ?/?? BYTE byReserved[126]; /// ??????? } NET_REMOTE_COMPRESS_REMAIN_ENCODE; ///@brief CLIENT_GetRemoteCompressRemain ?????????? typedef struct tagNET_IN_REMOTE_COMPRESS_REMAIN { DWORD dwSize; /// ??????? NET_REMOTE_COMPRESS_REMAIN_ENCODE stuEncode; /// ??????? } NET_IN_REMOTE_COMPRESS_REMAIN; ///@brief CLIENT_GetRemoteCompressRemain ?????????? typedef struct tagNET_OUT_REMOTE_COMPRESS_REMAIN { DWORD dwSize; /// ??????? UINT nChannelNum; /// ?????????? } NET_OUT_REMOTE_COMPRESS_REMAIN; ///@brief ???????????????(????????????????????), pInParam ??pOutParam ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVirtualChannelOfTransCode(LLONG lLoginID, const NET_IN_GET_VIRTUALCHANNEL_OF_TRANSCODE* pInParam, NET_OUT_GET_VIRTUALCHANNEL_OF_TRANSCODE* pOutParam, int nWaitTime); ///@brief ???????????????, pInParam ??pOutParam ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelVirtualChannelOfTransCode(LLONG lLoginID, const NET_IN_DEL_VIRTUALCHANNEL_OF_TRANSCODE* pInParam, NET_OUT_DEL_VIRTUALCHANNEL_OF_TRANSCODE* pOutParam, int nWaitTime); ///@brief ????????????, pInParam ??pOutParam ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCapsOfTransCode(LLONG lLoginID, const NET_IN_TRANDCODE_GET_CAPS* pInParam, NET_OUT_TRANSCODE_GET_CAPS* pOutParam, int nWaitTime); ///@brief ????????????????, pInParam ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachVirtualChannelStatus(LLONG lLoginID, const NET_IN_ATTACH_VIRTUALCHANNEL_STATUS* pInParam, const int nWaitTime); ///@brief ???????????????????, lAttachHandle ? CLIENT_AttachVirtualChannelStatus ?????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachVirtualChannelStatus(LLONG lAttachHandle); ///@brief ????????????????, pInParam ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteCompressStatus(LLONG lLoginID, const NET_IN_REMOTE_COMPRESS_STATUS* pInParam, NET_OUT_REMOTE_COMPRESS_STATUS* pOutParam, int nWaitTime); ///@brief ????????????????, pInParam ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteCompressRemain(LLONG lLoginID, const NET_IN_REMOTE_COMPRESS_REMAIN* pInParam, NET_OUT_REMOTE_COMPRESS_REMAIN* pOutParam, int nWaitTime); ////////////////////////////////////??????????????? start////////////////////////////////////////// ///@brief ???????????????????,??? NET_REMOTE_COLLECT_DEVINFO_CAPS typedef struct tagNET_IN_REMOTE_COLLECT_DEVINFO_CAPS { DWORD dwSize; /// ??????? UINT nChannel; /// ???????????,???IPC,????0 }NET_IN_REMOTE_COLLECT_DEVINFO_CAPS; ///@brief ????????????????????,??? NET_REMOTE_COLLECT_DEVINFO_CAPS typedef struct tagNET_OUT_REMOTE_COLLECT_DEVINFO_CAPS { DWORD dwSize; /// ??????? BOOL bSupportRemoteCollectSniffer; /// ?????????????? BOOL bSupportRemoteCollectLog; /// ?????????????????? }NET_OUT_REMOTE_COLLECT_DEVINFO_CAPS; ///@brief ????????? typedef enum tagNET_EM_REMOTE_COLLECT_TYPE { NET_EM_REMOTE_COLLECT_TYPE_UNKNOWN = 0, /// ??? NET_EM_REMOTE_COLLECT_TYPE_CAPTURE, /// ??? NET_EM_REMOTE_COLLECT_TYPE_LOG, /// ??? }NET_EM_REMOTE_COLLECT_TYPE; ///@brief ???????? typedef enum tagNET_EM_REMOTE_COLLECT_STATUS { NET_EM_REMOTE_COLLECT_STATUS_UNKNOWN = 0, /// ??? NET_EM_REMOTE_COLLECT_STATUS_IDLE, /// ???? NET_EM_REMOTE_COLLECT_STATUS_COLLECTING, /// ?????? }NET_EM_REMOTE_COLLECT_STATUS; ///@brief ??????? typedef enum tagNET_EM_REMOTE_COLLECT_LOG_LEVEL { NET_EM_REMOTE_COLLECT_LOG_LEVEL_NO_PRINT = 0, /// ????? NET_EM_REMOTE_COLLECT_LOG_LEVEL_FATAL, /// ???? NET_EM_REMOTE_COLLECT_LOG_LEVEL_ERROR, /// ???? NET_EM_REMOTE_COLLECT_LOG_LEVEL_WARN, /// ???? NET_EM_REMOTE_COLLECT_LOG_LEVEL_INFO, /// ??? NET_EM_REMOTE_COLLECT_LOG_LEVEL_TRACE, /// ???? NET_EM_REMOTE_COLLECT_LOG_LEVEL_DEBUG, /// ???? }NET_EM_REMOTE_COLLECT_LOG_LEVEL; ///@brief ??????????? typedef struct tagNET_REMOTE_COLLECT_FILE_INFO { char szFilePath[260]; /// ??????? UINT nFileSize; /// ???????,????Byte BYTE byReserved[248]; /// ??? }NET_REMOTE_COLLECT_FILE_INFO; ///@brief ??????????? typedef struct tagNET_REMOTE_COLLECT_DEV_INFO { NET_EM_REMOTE_COLLECT_TYPE emType; /// ??????? NET_EM_REMOTE_COLLECT_STATUS emStatus; /// ????? NET_REMOTE_COLLECT_FILE_INFO stuFileInfos[128]; /// ?????? int nFileInfoNum; /// ??????? BYTE byReserved[1020]; /// ??? }NET_REMOTE_COLLECT_DEV_INFO; ///@brief ????????????????????? typedef struct tagNET_IN_GET_REMOTE_COLLECT_DEV_INFO { DWORD dwSize; /// ??????? UINT nChannel; /// ????? }NET_IN_GET_REMOTE_COLLECT_DEV_INFO; ///@brief ????????????????????? typedef struct tagNET_OUT_GET_REMOTE_COLLECT_DEV_INFO { DWORD dwSize; /// ??????? int nInfoNum; /// ???????????? NET_REMOTE_COLLECT_DEV_INFO stuInfos[8]; /// ?????????? }NET_OUT_GET_REMOTE_COLLECT_DEV_INFO; ///@brief ??????????? typedef enum tagNET_EM_PROT_FILTER_TYPE { NET_EM_PROT_FILTER_TYPE_NOUSE, /// ????? NET_EM_PROT_FILTER_TYPE_INCLUDE, /// ???? NET_EM_PROT_FILTER_TYPE_EXCLUDE, /// ??? }NET_EM_PROT_FILTER_TYPE; ///@brief ????????????? typedef struct tagNET_REMOTE_COLLECT_TO_FILE_RULE { NET_EM_REMOTE_COLLECT_TYPE emType; /// ??????? NET_EM_REMOTE_COLLECT_LOG_LEVEL emLevel; /// ?????????????????????? char szNetworkCard[128]; /// ????????????????????????? NET_EM_PROT_FILTER_TYPE emSrcPortFilter; /// ????????? int nSrcPortNum; /// ??????????????? unsigned short nSrcPorts[16]; /// ????????????????????????????? NET_EM_PROT_FILTER_TYPE emDstPortFilter; /// ?????????? int nDstPortNum; /// ???????????????? unsigned short nDstPorts[16]; /// ?????????????????????????????? BYTE byReserved[1024]; /// ??????? }NET_REMOTE_COLLECT_TO_FILE_RULE; ///@brief CLIENT_StartRemoteCollectToFile ??? typedef struct tagNET_IN_START_REMOTE_COLLECT_TO_FILE { DWORD dwSize; /// ??????? UINT nChannel; /// ????? NET_REMOTE_COLLECT_TO_FILE_RULE stuRules[8]; /// ????????????? int nRuleNum; /// ?????????????? }NET_IN_START_REMOTE_COLLECT_TO_FILE; ///@brief CLIENT_StartRemoteCollectToFile ???? typedef struct tagNET_OUT_START_REMOTE_COLLECT_TO_FILE { DWORD dwSize; /// ??????? }NET_OUT_START_REMOTE_COLLECT_TO_FILE; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteCollectDevInfo(LLONG lLoginID, NET_IN_GET_REMOTE_COLLECT_DEV_INFO* pstInParam, NET_OUT_GET_REMOTE_COLLECT_DEV_INFO* pstOutParam, int nWaitTime); ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ??????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartRemoteCollectToFile(LLONG lLoginID, const NET_IN_START_REMOTE_COLLECT_TO_FILE* pInParam, NET_OUT_START_REMOTE_COLLECT_TO_FILE* pOutParam, const int nWaitTime); ///@brief ???????????????????????lCollectID? CLIENT_StartRemoteCollectToFile ????? ///@param[in] lCollectID ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopRemoteCollectToFile(LLONG lCollectID); ////////////////////////////////////??????????????? end////////////////////////////// //////////////////////////////???????????????????? Start///////////////////////////////// ///@brief CLIENT_GetMobilePusherCaps ??? typedef struct tagNET_IN_GET_MOBILE_PUSHER_CAPS { DWORD dwSize; /// ??????? } NET_IN_GET_MOBILE_PUSHER_CAPS; ///@brief ?????????????????????????? typedef struct tagNET_SUPPORT_CHANNEL_SUBSCRIBE_EVENT { BOOL bIsSupportProfileAlarmTransmit; /// ?????? ProfileAlarmTransmit??? BOOL bIsSupportCallNoAnswered; /// ?????? CallNoAnswered ??? BYTE byReserved[56]; /// ??????? }NET_SUPPORT_CHANNEL_SUBSCRIBE_EVENT; ///@brief CLIENT_GetMobilePusherCaps ???? typedef struct tagNET_OUT_GET_MOBILE_PUSHER_CAPS { DWORD dwSize; /// ??????? BOOL bEnablePush; /// ??????????????????????????? BOOL bAddNotification; /// ???????????????????? BOOL bDelNotification; /// ??????????????????? BOOL bSupportPriority; /// DMSS???????,???????????,???APP??????????????????????????????????? BOOL bPushEventSchedule; /// ??????????????????? BOOL bVTOPushErrorCode; /// ??????VTO???????????? BOOL bSupportGetPushConfig; /// ??????????????????? NET_SUPPORT_CHANNEL_SUBSCRIBE_EVENT stuChannelSubscribeEvent; /// ?????????????????????????? } NET_OUT_GET_MOBILE_PUSHER_CAPS; ///@brief ?????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMobilePusherCaps(LLONG lLoginID, NET_IN_GET_MOBILE_PUSHER_CAPS *pInParam, NET_OUT_GET_MOBILE_PUSHER_CAPS *pOutParam, int nWaitTime); ///@brief CLIENT_EnablePushMobilePusher ??? typedef struct tagNET_IN_ENABLE_PUSH_MOBILE_PUSHER { DWORD dwSize; /// ??????? BOOL bEnablePush; /// ???????????? } NET_IN_ENABLE_PUSH_MOBILE_PUSHER; ///@brief CLIENT_EnablePushMobilePusher ???? typedef struct tagNET_OUT_ENABLE_PUSH_MOBILE_PUSHER { DWORD dwSize; /// ??????? } NET_OUT_ENABLE_PUSH_MOBILE_PUSHER; ///@brief ??????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_EnablePushMobilePusher(LLONG lLoginID, NET_IN_ENABLE_PUSH_MOBILE_PUSHER *pInParam, NET_OUT_ENABLE_PUSH_MOBILE_PUSHER *pOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_PUSH_SERVER_INFO_EX { char szAddress[MAX_URL_LEN]; /// ??? int nPort; /// ??? BYTE byReserved[512]; /// ??????? } NET_PUSH_SERVER_INFO_EX; ///@brief ?????? typedef struct tagNET_REGISTER_GROUP { int nIndex; /// ?????,-1???????????????????,?MobilePushNotification ??indexs????? int nGroupCount; /// ????ID????????? char szGroup[64][64]; /// ????ID???? BYTE byReserved[128]; /// ??????? } NET_REGISTER_GROUP; ///@brief ?????????????? typedef struct tagNET_CUSTOM_TILTER_OF_FACE_COMPARISION { int nRegisterGroupCount; /// ?????????? NET_REGISTER_GROUP stuRegisterGroup[256]; /// ?????? BYTE byReserved[1028]; /// ??????? } NET_CUSTOM_TILTER_OF_FACE_COMPARISION; ///@brief CLIENT_AddMobilePusherNotification ??? typedef struct tagNET_IN_ADD_MOBILE_PUSHER_NOTIFICATION { DWORD dwSize; /// ??????? char szRegisterID[MAX_REGISTER_ID_LEN]; /// RegisterID, ????Appple/Android????????????, ?????? char szAppID[MAX_APP_ID_LEN]; /// AppID EM_MOBILE_SERVER_TYPE emServerType; /// ?????? EM_PUSH_GATEWAY_TYPE emPushGatewayType; /// ????????????, emServerType?EM_MOBILE_SERVER_TYPE_SDKCLOUD????? int nPeriodOfValidity; /// ???????,??????? char szAuthServerAddr[MAX_URL_LEN]; /// Android???????????? int nAuthServerPort; /// Android???????????? NET_PUSH_SERVER_INFO_EX stuPushServerMain; /// ?????????????, ??????????????,??????????,???????????????????? char szPushServerAddr[MAX_URL_LEN]; /// ???????????? /// ??????????????,????????????????????????????? int nPushServerPort; /// ???????????? char szDevName[MAX_COMMON_STRING_64]; /// ???????,???????????? char szDevID[MAX_COMMON_STRING_64]; /// ??????,???????????? char szUser[MAX_COMMON_STRING_64]; /// google??GCM/C2DM???????????? char szCertificate[MAX_IOS_CERTIFICATE_LEN]; /// ??????,base64?????????,???????TLS?????????, iOS??? char szSecretKey[MAX_IOS_SECRET_KEY_LEN]; /// ????(Jpush)???????, ?????????, Android????Jpush??????? int nSubScribeNum; /// ??????????????, ??????????? NET_SUBSCRIBE_INFO_EX* pstuSubscribes; /// ????????,??????????????????sizeof(NET_SUBSCRIBE_INFO)*nSubScribeMax DH_TSECT stuAllEventPushTime[DH_N_WEEKS][DH_N_TSECT]; /// ?????????????????7*6????????7??????????7?????????????????????????6???????????? /// ?????????????????1??????????????0?????????? /// ??bIsTimeEnable?TRUE???????????????????????; bIsTimeEnable?FALSE?,????????????????? BOOL bIsTimeEnable; /// ???????????(stuAllEventPushTime)??????????,????FALSE BOOL bUserEx; /// ???????????????????? char szUserEx[256]; /// ????????????? char szBindingUserName[64]; /// APP??????????????(???????????????????????????????????????????APP) } NET_IN_ADD_MOBILE_PUSHER_NOTIFICATION; ///@brief CLIENT_AddMobilePusherNotification ???? typedef struct tagNET_OUT_ADD_MOBILE_PUSHER_NOTIFICATION { DWORD dwSize; /// ??????? } NET_OUT_ADD_MOBILE_PUSHER_NOTIFICATION; ///@brief ???APP???????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddMobilePusherNotification(LLONG lLoginID, NET_IN_ADD_MOBILE_PUSHER_NOTIFICATION *pInParam, NET_OUT_ADD_MOBILE_PUSHER_NOTIFICATION *pOutParam, int nWaitTime); ///@brief CLIENT_DelMobilePusherNotification ??? typedef struct tagNET_IN_DEL_MOBILE_PUSHER_NOTIFICATION { DWORD dwSize; /// ??????? char szRegisterID[MAX_REGISTER_ID_LEN]; /// RegisterID, ?????Appple/Android????????????????????? char szAppID[MAX_APP_ID_LEN]; /// AppID??????????????????????????? } NET_IN_DEL_MOBILE_PUSHER_NOTIFICATION; ///@brief CLIENT_DelMobilePusherNotification ???? typedef struct tagNET_OUT_DEL_MOBILE_PUSHER_NOTIFICATION { DWORD dwSize; /// ??????? } NET_OUT_DEL_MOBILE_PUSHER_NOTIFICATION; ///@brief ???APP??????????????????, pInParam??pOutParam???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelMobilePusherNotification(LLONG lLoginID, NET_IN_DEL_MOBILE_PUSHER_NOTIFICATION *pInParam, NET_OUT_DEL_MOBILE_PUSHER_NOTIFICATION *pOutParam, int nWaitTime); ///@brief ???APP??????????????? typedef enum tagEM_MOBILE_PUSHER_NOTIFICATION_TYPE { EM_MOBILE_PUSHER_NOTIFICATION_TYPE_UNKNOWN, /// ??? EM_MOBILE_PUSHER_NOTIFICATION_TYPE_ALL, /// ??? EM_MOBILE_PUSHER_NOTIFICATION_TYPE_SINGLE, /// ???? }EM_MOBILE_PUSHER_NOTIFICATION_TYPE; ///@brief ???APP????????????????????????????????????????CLIENT_GetMobilePusherNotification????? typedef struct tagNET_IN_GET_MOBILE_PUSHER_NOTIFICATION_INFO { DWORD dwSize; /// ??????? EM_MOBILE_PUSHER_NOTIFICATION_TYPE emFindMode; /// ????? char szRegisterID[256]; /// App???ID char szAppID[256]; /// AppID } NET_IN_GET_MOBILE_PUSHER_NOTIFICATION_INFO; ///@brief ??????????????????? typedef enum tagEM_MOBILE_PUSHER_NAME_TYPE { EM_MOBILE_PUSHER_NAME_TYPE_UNKNOWN, /// ??? EM_MOBILE_PUSHER_NAME_TYPE_NOTIFICATION, /// ?? EM_MOBILE_PUSHER_NAME_TYPE_NOTIFICATIONCFG, /// ?????? }EM_MOBILE_PUSHER_NAME_TYPE; ///@brief ???APP????????????????????????????????????????CLIENT_GetMobilePusherNotification?? ???? typedef struct tagNET_OUT_GET_MOBILE_PUSHER_NOTIFICATION_INFO { DWORD dwSize; /// ??????? EM_MOBILE_PUSHER_NAME_TYPE emMobilePusherName; /// ???????? int nMaxNotificationNum; /// ?????????????????????????? int nRetNotificationNum; /// ?????????????????????? NET_MOBILE_PUSH_NOTIFICATION_GENERAL_INFO *pstuMobilePusherNotificationCfg;/// ???????? }NET_OUT_GET_MOBILE_PUSHER_NOTIFICATION_INFO; ///@brief ???APP??????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMobilePusherNotificationCfg(LLONG lLoginID, const NET_IN_GET_MOBILE_PUSHER_NOTIFICATION_INFO *pInParam, NET_OUT_GET_MOBILE_PUSHER_NOTIFICATION_INFO *pOutParam, int nWaitTime); ///@brief CLIENT_GetMobilePusherEventList ??? typedef struct tagNET_IN_GET_MOBILE_PUSHER_EVNET_LIST { DWORD dwSize; /// ??????? UINT nChannelNum; /// ?????????? int nChannel[1024]; /// ????????????????????,-1 ??????? } NET_IN_GET_MOBILE_PUSHER_EVNET_LIST; ///@brief ????????????????????????????????(EVENT_IVS_FACE_COMPARISION)???????? typedef enum tagEM_PUSH_BY_GROUP_TYPE { EM_PUSH_BY_GROUP_NOT_INVOLVE, /// ????p?????? EM_PUSH_BY_GROUP_SUPPORT, /// ????????????? EM_PUSH_BY_GROUP_NOT_SUPPORT, /// ??????????????? }EM_PUSH_BY_GROUP_TYPE; ///@brief ?????????? typedef struct tagNET_MOBILE_PUSHER_EVNET { char szCode[64]; /// ????? int nEventType; /// ??????? EM_PUSH_BY_GROUP_TYPE emPushByGroupType; /// ????????????????? BYTE byReserved[128]; /// ??????? } NET_MOBILE_PUSHER_EVNET; ///@brief ?????????? typedef struct tagNET_MOBILE_PUSHER_EVNET_LIST_INFO { int nCount; /// ????????????? BYTE byReserved[4]; /// ??????? NET_MOBILE_PUSHER_EVNET stuMobilePusherEvent[1024]; /// ?????????? }NET_MOBILE_PUSHER_EVNET_LIST_INFO; ///@brief CLIENT_GetMobilePusherEventList ???? typedef struct tagNET_OUT_GET_MOBILE_PUSHER_EVNET_LIST { DWORD dwSize; /// ??????? UINT nMaxEventlistNum; /// ??????????????? UINT nRetEventlistNum; /// ???????????????? NET_MOBILE_PUSHER_EVNET_LIST_INFO* pMobilePusherEventlist; /// ?????????????????????? } NET_OUT_GET_MOBILE_PUSHER_EVNET_LIST; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMobilePusherEventList(LLONG lLoginID, const NET_IN_GET_MOBILE_PUSHER_EVNET_LIST* pInParam, NET_OUT_GET_MOBILE_PUSHER_EVNET_LIST* pOutParam, int nWaitTime); //////////////////////////////???????????????????? End///////////////////////////////// ///@brief ????? typedef struct tagNET_CREDENTIAL_INFO { char CredentialHolder[16]; /// ????????? NET_TIME stuValidDateStart; /// ????????? NET_TIME stuValidDateEnd; /// ????????? NET_ACCESS_METHOD emType; /// ???????? DWORD nIndex; /// ?????? char szCardNo[DH_MAX_CARDINFO_LEN]; /// ???? BYTE byReserved[1024]; /// ??????? }NET_CREDENTIAL_INFO; ///@brief ??????????????? typedef struct tagNET_SMARTLOCK_NOTIFY_OFFLINEAUTH { char szSerialNumber[32]; /// ?????????????(??????) DWORD nACK; /// ???? NET_CREDENTIAL_INFO stCredentialInfo; /// ????? BYTE byReserved[1024]; /// ??????? }NET_SMARTLOCK_NOTIFY_OFFLINEAUTH; ///@brief ???????????????????? typedef void (CALLBACK *fSmartLockOfflineAuthCallBack) (LLONG lLoginId, LLONG lAttachHandle, const NET_SMARTLOCK_NOTIFY_OFFLINEAUTH* pBuf, LDWORD dwUser); ///@brief ????????????????????(?????? CLIENT_AttachSmartLockOfflineAuth) typedef struct tagNET_IN_SMARTLOCK_OFFLINEAUTH { DWORD dwSize; /// ??????? char szUUID[36]; /// ??????????? fSmartLockOfflineAuthCallBack cbOfflineAuth; /// ????????????? LDWORD dwUser; /// ??????? }NET_IN_SMARTLOCK_OFFLINEAUTH; ///@brief ????????????????????(?????? CLIENT_AttachSmartLockOfflineAuth) typedef struct tagNET_OUT_SMARTLOCK_OFFLINEAUTH { DWORD dwSize; /// ??????? }NET_OUT_SMARTLOCK_OFFLINEAUTH; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSmartLockOfflineAuth(LLONG lLoginID, const NET_IN_SMARTLOCK_OFFLINEAUTH* pstInParam, NET_OUT_SMARTLOCK_OFFLINEAUTH* pstOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSmartLockOfflineAuth(LLONG lAttachHandle); ///@brief ???????????????????(?????? CLIENT_AckSmartLockOfflineAuth) typedef struct tagNET_IN_SMARTLOCK_ACK_OFFLINEAUTH { DWORD dwSize; /// ??????? char szUUID[36]; /// ??????????? char szSerialNumber[32]; /// ?????????????(??????) DWORD nACK; /// ????????ID }NET_IN_SMARTLOCK_ACK_OFFLINEAUTH; ///@brief ????????????????????(?????? CLIENT_AckSmartLockOfflineAuth) typedef struct tagNET_OUT_SMARTLOCK_ACK_OFFLINEAUTH { DWORD dwSize; /// ??????? }NET_OUT_SMARTLOCK_ACK_OFFLINEAUTH; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AckSmartLockOfflineAuth(LLONG lLoginID, NET_IN_SMARTLOCK_ACK_OFFLINEAUTH* pstInParam, NET_OUT_SMARTLOCK_ACK_OFFLINEAUTH* pstOutParam, int nWaitTime); ///@brief CLIENT_EncryptString ?????? typedef struct tagNET_IN_ENCRYPT_STRING { DWORD dwSize; /// ??????? char szCard[33]; /// ???? BYTE byReserved1[3]; /// ?????? char szKey[33]; /// ??? BYTE byReserved2[3]; /// ?????? } NET_IN_ENCRYPT_STRING; ///@brief CLIENT_EncryptString ?????? typedef struct tagNET_OUT_ENCRYPT_STRING { DWORD dwSize; /// ??????? char szEncryptString[1024]; /// ?????????? } NET_OUT_ENCRYPT_STRING; ///@brief ??????????? (pInParam, pOutParam???????????????) ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_EncryptString(const NET_IN_ENCRYPT_STRING *pInParam, NET_OUT_ENCRYPT_STRING *pOutParam, int nWaitTime); ///@brief CLIENT_PreUploadRemoteFile ??????????(???????????) typedef struct tagNET_IN_PRE_UPLOAD_REMOTE_FILE { DWORD dwSize; /// ??????? char* pszFileSrc; /// ???????? char* pszFileDst; /// ??????????????????? } NET_IN_PRE_UPLOAD_REMOTE_FILE; ///@brief ??????????? typedef enum tagEM_REASON_TYPE { EM_REASON_TYPE_UNKNOWN, /// ?????? EM_REASON_TYPE_OVERNUMBER, /// ??????????? EM_REASON_TYPE_FULLSTORAGE, /// ????????????? EM_REASON_TYPE_TOOLARGE_FILE, /// ???????? EM_REASON_TYPE_INVALID_FILETYPE, /// ????????????? EM_REASON_TYPE_UNAUTH_UPLOAD, /// ????????? EM_REASON_TYPE_EXCEPTION_NAME, /// ????????? EM_REASON_TYPE_TOOLONG_NAME, /// ???????? EM_REASON_TYPE_EXIST_NAME, /// ?????????? } EM_REASON_TYPE; ///@brief CLIENT_PreUploadRemoteFile ??????????(???????????) typedef struct tagNET_OUT_PRE_UPLOAD_REMOTE_FILE { DWORD dwSize; /// ??????? BOOL bContinue2Upload; /// ?????????????????, true:??? false:????? EM_REASON_TYPE emType; /// ???????, ??bContinue2Upload?false?emType???? } NET_OUT_PRE_UPLOAD_REMOTE_FILE; ///@brief ???????????, pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PreUploadRemoteFile(LLONG lLoginID, const NET_IN_PRE_UPLOAD_REMOTE_FILE* pInParam, NET_OUT_PRE_UPLOAD_REMOTE_FILE* pOutParam, int nWaitTime); ///@brief CLIENT_GetInstallDiagnosticStatCaps??? typedef struct tagNET_IN_GET_CAPS_INSTALL_DIAGNOSTIC_STAT { DWORD dwSize; }NET_IN_GET_CAPS_INSTALL_DIAGNOSTIC_STAT; ///@brief ?????? typedef struct tagNET_INSTALL_DIAGNOSTIC_STAT_CAPS_INFO { int nChannel; ///???????? int nEventNum; ///??????? int nEventsCode[32]; ///??????? BYTE bReserved[256]; ///??????? }NET_INSTALL_DIAGNOSTIC_STAT_CAPS_INFO; ///@brief CLIENT_GetInstallDiagnosticStatCaps???? typedef struct tagNET_OUT_GET_CAPS_INSTALL_DIAGNOSTIC_STAT { DWORD dwSize; ///??????? int nCapsNum; ///??????? NET_INSTALL_DIAGNOSTIC_STAT_CAPS_INFO stuCaps[16]; ///?????????? }NET_OUT_GET_CAPS_INSTALL_DIAGNOSTIC_STAT; ///@brief ?????????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetInstallDiagnosticStatCaps(LLONG lLoginID, const NET_IN_GET_CAPS_INSTALL_DIAGNOSTIC_STAT* pInParam, NET_OUT_GET_CAPS_INSTALL_DIAGNOSTIC_STAT* pOutParam, int nWaitTime); ///@brief ??????? typedef struct tagNET_INSTALL_DIAGNOSTIC_STAT_DATALIST { int nPitchAngle; ///??????(???????)??????[-90,90],0????? 180?????? int nYawAngle; ///?????(??????)??????[-90,90],0????? 180?????? int nRollAngle; ///?????(?????????)??????[-90,90],0????? 180?????? int nQuality; ///????????????????[1,100],0?????? int nWidth; ///???????? int nHeight; ///??????? BYTE byReserved[64]; ///??????? }NET_INSTALL_DIAGNOSTIC_STAT_DATALIST; ///@brief ?????????? typedef struct tagNET_INSTALL_DIAGNOSTIC_STAT_RESULT { int nEventCode; /// ????? int nDatalistLen; /// ??????? NET_INSTALL_DIAGNOSTIC_STAT_DATALIST stuDataList[128]; /// ???????? BYTE byReserved[256]; /// ??????? }NET_INSTALL_DIAGNOSTIC_STAT_RESULT; ///@brief ??????????????????? typedef struct tagNET_INSTALL_DIAGNOSTIC_STAT { int nChannel; /// ????? int nResultNum; /// ??????? NET_INSTALL_DIAGNOSTIC_STAT_RESULT stuResult[32]; /// ???????? BYTE byReserved[512]; /// ??????? }NET_INSTALL_DIAGNOSTIC_STAT; ///@brief ??????????????? typedef void (CALLBACK *fInstallDiagnosticStatCallBack)(LLONG lAttachHandle, NET_INSTALL_DIAGNOSTIC_STAT* pBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief ??????? typedef struct tagNET_ATTACH_DIAGNOSTIC_FILTER { int nChannelNum; /// ??????? int nChannels[16]; /// ????????? int nEventNum; /// ??????? int nEventsCode[32]; /// ??????? BYTE byReserved[128]; /// ??????? }NET_ATTACH_DIAGNOSTIC_FILTER; ///@brief ???????????? typedef struct tagNET_IN_ATTACH_INSTALL_DIAGNOSTIC_STAT { DWORD dwSize; /// ??????? NET_ATTACH_DIAGNOSTIC_FILTER stuFilter; /// ??????? fInstallDiagnosticStatCallBack cbDiagnosticStat; /// ?????????? LDWORD dwUser; /// ??????? }NET_IN_ATTACH_INSTALL_DIAGNOSTIC_STAT; ///@brief ????????????? typedef struct tagNET_OUT_ATTACH_INSTALL_DIAGNOSTIC_STAT { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_INSTALL_DIAGNOSTIC_STAT; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachInstallDiagnosticStat(LLONG lLoginID, const NET_IN_ATTACH_INSTALL_DIAGNOSTIC_STAT* pInParam, NET_OUT_ATTACH_INSTALL_DIAGNOSTIC_STAT* pOutParam, int nWaitTime); ///@brief ???????????????? ///@param[in] lAttachHandle ??????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachInstallDiagnosticStat(LLONG lAttachHandle); ///@brief CLIENT_GetSCADADeviceStatus??? typedef struct tagNET_IN_GET_SCADA_STATUS { DWORD dwSize; /// ??????? }NET_IN_GET_SCADA_STATUS; ///@brief ???????? typedef struct tagNET_SCADA_DEV_INFO { char szDeviceID[32]; /// ???ID char szDeviceName[32]; /// ??????? EM_SCADA_DEVICE_STATUS emDevStatus; /// ????? }NET_SCADA_DEV_INFO; ///@brief ?????? typedef struct tagNET_SCADA_STATUS_INFO { EM_ALARM_SCADA_DEV_TYPE emDevType; /// ??????? int nDevInfoNum; /// ?????????? NET_SCADA_DEV_INFO stuDevInfo[128]; /// ?????? }NET_SCADA_STATUS_INFO; ///@brief CLIENT_GetSCADADeviceStatus???? typedef struct tagNET_OUT_GET_SCADA_STATUS { DWORD dwSize; /// ??????? int nDevStatusNum; /// ???????????? NET_SCADA_STATUS_INFO stuStatusInfo[64]; /// ???????? }NET_OUT_GET_SCADA_STATUS; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSCADADeviceStatus(LLONG lLoginID, const NET_IN_GET_SCADA_STATUS* pInParam, NET_OUT_GET_SCADA_STATUS* pOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_IN_GET_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? UINT nID; /// ?????? UINT nChannel; /// ????? }NET_IN_GET_CALIBRATEINFO_INFO; ///@brief ??????????? typedef struct tagNET_GET_CALIBRATEINFO_CALCINFO_INFO { float fPosition[3]; /// ???????????? UINT nLocation[2]; /// ??????????????? }NET_GET_CALIBRATEINFO_CALCINFO_INFO; ///@brief ?????????? typedef struct tagNET_GET_CALIBRATEINFO_POINT_INFO { UINT nID; /// ?????? char szName[DH_COMMON_STRING_128]; /// ???????? BOOL bEnable; /// ??? UINT nLongitude; /// ???? UINT nLatitude; /// ???? double fAltitude; /// ???? NET_GET_CALIBRATEINFO_CALCINFO_INFO stuCalcInfo[5][2]; /// ???????? ??????????????? ??????????????????? int nPointNum; /// ??????? BYTE byReserved[4]; /// ?????? }NET_GET_CALIBRATEINFO_POINT_INFO; ///@brief ?????????????? typedef struct tagNET_OUT_GET_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? NET_GET_CALIBRATEINFO_POINT_INFO stuPointInfo; /// ??????? }NET_OUT_GET_CALIBRATEINFO_INFO; ///@brief ????????????? typedef struct tagNET_IN_SET_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? NET_GET_CALIBRATEINFO_POINT_INFO stuPointInfo; ///??????? }NET_IN_SET_CALIBRATEINFO_INFO; ///@brief ?????????????? typedef struct tagNET_OUT_SET_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_CALIBRATEINFO_INFO; ///@brief ????????????? typedef struct tagNET_IN_DELETE_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? UINT nID; /// ????ID }NET_IN_DELETE_CALIBRATEINFO_INFO; ///@brief ?????????????? typedef struct tagNET_OUT_DELETE_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? }NET_OUT_DELETE_CALIBRATEINFO_INFO; ///@brief ????????????????? typedef struct tagNET_IN_GETALL_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? UINT nChannel; /// ????? }NET_IN_GETALL_CALIBRATEINFO_INFO; ///@brief GPS??? typedef struct tagNET_DEVLOCATION_INFO { UINT unLongitude; /// ???? ??????????????????0-360?? UINT unLatitude; /// ???? ??????????????????0-360?? double dbAltitude; /// ???? ?????? BOOL bConfigEnable; /// true??GPS?????????????? float fHeight; /// ?????? ?????? }NET_DEVLOCATION_INFO; ///@brief ????????? typedef struct tagNET_CALIBRATE_UNIT_INFO { UINT nHeight; /// ?????? UINT nWidth; /// ?????? float nPosition[3]; /// ???????(P/T/Z ?????) UINT nLocation[2]; /// ???????? UINT nHFOV; /// ?????????(??????0.01??) UINT nVFOV; /// ?????????(??????0.01??) }NET_CALIBRATE_UNIT_INFO; ///@brief ???????? typedef struct tagNET_CALIBRATE_INFO { NET_CALIBRATE_UNIT_INFO stuCalibrateUnitInfo[5][2]; ///?????????? int nInfoNum; /// ??????????? }NET_CALIBRATE_INFO; ///@brief ??????? typedef struct tagNET_LOCATION_CALIBRATE_POINT_INFO { UINT nID; /// ????ID char szName[DH_COMMON_STRING_128]; /// ???????? BOOL bEnable; /// ??? UINT nLongitude; /// ???? UINT nLatitude; /// ???? double fAltitude; /// ???? NET_CALIBRATE_INFO stuCalibrateInfo; /// ?????????? BYTE byReserved1[4]; /// ?????? }NET_LOCATION_CALIBRATE_POINT_INFO; #define MAX_CALIBRATE_POINT_NUM 64 ///?????????? ///@brief ???????? typedef struct tagNET_LOCATION_CALIBRATE_INFO { UINT nVisualMaxHFOV; /// ??????????? UINT nVisualMaxVFOV; /// ???????????? UINT nThermoMaxHFOV; /// ??????????? UINT nThermoMaxVFOV; /// ???????????? NET_LOCATION_CALIBRATE_POINT_INFO stuPointInfo[MAX_CALIBRATE_POINT_NUM]; /// ??????? int nPointNum; /// ??????? BYTE byReserved1[4]; /// ?????? }NET_LOCATION_CALIBRATE_INFO; ///@brief ???????????????? typedef struct tagNET_OUT_GETALL_CALIBRATEINFO_INFO { DWORD dwSize; /// ??????? NET_DEVLOCATION_INFO stuGPSInfo; /// GPS??? NET_LOCATION_CALIBRATE_INFO stuLocationCalibrateInfo; /// ????? }NET_OUT_GETALL_CALIBRATEINFO_INFO; ///@brief ???????????????? typedef enum tagEM_CALIBRATEINFO_OPERATE_TYPE { EM_CALIBRATEINFO_OPERATE_GET, /// ????????????, pStuInParam = NET_IN_GET_CALIBRATEINFO_INFO, pStuOutParam = NET_OUT_GET_CALIBRATEINFO_INFO EM_CALIBRATEINFO_OPERATE_SET, /// ?????????????, pStuInParam = NET_IN_SET_CALIBRATEINFO_INFO, pStuOutParam = NET_OUT_SET_CALIBRATEINFO_INFO EM_CALIBRATEINFO_OPERATE_DELETE, /// ????????????, pStuInParam = NET_IN_DELETE_CALIBRATEINFO_INFO, pStuOutParam = NET_OUT_DELETE_CALIBRATEINFO_INFO EM_CALIBRATEINFO_OPERATE_GETALL, /// ????????????, pStuInParam = NET_IN_GETALL_CALIBRATEINFO_INFO, pStuOutParam = NET_OUT_GETALL_CALIBRATEINFO_INFO }EM_CALIBRATEINFO_OPERATE_TYPE; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????? ///@param[in] pStuInParam ??????????, ???????????????????,????????emType???????? ///@param[out] pStuOutParam ??????????, ???????????????????,????????emType???????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_OperateCalibrateInfo(LLONG lLoginID, EM_CALIBRATEINFO_OPERATE_TYPE emType, const void* pStuInParam, void* pStuOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_PAN_GROUP_INFO { char szName[32]; /// ??????????? unsigned int nSpeed; /// ????????0~7 BOOL bEnable; /// ??? unsigned int nInterval; /// ??????,????:?? BYTE byReserved[64]; /// ??????? }NET_PAN_GROUP_INFO; ///@brief CLIENT_PTZSetPanGroup????????? typedef struct tagNET_IN_SET_PAN_GROUP_PARAM { DWORD dwSize; /// ??????? int nChannel; /// ????? unsigned int nIndex; /// ??????????????1??? NET_PAN_GROUP_INFO stuPanGroupInfo; /// ?????????? }NET_IN_SET_PAN_GROUP_PARAM; ///@brief CLIENT_PTZSetPanGroup?????????? typedef struct tagNET_OUT_SET_PAN_GROUP_PARAM { DWORD dwSize; /// ??????? }NET_OUT_SET_PAN_GROUP_PARAM; ///@brief ?????????????????(????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZSetPanGroup(LLONG lLoginID, const NET_IN_SET_PAN_GROUP_PARAM* pInParam, NET_OUT_SET_PAN_GROUP_PARAM* pOutParam, int nWaitTime); ///@brief CLIENT_PTZGetPanGroup??????? typedef struct tagNET_IN_GET_PAN_GROUP_PARAM { DWORD dwSize; /// ??????? int nChannel; /// ????? }NET_IN_GET_PAN_GROUP_PARAM; ///@brief CLIENT_PTZGetPanGroup???????? typedef struct tagNET_OUT_GET_PAN_GROUP_PARAM { DWORD dwSize; /// ??????? int nRetNum; /// ????????? NET_PAN_GROUP_INFO stuPanGroupInfo[8]; /// ?????????? }NET_OUT_GET_PAN_GROUP_PARAM; ///@brief ????????????????(????????) ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZGetPanGroup(LLONG lLoginID, const NET_IN_GET_PAN_GROUP_PARAM* pInParam, NET_OUT_GET_PAN_GROUP_PARAM* pOutParam, int nWaitTime); ///@brief CLIENT_PTZGotoPanPosition ??????? typedef struct tagNET_IN_GOTO_PAN_POSITION { DWORD dwSize; /// ??????? int nChannel; /// ????? unsigned int nIndex; /// ???????????1??? }NET_IN_GOTO_PAN_POSITION; ///@brief CLIENT_PTZGotoPanPosition ???????? typedef struct tagNET_OUT_GOTO_PAN_POSITION { DWORD dwSize; /// ??????? }NET_OUT_GOTO_PAN_POSITION; ///@brief ?????????????(????????) ///@param[in] lLogindID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZGotoPanPosition(LLONG lLogindID, const NET_IN_GOTO_PAN_POSITION* pInParam, NET_OUT_GOTO_PAN_POSITION* pOutParam, int nWaitTime); ///@brief ??????????? typedef enum tagNET_EM_PAN_GROUP_LIMIT_MODE { NET_EM_PAN_GROUP_LIMIT_MODE_LEFT = 1, /// ???? NET_EM_PAN_GROUP_LIMIT_MODE_RIGHT, /// ???? NET_EM_PAN_GROUP_LIMIT_MODE_UP, /// ???? NET_EM_PAN_GROUP_LIMIT_MODE_DOWN, /// ????? } NET_EM_PAN_GROUP_LIMIT_MODE; ///@brief ????????????? ??????? typedef struct tagNET_IN_PAN_GROUP_LIMIT_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????????????? 0~???????? unsigned int nIndex; /// ???????????1??? NET_EM_PAN_GROUP_LIMIT_MODE emPanGroupLimitMode; /// ?????????????? } NET_IN_PAN_GROUP_LIMIT_INFO; ///@brief ????????????? ??????? typedef struct tagNET_OUT_PAN_GROUP_LIMIT_INFO { DWORD dwSize; } NET_OUT_PAN_GROUP_LIMIT_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZSetPanGroupLimit(LLONG lLoginID, const NET_IN_PAN_GROUP_LIMIT_INFO *pstInParam, NET_OUT_PAN_GROUP_LIMIT_INFO *pstOutParam, DWORD dwWaitTime); ///@brief ??????????? ???Position????????? typedef struct tagNET_PTZ_POSITION { double dbPositionX; ///?????????????[0.0~360.0] double dbPositionY; ///??????????????[-180.0~180.0] double dbZoom; ///?????????????????????????? }NET_PTZ_POSITION; ///@brief ???????? typedef struct tagNET_PTZ_PRESET_LIST_INFO { BOOL bEnable; /// ????????????? char szName[256]; /// ???????? NET_PTZ_POSITION stuPosition; /// ??????????? int nTiltBoundary; /// ?????????????????????????????????????0??????????????????????????????????????????????????????????1????????????????2???????????? char szReserve[32]; ///?????? } NET_PTZ_PRESET_LIST_INFO; ///@brief ???????????? ??????? typedef struct tagNET_IN_SET_PRESET_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????????????? 0~???????? int nIndex; /// ??????: -1???preset????????????, 1~PresetMax???????????????????? int nPresetInfoNum; /// ?????????????????????, ????512 NET_PTZ_PRESET_LIST_INFO* pstuPresetInfo; /// ?????????? ??????????????????sizeof(NET_PTZ_PRESET_LIST_INFO)*nPresetInfoNum } NET_IN_SET_PRESET_INFO; ///@brief ???????????? ??????? typedef struct tagNET_OUT_SET_PRESET_INFO { DWORD dwSize; /// ??????? } NET_OUT_SET_PRESET_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZSetPreset(LLONG lLoginID, const NET_IN_SET_PRESET_INFO *pstInParam, NET_OUT_SET_PRESET_INFO *pstOutParam, DWORD dwWaitTime); ///@brief ??????????? ??????? typedef struct tagNET_IN_GET_PRESET_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????????????? 0~???????? int nIndex; /// ??????: -1???preset????????????, 1~PresetMax???????????????????? } NET_IN_GET_PRESET_INFO; ///@brief ??????????? ??????? typedef struct tagNET_OUT_GET_PRESET_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????????????? 0~???????? int nIndex; /// ??????: -1???preset????????????, 1~PresetMax???????????????????? int nPresetInfoNum; /// ?????????????????????, ????512 NET_PTZ_PRESET_LIST_INFO* pstuPresetInfo; /// ????????????????????????????sizeof(NET_PTZ_PRESET_LIST_INFO)*nPresetInfoNum int nRetPresetInfoNum; /// ??????????????????????????512 } NET_OUT_GET_PRESET_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZGetPreset(LLONG lLoginID, const NET_IN_GET_PRESET_INFO *pstInParam, NET_OUT_GET_PRESET_INFO *pstOutParam, DWORD dwWaitTime); ///@brief CLIENT_PTZStartTour ?????????? typedef struct tagNET_IN_PTZ_START_TOUR { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? int nIndex; /// ?????????? }NET_IN_PTZ_START_TOUR; ///@brief CLIENT_PTZStartTour ?????????? typedef struct tagNET_OUT_PTZ_START_TOUR { DWORD dwSize; /// ??????? }NET_OUT_PTZ_START_TOUR; ///@brief ?????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZStartTour(LLONG lLoginID, const NET_IN_PTZ_START_TOUR *pstuInParam, NET_OUT_PTZ_START_TOUR *pstuOutParam, int nWaitTime); ///@brief CLIENT_PTZStopTour ?????????? typedef struct tagNET_IN_PTZ_STOP_TOUR { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? int nIndex; /// ?????????? }NET_IN_PTZ_STOP_TOUR; ///@brief CLIENT_PTZStopTour ?????????? typedef struct tagNET_OUT_PTZ_STOP_TOUR { DWORD dwSize; /// ??????? }NET_OUT_PTZ_STOP_TOUR; ///@brief ????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZStopTour(LLONG lLoginID, const NET_IN_PTZ_STOP_TOUR *pstuInParam, NET_OUT_PTZ_STOP_TOUR *pstuOutParam, int nWaitTime); ///@brief ??????????????????????? ??????? typedef struct tagNET_IN_GET_TOUR_POINTS { DWORD dwSize; /// ??????? int nChannel; /// ????? int nIndex; /// ?????????? int reserved; /// ?????? }NET_IN_GET_TOUR_POINTS; ///@brief ??????????? typedef struct tagPresetPointParams { int nIndex; /// ??????????????,??0??? int nStayTime; /// ??????????, ?????? int nSpeed; /// ????????????????, 1-10????? char reserved[68]; /// ?????? }PresetPointParams; ///@brief ??????????????????????? ??????? typedef struct tagNET_OUT_GET_TOUR_POINTS { DWORD dwSize; /// ??????? int nPointNum; /// ??????????????? PresetPointParams stuPoints[128]; /// ??????????????????? }NET_OUT_GET_TOUR_POINTS; ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZGetToursPoints(LLONG lLoginID, const NET_IN_GET_TOUR_POINTS *pstInParam, NET_OUT_GET_TOUR_POINTS *pstOutParam, DWORD dwWaitTime); ///@brief ???????????????????, ??? typedef struct tagNET_IN_RESUME_PTZ_LASTTASK_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ????????????? 0~???????? } NET_IN_RESUME_PTZ_LASTTASK_INFO; ///@brief ???????????????????, ???? typedef struct tagNET_OUT_RESUME_PTZ_LASTTASK_INFO { DWORD dwSize; /// ??????? } NET_OUT_RESUME_PTZ_LASTTASK_INFO; ///@brief ????????? ///@brief 1???????????????????????????????????????????????????????????????????????????????????? ///@brief 2?????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ResumePtzLastTask(LLONG lLoginID, const NET_IN_RESUME_PTZ_LASTTASK_INFO *pstInParam, NET_OUT_RESUME_PTZ_LASTTASK_INFO *pstOutParam, DWORD dwWaitTime); ///@brief ?????????????, ??? typedef struct tagNET_IN_PAUSE_PTZ_ACTION_INFO { DWORD dwSize; /// ??????? int nChannelID; /// ???ID } NET_IN_PAUSE_PTZ_ACTION_INFO; ///@brief ??????????????????? typedef struct tagNET_OUT_PAUSE_PTZ_ACTION_INFO { DWORD dwSize; /// ??????? } NET_OUT_PAUSE_PTZ_ACTION_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PausePtzAction(LLONG lLoginID, const NET_IN_PAUSE_PTZ_ACTION_INFO *pstInParam, NET_OUT_PAUSE_PTZ_ACTION_INFO *pstOutParam, DWORD dwWaitTime); ///@brief ???????????????????, ??? typedef struct tagNET_IN_SET_PTZ_WASH_POSISTION_INFO { DWORD dwSize; /// ??????? UINT nIndex; /// 0 - ??????????, 1 - ????????? float fHeight; /// ?????????????? UINT nChannelID; /// ???ID }NET_IN_SET_PTZ_WASH_POSISTION_INFO; ///@brief ???????????????????????? typedef struct tagNET_OUT_SET_PTZ_WASH_POSISTION_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_PTZ_WASH_POSISTION_INFO; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PtzSetWashPosistion(LLONG lLoginID, const NET_IN_SET_PTZ_WASH_POSISTION_INFO *pstInParam, NET_OUT_SET_PTZ_WASH_POSISTION_INFO *pstOutParam, DWORD dwWaitTime); ///@brief ?????????????, ??? typedef struct tagNET_IN_GET_PTZ_WASH_INFO { DWORD dwSize; /// ??????? UINT nChannelID; /// ???ID }NET_IN_GET_PTZ_WASH_INFO; ///@brief ?????? typedef struct tagNET_PTZ_WASH_INFO { float fAnagle; /// ????????????? float fDistance; /// ?????????????? char szReserved[256]; /// ??????? }NET_PTZ_WASH_INFO; ///@brief ??????????????????? typedef struct tagNET_OUT_GET_PTZ_WASH_INFO { DWORD dwSize; /// ??????? NET_PTZ_WASH_INFO stuWashInfo; /// ?????? }NET_OUT_GET_PTZ_WASH_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] dwWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PtzGetWashInfo(LLONG lLoginID, const NET_IN_GET_PTZ_WASH_INFO *pstInParam, NET_OUT_GET_PTZ_WASH_INFO *pstOutParam, DWORD dwWaitTime); ///@brief CLIENT_PTZSetZoomValue ?????????? typedef struct tagNET_IN_PTZ_SET_ZOOM_VALUE { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? int nValue; /// ?????????10????? }NET_IN_PTZ_SET_ZOOM_VALUE; ///@brief CLIENT_PTZSetZoomValue ?????????? typedef struct tagNET_OUT_PTZ_SET_ZOOM_VALUE { DWORD dwSize; /// ??????? }NET_OUT_PTZ_SET_ZOOM_VALUE; ///@brief ????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZSetZoomValue(LLONG lLoginID, const NET_IN_PTZ_SET_ZOOM_VALUE *pstuInParam, NET_OUT_PTZ_SET_ZOOM_VALUE *pstuOutParam, int nWaitTime); ///@brief CLIENT_PTZSetFocusValue ?????????? typedef struct tagNET_IN_PTZ_SET_FOCUS_VALUE { DWORD dwSize; /// ??????? int nChannel; /// ?????, ??0??? int nValue; /// ????????????, ????0.01mm??????100?????. }NET_IN_PTZ_SET_FOCUS_VALUE; ///@brief CLIENT_PTZSetFocusValue ?????????? typedef struct tagNET_OUT_PTZ_SET_FOCUS_VALUE { DWORD dwSize; /// ??????? }NET_OUT_PTZ_SET_FOCUS_VALUE; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZSetFocusValue(LLONG lLoginID, const NET_IN_PTZ_SET_FOCUS_VALUE *pstuInParam, NET_OUT_PTZ_SET_FOCUS_VALUE *pstuOutParam, int nWaitTime); ///@brief CLIENT_PTZSetTour ?????????? typedef struct tagNET_IN_PTZ_SET_TOUR { DWORD dwSize; /// ??????? UINT nindex; /// ??????????,??1??? char szname[64]; /// ??????????? int nChannel; /// ????? }NET_IN_PTZ_SET_TOUR; ///@brief CLIENT_PTZSetTour ?????????? typedef struct tagNET_OUT_PTZ_SET_TOUR { DWORD dwSize; /// ??????? }NET_OUT_PTZ_SET_TOUR; ///@brief ??????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZSetTour(LLONG lLoginID, const NET_IN_PTZ_SET_TOUR *pstuInParam, NET_OUT_PTZ_SET_TOUR *pstuOutParam, int nWaitTime); ///@brief CLIENT_PTZIntelliSetTrackObjectInfo ?????????? typedef struct tagNET_IN_PTZ_INTELLI_SET_TRACK_OBJECT_INFO { DWORD dwSize; /// ??????? BOOL bSpeed; /// ?????????????????? int nSpeed; /// ??????????? BOOL bAzimuth; /// ?????????????????? int nAzimuth; /// ??????????? BOOL bAction; /// ?????????????? int nAction; /// ???????,????0 BOOL bLongitude; /// ???????????? UINT nLongitude; /// ??????????????????? BOOL bLatitude; /// ?????????????? UINT nLatitude; /// ????????????????????? BOOL bDistance; /// ????????????? int nDistance; /// ?????????????????100????? BOOL bChannel; /// ?????????????? int nChannel; /// ?????????????1?????2????? BOOL bTime; /// ???????????????? UINT nTime; /// ??????????????UTC(1970-1-1 00:00:00)???? BOOL bTargetId; /// ???ID??????? UINT nTargetId; /// ???ID int nPositionNum; /// ????????????????? int nPosition[3]; /// ????????????? BOOL bExtBusinessID; /// ??????????????????? char szExtBusinessID[64]; ///?????????????????????????????? }NET_IN_PTZ_INTELLI_SET_TRACK_OBJECT_INFO; ///@brief CLIENT_PTZIntelliSetTrackObjectInfo ?????????? typedef struct tagNET_OUT_PTZ_INTELLI_SET_TRACK_OBJECT_INFO { DWORD dwSize; /// ??????? }NET_OUT_PTZ_INTELLI_SET_TRACK_OBJECT_INFO; ///@brief ????????????????????????????????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZIntelliSetTrackObjectInfo(LLONG lLoginID, const NET_IN_PTZ_INTELLI_SET_TRACK_OBJECT_INFO *pstuInParam, NET_OUT_PTZ_INTELLI_SET_TRACK_OBJECT_INFO *pstuOutParam, int nWaitTime); ///@brief CLIENT_PTZAdjustIris ?????????? typedef struct tagNET_IN_PTZ_ADJUST_IRIS { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? float fChange; /// ?????, ???????-1~1 }NET_IN_PTZ_ADJUST_IRIS; ///@brief CLIENT_PTZAdjustIris ?????????? typedef struct tagNET_OUT_PTZ_ADJUST_IRIS { DWORD dwSize; /// ??????? }NET_OUT_PTZ_ADJUST_IRIS; ///@brief ?????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZAdjustIris(LLONG lLoginID, const NET_IN_PTZ_ADJUST_IRIS *pstuInParam, NET_OUT_PTZ_ADJUST_IRIS *pstuOutParam, int nWaitTime); ///@brief CLIENT_PTZLensInit ?????????? typedef struct tagNET_IN_PTZ_LENS_INIT { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? }NET_IN_PTZ_LENS_INIT; ///@brief CLIENT_PTZLensInit ?????????? typedef struct tagNET_OUT_PTZ_LENS_INIT { DWORD dwSize; /// ??????? }NET_OUT_PTZ_LENS_INIT; ///@brief ???????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PTZLensInit(LLONG lLoginID, const NET_IN_PTZ_LENS_INIT *pstuInParam, NET_OUT_PTZ_LENS_INIT *pstuOutParam, int nWaitTime); ///@brief CLIENT_TransmitCmd ?????????? typedef struct tagNET_IN_TRANSMIT_CMD { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? int nHannel; /// ?????????0 : ???????? BOOL bReply; /// ??????????????? int nMessageCount; /// ??????????? int* pMessage; /// ?????????????????????????????????????????DVR???????????,??????????????? }NET_IN_TRANSMIT_CMD; ///@brief CLIENT_TransmitCmd ?????????? typedef struct tagNET_OUT_TRANSMIT_CMD { DWORD dwSize; /// ??????? int nChannel; /// ?????, ???? 0~???????? int nHannel; /// ?????????0 : ???????? int nRetMessageCount; /// ?????????? int nMaxMessageCount; /// ???????,?pMessage??????????????????? int* pMessage; /// ???????????????????????????????????????????????????? }NET_OUT_TRANSMIT_CMD; ///@brief RPC???? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TransmitCmd(LLONG lLoginID, const NET_IN_TRANSMIT_CMD *pstuInParam, NET_OUT_TRANSMIT_CMD *pstuOutParam, int nWaitTime); ///@brief CLIENT_ManualTest ?????????? typedef struct tagNET_IN_MANUAL_TEST { DWORD dwSize; /// ??????? DWORD dwTestID; /// ????ID??????????????ID????? UINT nChannel; /// ???????????????????????????SIA?????? }NET_IN_MANUAL_TEST; ///@brief CLIENT_ManualTest ?????????? typedef struct tagNET_OUT_MANUAL_TEST { DWORD dwSize; /// ??????? int nTestResult; /// ??? 1???????????????????? 2?????????????????????????? 3????????? }NET_OUT_MANUAL_TEST; ///@brief ??????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ManualTest(LLONG lLoginID, const NET_IN_MANUAL_TEST *pstuInParam, NET_OUT_MANUAL_TEST *pstuOutParam, int nWaitTime); ///@brief CLIENT_AddAlarmUser ?????????? typedef struct tagNET_IN_ADD_ALARM_USER { DWORD dwSize; /// ??????? NET_ALARM_USER stuAlarmUser; /// ??????????? }NET_IN_ADD_ALARM_USER; ///@brief CLIENT_AddAlarmUser ?????????? typedef struct tagNET_OUT_ADD_ALARM_USER { DWORD dwSize; /// ??????? }NET_OUT_ADD_ALARM_USER; ///@brief ?????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddAlarmUser(LLONG lLoginID, const NET_IN_ADD_ALARM_USER *pstuInParam, NET_OUT_ADD_ALARM_USER *pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyAlarmUser ?????????? typedef struct tagNET_IN_MODIFY_ALARM_USER { DWORD dwSize; /// ??????? char szUserID[64]; /// ???ID??????????? NET_ALARM_USER stuAlarmUser; /// ?????????? }NET_IN_MODIFY_ALARM_USER; ///@brief CLIENT_ModifyAlarmUser ?????????? typedef struct tagNET_OUT_MODIFY_ALARM_USER { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_ALARM_USER; ///@brief ????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyAlarmUser(LLONG lLoginID, const NET_IN_MODIFY_ALARM_USER *pstuInParam, NET_OUT_MODIFY_ALARM_USER *pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyAlarmUserPassword ?????????? typedef struct tagNET_IN_MODIFY_ALARM_USER_PASSWORD { DWORD dwSize; /// ??????? char szUserID[64]; /// ???ID??????????? char szOldPassword[64]; /// ?????? char szNewPassword[64]; /// ?????? }NET_IN_MODIFY_ALARM_USER_PASSWORD; ///@brief CLIENT_ModifyAlarmUserPassword ?????????? typedef struct tagNET_OUT_MODIFY_ALARM_USER_PASSWORD { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_ALARM_USER_PASSWORD; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyAlarmUserPassword(LLONG lLoginID, const NET_IN_MODIFY_ALARM_USER_PASSWORD *pstuInParam, NET_OUT_MODIFY_ALARM_USER_PASSWORD *pstuOutParam, int nWaitTime); ///@brief CLIENT_DeleteAlarmUser ?????????? typedef struct tagNET_IN_DELETE_ALARM_USER { DWORD dwSize; /// ??????? char szUserID[64]; /// ???ID??????????? }NET_IN_DELETE_ALARM_USER; ///@brief CLIENT_DeleteAlarmUser ?????????? typedef struct tagNET_OUT_DELETE_ALARM_USER { DWORD dwSize; /// ??????? }NET_OUT_DELETE_ALARM_USER; ///@brief ?????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteAlarmUser(LLONG lLoginID, const NET_IN_DELETE_ALARM_USER *pstuInParam, NET_OUT_DELETE_ALARM_USER *pstuOutParam, int nWaitTime); ///@brief CLIENT_GetAlarmUserInfoAll ?????????? typedef struct tagNET_IN_GET_ALARM_USER_INFO_ALL { DWORD dwSize; /// ??????? }NET_IN_GET_ALARM_USER_INFO_ALL; ///@brief CLIENT_GetAlarmUserInfoAll ?????????? typedef struct tagNET_OUT_GET_ALARM_USER_INFO_ALL { DWORD dwSize; /// ??????? int nAlarmUserNum; /// ?????????????? NET_ALARM_USER stuAlarmUser[512]; /// ?????????? }NET_OUT_GET_ALARM_USER_INFO_ALL; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAlarmUserInfoAll(LLONG lLoginID, const NET_IN_GET_ALARM_USER_INFO_ALL *pstuInParam, NET_OUT_GET_ALARM_USER_INFO_ALL *pstuOutParam, int nWaitTime); ///@brief CLIENT_GetAlarmUserInfo ?????????? typedef struct tagNET_IN_GET_ALARM_USER_INFO { DWORD dwSize; /// ??????? char szUserID[64]; /// ???ID??????????? }NET_IN_GET_ALARM_USER_INFO; ///@brief CLIENT_GetAlarmUserInfo ?????????? typedef struct tagNET_OUT_GET_ALARM_USER_INFO { DWORD dwSize; /// ??????? NET_ALARM_USER stuAlarmUser; /// ?????? }NET_OUT_GET_ALARM_USER_INFO; ///@brief ???????ID????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAlarmUserInfo(LLONG lLoginID, const NET_IN_GET_ALARM_USER_INFO *pstuInParam, NET_OUT_GET_ALARM_USER_INFO *pstuOutParam, int nWaitTime); //////////////////////////////????????????? ???///////////////////////////////// #define MAX_ANALYSE_REMAIN_CAPACITY_NUM 32 /// ????????????????? #define MAX_ANALYSE_RULE_COUNT 32 /// ?????????????? #define MAX_ANALYSE_PICTURE_FILE_NUM 32 /// ???????????? #define MAX_ANALYSE_TASK_NUM 64 /// ????????????????? #define MAX_ANALYSE_FILTER_EVENT_NUM 64 /// ????????????????? #define MAX_ANALYSE_ALGORITHM_NUM 16 /// ????????? #define MAX_ANALYSE_TOTALCAPS_NUM 32 /// ????????????????????? ///@brief ????????????????????? typedef struct tagNET_REMAIN_ANALYSE_CAPACITY { UINT nMaxStreamNum; /// ?????????????????? EM_SCENE_CLASS_TYPE emClassType; /// ???????? BYTE byReserved[1024]; /// ??????? } NET_REMAIN_ANALYSE_CAPACITY; ///@brief ?????????????????????? typedef struct tagNET_REMAIN_ANALYSE_TOTAL_CAPACITY { EM_SCENE_CLASS_TYPE emClassType; /// ?????? UINT nNumber; /// ????????????????????????? BYTE byReserved[256]; /// ?????? } NET_REMAIN_ANALYSE_TOTAL_CAPACITY; ///@brief ??????????????????????? typedef struct tagNET_REMAIN_PICTURE_ANALYSE_CAPACITY { UINT nMaxStreamNum; /// ?????????????????? EM_SCENE_CLASS_TYPE emClassType; /// ???????? BYTE byReserved[1024]; /// ??????? } NET_REMAIN_PICTURE_ANALYSE_CAPACITY; ///@brief ???????????????????????? typedef struct tagNET_REMAIN_PICTURE_ANALYSE_TOTAL_CAPACITY { EM_SCENE_CLASS_TYPE emClassType; /// ?????? UINT nNumber; /// ????????????????????????? BYTE byReserved[256]; /// ?????? } NET_REMAIN_PICTURE_ANALYSE_TOTAL_CAPACITY; ///@brief ?????????? typedef enum tagEM_REPOSITORY_TYPE { EM_REPOSITORY_TYPE_UNKNOWN = -1, /// ??? EM_REPOSITORY_TYPE_BLOCKLIST, /// ????????????? EM_REPOSITORY_TYPE_ALLOWLIST, /// ?????????????? EM_REPOSITORY_TYPE_STATIC, /// ????? EM_REPOSITORY_TYPE_SNAPSHOT, /// ???? } EM_REPOSITORY_TYPE; ///@brief ??????????? typedef struct tagNET_FEATURE_MATCH { EM_SCENE_CLASS_TYPE emClassType; /// ?????? BYTE byReserved1[4]; /// ?????? EM_REPOSITORY_TYPE emRepositoryType[16]; /// ?????????????? int nRepositoryTypeNum; /// ????????????? UINT nComparePerSecond; /// ????????????????/s UINT nFeatureCapacity; /// ?????????????????????????????????? UINT nFreeFeatureCapacity; /// ??????????????????????????????????? BYTE byReserved[512]; /// ??????? }NET_FEATURE_MATCH; ///@brief ?????????????? typedef struct tagNET_CB_REMAIN_CAPACITY { UINT nRemainCapacityNum; /// ?????????????????? NET_REMAIN_ANALYSE_CAPACITY stuRemainCapacities[MAX_ANALYSE_REMAIN_CAPACITY_NUM]; /// ?????????????? NET_REMAIN_ANALYSE_TOTAL_CAPACITY stuTotalCapacity[32]; /// ?????????????????????? UINT nTotalCapacityNum; /// ?????????????????????????? UINT nRemainDecodeCaps; /// ??????????????????????????? UINT nRemainComputingCaps; /// ??????? NET_REMAIN_PICTURE_ANALYSE_CAPACITY stuRemainPictureCapacities[32]; /// ???????????????? UINT nRemainPictureCapacityNum; /// ?????????????????? UINT nTotalPictureCapacityNum; /// ???????????????????????????? NET_REMAIN_PICTURE_ANALYSE_TOTAL_CAPACITY stuTotalPictureCapacity[32]; /// ???????????????????????? NET_FEATURE_MATCH stuFeatureMatch[32]; /// ??????????? UINT nFeatureMatchNum; /// ??????????????? BYTE byReserved[1016]; /// ??????? } NET_CB_REMAIN_CAPACITY; ///@brief ???????????????????????????,lAttachHandle??CLIENT_IntelliAttachResource????? typedef void (CALLBACK *fAttachRemainAnalyseResourceCB) (LLONG lAttachHandle, NET_CB_REMAIN_CAPACITY* pstRemainCapacity, LDWORD dwUser); ///@brief CLIENT_AttachRemainAnalyseResource ??????????? typedef struct tagNET_IN_ATTACH_REMAIN_ANALYSE_RESOURCE { DWORD dwSize; /// ??????? BYTE byReserved[4]; /// ?????????? fAttachRemainAnalyseResourceCB cbAttachResource; /// ???????????????????? LDWORD dwUser; /// ??????? } NET_IN_ATTACH_REMAIN_ANALYSE_RESOURCE; ///@brief ???????????????? typedef enum tagEM_DATA_SOURCE_TYPE { EM_DATA_SOURCE_REMOTE_UNKNOWN = 0, /// ??? EM_DATA_SOURCE_REMOTE_REALTIME_STREAM = 1, /// ??????? , ??? NET_REMOTE_REALTIME_STREAM_INFO EM_DATA_SOURCE_PUSH_PICFILE, /// ?????????????, ??? NET_PUSH_PICFILE_INFO EM_DATA_SOURCE_REMOTE_VIDEO_FILE, /// ?????????, ??? NET_REMOTE_VIDEO_FILE_INFO EM_DATA_SOURCE_REMOTE_PICTURE_FILE, /// ????????, ??? NET_REMOTE_PICTURE_FILE_INFO EM_DATA_SOURCE_OFFLINE_VIDEO_FILE, /// ????????????????????????????, ??? NET_OFFLINE_VIDEO_FILE_INFO EM_DATA_SOURCE_PUSH_PICFILE_BYRULE, /// ?????????????????????????????????????????????????????????????????????????????????????????, ??? NET_PUSH_PICFILE_BYRULE_INFO EM_DATA_SOURCE_LOCAL_STREAM, /// ????????, ??? NET_LOCAL_STREAM_INFO EM_DATA_SOURCE_ALL_SOURCE_TYPE, /// ????????????????????CLIENT_RemoveAnalyseTaskByType???????????????????????????????? } EM_DATA_SOURCE_TYPE; ///@brief ??????????? typedef enum tagNET_EM_FACEFEATURE_TYPE { NET_EM_FACEFEATURE_UNKNOWN, /// ??? NET_EM_FACEFEATURE_SEX, /// ??? NET_EM_FACEFEATURE_AGE, /// ???? NET_EM_FACEFEATURE_EMOTION, /// ???? NET_EM_FACEFEATURE_GLASSES, /// ????? NET_EM_FACEFEATURE_EYE, /// ????? NET_EM_FACEFEATURE_MOUTH, /// ????? NET_EM_FACEFEATURE_MASK, /// ?????? NET_EM_FACEFEATURE_BEARD, /// ?????? NET_EM_FACEFEATURE_ATTRACTIVE, /// ????? } NET_EM_FACEFEATURE_TYPE; ///@brief ???????EVENT_IVS_FACEANALYSIS(?????????) ???????????? typedef struct tagNET_FACEANALYSIS_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? int nSensitivity; /// ??????,????[1,10],???????????????? int nLinkGroupNum; /// ??????????? NET_CFG_LINKGROUP_INFO stuLinkGroup[20]; /// ??????????? NET_CFG_STRANGERMODE_INFO stuStrangerMode; /// ?????????? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bFeatureEnable; /// ???????????????, IPC???? int nFaceFeatureNum; /// ????????????????? NET_EM_FACEFEATURE_TYPE emFaceFeatureType[32]; /// ???????????? BOOL bFeatureFilter; /// ???????????????????????????????????????????? /// true-????????????? false-?????????????(??????????????????????) int nMinQuality; /// ????????????,??bFeatureFilter?????? ????[1,100] } NET_FACEANALYSIS_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_ROAD_BLOCK(????????????) ???????????? typedef struct tagNET_TRAFFIC_ROAD_BLOCK_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nMinDuration; /// ?????????,???????? 0~65535 UINT nSensitivity; /// ??????,????[1,10],???????????????? int nLaneNumber; /// ??????? ??????????????? BOOL bZoomEnable; /// ?????????????????????????????????????????????? /// 1.?????????????????????? /// 2.???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????????????Web????????????????? /// true????????false???? /// web??????? UINT nRepeatAlarmTime; /// ??????????????????????0-3600.????????????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_ROAD_BLOCK_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_ROAD_CONSTRUCTION(????????????????) ???????????? typedef struct tagNET_TRAFFIC_ROAD_CONSTRUCTION_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nMinDuration; /// ?????????,???????? 0~65535 UINT nSensitivity; /// ??????,????[1,10],???????????????? int nLaneNumber; /// ??????? ??????????????? BOOL bZoomEnable; /// ?????????????????????????????????????????????? /// 1.?????????????????????? /// 2.???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????????????Web????????????????? /// true????????false???? /// web??????? UINT nRepeatAlarmTime; /// ??????????????????????0-3600.????????????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_ROAD_CONSTRUCTION_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_FLOWSTATE(?????????????) ???????????? typedef struct tagNET_TRAFFIC_FLOWSTAT_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nDetectLineNum; /// ????????????? DH_POINT DetectLine[DH_MAX_DETECT_LINE_NUM]; /// ???????? int nLaneNumber; /// ??????? ??????????????? UINT nPeriod; /// ???????,?????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_FLOWSTAT_RULE_INFO; ///@brief ??????? typedef struct tagNET_SPEED_LIMIT { int nSpeedUpperLimit; /// ??????? int nSpeedLowerLimit; /// ??????? } NET_SPEED_LIMIT; ///@brief ???????EVENT_IVS_TRAFFIC_OVERSPEED(???????) ???????????? typedef struct tagNET_TRAFFIC_OVERSPEED_RULE_INFO { NET_SPEED_LIMIT stuSpeedLimit; /// ??????? int nMinDuration; /// ?????????,???????? BOOL bSnapMotorcycle; /// ??????????? NET_SPEED_LIMIT stuYellowSpeedLimit; /// ????????????,????0~255km/h int nLaneNumber; /// ??????? ??????????????? BOOL bSpeedLimitForSize; /// ????????????????,True-???????????????????????,False-???SpeedLimit???,???????????False?????????????SpeedLimit NET_SPEED_LIMIT stuSmallCarSpeedLimit; /// ???????????????????,0~255km/h??????bSpeedLimitForSize???????????????????? NET_SPEED_LIMIT stuBigCarSpeedLimit; /// ???????????????????,0~255km/h??????bSpeedLimitForSize???????????????????? NET_SPEED_LIMIT stuOverSpeedMargin; /// ?????????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize???????????????? NET_SPEED_LIMIT stuBigCarOverSpeedMargin; /// ???????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize??????????????????? NET_SPEED_LIMIT stuUnderSpeedMargin; /// ?????????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize?????????????????? NET_SPEED_LIMIT stuBigCarUnderSpeedMargin; /// ???????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize??????????????????? BOOL bVoiceBroadcastEnable; /// ??????????? BYTE byReserved[4092]; /// ??????? } NET_TRAFFIC_OVERSPEED_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_UNDERSPEED(??????) ???????????? typedef struct tagNET_TRAFFIC_UNDERSPEED_RULE_INFO { NET_SPEED_LIMIT stuSpeedLimit; /// ??????? int nMinDuration; /// ?????????,???????? BOOL bSnapMotorcycle; /// ??????????? NET_SPEED_LIMIT stuYellowSpeedLimit; /// ????????????,????0~255km/h int nLaneNumber; /// ??????? ??????????????? BOOL bSpeedLimitForSize; /// ????????????????,True-???????????????????????,False-???SpeedLimit???,???????????False?????????????SpeedLimit NET_SPEED_LIMIT stuSmallCarSpeedLimit; /// ???????????????????,0~255km/h??????bSpeedLimitForSize???????????????????? NET_SPEED_LIMIT stuBigCarSpeedLimit; /// ???????????????????,0~255km/h??????bSpeedLimitForSize???????????????????? NET_SPEED_LIMIT stuOverSpeedMargin; /// ?????????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize???????????????? NET_SPEED_LIMIT stuBigCarOverSpeedMargin; /// ???????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize??????????????????? NET_SPEED_LIMIT stuUnderSpeedMargin; /// ?????????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize?????????????????? NET_SPEED_LIMIT stuBigCarUnderSpeedMargin; /// ???????????,??????km/h??????????????????????????????????????????bSpeedLimitForSize??????????????????? BOOL bVoiceBroadcastEnable; /// ??????????? BYTE byReserved[4092]; /// ??????? } NET_TRAFFIC_UNDERSPEED_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_OVERYELLOWLINE(????????) ???????????? typedef struct tagNET_TRAFFIC_OVERYELLOWLINE_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nLaneNumber; /// ??????? ??????????????? BOOL bAreaTrigEnable; /// ?????????????????????, false-??????true-??? UINT nSensitivity; /// ??????,????[1,10],???????????????? BOOL bSnapMotorcycle; /// ??????????? UINT nDelayTime; /// ??????????????????????????????????????????????????????????0-3600,?????????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_OVERYELLOWLINE_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_CROSSLANE(??????????) ???????????? typedef struct tagNET_TRAFFIC_CROSSLANE_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nLaneNumber; /// ??????? ??????????????? DH_POINT stuDirectionStart; /// ?????????????????????????????????????????????????[0,8192)???? DH_POINT stuDirectionEnd; /// ?????????????????????????????????????????????????[0,8192)???? UINT nSensitivity; /// ??????,????[1,10],???????????????? BOOL bAreaTrigEnable; /// ?????????????????????, false-??????true-??? BOOL bContinueCrossLaneEnable; /// ????????, false-?????????????????????,true -?????????????2????????? BOOL bZoomEnable; /// ????????????????????????????? /// ????????????????? /// 1. ?????????????????????? /// 2. ???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????? BOOL bSnapMotorcycle; /// ??????????? UINT nDelayTime; /// ??????????????????????????????????????????????????????????0-3600,?????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? BOOL bSnapNoPlateMotor; /// ???????????,true-???????? false-?????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_CROSSLANE_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFICJAM(?????????) ???????????? typedef struct tagNET_TRAFFIC_JAM_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nJamLineMargin; /// ??????????(????)????????????????????1-100 UINT nJamLineMarginEnd; /// ?????????(????),?????JamLineMargin??,?????????????10?????????1-99 int nLaneNumber; /// ??????? ??????????????? UINT nDelay; /// ????????????????????????,???????? ????1~65535 UINT nInterval; /// ??????????,???????? ????1~65535 UINT nSensitivity; /// ??????,????[1,10],???????????????? UINT nReportTimes; /// ??????? 1~255 UINT nVehicleNumberThreshold; /// ?????????????,????0?????????????????????????????????????????0?????????????? BOOL bZoomEnable; /// ????????????????????????????? /// ????????????????? /// 1. ?????????????????????? /// 2. ???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDiscontinuousTimeThreshold; /// ????????????(????????):????????????????????????????????????????? 0-255 BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_JAM_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_PEDESTRAIN(??????????) ???????????? typedef struct tagNET_TRAFFIC_PEDESTRAIN_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nLaneNumber; /// ??????? ??????????????? int nMinDuration; /// ?????????,???????? int nInterval; /// ??????????,???????? BOOL bSnapMotorcycle; /// ??????????? BOOL bZoomEnable; /// ????????????????????????????? /// ????????????????? /// 1. ?????????????????????? /// 2. ???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????? UINT nRepeatAlarmTime; /// ??????????,?????????????? UINT nSnapObjectType; /// ?????????????????????????????????.?????????????? UINT nDelayTime; /// ?????????????????????????????????0-3600.?????????????? UINT nSensitivity; /// ??????,????1~100 ,????0???????,??????????????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_PEDESTRAIN_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_THROW(?????????) ???????????? typedef struct tagNET_TRAFFIC_THROW_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nLaneNumber; /// ??????? ??????????????? int nMinDuration; /// ?????????,???????? int nInterval; /// ??????????,???????? BOOL bSnapMotorcycle; /// ??????????? BOOL bZoomEnable; /// ????????????????????????????? /// ????????????????? /// 1. ?????????????????????? /// 2. ???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????? UINT nRepeatAlarmTime; /// ??????????,?????????????? UINT nSnapObjectType; /// ?????????????????????????????????.?????????????? UINT nDelayTime; /// ?????????????????????????????????0-3600.?????????????? UINT nSensitivity; /// ??????,????1~100 ,????0???????,??????????????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_THROW_RULE_INFO; ///@brief ???????EVENT_IVS_RETROGRADEDETECTION(??????????) ???????????? typedef struct tagNET_RETROGRADE_DETECTION_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nTriggerPosition; /// ?????????????? BYTE bTriggerPosition[8]; /// ????????????,0-???????????, 1-??????????????, 2-????????????, 3-??????????????, 4-????????????? DH_POINT stuDirectionStart; /// ?????????????????????????????????????????????????[0,8192)???? DH_POINT stuDirectionEnd; /// ?????????????????????????????????????????????????[0,8192)???? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nSensitivity; /// ???????????????????????????????????1-10 BOOL bSnapMotorcycle; /// ??????????? UINT nDistance; /// ???????????????????GB30147????????????8192???? BYTE byReserved[4096]; /// ??????? } NET_RETROGRADE_DETECTION_RULE_INFO; ///@brief ??????????? typedef enum tagNET_EM_SNAP_PLATEMOTOR_TYPE { NET_EM_SNAP_PLATEMOTOR_YES, /// ?????????????? NET_EM_SNAP_PLATEMOTOR_NO, /// ?????????? } NET_EM_SNAP_PLATEMOTOR_TYPE; ///@brief ???????EVENT_IVS_TRAFFIC_RETROGRADE(?????????????) ???????????? typedef struct tagNET_TRAFFIC_RETROGRADE_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? BYTE byReserved1[4]; /// ?????? DH_POINT stuDirectionStart; /// ?????????????????????????????????????????????????[0,8192)???? DH_POINT stuDirectionEnd; /// ?????????????????????????????????????????????????[0,8192)???? int nMinDuration; /// ?????????,???????? UINT nLaneNumber; /// ??????? ??????????????? BOOL bLegal; /// ??????????? UINT nPositionDistinctness; /// ?????????????? UINT nSensitivity; /// ???????????????????????????????????1-10 BOOL bZoomEnable; /// ????????????????????????????? BOOL bSnapMotorcycle; /// ??????????? UINT nSnapNonMotor; /// ???????????? UINT nSnapNoPlateMotor; /// ??????????????? NET_EM_SNAP_PLATEMOTOR_TYPE emSnapPlateMotor; /// ??????????? UINT nSnapBicycle; /// ???????????? UINT nDurationTime; /// ?????????????????????????????????????:??????0-3600 NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nReverseDisplacement; /// ????????????1024??????? ??????1-1023 ??????????? ???????????????????0????????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_RETROGRADE_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_PARKING(?????????????) ???????????? typedef struct tagNET_TRAFFIC_PARKING_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nLaneNumber; /// ??????? ??????????????? UINT nDelay; /// ????????????????????????,???????? ????1~65535 UINT nReportTimes; /// ??????? 1~255 UINT nParkingAllowedTime; /// ?????????? ????????????1~65535 UINT nSensitivity; /// ??????,????[1,10],???????????????? UINT nParkingNumThreshold; /// ???????????????????????????????????? ??1-128 BOOL bZoomEnable; /// ????????????????????????????? BOOL bSnapMotorcycle; /// ??????????? UINT nDectRegionNumber; /// ???????? ?????????????????? UINT nShadeSnap; /// ???????????0 0???????1????? UINT nControlMoreAlerts; /// ??????????????????????????0???????????????1?????????? UINT nReduceUnderreporting; /// ?????????id???????????????0???????????????1?????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_PARKING_RULE_INFO; ///@brief ???????EVENT_IVS_FINANCE_CASH_TRANSACTION(????????????????) ???????????? typedef struct tagNET_FINANCE_CASH_TRANSACTION_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nHumanDetectRegionPoint; /// ?????????????? POINTCOORDINATE stuHumanDetectRegion[20]; /// ???????? UINT nSensitivity; /// ??????,????[1,10],???????????????? UINT nMinDuration; /// ????????????????? ??5S??60S?? UINT nReportInterval; /// ???????????????????? ??0S??300S?? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BYTE byReserved[4096]; /// ??????? } NET_FINANCE_CASH_TRANSACTION_RULE_INFO; ///@brief ???????EVENT_IVS_LEAVEDETECTION(????????) ???????????? typedef struct tagNET_LEAVEDETECTION_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nSensitivity; /// ??????,????[1,10],???????????????? UINT nMinDuration; /// ????????????????? UINT nReportInterval; /// ??????????????????? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? UINT nPersonLimitMin; /// ???????????????????? UINT nPersonLimitMax; /// ??????????????????? BYTE byReserved[4096]; /// ??????? } NET_LEAVEDETECTION_RULE_INFO; ///@brief ?????? typedef enum tagEM_NEAR_DETECT_OBJECT { EM_NEAR_DETECT_OBJECT_UNKNOWN, /// ??? EM_NEAR_DETECT_OBJECT_PERSON, /// ?? EM_NEAR_DETECT_OBJECT_ANIMAL, /// ???? }EM_NEAR_DETECT_OBJECT; ///@brief ???????????? typedef enum tagEM_NEAR_OBJECT_TYPE { EM_NEAR_OBJECT_TYPE_UNKNOWN, /// ??? EM_NEAR_OBJECT_TYPE_MOVING_FOR_KLIFT, /// ?????? EM_NEAR_OBJECT_TYPE_SILICON_PACKAGE, /// ??? EM_NEAR_OBJECT_TYPE_MOVING_SILICON_PACKAGE, /// ??????? EM_NEAR_OBJECT_TYPE_PURING_SILICON_PACKAGE, /// ????????? }EM_NEAR_OBJECT_TYPE; ///@brief ??????? EVENT_IVS_NEAR_OBJECT_DETECT(???????????) ???????????? typedef struct tagNET_IVS_NEAR_OBJECT_DETECT_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nMinDuration; /// ??????????????? UINT nReportInterval; /// ????????????????? UINT nSensitivity; /// ???????????????????????1-10 EM_NEAR_DETECT_OBJECT emDetectObject; /// ?????? EM_NEAR_OBJECT_TYPE emNearObjectType; /// ???????????? char szReserved[2048]; /// ??????? } NET_IVS_NEAR_OBJECT_DETECT_RULE_INFO; ///@brief ??????? EVENT_IVS_PIC_COMPARE_DETECTION (??????????????) ???????????? typedef struct tagNET_IVS_PIC_COMPARE_DETECTION_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? UINT nMinDuration; /// ??????????????? UINT nReportInterval; /// ????????????????? UINT nSensitivity; /// ???????????????????? ??1-10 BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? char szReserved[2048]; /// ??????? } NET_IVS_PIC_COMPARE_DETECTION_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFICACCIDENT(??????) ???????????? typedef struct tagNET_TRAFFIC_ACCIDENT_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nLaneNumber; /// ??????? ??????????????? UINT nMinDuration; /// ?????????,???????? BOOL bZoomEnable; /// ????????????????????????????? /// ????????????????? /// 1. ?????????????????????? /// 2. ???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????? UINT nZoomStayTime; /// ????????????:????ZoomEnable?true????????0???????????????0 UINT nVehicleDelayTime; /// ??????????????????????????????????????,????????????0-3600 UINT nPersonDelayTime; /// ?????????????????????????????????????,????????????0-3600 UINT nMaxDelayTime; /// ??????? ?????????????????,????????????0-3600 UINT nVehicleNumberThreshold; /// ??????????????????????????????????????????? UINT nWanderTime; /// ?????????????????????????????????ms 0~65535 UINT nRepeatTime; /// ??????????????ms?? 0~65535 BOOL bRelateHuman; /// ??????????????????,false???????,true????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_ACCIDENT_RULE_INFO; ///@brief ???????EVENT_IVS_TRAFFIC_BACKING(????) ???????????? typedef struct tagNET_TRAFFIC_BACKING_RULE_INFO { POINTCOORDINATE stuDetectRegion[20]; /// ????? int nDetectRegionPoint; /// ??????????? int nLaneNumber; /// ??????? ??????????????? DH_POINT stuDirectionStart; /// ?????????????????????????????????????????????????[0,8192)???? DH_POINT stuDirectionEnd; /// ?????????????????????????????????????????????????[0,8192)???? UINT nSensitivity; /// ??????,????[1,10],???????????????? BOOL bAreaTrigEnable; /// ?????????????????????, false-??????true-??? BOOL bContinueCrossLaneEnable; /// ????????, false-?????????????????????,true -?????????????2????????? BOOL bZoomEnable; /// ????????????????????????????? /// ????????????????? /// 1. ?????????????????????? /// 2. ???????????????????????????????????????? /// ?????????????????????????????????????????????????????????????? BOOL bSnapMotorcycle; /// ??????????? UINT nDelayTime; /// ??????????????????????????????????????????????????????????0-3600,?????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? BOOL bSnapNoPlateMotor; /// ???????????,true-???????? false-?????????? BYTE byReserved[4096]; /// ??????? } NET_TRAFFIC_BACKING_RULE_INFO; ///@brief ???????EVENT_IVS_FOG_DETECTION(???????) ???????????? typedef struct tagNET_FOG_DETECTION_RULE_INFO { EM_FOG_LEVEL emAlarmFogLevel; /// ???????????????????????????????? UINT nAlarmInterval; /// ?????????,?????????????[60??86400] BOOL bRealDataUpload; /// ???????????? UINT nRealUpdateInterval; /// ????????????,?????????????[60??86400] BYTE byReserved[4096]; /// ??????? } NET_FOG_DETECTION_RULE_INFO; ///@brief ?????????????? typedef enum tagNET_ANALYSE_HUMANFACE_TYPE { NET_ANALYSE_HUMANFACE_TYPE_UNKNOWN, /// ??????? NET_ANALYSE_HUMANFACE_TYPE_NORMAL, /// ?????? NET_ANALYSE_HUMANFACE_TYPE_HIDEEYE, /// ?????? NET_ANALYSE_HUMANFACE_TYPE_HIDENOSE, /// ??????? NET_ANALYSE_HUMANFACE_TYPE_HIDEMOUTH, /// ????? NET_ANALYSE_HUMANFACE_TYPE_ADJACENTFACE, /// ??????? (???ATM??????) NET_ANALYSE_HUMANFACE_TYPE_ABNORMALFACE, /// ????? NET_ANALYSE_HUMANFACE_TYPE_HELMETFACE, /// ??????(?????????) }NET_ANALYSE_HUMANFACE_TYPE; ///@brief ????? typedef enum tagEM_HUMAN_AGE_SEG { EM_HUMAN_AGE_SEG_UNKOWN, /// ???: "" EM_HUMAN_AGE_SEG_CHILD, /// ???: "Child" EM_HUMAN_AGE_SEG_ADULT, /// ????: "Adult" EM_HUMAN_AGE_SEG_ELDERLY, /// ????: "Elderly" }EM_HUMAN_AGE_SEG; ///@brief ????????????????? typedef struct tagNET_HUMAN_DESC_INFO { EM_HUMAN_AGE_SEG emName; /// ????: EM_HUMAN_AGE_SEG_CHILD-"Child", EM_HUMAN_AGE_SEG_ADULT-"Adult", EM_HUMAN_AGE_SEG_ELDERLY-"Elderly" UINT nRange[2]; /// ??????????: nRange[0]????????????nRange[1]?????????? char szReserved[256]; /// ??????? }NET_HUMAN_DESC_INFO; ///@brief ??????????? typedef struct tagNET_HUMAN_AGE_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????,??????16 EM_HUMAN_AGE_SEG emHumanAgeShowList[16]; /// ?????????????? NET_HUMAN_DESC_INFO* pstuHumanDesc; /// ?????????????????, ????????????????, ???????sizeof(NET_HUMAN_DESC_INFO)*nShowListNums char szReserved[256]; /// ??????? }NET_HUMAN_AGE_INFO; ///@brief ?????????? typedef struct tagNET_HUMAN_SEX_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????????,??????2 EM_SEX_TYPE emHumanSexShowList[2]; /// ???????????? char szReserved[256]; /// ??????? }NET_HUMAN_SEX_INFO; ///@brief ??????????? typedef struct tagNET_HUMAN_EMOTION_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????????,??????32 EM_EMOTION_TYPE emHumanEmotionShowList[32]; /// ???????????? char szReserved[256]; /// ??????? }NET_HUMAN_EMOTION_INFO; ///@brief ?????????????? typedef struct tagNET_HUMAN_GLASSES_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????????,??????16 EM_HAS_GLASS emHumanGlassesShowList[16]; /// ?????????????????? BOOL bHasGlasses; /// ?????????TRUE-????FALSE-?? char szReserved[256]; /// ??????? }NET_HUMAN_GLASSES_INFO; ///@brief ??????????????? typedef struct tagNET_HUMAN_MASK_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????????,??????2 EM_MASK_TYPE emHumanMaskShowList[2]; /// ?????????????????? char szReserved[256]; /// ??????? }NET_HUMAN_MASK_INFO; ///@brief ??????? typedef enum tagEM_HUMAN_BEARD_TYPE { EM_HUMAN_BEARD_TYPE_UNKNOWN, /// ??? EM_HUMAN_BEARD_TYPE_NONE, /// ????? EM_HUMAN_BEARD_TYPE_BEARD, /// ?????? } EM_HUMAN_BEARD_TYPE; ///@brief ??????????? typedef struct tagNET_HUMAN_BEARD_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????????????,??????2 EM_HUMAN_BEARD_TYPE emHumanBeardShowList[2]; /// ??????? char szReserved[256]; /// ??????? }NET_HUMAN_BEARD_INFO; ///@brief???????? typedef enum tagEM_HUMAN_COAT_TYPE { EM_HUMAN_COAT_TYPE_UNKNOWN, /// ??? EM_HUMAN_COAT_TYPE_LONG_SLEEVE, /// ???? EM_HUMAN_COAT_TYPE_SHORT_SLEEVE, /// ???? }EM_HUMAN_COAT_TYPE; ///@brief ??????????????? typedef struct tagNET_HUMAN_COAT_TYPE_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????????????,??????16 EM_HUMAN_COAT_TYPE emHumanCoatTypeShowList[16]; /// ???????????????? char szReserved[256]; /// ??????? }NET_HUMAN_COAT_TYPE_INFO; ///@brief ??????????????? typedef struct tagNET_HUMAN_COAT_COLOR_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ??????????????????????,??????32 EM_CLOTHES_COLOR emHumanCoatColorShowList[32]; /// ??????? char szReserved[256]; /// ??????? }NET_HUMAN_COAT_COLOR_INFO; ///@brief ???????? typedef enum tagEM_HUMAN_TROUSERS_TYPE { EM_HUMAN_TROUSERS_TYPE_UNKNOWN, /// ??? EM_HUMAN_TROUSERS_TYPE_SHORT_PANTS, /// ??? EM_HUMAN_TROUSERS_TYPE_PANTS, /// ???? EM_HUMAN_TROUSERS_TYPE_SKIRT, /// ??? }EM_HUMAN_TROUSERS_TYPE; ///@brief ??????????????? typedef struct tagNET_HUMAN_TROUSERS_TYPE_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????,??????16 EM_HUMAN_TROUSERS_TYPE emHumanTrousersTypeShowList[16]; /// ??????????????? char szReserved[256]; /// ??????? }NET_HUMAN_TROUSERS_TYPE_INFO; ///@brief ??????????????? typedef struct tagNET_HUMAN_TROUSERS_COLOR_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ?????????????????????????,??????32 EM_CLOTHES_COLOR emHumanTrousersColorShowList[32]; /// ?????????????????? char szReserved[256]; /// ??????? }NET_HUMAN_TROUSERS_COLOR_INFO; ///@brief ??????? typedef enum tagEM_HUMAN_BAG_TYPE { EM_HUMAN_BAG_TYPE_UNKNOWN, /// ??? EM_HUMAN_BAG_TYPE_BAG, /// ???? EM_HUMAN_BAG_TYPE_CARRIER_BAG, /// ????? EM_HUMAN_BAG_TYPE_SHOULDER_BAG, /// ??? EM_HUMAN_BAG_TYPE_NONE, /// ?? } EM_HUMAN_BAG_TYPE; ///@brief ???????????? typedef struct tagNET_HUMAN_HAS_BAG_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????,??????16 EM_HUMAN_BAG_TYPE emHumanHasBagShowList[16]; /// ??????? char szReserved[256]; /// ??????? }NET_HUMAN_HAS_BAG_INFO; ///@brief ?????????? typedef enum tagEM_HUMAN_UMBRELLA_TYPE { EM_HUMAN_UMBRELLA_TYPE_UNKNOWN, /// ??? EM_HUMAN_UMBRELLA_TYPE_WITH_UMBRELLA, /// ???? EM_HUMAN_UMBRELLA_TYPE_NO_UMBRELLA, /// ?????? } EM_HUMAN_UMBRELLA_TYPE; ///@brief ???????????? typedef struct tagNET_HUMAN_HAS_UMBRELLA_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????,??????2 EM_HUMAN_UMBRELLA_TYPE emHumanHasUmbrellaShowList[2]; /// ?????????? char szReserved[256]; /// ??????? }NET_HUMAN_HAS_UMBRELLA_INFO; ///@brief ???????????? typedef enum tagEM_HUMAN_RAIN_COAT_TYPE { EM_HUMAN_RAIN_COAT_TYPE_UNKNOWN, /// ??? EM_HUMAN_RAIN_COAT_TYPE_YES, /// ?? EM_HUMAN_RAIN_COAT_TYPE_NO, /// ?? } EM_HUMAN_RAIN_COAT_TYPE; ///@brief ???????? typedef struct tagNET_HUMAN_RAIN_COAT_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????????,??????2 EM_HUMAN_RAIN_COAT_TYPE emHumanRainCoatShowList[2]; /// ???????????? char szReserved[256]; /// ??????? }NET_HUMAN_RAIN_COAT_INFO; ///@brief ?????? typedef enum tagEM_HUMAN_HAT_TYPE { EM_HUMAN_HAT_TYPE_UNKNOWN, /// ??? EM_HUMAN_HAT_TYPE_WITH_HAT, /// ???? EM_HUMAN_HAT_TYPE_WITH_HELMET, /// ??? EM_HUMAN_HAT_TYPE_NONE, /// ?? } EM_HUMAN_HAT_TYPE; ///@brief ?????????? typedef struct tagNET_HUMAN_HAS_HAT_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????,??????16 EM_HUMAN_HAT_TYPE emHumanHasHatShowList[16]; /// ?????????????? char szReserved[256]; /// ??????? }NET_HUMAN_HAS_HAT_INFO; ///@brief ?????????????? typedef struct tagNET_HUMAN_HELMET_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? BOOL bHasHelmet; /// ?????????????TRUE-????FALSE-?? int nShowListNums; /// ????????????,??????32 EM_CLOTHES_COLOR emHumanHelmetColorShowList[32]; /// ??????? char szReserved[256]; /// ??????? }NET_HUMAN_HELMET_INFO; ///@brief ????????????? typedef enum tagEM_HUMAN_VEST_TYPE { EM_HUMAN_VEST_TYPE_UNKNOWN = -1, /// ??? EM_HUMAN_VEST_TYPE_NO, /// ?? EM_HUMAN_VEST_TYPE_YES, /// ?? } EM_HUMAN_VEST_TYPE; ///@brief ???????????????? typedef struct tagNET_HUMAN_VEST_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ??????????????????????,??????2 EM_HUMAN_VEST_TYPE emHumanVestShowList[2]; /// ?????????????????? char szReserved[256]; /// ??????? }NET_HUMAN_VEST_INFO; ///@brief ???????? typedef enum tagEM_HUMAN_HAIR_STYLE_TYPE { EM_HUMAN_HAIR_STYLE_TYPE_UNKNOWN, /// ??? EM_HUMAN_HAIR_STYLE_TYPE_LONG, /// ???? EM_HUMAN_HAIR_STYLE_TYPE_SHORT, /// ??? EM_HUMAN_HAIR_STYLE_TYPE_PONYTAIL, /// ???? EM_HUMAN_HAIR_STYLE_TYPE_UPDO, /// ??? EM_HUMAN_HAIR_STYLE_TYPE_HEAD_COVERED, /// ?????? } EM_HUMAN_HAIR_STYLE_TYPE; ///@brief ??????????? typedef struct tagNET_HUMAN_HAIR_STYLE_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????????,??????16 EM_HUMAN_HAIR_STYLE_TYPE emHumanHairStyleShowList[16]; /// ??????????????? char szReserved[256]; /// ??????? }NET_HUMAN_HAIR_STYLE_INFO; ///@brief ?????????? typedef struct tagNET_HUMAN_ANGLE_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ??????????????????????,??????16 EM_ANGLE_TYPE emHumanAngleShowList[16]; /// ?????????????????? char szReserved[256]; /// ??????? }NET_HUMAN_ANGLE_INFO; ///@brief ?????????? typedef enum tagEM_HUMAN_HOLD_BABY_TYPE { EM_HUMAN_HOLD_BABY_TYPE_UNKNOWN, /// ??? EM_HUMAN_HOLD_BABY_TYPE_HOLD, /// ?? EM_HUMAN_HOLD_BABY_TYPE_NO_HOLD, /// ???? } EM_HUMAN_HOLD_BABY_TYPE; ///@brief ?????? typedef struct tagNET_HUMAN_HOLD_BABY_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ??????????????,??????2 EM_HUMAN_HOLD_BABY_TYPE emHumanHoldBabyShowList[2]; /// ?????????? char szReserved[256]; /// ??????? }NET_HUMAN_HOLD_BABY_INFO; ///@brief ????????????????????????????? typedef struct tagNET_COMPLIANT_HUMAN_INFO { NET_HUMAN_AGE_INFO stuHumanAge; /// ??????????? NET_HUMAN_SEX_INFO stuHumanSex; /// ?????????? NET_HUMAN_EMOTION_INFO stuHumanEmotion; /// ??????????? NET_HUMAN_GLASSES_INFO stuHumanGlasses; /// ?????????????? NET_HUMAN_MASK_INFO stuHumanMask; /// ??????????????? NET_HUMAN_BEARD_INFO stuHumanBeard; /// ??????????? NET_HUMAN_COAT_TYPE_INFO stuHumanCoatType; /// ??????????????? NET_HUMAN_COAT_COLOR_INFO stuHumanCoatColor; /// ??????????????? NET_HUMAN_TROUSERS_TYPE_INFO stuHumanTrousersType; /// ??????????????? NET_HUMAN_TROUSERS_COLOR_INFO stuHumanTrousersColor; /// ??????????????? NET_HUMAN_HAS_BAG_INFO stuHumanHasBag; /// ???????????? NET_HUMAN_HAS_UMBRELLA_INFO stuHumanHasUmbrella; /// ???????????? NET_HUMAN_RAIN_COAT_INFO stuHumanRainCoat; /// ???????? NET_HUMAN_HAS_HAT_INFO stuHumanHasHat; /// ?????????? NET_HUMAN_HELMET_INFO stuHumanHelmet; /// ?????????????? NET_HUMAN_VEST_INFO stuHumanVest; /// ???????????????? NET_HUMAN_HAIR_STYLE_INFO stuHumanHairStyle; /// ??????????? NET_HUMAN_ANGLE_INFO stuHumanAngle; /// ?????????? NET_HUMAN_HOLD_BABY_INFO stuHumanHoldBaby; /// ?????? char szReserved[1024]; /// ??????? }NET_COMPLIANT_HUMAN_INFO; ///@brief ????????????????? typedef struct tagNET_VEHICLE_COLOR_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ??????????????????,??????32 EM_OBJECT_COLOR_TYPE emVehicleColorShowList[32]; /// ????????????? char szReserved[256]; /// ??????? }NET_VEHICLE_COLOR_INFO; ///@brief ??????????? typedef struct tagNET_VEHICLE_BRAND_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????,??????256 int nBrandShowList[256]; /// ????????????, ????????????????????(????????), ????????0-562 char szReserved[256]; /// ??????? }NET_VEHICLE_BRAND_INFO; ///@brief ?????????????? typedef enum tagEM_COMPLIANT_VEHICLE_TYPE { EM_COMPLIANT_VEHICLE_TYPE_UNKNOWN, /// ??? EM_COMPLIANT_VEHICLE_TYPE_PASSENGER_CAR, /// ??? EM_COMPLIANT_VEHICLE_TYPE_LARGE_TRUCK, /// ????? EM_COMPLIANT_VEHICLE_TYPE_MID_TRUCK, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_MID_PASSENGER_CAR, /// ????? EM_COMPLIANT_VEHICLE_TYPE_SALOON_CAR, /// ???? EM_COMPLIANT_VEHICLE_TYPE_MICROBUS, /// ????? EM_COMPLIANT_VEHICLE_TYPE_MICRO_TRUCK, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_SUV, /// SUV EM_COMPLIANT_VEHICLE_TYPE_SUV_MPV, /// SUV????MPV EM_COMPLIANT_VEHICLE_TYPE_MPV_PICKUP, /// ????? EM_COMPLIANT_VEHICLE_TYPE_MINI_CARRIAGE, /// ???? EM_COMPLIANT_VEHICLE_TYPE_TANK_CAR, /// ????????? EM_COMPLIANT_VEHICLE_TYPE_CONCRETE_MIXER_TRUCK, /// ?????????? EM_COMPLIANT_VEHICLE_TYPE_SUCTION_SEWAGE_TRUCK, /// ????? EM_COMPLIANT_VEHICLE_TYPE_NORMAL_TANK_TRUCK, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_TRACTOR, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_MACHINE_SHOP_TRUCK, /// ????? EM_COMPLIANT_VEHICLE_TYPE_DREGS_CAR, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_POLICE, /// ???? EM_COMPLIANT_VEHICLE_TYPE_AMBULANCE, /// ????? EM_COMPLIANT_VEHICLE_TYPE_FIRE_ENGINE, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_WATERING_CAR, /// ????? EM_COMPLIANT_VEHICLE_TYPE_TAXI, /// ???? EM_COMPLIANT_VEHICLE_TYPE_POWER_LOT_VEHICLE, /// ????????? EM_COMPLIANT_VEHICLE_TYPE_SCHOOL_BUS, /// ???? EM_COMPLIANT_VEHICLE_TYPE_BUS, /// ?????? EM_COMPLIANT_VEHICLE_TYPE_ESCORT, /// ???? EM_COMPLIANT_VEHICLE_TYPE_OTHER, /// ???? } EM_COMPLIANT_VEHICLE_TYPE; ///@brief ????????????????? typedef struct tagNET_VEHICLE_TYPE_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????,??????64 EM_COMPLIANT_VEHICLE_TYPE emVehicleTypeShowList[64]; /// ???????? char szReserved[256]; /// ??????? }NET_VEHICLE_TYPE_INFO; ///@brief ??????????????? typedef struct tagNET_VEHICLE_PLATE_COLOR_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????,??????16 EM_NET_PLATE_COLOR_TYPE emVehiclePlateColorShowList[16]; /// ??????? char szReserved[256]; /// ??????? }NET_VEHICLE_PLATE_COLOR_INFO; ///@brief ??????? typedef enum tagEM_VEHICLE_CALLING_TYPE { EM_VEHICLE_CALLING_TYPE_UNKNOWN, /// ??? EM_VEHICLE_CALLING_TYPE_CALLING, /// ??????? EM_VEHICLE_CALLING_TYPE_NO_CALL, /// ???????? } EM_VEHICLE_CALLING_TYPE; ///@brief ???????????? typedef struct tagNET_VEHICLE_CALLING_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ????????????,??????2 EM_VEHICLE_CALLING_TYPE emVehicleCallingShowList[2]; /// ??????? char szReserved[256]; /// ??????? }NET_VEHICLE_CALLING_INFO; ///@brief ???????? typedef enum tagEM_VEHICLE_SAFE_BELT_TYPE { EM_VEHICLE_SAFE_BELT_TYPE_UNKNOWN, /// ??? EM_VEHICLE_SAFE_BELT_TYPE_WITH_SAFE_BELT, /// ????????? EM_VEHICLE_SAFE_BELT_TYPE_WITHOUT_SAFE_BELT, /// ???????? } EM_VEHICLE_SAFE_BELT_TYPE; ///@brief ????????????? typedef struct tagNET_VEHICLE_SAFE_BELT_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ?????????????,??????2 EM_VEHICLE_SAFE_BELT_TYPE emVehicleSafeBeltShowList[2]; /// ???????? char szReserved[256]; /// ??????? }NET_VEHICLE_SAFE_BELT_INFO; ///@brief ?????????? typedef enum tagEM_VEHICLE_ATTACHMENT_TYPE { EM_VEHICLE_ATTACHMENT_TYPE_UNKNOWN, /// ??? EM_VEHICLE_ATTACHMENT_TYPE_FURNITURE, /// ??? EM_VEHICLE_ATTACHMENT_TYPE_PENDANT, /// ??? EM_VEHICLE_ATTACHMENT_TYPE_TISSUE_BOX, /// ????? EM_VEHICLE_ATTACHMENT_TYPE_PERFUME_BOX, /// ????? EM_VEHICLE_ATTACHMENT_TYPE_DANGER, /// ????? EM_VEHICLE_ATTACHMENT_TYPE_NONE, /// ???????? EM_VEHICLE_ATTACHMENT_TYPE_CARD, /// ??? } EM_VEHICLE_ATTACHMENT_TYPE; ///@brief ?????????????? typedef struct tagNET_VEHICLE_ATTACHMENT_INFO { BOOL bEnable; /// ??????????: TRUE-?????????? FALSE-???????????? int nShowListNums; /// ???????????????,??????16 EM_VEHICLE_ATTACHMENT_TYPE emVehicleAttachmentShowList[16]; /// ?????????? char szReserved[256]; /// ??????? }NET_VEHICLE_ATTACHMENT_INFO; ///@brief ???????????????????? typedef struct tagNET_COMPLIANT_VEHICLE_INFO { NET_VEHICLE_COLOR_INFO stuVehicleColor; /// ????????????????? NET_VEHICLE_BRAND_INFO stuVehicleBrand; /// ??????????? NET_VEHICLE_TYPE_INFO stuVehicleType; /// ????????????????? NET_VEHICLE_PLATE_COLOR_INFO stuVehiclePlateColor; /// ??????????????? NET_VEHICLE_CALLING_INFO stuVehicleCalling; /// ???????????? NET_VEHICLE_SAFE_BELT_INFO stuVehicleSafeBelt; /// ????????????? NET_VEHICLE_ATTACHMENT_INFO stuVehicleAttachment; /// ?????????????? char szReserved[1024]; /// ??????? }NET_COMPLIANT_VEHICLE_INFO; ///@brief ?????????????????? typedef struct tagNET_NONMOTOR_COLOR_INFO { BOOL bEnable; /// ???????, ?TRUE???????????????????????????FALSE???????????????????????? int nShowListNums; /// ???????????????????,??????32 EM_OBJECT_COLOR_TYPE emNonMotorColorShowList[32]; /// ?????????????? char szReserved[256]; /// ??????? }NET_NONMOTOR_COLOR_INFO; ///@brief ???????????????? typedef struct tagNET_NONMOTOR_CYCLING_NUM_INFO { BOOL bEnable; /// ???????, ?TRUE?????????????????????????FALSE?????????????????????? UINT nCyclingNum; /// ???????????????????? char szReserved[256]; /// ??????? }NET_NONMOTOR_CYCLING_NUM_INFO; ///@brief ???????????????????? typedef enum tagEM_NONMOTOR_TYPE { EM_NONMOTOR_TYPE_UNKNOWN = 0, /// ??? EM_NONMOTOR_TYPE_BICYCLE, /// ?????? EM_NONMOTOR_TYPE_VANTRICYCLE, /// ???????? EM_NONMOTOR_TYPE_MOTORBIKE, /// ????? EM_NONMOTOR_TYPE_MANNED_CONVERTIBLE_TRICYCLE, /// ???????????? EM_NONMOTOR_TYPE_NO_MANNED_CONVERTIBLE_TRICYCLE, /// ?????????????? }EM_NONMOTOR_TYPE; ///@brief ?????????????????? typedef struct tagNET_NONMOTOR_CATEGORY_INFO { BOOL bEnable; /// ???????, ?TRUE???????????????????????????FALSE???????????????????????? int nShowListNums; /// ???????????????,??????32 EM_NONMOTOR_TYPE emNonMotorTypeShowList[32]; /// ???????????????????? char szReserved[256]; /// ??????? }NET_NONMOTOR_CATEGORY_INFO; ///@brief ??????????????? typedef struct tagNET_COMPLIANT_NONMOTOR_INFO { NET_NONMOTOR_COLOR_INFO stuNonMotorColor; /// ?????????????????? NET_NONMOTOR_CYCLING_NUM_INFO stuNumOfCycling; /// ???????????????? NET_NONMOTOR_CATEGORY_INFO stuCategory; /// ?????????????????? char szReserved[1024]; /// ??????? }NET_COMPLIANT_NONMOTOR_INFO; ///@brief ??????? typedef enum tagEM_BOAT_TYPE { EM_BOAT_TYPE_UNKNOWN = 0, /// ??? EM_BOAT_TYPE_SAND_MINING_SHIP, /// ????? }EM_BOAT_TYPE; ///@brief ?????????????? typedef struct tagNET_BOAT_TYPE_INFO { BOOL bEnable; /// ???????, ?TRUE??????????????????????FALSE???????????????????? int nShowListNums; /// ???????????,??????64 EM_BOAT_TYPE emBoatTypeShowList[64]; /// ??????? char szReserved[256]; /// ??????? }NET_BOAT_TYPE_INFO; ///@brief ????????????????? typedef struct tagNET_COMPLIANT_BOAT_INFO { NET_BOAT_TYPE_INFO stuBoatType; /// ?????????????? char szReserved[1024]; /// ??????? }NET_COMPLIANT_BOAT_INFO; ///@brief ???????????????? typedef struct tagNET_COMPLIANT_FORMAT_INFO { BOOL bSupportHuman; /// ?TRUE: ???????????????, ?FALSE: ????????????????? NET_COMPLIANT_HUMAN_INFO stuHuman; /// ????????????????????????????? BOOL bSupportVehicle; /// ?TRUE: ????????????????????????, ?FALSE: ?????????????????????????? NET_COMPLIANT_VEHICLE_INFO stuVehicle; /// ???????????????????? BOOL bSupportNonMotor; /// ?TRUE: ???????????????????, ?FALSE: ????????????????????? NET_COMPLIANT_NONMOTOR_INFO stuNonMotor; /// ??????????????? NET_COMPLIANT_BOAT_INFO stuBoat; /// ????????????????? char szReserved[1024]; /// ??????? }NET_COMPLIANT_FORMAT_INFO; ///@brief ?????????? typedef struct tagNET_COMPLIANT_INFO { UINT nCompliantType; /// ???????????????0????????1-???? 2-?????IVSS???? BOOL bCompliantEnable; /// ??????????, TRUE: ????, FALSE-???,???????TRUE????????????? NET_COMPLIANT_FORMAT_INFO stuCompliantFormat; /// ???????????????? char szReserved[1024]; /// ??????? }NET_COMPLIANT_INFO; ///@brief ???????EVENT_IVS_HUMANTRAIT(?????????)???????????? typedef struct tagNET_HUMANTRAIT_RULE_INFO { DWORD dwSize; /// ??????? int nHumanFaceTypeNum; /// ???????????????? NET_ANALYSE_HUMANFACE_TYPE emHumanFaceType[8]; /// ????????????????? int nMinDuration; /// ?????????,???????? int nTriggerTargets; /// ???????????????? int nSensitivity; /// ??????,??????????, 0-10 BOOL bSizeFileter; /// ?????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????????????????? BOOL bFeatureEnable; /// ??????????????? BOOL bFeatureFilter; /// ???????????????????????????????????????????? true-?????????????;false-?????????????(??????????????????????) int nMinQuality; /// ????????????,??bFeatureFilter?????? int nFaceFeatureNum; /// ????????????????? NET_EM_FACEFEATURE_TYPE emFaceFeatureType[32]; /// ???????????? UINT nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? int nExcludeRegionNum; /// ????????? DH_POLY_POINTS stuExcludeRegion[10]; /// ??????? BOOL bFaceSnapEnable; /// ???????????: TRUE:?????????, FALSE????????????? BOOL bFeatureExtractEnable; /// ?????????????????? NET_COMPLIANT_INFO stuCompliant; /// ?????????? BOOL bHumanFeatureEnable; /// ????????????????, TRUE-???? FALSE-??? int nHumanFeatureList; /// ???????????? char szHumanFeatureList[32][16]; /// ????????????????????,?????????????????(bHumanFeatureEnable?TRUE),?????????????????????????? /**********???????? Start****************************************************************************************************************************************************************/ /* * "PersonID"-??????ID "ImageID"-??ID "Sex"-??????? "Age"-???????? "HasHat"-??????? "HasBadge"-?????????? * "Cap"-????? "CapColor"-?????? "HairStyle"-?????? "CoatColor"-??????? "CoatType"-???????? "CoatStyle"-?????? * "UpperPattern"-???????????? "UniformStyle"-??????? "TrousersColor"-??????? "TrousersType"-???????? "ShoesType"-???????? "ShoesColor"-??????? * "RainCoat"-????????? "HasUmbrella"-?????? "HasBag"-?????? "Bag"-?????? "BackBag"-????????? "CarrierBag"-????????? * "ShoulderBag"-???????? "MessengerBag"-?????????? "HoldBaby"-??????? "BoundingBox"-?????? "Center"-???????? "Angle"-??? * "Mask"-?????? "MaskColor"-??????? "HasVest"-??????????? "HasBabyCarriage"-?????????? "IsErrorDetect"-?????? "HasHead"-????????????? * "HasDownBody"-?????????????????? "QeScore"-??????????? "Integrality"-????????? "ExtRecordSource"-??????????????? "UmbrellaColor"-??????? "HasBagBody"-????????? * "BagColor"-????? "Trunk"-??????????? "AgeSeg"-????? "Orientation"-???? "HumanClarity"-?????????? "HumanCompleteScore"-?????????????? * "IsRelatedFace"-?????????????????????????? */ /**********???????? End******************************************************************************************************************************************************************/ BOOL bFaceFeatureExtractEnable; /// ????????????????? }NET_HUMANTRAIT_RULE_INFO; ///@brief ????? typedef enum tagEM_DETECT_DIRECTION_TYPE { EM_DETECT_DIRECTION_UNKNOWN = 0, /// ??? EM_DETECT_DIRECTION_LEFT_TO_RIGHT, /// ???????? EM_DETECT_DIRECTION_RIGHT_TO_LEFT, /// ???????? }EM_DETECT_DIRECTION_TYPE; ///@brief XRAY????? typedef enum tagEM_XRAY_SCHEME_TYPE { EM_XRAY_SCHEME_UNKNOWN, EM_XRAY_SCHEME_TONGFANG_100, EM_XRAY_SCHEME_TONGFANG_200, EM_XRAY_SCHEME_TONGFANG_300, EM_XRAY_SCHEME_TONGFANG_400, EM_XRAY_SCHEME_ANTIANXIA_100, EM_XRAY_SCHEME_ANTIANXIA_200, EM_XRAY_SCHEME_DAHUA_100, EM_XRAY_SCHEME_DAHUA_200, EM_XRAY_SCHEME_DAHUA_300, EM_XRAY_SCHEME_DAHUA_400, EM_XRAY_SCHEME_DAHUA_301, EM_XRAY_SCHEME_SHANGCHEN_HIGH, EM_XRAY_SCHEME_SHANGCHEN_LOW, } EM_XRAY_SCHEME_TYPE; ///@brief XRAY??????????? typedef struct tagNET_XRAY_OBJECT_UPLOAD_RULE { BOOL bUploadEnable; /// ?????? UINT nSimilarity; /// ????????????, [1,100] BYTE byReserved[128]; /// ??????? } NET_XRAY_OBJECT_UPLOAD_RULE; ///@brief XRAY????????? typedef struct tagNET_XRAY_OBJECT_DETECT_RULE { EM_INSIDE_OBJECT_TYPE emObjectType; /// ???????? BOOL bDetectEnable; /// ?????? EM_DANGER_GRADE_TYPE emDangerGrade; /// ?????? NET_XRAY_OBJECT_UPLOAD_RULE stuUploadRuleInfo; /// ?????????????? BYTE byReserved[512]; /// ??????? } NET_XRAY_OBJECT_DETECT_RULE; ///@brief EVENT_IVS_XRAY_DETECT_BYOBJECT(X????????)???????????? typedef struct tagNET_XRAY_DETECT_BYPBJECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nSensitivity; /// ??????,[1,10] EM_DETECT_DIRECTION_TYPE emDirectionType; /// ????? EM_XRAY_SCHEME_TYPE emSchemeType; /// ?????? UINT nObjectRuleNum; /// XRAY????????????? NET_XRAY_OBJECT_DETECT_RULE stuObjectRuleInfo[128]; /// XRAY???????????? EM_XRAY_VIEW_TYPE emViewType; /// ??????? } NET_XRAY_DETECT_BYPBJECT_RULE_INFO; ///@brief ??????????????? typedef enum tagEM_NONMOTOR_FEATURE { EM_NONMOTOR_FEATURE_UNKNOWN, /// ??? EM_NONMOTOR_FEATURE_HELMET, /// ??? EM_NONMOTOR_FEATURE_NUMOFCYCLING, /// ???????? EM_NONMOTOR_FEATURE_NONMOTORCOLOR, /// ??????? EM_NONMOTOR_FEATURE_SEX, /// ??? EM_NONMOTOR_FEATURE_AGE, /// ???? EM_NONMOTOR_FEATURE_HAT, /// ??? EM_NONMOTOR_FEATURE_BAG, /// ???? EM_NONMOTOR_FEATURE_CARRIERBAG, /// ????? EM_NONMOTOR_FEATURE_UMBRELLA, /// ???? EM_NONMOTOR_FEATURE_UPPERBODYCOLOR, /// ??????? EM_NONMOTOR_FEATURE_LOWERBODYCOLOR, /// ??????? EM_NONMOTOR_FEATURE_UPCLOTHES, /// ???????? EM_NONMOTOR_FEATURE_DOWNCLOTHES, /// ???????? EM_NONMOTOR_FEATURE_CATEGORY, /// ?????? }EM_NONMOTOR_FEATURE; ///@brief ???????EVENT_IVS_NONMOTORDETECT(??????????)???????????? typedef struct tagNET_NONMOTORDETECT_RULE_INFO { DWORD dwSize; /// ??????? int nFeatureNum; /// ????????????????? EM_NONMOTOR_FEATURE emFeatureList[32]; /// ?????????????????? UINT nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? int nExcludeRegionNum; /// ????????? DH_POLY_POINTS stuExcludeRegion[10]; /// ??????? NET_COMPLIANT_INFO stuCompliant; /// ?????????? BOOL bSizeFileter; /// ?????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????????????????? BOOL bFeatureExtractEnable; /// ????????????????????? BOOL bFaceFeatureExtractEnable; /// ????????????????? BOOL bFaceFeatureEnable; /// ??????????????? BOOL bFaceSnapEnable; /// ??????????? }NET_NONMOTORDETECT_RULE_INFO; ///@brief ???????EVENT_IVS_VEHICLEDETECT(?????????)???????????? typedef struct tagNET_VEHICLEDETECT_RULE_INFO { DWORD dwSize; /// ??????? int nSnapThreshold; /// ??????????,?????????????????????????????????????????????????????????????? UINT nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? int nExcludeRegionNum; /// ????????? DH_POLY_POINTS stuExcludeRegion[10]; /// ??????? NET_COMPLIANT_INFO stuCompliant; /// ?????????? BOOL bFeatureExtractEnable; /// ???????????????????? BOOL bSizeFileter; /// ?????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????????????????? }NET_VEHICLEDETECT_RULE_INFO; ///@brief ???????????????? typedef struct tagNET_HELMET_RULE_EXT_INFO { BOOL bDetectMultiColor; /// ?????????????, ????????? UINT nDetectColorNum; /// ??????????? EM_CLOTHES_COLOR emMultiColor[32]; /// ?????????, bDetectMultiColor ?TRUE????? BYTE byReserved[2048]; /// ??????? } NET_HELMET_RULE_EXT_INFO; ///@brief ?????????? typedef struct tagNET_HELMET_DETECT_RULE { BOOL bEnable; /// ??????? BOOL bWear; /// ??????????? BOOL bDetectColor; /// ????????????? EM_CLOTHES_COLOR emHelmetColor; /// ???????, bDetectColor ? TRUE ????? NET_HELMET_RULE_EXT_INFO *pstHelmetRuleExtInfo; /// ????????????????, ???????????????? BYTE byReserved[120]; /// ??????? } NET_HELMET_DETECT_RULE; ///@brief ?????????????? typedef enum tagEM_WORK_CLOTHES_TYPE { EM_WORK_CLOTHES_UNKNOWN, /// ??? EM_WORK_CLOTHES_LONG_SLEEVE, /// ???? EM_WORK_CLOTHES_SHORT_SLEEVE, /// ???? } EM_WORK_CLOTHES_TYPE; ///@brief ?????????????? typedef enum tagEM_CLOTHES_TEXTURE_TYPE { EM_CLOTHES_TEXTURE_UNKNOWN, /// ??? EM_CLOTHES_TEXTURE_CHECKED, /// ???? EM_CLOTHES_TEXTURE_FLORAL, /// ??h EM_CLOTHES_TEXTURE_PURE, /// ??? EM_CLOTHES_TEXTURE_STRIPE, /// ???? EM_CLOTHES_TEXTURE_DESIGN, /// ??? EM_CLOTHES_TEXTURE_JOINT, /// ??? } EM_CLOTHES_TEXTURE_TYPE; ///@brief ?????????????????? typedef struct tagNET_WORKCLOTH_RULE_EXT_INFO { UINT nColorLegal; /// ??????????????????????0??????????1???????2???????? BOOL bDetectMultiColor; /// ?????????????, ????????? UINT nDetectColorNum; /// ??????????? EM_CLOTHES_COLOR emMultiColor[32]; /// ?????????, bDetectMultiColor ?TRUE????? UINT nTypeLegal; /// ???????????????????????0??????????1???????2???????? UINT nClothesTypeNum; /// ???????????????? EM_WORK_CLOTHES_TYPE emClothesType[32]; /// ?????????? UINT nTextureLegal; /// ?????????????????????????0??????????1???????2???????? UINT nTextureNum; /// ?????????????? EM_CLOTHES_TEXTURE_TYPE emTextureType[32]; /// ?????????? BYTE byReserved[2044]; /// ??????? } NET_WORKCLOTH_RULE_EXT_INFO; ///@brief ???????????? typedef struct tagNET_WORKCLOTH_DETECT_RULE { BOOL bEnable; /// ????????? BOOL bWear; /// ???????????? BOOL bDetectColor; /// ????????????? EM_CLOTHES_COLOR emClothesColor; /// ?????????, bDetectColor ? TRUE ????? NET_WORKCLOTH_RULE_EXT_INFO *pstWorkClothRuleExtInfo; /// ??????????????????, ???????????????? BYTE byReserved[120]; /// ??????? } NET_WORKCLOTH_DETECT_RULE; ///@brief ????????????? typedef struct tagNET_WORKVEST_DETECT_RULE { BOOL bEnable; /// ????????? BOOL bWear; /// ??????????? BOOL bDetectColor; /// ????????????? EM_CLOTHES_COLOR emVestColor; /// ???????, bDetectColor ? TRUE ????? BYTE byReserved[128]; /// ??????? } NET_WORKVEST_DETECT_RULE; ///@brief ?????????? typedef enum tagEM_WORKPANTS_TYPE { EM_WORKPANTS_TYPE_UNKNWON, /// ??? EM_WORKPANTS_TYPE_LONG, /// ???? EM_WORKPANTS_TYPE_SHORT, /// ??? } EM_WORKPANTS_TYPE; ///@brief ??????????? typedef struct tagNET_WORKPANTS_DETECT_RULE { BOOL bEnable; /// ????????? BOOL bWear; /// ???????????? UINT nPantsTypeNum; /// ????????????? EM_WORKPANTS_TYPE emPantsType[32]; /// ?????????? BYTE byReserved[252]; /// ??????? } NET_WORKPANTS_DETECT_RULE; ///@brief ????????????? typedef struct tagNET_PROHELMET_DETECT_RULE { BOOL bEnable; /// ???????????? BOOL bWear; /// ?????????????? char byReserved[128]; /// ??????? } NET_PROHELMET_DETECT_RULE; ///@brief ?????????????? typedef struct tagNET_WORKCLOTHES_DESCRIPT { NET_HELMET_DETECT_RULE stuHelemetRule; /// ?????????? NET_WORKCLOTH_DETECT_RULE stuWorkClothRule; /// ???????????? NET_WORKVEST_DETECT_RULE stuWorkVestRule; /// ????????????? NET_WORKPANTS_DETECT_RULE stuWorkPantsRule; /// ??????????? UINT nSensitivity; /// ?????????1-10???????????????????? UINT nAlarmTime; /// ??????????, ?????????????????????? UINT nAlarmRepeatTime; /// ???????????????????? NET_PROHELMET_DETECT_RULE stuProhelmet; /// ????????????? BYTE byReserved[484]; /// ??????? } NET_WORKCLOTHES_DESCRIPT; ///@brief ????????????? typedef enum tagEM_WORKCLOTHDETECT_RULE_TYPE { EM_WORKCLOTHDETECT_RULE_UNKNWON, /// ??? EM_WORKCLOTHDETECT_RULE_HELMET, /// ???? EM_WORKCLOTHDETECT_RULE_WORKCLOTH, /// ?????? EM_WORKCLOTHDETECT_RULE_WORKPANTS, /// ?????? EM_WORKCLOTHDETECT_RULE_PROTECTIVE, /// ?????? EM_WORKCLOTHDETECT_RULE_TYPE_PROHELMET, /// ???????? EM_WORKCLOTHDETECT_RULE_FIREPROOFCLOTHES, /// ?????? } EM_WORKCLOTHDETECT_RULE_TYPE; ///@brief ?????? typedef enum tagEM_WORKCLOTHDETECT_TRIGGER_MODE { EM_WORKCLOTHDETECT_TRIGGER_MODE_UNKNWON, /// ??? EM_WORKCLOTHDETECT_TRIGGER_MODE_TYPEDETECT, /// ?????? EM_WORKCLOTHDETECT_TRIGGER_MODE_COMPAREDETECT, /// ????? } EM_WORKCLOTHDETECT_TRIGGER_MODE; ///@brief ???????EVENT_IVS_WORKCLOTHDETECT(?????????)???????????? typedef struct tagNET_WORKCLOTHDETECT_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nDescriptNum; /// ?????????????? NET_WORKCLOTHES_DESCRIPT stuWorkClothesDescript[64]; /// ??????????, ???????????????? EM_WORKCLOTHDETECT_RULE_TYPE emRuleType[32]; /// ?????????? UINT nRuleTypeNum; /// ????????????? EM_WORKCLOTHDETECT_TRIGGER_MODE emTriggerMode; /// ?????? } NET_WORKCLOTHDETECT_RULE_INFO; ///@brief ???????EVENT_IVS_SILICON_FIREPUTTER_DETECTION(???????????)???????????? typedef struct tagNET_SILICON_FIREPUTTER_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????,???????? 0~65535 UINT nRepeatAlarmTime; /// ?????????????????? ????0-3600 ?0????????? int nSensibility; /// ???????? 1~100?? ???????????0????????? } NET_SILICON_FIREPUTTER_DETECTION_RULE_INFO; ////////////////////////------------------------------------------------------------//////////////////////// ///@brief ??????? EVENT_IVS_SIGNAL_LIGHTOFF_DETECTION(?????????????)???????????? typedef struct tagNET_SIGNAL_LIGHTOFF_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ???????????????????,????????0~65535 UINT nAlarmInterval; /// ???????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? UINT nAnomalySecond; /// ??????????????????????????????????????????????(10,600] } NET_SIGNAL_LIGHTOFF_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_ALWAYSON_DETECTION(??????????????)???????????? typedef struct tagNET_SIGNAL_LIGHT_ALWAYSON_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????,????????0~65535 UINT nAlarmInterval; /// ????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? UINT nAnomalySecond; /// ???????????????????????????????????????????????(90,600] } NET_SIGNAL_LIGHT_ALWAYSON_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_ON_DETECTION(?????????????)???????????? typedef struct tagNET_SIGNAL_LIGHT_ON_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ???????????????????,????????0~65535 UINT nAlarmInterval; /// ???????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? UINT nAnomalySecond; /// ???????????????????????????????????????????????????????????????(30,600] } NET_SIGNAL_LIGHT_ON_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_NOBRIGHT_DETECTION(????????????????)???????????? typedef struct tagNET_SIGNAL_LIGHT_NOBRIGHT_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ???????????????????,????????0~65535 UINT nAlarmInterval; /// ???????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? UINT nAnomalySecond; /// ???????????????????????????????????????????????????(30,600] } NET_SIGNAL_LIGHT_NOBRIGHT_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_BLOCKING_DETECTION(?????????????)???????????? typedef struct tagNET_SIGNAL_LIGHT_BLOCKING_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????,????????0~65535 UINT nAlarmInterval; /// ????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? } NET_SIGNAL_LIGHT_BLOCKING_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_SIGNAL_LIGHT_FLASHYELLOW_DETECTION(?????????????)???????????? typedef struct tagNET_SIGNAL_LIGHT_FLASHYELLOW_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ???????????????????,????????0~65535 UINT nAlarmInterval; /// ???????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? UINT nAnomalySecond; /// ??????????????????????????????????????????[30,600] } NET_SIGNAL_LIGHT_FLASHYELLOW_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_LEDSCREEN_NOTLIGHTUP_DETECTION(LED????????????)???????????? typedef struct tagNET_LEDSCREEN_NOTLIGHTUP_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????,????????0~65535 UINT nAlarmInterval; /// ????????????????????? UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? } NET_LEDSCREEN_NOTLIGHTUP_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_BREAK_RULE_BUILDING_DETECTION(?????????????)???????????? typedef struct tagNET_BREAK_RULE_BUILDING_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? DH_POLY_POINTS stuExcludeRegion[DH_MAX_EXCLUDEREGION_NUM]; /// ????????????????????????????????????????????????????????????0????????????? int nExcludeRegionNum; /// ????????? UINT nMinDuration; /// ?????????,????????0~65535 UINT nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? TP_U64 nReportInterval; /// ?????????? } NET_BREAK_RULE_BUILDING_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_FIRE_EXTINGUISHER_DETECTION(???????????)???????????? typedef struct tagNET_FIRE_EXTINGUISHER_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? int nMinDuration; /// ?????????,????????0~65535 int nRepeatAlarmTime; /// ??????????????????0????????? int nMinlegalNum; /// ???????????????????????????????????? int nMaxlegalNum; /// ???????????????????????????????? int nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? } NET_FIRE_EXTINGUISHER_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_OBJECT_PLACEMENT_DETECTION(??????????)???????????? typedef struct tagNET_OBJECT_PLACEMENT_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????,????????0~65535 int nRepeatAlarmTime; /// ??????????????????0????????? int nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? char szObjTypes[16][32]; /// ??????????????????? int nObjTypesNum; /// ??????????????????????? } NET_OBJECT_PLACEMENT_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_REGIONNUM_STAT(?????????????)???????????? typedef struct tagNET_REGIONNUM_STAT_RULE_INFO { DWORD dwSize; /// ??????? UINT nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nMinDuration; /// ?????????,????????0~65535 int nSnapObjRectEnable; /// ?????????????????, 0:????? 1:??? int nSensitivity; /// ?????????1-10???????????????????? BOOL bSizeFilter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFilter; /// ???????????????? int nStatMode; /// ????????0:???????, 1:??????? UINT nAreaID; /// ????????????????ID } NET_REGIONNUM_STAT_RULE_INFO; ////////////////////////------------------------------------------------------------//////////////////////// ///@brief ??????????????????? typedef enum tagEM_CONDITION_EXPR_TYPE { EM_CONDITION_EXPR_UNKNOWN = 0, /// ??? EM_CONDITION_EXPR_GREATER, /// ???? EM_CONDITION_EXPR_LESS, /// ???? EM_CONDITION_EXPR_EQUAL, /// ???? } EM_CONDITION_EXPR_TYPE; ///@brief ????????????? typedef struct tagNET_WORKSTAT_DESCRIPT { NET_WORKCLOTHES_DESCRIPT stuWorkClothesDescript; /// ?????????????? UINT nTriggerNum; /// ????????????????? EM_CONDITION_EXPR_TYPE emConditionExpr; /// ?????????????nTriggerNum?????????????(emConditionExpr nTriggerNum) ????????????? UINT nStatInterval; /// ??????????????????1-86400 UINT nSensitivity; /// ????????????????????, ??1-10 UINT nAlarmTime; /// ??????????, ?????????????????????? UINT nAlarmRepeatTime; /// ???????????????????? BYTE byReserved[1012]; /// ??????? } NET_WORKSTAT_DESCRIPT; ///@brief ???????EVENT_IVS_WORKSTATDETECTION(??????)???????????? typedef struct tagNET_WORKSTATDETECTION_RULE_INFO { DWORD dwSize; /// ??????? UINT nStatDescriptNum; /// ????????????????? NET_WORKSTAT_DESCRIPT stuWorkStatDescript[64]; /// ????????????? UINT nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? UINT nDetectTyeNum; /// ?????????? EM_WORKSTATDETECTION_TYPE emDetectType[32]; /// ??????? } NET_WORKSTATDETECTION_RULE_INFO; ///@brief ??????????? typedef enum tagEM_OBJECT_FILTER_TYPE { EM_OBJECT_FILTER_TYPE_UNKNOWN, /// ??? EM_OBJECT_FILTER_TYPE_HUMAN, /// ?? EM_OBJECT_FILTER_TYPE_VEHICLE, /// ?? } EM_OBJECT_FILTER_TYPE; ///@brief ????????? typedef struct tagNET_OBJECT_FILTER_INFO { UINT nObjectFilterTypeNum; /// ?????????????? EM_OBJECT_FILTER_TYPE emObjectFilterType[16]; /// ??????????? BYTE byReserved[1024]; /// ??????? }NET_OBJECT_FILTER_INFO; ///@brief ???????EVENT_IVS_CROSSLINEDETECTION(???????????)???????????? typedef struct tagNET_CROSSLINE_RULE_INFO { DWORD dwSize; /// ??????? int nDirection; /// ?????:0:????????;1:????????;2:????????? int nDetectLinePoint; /// ??????????? POINTCOORDINATE stuDetectLine[20]; /// ?????? int nPtzPresetId; /// ????????? 0~65535 BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? int nTriggerPosition; /// ?????????????? BYTE bTriggerPosition[8]; /// ????????????,0-???????????, 1-??????????????, 2-????????????, 3-??????????????, 4-????????????? int nTrackDuration; /// ??????????,??????, ????[0-300]??0??:??????, 1~300??:?????????? UINT nVehicleSubTypeNum; /// ???????????????? EM_CATEGORY_TYPE emVehicleSubType[128]; /// ????????????????? BOOL bObjectFilter; /// ????????????????, ??stuObjectFilter ??????? NET_OBJECT_FILTER_INFO stuObjectFilter; /// ???????????? int nSensitivity; /// ??????,??????????, 0-10 char byReserved[4]; /// ???????????? } NET_CROSSLINE_RULE_INFO; ///@brief ???????EVENT_IVS_CROSSREGIONDETECTION(???????????)???????????? typedef struct tagNET_CROSSREGION_RULE_INFO { DWORD dwSize; /// ??????? int nDirection; /// ?????:0:Enter;1:Leave;2:Both int nDetectRegionPoint; /// ???????????? POINTCOORDINATE stuDetectRegion[20]; /// ?????? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? int nActionType; /// ????????? BYTE bActionType[4]; /// ?????????,0-???? 1-??? 2-???????? 3-??????? int nMinTargets; /// ??????????(??bActionType??????"2-????????"?????) int nMaxTargets; /// ?????????(??bActionType??????"2-????????"?????) UINT nMinDuration; /// ????????? ??????(??bActionType??????"2-????????"?????) int nReportInterval; /// ??????????? ??????(??bActionType??????"2-????????"?????) int nTrackDuration; /// ??????????,0??:??????,1~300??:?????????? UINT nVehicleSubTypeNum; /// ???????????????? EM_CATEGORY_TYPE emVehicleSubType[128]; /// ????????????????? BOOL bObjectFilter; /// ????????????????, ??stuObjectFilter ??????? NET_OBJECT_FILTER_INFO stuObjectFilter; /// ???????????? int nSensitivity; /// ??????,??????????, 0-10 char byReserved[4]; /// ???????????? } NET_CROSSREGION_RULE_INFO; ///@brief ????????????????? typedef enum tagEM_FEATURE_ABSTRACT_TYPE { EM_FEATURE_ABSTRACT_UNKNOWN = -1, /// ??? EM_FEATURE_ABSTRACT_FACE, /// ??? EM_FEATURE_ABSTRACT_HUMAN_TRAIT, /// ???? EM_FEATURE_ABSTRACT_VEHICLE, /// ?????? EM_FEATURE_ABSTRACT_NON_MOTOR_VEHICLE, /// ??????? }EM_FEATURE_ABSTRACT_TYPE; ///@brief ???????EVENT_IVS_FEATURE_ABSTRACT(???????)???????????? typedef struct tagNET_FEATURE_ABSTRACT_RULE_INFO { DWORD dwSize; /// ??????? int nFeature; /// ?????????? char szFeatureVersions[10][32]; /// ????????????????????????????????????????????????????????????,?????10????? EM_FEATURE_ABSTRACT_TYPE emAbstractType; /// ????????????????? }NET_FEATURE_ABSTRACT_RULE_INFO; ///@brief ???????????? typedef struct tagNET_ELECTRIC_GLOVE_FEATURE { BOOL bInsulate; /// ?????, TRUE:???????, FALSE:??????? BYTE byReserved[1028]; /// ??????? } NET_ELECTRIC_GLOVE_FEATURE; ///@brief ???????????????????? typedef struct tagNET_ELECTRIC_GLOVE_DETECT_CONDITION { BOOL bExist; /// ?????, ??bGloveFeature ??stuGloveFeature?????? /// (1) ??bGloveFeature=FALSE?? ???????????????? /// (2) ??bGloveFeature=TRUE, bExist=TRUE, ??????????stuGloveFeature?????? /// (3) ??bGloveFeature=TRUE, bExist=FALSE, ???????????stuGloveFeature?????? BOOL bGloveFeature; /// ??????????????? NET_ELECTRIC_GLOVE_FEATURE stuGloveFeature; /// ???????? BYTE byReserved[512]; /// ??????? } NET_ELECTRIC_GLOVE_DETECT_CONDITION; ///@brief ???????EVENT_IVS_ELECTRIC_GLOVE_DETECT(????????????????)???????????? typedef struct tagNET_ELECTRIC_GLOVE_DETECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDetectConditionNum; /// ??????????? NET_ELECTRIC_GLOVE_DETECT_CONDITION stuGloveDetectCondition[32]; /// ??????????, ????????????????????? } NET_ELECTRIC_GLOVE_DETECT_RULE_INFO; ///@brief ???????????? typedef struct tagNET_ELECTRIC_LADDER_FEATURE { BOOL bInsulate; /// ????? , TRUE:???????, FALSE:??????? BYTE byReserved[1028]; /// ??????? } NET_ELECTRIC_LADDER_FEATURE; ///@brief ???????????????????? typedef struct tagNET_ELECTRIC_LADDER_DETECT_CONDITION { BOOL bExist; /// ?????, ??bLadderFeature ??stuLadderFeature?????? /// (1) ??bLadderFeature=FALSE?? ???????????????? /// (2) ??bLadderFeature=TRUE, bExist=TRUE, ??????????stuLadderFeature?????? /// (3) ??bLadderFeature=TRUE, bExist=FALSE, ???????????stuLadderFeature?????? BOOL bLadderFeature; /// ??????????????? NET_ELECTRIC_LADDER_FEATURE stuLadderFeature; /// ???????? BYTE byReserved[512]; /// ??????? } NET_ELECTRIC_LADDER_DETECT_CONDITION; ///@brief ???????EVENT_IVS_ELECTRIC_LADDER_DETECT(????????????????)???????????? typedef struct tagNET_ELECTRIC_LADDER_DETECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDetectConditionNum; /// ??????????? NET_ELECTRIC_LADDER_DETECT_CONDITION stuLadderDetectCondition[32]; /// ??????????, ????????????????????? } NET_ELECTRIC_LADDER_DETECT_RULE_INFO; ///@brief ?????????? typedef enum tagEM_COLOR_OPERATE_TYPE { EM_COLOR_OPERATE_TYPE_UNKNOWN = -1, /// ??? EM_COLOR_OPERATE_TYPE_UNEQUAL, /// != EM_COLOR_OPERATE_TYPE_EQUAL, /// == } EM_COLOR_OPERATE_TYPE; ///@brief ??????? typedef struct tagNET_COLOR_FEATRUE { EM_COLOR_OPERATE_TYPE emColorOperate; /// ?????????? EM_UNIFIED_COLOR_TYPE emColor; /// ??? BYTE byReserved[128]; /// ??????? } NET_COLOR_FEATRUE; ///@brief ??????????? typedef struct tagNET_ELECTRIC_CURTAIN_FEATURE { NET_COLOR_FEATRUE stuColorFeature; /// ??????? BYTE byReserved[1024]; /// ??????? } NET_ELECTRIC_CURTAIN_FEATURE; ///@brief ????????????????? typedef struct tagNET_ELECTRIC_CURTAIN_DETECT_CONDITION { BOOL bExist; /// ?????, ??bCurtainFeature ??stuCurtainFeature?????? /// (1) ??bCurtainFeature=FALSE?? ??????????????? /// (2) ??bCurtainFeature=TRUE, bExist=TRUE, ??????????stuCurtainFeature???? /// (3) ??bCurtainFeature=TRUE, bExist=FALSE, ???????????stuCurtainFeature???? BOOL bCurtainFeature; /// ?????????????? NET_ELECTRIC_CURTAIN_FEATURE stuCurtainFeature; /// ??????? BYTE byReserved[512]; /// ??????? } NET_ELECTRIC_CURTAIN_DETECT_CONDITION; ///@brief ???????EVENT_IVS_ELECTRIC_CURTAIN_DETECT(?????????????)???????????? typedef struct tagNET_ELECTRIC_CURTAIN_DETECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDetectConditionNum; /// ??????????? NET_ELECTRIC_CURTAIN_DETECT_CONDITION stuCurtainDetectCondition[32]; /// ?????????, ????????????????????? } NET_ELECTRIC_CURTAIN_DETECT_RULE_INFO; ///@brief ???????????? typedef struct tagNET_ELECTRIC_FENCE_FEATURE { EM_ELECTRIC_FENCE_TYPE emFenceType; /// ???????? BYTE byReserved[1028]; /// ??????? } NET_ELECTRIC_FENCE_FEATURE; ///@brief ????????????????????? typedef struct tagNET_ELECTRIC_FENCE_DETECT_CONDITION { BOOL bExist; /// ?????, ??bFenceFeature ??stuFenceFeature?????? /// (1) ??bFenceFeature=FALSE?? ???????????????? /// (2) ??bFenceFeature=TRUE, bExist=TRUE, ??????????stuFenceFeature?????? /// (3) ??bFenceFeature=TRUE, bExist=FALSE, ???????????stuFenceFeature?????? BOOL bFenceFeature; /// ??????????????? NET_ELECTRIC_FENCE_FEATURE stuFenceFeature; /// ???????? BYTE byReserved[512]; /// ??????? } NET_ELECTRIC_FENCE_DETECT_CONDITION; ///@brief ???????EVENT_IVS_ELECTRIC_FENCE_DETECT(?????????????????)???????????? typedef struct tagNET_ELECTRIC_FENCE_DETECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDetectConditionNum; /// ??????????? NET_ELECTRIC_FENCE_DETECT_CONDITION stuFenceDetectCondition[32]; /// ???????????, ????????????????????? } NET_ELECTRIC_FENCE_DETECT_RULE_INFO; ///@brief ????????????? typedef struct tagNET_ELECTRIC_SIGNBOARD_FEATURE { EM_ELECTRIC_SIGNBOARD_TYPE emSignboardType; /// ????????? BYTE byReserved[1028]; /// ??????? } NET_ELECTRIC_SIGNBOARD_FEATURE; ///@brief ???????????????????? typedef struct tagNET_ELECTRIC_SIGNBOARD_DETECT_CONDITION { BOOL bExist; /// ?????, ??bSignboardFeature ??stuSignboardFeature?????? /// (1) ??bSignboardFeature=FALSE?? ????????????????? /// (2) ??bSignboardFeature=TRUE, bExist=TRUE, ??????????stuSignboardFeature?????? /// (3) ??bSignboardFeature=TRUE, bExist=FALSE, ???????????stuSignboardFeature?????? BOOL bSignboardFeature; /// ???????????????? NET_ELECTRIC_SIGNBOARD_FEATURE stuSignboardFeature; /// ????????? BYTE byReserved[512]; /// ??????? } NET_ELECTRIC_SIGNBOARD_DETECT_CONDITION; ///@brief ???????EVENT_IVS_ELECTRIC_SIGNBOARD_DETECT(????????????????)???????????? typedef struct tagNET_ELECTRIC_SIGNBOARD_DETECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDetectConditionNum; /// ??????????? NET_ELECTRIC_SIGNBOARD_DETECT_CONDITION stuSignboardCondition[32]; /// ???????????, ????????????????????? } NET_ELECTRIC_SIGNBOARD_DETECT_RULE_INFO; ///@brief ????????????? typedef struct tagNET_ELECTRIC_BELT_FEATURE { EM_BELT_WARE_TYPE emBeltWareType; /// ???????????? BYTE byReserved[1028]; /// ??????? } NET_ELECTRIC_BELT_FEATURE; ///@brief ??????????????????? typedef struct tagNET_ELECTRIC_BELT_DETECT_CONDITION { BOOL bExist; /// ?????, ??bBeltFeature ??stuBeltFeature?????? /// (1) ??bBeltFeature=FALSE?? ????????????????? /// (2) ??bBeltFeature=TRUE, bExist=TRUE, ??????????stuBeltFeature?????? /// (3) ??bBeltFeature=TRUE, bExist=FALSE, ???????????stuBeltFeature?????? BOOL bBeltFeature; /// ???????????????? NET_ELECTRIC_BELT_FEATURE stuBeltFeature; /// ????????? BYTE byReserved[512]; /// ??????? } NET_ELECTRIC_BELT_DETECT_CONDITION; ///@brief ???????EVENT_IVS_ELECTRIC_BELT_DETECT(????????????????)???????????? typedef struct tagNET_ELECTRIC_BELT_DETECT_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? BOOL bSizeFileter; /// ??????????????????????? UINT nDetectConditionNum; /// ??????????? NET_ELECTRIC_BELT_DETECT_CONDITION stuBeltCondition[32]; /// ????????????, ????????????????????? UINT nMinDuration; /// ?????????????:?? 0-60 UINT nReportInterval; /// ??????????????:?? UINT nSensitivity; /// ?????????1-10??????5??????????????? } NET_ELECTRIC_BELT_DETECT_RULE_INFO; ///@brief ???????EVENT_IVS_BANNER_DETECTION(???????????)???????????? typedef struct tagNET_BANNER_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? int nDetectRegionNum; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? UINT nMinDuration; /// ?????????, ????:??????1-600, ???30 int nReportInterval; /// ??????????,????:??,????0-600,???30,?0???????? int nSensitivity; /// ?????????,????1-10 int nBannerPercent; /// ?????????????????????????1~100?????80 BYTE bReserved[520]; /// ??????? } NET_BANNER_DETECTION_RULE_INFO; ///@brief ??????????????????????? typedef enum tagEM_CFG_CHEF_CLOTHES_COLORS { EM_CFG_CHEF_CLOTHES_COLORS_UNKNOWN, /// ??? EM_CFG_CHEF_CLOTHES_COLORS_BLACK, /// ??? EM_CFG_CHEF_CLOTHES_COLORS_WHITE, /// ??? EM_CFG_CHEF_CLOTHES_COLORS_RED, /// ??? } EM_CFG_CHEF_CLOTHES_COLORS; ///@brief ??????? EVENT_IVS_SMART_KITCHEN_CLOTHES_DETECTION(?????????????)???????????? typedef struct tagNET_SMART_KITCHEN_CLOTHES_DETECTION_RULE_INFO { DWORD dwSize; /// ??????? BOOL bMaskEnable; /// ??????????? ??TRUE:???? FALSE:???? BOOL bChefHatEnable; /// ????????????TRUE:???? FALSE:???? BOOL bChefClothesEnable; /// ?????????????TRUE:???? FALSE:???? int nChefClothesColorNum; /// ???????????????????????? EM_CFG_CHEF_CLOTHES_COLORS emChefClothesColors[8]; /// ???????????????????? int nReportInterval; /// ??????????,????:??,????0-600,???30,?0???????? BYTE byReserved[4096]; /// ??????? }NET_SMART_KITCHEN_CLOTHES_DETECTION_RULE_INFO; ///@brief ???? typedef struct tagNET_CALIBRATE_LINE_INFO { NET_POINT stuStartPoint; /// ??? NET_POINT stuEndPoint; /// ??? } NET_CALIBRATE_LINE_INFO; ///@brief ???????EVENT_IVS_WATER_STAGE_MONITOR(?????????)???????????? typedef struct tagNET_WATER_STAGE_MONITOR_RULE_INFO { int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? DWORD dwSceneMask; /// ????????????? /// bit0???????????????, bit1??????????????? /// bit2???????????????, bit3??????????????? NET_CALIBRATE_LINE_INFO stuCalibrateLine; /// ???? BYTE byReserved[4096]; /// ?????? } NET_WATER_STAGE_MONITOR_RULE_INFO; ///@brief ??????? EVENT_IVS_FLOATINGOBJECT_DETECTION (???????)???????????? typedef struct tagNET_FLOATINGOBJECT_DETECTION_RULE_INFO { int nDetectRegionPoint; /// ??????????? POINTCOORDINATE stuDetectRegion[20]; /// ????? float fAlarmThreshold; /// ?????????????????????????????????????????????;????:%????????(0, 100] UINT nAlarmInterval; /// ?????????????????????????????[60, 86400] BOOL bDataUpload; /// ????????????? UINT nUpdateInterval; /// ??????????????(????????)????????[60, 86400] BYTE byReserved[4096]; /// ??????? } NET_FLOATINGOBJECT_DETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_RIOTERDETECTION (??????) ???????????? typedef struct tagNET_RIOTERDETECTION_RULE_INFO { int nDetectRegionPoint; /// ?????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? int nModeNum; /// ????????? BYTE nModeList[64]; /// ????????, ?????????? 0:???"MinArea"??????????????? 1: ???"Humans" ??????????????? POINTCOORDINATE stuMinDetectRect[2]; /// ???????????????????????????????????????????????????????????????????????????? int nRioterThreshold; /// ??????????, ???????????????????????. 0????????? ModeList?1???? UINT nMinDuration; /// ?????????,???????? 1~600,????30 int nReportInterval; /// ?????????,?????? 0~600;????0????????????, ????30 int nSensitivity; /// ?????????1-10????????????????????????????????? int nTrackDuration; /// ??????????,0??:??????,1~300??:?????????? BYTE byReserved[4096]; /// ??????? }NET_RIOTERDETECTION_RULE_INFO; ///@brief ??????? EVENT_IVS_LEFTDETECTION (??????????) ???????????? ///@brief ??????? EVENT_IVS_PARKINGDETECTION ????????? ???????????? typedef struct tagNET_LEFTDETECTION_RULE_INFO { int nDetectRegionPoint; /// ?????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? int nTriggerPosition; /// ?????????????? BYTE bTriggerPosition[8]; /// ????????????,0-???????????, 1-??????????????, 2-????????????, 3-??????????????, 4-????????????? int nMinDuration; /// ????????? ????????0~65535 int nTrackDuration; /// ??????????,0??:??????,1~300??:?????????? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? UINT nSensitivity; /// ?????????1-10??????????????? BYTE byReserved[4092]; /// ??????? }NET_LEFTDETECTION_RULE_INFO, NET_PARKINGDETECTION_RULE_INFO; ///@brief ??????????? typedef enum tagEM_RULE_DETECT_OBJECT_TYPE { EM_RULE_DETECT_OBJECT_TYPE_UNKNOWN, /// ??? EM_RULE_DETECT_OBJECT_TYPE_HANGING_PACKAGE, /// ????(??????????????) }EM_RULE_DETECT_OBJECT_TYPE; ///@brief ??????? EVENT_IVS_WANDERDETECTION( ??????)???????????? ///@brief ??????? EVENT_IVS_STAYDETECTION( ??????)???????????? typedef struct tagNET_WANDERDETECTION_RULE_INFO { int nDetectRegionPoint; /// ?????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? int nTriggerPosition; /// ?????????????? BYTE bTriggerPosition[8]; /// ????????????,0-???????????, 1-??????????????, 2-????????????, 3-??????????????, 4-????????????? int nTriggerTargetsNumber; /// ??????????????????????? UINT nMinDuration; /// ????????? ????????0~65535 int nReportInterval; /// ?????????,?????? 0~600;????0????????????, ????30 int nTrackDuration; /// ??????????,0??:??????,1~300??:?????????? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? char szRuleType[32]; /// ????????:"WorkManage":?????? ??????????????????? EM_RULE_DETECT_OBJECT_TYPE emDetectObject; /// ??????????? ???????RuleType?????? UINT nSensitivity; /// ?????????1-10??????????????? BYTE byReserved[4056]; /// ??????? } NET_WANDERDETECTION_RULE_INFO; ///@brief ???????EVENT_IVS_VIDEOABNORMALDETECTION(?????)???????????? typedef struct tagNET_VIDEOABNORMALDETECTION_RULE_INFO { UINT nMinDuration; /// ????????? ????????0~65535 int nSensitivity; /// ??????, ??1-10???????????????(????????????????????????????????????????) int nDetectType; /// ????????? int nReserved; /// ??????? int nThreshold[32]; /// ????????,????1~100 BYTE bDetectType[32]; /// ???????,0-??????, 1-??????, 2-???????, 3-????, 4-????, 5-??????? /// 6-?????? , 7-??????? , 8-????? , 9-????????? , 10-????????? /// 11-?????? , 12-?????? , 13-?????? , 14-?????? , 15-??????, 16-??????? BYTE byReserved[4096]; /// ??????? } NET_VIDEOABNORMALDETECTION_RULE_INFO; ///@brief EVENT_IVSS_FACEATTRIBUTE (?????????) ??????????????? typedef struct tagNET_FACEATTRIBUTE_RULE_INFO { int nDetectRegionPoint; /// ?????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? int nMinDuration; /// ????????? ????????0~65535 int nTriggerTargets; /// ???????????????? int nSensitivity; /// ??????, ??1-10??????????????? int nReportInterval; /// ?????????,?????? 0~600;????0????????????, ????30 BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? int nFaceFeatureNum; /// ????????????????? NET_EM_FACEFEATURE_TYPE emFaceFeatureType[32]; /// ???????????? BYTE byReserved[4096]; /// ??????? }NET_FACEATTRIBUTE_RULE_INFO; ///@brief ?????????? typedef enum tagEM_MOVEDETECTION_TYPE { EM_MOVEDETECTION_UNKNOWN, /// ??????? EM_MOVEDETECTION_FASTMOVE, /// ??????? EM_MOVEDETECTION_ABRUPT_SPEEDUP, /// ?????? EM_MOVEDETECTION_ABRUPT_SLOWDOWN, /// ?????? }EM_MOVEDETECTION_TYPE; ///@brief EVENT_IVS_MOVEDETECTION (??????) ??????????????? typedef struct tagNET_MOVEDETECTION_RULE_INFO { int nDetectRegionPoint; /// ?????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? int nTriggerPosition; /// ?????????????? BYTE bTriggerPosition[8]; /// ????????????,0-???????????, 1-??????????????, 2-????????????, 3-??????????????, 4-????????????? int nTriggerSpeed; /// ???????????????????,????km/h int nSensitivity; /// ??????, ??1-10??????????????? UINT nMinDuration; /// ????????? ????????0~65535 int nTrackDuration; /// ?????????????? BOOL bSizeFileter; /// ??????????????????????? NET_CFG_SIZEFILTER_INFO stuSizeFileter; /// ???????????????? int nDetectNum; /// ?????????? EM_MOVEDETECTION_TYPE emDetectType[8]; /// ??????? BYTE byReserved[4096]; /// ??????? }NET_MOVEDETECTION_RULE_INFO; ///@brief EVENT_IVSS_FACECOMPARE (IVSS?????????) ??????????????? typedef struct tagNET_FACECOMPARE_INFO { UINT nRemoveRepeatInterval; /// ????????????????????????? UINT nStayInterval; /// ??????????????????? UINT nWanderInterval; /// ??????????????????? int nLinkGroupNum; /// ??????????? NET_CFG_LINKGROUP_INFO stuLinkGroup[20]; /// ??????????? NET_CFG_STRANGERMODE_INFO stuStrangerMode; /// ?????????? BYTE byReserved[4096]; /// ??????? }NET_FACECOMPARE_INFO; ///@brief ???????????? typedef enum tagEM_CONVEYER_BELT_DETECT_TYPE { EM_CONVEYER_BELT_DETECT_UNKNOWN, /// ??? EM_CONVEYER_BELT_DETECT_FULL_LOAD, /// ???? EM_CONVEYER_BELT_DETECT_NON_LOAD, /// ???? EM_CONVEYER_BELT_DETECT_RUN_OFF, /// ??? EM_CONVEYER_BELT_DETECT_BLOCK, /// ???? EM_CONVEYER_BELT_DETECT_BULK, /// ??????? EM_CONVEYER_BELT_DETECT_COALRATIO, /// ??????? EM_CONVEYER_BELT_DETECT_ARTICLE, /// ?????????? EM_CONVEYER_BELT_DETECT_STHTONTH, /// ??????????? EM_CONVEYER_BELT_DETECT_NTHTOSTH, /// ?????????? EM_CONVEYER_BELT_DETECT_MOVETOSTOP, /// ???????? EM_CONVEYER_BELT_DETECT_STOPTOMOVE, /// ???????? EM_CONVEYER_BELT_DETECT_LOADINGRATE, /// ????? } EM_CONVEYER_BELT_DETECT_TYPE; ///@brief ?????? typedef enum tagEM_NET_ALARM_OUT_MODE { EM_NET_ALARM_OUT_MODE_UNKNOWN = -1, /// ??? EM_NET_ALARM_OUT_MODE_0, /// ???????1??? EM_NET_ALARM_OUT_MODE_1, /// ???????2??? EM_NET_ALARM_OUT_MODE_2, /// ???????1,2????? }EM_NET_ALARM_OUT_MODE; ///@brief ??????????? typedef struct tagNET_COAL_RATIO_LEVEL { float fCoalLevelMin; /// ???????????????????N?????????????????????0-1 float fCoalLevelMax; /// ??????????????????N????????????????????0-1 EM_NET_ALARM_OUT_MODE emAlarmOutMode; /// ?????????????N???????????????????????????? }NET_COAL_RATIO_LEVEL; ///@brief ?????????? typedef struct tagNET_ALARM_LEVEL_THRESHOLD { int nMinThreshold; /// ????? int nMaxThreshold; /// ????? int nMinCmpType; /// ?????????????0???????1????????2???????3??????????4???????5????????? int nMaxCmpType; /// ?????????????0???????1????????2???????3??????????4???????5????????? int nAlarmLevel; /// ?????????????1~5 int nAlarmRuleType; /// 0:??? 1:"NonLoad"???? 2:"RunOff"??? 3:"Block"???? 4:"Bulk"??????? char szReserved[64]; /// ??????? }NET_ALARM_LEVEL_THRESHOLD; ///@brief EVENT_IVS_CONVEYER_BELT_DETECT(????????)??????????????? ///@brief ??????EM_ANALYSE_EVENT_CONVEYER_BELT_BULK/EM_ANALYSE_EVENT_CONVEYER_BELT_NONLOAD/EM_ANALYSE_EVENT_CONVEYOR_ARTICLE_TYPE ///@brief EM_ANALYSE_EVENT_CONVEYER_BELT_RUNOFF/EM_ANALYSE_EVENT_CONVEYER_BELT_BLOCK/EVENT_IVS_CONVEYER_BELT_COAL_RATIO typedef struct tagNET_CONVEYER_BELT_DETECT_RULE_INFO { int nDetectRegionPoint; /// ?????????? POINTCOORDINATE stuDetectRegion[20]; /// ??????? EM_CONVEYER_BELT_DETECT_TYPE emDetectType; /// ???????????? UINT nMinDuration; /// ???????????????, ????[3-30] UINT nReportInterval; /// ?????????????????, ????[1-300] UINT nSensitivity; /// ???????????????????????1-10 POINTCOORDINATE stuComparetLine[2]; /// ?????????????????????????????????? /// ????????????????????????????[0,8191]???? UINT nSizeFilterThreshold; /// ?????????????????SizeFilterThreshold / 10* ComparetLine???????????????? ??????????????????,??[2-8] UINT nWarningThreshold; /// ???????????N????????0=0 int nCount; /// ??????????? Count >0 }NET_IN_QUERY_VIDEO_MCU_CONFERENCE_INFO; ///@brief CLIENT_QueryVideoMcuConference ??????? typedef struct tagNET_OUT_QUERY_VIDEO_MCU_CONFERENCE_INFO { DWORD dwSize; /// ????????,????? int nConferenceNum; /// ??????????? NET_VIDEO_MCU_CONFERENCE_INFO stuConference[16]; /// ???????,??????????????????????????????????? }NET_OUT_QUERY_VIDEO_MCU_CONFERENCE_INFO; ///@brief CLIENT_StopQueryVideoMcuConference ??????? typedef struct tagNET_IN_STOP_QUERY_VIDEO_MCU_CONFERENCE_INFO { DWORD dwSize; /// ????????,????? int nFindId; /// ???Id?? }NET_IN_STOP_QUERY_VIDEO_MCU_CONFERENCE_INFO; ///@brief CLIENT_StopQueryVideoMcuConference ??????? typedef struct tagNET_OUT_STOP_QUERY_VIDEO_MCU_CONFERENCE_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_STOP_QUERY_VIDEO_MCU_CONFERENCE_INFO; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CreateVideoMcuConference(LLONG lLoginID, NET_IN_CREATE_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_CREATE_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ???????ID ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ApplyVideoMcuConferenceID(LLONG lLoginID, NET_IN_APPLY_VIDEO_MCU_CONFERENCEID_INFO* pstuInParam, NET_OUT_APPLY_VIDEO_MCU_CONFERENCEID_INFO* pstuOutParam, int nWaitTime); ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_FinishVideoMcuConference(LLONG lLoginID, NET_IN_FINISH_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_FINISH_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ExitVideoMcuConference(LLONG lLoginID, NET_IN_EXIT_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_EXIT_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ModifyVideoMcuConference(LLONG lLoginID, NET_IN_MODIFY_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_MODIFY_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_OpenMicVideoMcuConference(LLONG lLoginID, NET_IN_OPENMIC_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_OPENMIC_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CloseMicVideoMcuConference(LLONG lLoginID, NET_IN_CLOSEMIC_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_CLOSEMIC_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_GetVideoMcuConference(LLONG lLoginID, NET_IN_GET_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_GET_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartQueryVideoMcuConference(LLONG lLoginID, NET_IN_START_QUERY_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_START_QUERY_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_QueryVideoMcuConference(LLONG lLoginID, NET_IN_QUERY_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_QUERY_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StopQueryVideoMcuConference(LLONG lLoginID, NET_IN_STOP_QUERY_VIDEO_MCU_CONFERENCE_INFO* pstuInParam, NET_OUT_STOP_QUERY_VIDEO_MCU_CONFERENCE_INFO* pstuOutParam, int nWaitTime); /***************************???????MCU?????????? end****************************************************/ /***************************???????MCU????????? start****************************************************/ ///@brief ?????? typedef struct tagNET_TERMINAL_INFO { char szId[16]; /// ???Id ????????? ??????? char szName[128]; /// ??????? char szPassword[128]; /// ??????????? BOOL bOnline; /// ?????????? char szReserved[256]; /// ?????? }NET_TERMINAL_INFO; ///@brief CLIENT_AddVideoMcuTerminal ??????? typedef struct tagNET_IN_ADD_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? NET_TERMINAL_INFO stuTerminalInfo; /// ?????? }NET_IN_ADD_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_AddVideoMcuTerminal ??????? typedef struct tagNET_OUT_ADD_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ADD_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_ApplyVideoMcuTerminalID ??????? typedef struct tagNET_IN_APPLY_VIDEO_MCU_TERMINALID_INFO { DWORD dwSize; /// ????????,????? }NET_IN_APPLY_VIDEO_MCU_TERMINALID_INFO; ///@brief CLIENT_ApplyVideoMcuTerminalID ??????? typedef struct tagNET_OUT_APPLY_VIDEO_MCU_TERMINALID_INFO { DWORD dwSize; /// ????????,????? char szId[16]; /// ???????????Id }NET_OUT_APPLY_VIDEO_MCU_TERMINALID_INFO; ///@brief CLIENT_ModifyVideoMcuTerminal ??????? typedef struct tagNET_IN_MODIFY_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? NET_TERMINAL_INFO stuTerminalInfo; /// ?????? }NET_IN_MODIFY_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_ModifyVideoMcuTerminal ??????? typedef struct tagNET_OUT_MODIFY_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_MODIFY_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_DeleteVideoMcuTerminal ??????? typedef struct tagNET_IN_DELETE_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? char szId[16]; /// ???Id }NET_IN_DELETE_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_DeleteVideoMcuTerminal ??????? typedef struct tagNET_OUT_DELETE_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_DELETE_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_GetAllVideoMcuTerminal ??????? typedef struct tagNET_IN_GETALL_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GETALL_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_GetAllVideoMcuTerminal ??????? typedef struct tagNET_OUT_GETALL_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? int nTerminalInfoNum; /// ?????????? NET_TERMINAL_INFO stuTerminalInfo[32]; /// ?????? }NET_OUT_GETALL_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_GetVideoMcuTerminal ??????? typedef struct tagNET_IN_GET_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? char szTerminalId[16]; /// ??? Id }NET_IN_GET_VIDEO_MCU_TERMINAL_INFO; ///@brief CLIENT_GetVideoMcuTerminal ??????? typedef struct tagNET_OUT_GET_VIDEO_MCU_TERMINAL_INFO { DWORD dwSize; /// ????????,????? NET_TERMINAL_INFO stuTerminalInfo; /// ?????? }NET_OUT_GET_VIDEO_MCU_TERMINAL_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AddVideoMcuTerminal(LLONG lLoginID, NET_IN_ADD_VIDEO_MCU_TERMINAL_INFO* pstuInParam, NET_OUT_ADD_VIDEO_MCU_TERMINAL_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????Id ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ApplyVideoMcuTerminalID(LLONG lLoginID, NET_IN_APPLY_VIDEO_MCU_TERMINALID_INFO* pstuInParam, NET_OUT_APPLY_VIDEO_MCU_TERMINALID_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_ModifyVideoMcuTerminal(LLONG lLoginID, NET_IN_MODIFY_VIDEO_MCU_TERMINAL_INFO* pstuInParam, NET_OUT_MODIFY_VIDEO_MCU_TERMINAL_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DeleteVideoMcuTerminal(LLONG lLoginID, NET_IN_DELETE_VIDEO_MCU_TERMINAL_INFO* pstuInParam, NET_OUT_DELETE_VIDEO_MCU_TERMINAL_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_GetAllVideoMcuTerminal(LLONG lLoginID, NET_IN_GETALL_VIDEO_MCU_TERMINAL_INFO* pstuInParam, NET_OUT_GETALL_VIDEO_MCU_TERMINAL_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_GetVideoMcuTerminal(LLONG lLoginID, NET_IN_GET_VIDEO_MCU_TERMINAL_INFO* pstuInParam, NET_OUT_GET_VIDEO_MCU_TERMINAL_INFO* pstuOutParam, int nWaitTime); /***************************???????MCU????????? end****************************************************/ /***************************??????????Start***************************************************/ ///@brief ???????????? typedef struct tagNET_CLUSTER_INFO { NET_TIME stuStartTime; /// ????????????? NET_TIME stuEndTime; /// ????????????? TP_U64 nTotalNum; /// ???????? }NET_CLUSTER_INFO; ///@brief ??????????? typedef struct tagNET_CLUSTER_RESULT_DETAIL { char szAreaName[64]; /// ?????? int nAreaID; /// ????ID NET_CLUSTER_INFO stuClusterInfo[300]; /// ??????????? int nClusterInfoNum; /// ???????????????????? }NET_CLUSTER_RESULT_DETAIL; ///@brief ??????????????? typedef struct tagNET_CLUSTER_INFO_EXTERN { int nTotalBatchNum; /// ??????????????? char szReserved[60]; /// ??????? }NET_CLUSTER_INFO_EXTERN; ///@brief ?????????????? typedef struct tagNET_CLUSTER_RESULT_DETAIL_EXTERN { NET_CLUSTER_INFO_EXTERN stuClusterInfoExtern[300]; /// ?????????????? int nClusterInfoNumEx; /// ?????????????????? char szReserved[60]; /// ??????? }NET_CLUSTER_RESULT_DETAIL_EXTERN; ///@brief ?????????? typedef struct tagNET_CLUSTER_RESULT_INFO { char szRuleType[64]; /// ???????????????? NET_CLUSTER_RESULT_DETAIL stuClusterResultDetail[50]; /// ???????????,????50 int nClusterResultDetailNum; /// ???????????????????? TP_U64 nCustomerBatchTotal; /// ????????????????????? int nBatchNo; /// ??????????????, ?????????????????????????? int nTotal; /// ????????????? int nIndex; /// ?????? int nClusterResultDetailNumEx; /// ?????????????????? NET_CLUSTER_RESULT_DETAIL_EXTERN* pstuClusterResultDetailExtern; /// ?????????????? char szReserved[252-POINTERSIZE]; /// ??????? }NET_CLUSTER_RESULT_INFO; ///@brief ?????????? typedef struct tagNET_CLUSTER_RESULT { NET_CLUSTER_RESULT_INFO stuClusterResultInfo; /// ?????????? char szReserved[256]; /// ??????? }NET_CLUSTER_RESULT; ///@brief ??? CLIENT_AttachClusterResult??????? typedef void (CALLBACK *fNotifyClusterResult)(LLONG lClusterResultHandle, NET_CLUSTER_RESULT* pstuClusterResult, LDWORD dwUser); ///@brief ??? CLIENT_AttachClusterResult ????????? typedef struct tagNET_IN_ATTACH_CLUSTER_RESULT { DWORD dwSize; /// ????????,????? fNotifyClusterResult cbNotifyClusterResult; /// ?????????????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_CLUSTER_RESULT; ///@brief ??? CLIENT_AttachClusterResult ????????? typedef struct tagNET_OUT_ATTACH_CLUSTER_RESULT { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_CLUSTER_RESULT; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstInParam: ??????????, ??????????????????? ///@param[out] pstOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachClusterResult(LLONG lLoginID, NET_IN_ATTACH_CLUSTER_RESULT* pstInParam, NET_OUT_ATTACH_CLUSTER_RESULT* pstOutParam , int nWaitTime); ///@brief ??????????????????lClusterResultHandle ? CLIENT_AttachClusterResult ??????? ///@param[in] lClusterResultHandle: ?????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachClusterResult(LLONG lClusterResultHandle); ///@brief ???????? typedef struct tagNET_CLUSTER_AREA_INFO { int nAreaID; /// ????????????? int nChannelNum; /// ??????????????? int nChannels[128]; /// ????????????????? char szAreaName[64]; /// ???????? char szReserved[256]; /// ??????? }NET_CLUSTER_AREA_INFO; ///@brief ????????????? typedef struct tagNET_CLUSTER_BATCH_RULE { int nAppearTimes; /// ????????? int nAppearInterval; /// ??????????,???????0??????5???????????? char szReserved[256]; /// ??????? }NET_CLUSTER_BATCH_RULE; ///@brief ????? typedef struct tagNET_CLUSTER_BUSINESS_HOUR { int nBusinessStart; /// ????????(24?????) int nBusinessEnd; /// ?????????(24?????) int nBusinessStartMinute; /// ???????????????????????(???BusinessStart???) int nBusinessEndMinute; /// ????????????????????????(???BusinessEnd???) char szReserved[248]; /// ??????? }NET_CLUSTER_BUSINESS_HOUR; ///@brief ???????? typedef enum tagEM_CLUSTER_GRANULARITY_TYPE { EM_CLUSTER_GRANULARITY_TYPE_UNKNOWN, /// ??? EM_CLUSTER_GRANULARITY_TYPE_MINUTE, /// ???????? EM_CLUSTER_GRANULARITY_TYPE_HOUR, /// ????????? }EM_CLUSTER_GRANULARITY_TYPE; ///@brief ???????????? typedef struct tagNET_GRANULARITY_INFO { EM_CLUSTER_GRANULARITY_TYPE emGranularity; /// ???????? int nCycle; /// ??emGranularity?????????emGranularity?EM_GRANULARITY_TYPE_MINUTE?? Cycle??5???????5??????????????????????????????????5???? char szReserved[256]; /// ??????? }NET_GRANULARITY_INFO; ///@brief ?????????????????? typedef struct tagNET_CLUSTER_CHANNEL_RULES { int nChannelID; /// ??????????ID int nClusterRule; /// ???????, ???????? ???????? 0:???????? 1:??????????? 2:?????????? 4:??????????? 3:??+?? 5:??+?? 6:??+?? 7:??+??+?? int nBatchRule; /// ???????????, ???????? ???????? 0:?????????? 1:????????????? 2:???????????? 4:????????????? 3:??+?? 5:??+?? 6:??+?? 7:??+??+?? char szReserved[60]; /// ??????? }NET_CLUSTER_CHANNEL_RULES; ///@brief ?????????????????????? typedef struct tagNET_CLUSTER_FILTER_INFO { NET_CLUSTER_CHANNEL_RULES stuChannelRules[256]; /// ??????????????? int nChannelRulesNum; /// ??????????????????? char szReserved[252]; /// ??????? }NET_CLUSTER_FILTER_INFO; ///@brief ??????????? typedef struct tagNET_CLUSTER_LOCAL_INFO { BOOL bEnable; /// ??????????????, false?????????????????????????????????web?????????? char szReserved[60]; /// ??????? }NET_CLUSTER_LOCAL_INFO; ///@brief ??????? typedef struct tagNET_CLUSTER_DUPLICATETIME_INFO { int nDuplicateStartHour; /// ????????(24?????) int nDuplicateEndHour; /// ?????????(24?????) int nDuplicateStartMinute; /// ???????????????????????(???DuplicateStartHour???) int nDuplicateEndMinute; /// ????????????????????????(???DuplicateEndHour???) char szReserved[64]; /// ??????? }NET_CLUSTER_DUPLICATETIME_INFO; ///@brief ??? CLIENT_SetClusterRule ????????? typedef struct tagNET_IN_SET_CLUSTER_RULE { DWORD dwSize; /// ????????,????? char szRuleType[32]; /// ????????: "BusinessHour"???????????????? "AreaInfo"???????????????? "BatchRule"????BatchRuler??????????????????? "GranularityInfo"????GranularityInfo????????????, ///"Filter"????Filter?????????????????????????????????????????? ///"Local"?, ?Local???????????????????????????????????web????????????????? ///"DuplicateTime"????DuplicateTime???????????????????????????????????????????????????????? NET_CLUSTER_AREA_INFO* pstuAreaInfo; /// ????????, ??????????,?????sizeof(NET_CLUSTER_AREA_INFO)*nNumAreaInfoNum int nNumAreaInfoNum; /// ?????????????, ????1024 NET_CLUSTER_BATCH_RULE stuBatchRule; /// ????????????? NET_CLUSTER_BUSINESS_HOUR stuBusinessHour; /// ????? NET_GRANULARITY_INFO stuGranularityInfo; /// ???????????? NET_CLUSTER_FILTER_INFO stuFilterInfo; /// ?????????????????????? NET_CLUSTER_LOCAL_INFO stuLocalInfo; /// ??????????? NET_CLUSTER_DUPLICATETIME_INFO stuDuplicateTime[24]; /// ??????? int nDuplicateTimeNum; /// ??????????? }NET_IN_SET_CLUSTER_RULE; ///@brief ??? CLIENT_SetClusterRule ????????? typedef struct tagNET_OUT_SET_CLUSTER_RULE { DWORD dwSize; /// ????????,????? int nState; /// ????: 0??????????????1??????????2??????????, -1????????????? }NET_OUT_SET_CLUSTER_RULE; ///@brief ????????????????? ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstInParam: ??????????, ??????????????????? ///@param[out] pstOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return ?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetClusterRule(LLONG lLoginID, NET_IN_SET_CLUSTER_RULE* pstInParam, NET_OUT_SET_CLUSTER_RULE* pstOutParam , int nWaitTime); ///@brief ??????????????????????????? typedef struct tagNET_GET_CLUSTER_FILTER_INFO { int nChannels[128]; /// ????????????????? int nChannelNum; /// ??????????????? char szReserved[60]; /// ??????? }NET_GET_CLUSTER_FILTER_INFO; ///@brief ??? CLIENT_GetClusterRule ????????? typedef struct tagNET_IN_GET_CLUSTER_RULE { DWORD dwSize; /// ????????,????? BOOL bSetRuleType; /// ???????RuleType???????????????Fliter?????????? char szRuleType[32]; /// ????????: "BusinessHour"???????????????? "AreaInfo"???????????????? "BatchRule"????BatchRuler??????????????????? "GranularityInfo"????GranularityInfo????????????, ///"Filter"????Filter?????????????????????????????????????????? ///"Local"?, ?Local???????????????????????????????????web????????????????? ///"DuplicateTime"????DuplicateTime???????????????????????????????????????????????????????? NET_GET_CLUSTER_FILTER_INFO stuFilter; /// ???????? BOOL bSetFilter; /// ???????Filter??? }NET_IN_GET_CLUSTER_RULE; ///@brief ??? CLIENT_GetClusterRule ????????? typedef struct tagNET_OUT_GET_CLUSTER_RULE { DWORD dwSize; /// ????????,????? int nDuplicateTimeNum; /// ??????????? NET_CLUSTER_DUPLICATETIME_INFO stuDuplicateTime[24]; /// ??????? int nMaxAreaInfoNum; /// ?????????????, ??????????? int nRetAreaInfoNum; /// ????????????????? NET_CLUSTER_AREA_INFO* pstuAreaInfo; /// ????????, ??????????,?????sizeof(NET_CLUSTER_AREA_INFO)*nMaxAreaInfoNum NET_CLUSTER_BATCH_RULE stuBatchRule; /// ????????????? NET_CLUSTER_BUSINESS_HOUR stuBusinessHour; /// ????? NET_GRANULARITY_INFO stuGranularityInfo; /// ???????????? NET_CLUSTER_FILTER_INFO stuFilterInfo; /// ?????????????????????? NET_CLUSTER_LOCAL_INFO stuLocalInfo; /// ??????????? }NET_OUT_GET_CLUSTER_RULE; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetClusterRule(LLONG lLoginID, const NET_IN_GET_CLUSTER_RULE* pstuInParam, NET_OUT_GET_CLUSTER_RULE* pstuOutParam , int nWaitTime); ///@brief ??????? typedef struct tagNET_CLUSTER_CONDITION { NET_TIME stuDate; /// ????????????????????????? char szRuleType[32]; /// ?????????, "DailyClusterReport" ????????? int nAreaIDNum; /// ????ID?????, ????50 int nAreaID[50]; /// ????ID, ??????-1?????????????????????50?? char szReserved[256]; /// ??????? }NET_CLUSTER_CONDITION; ///@brief ??? CLIENT_StartFindNumberStatCluster ????????? typedef struct tagNET_IN_START_FIND_CLUSTER { DWORD dwSize; /// ????????,????? NET_CLUSTER_CONDITION stuCondition; /// ??????? }NET_IN_START_FIND_CLUSTER; ///@brief ??? CLIENT_StartFindNumberStatCluster ????????? typedef struct tagNET_OUT_START_FIND_CLUSTER { DWORD dwSize; /// ????????,????? int nToken; /// ??????????? int nTotalCount; /// ??????????????????? }NET_OUT_START_FIND_CLUSTER; ///@brief ?????????r????????? ///@param[in] lLoginID: ?????? ///@param[in] pstInParam: ??????????, ??????????????????? ///@param[out] pstOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindNumberStatCluster(LLONG lLoginID, NET_IN_START_FIND_CLUSTER* pstInParam, NET_OUT_START_FIND_CLUSTER* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_DoFindNumberStatCluster ????????? typedef struct tagNET_IN_DO_FIND_CLUSTER { DWORD dwSize; /// ????????,????? int nToken; /// ??????????? int nBeginNumber; /// ???????????? int nCount; /// ???????????(???????50) }NET_IN_DO_FIND_CLUSTER; ///@brief ??? CLIENT_DoFindNumberStatCluster ????????? typedef struct tagNET_OUT_DO_FIND_CLUSTER { DWORD dwSize; /// ????????,????? char szRuleType[64]; /// ?????????? int nFound; /// ??????????????????????50 TP_U64 nBatchTotal; /// ????????????????????? NET_CLUSTER_RESULT_DETAIL* pstuClusterResultDetail; /// ???????????????????????????????????????,?????sizeof(NET_CLUSTER_RESULT_DETAIL)*nClusterResultDetailNum int nClusterResultDetailNum; /// ???????????????????, ?????50 int nRetClusterResultDetailNum; /// ?????????????????????????????, ???????50 }NET_OUT_DO_FIND_CLUSTER; ///@brief ????????????r????????? ///@param[in] lLoginID: ?????? ///@param[in] pstInParam: ??????????, ??????????????????? ///@param[out] pstOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindNumberStatCluster(LLONG lLoginID, NET_IN_DO_FIND_CLUSTER* pstInParam, NET_OUT_DO_FIND_CLUSTER* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_StopFindNumberStatCluster ????????? typedef struct tagNET_IN_STOP_FIND_CLUSTER { DWORD dwSize; /// ????????,????? int nToken; /// ????????? }NET_IN_STOP_FIND_CLUSTER; ///@brief ??? CLIENT_StopFindNumberStatCluster ????????? typedef struct tagNET_OUT_STOP_FIND_CLUSTER { DWORD dwSize; /// ????????,????? }NET_OUT_STOP_FIND_CLUSTER; ///@brief ????? ///@param[in] lLoginID: ?????? ///@param[in] pstInParam: ??????????, ??????????????????? ///@param[out] pstOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindNumberStatCluster(LLONG lLoginID, NET_IN_STOP_FIND_CLUSTER* pstInParam, NET_OUT_STOP_FIND_CLUSTER* pstOutParam , int nWaitTime); ///@brief ??????? typedef struct tagNET_CLUSTER_DETAIL_CONDITION { int nClusterDate; /// ???????Key, ?????????????????????????,????.??????????????? BOOL bIsNeedProfileID; /// ??????????ProfileID int nProfileID; /// ??????ID??????????????????????????????ProfileID int nBatchID; /// ???????ID???????????-1????????????BatchID int nStaffType; /// ?????????????????-1:????? 0:????????????? 1:???????????? int nAreadID; /// ??????????? -1????????????????0?????????????????????????????????????????????????????????????????? char szReserved[244]; /// ??????? }NET_CLUSTER_DETAIL_CONDITION; ///@brief ??? CLIENT_StartFindDetailNumberStatCluster ????????? typedef struct tagNET_IN_START_FIND_DETAIL_CLUSTER { DWORD dwSize; /// ????????,????? NET_CLUSTER_DETAIL_CONDITION stuCondition; /// ??????? }NET_IN_START_FIND_DETAIL_CLUSTER; ///@brief ??? CLIENT_StartFindDetailNumberStatCluster ????????? typedef struct tagNET_OUT_START_FIND_DETAIL_CLUSTER { DWORD dwSize; /// ????????,????? int nToken; /// ??????????? UINT nCount; /// ??????? NET_TIME_EX stuClusterBeginTime; /// ???????????????? NET_TIME_EX stuClusterEndTime; /// ????????????????? }NET_OUT_START_FIND_DETAIL_CLUSTER; ///@brief ??????????, ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindDetailNumberStatCluster(LLONG lLoginID, NET_IN_START_FIND_DETAIL_CLUSTER* pstInParam, NET_OUT_START_FIND_DETAIL_CLUSTER* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_DoFindDetailNumberStatCluster ????????? typedef struct tagNET_IN_DO_FIND_DETAIL_CLUSTER { DWORD dwSize; /// ????????,????? int nToken; /// start???????token, token?????????????, ??stop???????????????????????????, ??????token?????????? UINT nStartIndex; /// ????????????? UINT nCount; /// ?????????????????????1024 }NET_IN_DO_FIND_DETAIL_CLUSTER; ///@brief ????????????? typedef struct tagNET_CLUSTER_DETAIL_FIND_INFO { INT64 nRcNo; /// ??????????ID char szTrackID[40]; /// ???????????Key, ?32??uuid, ???????????32, ???????????'\0', ????A??????40 INT64 nProfileID; /// ??????ID, ???????sessionID, -1??????0???????????? INT64 nChannel; /// ???????? int nAge; /// ????, ???????????????????, 0.unknow ???, 1.child ???, 2.young ????, 3.adult ????, 4.old ???? int nGender; /// ??? 0.Unknow ???, 1.male ??, 2.female ?, 3.other ???? int nStaffType; /// ?????????,?????, -1 ?????, 0 ???, 1 ??????? NET_TIME_EX stuEventTime; /// ???????????? int nHumanState; /// ????????????, 0 ??, 1 ??, 2 ?? char szEmotion[20]; /// ???? INT64 nBatchID; /// ????ID????????????????ID?????????????????/??????,????????????????????????????????????????????????????????-1 char szReserved[36]; /// ??????? }NET_CLUSTER_DETAIL_FIND_INFO; ///@brief ??? CLIENT_DoFindDetailNumberStatCluster ????????? typedef struct tagNET_OUT_DO_FIND_DETAIL_CLUSTER { DWORD dwSize; /// ????????,????? UINT nFound; /// ?????????????? int nFindInfoRealNum; /// ????????????? NET_CLUSTER_DETAIL_FIND_INFO stuClusterFindInfo[1024]; /// ???????????????????1024 }NET_OUT_DO_FIND_DETAIL_CLUSTER; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindDetailNumberStatCluster(LLONG lLoginID, NET_IN_DO_FIND_DETAIL_CLUSTER* pstInParam, NET_OUT_DO_FIND_DETAIL_CLUSTER* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_StopFindDetailNumberStatCluster ????????? typedef struct tagNET_IN_STOP_FIND_DETAIL_CLUSTER_INFO { DWORD dwSize; /// ????????,????? int nToken; /// start???????token, token?????? }NET_IN_STOP_FIND_DETAIL_CLUSTER_INFO; ///@brief ??? CLIENT_StopFindDetailNumberStatCluster ????????? typedef struct tagNET_OUT_STOP_FIND_DETAIL_CLUSTER_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_STOP_FIND_DETAIL_CLUSTER_INFO; ///@brief ????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindDetailNumberStatCluster(LLONG lLoginID, NET_IN_STOP_FIND_DETAIL_CLUSTER_INFO* pstInParam, NET_OUT_STOP_FIND_DETAIL_CLUSTER_INFO* pstOutParam , int nWaitTime); ///@brief ???????? typedef enum tagEM_SMD_ORDER_TYPE { EM_SMD_ORDER_TYPE_UNKNOWN, /// ??? EM_SMD_ORDER_TYPE_ASCORDER, /// ???? EM_SMD_ORDER_TYPE_DESORDER, /// ???? }EM_SMD_ORDER_TYPE; ///@brief ??????? typedef struct tagNET_SMD_DATA_CONDITION { int nChannel; /// ?????,-1????????????? int nChannelNum; /// ?????????????,?0?nChannel???????????0?nChannels??????? int nChannels[128]; /// ???????????0???Channel??Channels?????????????????????????????????????????Channels?? EM_SMD_RECORD_TYPE emSmdRecordType[8]; /// ????????SMD??????? int nSmdRecordTypeNum; /// ????????SMD?????????? EM_SMD_ORDER_TYPE emOrder; /// ???????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szReserved[256]; /// ??????? }NET_SMD_DATA_CONDITION; ///@brief ??? CLIENT_StartFindSMDData ????????? typedef struct tagNET_IN_START_FIND_SMD_DATA { DWORD dwSize; /// ??????? NET_SMD_DATA_CONDITION stuCondition; /// ??????? }NET_IN_START_FIND_SMD_DATA; ///@brief ??? CLIENT_StartFindSMDData ????????? typedef struct tagNET_OUT_START_FIND_SMD_DATA { DWORD dwSize; /// ????????,????? int nToken; /// ??????id int nCount; /// ????????????? }NET_OUT_START_FIND_SMD_DATA; ///@brief ??????SMD???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindSMDData(LLONG lLoginID, const NET_IN_START_FIND_SMD_DATA* pstuInParam, NET_OUT_START_FIND_SMD_DATA* pstuOutParam , int nWaitTime); ///@brief ??? CLIENT_DoFindSMDData ????????? typedef struct tagNET_IN_DO_FIND_SMD_DATA { DWORD dwSize; /// ???????? int nToken; /// ???id int nOffset; /// ??????????????? int nCount; /// ???????,??????????1024 }NET_IN_DO_FIND_SMD_DATA; ///@brief ????????????? typedef struct tagNET_SMD_DATA_INFO { int nChannel; /// ?????,??0??? EM_SMD_RECORD_TYPE emSmdRecordType; /// ??????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szReserved[64]; /// ??????? }NET_SMD_DATA_INFO; ///@brief ??? CLIENT_DoFindSMDData ????????? typedef struct tagNET_OUT_DO_FIND_SMD_DATA { DWORD dwSize; /// ??????? int nFindInfoNum; /// ????????????? NET_SMD_DATA_INFO stuSMDDataInfo[1024]; /// ???????????????????1024 }NET_OUT_DO_FIND_SMD_DATA; ///@brief ???????SMD???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindSMDData(LLONG lLoginID, const NET_IN_DO_FIND_SMD_DATA* pstuInParam, NET_OUT_DO_FIND_SMD_DATA* pstuOutParam , int nWaitTime); ///@brief ??? CLIENT_StopFindSMDData ????????? typedef struct tagNET_IN_STOP_FIND_SMD_DATA { DWORD dwSize; /// ????????,????? int nToken; /// start???????token, token?????? }NET_IN_STOP_FIND_SMD_DATA; ///@brief ??? CLIENT_StopFindSMDData ????????? typedef struct tagNET_OUT_STOP_FIND_SMD_DATA { DWORD dwSize; /// ????????,????? }NET_OUT_STOP_FIND_SMD_DATA; ///@brief ????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindSMDData(LLONG lLoginID, const NET_IN_STOP_FIND_SMD_DATA* pstuInParam, NET_OUT_STOP_FIND_SMD_DATA* pstuOutParam , int nWaitTime); ///@brief ??? CLIENT_GetClusterState ????????? typedef struct tagNET_IN_GET_CLUSTER_STATE_INFO { DWORD dwSize; /// ????????,????? int nClusterDate; /// ????, ?????????????????????????, ??????????????? }NET_IN_GET_CLUSTER_STATE_INFO; ///@brief ??? CLIENT_GetClusterState ????????? typedef struct tagNET_OUT_GET_CLUSTER_STATE_INFO { DWORD dwSize; /// ????????,????? int nClusterState; /// ???????? 1.?????. 2.?????? 3.?????? NET_TIME_EX stuDealTime; /// ???????????????????????? int nClusterData; /// ??????????, ????????????, ???????????key, ????????????????????.??20220530??????20220530?????????? int nClusterType; /// ??????????: 1.???????? 2.???????????? 3.?????????? 4.?????????????? int nClusterMessage; /// ???????????????????????, ????????????????0 int nRecordID; /// ??????ID???????ID??????????????????????? }NET_OUT_GET_CLUSTER_STATE_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetClusterState(LLONG lLoginID, NET_IN_GET_CLUSTER_STATE_INFO* pstInParam, NET_OUT_GET_CLUSTER_STATE_INFO* pstOutParam , int nWaitTime); /***************************??????????End***************************************************/ /***************************????????Start***************************************************/ ///@brief CLIENT_GetChipUsageInfo ?????????? typedef struct tagNET_IN_GET_CHIP_USAGE_INFO { DWORD dwSize; /// ??????? char szchip[16]; /// ??????Id, ?All????????????????????????? } NET_IN_GET_CHIP_USAGE_INFO; ///@brief ??????????? typedef enum tagEM_CHIP_USAGE_FUNCTION_STATE { EM_CHIP_USAGE_FUNCTION_STATE_UNKNWON = 0, /// ??? EM_CHIP_USAGE_FUNCTION_STATE_COMPRESS, /// ?????????????? EM_CHIP_USAGE_FUNCTION_STATE_INTELLI, /// ?????????????? EM_CHIP_USAGE_FUNCTION_STATE_COMBINATION, /// ??????????????????????? EM_CHIP_USAGE_FUNCTION_STATE_SWITCHTOCOMPRESS, /// ????????????????????? EM_CHIP_USAGE_FUNCTION_STATE_SWITCHTOINTELLI, /// ????????????????????? EM_CHIP_USAGE_FUNCTION_STATE_SWITCHTOCOMBINA, /// ??????????????? EM_CHIP_USAGE_FUNCTION_STATE_ERROR, /// ???????????? } EM_CHIP_USAGE_FUNCTION_STATE; ///@brief ???????? typedef struct tagNET_CHIP_USAGE_INFO { char szchip[16]; /// ??????Id, ?All????????????????????????? EM_CHIP_USAGE_FUNCTION_STATE emFunctionalState; /// ??????????? UINT nCompressUsagePercent; /// ?????????????????????,???????????????????% int nVideoChannel[128]; /// ?????????????????????,??????????????????????????????? int nVideoChannelNum; /// ?????????????????????????????????? char szReserved[512]; /// ?????? } NET_CHIP_USAGE_INFO; ///@brief CLIENT_GetChipUsageInfo ?????????? typedef struct tagNET_OUT_GET_CHIP_USAGE_INFO { DWORD dwSize; /// ??????? int nChipUsageInfoNum; /// ????????? NET_CHIP_USAGE_INFO stuChipUsageInfo[64]; /// ???????? } NET_OUT_GET_CHIP_USAGE_INFO; ///@brief ???????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetChipUsageInfo(LLONG lLoginID, const NET_IN_GET_CHIP_USAGE_INFO *pInParam, NET_OUT_GET_CHIP_USAGE_INFO *pOutParam, int nWaitTime); ///@brief CLIENT_GetPeripheralChipStateByID ?????????? typedef struct tagNET_IN_GET_CHIP_STATE_BYID_INFO { DWORD dwSize; /// ??????? int nListNum; /// List??????? char szList[32][16]; /// nListNum?1 list[0]?"All"??????????????? } NET_IN_GET_CHIP_STATE_BYID_INFO; ///@brief ????? typedef enum tagEM_CHIP_STATE { EM_CHIP_STATE_UNKNWON = 0, /// ??? EM_CHIP_STATE_NORMAL, /// ???? EM_CHIP_STATE_EXCEPTION, /// ?? EM_CHIP_STATE_NOTRUNNING, /// ?????? } EM_CHIP_STATE; ///@brief ???????? typedef struct tagNET_CHIP_STATE_INFO { char szChip[16]; /// ?????? EM_CHIP_STATE emChipState; /// ????? char szReserved[128]; /// ?????? } NET_CHIP_STATE_INFO; ///@brief CLIENT_GetPeripheralChipStateByID ?????????? typedef struct tagNET_OUT_GET_CHIP_STATE_BYID_INFO { DWORD dwSize; /// ??????? int nChipStateInfoNum; /// ???????????? NET_CHIP_STATE_INFO stuChipStateInfo[32]; /// ???????? } NET_OUT_GET_CHIP_STATE_BYID_INFO; ///@brief ???????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPeripheralChipStateByID(LLONG lLoginID, const NET_IN_GET_CHIP_STATE_BYID_INFO *pstuInParam, NET_OUT_GET_CHIP_STATE_BYID_INFO *pstuOutParam, int nWaitTime); /***************************????????End***************************************************/ /***************************???????Start***************************************************/ ///@brief CLIENT_CreateGroupForVehicleRegisterDB ?????????? typedef struct tagNET_IN_CREATE_GROUP_FOR_VEHICLE_REG_DB { DWORD dwSize; /// ??????? char szGroupName[128]; /// ?????????? char szGroupDetail[256]; /// ??????|???? int nGroupType; /// ???????????0:??????????1????????? } NET_IN_CREATE_GROUP_FOR_VEHICLE_REG_DB; ///@brief CLIENT_CreateGroupForVehicleRegisterDB ?????????? typedef struct tagNET_OUT_CREATE_GROUP_FOR_VEHICLE_REG_DB { DWORD dwSize; /// ??????? char szGroupID[64]; /// ???????? } NET_OUT_CREATE_GROUP_FOR_VEHICLE_REG_DB; ///@brief ?????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CreateGroupForVehicleRegisterDB(LLONG lLoginID, const NET_IN_CREATE_GROUP_FOR_VEHICLE_REG_DB *pInParam, NET_OUT_CREATE_GROUP_FOR_VEHICLE_REG_DB *pOutParam, int nWaitTime); ///@brief CLIENT_DeleteGroupFromVehicleRegisterDB ?????????? typedef struct tagNET_IN_DELETE_GROUP_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? char szGroupID[64]; /// ????????, ??????????????????? } NET_IN_DELETE_GROUP_FROM_VEHICLE_REG_DB; ///@brief CLIENT_DeleteGroupFromVehicleRegisterDB ?????????? typedef struct tagNET_OUT_DELETE_GROUP_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? } NET_OUT_DELETE_GROUP_FROM_VEHICLE_REG_DB; ///@brief ????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteGroupFromVehicleRegisterDB(LLONG lLoginID, const NET_IN_DELETE_GROUP_FROM_VEHICLE_REG_DB *pInParam, NET_OUT_DELETE_GROUP_FROM_VEHICLE_REG_DB *pOutParam, int nWaitTime); ///@brief CLIENT_MultiAppendToVehicleRegisterDB ?????????? typedef struct tagNET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB { DWORD dwSize; /// ??????? int nVehicleNum; /// ???????? NET_VEHICLE_INFO* pstuVehicles; /// ???????, ??????????,?????sizeof(NET_VEHICLE_INFO)*nVehicleNum BOOL bReplace; /// ??????????????, TRUE????, FALSE???? } NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB; ///@brief ????????????????? typedef enum tagEM_VEHICLE_REG_DB_OPERATOR_ERRCODE { EM_VEHICLE_REG_DB_OPERATOR_ERRCODE_UNKNWON = 0, /// ??? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE_SUCCESS, /// ??? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE_DB_ERROR, /// ??????????? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE_NOT_EXIST, /// ????????? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE_EXCEED_MAX_NUM, /// ????????????????? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE_EXIST, /// ??????????? } EM_VEHICLE_REG_DB_OPERATOR_ERRCODE; ///@brief CLIENT_MultiAppendToVehicleRegisterDB ?????????? typedef struct tagNET_OUT_MULTI_APPEND_TO_VEHICLE_REG_DB { DWORD dwSize; /// ??????? UINT nErrCodeNum; /// ?????????, ????????????NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB????nVehicleNum??????? UINT nRetErrCodeNum; /// ?????????????? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE* pemErrCodes; /// ?????????, ??????????,?????sizeof(EM_VEHICLE_REG_DB_OPERATOR_ERRCODE)*nErrCodeNum } NET_OUT_MULTI_APPEND_TO_VEHICLE_REG_DB; ///@brief ??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MultiAppendToVehicleRegisterDB(LLONG lLoginID, const NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB *pInParam, NET_OUT_MULTI_APPEND_TO_VEHICLE_REG_DB *pOutParam, int nWaitTime); ///@brief ??????????????? ???????? typedef struct tagNET_DELETE_VEHICLE_CONDITION_INFO { char szPlateCountry[4]; /// ???????????,2????????ISO3166??Z char szPlateNumber[64]; /// ??????? int nVehicleType; /// ????(????????????) /// 001 ???? /// 002 ???????? /// 003 ?????? /// 004 ???? /// 005 ???????? /// 006 ??????? /// 020 ???????? /// 031 ???? /// 032 ????? /// 033 ??????? /// 034 ?????? /// 035 ???? /// 036 ????????? int nBrand; /// ????????,??????????????????????.??????????CarLogoIndex NET_COLOR_RGBA stuVehicleColor; /// ??? ???????????????????? ???????????????????? ????????????????????? /// ????????????????????????????????????????????????????????????????0 - ?????????????????0 - ????????????? char szOwnerName[64]; /// ???????? char szPersonID[32]; /// ???????????,????,????????? char szPhoneNo[128]; /// ??????????? char szEmail[32]; /// ???????????? char szHomeAddress[128]; /// ??????????(IVSS????) BYTE bReserved[512]; }NET_DELETE_VEHICLE_CONDITION_INFO; ///@brief CLIENT_DeleteByConditionFromVehicleRegisterDB ?????????? typedef struct tagNET_IN_DEL_BY_CONDITION_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? char szGroupID[64]; /// ???????? NET_DELETE_VEHICLE_CONDITION_INFO stuDelCondition; /// ???????????????? DWORD dwUIDCnt; /// ?????????????????????? char szUIDList[1024][32]; /// ?????????????? int nUUIDNum; /// ???????????????????????? char szUUID[512][64]; /// ????????????????,??????????????szGroupID??stuDelCondition??szUIDList ?????? } NET_IN_DEL_BY_CONDITION_FROM_VEHICLE_REG_DB; ///@brief CLIENT_DeleteByConditionFromVehicleRegisterDB ?????????? typedef struct tagNET_OUT_DEL_BY_CONDITION_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? } NET_OUT_DEL_BY_CONDITION_FROM_VEHICLE_REG_DB; ///@brief ????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteByConditionFromVehicleRegisterDB(LLONG lLoginID, const NET_IN_DEL_BY_CONDITION_FROM_VEHICLE_REG_DB *pInParam, NET_OUT_DEL_BY_CONDITION_FROM_VEHICLE_REG_DB *pOutParam, int nWaitTime); ///@brief ????????? typedef struct tagNET_VEHICLE_GROUP_INFO { char szGroupID[64]; /// ???????? char szGroupName[128]; /// ?????????? char szGroupDetail[256]; /// ??????|???? int nGroupType; /// ???????????0:??? 1:??????? 2?????????? char szReserved[512]; /// ??????? }NET_VEHICLE_GROUP_INFO; ///@brief CLIENT_ModifyGroupForVehicleRegisterDB ?????????? typedef struct tagNET_IN_MODIFY_GROUP_FOR_VEHICLE_REG_DB { DWORD dwSize; /// ??????? NET_VEHICLE_GROUP_INFO stuGroupInfo; /// ????????? } NET_IN_MODIFY_GROUP_FOR_VEHICLE_REG_DB; ///@brief CLIENT_ModifyGroupForVehicleRegisterDB ?????????? typedef struct tagNET_OUT_MODIFY_GROUP_FOR_VEHICLE_REG_DB { DWORD dwSize; /// ??????? } NET_OUT_MODIFY_GROUP_FOR_VEHICLE_REG_DB; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyGroupForVehicleRegisterDB(LLONG lLoginID, const NET_IN_MODIFY_GROUP_FOR_VEHICLE_REG_DB *pstuInParam, NET_OUT_MODIFY_GROUP_FOR_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief CLIENT_FindGroupFormVehicleRegisterDB ?????????? typedef struct tagNET_IN_FIND_GROUP_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? char szGroupID[64]; /// ??ID??????????????????????? } NET_IN_FIND_GROUP_FROM_VEHICLE_REG_DB; ///@brief ???????????????? typedef struct tagNET_VEHICLE_GROUP_FOUND_INFO { char szGroupID[64]; /// ???????? char szGroupName[128]; /// ?????????? char szGroupDetail[256]; /// ??????|???? int nGroupType; /// ???????????0:??? 1:??????? 2?????????? int nGroupSize; /// ???????????? int nChannels[1024]; /// ?????????????????????,???????????????????[-1] int nChannelsNum; /// ???????????????????? char szReserved[508]; /// ??????? }NET_VEHICLE_GROUP_FOUND_INFO; ///@brief CLIENT_FindGroupFormVehicleRegisterDB ?????????? typedef struct tagNET_OUT_FIND_GROUP_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? int nGroupListNum; /// ?????????????? NET_VEHICLE_GROUP_FOUND_INFO stuGroupList[128]; ///????????????? } NET_OUT_FIND_GROUP_FROM_VEHICLE_REG_DB; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindGroupFormVehicleRegisterDB(LLONG lLoginID, const NET_IN_FIND_GROUP_FROM_VEHICLE_REG_DB *pstuInParam, NET_OUT_FIND_GROUP_FROM_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyVehicleForVehicleRegisterDB ?????????? typedef struct tagNET_IN_MODIFY_VEHICLE_FOR_VEHICLE_REG_DB { DWORD dwSize; /// ??????? NET_VEHICLE_INFO stuVehicleInfo; /// ??????? } NET_IN_MODIFY_VEHICLE_FOR_VEHICLE_REG_DB; ///@brief CLIENT_ModifyVehicleForVehicleRegisterDB ?????????? typedef struct tagNET_OUT_MODIFY_VEHICLE_FOR_VEHICLE_REG_DB { DWORD dwSize; /// ??????? } NET_OUT_MODIFY_VEHICLE_FOR_VEHICLE_REG_DB; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyVehicleForVehicleRegisterDB(LLONG lLoginID, const NET_IN_MODIFY_VEHICLE_FOR_VEHICLE_REG_DB *pstuInParam, NET_OUT_MODIFY_VEHICLE_FOR_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief CLIENT_DeleteVehicleFromVehicleRegisterDB ?????????? typedef struct tagNET_IN_DELETE_VEHICLE_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? UINT nUID; /// ???????????? char szGroupID[64]; /// ??????ID char szPlateNumber[64]; /// ???? } NET_IN_DELETE_VEHICLE_FROM_VEHICLE_REG_DB; ///@brief CLIENT_DeleteVehicleFromVehicleRegisterDB ?????????? typedef struct tagNET_OUT_DELETE_VEHICLE_FROM_VEHICLE_REG_DB { DWORD dwSize; /// ??????? } NET_OUT_DELETE_VEHICLE_FROM_VEHICLE_REG_DB; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteVehicleFromVehicleRegisterDB(LLONG lLoginID, const NET_IN_DELETE_VEHICLE_FROM_VEHICLE_REG_DB *pstuInParam, NET_OUT_DELETE_VEHICLE_FROM_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief CLIENT_StartFindVehicleRegisterDB ??????? typedef struct tagNET_START_FIND_VEHICLE_REG_DB_CONDITION { int nUUIDsNum; /// ????????????????????????? char szUUIDs[64][64]; /// ??????????????????????????????stuVehicleInfo?????? BOOL bIsUsingRegisterStorageTime; /// ????????????????????????????? NET_TIME stuStartRegisterStorageTime; /// ?????? ??????????????????????????????RegisterStorageTime?????????? NET_TIME stuEndRegisterStorageTime; /// ??????? BOOL bIsUsingModifyTime; /// ????????????????????????????? NET_TIME stuStartModifyTime; /// ?????? ??????????????????????????????ModifyTime?????????? NET_TIME stuEndModifyTime; /// ??????? char szReserved[1024]; /// ?????? } NET_START_FIND_VEHICLE_REG_DB_CONDITION; ///@brief CLIENT_StartFindVehicleRegisterDB ?????????? typedef struct tagNET_IN_START_FIND_VEHICLE_REG_DB { DWORD dwSize; /// ??????? NET_VEHICLE_INFO stuVehicleInfo; /// ??????? NET_START_FIND_VEHICLE_REG_DB_CONDITION stuCondition; /// ??????? } NET_IN_START_FIND_VEHICLE_REG_DB; ///@brief CLIENT_StartFindVehicleRegisterDB ?????????? typedef struct tagNET_OUT_START_FIND_VEHICLE_REG_DB { DWORD dwSize; /// ??????? UINT nToken; /// ??????????? int nTotalCount; /// ??????????????????????? } NET_OUT_START_FIND_VEHICLE_REG_DB; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindVehicleRegisterDB(LLONG lLoginID, const NET_IN_START_FIND_VEHICLE_REG_DB *pstuInParam, NET_OUT_START_FIND_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief ??????????? typedef struct tagNET_FIND_VEHICLE_CONDITION { UINT nToken; /// ??????? UINT nBeginNumber; /// ????????? ?????beginNumber???????????count??????????0<=beginNumber<= totalCount-1 int nCount; /// ???????????? char szReserved[128]; /// ??????? } NET_FIND_VEHICLE_CONDITION; ///@brief CLIENT_DoFindVehicleRegisterDB ?????????? typedef struct tagNET_IN_DO_FIND_VEHICLE_REG_DB { DWORD dwSize; /// ??????? NET_FIND_VEHICLE_CONDITION stuCondition; /// ??????? } NET_IN_DO_FIND_VEHICLE_REG_DB; ///@brief CLIENT_DoFindVehicleRegisterDB ?????????? typedef struct tagNET_OUT_DO_FIND_VEHICLE_REG_DB { DWORD dwSize; /// ??????? int nCarCandidateNum; /// ??????????? NET_CAR_CANDIDATE_INFO stuCarCandidate[128]; /// ??????????? int nFound; /// ??????????? } NET_OUT_DO_FIND_VEHICLE_REG_DB; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindVehicleRegisterDB(LLONG lLoginID, const NET_IN_DO_FIND_VEHICLE_REG_DB *pstuInParam, NET_OUT_DO_FIND_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief CLIENT_StopFindVehicleRegisterDB ?????????? typedef struct tagNET_IN_STOP_FIND_VEHICLE_REG_DB { DWORD dwSize; /// ??????? UINT nToken; /// ??????? } NET_IN_STOP_FIND_VEHICLE_REG_DB; ///@brief CLIENT_StopFindVehicleRegisterDB ?????????? typedef struct tagNET_OUT_STOP_FIND_VEHICLE_REG_DB { DWORD dwSize; /// ??????? } NET_OUT_STOP_FIND_VEHICLE_REG_DB; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindVehicleRegisterDB(LLONG lLoginID, const NET_IN_STOP_FIND_VEHICLE_REG_DB *pstuInParam, NET_OUT_STOP_FIND_VEHICLE_REG_DB *pstuOutParam, int nWaitTime); ///@brief CLIENT_FindVehicleRegisterDBUUID ?????? typedef struct tagNET_IN_FIND_VEHICLE_REG_DB_UUID { DWORD dwSize; /// ????????,????? char szGroupID[64]; /// GroupID BOOL bUseRegisterStorageTime; /// ?????RegisterStorageTime??????? NET_TIME stuStartRegisterStorageTime; /// ?????? ????????????????????????????RegisterStorageTime?????????? NET_TIME stuEndRegisterStorageTime; /// ??????? BOOL bUseModifyTime; /// ?????ModifyTime??????? NET_TIME stuStartModifyTime; /// ?????? ????????????????????????????ModifyTime?????????? NET_TIME stuEndModifyTime; /// ??????? }NET_IN_FIND_VEHICLE_REG_DB_UUID; typedef char (UUIDArray)[64]; ///@brief CLIENT_FindVehicleRegisterDBUUID ?????? typedef struct tagNET_OUT_FIND_VEHICLE_REG_DB_UUID { DWORD dwSize; /// ????????,????? int nUUIDRetCount; /// UUID??????? UUIDArray* pUUID; /// ????????, ????????????????????nUUIDMaxCount*sizeof(UUIDArray) int nUUIDMaxCount; /// UUID???????? char szResvered[4]; /// ?????? }NET_OUT_FIND_VEHICLE_REG_DB_UUID; ///@brief ???????????????UUID ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindVehicleRegisterDBUUID(LLONG lLoginID,const NET_IN_FIND_VEHICLE_REG_DB_UUID* pstuInParam, NET_OUT_FIND_VEHICLE_REG_DB_UUID* pstuOutParam, int nWaitTime); /***************************???????End***************************************************/ /***************************?????????Start***************************************************/ ///@brief ?????? typedef struct tagNET_PREPARE_EXPORT_FILEINFO { char szFileName[128]; /// ????? char szReserverd[256]; /// ?????? }NET_PREPARE_EXPORT_FILEINFO; ///@brief ?????????? typedef struct tagNET_PREPARE_EXPORT_INFO { NET_PREPARE_EXPORT_FILEINFO stuFileInfo[256]; /// ????????????core?????syslog??????????????256????? int nFileInfoNum; /// ?????????? char szReserverd[256]; /// ?????? }NET_PREPARE_EXPORT_INFO; ///@brief CLIENT_PrepareExport ?????? typedef struct tagNET_IN_PREPARE_EXPORT_INFO { DWORD dwSize; /// ??????? NET_PREPARE_EXPORT_INFO stuInfo; /// ?????????? }NET_IN_PREPARE_EXPORT_INFO; ///@brief CLIENT_PrepareExport ?????? typedef struct tagNET_OUT_PREPARE_EXPORT_INFO { DWORD dwSize; /// ??????? UINT nToken; /// ???????? }NET_OUT_PREPARE_EXPORT_INFO; ///@brief ???????? typedef struct tagNET_EXPORT_ENCRYPED_DEBUGFILES_CONDITION { UINT nRequestLength; /// ?????????????????????????????????32K????????4M char szReserverd[256]; /// ?????? }NET_EXPORT_ENCRYPED_DEBUGFILES_CONDITION; ///@brief CLIENT_ExportEncrypedDebugFiles ?????? typedef struct tagNET_IN_EXPORT_ENCRYPED_DEBUGFILES_INFO { DWORD dwSize; /// ??????? UINT nToken; /// ???????? prepareExport???? NET_EXPORT_ENCRYPED_DEBUGFILES_CONDITION stuCondition; /// ???????? }NET_IN_EXPORT_ENCRYPED_DEBUGFILES_INFO; ///@brief ??????? typedef struct tagNET_EXPORT_ENCRYPED_DEBUGFILES_INFO { char* pData; /// ??????????????? ??????????,?????nDataLength int nDataLength; /// ?????????????????????? int nDataLengthRet; /// ???????????????????????? char szReserverd[256]; /// ?????? }NET_EXPORT_ENCRYPED_DEBUGFILES_INFO; ///@brief CLIENT_ExportEncrypedDebugFiles ?????? typedef struct tagNET_OUT_EXPORT_ENCRYPED_DEBUGFILES_INFO { DWORD dwSize; /// ??????? NET_EXPORT_ENCRYPED_DEBUGFILES_INFO stuInfo; /// ??????? }NET_OUT_EXPORT_ENCRYPED_DEBUGFILES_INFO; ///@brief ???????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PrepareExport(LLONG lLoginID, NET_IN_PREPARE_EXPORT_INFO* pInParam, NET_OUT_PREPARE_EXPORT_INFO* pOutParam, int nWaitTime); ///@brief ????PrepareExport????????????????????????????????????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ExportEncrypedDebugFiles(LLONG lLoginID, NET_IN_EXPORT_ENCRYPED_DEBUGFILES_INFO* pInParam, NET_OUT_EXPORT_ENCRYPED_DEBUGFILES_INFO* pOutParam, int nWaitTime); /***************************?????????End***************************************************/ /***************************??????????????Start***************************/ ///@brief ??????????????? typedef enum tagEM_DYNAMIC_LOCK_ERRORCODE { EM_DYNAMIC_LOCK_ERRORCODE_UNKNOWN = -1, /// ??? EM_DYNAMIC_LOCK_ERRORCODE_SUCCESS, /// ??? EM_DYNAMIC_LOCK_ERRORCODE_FAIL, /// ??????? EM_DYNAMIC_LOCK_ERRORCODE_LOCK_NO_EXIT, /// ??ID?????? EM_DYNAMIC_LOCK_ERRORCODE_LOCK_INIT, /// ???????? EM_DYNAMIC_LOCK_ERRORCODE_LOCK_NOT_USE, /// ??????????? }EM_DYNAMIC_LOCK_ERRORCODE; ///@brief CLIENT_GetDynamicPasswordLockList ?????? typedef struct tagNET_IN_GET_DYNAMIC_PASSWORD_LOCKLIST_INFO { DWORD dwSize; /// ??????? }NET_IN_GET_DYNAMIC_PASSWORD_LOCKLIST_INFO; ///@brief ???????????? typedef struct tagNET_DYNAMIC_LOCK_LIST_INFO { char szID[32]; /// ??????ID char szReserverd[128]; /// ?????? }NET_DYNAMIC_LOCK_LIST_INFO; ///@brief CLIENT_GetDynamicPasswordLockList ?????? typedef struct tagNET_OUT_GET_DYNAMIC_PASSWORD_LOCKLIST_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? int nListNum; /// ???????????????? NET_DYNAMIC_LOCK_LIST_INFO stuList[32]; /// ???????????? }NET_OUT_GET_DYNAMIC_PASSWORD_LOCKLIST_INFO; ///@brief CLIENT_GetDynamicPasswordLockInfo ?????? typedef struct tagNET_IN_GET_DYNAMIC_PASSWORD_LOCK_INFO { DWORD dwSize; /// ??????? int nListNum; /// ???????????????? NET_DYNAMIC_LOCK_LIST_INFO stuList[32]; /// ???????????? }NET_IN_GET_DYNAMIC_PASSWORD_LOCK_INFO; ///@brief ???????????? typedef struct tagNET_DYNAMIC_PASSWORD_LOCK_INFO { char szID[32]; /// ??????ID BOOL bInitState; /// ???????, TRUE-????????FALSE-??????? BOOL bLockState; /// ??????, TRUE-??????FALSE-???? BOOL bOnlineState; /// ???????, TRUE-?????FALSE-???? char szReserverd[124]; /// ?????? }NET_DYNAMIC_PASSWORD_LOCK_INFO; ///@brief CLIENT_GetDynamicPasswordLockInfo ?????? typedef struct tagNET_OUT_GET_DYNAMIC_PASSWORD_LOCK_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? int nInfoNum; /// ???????????????? NET_DYNAMIC_PASSWORD_LOCK_INFO stuInfo[32]; /// ???????????? }NET_OUT_GET_DYNAMIC_PASSWORD_LOCK_INFO; ///@brief CLIENT_GetDynamicLockRandomPublicKey ?????? typedef struct tagNET_IN_GET_DYNAMIC_LOCK_RANDOM_PUBLICKEY_INFO { DWORD dwSize; /// ??????? char szID[32]; /// ??????ID char szCenterPublicKey[512]; /// ?????? }NET_IN_GET_DYNAMIC_LOCK_RANDOM_PUBLICKEY_INFO; ///@brief CLIENT_GetDynamicLockRandomPublicKey ?????? typedef struct tagNET_OUT_GET_DYNAMIC_LOCK_RANDOM_PUBLICKEY_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? char szRandomPublicKey[512]; /// ???????? }NET_OUT_GET_DYNAMIC_LOCK_RANDOM_PUBLICKEY_INFO; ///@brief CLIENT_SetDynamicLockCommunicationKey ?????? typedef struct tagNET_IN_SET_DYNAMIC_LOCK_COMMUNICATIONKEY_INFO { DWORD dwSize; /// ??????? char szID[32]; /// ??????ID char szCommuKey[512]; /// ????? char szKeyVerify[512]; /// ????????????? char szOldKeyVerify[512]; /// ?????????????? char szPrivateSigniture[512]; /// ????????????? }NET_IN_SET_DYNAMIC_LOCK_COMMUNICATIONKEY_INFO; ///@brief CLIENT_SetDynamicLockCommunicationKey ?????? typedef struct tagNET_OUT_SET_DYNAMIC_LOCK_COMMUNICATIONKEY_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? }NET_OUT_SET_DYNAMIC_LOCK_COMMUNICATIONKEY_INFO; ///@brief CLIENT_SetDynamicLockOpenKey ?????? typedef struct tagNET_IN_SET_DYNAMIC_LOCK_OPENKEY_INFO { DWORD dwSize; /// ??????? char szID[32]; /// ??????ID char szOpenKey[512]; /// ??????? char szKeyVerify[512]; /// ??????????? char szKeyVersion[512]; /// ?????????? }NET_IN_SET_DYNAMIC_LOCK_OPENKEY_INFO; ///@brief CLIENT_SetDynamicLockOpenKey ?????? typedef struct tagNET_OUT_SET_DYNAMIC_LOCK_OPENKEY_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? }NET_OUT_SET_DYNAMIC_LOCK_OPENKEY_INFO; ///@brief CLIENT_SetDynamicLockTempUserID ?????? typedef struct tagNET_IN_SET_DYNAMIC_LOCK_TEMP_USERID_INFO { DWORD dwSize; /// ??????? char szID[32]; /// ??????ID char szTmpUserID[512]; /// ??????? }NET_IN_SET_DYNAMIC_LOCK_TEMP_USERID_INFO; ///@brief CLIENT_SetDynamicLockTempUserID ?????? typedef struct tagNET_OUT_SET_DYNAMIC_LOCK_TEMP_USERID_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? }NET_OUT_SET_DYNAMIC_LOCK_TEMP_USERID_INFO; ///@brief CLIENT_SetDynamicLockOpenCode ?????? typedef struct tagNET_IN_SET_DYNAMIC_LOCK_OPEN_CODE_INFO { DWORD dwSize; /// ??????? char szID[32]; /// ??????ID char szOpenCode[512]; /// ??????? }NET_IN_SET_DYNAMIC_LOCK_OPEN_CODE_INFO; ///@brief CLIENT_SetDynamicLockOpenCode ?????? typedef struct tagNET_OUT_SET_DYNAMIC_LOCK_OPEN_CODE_INFO { DWORD dwSize; /// ??????? EM_DYNAMIC_LOCK_ERRORCODE emErrorCode; /// ??????????????? }NET_OUT_SET_DYNAMIC_LOCK_OPEN_CODE_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDynamicPasswordLockList(LLONG lLoginID, NET_IN_GET_DYNAMIC_PASSWORD_LOCKLIST_INFO* pInParam, NET_OUT_GET_DYNAMIC_PASSWORD_LOCKLIST_INFO* pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDynamicPasswordLockInfo(LLONG lLoginID, NET_IN_GET_DYNAMIC_PASSWORD_LOCK_INFO* pInParam, NET_OUT_GET_DYNAMIC_PASSWORD_LOCK_INFO* pOutParam, int nWaitTime); ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDynamicLockRandomPublicKey(LLONG lLoginID, NET_IN_GET_DYNAMIC_LOCK_RANDOM_PUBLICKEY_INFO* pInParam, NET_OUT_GET_DYNAMIC_LOCK_RANDOM_PUBLICKEY_INFO* pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDynamicLockCommunicationKey(LLONG lLoginID, NET_IN_SET_DYNAMIC_LOCK_COMMUNICATIONKEY_INFO* pInParam, NET_OUT_SET_DYNAMIC_LOCK_COMMUNICATIONKEY_INFO* pOutParam, int nWaitTime); ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDynamicLockOpenKey(LLONG lLoginID, NET_IN_SET_DYNAMIC_LOCK_OPENKEY_INFO* pInParam, NET_OUT_SET_DYNAMIC_LOCK_OPENKEY_INFO* pOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDynamicLockTempUserID(LLONG lLoginID, NET_IN_SET_DYNAMIC_LOCK_TEMP_USERID_INFO* pInParam, NET_OUT_SET_DYNAMIC_LOCK_TEMP_USERID_INFO* pOutParam, int nWaitTime); ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDynamicLockOpenCode(LLONG lLoginID, NET_IN_SET_DYNAMIC_LOCK_OPEN_CODE_INFO* pInParam, NET_OUT_SET_DYNAMIC_LOCK_OPEN_CODE_INFO* pOutParam, int nWaitTime); /***************************??????????????End***************************/ ///@brief CLIENT_GetFinancialCabinInfo ??????? typedef struct tagNET_IN_GET_FINANCIAL_CABIN_INFO { DWORD dwSize; /// ??????? int nIndexNum; /// ???????????????? UINT nIndex[64]; /// ???????????????? }NET_IN_GET_FINANCIAL_CABIN_INFO; ///@brief ??????? typedef struct tagNET_FINANCIAL_CABIN_INFO { char szRFIDNo[128]; /// ?????????????RFID????? char szBindRFIDNo[128]; /// ???????????RFID?????,??????????????? char szType[32]; /// ?????????"Cash"-????"Bill"-???? char szDoorState[32]; /// ??????????"IsClosed"-?????"IsOpened"-???? float fAmount; /// ??????????????????"Cash"??????? ??????????? char szReserved[124]; /// ?????? }NET_FINANCIAL_CABIN_INFO; ///@brief CLIENT_GetFinancialCabinInfo ??????? typedef struct tagNET_OUT_GET_FINANCIAL_CABIN_INFO { DWORD dwSize; /// ??????? int nInfoNum; /// ??????????? NET_FINANCIAL_CABIN_INFO stuInfo[64]; /// ???????,???????Index?????????? }NET_OUT_GET_FINANCIAL_CABIN_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFinancialCabinInfo(LLONG lLoginID, NET_IN_GET_FINANCIAL_CABIN_INFO* pInParam, NET_OUT_GET_FINANCIAL_CABIN_INFO* pOutParam, int nWaitTime); /***************************?????????Start***************************/ ///@brief ????????/??????????? typedef enum tagEM_CTRL_SCHEME { EM_CTRL_SCHEME_UNKNOWN, /// ??? EM_CTRL_SCHEME_REDYELLOW_BACKUP = 150, /// ????????(?????) EM_CTRL_SCHEME_REDYELLOW_BACKUP_NORMAL_QUIT, /// ?????????????(?????) EM_CTRL_SCHEME_REDYELLOW_BACKUP_ABNORMAL_QUIT, /// ???????????(?????) EM_CTRL_SCHEME_VARLANE_BACKUP, /// ????????(?????) EM_CTRL_SCHEME_VARLANE_BACKUP_NORMAL_QUIT, /// ?????????????(?????) EM_CTRL_SCHEME_VARLANE_BACKUP_ABNORMAL_QUIT, /// ???????????(?????) }EM_CTRL_SCHEME; ///@brief CLIENT_SetRtscBackupMode ?????????? typedef struct tagNET_IN_SET_BACKUP_MODE { DWORD dwSize; /// ??????? EM_CTRL_SCHEME emCtrlScheme; /// ?????/???????????150-152????????? 153-155??????????????? } NET_IN_SET_BACKUP_MODE; ///@brief ??????????????? typedef enum tagEM_BACKUP_ERROR_CODE { EM_BACKUP_ERROR_CODE_UNKNOWN = -1, /// ??? EM_BACKUP_ERROR_CODE_SUCCESS, /// ????????????? EM_BACKUP_ERROR_CODE_CYCLE_PLAN, /// ????????????? EM_BACKUP_ERROR_CODE_GREEN_LETTER, /// ?????????? EM_BACKUP_ERROR_CODE_TIME_BASE_PLAN, /// ????????????? EM_BACKUP_ERROR_CODE_DAY_PLAN, /// ?????????? EM_BACKUP_ERROR_CODE_ACTION_PLAN, /// ?????????????? EM_BACKUP_ERROR_CODE_PHASE_SEQUENCE, /// ????????? EM_BACKUP_ERROR_CODE_CHANNEL_TABLE, /// ????????? EM_BACKUP_ERROR_CODE_FOLLOW_PHASE_TABLE, /// ?????????????? EM_BACKUP_ERROR_CODE_PHASE_CONFLCT, /// ??????? EM_BACKUP_ERROR_CODE_DELIVERY_PLAN, /// ??????????? EM_BACKUP_ERROR_CODE_LANE_TABLE_SETTING, /// ?????????????? EM_BACKUP_ERROR_CODE_NOT_SUPPORT_SHORT_JUNCTIONS, /// ????????????????????????????? EM_BACKUP_ERROR_CODE_CHANNEL_CONFIGURATION, /// ??????????? ???????? ????????????????????????????????????????????--????? EM_BACKUP_ERROR_CODE_VARIABLEE_LANE_TABLE, /// ??????????????? EM_BACKUP_ERROR_CODE_WEEKLY_PLAN, /// ?????????????? }EM_BACKUP_ERROR_CODE; ///@brief CLIENT_SetRtscBackupMode ?????????? typedef struct tagNET_OUT_SET_BACKUP_MODE { DWORD dwSize; /// ??????? EM_BACKUP_ERROR_CODE emBackUpErrCode; /// ??????????????? } NET_OUT_SET_BACKUP_MODE; ///@brief CLIENT_SetRtscRunningMode ?????????? typedef struct tagNET_IN_SET_RUNNING_MODE { DWORD dwSize; /// ??????? int nMode; /// ?????????????? 0x01 ///????? 0xfb ///????? 0xfc ///????? 0xfd ///??????????? /// 0xfe ///????? 0xff ///?????? 0xf6 ///???????? 0xf2///??????????? 0xf8///?????? 0xf9///?????? } NET_IN_SET_RUNNING_MODE; ///@brief CLIENT_SetRtscRunningMode ?????????? typedef struct tagNET_OUT_SET_RUNNING_MODE { DWORD dwSize; /// ??????? } NET_OUT_SET_RUNNING_MODE; ///@brief CLIENT_GetRtscRunningMode ?????????? typedef struct tagNET_IN_GET_RUNNING_MODE { DWORD dwSize; /// ??????? }NET_IN_GET_RUNNING_MODE; ///@brief CLIENT_GetRtscRunningMode ?????????? typedef struct tagNET_OUT_GET_RUNNING_MODE { DWORD dwSize; /// ??????? int nMode; /// ?????????????? 0x01 ///????? 0xfb ///????? 0xfc ///????? 0xfd ///??????????? /// 0xfe ///????? 0xff ///?????? 0xf6 ///???????? 0xf2///??????????? 0xf8///?????? 0xf9///?????? }NET_OUT_GET_RUNNING_MODE; ///@brief ????????? typedef enum tagEM_LIGHTGROUP_FAULT_LEVEL { EM_LIGHTGROUP_FAULT_UNKNOWN, /// ??? EM_LIGHTGROUP_FAULT_INGORE, /// ??????????????? EM_LIGHTGROUP_FAULT_INGORE_YELLOWGREENPEDESTRIAN, /// ????????????????????????? EM_LIGHTGROUP_FAULT_INGORE_YELLOWREDPEDESTRIAN, /// ????????????????????????? EM_LIGHTGROUP_FAULT_INGORE_YELLOWPEDESTRIAN, /// ????????????????????? EM_LIGHTGROUP_FAULT_UNINGORE, /// ???????????????? }EM_LIGHTGROUP_FAULT_LEVEL; ///@brief ???????? typedef enum tagEM_COUNTDOWN_TYPE { EM_COUNTDOWN_TYPE_UNKNOWN, /// ??? EM_COUNTDOWN_TYPE_LEARNING, /// ??? EM_COUNTDOWN_TYPE_PLUSE, /// ????? EM_COUNTDOWN_TYPE_FULL485, /// ???485? EM_COUNTDOWN_TYPE_HALFWAY485, /// ???485? }EM_COUNTDOWN_TYPE; ///@brief ?????????? typedef enum tagEM_AUTO_PROTECT_WEEK { EM_AUTO_PROTECT_UNKNOWN, /// ??? EM_AUTO_PROTECT_MONDAY, /// ????? EM_AUTO_PROTECT_TUESDAY, /// ????? EM_AUTO_PROTECT_WEDNESDAY, /// ?????? EM_AUTO_PROTECT_THURSDAY, /// ?????? EM_AUTO_PROTECT_FIRDAY, /// ?????? EM_AUTO_PROTECT_SATURDAY, /// ?????? EM_AUTO_PROTECT_SUNDAY, /// ?????? EM_AUTO_PROTECT_EVERYDAY, /// ??? }EM_AUTO_PROTECT_WEEK; ///@brief ????????? typedef struct tagGLOBAL_INFO { EM_LIGHTGROUP_FAULT_LEVEL emLightGroupFault; /// ????????? EM_COUNTDOWN_TYPE emCountDownType; /// ???????? int nPulseWidth; /// ??????????????????????ms?? int nPulseTime; /// ??????????????????????s?? int nBaudRault; /// 485??????????? INTEGER(2400 4800 9600 19200 38400) int nGatType; /// 485?????????????0??GAT208-2004 1??GAT208-2014?? int nHalfTime; /// ???485?????????????? int nDefaultRunModel; /// ????????????????1????? 2????? 3?????? 4?????? -1?????? int nVarLaneCommunicationType; /// ????????????? 0??????? 1????? -1?????? int nAutoProtectEnable; /// ??????????0-???????1-???? -1?????? EM_AUTO_PROTECT_WEEK emAutoProtectWeek; /// ?????????? int nAutoProtectHour; /// ????????? int nAutoProtectMinute; /// ?????????? int nControlUnlockTime; /// ?????????????0-65535?? int nFaultReport; /// ???????????(???????????0??????????????1?????????.bit0?????????bit1???????????bit2??????????bit3???????????bit4: int nRatedVoltage; /// ?????? int nPercentageValNum; /// ????????? int nPercentageVal[4]; /// ?????;array[0]:????1???????????/ array[1]:????2???????????????/array[2]:????3 int nStartUpLampNum; /// ??????????????? int nStartUpLamp[3]; /// ??????????? 1????? 2????? 4: ???? 5: ???? ; array[n]:???n???,n <3 int nStartUpTimeNum; /// ?????????????? int nStartUpTime[3]; /// ??????????? array[n]:???n???,n <3 int nPlatformCtrl; /// ?????????????: 1-??????? 2-?????? 3-??????? 4-??????? 5-??? int nPlatformCtrlValNum; /// ?????????????????? int nPlatformCtrlVal[16]; /// ?????????????? /// ??ctrl????3-???????????????????????????????????????????????????????????????????????????????????????????????????????????A1??B2??????????[1,1,2,2] /// ??ctrl????4-??????????????????????????????????,?????0 BYTE byReserved[952]; /// ?????? }GLOBAL_INFO; ///@brief CLIENT_GetRtscGlobalParam ?????????? typedef struct tagNET_IN_GET_GLOBAL_PARAMETER { DWORD dwSize; /// ??????? }NET_IN_GET_GLOBAL_PARAMETER; ///@brief CLIENT_GetRtscGlobalParam ?????????? typedef struct tagNET_OUT_GET_GLOBAL_PARAMETER { DWORD dwSize; /// ??????? GLOBAL_INFO stuGlobalInfo; /// ?????? }NET_OUT_GET_GLOBAL_PARAMETER; ///@brief CLIENT_SetRtscGlobalParam ?????????? typedef struct tagNET_IN_SET_GLOBAL_PARAMETER { DWORD dwSize; /// ??????? GLOBAL_INFO stuGlobalInfo; /// ?????? }NET_IN_SET_GLOBAL_PARAMETER; ///@brief CLIENT_SetRtscGlobalParam ?????????? typedef struct tagNET_OUT_SET_GLOBAL_PARAMETER { DWORD dwSize; /// ??????? }NET_OUT_SET_GLOBAL_PARAMETER; ///@brief CLIENT_GetRtscRunningInfo ?????????? typedef struct tagNET_IN_GET_RUNNING_INFO { DWORD dwSize; /// ??????? UINT nType; /// ????????????????? bit0:?????? bit1:?????? bit2:?????????? bit3:????/???????????? bit4:??????????????? bit5: ????????????????????? }NET_IN_GET_RUNNING_INFO; ///@brief CLIENT_GetRtscRunningInfo ?????????? typedef struct tagNET_OUT_GET_RUNNING_INFO { DWORD dwSize; /// ??????? DWORD dwReportState; /// bit0:?????? /// bit1:?????? /// bit2:?????????? /// bit3:????/???????????? /// bit4:??????????????? /// bit5: ????????????????????? int nLongitudeNum; /// ??????? double dbLongitude[3]; /// ????,?????????????(?????????) int nLatitudeNum; /// ??????? double dbLatitude[3]; /// ????,?????????????(?????????) double dbAltitude; /// ??????????? NET_TIME_EX UTC; /// ???????????????????UTC????????? EM_STATUS emStatus; /// ????? EM_CONTROL_MODE emControlMode; /// ?????? LANE_STATE stuLaneStateInfo; /// ?????????? LANE_CTRL_STATE stuLaneCtrlStateInfo; /// ????/????????? CUR_STEP_INFO stuCurStepInfo; /// ??????????????? NEXT_STEP_INFO stuNextStepInfo; /// ????????????????????? }NET_OUT_GET_RUNNING_INFO; ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRtscBackupMode(LLONG lLoginID, const NET_IN_SET_BACKUP_MODE* pInParam, NET_OUT_SET_BACKUP_MODE* pOutParam, int nWaitTime); ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRtscRunningMode(LLONG lLoginID, const NET_IN_SET_RUNNING_MODE* pInParam, NET_OUT_SET_RUNNING_MODE* pOutParam, int nWaitTime); ///@brief ?????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRtscRunningMode(LLONG lLoginID, const NET_IN_GET_RUNNING_MODE* pInParam, NET_OUT_GET_RUNNING_MODE* pOutParam, int nWaitTime); ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRtscGlobalParam(LLONG lLoginID, const NET_IN_GET_GLOBAL_PARAMETER* pInParam, NET_OUT_GET_GLOBAL_PARAMETER* pOutParam, int nWaitTime); ///@brief ???????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetRtscGlobalParam(LLONG lLoginID, const NET_IN_SET_GLOBAL_PARAMETER* pInParam, NET_OUT_SET_GLOBAL_PARAMETER* pOutParam, int nWaitTime); ///@brief ??????????????,pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRtscRunningInfo(LLONG lLoginID, const NET_IN_GET_RUNNING_INFO* pInParam, NET_OUT_GET_RUNNING_INFO* pOutParam, int nWaitTime); /***************************?????????End***************************/ /***************************??????Things???Start***************************/ ///@brief ????????? typedef enum tagEM_PROPERTIES_VALUE_TYPE { EM_PROPERTIES_VALUE_UNKNOWN, /// ??? EM_PROPERTIES_VALUE_INT, /// int????,1,100,1000 EM_PROPERTIES_VALUE_BOOL, /// bool????,true,false EM_PROPERTIES_VALUE_STRING, /// string????,"1","100","1000" EM_PROPERTIES_VALUE_INTARRAY, /// int????????,"[1,2,3]" }EM_PROPERTIES_VALUE_TYPE; ///@brief ??????? typedef struct tagNET_PROPERTIES_NAME { char szPropertiesName[64]; /// "*","BJPZ_DDBJLDMS"??"SBJCXX_CPLX"??"SBJCXX_SBLX"?? char szReserved[1024]; /// ?????? }NET_PROPERTIES_NAME; ///@brief int+Array? typedef struct tagNET_PROPERTIES_INTARRAY_VALUE { int nValue; /// Value??1,2,3 char szReserved[32]; /// ?????? }NET_PROPERTIES_INTARRAY_VALUE; ///@brief ???????? typedef struct tagNET_PROPERTIES_INFO { char szKey[64]; /// BJPZ_DDBJLDMS??SBJCXX_CPLX??SBJCXX_SBLX?? char szValue[256]; /// 1,true,"normal"?? EM_PROPERTIES_VALUE_TYPE emValueType; /// szValue????????????int,bool,string???? int nIntArrayValueNum; /// stuIntArrayValue?????? NET_PROPERTIES_INTARRAY_VALUE stuIntArrayValue[128]; /// int+Array?????emValueType?EM_PROPERTIES_VALUE_INTARRAY char szReserved[512]; /// ?????? }NET_PROPERTIES_INFO; ///@brief CLIENT_GetThingsConfig ?????????? typedef struct tagNET_IN_THINGS_GET { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[128]; /// ???ID?????????? int nProperCount; /// pstuGetInProperName???? NET_PROPERTIES_NAME* pstuGetInProperName; /// ???????????????????????????? /// ??????????,?????sizeof(NET_PROPERTIES_INFO)*nPropertiesCount }NET_IN_THINGS_GET; ///@brief CLIENT_GetThingsConfig ?????????? typedef struct tagNET_OUT_THINGS_GET { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[128]; /// ???ID?????????? int nRetPropertiesCount; /// ???????pstuGetOutProperInfo???? int nMaxPropertiesCount; /// ????????pstuGetOutProperInfo???? NET_PROPERTIES_INFO* pstuGetOutProperInfo; /// ?????????????????????????????, Key??Value??ValueType?????? /// ??????????,?????sizeof(NET_PROPERTIES_INFO)*nMaxPropertiesCount }NET_OUT_THINGS_GET; ///@brief CLIENT_SetThingsConfig ?????????? typedef struct tagNET_IN_THINGS_SET { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[128]; /// ???ID?????????? int nProperCount; /// pstuSetInProperInfo???? NET_PROPERTIES_INFO* pstuSetInProperInfo; /// ?????????????????????????????, Key??Value??ValueType????????? /// ??????????,?????sizeof(NET_PROPERTIES_INFO)*nPropertiesCount }NET_IN_THINGS_SET; ///@brief CLIENT_SetThingsConfig ?????????? typedef struct tagNET_OUT_THINGS_SET { DWORD dwSize; /// ???????, ?????????????????? }NET_OUT_THINGS_SET; ///@brief ???????? typedef enum tagEM_ATTACH_TOPICS { EM_ATTACH_TOPICS_ALL, /// "*" ??????????????????? EM_ATTACH_TOPICS_PROPS, /// "Props" ????????????????? EM_ATTACH_TOPICS_EVENTS, /// "Events" ???????????????? }EM_ATTACH_TOPICS; ///@brief ???????????? typedef struct tagNET_CB_THINGS_PROPER_INFO { char szKey[64]; /// DQZT??FHZYY??Action?? char szValue[256]; /// 1,true,"normal"?? EM_PROPERTIES_VALUE_TYPE emValueType; /// szValue????????????int,bool,string???? int nIntArrayValueNum; /// stuIntArrayValue?????? NET_PROPERTIES_INTARRAY_VALUE stuIntArrayValue[64]; /// int+Array?????emValueType?EM_PROPERTIES_VALUE_INTARRAY char szReserved[1024]; /// ?????? }NET_CB_THINGS_PROPER_INFO; ///@brief ????????????????? typedef struct tagNET_CB_THINGS_INFO { EM_ATTACH_TOPICS emTopics; /// ???????? int nSID; /// sid char szProductID[64]; /// ???ID???????? char szDeviceID[128]; /// ???ID?????????? char szEventID[64]; /// ??Topics?events???????????, ????????????????????? NET_TIME_EX stuEventTime; /// ?????????? NET_CB_THINGS_PROPER_INFO* pstuProperInfo; /// ?????????????????????????, ?????sdk ??????????? UINT nRetProperInfoNum; /// ???????????????????????, ??pstuProperInfo ?????????????????? char szReserve[256]; /// ??????? }NET_CB_THINGS_INFO; ///@brief ?????????????????????, lAttachHandle?CLIENT_AttachThingsInfo???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstResult ????????????????? ///@param[out] dwUserData ?????? ///@return void typedef void (CALLBACK *fThingsCallBack)(LLONG lAttachHandle, NET_CB_THINGS_INFO* pstResult, LDWORD dwUserData); ///@brief CLIENT_AttachThingsInfo?????????? typedef struct tagNET_IN_THINGS_ATTACH { DWORD dwSize; /// ???????, ?????????????????? EM_ATTACH_TOPICS emTopics; /// ???????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID?????????? fThingsCallBack cbThingsInfo; /// ??????????????? LDWORD dwUser; /// ??????? }NET_IN_THINGS_ATTACH; ///@brief CLIENT_AttachThingsInfo?????????? typedef struct tagNET_OUT_THINGS_ATTACH { DWORD dwSize; /// ???????, ?????????????????? }NET_OUT_THINGS_ATTACH; ///@brief CLIENT_GetThingsCaps?????????? typedef struct tagNET_IN_THINGS_GET_CAPS { DWORD dwSize; /// ???????, ?????????????????? char szDeviceID[128]; /// ???ID?????????? }NET_IN_THINGS_GET_CAPS; ///@brief CLIENT_GetThingsCaps?????????? typedef struct tagNET_OUT_THINGS_GET_CAPS { DWORD dwSize; /// ???????, ?????????????????? int nMaxProperCount; /// ????????pstuGetCapsProperName???? int nRetProperCount; /// ???????pstuGetCapsProperName???? NET_PROPERTIES_NAME* pstuGetCapsProperName; /// ?????????????????????,?????sizeof(NET_PROPERTIES_NAME)*nMaxProperCount }NET_OUT_THINGS_GET_CAPS; ///@brief ??????? typedef struct tagNET_THINGS_DEVLIST_INFO { char szDevID[128]; /// "1","2"?? char szDevClass[128]; /// "001","002"?? char szReserved[1024]; /// ?????? }NET_THINGS_DEVLIST_INFO; ///@brief CLIENT_GetThingsDevList?????????? typedef struct tagNET_IN_THINGS_GET_DEVLIST { DWORD dwSize; /// ???????, ?????????????????? }NET_IN_THINGS_GET_DEVLIST; ///@brief ????????? typedef enum tagEM_THINGS_CONNECT_STATE { EM_THINGS_CONNECT_STATE_UNKNOWN = -1, /// ??? EM_THINGS_CONNECT_STATE_DISCONNECT, /// ?????? EM_THINGS_CONNECT_STATE_CONNECT, /// ?????? }EM_THINGS_CONNECT_STATE; ///@brief CLIENT_GetThingsDevList?????????? typedef struct tagNET_OUT_THINGS_GET_DEVLIST { DWORD dwSize; /// ???????, ?????????????????? int nMaxDevListCount; /// ????????pstuDevListInfo???? int nRetDevListCount; /// ???????pstuDevListInfo???? NET_THINGS_DEVLIST_INFO* pstuDevListInfo; /// ??????????????????????,?????sizeof(NET_THINGS_DEVLIST_INFO)*nMaxDevListCount }NET_OUT_THINGS_GET_DEVLIST; ///@brief CLIENT_GetThingsNetState?????????? typedef struct tagNET_IN_THINGS_GET_NETSTATE { DWORD dwSize; /// ???????, ?????????????????? }NET_IN_THINGS_GET_NETSTATE; ///@brief CLIENT_GetThingsNetState?????????? typedef struct tagNET_OUT_THINGS_GET_NETSTATE { DWORD dwSize; /// ???????, ?????????????????? EM_THINGS_CONNECT_STATE emConnectState; /// ????????? }NET_OUT_THINGS_GET_NETSTATE; ///@brief ?????????????(??? EM_THINGS_SERVICE_TYPE_VALVECONTROL) typedef struct tagNET_IN_THINGS_SERVICE_VALVECONTROL { DWORD dwSize; /// ???????, ?????????????????? BOOL bSwitch; /// ???? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_VALVECONTROL; ///@brief ?????????????(??? EM_THINGS_SERVICE_TYPE_VALVECONTROL) typedef struct tagNET_OUT_THINGS_SERVICE_VALVECONTROL { DWORD dwSize; /// ???????, ?????????????????? BOOL bResult; /// ????????????????????????/????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_VALVECONTROL; ///@brief ???????????????(??? EM_THINGS_SERVICE_TYPE_CHARGECLEAR) typedef struct tagNET_IN_THINGS_SERVICE_CHARGECLEAR { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_CHARGECLEAR; ///@brief ???????????????(??? EM_THINGS_SERVICE_TYPE_CHARGECLEAR) typedef struct tagNET_OUT_THINGS_SERVICE_CHARGECLEAR { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_CHARGECLEAR; ///@brief ?????????????(??? EM_THINGS_SERVICE_TYPE_LEAKCURTPOST) typedef struct tagNET_IN_THINGS_SERVICE_LEAKCURTPOST { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_LEAKCURTPOST; ///@brief ?????????????(??? EM_THINGS_SERVICE_TYPE_LEAKCURTPOST) typedef struct tagNET_OUT_THINGS_SERVICE_LEAKCURTPOST { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID BOOL bCheckResult; /// ????? char szErrorMsg[1024]; /// ?????? }NET_OUT_THINGS_SERVICE_LEAKCURTPOST; ///@brief ???????????????(??? EM_THINGS_SERVICE_TYPE_LEAKCURTPOSTASYNC) typedef struct tagNET_IN_THINGS_SERVICE_LEAKCURTPOSTASYNC { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_LEAKCURTPOSTASYNC; ///@brief ???????????????(??? EM_THINGS_SERVICE_TYPE_LEAKCURTPOSTASYNC) typedef struct tagNET_OUT_THINGS_SERVICE_LEAKCURTPOSTASYNC { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID BOOL bCheckResult; /// ????? char szErrorMsg[1024]; /// ?????? }NET_OUT_THINGS_SERVICE_LEAKCURTPOSTASYNC; ///@brief ???????????????????(??? EM_THINGS_SERVICE_TYPE_AIRSWITHFIND) typedef struct tagNET_IN_THINGS_SERVICE_AIRSWITHFIND { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_AIRSWITHFIND; ///@brief ???????????????????(??? EM_THINGS_SERVICE_TYPE_AIRSWITHFIND) typedef struct tagNET_OUT_THINGS_SERVICE_AIRSWITHFIND { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_AIRSWITHFIND; ///@brief ?????????????????????(??? EM_THINGS_SERVICE_TYPE_AIRSWITHRESET) typedef struct tagNET_IN_THINGS_SERVICE_AIRSWITHRESET { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_AIRSWITHRESET; ///@brief ?????????????????????(??? EM_THINGS_SERVICE_TYPE_AIRSWITHRESET) typedef struct tagNET_OUT_THINGS_SERVICE_AIRSWITHRESET { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_AIRSWITHRESET; ///@brief ???????????? typedef enum tagEM_THINGS_RULECONTENT_TYPE { EM_THINGS_RULECONTENT_TYPE_UNKNOWN, /// ??? EM_THINGS_RULECONTENT_TYPE_IFTTT, /// IFTTT???? }EM_THINGS_RULECONTENT_TYPE; /* ????????????????????????????????????????????????? ??1??*?????????????????????????Minutes?????*, ???????????????????? ??2????????????DayofMonth??DayofWeek?????????????????????????????????DayofMonth??DayofWeek???????????????????20??????????????20???????????????????????????????? 13 13 15 20 * ?, ???????????????????????????*????????*???????????????????????????????????? ??3??-?????????????????Minutes?????5-20???????5???20??????????????? ??4??/???????????????????????????????????????????Minutes?????5/20,????????5??????????????25??45????????. ??5??,??????????????????????Minutes?????5,20????????????5??20??????????????? ??6??L????????????????DayofWeek??DayofMonth???????DayofWeek?????5L,?????????????????????????? ??7??W:?????????????(?????????),????????DayofMonth???????????????????????????????????????????????? DayofMonth???5W?????5????????????????????????????????????4??????????5??????????????6??(???)?????????5?????????????????????????????5??????????????W????????????????? ?? ??8??LW:???????????????????????????????????????????????????????^ ??9??#:???????????????????????????????DayofMonth????????4#2????????????????????? ????"0 0 8 ? 1-6 1/5 *", /// ????1-6??????1-??5??????8:00:00 */ ///@brief ???????????Cron???? typedef struct tagNET_THINGS_TRIGGER_TIMER_CORN { char szSeconds[8]; /// ?????0~59?????????????4?????, - * / char szMinutes[8]; /// ??????0~59?????????????4?????, - * / char szHours[8]; /// ??????0~23?????????????4?????, - * / char szDayofMonth[8]; /// ????????1~31???????????????????????????????????????8?????, - * ? / L W C char szMonth[8]; /// ????????1~12?????????? JAN-DEC???????4?????, - * / char szDayofWeek[8]; /// ????????1~7?????????? SUN-SAT???????8?????, - * ? / L W C char szYear[8]; /// ?????1970~2099?????????????4?????, - * / char szReserve[256]; /// ??????? }NET_THINGS_TRIGGER_TIMER_CORN; ///@brief ??????????????????????? typedef enum tagEM_THINGS_TRIGGER_TIMER_CORN_TYPE { EM_THINGS_TRIGGER_TIMER_CORN_TYPE_UNKNOWN, /// ??? EM_THINGS_TRIGGER_TIMER_CORN_TYPE_QUARTZCORN, /// "quartz_cron" ?????????$second $minute $hour $dayofmonth $month $dayofweek $year EM_THINGS_TRIGGER_TIMER_CORN_TYPE_LINUX, /// "linux" ?????????$minute $hour $day of month $month $dayofweek }EM_THINGS_TRIGGER_TIMER_CORN_TYPE; ///@brief ???????????????(???EM_THINGS_TRIGGER_TYPE_TRIGGER_TIMER) typedef struct tagNET_THINGS_RULECONTENT_TRIGGER_TIMER { NET_THINGS_TRIGGER_TIMER_CORN stuCron; /// Cron????? EM_THINGS_TRIGGER_TIMER_CORN_TYPE emCronType; /// Corn??????? char szTimezoneID[64]; /// ??????????Asia/Shanghai char szReserve[256]; /// ??????? }NET_THINGS_RULECONTENT_TRIGGER_TIMER; ///@brief ??????????????????(???EM_THINGS_TRIGGER_TYPE_TRIGGER_PROPERTY) typedef struct tagNET_THINGS_RULECONTENT_TRIGGER_PROPERTY { char szProductId[64]; /// ??????? char szDeviceName[32]; /// ???ID char szPropertyName[32]; /// ???????? char szCompareType[8]; /// ???????< ==?? char szCompareValue[32]; /// ???? EM_PROPERTIES_VALUE_TYPE emCompareValueType; ///???????? char szReserve[256]; /// ??????? }NET_THINGS_RULECONTENT_TRIGGER_PROPERTY; ///@brief ????????????? typedef enum tagEM_THINGS_TRIGGER_TYPE { EM_THINGS_TRIGGER_TYPE_UNKNOWN, /// ??? EM_THINGS_TRIGGER_TYPE_TRIGGER_TIMER, /// "trigger/timer" ????????????????NET_THINGS_RULECONTENT_TRIGGER_TIMER EM_THINGS_TRIGGER_TYPE_TRIGGER_PROPERTY, /// "trigger/device/property" ???????????????????NET_THINGS_RULECONTENT_TRIGGER_PROPERTY }EM_THINGS_TRIGGER_TYPE; ///@brief ??????????? typedef struct tagNET_THINGS_RULECONTENT_TRIGGER { EM_THINGS_TRIGGER_TYPE emUri; /// ?????????????,??EM_THINGS_TRIGGER_TYPE NET_THINGS_RULECONTENT_TRIGGER_TIMER stuTriggerTimer; /// ?????????emUri?EM_THINGS_TRIGGER_TYPE_TRIGGER_TIMER???? NET_THINGS_RULECONTENT_TRIGGER_PROPERTY stuTriggerProperty; /// ????????????emUri?EM_THINGS_TRIGGER_TYPE_TRIGGER_PROPERTY???? char szReserve[1024]; /// ??????? }NET_THINGS_SERVICE_RULECONTENT_TRIGGER; ///@brief ???????????????????(???EM_THINGS_ACTION_TYPE_SETPROPERTY) typedef struct tagNET_THINGS_RULECONTENT_ACTION_SETPROPERTY { char szProductId[64]; /// ??????? char szDeviceName[32]; /// ???ID char szPropertyName[32]; /// ???????? char szPropertyValue[32];/// ????? EM_PROPERTIES_VALUE_TYPE emPropertyValueType; ///????????? char szReserve[256]; /// ??????? }NET_THINGS_RULECONTENT_ACTION_SETPROPERTY; ///@brief ??????????????????? typedef enum tagEM_THINGS_ACTION_TYPE { EM_THINGS_ACTION_TYPE_UNKNOWN, /// ??? EM_THINGS_ACTION_TYPE_SETPROPERTY, /// "action/device/setProperty" ???????????????????NET_THINGS_RULECONTENT_ACTION_SETPROPERTY }EM_THINGS_ACTION_TYPE; ///@brief ??????????????? typedef struct tagNET_THINGS_RULECONTENT_ACTION { EM_THINGS_ACTION_TYPE emActionUri; /// ???????????????????,??EM_THINGS_ACTION_TYPE NET_THINGS_RULECONTENT_ACTION_SETPROPERTY stuActionSetProperty; /// ????????????emUri?EM_THINGS_ACTION_TYPE_SETPROPERTY???? char szReserve[1024]; /// ??????? }NET_THINGS_SERVICE_RULECONTENT_ACTION; ///@brief ???????????????????? typedef enum tagEM_THINGS_CONDITION_TYPE { EM_THINGS_CONDITION_TYPE_UNKNOWN, /// ??? EM_THINGS_CONDITION_TYPE_TIMERANGE, /// "condition/timeRange" ?????????????????????????????? EM_THINGS_CONDITION_TYPE_PROPERTY, /// "condition/device/property" ?????????????????? }EM_THINGS_CONDITION_TYPE; ///@brief ??????????????????????????(???EM_THINGS_CONDITION_TYPE_TIMERANGE) typedef struct tagNET_THINGS_RULECONTENT_CONDITION_TIMER { NET_THINGS_TRIGGER_TIMER_CORN stuCron; /// Cron????? EM_THINGS_TRIGGER_TIMER_CORN_TYPE emCronType; /// Corn??????? char szTimezoneID[64]; /// ??????????Asia/Shanghai char szReserve[256]; /// ??????? }NET_THINGS_RULECONTENT_CONDITION_TIMER; ///@brief ??????????????(???EM_THINGS_CONDITION_TYPE_PROPERTY) typedef struct tagNET_THINGS_RULECONTENT_CONDITION_PROPERTY { char szProductId[64]; /// ??????? char szDeviceName[32]; /// ???ID char szPropertyName[32]; /// ???????? char szCompareType[8]; /// ???????< ==?? char szCompareValue[32]; /// ???? EM_PROPERTIES_VALUE_TYPE emCompareValueType; ///???????? char szReserve[256]; /// ??????? }NET_THINGS_RULECONTENT_CONDITION_PROPERTY; ///@brief ???????????????? typedef struct tagNET_THINGS_RULECONTENT_CONDITION { EM_THINGS_CONDITION_TYPE emConditionUri; /// ????????????????????,??EM_THINGS_CONDITION_TYPE NET_THINGS_RULECONTENT_TRIGGER_TIMER stuTriggerTimer; /// ???????????????????????emConditionUri?EM_THINGS_CONDITION_TYPE_TIMERANGE???? NET_THINGS_RULECONTENT_CONDITION_PROPERTY stuConditionProperty; /// ????????????emConditionUri?EM_THINGS_CONDITION_TYPE_PROPERTY???? char szReserve[1024]; /// ??????? }NET_THINGS_SERVICE_RULECONTENT_CONDITION; ///@brief ???????? typedef struct tagNET_THINGS_SERVICE_RULECONTENT { EM_THINGS_RULECONTENT_TYPE emRuleContentType; /// ???????????? int nTriggerNum; /// ???????????? NET_THINGS_SERVICE_RULECONTENT_TRIGGER* pstuTrigger; /// ???????????????????????,?????nTriggerNum * sizeof(NET_THINGS_SERVICE_RULECONTENT_TRIGGER) NET_THINGS_SERVICE_RULECONTENT_ACTION* pstuAction; /// ???????????????????????????,?????nActionNum * sizeof(NET_THINGS_SERVICE_RULECONTENT_ACTION) int nActionNum; /// ??????????????????? int nConditionNum; /// ???????????????????? NET_THINGS_SERVICE_RULECONTENT_CONDITION* pstuCondition; /// ????????????????????????????,?????nConditionNum * sizeof(NET_THINGS_SERVICE_RULECONTENT_CONDITION) char szReserve[1024]; /// ??????? }NET_THINGS_SERVICE_RULECONTENT; ///@brief ???????????????????(??? EM_THINGS_SERVICE_TYPE_ADDRULE) typedef struct tagNET_IN_THINGS_SERVICE_ADDRULE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID char szClassName[256]; /// ?????????timer??????alarm?? NET_THINGS_SERVICE_RULECONTENT stuRuleContent; /// ???????????? }NET_IN_THINGS_SERVICE_ADDRULE; ///@brief ???????????????????(??? EM_THINGS_SERVICE_TYPE_ADDRULE) typedef struct tagNET_OUT_THINGS_SERVICE_ADDRULE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID char szRuleID[256]; /// ????ID }NET_OUT_THINGS_SERVICE_ADDRULE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_DELRULE) typedef struct tagNET_IN_THINGS_SERVICE_DELRULE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID char szRuleID[256]; /// ????ID char szClassName[256]; /// ?????????timer??????alarm?? }NET_IN_THINGS_SERVICE_DELRULE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_DELRULE) typedef struct tagNET_OUT_THINGS_SERVICE_DELRULE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_DELRULE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_MODRULE) typedef struct tagNET_IN_THINGS_SERVICE_MODRULE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID char szRuleID[256]; /// ????ID char szClassName[256]; /// ?????????timer??????alarm?? char szRuleContentType[256]; /// ????????????"Action" NET_THINGS_SERVICE_RULECONTENT stuRuleContent; /// ???????????? }NET_IN_THINGS_SERVICE_MODRULE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_MODRULE) typedef struct tagNET_OUT_THINGS_SERVICE_MODRULE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_MODRULE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_QUERULE) typedef struct tagNET_IN_THINGS_SERVICE_QUERULE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID int nPageSize; /// ???????????? int nPage; /// ?????? char szClassName[256]; /// ?????????timer??????alarm?? }NET_IN_THINGS_SERVICE_QUERULE; ///@brief ???????? typedef struct tagNET_THINGS_SERVICE_QUERULE_RULECONTENT { EM_THINGS_RULECONTENT_TYPE emRuleContentType; /// ???????????? int nMaxTriggerNum; /// ????????pstuTrigger???? int nRetTriggerNum; /// ???????pstuTrigger???? NET_THINGS_SERVICE_RULECONTENT_TRIGGER* pstuTrigger; /// ???????????????????????,?????nMaxTriggerNum * sizeof(NET_THINGS_SERVICE_RULECONTENT_TRIGGER) int nMaxActionNum; /// ????????pstuAction???? int nRetActionNum; /// ???????pstuAction???? NET_THINGS_SERVICE_RULECONTENT_ACTION* pstuAction; /// ???????????????????????????,?????nMaxActionNum * sizeof(NET_THINGS_SERVICE_RULECONTENT_ACTION) int nMaxConditionNum; /// ????????pstuCondition???? int nRetConditionNum; /// ???????pstuCondition???? NET_THINGS_SERVICE_RULECONTENT_CONDITION* pstuCondition; /// ????????????????????????????,?????nMaxConditionNum * sizeof(NET_THINGS_SERVICE_RULECONTENT_CONDITION) char szReserve[1024]; /// ??????? }NET_THINGS_SERVICE_QUERULE_RULECONTENT; ///@brief ???????? typedef struct tagNET_THINGS_SERVICE_QUERULE_RULES { DWORD dwSize; /// ???????, ?????????????????? BOOL bEnable; /// ??? char szRuleID[256]; /// ????ID NET_THINGS_SERVICE_QUERULE_RULECONTENT stuRuleContent; /// ???????????? }NET_THINGS_SERVICE_QUERULE_RULES; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_QUERULE) typedef struct tagNET_OUT_THINGS_SERVICE_QUERULE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID int nPageCount; /// ????? int nPageSize; /// ???????????? int nTotal; /// ???? int nPage; /// ?????? int nRetRulesNum; /// ???????pstuRules???? int nMaxRulesNum; /// ????????pstuRules???? NET_THINGS_SERVICE_QUERULE_RULES* pstuRules; /// ??????????????????,????? nMaxRulesNum * sizeof(NET_THINGS_SERVICE_QUERULE_RULES) }NET_OUT_THINGS_SERVICE_QUERULE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_ENABLERULE) typedef struct tagNET_IN_THINGS_SERVICE_ENABLE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID BOOL bEnable; /// ??? char szRuleID[256]; /// ????ID char szClassName[256]; /// ?????????timer??????alarm?? }NET_IN_THINGS_SERVICE_ENABLE; ///@brief ??????????????????(??? EM_THINGS_SERVICE_TYPE_ENABLERULE) typedef struct tagNET_OUT_THINGS_SERVICE_ENABLE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_ENABLE; ///@brief ??????????????(??? EM_THINGS_SERVICE_TYPE_ADDDEVICE) typedef struct tagNET_IN_THINGS_SERVICE_ADDDEVICE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID UINT nDevCata; /// ???????????,3:??? 5:??? 6:??? UINT nDev485Addr; /// 485?????????????????? char szDevSn[128]; /// ??????????????????? char szDevName[128]; /// ?????????????????? }NET_IN_THINGS_SERVICE_ADDDEVICE; ///@brief ??????????????(??? EM_THINGS_SERVICE_TYPE_ADDDEVICE) typedef struct tagNET_OUT_THINGS_SERVICE_ADDDEVICE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_ADDDEVICE; ///@brief ?????ID typedef struct tagNET_THINGS_SERVICE_DELDEVICE_LIST { char szDevieID[64]; /// ?????ID char szReserve[512]; /// ??????? }NET_THINGS_SERVICE_DELDEVICE_LIST; ///@brief ???????????????(??? EM_THINGS_SERVICE_TYPE_DELDEVICE) typedef struct tagNET_IN_THINGS_SERVICE_DELDEVICE { DWORD dwSize; /// ???????, ?????????????????? int nDelidListCount; /// ?????ID???? NET_THINGS_SERVICE_DELDEVICE_LIST stuDelidList[64]; /// ?????ID???? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_DELDEVICE; ///@brief ???????????????(??? EM_THINGS_SERVICE_TYPE_DELDEVICE) typedef struct tagNET_OUT_THINGS_SERVICE_DELDEVICE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_DELDEVICE; ///@brief ???????I???????(??? EM_THINGS_SERVICE_TYPE_DEVREPLACE) typedef struct tagNET_IN_THINGS_SERVICE_DEVREPLACE { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID char szReplacedDevID[64]; /// ????I???ID char szNewDevID[64]; /// ????ID }NET_IN_THINGS_SERVICE_DEVREPLACE; ///@brief ???????I???????(??? EM_THINGS_SERVICE_TYPE_DEVREPLACE) typedef struct tagNET_OUT_THINGS_SERVICE_DEVREPLACE { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_DEVREPLACE; ///@brief ?????????????????(??? EM_THINGS_SERVICE_TYPE_OFFLINELOGCLEAN) typedef struct tagNET_IN_THINGS_SERVICE_OFFLINELOGCLEAN { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_OFFLINELOGCLEAN; ///@brief ?????????????????(??? EM_THINGS_SERVICE_TYPE_OFFLINELOGCLEAN) typedef struct tagNET_OUT_THINGS_SERVICE_OFFLINELOGCLEAN { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID }NET_OUT_THINGS_SERVICE_OFFLINELOGCLEAN; ///@brief ??????????????????????????(??? EM_THINGS_SERVICE_TYPE_CURRENTSTATUSGET) typedef struct tagNET_IN_THINGS_SERVICE_CURRENTSTATUSGET { DWORD dwSize; /// ???????, ?????????????????? char szProductID[64]; /// ???ID???????? char szDeviceID[64]; /// ???ID }NET_IN_THINGS_SERVICE_CURRENTSTATUSGET; ///@brief ?????? typedef enum tagEM_THINGS_CURRENTSTATUSGET_STATUS { EM_THINGS_CURRENTSTATUSGET_STATUS_UNKNOWN = -1, /// ??? EM_THINGS_CURRENTSTATUSGET_STATUS_NORMAL, /// ???? EM_THINGS_CURRENTSTATUSGET_STATUS_EARLY, /// ??? EM_THINGS_CURRENTSTATUSGET_STATUS_ALARM, /// ???? }EM_THINGS_CURRENTSTATUSGET_STATUS; ///@brief ????????? typedef struct tagNET_THINGS_SERVICE_CURRENTSTATUSGET_STATUS { char szDeviceID[64]; /// ???ID EM_THINGS_CURRENTSTATUSGET_STATUS emStatus; /// ?????? char szReserve[512]; /// ??????? }NET_THINGS_SERVICE_CURRENTSTATUSGET_STATUS; ///@brief ??????????????????????????(??? EM_THINGS_SERVICE_TYPE_CURRENTSTATUSGET) typedef struct tagNET_OUT_THINGS_SERVICE_CURRENTSTATUSGET { DWORD dwSize; /// ???????, ?????????????????? int nErrcode; /// ???????????????? char szProductID[64]; /// ???ID char szDeviceID[64]; /// ???ID int nRetStatusNum; /// ??????stuStatus???? NET_THINGS_SERVICE_CURRENTSTATUSGET_STATUS stuStatus[64]; /// ????????? }NET_OUT_THINGS_SERVICE_CURRENTSTATUSGET; ///@brief ???????????? typedef enum tagEM_THINGS_SERVICE_TYPE { EM_THINGS_SERVICE_TYPE_VALVECONTROL, /// ???????,???:NET_IN_THINGS_SERVICE_VALVECONTROL,????:NET_OUT_THINGS_SERVICE_VALVECONTROL EM_THINGS_SERVICE_TYPE_CHARGECLEAR, /// ????????,???:NET_IN_THINGS_SERVICE_CHARGECLEAR,????:NET_OUT_THINGS_SERVICE_CHARGECLEAR EM_THINGS_SERVICE_TYPE_LEAKCURTPOST, /// ??????,???:NET_IN_THINGS_SERVICE_LEAKCURTPOST,????:NET_OUT_THINGS_SERVICE_LEAKCURTPOST EM_THINGS_SERVICE_TYPE_LEAKCURTPOSTASYNC, /// ????????,???:NET_IN_THINGS_SERVICE_LEAKCURTPOSTASYNC,????:NET_OUT_THINGS_SERVICE_LEAKCURTPOSTASYNC EM_THINGS_SERVICE_TYPE_AIRSWITHFIND, /// ????????????(?????),???:NET_IN_THINGS_SERVICE_AIRSWITHFIND,????:NET_OUT_THINGS_SERVICE_AIRSWITHFIND EM_THINGS_SERVICE_TYPE_AIRSWITHRESET, /// ??????????????,???:NET_IN_THINGS_SERVICE_AIRSWITHRESET,????:NET_OUT_THINGS_SERVICE_AIRSWITHRESET EM_THINGS_SERVICE_TYPE_ADDRULE, /// ????????????,???:NET_IN_THINGS_SERVICE_ADDRULE,????:NET_OUT_THINGS_SERVICE_ADDRULE EM_THINGS_SERVICE_TYPE_DELRULE, /// ???????????,???:NET_IN_THINGS_SERVICE_DELRULE,????:NET_OUT_THINGS_SERVICE_DELRULE EM_THINGS_SERVICE_TYPE_MODRULE, /// ???????????,???:NET_IN_THINGS_SERVICE_MODRULE,????:NET_OUT_THINGS_SERVICE_MODRULE EM_THINGS_SERVICE_TYPE_QUERULE, /// ???????????,???:NET_IN_THINGS_SERVICE_QUERULE,????:NET_OUT_THINGS_SERVICE_QUERULE EM_THINGS_SERVICE_TYPE_ENABLERULE, /// ???????????,???:NET_IN_THINGS_SERVICE_ENABLE,????:NET_OUT_THINGS_SERVICE_ENABLE EM_THINGS_SERVICE_TYPE_ADDDEVICE, /// ???????,???:NET_IN_THINGS_SERVICE_ADDDEVICE,????:NET_OUT_THINGS_SERVICE_ADDDEVICE EM_THINGS_SERVICE_TYPE_DELDEVICE, /// ????????,???:NET_IN_THINGS_SERVICE_DELDEVICE,????:NET_OUT_THINGS_SERVICE_DELDEVICE EM_THINGS_SERVICE_TYPE_DEVREPLACE, /// ???????I,???:NET_IN_THINGS_SERVICE_DEVREPLACE,????:NET_OUT_THINGS_SERVICE_DEVREPLACE EM_THINGS_SERVICE_TYPE_OFFLINELOGCLEAN, /// ??????????,???:NET_IN_THINGS_SERVICE_OFFLINELOGCLEAN,????:NET_OUT_THINGS_SERVICE_OFFLINELOGCLEAN EM_THINGS_SERVICE_TYPE_CURRENTSTATUSGET, /// ???????????????????,???:NET_IN_THINGS_SERVICE_CURRENTSTATUSGET,????:NET_OUT_THINGS_SERVICE_CURRENTSTATUSGET }EM_THINGS_SERVICE_TYPE; ///@brief ??????????????? typedef struct tagNET_THINGS_START_HISTORYDATA_TOPICS { char szTopics[32]; /// ????????????????????????????????????????,????????????"" char szReserve[256]; /// ??????? }NET_THINGS_START_HISTORYDATA_TOPICS; ///@brief CLIENT_StartThingsHistoryData ??????? typedef struct tagNET_IN_THINGS_START_HISTORYDATA { DWORD dwSize; /// ???????, ?????????????????? int nTopicsCount; /// ?????????????? NET_THINGS_START_HISTORYDATA_TOPICS stuTopics[64]; /// ??????????????? }NET_IN_THINGS_START_HISTORYDATA; ///@brief CLIENT_StartThingsHistoryData ??????? typedef struct tagNET_OUT_THINGS_START_HISTORYDATA { DWORD dwSize; /// ???????, ?????????????????? DWORD dwCount; /// ???????????????? }NET_OUT_THINGS_START_HISTORYDATA; ///@brief CLIENT_DoFindThingsHistoryData ??????? typedef struct tagNET_IN_THINGS_DOFIND_HISTORYDATA { DWORD dwSize; /// ???????, ?????????????????? UINT uOffset; /// ????? UINT uCount; /// ?????????? }NET_IN_THINGS_DOFIND_HISTORYDATA; ///@brief ?????????????????? typedef struct tagNET_THINGS_HISTORYDATA_PROPER_INFO { char szKey[64]; /// DQZT??FHZYY??Action?? char szValue[256]; /// 1,true,"normal"?? EM_PROPERTIES_VALUE_TYPE emValueType; /// szValue????????????int,bool,string???? int nIntArrayValueNum; /// stuIntArrayValue?????? NET_PROPERTIES_INTARRAY_VALUE stuIntArrayValue[64]; /// int+Array?????emValueType?EM_PROPERTIES_VALUE_INTARRAY char szReserved[256]; /// ?????? }NET_THINGS_HISTORYDATA_PROPER_INFO; ///@brief ??????????? typedef struct tagNET_THINGS_HISTORYDATA { char szEventID[32]; /// ?????, "CZSJ_ZMZTGB"?? char szDeviceID[32]; /// ???ID char szDevSN[64]; /// ???????ID NET_TIME_EX stuEventTime; /// ??????? char szProductID[32]; /// ???ID int nOrder; /// ??? UINT nRetProInfoNum; /// ???????pstuProInfo???? UINT nMaxProInfoNum; /// ????????pstuProInfo???? NET_THINGS_HISTORYDATA_PROPER_INFO* pstuProInfo;/// ??????????????????,??????????,????? nMaxProInfoNum * sizeof(NET_THINGS_HISTORYDATA_PROPER_INFO) ///?????????????;????????;???????? ///1. ?????;DQZT;bool ///2. ???????;FHZYY;int ///3. ???????;Happen; int ///4. ????;DYZ;int ///5. ????????;Action; int ///6. A?????;DYZA;int ///7. B?????;DYZB;int ///8. C?????;DYZC;int ///9. ?????;JCJG;bool ///10. ??????;SBYY;string ///11. ???ID;SBID;string ///12. ???????;BGLX;int ///13. ????ID;RWID;string ///14. ??????;ZXSJ;string ///15. ??????;SBYY;string ///16. ???????; CJXX_ZMZT; bool ///17. ??????;ZXJG;bool char szReserve[512]; /// ??????? }NET_THINGS_HISTORYDATA; ///@brief CLIENT_DoFindThingsHistoryData ??????? typedef struct tagNET_OUT_THINGS_DOFIND_HISTORYDATA { DWORD dwSize; /// ???????, ?????????????????? int nCount; /// ??????????? int nMaxHisDataNum; /// ????????pstuHistoryData???? NET_THINGS_HISTORYDATA* pstuHistoryData; /// ???????????,??????????,????? nMaxHisDataNum * sizeof(NET_THINGS_HISTORYDATA) }NET_OUT_THINGS_DOFIND_HISTORYDATA; ///@brief ??????Things????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetThingsConfig(LLONG lLoginID, const NET_IN_THINGS_GET* pInParam, NET_OUT_THINGS_GET* pOutParam, int nWaitTime); ///@brief ??????Things?????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetThingsConfig(LLONG lLoginID, const NET_IN_THINGS_SET* pInParam, NET_OUT_THINGS_SET* pOutParam, int nWaitTime); ///@brief ??????Things?????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachThingsInfo(LLONG lLoginID, const NET_IN_THINGS_ATTACH* pInParam, NET_OUT_THINGS_ATTACH* pOutParam, int nWaitTime); ///@brief ??????Things????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachThingsInfo(LLONG lAttachHandle); ///@brief ??????Things??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetThingsCaps(LLONG lLoginID, const NET_IN_THINGS_GET_CAPS* pInParam, NET_OUT_THINGS_GET_CAPS* pOutParam, int nWaitTime); ///@brief ??????Things????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetThingsDevList(LLONG lLoginID, const NET_IN_THINGS_GET_DEVLIST* pInParam, NET_OUT_THINGS_GET_DEVLIST* pOutParam, int nWaitTime); ///@brief ??????Things?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetThingsNetState(LLONG lLoginID, const NET_IN_THINGS_GET_NETSTATE* pInParam, NET_OUT_THINGS_GET_NETSTATE* pOutParam, int nWaitTime); ///@brief ??????Things????????????? ///@param[in] lLoginID ?????? ///@param[in] emType ???????????? ///@param[in] pInBuf ????????????????emType???????????????????????? ///@param[out] pOutBuf ??????????, ????emType???????????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ThingsServiceOperate(LLONG lLoginID, EM_THINGS_SERVICE_TYPE emType, void* pInBuf, void* pOutBuf, int nWaitTime); ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartThingsHistoryData(LLONG lLoginID, const NET_IN_THINGS_START_HISTORYDATA* pstInParam, NET_OUT_THINGS_START_HISTORYDATA* pstOutParam, int nWaitTime); ///@brief ?????????????????? ///@param[in] lFindHandle ?????? ///@param[in] pstInParam ??????????, ??????????????????? ///@param[out] pstOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindThingsHistoryData(LLONG lFindHandle, const NET_IN_THINGS_DOFIND_HISTORYDATA* pstInParam, NET_OUT_THINGS_DOFIND_HISTORYDATA *pstOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lFindHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopThingsHistoryData(LLONG lFindHandle); /***************************??????Things??? END***************************/ ///@brief CLIENT_VerifyUpgradeVerify ?????? typedef struct tagNET_IN_VERIFY_UPGRADE_VERIFY { DWORD dwSize; /// ??????? char szData[256]; /// ???????? } NET_IN_VERIFY_UPGRADE_VERIFY; ///@brief CLIENT_VerifyUpgradeVerify ?????? typedef struct tagNET_OUT_VERIFY_UPGRADE_VERIFY { DWORD dwSize; /// ??????? } NET_OUT_VERIFY_UPGRADE_VERIFY; ///@brief ???????????????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_VerifyUpgradeVerify(LLONG lLoginID, const NET_IN_VERIFY_UPGRADE_VERIFY* pInParam, NET_OUT_VERIFY_UPGRADE_VERIFY* pOutParam, int nWaitTime); ///@brief CLIENT_GetUpgradeVerifyCurrentData ?????? typedef struct tagNET_IN_GET_UPGRADE_VERIFY_CURRENT_DATA { DWORD dwSize; /// ??????? } NET_IN_GET_UPGRADE_VERIFY_CURRENT_DATA; ///@brief ?????? typedef struct tagNET_VERIFY_INFO { char szData[64]; /// ????? char szPublicKeyVersion[16]; /// ?????????? char szReserved[1024]; /// ??????? } NET_VERIFY_INFO; ///@brief CLIENT_GetUpgradeVerifyCurrentData ?????? typedef struct tagNET_OUT_GET_UPGRADE_VERIFY_CURRENT_DATA { DWORD dwSize; /// ??????? NET_VERIFY_INFO stuVerifyInfo; /// ?????? } NET_OUT_GET_UPGRADE_VERIFY_CURRENT_DATA; ///@brief ?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetUpgradeVerifyCurrentData(LLONG lLoginID, const NET_IN_GET_UPGRADE_VERIFY_CURRENT_DATA* pInParam, NET_OUT_GET_UPGRADE_VERIFY_CURRENT_DATA* pOutParam, int nWaitTime); ///@brief CLIENT_GetRegisterStatus ?????? typedef struct tagNET_IN_GET_REGISTER_STATUS { DWORD dwSize; /// ??????? } NET_IN_GET_REGISTER_STATUS; ///@brief CLIENT_GetRegisterStatus ?????? typedef struct tagNET_OUT_GET_REGISTER_STATUS { DWORD dwSize; /// ??????? BOOL bIsRegistered; /// ??????, true:?????, false:???????????? } NET_OUT_GET_REGISTER_STATUS; ///@brief ????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRegisterStatus(LLONG lLoginID, const NET_IN_GET_REGISTER_STATUS* pstuInParam, NET_OUT_GET_REGISTER_STATUS* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetParticipatingConference ?????? typedef struct tagNET_IN_GET_PARTICIPATING_CONFERENCE { DWORD dwSize; /// ??????? } NET_IN_GET_PARTICIPATING_CONFERENCE; ///@brief ??????? typedef struct tagNET_CONFERENCE_INFO { BOOL bIsCloseMicDefault; /// ???????????????, true??????????, false?????????? char szID[16]; /// ????ID(???) char szName[128]; /// ???????? char szPassword[32]; /// ???????? NET_TIME stuStartTime; /// ???????? NET_TIME stuEndTime; /// ?????????? char szCreatorID[16]; /// ????????????ID char szCreatorName[128]; /// ???????????????? char szChairmanID[16]; /// ??????????ID BOOL bIsAutoLayout; /// ????????????????????????LayoutInfo??????????? UINT nBandwidth; /// ?????????????kb char szResvered[512]; /// ??????? }NET_CONFERENCE_INFO; ///@brief CLIENT_GetParticipatingConference ?????? typedef struct tagNET_OUT_GET_PARTICIPATING_CONFERENCE { DWORD dwSize; /// ??????? NET_CONFERENCE_INFO stuConferenceInfo; /// ??????? } NET_OUT_GET_PARTICIPATING_CONFERENCE; ///@brief ?????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetParticipatingConference(LLONG lLoginID, const NET_IN_GET_PARTICIPATING_CONFERENCE* pstuInParam, NET_OUT_GET_PARTICIPATING_CONFERENCE* pstuOutParam, int nWaitTime); /***************************???????????Start***************************/ ///@brief ???????????? typedef enum tagEM_SUBLINK_TYPE { EM_SUBLINK_TYPE_PASSIVE, /// ?????? EM_SUBLINK_TYPE_PORT, /// ???????? } EM_SUBLINK_TYPE; ///@brief ??????????????? typedef enum tagEM_SUBLINK_MODE { EM_SUBLINK_MODE_NORMAL = 0, ///??????????? EM_SUBLINK_MODE_LOWPOWER = 1, ///??????? }EM_SUBLINK_MODE; ///@brief ?????????????? typedef struct tagNET_LOCAL_SERVER_NET_INFO { char szLocalIp[64]; /// ???????IP UINT nLocalPort; /// ????????? char szReserved[516]; /// ??????? } NET_LOCAL_SERVER_NET_INFO; ///@brief CLIENT_TransferSubLinkInfo ?????????? typedef struct tagNET_IN_TRANSFER_SUBLINK_INFO { DWORD dwSize; /// ??????? EM_SUBLINK_TYPE emLinkType; /// ?????? char szBSID[64]; /// ??ID NET_LOCAL_SERVER_NET_INFO stuLoaclServerInfo; /// ??????????, emLinkType?EM_SUBCONNECT_TYPE_PORT(???????)???????? EM_SUBLINK_MODE emLinkMode; /// ?????? } NET_IN_TRANSFER_SUBLINK_INFO; ///@brief ???????????????????????????????? typedef enum tagEM_TRANSFER_SUBCONNECT_ERROR { EM_TRANSFER_SUBCONNECT_UNKNWON, /// ??????? EM_TRANSFER_SUBCONNECT_EXCEED, /// ??????????? } EM_TRANSFER_SUBCONNECT_ERROR; ///@brief CLIENT_TransferSubLinkInfo ?????????? typedef struct tagNET_OUT_TRANSFER_SUBLINK_INFO { DWORD dwSize; /// ??????? } NET_OUT_TRANSFER_SUBLINK_INFO; ///@brief ?????????? typedef struct tagNET_DEV_NETWORK_INFO { char szDevIP[64]; /// ???IP UINT nDevPort; /// ??????? char szReserved[516]; /// ??????? } NET_DEV_NETWORK_INFO; ///@brief CLIENT_CreateSubBusinessModule ?????????? typedef struct tagNET_IN_CREAT_SUB_BUSINESS_MDL_INFO { DWORD dwSize; /// ??????? EM_SUBLINK_TYPE emLinkType; /// ?????? char szBSID[64]; /// bsid NET_DEV_NETWORK_INFO stuDevNetInfo; /// ??????????, emLinkType ? EM_SUBLINK_TYPE_PASSIVE(???)???????? EM_SUBLINK_MODE emLinkMode; /// ?????? } NET_IN_CREAT_SUB_BUSINESS_MDL_INFO; ///@brief CLIENT_CreateSubBusinessModule ?????????? typedef struct tagNET_OUT_CREAT_SUB_BUSINESS_MDL_INFO { DWORD dwSize; /// ??????? } NET_OUT_CREAT_SUB_BUSINESS_MDL_INFO; ///@brief ???????????? typedef struct tagNET_DOWNLOAD_MEDIA_FILE_CALLBACK_INFO { INT64 nTotalSize; /// ???????? INT64 nDownLoadSize; /// ?????????????, -1 ?????????? UINT nErrCode; /// ??????? /// 0:????? /// 1: ?????,2:????????????,3:???????, 4:???????????????????? /// 11: ????????????????????? /// 12: ??????? /// 13: ????????????? /// 14: ??????????,???????,????????? /// 15: ????????????,??????? /// 16: ??????????????????????????? /// 21: ??????????????, /// 22: ???????????????????????? /// 23: ??????????????????????? /// 24: ???????????????????? /// 25: ???????????????????????????? /// 26: ???????????????????????????????? /// 27: ????????????? /// 28: ????????? /// 100: ??????? UINT nBufferSize; /// ??????? char *pDataBuffer; /// ??????? LDWORD dwUserData; /// ??????? char szReserved[1024]; /// ??????? } NET_DOWNLOAD_MEDIA_FILE_CALLBACK_INFO; ///@brief ??????????????? typedef struct tagNET_SUBBIZ_DISCONNECT_CALLBACK { NET_DEV_NETWORK_INFO stuDevNetInfo; /// ?????????? LDWORD dwUserData; /// ??????? char szReserved[1024]; /// ??????? } NET_SUBBIZ_DISCONNECT_CALLBACK; ///@brief ??????????????? ///@param[out] lSubBizHandle ??????sdk???, ??CLIENT_CreateSubBusinessModule?????? ///@param[out] lOperateHandle ????? ///@param[out] pstDisConnectInfo ?????????? ///@return void typedef void (CALLBACK *fSubBizDisConnectCallBack)(LLONG lSubBizHandle, LLONG lOperateHandle, NET_SUBBIZ_DISCONNECT_CALLBACK* pstDisConnectInfo); ///@brief ???????????????? ///@param[out] lDownHandle ??????, ??CLIENT_StartDownloadMediaFile?????? ///@param[out] pstDwonloadCallBackInfo ????????????? ///@return void typedef int (CALLBACK *fDownLoadMediaFileCallBack)(LLONG lDownHandle, NET_DOWNLOAD_MEDIA_FILE_CALLBACK_INFO* pstDwonloadCallBackInfo); ///@brief CLIENT_StartSubBizDownloadMediaFile ?????????? typedef struct tagNET_IN_START_DOWNLOAD_MEDIA_FILE { DWORD dwSize; /// ??????? char szReserved[4]; /// ??????? fDownLoadMediaFileCallBack cbDownLoadCallBack; /// ????????????? fSubBizDisConnectCallBack cbDisConnectCallBack; /// ????????? LDWORD dwUserData; /// ??????? } NET_IN_START_DOWNLOAD_MEDIA_FILE; ///@brief CLIENT_StartSubBizDownloadMediaFile ?????????? typedef struct tagNET_OUT_START_DOWNLOAD_MEDIA_FILE { DWORD dwSize; /// ??????? } NET_OUT_START_DOWNLOAD_MEDIA_FILE; ///@brief ??????? typedef enum tagEM_RECORDFILE_TYPE { EM_RECORDFILE_TYPE_NORMAL, /// ?????? EM_RECORDFILE_TYPE_ALARM, /// ??????? EM_RECORDFILE_TYPE_MOVE_DETECT, /// ????????? EM_RECORDFILE_TYPE_CARD, /// ??????? EM_RECORDFILE_TYPE_PIC, /// ?? EM_RECORDFILE_TYPE_AUDIO, /// ??? } EM_RECORDFILE_TYPE; ///@brief CLIENT_DoSubBizDownloadMediaFile ?????????? typedef struct tagNET_IN_DO_DOWNLOAD_MEDIA_FILE { DWORD dwSize; /// ??????? int nChannelID; /// ????????, -1 ???????, ??????????? EM_RECORDFILE_TYPE emRecordType; /// ?????????? char szFilePath[256]; /// ?????????? UINT nOffLength; /// ??????, ??????? UINT nFileLength; /// ???????, ??????? } NET_IN_DO_DOWNLOAD_MEDIA_FILE; ///@brief CLIENT_DoSubBizDownloadMediaFile ?????????? typedef struct tagNET_OUT_DO_DOWNLOAD_MEDIA_FILE { DWORD dwSize; /// ??????? } NET_OUT_DO_DOWNLOAD_MEDIA_FILE; ///@brief ???????? typedef enum tagEM_SUBLINK_STATE { EM_SUBLINK_STATE_UNKNWON, /// ??? EM_SUBLINK_STATE_CONNECT, /// ?????? EM_SUBLINK_STATE_DISCONNECT, /// ???? EM_SUBLINK_STATE_BSID_ERROR, /// BSID???????, ???????????? } EM_SUBLINK_STATE; ///@brief ?????????????????? typedef struct tagNET_SUBLINK_SERVER_CALLBACK { EM_SUBLINK_STATE emSubLinkState; /// ???????? NET_DEV_NETWORK_INFO stuDevNetInfo; /// ?????????? LDWORD dwUserData; /// ??????? } NET_SUBLINK_SERVER_CALLBACK; ///@brief callback ///@brief ?????????????????????? ///@param[out] lListenServer ???????????????, ??CLIENT_StartSubLinkListenServer?????? ///@param[out] lSubBizHandle ??????sdk???, ??CLIENT_CreateSubBusinessModule?????? ///@param[out] pstSubLinkCallBack ?????????????????? ///@return void typedef void (CALLBACK *fSubLinkServiceCallBack)(LLONG lListenServer, LLONG lSubBizHandle, NET_SUBLINK_SERVER_CALLBACK *pstSubLinkCallBack); ///@brief CLIENT_StartSubLinkListenServer ?????????? typedef struct tagNET_IN_START_SUBLINK_LISTEN_SERVER { DWORD dwSize; /// ??????? NET_LOCAL_SERVER_NET_INFO stuLoaclServerInfo; /// ?????????? fSubLinkServiceCallBack cbSubLinkServiceCallBack; /// ??????????????????? LDWORD dwUserData; /// ??????? } NET_IN_START_SUBLINK_LISTEN_SERVER; ///@brief CLIENT_StartSubLinkListenServer ?????????? typedef struct tagNET_OUT_START_SUBLINK_LISTEN_SERVER { DWORD dwSize; /// ??????? } NET_OUT_START_SUBLINK_LISTEN_SERVER; ///@brief CLIENT_GetSubBusinessCaps ?????????? typedef struct tagNET_IN_GET_SUBBIZ_CAPS { DWORD dwSize; /// ??????? } NET_IN_GET_SUBBIZ_CAPS; ///@brief CLIENT_GetSubBusinessCaps ?????????? typedef struct tagNET_OUT_GET_SUBBIZ_CAPS { DWORD dwSize; /// ??????? int nBusinessDivision; /// ??(???)???????????, 0??????????, bit0:???? bit1:????? bit2:????, bit3:?????????, bit4:?????????? }NET_OUT_GET_SUBBIZ_CAPS; ///@brief CLIENT_SetTransmitTunnelParam ?????????? typedef struct tagNET_IN_SET_TRANSMITTUNNEL_PARAM { DWORD dwSize; /// ??????? char szReserved[4]; /// ?????? char szLoaclIP[64]; /// ???????IP UINT nPort[2]; /// ??????????????????????? } NET_IN_SET_TRANSMITTUNNEL_PARAM; ///@brief CLIENT_SetTransmitTunnelParam ?????????? typedef struct tagNET_OUT_SET_TRANSMITTUNNEL_PARAM { DWORD dwSize; /// ??????? }NET_OUT_SET_TRANSMITTUNNEL_PARAM; ///@brief ?????????????? typedef enum tagEM_TRANSMIT_DISCONNECT_REASON { EM_TRANSMIT_DISCONNECT_REASON_UNKNOWN, /// ??? EM_TRANSMIT_DISCONNECT_REASON_TIMEOUT, /// ???????2??????? EM_TRANSMIT_DISCONNECT_REASON_SERVICE_CHANGE, /// ??????????????? } EM_TRANSMIT_DISCONNECT_REASON; ///@brief ???????????????? typedef struct tagNET_TRANSMIT_DISCONNECT_CALLBACK { NET_DEV_NETWORK_INFO stuDevNetInfo; /// ?????????? LDWORD dwUserData; /// ??????? EM_TRANSMIT_DISCONNECT_REASON emDisReason; /// ??????? char szReserved[1020]; /// ??????? } NET_TRANSMIT_DISCONNECT_CALLBACK; ///@brief ???????????????? ///@param[out] lSubBizHandle ????????, ??CLIENT_CreateSubBusinessModule?????? ///@param[out] lOperateHandle ????? ///@param[out] pstDisConnectInfo ?????????? ///@return void typedef void (CALLBACK *fTransmitDisConnectCallBack)(LLONG lSubBizHandle, LLONG lOperateHandle, NET_TRANSMIT_DISCONNECT_CALLBACK* pstDisConnectInfo); ///@brief ??????????????? typedef enum tagEM_TRANSMIT_PROXY_TYPE { EM_TRANSMIT_PROXY_TYPE_WEB=1, /// Web??????????????????web????????????????? EM_TRANSMIT_PROXY_TYPE_GENERAL, /// ??????????????????????????? } EM_TRANSMIT_PROXY_TYPE; ///@brief ????????????? typedef enum tagEM_TRANSMIT_PROXY_MODE { EM_TRANSMIT_PROXY_MODE_LOCAL=1, /// ??????? EM_TRANSMIT_PROXY_MODE_CASCADE, /// ???????? } EM_TRANSMIT_PROXY_MODE; ///@brief CLIENT_CreateTransmitTunnel ?????????? typedef struct tagNET_IN_CREATE_TRANSMIT_TUNNEL { DWORD dwSize; /// ??????? EM_TRANSMIT_PROXY_TYPE emProxyType; /// ???????? EM_TRANSMIT_PROXY_MODE emProxyMode; /// ?????? int nPort; /// ??emProxyType?EM_TRANSMIT_PROXY_TYPE_GENERAL ?????? /// ?????????????????????????????????????????????80 int nChannel; /// emProxyMode?EM_TRANSMIT_PROXY_MODE_CASCADE?????????Port??????????????????? char szReserved[4]; /// ?????? fTransmitDisConnectCallBack cbDisConnectCallBack; /// ???????2????????? fSubBizDisConnectCallBack cbDisConnectCallBackEx; /// ?????????? LDWORD dwUserData; /// ??????? } NET_IN_CREATE_TRANSMIT_TUNNEL; ///@brief CLIENT_RefuseLowPowerDevSleep ?????????? typedef struct tagNET_IN_REFUSE_SLEEP_INFO { DWORD dwSize; /// ??????? }NET_IN_REFUSE_SLEEP_INFO; ///@brief CLIENT_RefuseLowPowerDevSleep ?????????? typedef struct tagNET_OUT_REFUSE_SLEEP_INFO { DWORD dwSize; /// ??????? }NET_OUT_REFUSE_SLEEP_INFO; ///@brief ????????????????????? typedef struct tagNET_LOW_POWER_KEEPALIVE_CALLBACK_INFO { BOOL bKeepAlive; /// ?????????????? LDWORD dwUserData; /// ??????? char szReserved[1024]; /// ??????? }NET_LOW_POWER_KEEPALIVE_CALLBACK_INFO; ///@brief ?????????????????????????? ///@param[out] lLowPowerHandle ???????????, ?? CLIENT_CreateLowPowerChannel ?????? ///@param[out] pstLowPowerKeepAliveCallBackInfo ????????????????????? ///@return void typedef void (CALLBACK *fLowPowerKeepAliveCallBack)(LLONG lLowPowerHandle, NET_LOW_POWER_KEEPALIVE_CALLBACK_INFO* pstLowPowerKeepAliveCallBackInfo); ///@brief CLIENT_CreateLowPowerChannel ?????????? typedef struct tagNET_IN_CREATE_LOW_POWER_CHANNEL { DWORD dwSize; /// ??????? fSubBizDisConnectCallBack cbDisConnectCallBack; /// ????????? LDWORD dwUserData; /// ??????? fLowPowerKeepAliveCallBack cbLowPowerKeepAliveCallBack; /// ????????????????? }NET_IN_CREATE_LOW_POWER_CHANNEL; ///@brief CLIENT_CreateLowPowerChannel ?????????? typedef struct tagNET_OUT_CREATE_LOW_POWER_CHANNEL { DWORD dwSize; /// ??????? }NET_OUT_CREATE_LOW_POWER_CHANNEL; ///@brief CLIENT_DoWakeUpLowPowerDevcie ?????????? typedef struct tagNET_IN_WAKE_UP_INFO { DWORD dwSize; /// ??????? }NET_IN_WAKE_UP_INFO; ///@brief CLIENT_DoWakeUpLowPowerDevcie ?????????? typedef struct tagNET_OUT_WAKE_UP_INFO { DWORD dwSize; /// ??????? }NET_OUT_WAKE_UP_INFO; ///@brief ???web???????????? typedef enum tagEM_WEB_TUNNEL_PROTOCOL { EM_WEB_TUNNEL_PROTOCOL_UNKNOWN, /// ??? EM_WEB_TUNNEL_PROTOCOL_HTTP, /// HTTP EM_WEB_TUNNEL_PROTOCOL_HTTPS, /// THTPS } EM_WEB_TUNNEL_PROTOCOL; ///@brief CLIENT_CreateTransmitTunnel ?????????? typedef struct tagNET_OUT_CREATE_TRANSMIT_TUNNEL { DWORD dwSize; /// ??????? int nPort; /// ??????????? EM_WEB_TUNNEL_PROTOCOL emWebProtocol; /// ???web???????????? char szUserName[128]; /// ????? char szTempToken[128]; /// ???? }NET_OUT_CREATE_TRANSMIT_TUNNEL; ///@brief ????????????????, ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ????????(????????, ????????????????) ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSubBusinessCaps(LLONG lLoginID, const NET_IN_GET_SUBBIZ_CAPS *pInParam, NET_OUT_GET_SUBBIZ_CAPS *pOutParam, int nWaitTime); ///@brief ??????????????????????????, ????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TransferSubLinkInfo(LLONG lLoginID, const NET_IN_TRANSFER_SUBLINK_INFO *pInParam, NET_OUT_TRANSFER_SUBLINK_INFO *pOutParam, int nWaitTime); ///@brief ???????sdk??? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ???sdk???????0?????? 0?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CreateSubBusinessModule(const NET_IN_CREAT_SUB_BUSINESS_MDL_INFO *pInParam, NET_OUT_CREAT_SUB_BUSINESS_MDL_INFO *pOutParam); ///@brief ???????sdk??? ///@param[in] lSubBizHandle ???sdk???????CLIENT_CreateSubBusinessModule?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DestroySubBusinessModule(LLONG lSubBizHandle); ///@brief ????????????????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return ???????????????, ??0?????? 0?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartSubLinkListenServer(const NET_IN_START_SUBLINK_LISTEN_SERVER *pInParam, NET_OUT_START_SUBLINK_LISTEN_SERVER *pOutParam); ///@brief ??????????????? ///@param[in] lListenServer ??????????????CLIENT_StartSubLinkListenServer?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSubLinkListenServer(LLONG lListenServer); ///@brief ????????????? ///@param[in] lSubBizHandle ???sdk???????CLIENT_CreateSubBusinessModule?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@retval LLONG ///@return ????????????????0?????? 0?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartSubBizDownloadMediaFile(LLONG lSubBizHandle, NET_IN_START_DOWNLOAD_MEDIA_FILE *pInParam, NET_OUT_START_DOWNLOAD_MEDIA_FILE *pOutParam); ///@brief ????????????? ///@param[in] lDownHandle ????????????????CLIENT_StartDownloadRecordFile?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoSubBizDownloadMediaFile(LLONG lDownHandle, NET_IN_DO_DOWNLOAD_MEDIA_FILE *pInParam, NET_OUT_DO_DOWNLOAD_MEDIA_FILE *pOutParam); ///@brief ???????????? ///@param[in] lDownHandle ????????????????CLIENT_StartSubBizDownloadMediaFile?????? ///@return TRUE ?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopSubBizDownloadMediaFile(LLONG lDownHandle); ///@brief ?????????????? ///@param[in] lDownHandle ?????????????CLIENT_StartSubBizDownloadMediaFile?????? ///@param[in] bPause ????????TRUE??????????, FALSE?????????? ///@return TRUE ?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PauseSubBizDownloadMediaFile(LLONG lDownHandle, BOOL bPause); /***************************??????????start******************/ ///@brief ????????????????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetTransmitTunnelParam( const NET_IN_SET_TRANSMITTUNNEL_PARAM *pInParam, NET_OUT_SET_TRANSMITTUNNEL_PARAM *pOutParam); ///@brief ???????? ///@param[in] lSubBizHandle ???sdk???????CLIENT_CreateSubBusinessModule?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@return LLONG ????????????????0?????? 0?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CreateTransmitTunnel(LLONG lSubBizHandle, const NET_IN_CREATE_TRANSMIT_TUNNEL *pInParam, NET_OUT_CREATE_TRANSMIT_TUNNEL *pOutParam); ///@brief ???????? ///@param[in] lTransmitHandle ????????????????CLIENT_CreateTransmitTunnel?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DestroyTransmitTunnel(LLONG lTransmitHandle); /***************************??????????End*****************/ /***************************4G???????? start********************/ ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ?????????? ///@param[out] pOutParam ?????????? ///@param[in] nWaitTime ????????, ????????(????????, ????????????????) ///@return TRUE?????? ??FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RefuseLowPowerDevSleep(LLONG lLoginID, const NET_IN_REFUSE_SLEEP_INFO *pInParam, NET_OUT_REFUSE_SLEEP_INFO *pOutParam, int nWaitTime); ///@brief ???????????? ///@param[in] lSubBizHandle ???sdk???????CLIENT_CreateSubBusinessModule?????? ///@param[in] pInParam ?????????? ///@param[out] pOutParam ?????????? ///@return LLONG ???????????????0?????? 0?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_CreateLowPowerChannel(LLONG lSubBizHandle, NET_IN_CREATE_LOW_POWER_CHANNEL *pInParam, NET_OUT_CREATE_LOW_POWER_CHANNEL *pOutParam); ///@brief ??????? ///@param[in] lChannelHandle ??????????????CLIENT_CreateLowPowerChannel?????? ///@param[in] pInParam ?????????? ///@param[out] pOutParam ???????? ///@return TRUE?????? ??FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoWakeUpLowPowerDevcie(LLONG lChannelHandle, NET_IN_WAKE_UP_INFO *pInParam, NET_OUT_WAKE_UP_INFO *pOutParam); ///@brief ??????????? ///@param[in] lChannelHandle ??????????????CLIENT_CreateLowPowerChannel?????? ///@return TRUE?????? ??FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DestoryLowPowerChannel(LLONG lChannelHandle); /***************************4G???????? end********************/ /***************************???????????End***************************/ /***************************???????????Start***************************/ ///@brief CLIENT_InstallManagerGetCustomEventCaps??? typedef struct tagNET_IN_INSTALLMANAGER_GETCUSTOMEVENT_CAPS { DWORD dwSize; /// ??????? }NET_IN_INSTALLMANAGER_GETCUSTOMEVENT_CAPS; ///@brief ????????????????????? typedef struct tagNET_CUSTOMEVENTCAPS_INFO { char szAppName[128]; /// ???????? char szClass[128][32]; /// ??????????????????? int nClassNum; /// ???????????????????? BYTE bReserved[2048]; /// ??????? }NET_CUSTOMEVENTCAPS_INFO; ///@brief CLIENT_InstallManagerGetCustomEventCaps???? typedef struct tagNET_OUT_INSTALLMANAGER_GETCUSTOMEVENT_CAPS { DWORD dwSize; /// ??????? int nListCapNum; /// ?????????????????????? NET_CUSTOMEVENTCAPS_INFO stuListCap[16]; /// ?????????????????????? }NET_OUT_INSTALLMANAGER_GETCUSTOMEVENT_CAPS; ///@brief ?????????????????????, pInParam??pOutParam??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_InstallManagerGetCustomEventCaps(LLONG lLoginID, const NET_IN_INSTALLMANAGER_GETCUSTOMEVENT_CAPS* pInParam, NET_OUT_INSTALLMANAGER_GETCUSTOMEVENT_CAPS* pOutParam, int nWaitTime); /***************************???????????End***************************/ ///@brief CLIENT_CalcScrapsteelPunish ?????????? typedef struct tagNET_IN_CALC_SCRAPSTEEL_PUNISH { DWORD dwSize; /// ??????? int nLayerDetectInfoNum; /// ????????????????????, ?????512 NET_SCRAPSTEEL_LAYER_DETECT_INFO* pstuLayerDetectInfo; /// ???????????????, ???????????,??????? sizeof(NET_SCRAPSTEEL_LAYER_DETECT_INFO) * nLayerDetectInfoNum int nNetWeight; /// ????????(kg), ???????????????????? char szPlateNum[32]; /// ??????? int nGrossWeight; /// ???????(kg), ???????????????????? }NET_IN_CALC_SCRAPSTEEL_PUNISH; ///@brief CLIENT_CalcScrapsteelPunish ?????????? typedef struct tagNET_OUT_CALC_SCRAPSTEEL_PUNISH { DWORD dwSize; /// ??????? float fPunishResult; /// ????????? float fPunishResultRatio; /// ????????????? float fPunishPrice; /// ????? }NET_OUT_CALC_SCRAPSTEEL_PUNISH; ///@brief ??????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CalcScrapsteelPunish(LLONG lLoginID, const NET_IN_CALC_SCRAPSTEEL_PUNISH *pstuInParam, NET_OUT_CALC_SCRAPSTEEL_PUNISH *pstuOutParam, int nWaitTime); ///@brief CLIENT_SetConsumeResult ??????? typedef struct tagNET_IN_SET_CONSUME_RESULT { DWORD dwSize; /// ??????? int nChannelID; /// ????? char szUserID[32]; /// ???ID UINT nRemainAmount; /// ????????????????????????????????????? BOOL bConsumeResult; /// ????????? int nErrorCode; /// ?????? /// 0x00:?????; /// 0x01:????? /// 0x02:????????? /// 0x03:?????? /// 0x04:????? /// 0x05: ?????????????? /// 0x06: ??????? UINT nConsumptionAmount; /// ???????????????(??) BOOL bExcessConsumption; /// ???????????? int nRemainingTimes; /// ????????????-1??????????????????0?????????0??????????????? char szTransactionSerialNumber[128]; /// ????????? }NET_IN_SET_CONSUME_RESULT; ///@brief CLIENT_SetConsumeResult ??????? typedef struct tagNET_OUT_SET_CONSUME_RESULT { DWORD dwSize; /// ??????? }NET_OUT_SET_CONSUME_RESULT; ///@brief ?????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetConsumeResult(LLONG lLoginID, const NET_IN_SET_CONSUME_RESULT* pInParam, NET_OUT_SET_CONSUME_RESULT* pOutParam, int nWaitTime); ///@brief CLIENT_TransferHospitalHostResult ??????? typedef struct tagNET_IN_TRANSFER_HOSPITAL_HOST_RESULT { DWORD dwSize; /// ??????? int nOperator; /// ????????, 0:???????????, 1:?????????? BOOL bResult; /// ??????? char szErrorInfo[512]; /// ?????? char szSrcHostCode[64]; /// ??????????????????????? char szDestHostCode[64]; /// ??????????????????????? }NET_IN_TRANSFER_HOSPITAL_HOST_RESULT; ///@brief CLIENT_TransferHospitalHostResult ??????? typedef struct tagNET_OUT_TRANSFER_HOSPITAL_HOST_RESULT { DWORD dwSize; /// ??????? }NET_OUT_TRANSFER_HOSPITAL_HOST_RESULT; ///@brief ??????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TransferHospitalHostResult(LLONG lLoginID, const NET_IN_TRANSFER_HOSPITAL_HOST_RESULT* pstuInParam, NET_OUT_TRANSFER_HOSPITAL_HOST_RESULT* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetAiPickUpWorkState ??????? typedef struct tagNET_IN_GET_AI_PICK_UP_WORK_STATE { DWORD dwSize; /// ??????? int nChannel; /// ???????? }NET_IN_GET_AI_PICK_UP_WORK_STATE; ///@brief CLIENT_GetAiPickUpWorkState ??????? typedef struct tagNET_OUT_GET_AI_PICK_UP_WORK_STATE { DWORD dwSize; /// ??????? int nState; /// 0 ????1 ??????2 ???? }NET_OUT_GET_AI_PICK_UP_WORK_STATE; ///@brief ?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAiPickUpWorkState(LLONG lLoginID, const NET_IN_GET_AI_PICK_UP_WORK_STATE* pstuInParam, NET_OUT_GET_AI_PICK_UP_WORK_STATE* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetAiPickUpDeviceInfo ??????? typedef struct tagNET_IN_GET_AI_PICK_UP_DEVICE_INFO { DWORD dwSize; /// ??????? int nChannel; /// ???????? }NET_IN_GET_AI_PICK_UP_DEVICE_INFO; ///@brief CLIENT_GetAiPickUpDeviceInfo ??????? typedef struct tagNET_OUT_GET_AI_PICK_UP_DEVICE_INFO { DWORD dwSize; /// ??????? UINT nCPUMainVer; /// ??CPU?????? UINT nCPUExtraVer; /// ??CPU?????? UINT nCPUAiVer; /// AI?????? char szMAC[32]; /// ???mac??? char szIP[32]; /// ???IP }NET_OUT_GET_AI_PICK_UP_DEVICE_INFO; ///@brief ?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetAiPickUpDeviceInfo(LLONG lLoginID, const NET_IN_GET_AI_PICK_UP_DEVICE_INFO* pstuInParam, NET_OUT_GET_AI_PICK_UP_DEVICE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_ACCESS_IRIS_INFO { UINT nType; /// ????????0????????1??????? int nPhotoDataLen; /// ??????????????102400 char* pszPhotoData; /// ??????????????????? char szPhotoUrl[512]; /// ?????URL,??PhotoData???? char* pszEigenValue; /// ?????????????????????? int nEigenValueLen; /// ?????????????2048 char szResvered[124]; /// ??????? }NET_ACCESS_IRIS_INFO; ///@brief ?????????????? typedef struct tagNET_ACCESS_IRIS_DATA_INFO { NET_ACCESS_IRIS_INFO stuIrisInfo[2]; /// ?????? int nIrisInfoCount; /// ?????????? char szResvered[124]; /// ??????? }NET_ACCESS_IRIS_DATA_INFO; ///@brief ?????????????? typedef struct tagNET_ACCESS_IRIS_LIST { char szUserID[32]; /// ???ID,????????????????????ID???UserID,???????????????????[0-9]???????[a-zA-Z] NET_ACCESS_IRIS_DATA_INFO stuIrisData[5]; /// ?????????????? int nIrisDataCount; /// ????????????????? char szResvered[124]; /// ??????? }NET_ACCESS_IRIS_LIST; ///@brief CLIENT_MultiInsertAccessIris ??????? typedef struct tagNET_IN_MULTI_INSERT_ACCESS_IRIS { DWORD dwSize; /// ??????? int nIrisListCount; /// ?????????????? NET_ACCESS_IRIS_LIST stuIrisList[10]; /// ????????????????? }NET_IN_MULTI_INSERT_ACCESS_IRIS; ///@brief CLIENT_MultiInsertAccessIris ??????? typedef struct tagNET_OUT_MULTI_INSERT_ACCESS_IRIS { DWORD dwSize; /// ??????? int nFailCodesCount; /// ?????? NET_EM_FAILCODE emFailCodes[10]; /// ??????????????????????????(0??????????), ????????????????????????????????????????????????? }NET_OUT_MULTI_INSERT_ACCESS_IRIS; ///@brief ?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MultiInsertAccessIris(LLONG lLoginID, const NET_IN_MULTI_INSERT_ACCESS_IRIS* pstuInParam, NET_OUT_MULTI_INSERT_ACCESS_IRIS* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveAllAccessIris ??????? typedef struct tagNET_IN_REMOVE_ALL_ACCESS_IRIS { DWORD dwSize; /// ??????? }NET_IN_MULTI_REMOVE_ALL_ACCESS_IRIS; ///@brief CLIENT_RemoveAllAccessIris ??????? typedef struct tagNET_OUT_REMOVE_ALL_ACCESS_IRIS { DWORD dwSize; /// ??????? }NET_OUT_REMOVE_ALL_ACCESS_IRIS; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveAllAccessIris(LLONG lLoginID, const NET_IN_MULTI_REMOVE_ALL_ACCESS_IRIS* pstuInParam, NET_OUT_REMOVE_ALL_ACCESS_IRIS* pstuOutParam, int nWaitTime); ///@brief CLIENT_MultiRemoveAccessIris ??????? typedef struct tagNET_IN_MULTI_REMOVE_ACCESS_IRIS { DWORD dwSize; /// ??????? int nCount; /// ???????????????? char szUserList[10][32]; /// ???????????????UserID???? }NET_IN_MULTI_REMOVE_ACCESS_IRIS; ///@brief CLIENT_MultiRemoveAccessIris ??????? typedef struct tagNET_OUT_MULTI_REMOVE_ACCESS_IRIS { DWORD dwSize; /// ??????? int nFailCodesCount; /// ?????? NET_EM_FAILCODE emFailCodes[10]; /// ??????????????????????????(0??????????), ????????????????????????????????????????????????? }NET_OUT_MULTI_REMOVE_ACCESS_IRIS; ///@brief ???????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MultiRemoveAccessIris(LLONG lLoginID, const NET_IN_MULTI_REMOVE_ACCESS_IRIS* pstuInParam, NET_OUT_MULTI_REMOVE_ACCESS_IRIS* pstuOutParam, int nWaitTime); ///@brief CLIENT_MultiUpdateAccessIris ??????? typedef struct tagNET_IN_MULTI_UPDATE_ACCESS_IRIS { DWORD dwSize; /// ??????? int nIrisListCount; /// ?????????????? NET_ACCESS_IRIS_LIST stuIrisList[10]; /// ?????????????? }NET_IN_MULTI_UPDATE_ACCESS_IRIS; ///@brief CLIENT_MultiUpdateAccessIris ??????? typedef struct tagNET_OUT_MULTI_UPDATE_ACCESS_IRIS { DWORD dwSize; /// ??????? int nFailCodesCount; /// ?????? NET_EM_FAILCODE emFailCodes[10]; /// ??????????????????????????(0??????????), ????????????????????????????????????????????????? }NET_OUT_MULTI_UPDATE_ACCESS_IRIS; ///@brief ?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MultiUpdateAccessIris(LLONG lLoginID, const NET_IN_MULTI_UPDATE_ACCESS_IRIS* pstuInParam, NET_OUT_MULTI_UPDATE_ACCESS_IRIS* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetHygrothermographConfig ??????? typedef struct tagNET_IN_SET_HYGROTHERMOGRAPH_CONFIG { DWORD dwSize; /// ??????? int nTemperatureRange[2]; /// ???????????,???????? int nHumidityRange[2]; /// ???????????,??????%RH(?????????) int nChannel; /// ???????????????????????IPC?????????? }NET_IN_SET_HYGROTHERMOGRAPH_CONFIG; ///@brief CLIENT_SetHygrothermographConfig ??????? typedef struct tagNET_OUT_SET_HYGROTHERMOGRAPH_CONFIG { DWORD dwSize; /// ??????? }NET_OUT_SET_HYGROTHERMOGRAPH_CONFIG; ///@brief ???????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetHygrothermographConfig(LLONG lLoginID, const NET_IN_SET_HYGROTHERMOGRAPH_CONFIG* pstuInParam, NET_OUT_SET_HYGROTHERMOGRAPH_CONFIG* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetPowerSwitcherConfig ??????? typedef struct tagNET_IN_SET_POWER_SWITCHER_CONFIG { DWORD dwSize; /// ??????? int nCurrentRange[2]; /// ????????????,??????mA int nVoltageRange[2]; /// ???????????,??????mV int nChannel; /// ???????????????????????IPC?????????? }NET_IN_SET_POWER_SWITCHER_CONFIG; ///@brief CLIENT_SetPowerSwitcherConfig ??????? typedef struct tagNET_OUT_SET_POWER_SWITCHER_CONFIG { DWORD dwSize; /// ??????? }NET_OUT_SET_POWER_SWITCHER_CONFIG; ///@brief ?????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPowerSwitcherConfig(LLONG lLoginID, const NET_IN_SET_POWER_SWITCHER_CONFIG* pstuInParam, NET_OUT_SET_POWER_SWITCHER_CONFIG* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetCollectDeviceBodyInfo ?????? typedef struct tagNET_IN_GET_COLLECT_DEVICE_BODY_INFO { DWORD dwSize; /// ??????? int nSlotBodyNum; /// ??????????? int nSlotBodyIndex[4]; /// ???????????????????????? } NET_IN_GET_COLLECT_DEVICE_BODY_INFO; ///@brief ?????? typedef struct tagNET_COLLECT_DEVICE_BODY_INFO { BOOL bExist; /// ????????? UINT nSlotNum; /// ???????????????? char szResvered[512]; /// ??????? }NET_COLLECT_DEVICE_BODY_INFO; ///@brief CLIENT_GetCollectDeviceBodyInfo ?????? typedef struct tagNET_OUT_GET_COLLECT_DEVICE_BODY_INFO { DWORD dwSize; /// ??????? int nBodyCount; /// ?????????? NET_COLLECT_DEVICE_BODY_INFO stuBodyInfo[4]; /// ?????? } NET_OUT_GET_COLLECT_DEVICE_BODY_INFO; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCollectDeviceBodyInfo(LLONG lLoginID, const NET_IN_GET_COLLECT_DEVICE_BODY_INFO* pstuInParam, NET_OUT_GET_COLLECT_DEVICE_BODY_INFO* pstuOutParam, int nWaitTime); ///@brief ????ID??? typedef struct tagNET_COLLECT_DEVICE_SLOT_ID_INFO { int nSlotBodyIndex; /// ???????????? int nSlotIndex; /// ?????? char szResvered[128]; /// ??????? }NET_COLLECT_DEVICE_SLOT_ID_INFO; ///@brief CLIENT_GetCollectDeviceInfo ?????? typedef struct tagNET_IN_GET_COLLECT_DEVICE_INFO { DWORD dwSize; /// ??????? int nSlotBodyNum; /// ??????????? NET_COLLECT_DEVICE_SLOT_ID_INFO stuSlotID[8]; /// ????ID???? } NET_IN_GET_COLLECT_DEVICE_INFO; ///@brief ???????????????? typedef struct tagNET_COLLOCT_FILE_INFO { UINT nFileTotal; /// ??????? UINT nFileOkCounts; /// ????????????? UINT nFileFailCounts; /// ????????????? UINT nFileTotalLength; /// ???????????????? UINT nFileOkTotalLength; /// ??????????????????????? UINT nFileFailTotalLength; /// ??????????????????????? char szResvered[128]; /// ??????? }NET_COLLOCT_FILE_INFO; ///@brief ?????????????? typedef struct tagNET_COLLECT_DEVICE_SLOT_INFO { NET_COLLECT_DEVICE_SLOT_ID_INFO stuSlotID; /// ??????? int nState; /// ?????? /// 0:??????????????? /// 1:????????????????????????? /// 2:???????????????????????? /// 3:??????????????????????? /// 4:?????????????????????? /// 5:????????????????????????????????? /// 6:?????????????????????????????? /// 7:????????????????????????????? /// 8:??????????????????????????? /// 9:??????????????????????????????? /// 10:??????????????????????????????? BOOL bPriorityCollectEnable; /// ??????????????????? UINT nCollectBindwith; /// ??????????????,??????? UINT nLock; /// ??????????, 0:??????????, 1:???????????? char szSerial[32]; /// ???????????????? char szName[64]; /// ??????????????????????????? int nBattery; /// 0~100:??????????????????????, -1:????????????????? UINT nLoginTryCount; /// ????????????????????????????nState?3??4????? UINT nLoginLockLeftSeconds; /// ?????????????????????nState?4????? UINT nProcess; /// ????????????????0-100 NET_COLLOCT_FILE_INFO stuVideoFileInfo; /// ?????????????? NET_COLLOCT_FILE_INFO stuAudioFileInfo; /// ?????????????? NET_COLLOCT_FILE_INFO stuPicFileInfo; /// ????????????? char szResvered[256]; /// ??????? }NET_COLLECT_DEVICE_SLOT_INFO; ///@brief CLIENT_GetCollectDeviceInfo ?????? typedef struct tagNET_OUT_GET_COLLECT_DEVICE_INFO { DWORD dwSize; /// ??????? int nSlotInfoCount; /// ?????????? NET_COLLECT_DEVICE_SLOT_INFO stuSlotInfo[8]; /// ?????? } NET_OUT_GET_COLLECT_DEVICE_INFO; ///@brief ?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCollectDeviceInfo(LLONG lLoginID, const NET_IN_GET_COLLECT_DEVICE_INFO* pstuInParam, NET_OUT_GET_COLLECT_DEVICE_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????? typedef struct tagNET_COLLECT_DEVICE_MANAGER_NOTIFY_INFO { NET_COLLECT_DEVICE_SLOT_INFO stuSlotInfo; /// ??????? char szResvered[1024]; /// ??????? }NET_COLLECT_DEVICE_MANAGER_NOTIFY_INFO; ///@brief ????????????????????????????, lAttachHandle?CLIENT_AttachCollectDeviceManager???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuCollectDeviceInfo ????????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyCollectDeviceManager)(LLONG lAttachHandle, NET_COLLECT_DEVICE_MANAGER_NOTIFY_INFO* pstuCollectDeviceInfo, LDWORD dwUser); ///@brief ??? CLIENT_AttachCollectDevice ????????? typedef struct tagNET_IN_ATTACH_COLLECT_DEVICE_MANAGER { DWORD dwSize; /// ????????,????? fNotifyCollectDeviceManager cbNotify; /// ???????,????????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_COLLECT_DEVICE_MANAGER; ///@brief ??? CLIENT_AttachCollectDevice ????????? typedef struct tagNET_OUT_ATTACH_COLLECT_DEVICE_MANAGER { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_COLLECT_DEVICE_MANAGER; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachCollectDeviceManager(LLONG lLoginID, NET_IN_ATTACH_COLLECT_DEVICE_MANAGER* pstuInParam, NET_OUT_ATTACH_COLLECT_DEVICE_MANAGER* pstuOutParam , int nWaitTime); ///@brief ????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachCollectDeviceManager(LLONG lAttachHandle); ///@brief CLIENT_ChooseRemoteUpgraderChip ??????? typedef struct tagNET_IN_CHOOSE_REMOTE_UPGRADER_CHIP { DWORD dwSize; /// ??????? int nChannel; /// ???????? EM_CHIP_TYPE emChipType; /// ???????????? }NET_IN_CHOOSE_REMOTE_UPGRADER_CHIP; ///@brief CLIENT_ChooseRemoteUpgraderChip ??????? typedef struct tagNET_OUT_CHOOSE_REMOTE_UPGRADER_CHIP { DWORD dwSize; /// ??????? }NET_OUT_CHOOSE_REMOTE_UPGRADER_CHIP; ///@brief ???????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ChooseRemoteUpgraderChip(LLONG lLoginID, const NET_IN_CHOOSE_REMOTE_UPGRADER_CHIP* pstuInParam, NET_OUT_CHOOSE_REMOTE_UPGRADER_CHIP* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetDevStorageSmartValue ?????? typedef struct tagNET_IN_GET_DEV_STORAGE_SMART_VALUE { DWORD dwSize; /// ??????? char szName[64]; /// ?????????? } NET_IN_GET_DEV_STORAGE_SMART_VALUE; ///@brief ???SMART??? typedef struct tagNET_SMART_VALUE_INFO { UINT nID; /// ????ID char szName[32]; /// ?????? UINT nCurrent; /// ????? UINT nWorst; /// ??????? UINT nThreshold; /// ??? char szRaw[32]; /// ???? int nPredict; /// ?? int nSync; /// Raid?????, -1: ???; 0: ?????; 1: ???????,I/O??????Raid???; 2:???????,I/O???????????????; 3: ???? char szResvered[256]; /// ??????? }NET_SMART_VALUE_INFO; ///@brief CLIENT_GetDevStorageSmartValue ?????? typedef struct tagNET_OUT_GET_DEV_STORAGE_SMART_VALUE { DWORD dwSize; /// ??????? int nCount; /// ???SMART??????? NET_SMART_VALUE_INFO stuValuesInfo[64]; /// ???SMART??? } NET_OUT_GET_DEV_STORAGE_SMART_VALUE; ///@brief ???SMART?????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevStorageSmartValue(LLONG lLoginID, const NET_IN_GET_DEV_STORAGE_SMART_VALUE* pstuInParam, NET_OUT_GET_DEV_STORAGE_SMART_VALUE* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetDeviceEthBandInfo ?????? typedef struct tagNET_IN_GET_DEVICE_ETH_BAND_INFO { DWORD dwSize; /// ??????? } NET_IN_GET_DEVICE_ETH_BAND_INFO; ///@brief ??????? typedef struct tagNET_BAND_SPEED_INFO { char szEthName[16]; /// ???????? double dbReceivedBytes; /// ????????????????? Mb/s double dbTransmittedBytes; /// ????????????????? Mb/s char szResvered[512]; /// ??????? }NET_BAND_SPEED_INFO; ///@brief CLIENT_GetDeviceEthBandInfo ?????? typedef struct tagNET_OUT_GET_DEVICE_ETH_BAND_INFO { DWORD dwSize; /// ??????? int nCount; /// ??????????? NET_BAND_SPEED_INFO stuBandSpeedInfo[10]; /// ??????? } NET_OUT_GET_DEVICE_ETH_BAND_INFO; ///@brief ????????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDeviceEthBandInfo(LLONG lLoginID, const NET_IN_GET_DEVICE_ETH_BAND_INFO* pstuInParam, NET_OUT_GET_DEVICE_ETH_BAND_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????????? typedef struct tagNET_METAL_DETECT_NOTIFY_INFO { UINT nMetalIntensity; /// ???????????????0~100 UINT nSignalPhaseDiff; /// ?????????????? UINT nDoorRegion; /// ???????: /// 0:???6????; /// 1:???12????; /// 2:???18????; /// 3:???10????; /// 4:???33????; /// 5:???1????; /// 6:???2????; /// 7:???3????; /// 8:???4????; /// 9:???8????; /// 10:???9????; /// 11:???16????; /// 12:???20????; /// 13:???24????; /// 14:???36????; /// 15:???40????; /// 16:???45????; /// 17:???48????; /// 18:???60???? UINT nAlarmPositonNum; /// ?????????????? UINT nAlarmPositon[128]; /// ?????????? UINT nTurnOffMetalDetect; /// ?????????, 0:???, 1:?????, 2:??? UINT nWriteToFlash; /// ?????????????????flash, 0:???, 1:????, 2:?????? UINT nMetalRelativeIntensity; /// ??????????????(????*100???????) char szResvered[1024]; /// ??????? }NET_METAL_DETECT_NOTIFY_INFO; ///@brief ????????????????????????????, lAttachHandle?CLIENT_AttachMetalDetectInfo???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuMetalDetectInfo ??????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyMetalDetectInfoManager)(LLONG lAttachHandle, NET_METAL_DETECT_NOTIFY_INFO* pstuMetalDetectInfo, LDWORD dwUser); ///@brief ??? CLIENT_AttachMetalDetectInfo ????????? typedef struct tagNET_IN_ATTACH_METAL_DETECT_INFO { DWORD dwSize; /// ????????,????? fNotifyMetalDetectInfoManager cbNotify; /// ???????,?????????????????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_METAL_DETECT_INFO; ///@brief ??? CLIENT_AttachCollectDevice ????????? typedef struct tagNET_OUT_ATTACH_METAL_DETECT_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_METAL_DETECT_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachMetalDetectInfo(LLONG lLoginID, NET_IN_ATTACH_METAL_DETECT_INFO* pstuInParam, NET_OUT_ATTACH_METAL_DETECT_INFO* pstuOutParam , int nWaitTime); ///@brief ???????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachMetalDetectInfo(LLONG lAttachHandle); ///@brief CLIENT_GetMetalDetectInfo ??????? typedef struct tagNET_IN_GET_METAL_DETECT_INFO { DWORD dwSize; /// ??????? }NET_IN_GET_METAL_DETECT_INFO; ///@brief CLIENT_GetMetalDetectInfo ??????? typedef struct tagNET_OUT_GET_METAL_DETECT_INFO { DWORD dwSize; /// ??????? UINT nMetalIntensity; /// ???????????????0~100 UINT nSignalPhaseDiff; /// ?????????????? UINT nDoorRegion; /// ???????: /// 0:???6????; /// 1:???12????; /// 2:???18????; /// 3:???10????; /// 4:???33????; /// 5:???1????; /// 6:???2????; /// 7:???3????; /// 8:???4????; /// 9:???8????; /// 10:???9????; /// 11:???16????; /// 12:???20????; /// 13:???24????; /// 14:???36????; /// 15:???40????; /// 16:???45????; /// 17:???48????; /// 18:???60???? UINT nAlarmPositonNum; /// ?????????????? UINT nAlarmPositon[128]; /// ?????????? UINT nTurnOffMetalDetect; /// ?????????, 0:???, 1:?????, 2:??? UINT nWriteToFlash; /// ?????????????????flash, 0:???, 1:????, 2:?????? UINT nMetalRelativeIntensity; /// ??????????????(????*100???????) }NET_OUT_GET_METAL_DETECT_INFO; ///@brief ????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMetalDetectInfo(LLONG lLoginID, const NET_IN_GET_METAL_DETECT_INFO* pstuInParam, NET_OUT_GET_METAL_DETECT_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetFaceFlowStatCaps ??????? typedef struct tagNET_IN_GET_FACE_FLOW_STAT_CAPS { DWORD dwSize; /// ??????? }NET_IN_GET_FACE_FLOW_STAT_CAPS; ///@brief CLIENT_GetFaceFlowStatCaps ??????? typedef struct tagNET_OUT_GET_FACE_FLOW_STAT_CAPS { DWORD dwSize; /// ??????? UINT nSupport; /// ???????????????, bit0-???????????, bit1-????????????, bit2-???????????Granularity???????? }NET_OUT_GET_FACE_FLOW_STAT_CAPS; ///@brief ????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFaceFlowStatCaps(LLONG lLoginID, const NET_IN_GET_FACE_FLOW_STAT_CAPS* pstuInParam, NET_OUT_GET_FACE_FLOW_STAT_CAPS* pstuOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_FACE_FLOW_STAT_PERSON { EM_SEX_TYPE emSex; /// ?????? UINT nAge[2]; /// ??????????? char szResvered[1024]; /// ??????? }NET_FACE_FLOW_STAT_PERSON; ///@brief CLIENT_StartFindFaceFlowStat ??????? typedef struct tagNET_IN_START_FIND_FACE_FLOW_STAT { DWORD dwSize; /// ??????? NET_TIME stuStartTime; /// ????????? NET_TIME stuEndTime; /// ?????????? UINT nGranularity; /// ??????????????????, 0:???,1:?????,2:????,3:????,4:????, NET_FACE_FLOW_STAT_PERSON stuPerson; /// ????????? int nChannel; /// ????? int nPresetIDCount; /// ??????? int nPresetID[512]; /// ???? }NET_IN_START_FIND_FACE_FLOW_STAT; ///@brief CLIENT_StartFindFaceFlowStat ??????? typedef struct tagNET_OUT_START_FIND_FACE_FLOW_STAT { DWORD dwSize; /// ??????? UINT nToken; /// ??????? UINT nTotalCount; /// ??????????????????????? }NET_OUT_START_FIND_FACE_FLOW_STAT; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartFindFaceFlowStat(LLONG lLoginID, NET_IN_START_FIND_FACE_FLOW_STAT* pstuInParam, NET_OUT_START_FIND_FACE_FLOW_STAT* pstuOutParam, int nWaitTime); ///@brief CLIENT_DoFindFaceFlowStat ??????? typedef struct tagNET_IN_DO_FIND_FACE_FLOW_STAT { DWORD dwSize; /// ??????? UINT nToken; /// ??????? UINT nBeginNumber; /// ?????????, ?????beginNumber????????, ?count?????????; 0<=beginNumber<=totalCount-1 UINT nCount; /// ????????????????????? }NET_IN_DO_FIND_FACE_FLOW_STAT; ///@brief ???????????? typedef struct tagNET_FACE_FLOW_STAT_INFO { UINT nChannel; /// ????? int nPresetIDCount; /// ??????? int nPresetID[512]; /// ???? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nRepeatCount; /// ???????? UINT nFaceDetectCount; /// ???????????????? UINT nFaceAnalysisCount; /// ????????????????? char szResvered[252]; /// ??????? }NET_FACE_FLOW_STAT_INFO; ///@brief CLIENT_StartFindFaceFlowStat ??????? typedef struct tagNET_OUT_DO_FIND_FACE_FLOW_STAT { DWORD dwSize; /// ??????? UINT nFound; /// ??????????? NET_FACE_FLOW_STAT_INFO stuInfo[64]; /// ???????????? }NET_OUT_DO_FIND_FACE_FLOW_STAT; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_DoFindFaceFlowStat(LLONG lLoginID, NET_IN_DO_FIND_FACE_FLOW_STAT* pstuInParam, NET_OUT_DO_FIND_FACE_FLOW_STAT* pstuOutParam, int nWaitTime); ///@brief CLIENT_StopFindFaceFlowStat ??????? typedef struct tagNET_IN_STOP_FIND_FACE_FLOW_STAT { DWORD dwSize; /// ??????? UINT nToken; /// ??????? }NET_IN_STOP_FIND_FACE_FLOW_STAT; ///@brief CLIENT_StopFindFaceFlowStat ??????? typedef struct tagNET_OUT_STOP_FIND_FACE_FLOW_STAT { DWORD dwSize; /// ??????? }NET_OUT_STOP_FIND_FACE_FLOW_STAT; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StopFindFaceFlowStat(LLONG lLoginID, NET_IN_STOP_FIND_FACE_FLOW_STAT* pstuInParam, NET_OUT_STOP_FIND_FACE_FLOW_STAT* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetPrivacyMasking ??????? typedef struct tagNET_IN_GET_PRIVACY_MASKING { DWORD dwSize; /// ??????? int nChannel; /// ????? int nOffset; /// ??????????????????? int nLimit; /// ????????????????????,??????24 }NET_IN_GET_PRIVACY_MASKING; ///@brief ????????? typedef struct tagNET_PRIVACY_MASKING_INFO { int nIndex; /// ??????????0??? int nEnable; /// ???????????? 1 ????0?? char szName[64]; /// ????????????? EM_PRIVACY_MASKING_TYPE emShapeType; /// ??????????????Rect??????(???),??????????????????Polygon???? DH_RECT stuRect; /// ????????,????????????????????0-8192 NET_UINT_POINT stuPolygon[64]; /// ??????????????????????????64, ????????????????????0-8192 int nPointNum; /// ???????????????? DH_COLOR_RGBA stuColor; /// ????????,?????nMosaic?0????? int nMosaic; /// ??????????????????????????Color????,??????????????????NET_MOSAIC_MASKING_CAPS??nSupportMosaicType??? int nShieldZoom; /// ?????????????????10????? char szResvered[512]; /// ??????? }NET_PRIVACY_MASKING_INFO; ///@brief CLIENT_GetPrivacyMasking ??????? typedef struct tagNET_OUT_GET_PRIVACY_MASKING { DWORD dwSize; /// ??????? int nTotal; /// ??????????????? NET_PRIVACY_MASKING_INFO stuPrivacyMaskingInfo[24]; /// ??????????? int nPrivacyMasking; /// ??????????????????? }NET_OUT_GET_PRIVACY_MASKING; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPrivacyMasking(LLONG lLoginID, const NET_IN_GET_PRIVACY_MASKING* pstuInParam, NET_OUT_GET_PRIVACY_MASKING* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetPrivacyMasking ??????? typedef struct tagNET_IN_SET_PRIVACY_MASKING { DWORD dwSize; /// ??????? int nChannel; /// ????? NET_PRIVACY_MASKING_INFO stuPrivacyMaskingInfo; /// ??????????? }NET_IN_SET_PRIVACY_MASKING; ///@brief CLIENT_SetPrivacyMasking ??????? typedef struct tagNET_OUT_SET_PRIVACY_MASKING { DWORD dwSize; /// ??????? }NET_OUT_SET_PRIVACY_MASKING; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPrivacyMasking(LLONG lLoginID, const NET_IN_SET_PRIVACY_MASKING* pstuInParam, NET_OUT_SET_PRIVACY_MASKING* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetPrivacyMaskingEnable ??????? typedef struct tagNET_IN_SET_PRIVACY_MASKING_ENABLE { DWORD dwSize; /// ??????? int nChannel; /// ????? BOOL bEnable; /// true ??????????????? false ??????????????? }NET_IN_SET_PRIVACY_MASKING_ENABLE; ///@brief CLIENT_SetPrivacyMaskingEnable ??????? typedef struct tagNET_OUT_SET_PRIVACY_MASKING_ENABLE { DWORD dwSize; /// ??????? }NET_OUT_SET_PRIVACY_MASKING_ENABLE; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPrivacyMaskingEnable(LLONG lLoginID, const NET_IN_SET_PRIVACY_MASKING_ENABLE* pstuInParam, NET_OUT_SET_PRIVACY_MASKING_ENABLE* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetPrivacyMaskingEnable ??????? typedef struct tagNET_IN_GET_PRIVACY_MASKING_ENABLE { DWORD dwSize; /// ??????? int nChannel; /// ????? }NET_IN_GET_PRIVACY_MASKING_ENABLE; ///@brief CLIENT_GetPrivacyMaskingEnable ??????? typedef struct tagNET_OUT_GET_PRIVACY_MASKING_ENABLE { DWORD dwSize; /// ??????? BOOL bEnable; /// true ?? false ?? }NET_OUT_GET_PRIVACY_MASKING_ENABLE; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPrivacyMaskingEnable(LLONG lLoginID, const NET_IN_GET_PRIVACY_MASKING_ENABLE* pstuInParam, NET_OUT_GET_PRIVACY_MASKING_ENABLE* pstuOutParam, int nWaitTime); ///@brief CLIENT_GotoPrivacyMasking ??????? typedef struct tagNET_IN_GOTO_PRIVACY_MASKING { DWORD dwSize; /// ??????? int nChannel; /// ????? int nIndex; /// ??????????0??? }NET_IN_GOTO_PRIVACY_MASKING; ///@brief CLIENT_GotoPrivacyMasking ??????? typedef struct tagNET_OUT_GOTO_PRIVACY_MASKING { DWORD dwSize; /// ??????? }NET_OUT_GOTO_PRIVACY_MASKING; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GotoPrivacyMasking(LLONG lLoginID, const NET_IN_GOTO_PRIVACY_MASKING* pstuInParam, NET_OUT_GOTO_PRIVACY_MASKING* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeletePrivacyMasking ??????? typedef struct tagNET_IN_DELETE_PRIVACY_MASKING { DWORD dwSize; /// ??????? int nChannel; /// ????? int nIndex; /// ??????????0??? }NET_IN_DELETE_PRIVACY_MASKING; ///@brief CLIENT_DeletePrivacyMasking ??????? typedef struct tagNET_OUT_DELETE_PRIVACY_MASKING { DWORD dwSize; /// ??????? }NET_OUT_DELETE_PRIVACY_MASKING; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeletePrivacyMasking(LLONG lLoginID, const NET_IN_DELETE_PRIVACY_MASKING* pstuInParam, NET_OUT_DELETE_PRIVACY_MASKING* pstuOutParam, int nWaitTime); ///@brief CLIENT_ClearPrivacyMasking ??????? typedef struct tagNET_IN_CLEAR_PRIVACY_MASKING { DWORD dwSize; /// ??????? int nChannel; /// ????? }NET_IN_CLEAR_PRIVACY_MASKING; ///@brief CLIENT_ClearPrivacyMasking ??????? typedef struct tagNET_OUT_CLEAR_PRIVACY_MASKING { DWORD dwSize; /// ??????? }NET_OUT_CLEAR_PRIVACY_MASKING; ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ClearPrivacyMasking(LLONG lLoginID, const NET_IN_CLEAR_PRIVACY_MASKING* pstuInParam, NET_OUT_CLEAR_PRIVACY_MASKING* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetFileAlias ??????? typedef struct tagNET_IN_SET_FILE_ALIAS_INFO { DWORD dwSize; /// ??????? int nChannel; /// ??????????????????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nVideoStream; /// ??????? 0-?????? 1-??????1 2-??????2 3-??????3 int nFlagCount; /// ????????????? EM_RECORD_SNAP_FLAG_TYPE emFlagsList[128]; /// ?????? int nMediaType; /// ??????? 0:dav, 1:jpg char szRecordAlias[256]; /// ?????????????? }NET_IN_SET_FILE_ALIAS_INFO; ///@brief CLIENT_SetFileAlias ??????? typedef struct tagNET_OUT_SET_FILE_ALIAS_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_FILE_ALIAS_INFO; ///@brief ??????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetFileAlias(LLONG lLoginID, const NET_IN_SET_FILE_ALIAS_INFO* pstuInParam, NET_OUT_SET_FILE_ALIAS_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_SearchFileByAlias ??????? typedef struct tagNET_IN_SEARCH_FILE_BYALIAS_INFO { DWORD dwSize; /// ??????? char szRecordAlias[256]; /// ????????????? UINT nMaxCount; /// ????????? }NET_IN_SEARCH_FILE_BYALIAS_INFO; ///@brief ?????????????????????? ????????????? typedef struct tagNET_RECORS_BYALIAS_INFO { int nChannel; /// ???????? int nVideoStream; /// ??????? 0 ??? 1-?????? 2-??????1 3-??????2 4-??????3 NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? int nFlagCount; /// ????????????? EM_RECORD_SNAP_FLAG_TYPE emFlagsList[128]; /// ?????? UINT nDriveNo; /// ????? UINT nCluster; /// ??? int nMediaType; /// ??????? 0:???, 1:dav, 2:jpg int nPartition; /// ?????? UINT nLength; /// ??????????? ????????? UINT nCutLength; /// ??????????????????????? char szFilePath[260]; /// ????????????????????? char szResvered[1024]; /// ??????? }NET_RECORS_BYALIAS_INFO; ///@brief CLIENT_SearchFileByAlias ??????? typedef struct tagNET_OUT_SEARCH_FILE_BYALIAS_INFO { DWORD dwSize; /// ??????? char szReserved1[4]; /// ?????? UINT nMaxCount; /// ?????????,??????? UINT nRetCount; /// ????z????????? NET_RECORS_BYALIAS_INFO* pstuRecordInfo; /// ??????????????????????????????????nMaxCount }NET_OUT_SEARCH_FILE_BYALIAS_INFO; ///@brief ?????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SearchFileByAlias(LLONG lLoginID, const NET_IN_SEARCH_FILE_BYALIAS_INFO* pstuInParam, NET_OUT_SEARCH_FILE_BYALIAS_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetFanSpeedEx ??????? typedef struct tagNET_IN_GET_FAN_SPEED_EX { DWORD dwSize; /// ??????? int nType; /// ?????????0: ????????1: CPU????????2: Cabinet????3: Mainboard?????4: Power??? }NET_IN_GET_FAN_SPEED_EX; ///@brief CLIENT_GetFanSpeedEx ??????? typedef struct tagNET_OUT_GET_FAN_SPEED_EX { DWORD dwSize; /// ??????? int nCPUCount; /// CPU??????? int nCPU[16]; /// CPU???????, -1????????? int nCabinetCount; /// ?????????? int nCabinet[16]; /// ?????????? int nMainboardCount; /// ?????????? int nMainboard[16]; /// ?????????? int nPowerCount; /// ?????????? int nPower[16]; /// ?????????? }NET_OUT_GET_FAN_SPEED_EX; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFanSpeedEx(LLONG lLoginID, const NET_IN_GET_FAN_SPEED_EX* pstuInParam, NET_OUT_GET_FAN_SPEED_EX* pstuOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_MODIFY_USER_INFO { char szName[128]; /// ????? char szGroup[8]; /// ???????????? int nPwdValidPeriod; /// ???????????????????? BOOL bUseGroupEx; /// ??????szGroupEx char szGroupEx[32]; /// ??????????????? char szResvered[984]; /// ??????? }NET_MODIFY_USER_INFO; ///@brief CLIENT_ModifyUserManagerUser ?????? typedef struct tagNET_IN_MODIFY_USER_MANAGER_USER { DWORD dwSize; /// ??????? char szName[128]; /// ????????????????????????????? NET_MODIFY_USER_INFO stuUserInfo; /// ?????? }NET_IN_MODIFY_USER_MANAGER_USER; ///@brief CLIENT_ModifyUserManagerUser ?????? typedef struct tagNET_OUT_MODIFY_USER_MANAGER_USER { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_USER_MANAGER_USER; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ?????????? ///@param[out] pstuOutParam: ?????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyUserManagerUser(LLONG lLoginID, NET_IN_MODIFY_USER_MANAGER_USER* pstuInParam, NET_OUT_MODIFY_USER_MANAGER_USER* pstuOutParam, int nWaitTime); ///@brief ???????????????????? typedef struct tagNET_NOTIFY_SOUND_DATA_INFO { DWORD dwSize; /// ????????,????? UINT nChannel; /// ????? UINT nSoundVolume; /// ??????? char szSource[32]; /// ???????? char szResvered[256]; /// ??????? }NET_NOTIFY_SOUND_DATA_INFO; ///@brief ???????????????????????????, lAttachSoundDataHandle?CLIENT_AttachSoundData???????? ///@param[out] lAttachSoundDataHandle ?????? ///@param[out] pstuSoundDataInfo ?????????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifySoundData)(LLONG lAttachSoundDataHandle, NET_NOTIFY_SOUND_DATA_INFO* pstuSoundDataInfo, LDWORD dwUser); ///@brief CLIENT_AttachSoundData?????? typedef struct tagNET_IN_ATTACH_SOUNDDATA { DWORD dwSize; /// ????????,????? fNotifySoundData cbfNotifySoundData; /// ???????,??????????? LDWORD dwUser; /// ??????????? int nChannel; /// ???????????????????????????? char szSource[32]; /// ???????? }NET_IN_ATTACH_SOUNDDATA; ///@brief CLIENT_AttachSoundData?????? typedef struct tagNET_OUT_ATTACH_SOUNDDATA { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_SOUNDDATA; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSoundData(LLONG lLoginID,const NET_IN_ATTACH_SOUNDDATA* pstInParam, NET_OUT_ATTACH_SOUNDDATA* pstOutParam, int nWaitTime); ///@brief ????????????????? ///@param[in] lAttachSoundDataHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSoundData(LLONG lAttachSoundDataHandle); ///@brief CLIENT_SecurityExportDataEx?????? typedef struct tagNET_IN_SECURITY_EXPORT_DATA_INFO { DWORD dwSize; /// ????????,????? char szKey[1024]; /// ?????????????Base64????????? int nfileTypeMask; /// ????????????, ?????????????????????????????? /// Bit3??? /// Bit4??????? /// Bit5 ?????? /// Bit6 ?????? /// Bit7?????? /// Bit8 ???IPC??? /// Bit13 ??????? int nOffset; /// ??????? int nNeedLength; /// ??????????????? UINT nChannel; /// ????? BOOL bChannel; /// ???????????? }NET_IN_SECURITY_EXPORT_DATA_INFO; ///@brief CLIENT_SecurityExportDataEx?????? typedef struct tagNET_OUT_SECURITY_EXPORT_DATA_INFO { DWORD dwSize; /// ????????,????? char* pBufData; /// ???????????, ??????????, ?????nBufLen int nBufLen; /// pBufData???? int nBufRet; /// ?????????? int nTotalLength; /// ???????????????? int nPackLength; /// ??????????? }NET_OUT_SECURITY_EXPORT_DATA_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SecurityExportDataEx(LLONG lLoginID,const NET_IN_SECURITY_EXPORT_DATA_INFO* pstInParam, NET_OUT_SECURITY_EXPORT_DATA_INFO* pstOutParam, int nWaitTime); ///@brief ???????????? typedef enum tagEM_STATUS_TYPE { EM_IMPORT_STATUS_UNKNOWN, /// ??? EM_IMPORT_STATUS_BEGIN, /// ??? EM_IMPORT_STATUS_APPEND, /// ??? EM_IMPORT_STATUS_END, /// ???? } EM_STATUS_TYPE; ///@brief CLIENT_SecurityImportDataEx?????? typedef struct tagNET_IN_SECURITY_IMPORT_DATA_INFO { DWORD dwSize; /// ????????,????? char szKey[1024]; /// ?????????????Base64????????? BOOL bIsOverWrite; /// ???? EM_STATUS_TYPE emStatus; /// ???????????? char* pBufData; /// ????????????????? int nLength; /// ???????,????????? UINT nChannel; /// ????? BOOL bChannel; /// ???????????? }NET_IN_SECURITY_IMPORT_DATA_INFO; ///@brief CLIENT_SecurityImportDataEx?????? typedef struct tagNET_OUT_SECURITY_IMPORT_DATA_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SECURITY_IMPORT_DATA_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SecurityImportDataEx(LLONG lLoginID,const NET_IN_SECURITY_IMPORT_DATA_INFO* pstInParam, NET_OUT_SECURITY_IMPORT_DATA_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_SecurityPrepareExportData?????? typedef struct tagNET_IN_SECURITY_PREPARE_EXPORT_DATA_INFO { DWORD dwSize; /// ????????,????? int nfileTypeMask; /// ????????????, ?????????????????????????????? /// Bit3 ??? /// Bit4 ??????? /// Bit5 ?????? /// Bit6 ?????? /// Bit7 ??? /// Bit13 ??????? char szKey[1024]; /// ?????????????Base64????????? UINT nChannel; /// ????? BOOL bChannel; /// ???????????? }NET_IN_SECURITY_PREPARE_EXPORT_DATA_INFO; ///@brief CLIENT_SecurityPrepareExportData?????? typedef struct tagNET_OUT_SECURITY_PREPARE_EXPORT_DATA_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SECURITY_PREPARE_EXPORT_DATA_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SecurityPrepareExportData(LLONG lLoginID,const NET_IN_SECURITY_PREPARE_EXPORT_DATA_INFO* pstInParam, NET_OUT_SECURITY_PREPARE_EXPORT_DATA_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_SecurityGetCaps?????? typedef struct tagNET_IN_SECURITY_GETCAPS_INFO { DWORD dwSize; /// ????????,????? UINT nChannel; /// ????? BOOL bChannel; /// ???????????? }NET_IN_SECURITY_GETCAPS_INFO; ///@brief CLIENT_SecurityGetCaps?????? typedef struct tagNET_OUT_SECURITY_GETCAPS_INFO { DWORD dwSize; /// ????????,????? int nTypesRealNum; /// ??????????? int nSupportTypes[32]; /// 0 ???????????? /// 1 ?????????? /// 2 ???????????????? /// 3 ??????? /// 4 ????????? /// 5 ???????? /// 6 ????????? /// 7 ?????? /// 8 ???IPC??? /// 9 ????????? /// 10 ???????????? /// 11 ?????? /// 13 ??????? /// 14 ???????????????? }NET_OUT_SECURITY_GETCAPS_INFO; ///@brief ???????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SecurityGetCaps(LLONG lLoginID,const NET_IN_SECURITY_GETCAPS_INFO* pstInParam, NET_OUT_SECURITY_GETCAPS_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_SecurityGetTaskStatus?????? typedef struct tagNET_IN_SECURITY_GET_TASK_STATUS_INFO { DWORD dwSize; /// ????????,????? int nType; /// ????????????, 13:??????? UINT nChannel; /// ????? BOOL bChannel; /// ???????????? }NET_IN_SECURITY_GET_TASK_STATUS_INFO; ///@brief ??????????? typedef enum tagEM_SECURITY_TASK_TYPE { EM_TYPE_STATUS_UNKNOWN, /// ??? EM_TYPE_STATUS_NONE, /// ????????? EM_TYPE_STATUS_IMPORT, /// ?????????? EM_TYPE_STATUS_EXPORT, /// ?????????? } EM_SECURITY_TASK_TYPE; ///@brief ????????? typedef enum tagEM_SECURITY_TASK_STATUS { EM_TASK_STATUS_UNKNOWN, /// ??? EM_TASK_STATUS_RUNNING, /// ????????? EM_TASK_STATUS_SUCCEEDED, /// ?????????? EM_TASK_STATUS_FAILED, /// ?????????? } EM_SECURITY_TASK_STATUS; ///@brief CLIENT_SecurityGetTaskStatus?????? typedef struct tagNET_OUT_SECURITY_GET_TASK_STATUS_INFO { DWORD dwSize; /// ????????,????? EM_SECURITY_TASK_TYPE nTaskType; /// ??????????? EM_SECURITY_TASK_STATUS nStatus; /// ????????? char szErrorCode[128]; /// ????????"Status"?"Failed"?, ???????????, ????:"File content error!" ??????? int nProgress; /// ????????????????? }NET_OUT_SECURITY_GET_TASK_STATUS_INFO; ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SecurityGetTaskStatus(LLONG lLoginID,const NET_IN_SECURITY_GET_TASK_STATUS_INFO* pstInParam, NET_OUT_SECURITY_GET_TASK_STATUS_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_ICRGetState?????? typedef struct tagNET_IN_ICR_GET_STATE_INFO { DWORD dwSize; /// ????????,????? }NET_IN_ICR_GET_STATE_INFO; ///@brief ???????? typedef enum tagEM_ICR_STATE_TYPE { EM_ICR_STATE_TYPE_UNKNOWN, /// ??? EM_ICR_STATE_TYPE_NORMAL, /// ??? EM_ICR_STATE_TYPE_IR, /// ???? EM_ICR_STATE_TYPE_CPL, /// ??? } EM_ICR_STATE_TYPE; ///@brief CLIENT_ICRGetState?????? typedef struct tagNET_OUT_ICR_GET_STATE_INFO { DWORD dwSize; /// ????????,????? int nState; /// ?????? -1 ?????, 0 ???(IPC??????????), 1 ??(IPC??????????) EM_ICR_STATE_TYPE emICRState; /// ???????? }NET_OUT_ICR_GET_STATE_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ICRGetState(LLONG lLoginID,const NET_IN_ICR_GET_STATE_INFO* pstInParam, NET_OUT_ICR_GET_STATE_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_RemoveAnalyseTaskByType ??????? typedef struct tagNET_IN_REMOVE_ANALYSE_TASK_BYTYPE { DWORD dwSize; /// ??????? EM_DATA_SOURCE_TYPE emSourceType; /// ???????? }NET_IN_REMOVE_ANALYSE_TASK_BYTYPE; ///@brief CLIENT_RemoveAnalyseTaskByType ??????? typedef struct tagNET_OUT_REMOVE_ANALYSE_TASK_BYTYPE { DWORD dwSize; /// ??????? }NET_OUT_REMOVE_ANALYSE_TASK_BYTYPE; ///@brief ????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveAnalyseTaskByType(LLONG lLoginID, const NET_IN_REMOVE_ANALYSE_TASK_BYTYPE* pstuInParam, NET_OUT_REMOVE_ANALYSE_TASK_BYTYPE* pstuOutParam, int nWaitTime); ///@brief ??????????? typedef struct tagNET_IN_UNIFIEDINFOCOLLECT_GET_DEVSTATUS { DWORD dwSize; /// ??????? }NET_IN_UNIFIEDINFOCOLLECT_GET_DEVSTATUS; ///@brief ???????? typedef enum tagNET_EM_POWER_TYPE { NET_EM_POWER_TYPE_UNKNOWN = -1, /// ??? NET_EM_POWER_TYPE_POWERADAPTER, /// ????????? NET_EM_POWER_TYPE_BATTERY, /// ??? NET_EM_POWER_TYPE_BATTERY_AND_POWERADAPTER, /// ???+????????? }NET_EM_POWER_TYPE; ///@brief ???????????? typedef struct tagNET_DEVSTATUS_POWER_INFO { UINT nBatteryPercent; /// ??????????,0~100 NET_EM_POWER_TYPE emPowerType; /// ???????? }NET_DEVSTATUS_POWER_INFO; ///@brief ???????????? typedef enum tagNET_EM_ETH_STATE { NET_EM_ETH_UNKNOWN, /// ??? NET_EM_ETH_CONNECT, /// ???? NET_EM_ETH_DISCONNECT, /// ?????? }NET_EM_ETH_STATE; ///@brief sim???? typedef enum tagNET_EM_SIM_STATE { NET_EM_SIM_UNKNOWN, /// ??? NET_EM_SIM_ONLINE, /// ???? NET_EM_SIM_OFFLINE, /// ???? }NET_EM_SIM_STATE; ///@brief sim??????? typedef struct tagNET_DEVSTATUS_SIM_INFO { NET_EM_SIM_STATE emStatus; /// SIM???? BYTE byIndex; /// SIM????? BYTE byReserved[31]; /// ?????? }NET_DEVSTATUS_SIM_INFO; ///@brief ?????????? typedef struct tagNET_DEVSTATUS_NET_INFO { UINT nWifiIntensity; /// wifi??????????0~5??0????????? UINT nWifiSignal; /// wifi???????????dbm, 0~100,0????????? UINT nCellulSignal; /// 2g/3g/4g??????,????dbm. 0~100, 0????????? UINT nCellulIntensity; /// 2g/3g/4g????????,0~5, 0????????? NET_EM_ETH_STATE emEthState; /// ???????????? UINT n3Gflux; /// ??????????????????????????MB UINT n3GfluxByTime; /// ????????????????????????? NET_EM_ETH_STATE emWifiState; /// ?????????? NET_EM_ETH_STATE emCellularstate; /// ?????????????? UINT nSimNum; /// SIM?????? NET_DEVSTATUS_SIM_INFO stuSimInfo[DH_GATEWAY_MAX_SIM_NUM]; /// SIM??????? }NET_DEVSTATUS_NET_INFO; ///@brief ?????????? typedef enum tagNET_EM_TAMPER_STATE { NET_EM_TAMPER_UNKNOWN = -1, /// ??? NET_EM_TAMPER_NOALARM, /// ?????? NET_EM_TAMPER_ALARMING, /// ?????? }NET_EM_TAMPER_STATE; ///@brief ???????????? typedef struct tagNET_OUT_UNIFIEDINFOCOLLECT_GET_DEVSTATUS { DWORD dwSize; /// ??????? NET_DEVSTATUS_POWER_INFO stuPowerInfo; /// ???????????? NET_DEVSTATUS_NET_INFO stuNetInfo; /// ?????????? char szVersion[DH_COMMON_STRING_32]; /// ??????????? NET_EM_TAMPER_STATE emTamperState; /// ?????????? }NET_OUT_UNIFIEDINFOCOLLECT_GET_DEVSTATUS; ///@brief ????????, DMSS?????, pInParam??pOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ?????????? ///@param[out] pOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetUnifiedStatus(LLONG lLoginID, NET_IN_UNIFIEDINFOCOLLECT_GET_DEVSTATUS* pInParam, NET_OUT_UNIFIEDINFOCOLLECT_GET_DEVSTATUS* pOutParam, int nWaitTime); ///@brief ???token??? typedef struct tagNET_IN_MAKE_TOKEN { DWORD dwSize; /// ??????? char szUUID[128]; /// ????????????? int nKeepLiveTime; /// Token???????, ????60~86400 }NET_IN_MAKE_TOKEN; ///@brief ???token???? typedef struct tagNET_OUT_MAKE_TOKEN { DWORD dwSize; /// ??????? UINT nToken; /// Token }NET_OUT_MAKE_TOKEN; ///@brief ???token, pstuInParam??pstuOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MakeToken(LLONG lLoginID, NET_IN_MAKE_TOKEN* pstuInParam, NET_OUT_MAKE_TOKEN* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetNASDirectoryInfo?????? typedef struct tagNET_IN_NAS_DIRECTORY_GET_INFO { DWORD dwSize; /// ????????,????? char szName[128]; /// ?????????????, ????????????????, ???????? }NET_IN_NAS_DIRECTORY_GET_INFO; ///@brief NAS?? typedef enum tagEM_NAS_STATE_TYPE { EM_NAS_STATE_TYPE_UNKNOWN, /// ??? EM_NAS_STATE_TYPE_ACTIVE, /// ???? EM_NAS_STATE_TYPE_LVFAILED, /// LV?? EM_NAS_STATE_TYPE_INACTIVE, /// ???? EM_NAS_STATE_TYPE_VGFAILED, /// LV??????VG?? EM_NAS_STATE_TYPE_NOTSTARTED, /// ?????????? } EM_NAS_STATE_TYPE; ///@brief CLIENT_GetNASDirectoryInfo?????? typedef struct tagNET_OUT_NAS_DIRECTORY_GET_INFO { DWORD dwSize; /// ????????,????? UINT nFreeSpace; /// ?????, ????MB UINT nTotalSpace; /// ????, ????MB EM_NAS_STATE_TYPE emState; /// NAS?? }NET_OUT_NAS_DIRECTORY_GET_INFO; ///@brief ????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetNASDirectoryInfo(LLONG lLoginID,const NET_IN_NAS_DIRECTORY_GET_INFO* pstInParam, NET_OUT_NAS_DIRECTORY_GET_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_GetFileManagerExFileInfoByPath?????? typedef struct tagNET_IN_GET_FILE_INFO_BY_PATH_INFO { DWORD dwSize; /// ????????,????? char szPath[256]; /// ??????? }NET_IN_GET_FILE_INFO_BY_PATH_INFO; ///@brief ???????? typedef enum tagEM_FILE_UPDATE_STATE { EM_FILE_UPDATE_STATE_UNKNOWN, /// ??? EM_FILE_UPDATE_STATE_UPLOADING, /// ??????? EM_FILE_UPDATE_STATE_PAUSED, /// ??????? EM_FILE_UPDATE_STATE_SUCCEEDED, /// ?????? } EM_FILE_UPDATE_STATE; ///@brief CLIENT_GetFileManagerExFileInfoByPath?????? typedef struct tagNET_OUT_GET_FILE_INFO_BY_PATH_INFO { DWORD dwSize; /// ????????,????? EM_FILE_UPDATE_STATE emState; /// ???????? NET_TIME_EX stuStartTime; /// ????????? NET_TIME_EX stuEndTime; /// ?????????? UINT nProgress; /// ?????????? UINT nCurrentSlice; /// ??????(????????????????) TP_U64 nFileLength; /// ??????? int nReason; /// ??????? /// 0: ?????? /// 1: ??????????? /// 2: ????????????? /// 3: ???????? /// 4: ????????????? /// 5: ????????? /// 6: ????????? /// 7: ???????? /// 8: ???????????? /// 9: ?????? char szReserved[4]; /// ?????? }NET_OUT_GET_FILE_INFO_BY_PATH_INFO; ///@brief ?????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFileManagerExFileInfoByPath(LLONG lLoginID,const NET_IN_GET_FILE_INFO_BY_PATH_INFO* pstInParam, NET_OUT_GET_FILE_INFO_BY_PATH_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_GetStorageTankInfo?????? typedef struct tagNET_IN_GET_STORAGE_TANK_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_STORAGE_TANK_INFO; ///@brief ???????? typedef struct tagNET_STORAGE_TANK_INFO { int nSlotNum; /// ???????????? char szReserved[2044]; /// ??????? }NET_STORAGE_TANK_INFO; ///@brief CLIENT_GetStorageTankInfo?????? typedef struct tagNET_OUT_GET_STORAGE_TANK_INFO { DWORD dwSize; /// ????????,????? int nTankInfoNum; /// ????????? NET_STORAGE_TANK_INFO stuTankInfo[32]; /// ???????? }NET_OUT_GET_STORAGE_TANK_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStorageTankInfo(LLONG lLoginID,const NET_IN_GET_STORAGE_TANK_INFO* pstuInParam, NET_OUT_GET_STORAGE_TANK_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_AddOSDText?????? typedef struct tagNET_IN_ADD_OSD_TEXT_INFO { DWORD dwSize; /// ????????,????? int nType; /// ?????????, 0 ??GPS??????????? int nChannelNum; /// ?????????????? int nChannel[16]; /// ??????????? char szText[256]; /// ??????????? UINT nDuration; /// ??????????, 0????????????????????????, ????????????????, ?????? }NET_IN_ADD_OSD_TEXT_INFO; ///@brief CLIENT_AddOSDText?????? typedef struct tagNET_OUT_ADD_OSD_TEXT_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ADD_OSD_TEXT_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddOSDText(LLONG lLoginID,const NET_IN_ADD_OSD_TEXT_INFO* pstuInParam, NET_OUT_ADD_OSD_TEXT_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_STREAM_DATA_FILE_INFO { char szDestFile[70]; /// ????????????????????? char szResvered1[2]; /// ??????1 char szDestPath[128]; /// ?????????????? char szDestFileName[128]; /// ????????? UINT nIndex; /// ?????????????1??????????, ????????????????????0 char szResvered[1024]; /// ?????? }NET_STREAM_DATA_FILE_INFO; ///@brief CLIENT_AttachStartStreamData??????? typedef struct tagNET_CB_START_STREAM_DATA_INFO { NET_STREAM_DATA_FILE_INFO stuFileInfo; /// ????????????? BOOL bEOF; /// ????????? UINT nProgress; /// ??????????, ????, ????[0, 100] char szReserved[2048]; /// ?????? }NET_CB_START_STREAM_DATA_INFO; ///@brief CLIENT_AttachStartStreamData???????? typedef void (CALLBACK *fStartStreamDataCallBack)(LLONG lAttachHandle, NET_CB_START_STREAM_DATA_INFO* pstuStartStreamData, LDWORD dwUser, BYTE *pBuffer, DWORD dwBufSize); ///@brief CLIENT_AttachStartStreamData ?????????? typedef struct tagNET_IN_ATTACH_START_STREAM_DATA { DWORD dwSize; /// ????????,????? fStartStreamDataCallBack cbStartStreamData; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_START_STREAM_DATA; ///@brief CLIENT_AttachStartStreamData ?????????? typedef struct tagNET_OUT_ATTACH_START_STREAM_DATA { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_START_STREAM_DATA; ///@brief ????????????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachStartStreamData(LLONG lLoginID, NET_IN_ATTACH_START_STREAM_DATA* pstuInParam, NET_OUT_ATTACH_START_STREAM_DATA* pstuOutParam , int nWaitTime); ///@brief ?????????????? ///@param[in] lAttachHandle ??????????? ///@return TRUE??????, FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachStopStreamData(LLONG lAttachHandle); ///@brief ????????? typedef struct tagNET_HEATMAP_META_DATA_INFO { UINT nObjectID; /// ???ID int nPersonX; /// ???????X??8192??????? int nPersonY; /// ???????Y??8192??????? UINT nDuration; /// ??????????????? NET_TIME stuStartTime; /// ?????? char szResvered[256]; /// ?????? }NET_HEATMAP_META_DATA_INFO; ///@brief CLIENT_AttachHeatMapMetaData??????? typedef struct tagNET_CB_HEATMAP_META_DATA_INFO { UINT nChannel; /// ????? int nMetaDataInfoNum; /// ????????????? NET_HEATMAP_META_DATA_INFO* pstuMetaDataInfo; /// ????????? char szReserved[256]; /// ?????? }NET_CB_HEATMAP_META_DATA_INFO; ///@brief ??????????????????????, lAttachHandle ? CLIENT_AttachHeatMapMetaData ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuMassPackageStatistics ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fHeatMapMetaDataCallBack)(LLONG lAttachHandle, NET_CB_HEATMAP_META_DATA_INFO* pstuHeatMapMetaData, LDWORD dwUser); ///@brief ???????????????? typedef struct tagNET_HEATMAP_META_DATA_CONDITION { UINT nOverX; /// ???????X????????? UINT nOverY; /// ???????Y????????? UINT nOverTimeUpload; /// ?????????????????????? UINT nOverPieceUpload; /// ???????????????????????? char szResvered[128]; /// ?????? }NET_HEATMAP_META_DATA_CONDITION; ///@brief CLIENT_AttachHeatMapMetaData ?????????? typedef struct tagNET_IN_ATTACH_HEATMAP_META_DATA { DWORD dwSize; /// ????????,????? int nChannel; /// ????????? char szResvered[4]; /// ?????? BOOL bSetCondition; /// ??????????????? NET_HEATMAP_META_DATA_CONDITION stuCondition; /// ???????? fHeatMapMetaDataCallBack cbHeatMapMetaData; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_HEATMAP_META_DATA; ///@brief CLIENT_AttachHeatMapMetaData ?????????? typedef struct tagNET_OUT_ATTACH_HEATMAP_META_DATA { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_HEATMAP_META_DATA; ///@brief ????????????? ///@param[in] lLoginID: ?????? ///@param[in] pstuInParam: ??????????, ??????????????????? ///@param[out] pstuOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachHeatMapMetaData(LLONG lLoginID, NET_IN_ATTACH_HEATMAP_META_DATA* pstuInParam, NET_OUT_ATTACH_HEATMAP_META_DATA* pstuOutParam , int nWaitTime); ///@brief ???????????????? ///@param[in] lAttachHandle ??????????? ///@return TRUE??????, FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachHeatMapMetaData(LLONG lAttachHandle); ///@brief CLIENT_GetDevVideoInputCollect?????? typedef struct tagNET_IN_GET_DEV_VIDEO_INPUT_COLLECT { DWORD dwSize; /// ??????? }NET_IN_GET_DEV_VIDEO_INPUT_COLLECT; ///@brief CLIENT_GetDevVideoInputCollect?????? typedef struct tagNET_OUT_GET_DEV_VIDEO_INPUT_COLLECT { DWORD dwSize; /// ??????? UINT nChannels; /// ???????????? }NET_OUT_GET_DEV_VIDEO_INPUT_COLLECT; ///@brief ???????????????, pstuInParam??pstuOutParam??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevVideoInputCollect(LLONG lLoginID, NET_IN_GET_DEV_VIDEO_INPUT_COLLECT* pstuInParam, NET_OUT_GET_DEV_VIDEO_INPUT_COLLECT* pstuOutParam, int nWaitTime); ///@brief ????????????????? typedef struct tagNET_NOTIFY_HOOK_DATA_INFO { UINT nType; /// ????????? UINT nMessage; /// ??????? UINT nParam1; /// ??????? UINT nParam2; /// ????????? char szReserved[1024]; /// ??????? }NET_NOTIFY_HOOK_DATA_INFO; ///@brief ????????????????????????????, lAttachHookHandle?CLIENT_AttachHook???????? ///@param[out] lAttachHookHandle ?????? ///@param[out] pstuHookDataInfo ????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyHookData)(LLONG lAttachHookHandle, NET_NOTIFY_HOOK_DATA_INFO* pstuHookDataInfo, LDWORD dwUser); ///@brief CLIENT_AttachHook?????? typedef struct tagNET_IN_ATTACH_HOOK { DWORD dwSize; /// ????????,????? fNotifyHookData cbNotifyHookData; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_HOOK; ///@brief CLIENT_AttachHook?????? typedef struct tagNET_OUT_ATTACH_HOOK { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_HOOK; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachHook(LLONG lLoginID, const NET_IN_ATTACH_HOOK* pstuInParam, NET_OUT_ATTACH_HOOK* pstuOutParam, int nWaitTime); ///@brief ?????????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachHook(LLONG lAttachHandle); ///@brief ?????????????????? typedef struct tagNET_NOTIFY_GYRO_DATA_INFO { double dbAngularSpeedX; /// X???????????rad/s double dbAngularSpeedY; /// Y???????????rad/s double dbAngularSpeedZ; /// z???????????rad/s double dbAccelX; /// X???????????m/s^2 double dbAccelY; /// Y???????????m/s^2 double dbAccelZ; /// Z???????????m/s^2 char szReserved[1024]; /// ??????? }NET_NOTIFY_GYRO_DATA_INFO; ///@brief ?????????????????????????, lAttachGyroHandle?CLIENT_AttachGyro???????? ///@param[out] lAttachGyroHandle ?????? ///@param[out] pstuGyroDataInfo ???????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyGyroData)(LLONG lAttachGyroHandle, NET_NOTIFY_GYRO_DATA_INFO* pstuGyroDataInfo, LDWORD dwUser); ///@brief CLIENT_AttachGyro?????? typedef struct tagNET_IN_ATTACH_GYRO { DWORD dwSize; /// ????????,????? fNotifyGyroData cbNotifyGyroData; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_GYRO; ///@brief CLIENT_AttachGyro?????? typedef struct tagNET_OUT_ATTACH_GYRO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_GYRO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachGyro(LLONG lLoginID,const NET_IN_ATTACH_GYRO* pstuInParam, NET_OUT_ATTACH_GYRO* pstuOutParam, int nWaitTime); ///@brief ?????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachGyro(LLONG lAttachHandle); ///@brief CLIENT_SetArchivePlan?????? typedef struct tagNET_IN_SET_ARCHIVE_PLAN { DWORD dwSize; /// ??????? char szChannelID[64]; /// ???ID char szChannelName[64]; /// ??????? DH_TSECT stuTimeSection[8][24]; ///???????? int nVideoStream; /// ?????????0-?????1-????????2-??????1??3-??????2 }NET_IN_SET_ARCHIVE_PLAN; ///@brief CLIENT_SetArchivePlan?????? typedef struct tagNET_OUT_SET_ARCHIVE_PLAN { DWORD dwSize; /// ??????? }NET_OUT_SET_ARCHIVE_PLAN; ///@brief ??????r??? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetArchivePlan(LLONG lLoginID, const NET_IN_SET_ARCHIVE_PLAN* pstuInParam, NET_OUT_SET_ARCHIVE_PLAN* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveArchivePlans?????? typedef struct tagNET_IN_REMOVE_ARCHIVE_PLANS { DWORD dwSize; /// ??????? int nChannelIDNum; /// ???ID???? char szChannelIDs[64][1024]; /// ???ID???? }NET_IN_REMOVE_ARCHIVE_PLANS; ///@brief CLIENT_RemoveArchivePlans?????? typedef struct tagNET_OUT_REMOVE_ARCHIVE_PLANS { DWORD dwSize; /// ??????? }NET_OUT_REMOVE_ARCHIVE_PLANS; ///@brief ?????r??? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveArchivePlans(LLONG lLoginID, const NET_IN_REMOVE_ARCHIVE_PLANS* pstuInParam, NET_OUT_REMOVE_ARCHIVE_PLANS* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetArchivePlanStat?????? typedef struct tagNET_IN_GET_ARCHIVE_PLAN_STAT { DWORD dwSize; /// ??????? }NET_IN_GET_ARCHIVE_PLAN_STAT; ///@brief CLIENT_GetArchivePlanStat?????? typedef struct tagNET_OUT_GET_ARCHIVE_PLAN_STAT { DWORD dwSize; /// ??????? UINT nMaxPlanNum; /// ????r????? UINT nInUsePlanNum; /// ????????r????? UINT nRemovedPlanNum; /// ????????r????? }NET_OUT_GET_ARCHIVE_PLAN_STAT; ///@brief ?????r??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetArchivePlanStat(LLONG lLoginID, const NET_IN_GET_ARCHIVE_PLAN_STAT* pstuInParam, NET_OUT_GET_ARCHIVE_PLAN_STAT* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetArchivePlanInfos?????? typedef struct tagNET_IN_GET_ARCHIVE_PLAN_INFOS { DWORD dwSize; /// ??????? UINT nQueryType; /// ??r????????????0-??????????r?????1-???????????r?????2-???????????r????? }NET_IN_GET_ARCHIVE_PLAN_INFOS; ///@brief ??r?????? typedef struct tagNET_ARCHIVE_PLAN_INFOS { char szChannelID[64]; /// ???ID char szChannelName[64]; /// ??????? DH_TSECT stuTimeSection[8][24]; /// ???????? char szRealRtspURL[256]; /// ????RTSP??? int nVideoStream; /// ?????????0-?????1-????????2-??????1??3-??????2 UINT nStatus; /// ??r?????????UINT_MAX - ?????0-??r?????????1-??r???????2-??r?????????? NET_TIME stuLastArchivedTime; /// ?????r????? NET_TIME stuLastModifiedTime; /// ????????????r???????? char szReserved[1024]; /// ??????? }NET_ARCHIVE_PLAN_INFOS; ///@brief CLIENT_GetArchivePlanInfos?????? typedef struct tagNET_OUT_GET_ARCHIVE_PLAN_INFOS { DWORD dwSize; /// ??????? int nMaxArchivePlanCount; /// ??r??????????, ??????? NET_ARCHIVE_PLAN_INFOS* pstuArchivePlanInfo; /// ??r??????????, ?????????? int nRetArchivePlanCount; /// ???????r??????? }NET_OUT_GET_ARCHIVE_PLAN_INFOS; ///@brief ?????r?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetArchivePlanInfos(LLONG lLoginID, const NET_IN_GET_ARCHIVE_PLAN_INFOS* pstuInParam, NET_OUT_GET_ARCHIVE_PLAN_INFOS* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetDeviceSubClass?????? typedef struct tagNET_IN_GET_DEVICE_SUB_CLASS { DWORD dwSize; /// ??????? }NET_IN_GET_DEVICE_SUB_CLASS; ///@brief CLIENT_GetDeviceSubClass?????? typedef struct tagNET_OUT_GET_DEVICE_SUB_CLASS { DWORD dwSize; /// ??????? char szType[16]; /// ????????? }NET_OUT_GET_DEVICE_SUB_CLASS; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDeviceSubClass(LLONG lLoginID, const NET_IN_GET_DEVICE_SUB_CLASS* pstuInParam, NET_OUT_GET_DEVICE_SUB_CLASS* pstuOutParam, int nWaitTime); ///@brief CLIENT_StartRemoteBackupTask?????? typedef struct tagNET_IN_START_REMOTE_BACKUP_TASK { DWORD dwSize; /// ??????? char szDeviceIP[64]; /// ???????IP char szAPMac[64]; /// ?????????????????????mac??? }NET_IN_START_REMOTE_BACKUP_TASK; ///@brief CLIENT_StartRemoteBackupTask?????? typedef struct tagNET_OUT_START_REMOTE_BACKUP_TASK { DWORD dwSize; /// ??????? }NET_OUT_START_REMOTE_BACKUP_TASK; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartRemoteBackupTask(LLONG lLoginID, const NET_IN_START_REMOTE_BACKUP_TASK* pstuInParam, NET_OUT_START_REMOTE_BACKUP_TASK* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetThermoReceptorParam ??? typedef struct tagNET_IN_GET_THERMO_RECEPTOR_PARAM_INFO { DWORD dwSize; int nChannel; /// ???????? } NET_IN_GET_THERMO_RECEPTOR_PARAM_INFO; ///@brief CLIENT_GetThermoReceptorParam ???? typedef struct tagNET_OUT_GET_THERMO_RECEPTOR_PARAM_INFO { DWORD dwSize; int nHourseTemp; /// ??????, ??[-273,1000](????0.01,??????????100??????0.00) int nTECTemp; /// TEC???, ??[-273,1000](????0.01,??????????100??????0.00) int nBoardTemp; /// ?????????, ??[-273,1000](????0.01,??????????100??????0.00) } NET_OUT_GET_THERMO_RECEPTOR_PARAM_INFO; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetThermoReceptorParam(LLONG lLoginID, const NET_IN_GET_THERMO_RECEPTOR_PARAM_INFO* pstuInParam, NET_OUT_GET_THERMO_RECEPTOR_PARAM_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? typedef struct tagNET_MANUALSNAP_BY_EVENT_INFO { UINT nPresetID; /// ?????????????????1???, 0?????? int nEventCode; /// 0:ShopSignAbnormal????????? 1:ChangeDetection?????? UINT nTimes; /// ??????? char szReserved[124]; /// ??????? }NET_MANUALSNAP_BY_EVENT_INFO; ///@brief CLIENT_ManualSnapByEvent ??? typedef struct tagNET_IN_MANUALSNAP_BY_EVENT_INFO { DWORD dwSize; /// ??????? UINT nChannel; /// ????? NET_MANUALSNAP_BY_EVENT_INFO stuInfo; /// ?????????? } NET_IN_MANUALSNAP_BY_EVENT_INFO; ///@brief CLIENT_ManualSnapByEvent ???? typedef struct tagNET_OUT_MANUALSNAP_BY_EVENT_INFO { DWORD dwSize; /// ??????? } NET_OUT_MANUALSNAP_BY_EVENT_INFO; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ManualSnapByEvent(LLONG lLoginID, const NET_IN_MANUALSNAP_BY_EVENT_INFO* pstuInParam, NET_OUT_MANUALSNAP_BY_EVENT_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_StartAsyncDiagnosis ??? typedef struct tagNET_IN_START_ASYNC_DIAGNOSIS_INFO { DWORD dwSize; /// ??????? } NET_IN_START_ASYNC_DIAGNOSIS_INFO; ///@brief CLIENT_StartAsyncDiagnosis ???? typedef struct tagNET_OUT_START_ASYNC_DIAGNOSIS_INFO { DWORD dwSize; /// ??????? } NET_OUT_START_ASYNC_DIAGNOSIS_INFO; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartAsyncDiagnosis(LLONG lLoginID, const NET_IN_START_ASYNC_DIAGNOSIS_INFO* pstuInParam, NET_OUT_START_ASYNC_DIAGNOSIS_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_XRAY_DIAGNOSIS_STATE_INFO { int nState; /// ?? -1:??? 0:????? 1:???????? 2:???????? 3:??? 4:??? int nFailReason; /// ?????? -1:??? 0:?????? 1:???????? int nConfirmResult; /// ???????? -1:??? 0:?????? 1:??? 2:???????? 3:???????? int nProgress; /// ???? 0~100 UINT nReportOffset; /// ???????????????? UINT nReportLength; /// ???????????????? int nDiagnosisResult; /// ????? -1:??? 0:?????? 1:???? 2:?? char szResvered[1020]; /// ??????? }NET_XRAY_DIAGNOSIS_STATE_INFO; ///@brief ??????????????????? typedef struct tagNET_NOTIFY_XRAY_DIAGNOSIS_STATE { NET_XRAY_DIAGNOSIS_STATE_INFO stuStateInfo; /// ????????????? const char* pBuffer; /// ??????????????? int nBufferLen; /// ???????????????? char szResvered[1020]; /// ??????? }NET_NOTIFY_XRAY_DIAGNOSIS_STATE; ///@brief ???????????????????, lAttachHandle ? CLIENT_AttachDiagnosisState ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuXRayDiagnosisState ?????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyXRayDiagnosisState)(LLONG lAttachHandle, NET_NOTIFY_XRAY_DIAGNOSIS_STATE* pstuXRayDiagnosisState, LDWORD dwUser); ///@brief CLIENT_AttachDiagnosisState ??? typedef struct tagNET_IN_ATTACH_DIAGNOSIS_STATE_INFO { DWORD dwSize; /// ???????? fNotifyXRayDiagnosisState cbNotifyXRayDiagnosisState; /// ??????? LDWORD dwUser; /// ??????????? } NET_IN_ATTACH_DIAGNOSIS_STATE_INFO; ///@brief CLIENT_AttachDiagnosisState ???? typedef struct tagNET_OUT_ATTACH_DIAGNOSIS_STATE_INFO { DWORD dwSize; /// ??????? } NET_OUT_ATTACH_DIAGNOSIS_STATE_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachDiagnosisState(LLONG lLoginID, const NET_IN_ATTACH_DIAGNOSIS_STATE_INFO* pstuInParam, NET_OUT_ATTACH_DIAGNOSIS_STATE_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachDiagnosisState(LLONG lAttachHandle); ///@brief CLIENT_GetDiagnosisState ??? typedef struct tagNET_IN_GET_DIAGNOSIS_STATE_INFO { DWORD dwSize; /// ???????? } NET_IN_GET_DIAGNOSIS_STATE_INFO; ///@brief CLIENT_GetDiagnosisState ???? typedef struct tagNET_OUT_GET_DIAGNOSIS_STATE_INFO { DWORD dwSize; /// ??????? char szReserved[4]; /// ?????? NET_XRAY_DIAGNOSIS_STATE_INFO stuStateInfo; /// ????????????? char* pBuffer; /// ??????????????, ??????????,?????nBufferLen int nBufferLen; /// ??????????? int nBufferRet; /// ?????????? } NET_OUT_GET_DIAGNOSIS_STATE_INFO; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDiagnosisState(LLONG lLoginID, const NET_IN_GET_DIAGNOSIS_STATE_INFO* pstuInParam, NET_OUT_GET_DIAGNOSIS_STATE_INFO* pstuOutParam, int nWaitTime); /////////////////////////////////////////// IVS???????????????? ??? (??IVS??????)////////////////////////////////////////// ///@brief CLIENT_IVSEventFind?????? typedef struct tagNET_IN_IVSEVENT_FIND_INFO { DWORD dwSize; /// ????????,????? int nVaild; /// ??????????? /// 0:??? /// 1:?????? /// 2:??? /// 3:???? /// 4:?????????? /// 5:???????? NET_TIME stStartTime; /// ????????? NET_TIME stEndTime; /// ?????????? int nChannelList[128]; /// ????????? DWORD dwChannelCnt; /// nChannelList??????????????,??0??????????????? DWORD dwEventCodeCnt; /// dwEventCodeList?????????????????? DWORD dwEventCodeList[128]; /// ???????????????,???? EVENT_IVS_ALL ????????????????????? /// ???,???????????????????,????????????IVS??????????,???????????????????? }NET_IN_IVSEVENT_FIND_INFO; ///@brief CLIENT_IVSEventFind?????? typedef struct tagNET_OUT_IVSEVENT_FIND_INFO { DWORD dwSize; /// ????????,????? DWORD dwCount; /// ???????????? }NET_OUT_IVSEVENT_FIND_INFO; ///@brief CLIENT_IVSEventNextFind?????? typedef struct tagNET_IN_IVSEVENT_NEXTFIND_INFO { DWORD dwSize; /// ????????,????? unsigned int nStartIndex; /// ????????? unsigned int nLimit; /// ??????????????? }NET_IN_IVSEVENT_NEXTFIND_INFO; ///@brief ?????????????? typedef struct tagNET_IVSEVENT_EVENT_INFO { int nChannel; /// ????? ??0???,-1??????????? DWORD nId; /// ?????? DWORD dwEventCode; /// ???????,???????? EVENT_IVS_ALL ??????????????????? int nVaild; /// ??????????? /// 0:??? /// 1:?????? /// 2:??? /// 3:???? /// 4:?????????? /// 5:???????? NET_TIME_EX stuTime; /// ???????????? char szChannel[32]; /// ?????,???????? BYTE byReserved[988]; /// ??????? }NET_IVSEVENT_EVENT_INFO; ///@brief CLIENT_IVSEventNextFind?????? typedef struct tagNET_OUT_IVSEVENT_NEXTFIND_INFO { DWORD dwSize; /// ????????,????? DWORD dwEventCnt; /// pstuEventInfo?????, ???? NET_IN_IVSEVENT_NEXTFIND_INFO ??nLimit??? NET_IVSEVENT_EVENT_INFO* pstuEventInfo; /// ??????????,??????????,?????sizeof(NET_IVSEVENT_EVENT_INFO)*dwEventCnt DWORD dwRetEventCnt; /// ?????pstuEventInfo???? }NET_OUT_IVSEVENT_NEXTFIND_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????? ??0??????,0?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_IVSEventFind(LLONG lLoginID,const NET_IN_IVSEVENT_FIND_INFO* pstInParam, NET_OUT_IVSEVENT_FIND_INFO* pstOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lFindHandle ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IVSEventNextFind(LLONG lFindHandle, const NET_IN_IVSEVENT_NEXTFIND_INFO* pstInParam, NET_OUT_IVSEVENT_NEXTFIND_INFO* pstOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lFindHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IVSEventFindClose(LLONG lFindHandle); ///@brief ??????????? typedef struct tagNET_IVSEVENT_DATA { DWORD dwAlarmType; /// ???????,?????????????????? EVENT_IVS_ALL int datalen; /// ???????????????????? void* data; /// ???????????????????? char szReserved[64]; /// ??????? } NET_IVSEVENT_DATA; ///@brief ????????? typedef struct tagNET_IVSEVENT_DETAIL_INFO { NET_IVSEVENT_DATA stuEventInfo[32]; /// ??????????? int nEventInfoNum; /// ??????????? int nImageInfoNum; /// ????????????? NET_IMAGE_INFO_EX2 stuImageInfo[32]; /// ?????????,???????emType??szPath??????????? char szVideoRtsp[128]; /// ???????rtsp??? char szVideoDownload[128]; /// ????????????????url char szAudioRtsp[128]; /// ???????rtsp??? char szAudioDownload[128]; /// ????????????????url char szIotDownload[256]; /// ???????????????????????url char szReserved[1024]; /// ??????? }NET_IVSEVENT_DETAIL_INFO; ///@brief ?????????????? typedef struct tagNET_NOTIFY_IVSEVENT_DETAIL_INFO { NET_IVSEVENT_DETAIL_INFO* pstuIVSEventDetailInfo; ///??????????????????????????????id????????????? int nIVSEventDetailInfoNum; /// ???????????????? char szReserved[1020]; /// ??????? }NET_NOTIFY_IVSEVENT_DETAIL_INFO; ///@brief ???????????? ///@param[out] pstuNotifyIVSEventDetailInfo ?????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyIVSEventDetail)(NET_NOTIFY_IVSEVENT_DETAIL_INFO* pstuNotifyIVSEventDetailInfo, LDWORD dwUser); ///@brief CLIENT_GetIVSEventDetail?????? typedef struct tagNET_IN_GET_IVSEVENT_DETAIL_INFO { DWORD dwSize; /// ???????? int nIdNum; /// ????????ID???? UINT nId[128]; /// ????????ID???? fNotifyIVSEventDetail cbNotifyIVSEventDetail; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_GET_IVSEVENT_DETAIL_INFO; ///@brief CLIENT_GetIVSEventDetail?????? typedef struct tagNET_OUT_GET_IVSEVENT_DETAIL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_GET_IVSEVENT_DETAIL_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE??????,FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetIVSEventDetail(LLONG lLoginID,const NET_IN_GET_IVSEVENT_DETAIL_INFO* pstuInParam, NET_OUT_GET_IVSEVENT_DETAIL_INFO* pstuOutParam, int nWaitTime); ///////////////////////////////////////////IVS???????????????? ????////////////////////////////////////////// ///@brief ??????????????????????? typedef struct tagNET_NOTIFY_PWD_RESET_STATE_INFO { char szVerifyCode[256]; /// ????? char szResvered[1024]; /// ??????? }NET_NOTIFY_PWD_RESET_STATE_INFO; ///@brief ??????????????????????????, lPwdResetStateHandle ? CLIENT_AttachPwdResetState ???????? ///@param[out] lPwdResetStateHandle ?????? ///@param[out] pstuPwdResetStateNotifyInfo ??????????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyPwdResetState)(LLONG lPwdResetStateHandle, NET_NOTIFY_PWD_RESET_STATE_INFO* pstuPwdResetStateNotifyInfo, LDWORD dwUser); ///@brief CLIENT_AttachPwdResetState ?????? typedef struct tagNET_IN_ATTACH_PWD_RESET_STATE_INFO { DWORD dwSize; /// ????????,????? fNotifyPwdResetState cbfNotifyPwdResetState; /// ???????,??EAS?????????????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_PWD_RESET_STATE_INFO; ///@brief CLIENT_AttachPwdResetState ?????? typedef struct tagNET_OUT_ATTACH_PWD_RESET_STATE_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_PWD_RESET_STATE_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachPwdResetState(LLONG lLoginID, NET_IN_ATTACH_PWD_RESET_STATE_INFO* pstInParam, NET_OUT_ATTACH_PWD_RESET_STATE_INFO* pstOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lPwdResetStateHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachPwdResetState(LLONG lPwdResetStateHandle); ///@brief CLIENT_SendPwdResetRequest ?????? typedef struct tagNET_IN_SEND_PWD_RESET_REQ_INFO { DWORD dwSize; /// ????????,????? char szVerifyCode[256]; /// ????? }NET_IN_SEND_PWD_RESET_REQ_INFO; ///@brief CLIENT_SendPwdResetRequest ?????? typedef struct tagNET_OUT_SEND_PWD_RESET_REQ_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SEND_PWD_RESET_REQ_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SendPwdResetRequest(LLONG lLoginID, NET_IN_SEND_PWD_RESET_REQ_INFO* pstuInParam, NET_OUT_SEND_PWD_RESET_REQ_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef enum tagEM_SEND_PWD_RESET_STATE { EM_SEND_PWD_RESET_STATE_UNKNOWN, /// ??? EM_SEND_PWD_RESET_STATE_SUCCESS, /// ?????? EM_SEND_PWD_RESET_STATE_FAILED, /// ?????? EM_SEND_PWD_RESET_STATE_OVERTIME, /// ????????? }EM_SEND_PWD_RESET_STATE; ///@brief CLIENT_SendCodeCheckResult ?????? typedef struct tagNET_IN_SEND_CODE_CHECK_RESULT_INFO { DWORD dwSize; /// ????????,????? EM_SEND_PWD_RESET_STATE emPwdResetState; /// ???????????? char szVerifyCode[256]; /// ????? }NET_IN_SEND_CODE_CHECK_RESULT_INFO; ///@brief CLIENT_SendCodeCheckResult ?????? typedef struct tagNET_OUT_SEND_CODE_CHECK_RESULT_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SEND_CODE_CHECK_RESULT_INFO; ///@brief ????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SendCodeCheckResult(LLONG lLoginID, NET_IN_SEND_CODE_CHECK_RESULT_INFO* pstuInParam, NET_OUT_SEND_CODE_CHECK_RESULT_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetCodeCheckResult ?????? typedef struct tagNET_IN_GET_CODE_CHECK_RESULT_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_CODE_CHECK_RESULT_INFO; ///@brief ???????????? typedef enum tagEM_PWD_RESET_STATE { EM_PWD_RESET_STATE_UNKNOWN=-1, /// ??? EM_PWD_RESET_STATE_NO_RESULT, /// ????????????????? EM_PWD_RESET_STATE_SUCCESS, /// ?????? EM_PWD_RESET_STATE_FAILED, /// ?????? EM_PWD_RESET_STATE_OVERTIME, /// ????????? }EM_PWD_RESET_STATE; ///@brief CLIENT_GetCodeCheckResult ?????? typedef struct tagNET_OUT_GET_CODE_CHECK_RESULT_INFO { DWORD dwSize; /// ????????,????? EM_PWD_RESET_STATE emPwdResetState; /// ???????????? }NET_OUT_GET_CODE_CHECK_RESULT_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetCodeCheckResult(LLONG lLoginID, NET_IN_GET_CODE_CHECK_RESULT_INFO* pstuInParam, NET_OUT_GET_CODE_CHECK_RESULT_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? typedef struct tagDEV_SCADA_DATA_INFO { char szID[32]; /// ????ID NET_TIME_EX stuTime; /// ????????????utc int nStatus; /// ????????0????????1????????, -1???????????? char szType[8]; /// ?????????YC????? char szUnit[8]; /// ??????????????m/s???? float fSetupVal; /// ???? float fMeasuredVal; /// ???????? char szAddress[16]; /// ????104?????????????104????????? char szResvered[256]; /// ??????? }DEV_SCADA_DATA_INFO; ///@brief ???????????? typedef struct tagNET_NOTIFY_SCADA_DATA_INFO { char szDeviceId[256]; /// ????????ID int nDataInfoNum; /// ?????????????????????? DEV_SCADA_DATA_INFO stuDataInfo[128]; /// ?????????? char szResvered[1024]; /// ??????? }NET_NOTIFY_SCADA_DATA_INFO; ///@brief ???????????????????????, lSCADADataHandle ? CLIENT_AttachSCADAData ???????? ///@param[out] lSCADADataHandle ?????? ///@param[out] pstuSCADADataNotifyInfo ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifySCADAData)(LLONG lSCADADataHandle, NET_NOTIFY_SCADA_DATA_INFO* pstuSCADADataNotifyInfo, LDWORD dwUser); ///@brief CLIENT_AttachSCADAData ?????? typedef struct tagNET_IN_ATTACH_SCADA_DATA_INFO { DWORD dwSize; /// ????????,????? fNotifySCADAData cbfNotifySCADAData; /// ???????, ??????????????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_SCADA_DATA_INFO; ///@brief CLIENT_AttachSCADAData ?????? typedef struct tagNET_OUT_ATTACH_SCADA_DATA_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_SCADA_DATA_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSCADAData(LLONG lLoginID, NET_IN_ATTACH_SCADA_DATA_INFO* pstInParam, NET_OUT_ATTACH_SCADA_DATA_INFO* pstOutParam, int nWaitTime); ///@brief ?????????????? ///@param[in] lSCADADataHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSCADAData(LLONG lSCADADataHandle); ///@brief CLIENT_GetGpsStatus ?????? typedef struct tagNET_IN_GET_GPS_STATUS_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_GPS_STATUS_INFO; ///@brief CLIENT_GetGpsStatus ?????? typedef struct tagNET_OUT_GET_GPS_STATUS_INFO { DWORD dwSize; /// ????????,????? NET_GPS_STATUS_INFO stuGPSStatus; /// GPS?? }NET_OUT_GET_GPS_STATUS_INFO; ///@brief ???GPS??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetGpsStatus(LLONG lLoginID, NET_IN_GET_GPS_STATUS_INFO* pstuInParam, NET_OUT_GET_GPS_STATUS_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetPTZDueNorthDirectionAngle ?????? typedef struct tagNET_IN_GET_PTZ_NORTH_ANGLE_INFO { DWORD dwSize; /// ????????,????? int nChannel; /// ????? }NET_IN_GET_PTZ_NORTH_ANGLE_INFO; ///@brief CLIENT_GetPTZDueNorthDirectionAngle ?????? typedef struct tagNET_OUT_GET_PTZ_NORTH_ANGLE_INFO { DWORD dwSize; /// ????????,????? char szReserved[4]; /// ?????? double dbAngle; /// ?????????????0~360 }NET_OUT_GET_PTZ_NORTH_ANGLE_INFO; ///@brief ?????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetPTZDueNorthDirectionAngle(LLONG lLoginID, NET_IN_GET_PTZ_NORTH_ANGLE_INFO* pstuInParam, NET_OUT_GET_PTZ_NORTH_ANGLE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_CalcWorkTime ?????? typedef struct tagNET_IN_CALC_WORK_TIME { DWORD dwSize; /// ????????,????? int nType; /// ???????????????, 0: ???????????????, 1: ???????????????? char szUserID[32]; /// ?????? char szUserName[128]; /// ??????? float fRemainingOvertimeLimit; /// ??????? BOOL bResult; /// ???????????,Type?1?????? float fDailyRemainingLimit; /// ?????????????? float fWeeklyRemainingLimit; /// ?????????????? float fMonthlyRemainingLimit; /// ?????????????? }NET_IN_CALC_WORK_TIME; ///@brief CLIENT_CalcWorkTime ?????? typedef struct tagNET_OUT_CALC_WORK_TIME { DWORD dwSize; /// ????????,????? }NET_OUT_CALC_WORK_TIME; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CalcWorkTime(LLONG lLoginID, NET_IN_CALC_WORK_TIME* pstuInParam, NET_OUT_CALC_WORK_TIME* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetTrafficFlowStatCaps ?????? typedef struct tagNET_IN_GET_TRAFFIC_FLOW_STAT_CAPS { DWORD dwSize; /// ????????,????? }NET_IN_GET_TRAFFIC_FLOW_STAT_CAPS; ///@brief CLIENT_GetTrafficFlowStatCaps ?????? typedef struct tagNET_OUT_GET_TRAFFIC_FLOW_STAT_CAPS { DWORD dwSize; /// ????????,????? UINT nSupportRealFlowStatCaps; /// ?????????????????????, 0:???, 1:?????????????, 2:???????????????? UINT nSupportPeriodFlowStatCaps; /// ??????????????????????,(TrafficFlowStat???) 0:???, 1:?????????????, 2:???????????????? }NET_OUT_GET_TRAFFIC_FLOW_STAT_CAPS; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetTrafficFlowStatCaps(LLONG lLoginID, NET_IN_GET_TRAFFIC_FLOW_STAT_CAPS* pstuInParam, NET_OUT_GET_TRAFFIC_FLOW_STAT_CAPS* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetEncodeBitrate ?????? typedef struct tagNET_IN_GET_ENCODE_BITRATE { DWORD dwSize; /// ????????,????? int nChannelCount; /// ???????? int nChannels[1024]; /// ??????????? }NET_IN_GET_ENCODE_BITRATE; ///@brief CLIENT_GetEncodeBitrate ?????? typedef struct tagNET_OUT_GET_ENCODE_BITRATE { DWORD dwSize; /// ????????,????? int nRetBitrateCount; /// ?????????? int nBitrareCount[1024]; /// ??????????????? }NET_OUT_GET_ENCODE_BITRATE; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEncodeBitrate(LLONG lLoginID, NET_IN_GET_ENCODE_BITRATE* pstuInParam, NET_OUT_GET_ENCODE_BITRATE* pstuOutParam, int nWaitTime); //////////////////////////////////////// ///@brief ????????????? typedef struct tagNET_CENTRAL_CHECK_RESP_INFO { UINT nAction; /// 0:?????? 1:?????????? int nDoorChannel; /// ?????, nAction???????????? char szTransID[36]; /// ????ID,???????????????ID char szUserID[32]; /// ??????ID, ???nAction?????????? char szReaderID[32]; /// ???????ID, ???nAction?????????? char szResvered[1024]; /// ??????? }NET_CENTRAL_CHECK_RESP_INFO; ///@brief ?????????????????D???????????? typedef struct tagNET_NOTIFY_MULTI_DOOR_CTRL_CHECK_INFO { NET_CENTRAL_CHECK_RESP_INFO stuReq; /// ????????????? char szResvered[1024]; /// ??????? }NET_NOTIFY_MULTI_DOOR_CTRL_CHECK_INFO; ///@brief ?????????????????D???????????????, lCheckCentraMultiDoorCtrlHandle ? CLIENT_AttachCheckCentraMultiDoorCtrl ???????? ///@param[out] lCheckCentraMultiDoorCtrlHandle ?????? ///@param[out] pstuMultiDoorCtrlCheckNotifyInfo ????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyCentraMultiDoorCtrlCheck)(LLONG lCheckCentraMultiDoorCtrlHandle, NET_NOTIFY_MULTI_DOOR_CTRL_CHECK_INFO* pstuMultiDoorCtrlCheckNotifyInfo, LDWORD dwUser); ///@brief CLIENT_AttachCheckCentraMultiDoorCtrl ?????? typedef struct tagNET_IN_ATTACH_CHECK_CENTRA_MULTI_DOOR_CTRL_INFO { DWORD dwSize; /// ????????,????? fNotifyCentraMultiDoorCtrlCheck cbfNotifyCentraMultiDoorCtrlCheck; /// ???????, ????????????? UINT nAction; /// ????????????????????, 0:?????? , 1:?????????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_CHECK_CENTRA_MULTI_DOOR_CTRL_INFO; ///@brief CLIENT_AttachCheckCentraMultiDoorCtrl ?????? typedef struct tagNET_OUT_ATTACH_CHECK_CENTRA_MULTI_DOOR_CTRL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_CHECK_CENTRA_MULTI_DOOR_CTRL_INFO; ///@brief ?????????????????D?????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachCheckCentraMultiDoorCtrl(LLONG lLoginID, NET_IN_ATTACH_CHECK_CENTRA_MULTI_DOOR_CTRL_INFO* pstInParam, NET_OUT_ATTACH_CHECK_CENTRA_MULTI_DOOR_CTRL_INFO* pstOutParam, int nWaitTime); ///@brief ?????????????????D????? ///@param[in] lCheckCentraMultiDoorCtrlHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachCheckCentraMultiDoorCtrl(LLONG lCheckCentraMultiDoorCtrlHandle); ///@brief CLIENT_SetCheckResultByCentra ?????? typedef struct tagNET_IN_CENTRA_CHECK_RESULT_INFO { DWORD dwSize; /// ????????,????? UINT nAction; /// 0:?????? 1:?????????? char szTransID[36]; /// ????ID UINT nAntiSumarineResult; /// ?????????? 0?????????????? 1???????????,???Action???????? UINT nInterLockResult; /// ????????? 0???????????? 1?????????,???Action????????? }NET_IN_CENTRA_CHECK_RESULT_INFO; ///@brief CLIENT_SetCheckResultByCentra ?????? typedef struct tagNET_OUT_CENTRA_CHECK_RESULT_INFO { DWORD dwSize; /// ????????,????? UINT nErrorCode; /// ????????? 0?????????;1?????????????????????????????????????????????????);2????????????? }NET_OUT_CENTRA_CHECK_RESULT_INFO; ///@brief ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetCheckResultByCentra(LLONG lLoginID, NET_IN_CENTRA_CHECK_RESULT_INFO* pstuInParam, NET_OUT_CENTRA_CHECK_RESULT_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetAntiSubmarineRuleCfg ?????? typedef struct tagNET_IN_ANTI_SUBMARINE_RULE_CFG_INFO { DWORD dwSize; /// ????????,????? int nForceReaderIDsNum; /// ????????ID??????????? int nWeakReaderIDsNum; /// ?????????ID??????????? char szReserved[4]; /// ?????? char szForceReaderIDs[32][16]; /// ????????ID char szWeakReaderIDs[32][16]; /// ?????????ID }NET_IN_ANTI_SUBMARINE_RULE_CFG_INFO; ///@brief CLIENT_SetAntiSubmarineRuleCfg ?????? typedef struct tagNET_OUT_ANTI_SUBMARINE_RULE_CFG_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ANTI_SUBMARINE_RULE_CFG_INFO; ///@brief ?????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetAntiSubmarineRuleCfg(LLONG lLoginID, NET_IN_ANTI_SUBMARINE_RULE_CFG_INFO* pstuInParam, NET_OUT_ANTI_SUBMARINE_RULE_CFG_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetInterLockRule ?????? typedef struct tagNET_IN_INTER_LOCK_RULE_INFO { DWORD dwSize; /// ????????,????? int nForceDoorChannelsNum; /// ???????????ID????A?? int nWeakDoorChannelsNum; /// ????????????ID????A?? UINT szForceDoorChannels[32]; /// ???????????ID UINT szWeakDoorChannels[32]; /// ????????????ID }NET_IN_INTER_LOCK_RULE_INFO; ///@brief CLIENT_SetInterLockRule ?????? typedef struct tagNET_OUT_INTER_LOCK_RULE_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_INTER_LOCK_RULE_INFO; ///@brief ???????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetInterLockRule(LLONG lLoginID, NET_IN_INTER_LOCK_RULE_INFO* pstuInParam, NET_OUT_INTER_LOCK_RULE_INFO* pstuOutParam, int nWaitTime); //////////////////////////////////////// ///@brief ????????????? typedef struct tagNET_SCHEME_INFO { int nSchemeID; /// ??????????ID BOOL bSchemeState; /// ???????????? TRUE ?C ???? FALSE - ??? char szSchemeName[64]; /// ?????????????? int nManSubMode; /// ??????????,???????????? 0:??? 1:???????????? 2:?????? 3:?????? char szResvered[252]; /// ??????? }NET_SCHEME_INFO; ///@brief CLIENT_GetSchemeInfo ??? typedef struct tagNET_IN_GET_SCHEME_INFO { DWORD dwSize; /// ??????? int nSchemeID; /// ??????????ID, -1???????????????????????? }NET_IN_GET_SCHEME_INFO; ///@brief CLIENT_GetSchemeInfo ???? typedef struct tagNET_OUT_GET_SCHEME_INFO { DWORD dwSize; /// ??????? int nSchemeInfoNum; /// ???????????????????????? NET_SCHEME_INFO stuSchemeInfo[32]; /// ???????????????????? }NET_OUT_GET_SCHEME_INFO; ///@brief ????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSchemeInfo(LLONG lLoginID, const NET_IN_GET_SCHEME_INFO *pstuInParam, NET_OUT_GET_SCHEME_INFO *pstuOutParam, const int nWaitTime); ///@brief CLIENT_SetScheme ??? typedef struct tagNET_IN_SET_SCHEME_INFO { DWORD dwSize; /// ??????? int nSchemeID; /// ??????????ID, -1???????????????????????? UINT nTransactionID; /// ????ID 0???????????????1???????????? BOOL bEnable; /// ???????????????? TRUE:???? FALSE:??? }NET_IN_SET_SCHEME_INFO; ///@brief CLIENT_SetScheme ???? typedef struct tagNET_OUT_SET_SCHEME_INFO { DWORD dwSize; /// ??????? }NET_OUT_SET_SCHEME_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetScheme(LLONG lLoginID, const NET_IN_SET_SCHEME_INFO *pstuInParam, NET_OUT_SET_SCHEME_INFO *pstuOutParam, const int nWaitTime); ///@brief ????????????????????? typedef struct tagNET_CHANNEL_LIST_INFO { char szChannelCode[64]; /// ??????? char szChannelName[64]; /// ??????? char szReserved[256]; /// ?????? }NET_CHANNEL_LIST_INFO; ///@brief ??????????? typedef struct tagNET_COMMUNITY_INFO { char szCommunityId[64]; /// ????ID char szCommunityAddr[128]; /// ??????? char szCommunityName[64]; /// ???????? NET_CHANNEL_LIST_INFO stuChannelList[64]; /// ?????? int nChannelListNum; /// ??????????A?? char szReserved[252]; /// ?????? }NET_COMMUNITY_INFO; ///@brief CLIENT_SetCommunityInfo ?????? typedef struct tagNET_IN_SET_COMMUNITY_INFO { DWORD dwSize; /// ????????,????? int nCommunityInfoNum; /// ???????????????A??, ???128 NET_COMMUNITY_INFO* pstuCommunityInfo; /// ???????????, ??????????????, ???????????(sizeof(NET_COMMUNITY_INFO)*nCommunityInfoNum) }NET_IN_SET_COMMUNITY_INFO; ///@brief CLIENT_SetCommunityInfo ?????? typedef struct tagNET_OUT_SET_COMMUNITY_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SET_COMMUNITY_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetCommunityInfo(LLONG lLoginID, NET_IN_SET_COMMUNITY_INFO* pstuInParam, NET_OUT_SET_COMMUNITY_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetRemoteSoftwareVersion ??? typedef struct tagNET_IN_GET_REMOTE_SOFTWAREVERSION_INFO { DWORD dwSize; /// ??????? char szDeviceID[128]; /// DeviceID }NET_IN_GET_REMOTE_SOFTWAREVERSION_INFO; ///@brief CLIENT_GetRemoteSoftwareVersion ???? typedef struct tagNET_OUT_GET_REMOTE_SOFTWAREVERSION_INFO { DWORD dwSize; /// ??????? char szVersion[32]; /// ??????? NET_TIME stuBuildDate; /// ???? char szWebVersion[16]; /// web??????? char szSecurityVersion[8]; /// ????????? }NET_OUT_GET_REMOTE_SOFTWAREVERSION_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRemoteSoftwareVersion(LLONG lLoginID, const NET_IN_GET_REMOTE_SOFTWAREVERSION_INFO* pstuInParam, NET_OUT_GET_REMOTE_SOFTWAREVERSION_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? typedef struct tagNET_NOTIFY_FLOW_STAT_INFO_EX { DEV_EVENT_TRAFFIC_FLOW_STATE stuTrafficFlowStatDataInfo; /// ????????????? char szReserved[2048]; /// ??????? }NET_NOTIFY_FLOW_STAT_INFO_EX; ///@brief ?????????????????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuTrafficFlowStatAnalyseProc ??????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyFlowStatInfoEx)(LLONG lAttachHandle, NET_NOTIFY_FLOW_STAT_INFO_EX* pstuNotifyFlowStatInfoEx, LDWORD dwUser); ///@brief CLIENT_AttachTrafficFlowPeriodStat ??????? typedef struct tagNET_IN_ATTACH_TRAFFIC_FLOW_PERIOD_STAT { DWORD dwSize; /// ????????,????? char szReserved[4]; /// ?????? fNotifyFlowStatInfoEx cbNotifyFlowStatInfoEx; /// ??????? LDWORD dwUser; /// ?????? }NET_IN_ATTACH_TRAFFIC_FLOW_PERIOD_STAT; ///@brief CLIENT_AttachTrafficFlowPeriodStat ??????? typedef struct tagNET_OUT_ATTACH_TRAFFIC_FLOW_PERIOD_STAT { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_TRAFFIC_FLOW_PERIOD_STAT; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachTrafficFlowPeriodStat(LLONG lLoginID, NET_IN_ATTACH_TRAFFIC_FLOW_PERIOD_STAT* pstuInParam, NET_OUT_ATTACH_TRAFFIC_FLOW_PERIOD_STAT* pstuOutParam , int nWaitTime); ///@brief ???????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachTrafficFlowPeriodStat(LLONG lAttachHandle); ///@brief CLIENT_SnapFromRecord ??? typedef struct tagNET_IN_SNAP_FROM_RECORD { DWORD dwSize; /// ??????? UINT nChannel; /// ????? NET_TIME stuTime; /// ????? int nType; /// ???????????: 0: MJPG, 1: PNG, 2: BMP int nSize; /// ?????: 0: ????????, 1: D1, 2: 720P, 3:1080P }NET_IN_SNAP_FROM_RECORD; ///@brief CLIENT_SnapFromRecord ???? typedef struct tagNET_OUT_SNAP_FROM_RECORD { DWORD dwSize; /// ??????? NET_TIME stuTime; /// ???????? UINT nImageSize; /// ??????, ????KB int nRetBufferLen; /// ????????????????, ???????????, ????????????????????????????????? int nBufferLen; /// ????????????, ???????????? char* pBuffer; /// ???????????, ???????????????????nBufferLen }NET_OUT_SNAP_FROM_RECORD; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SnapFromRecord(LLONG lLoginID, const NET_IN_SNAP_FROM_RECORD* pstuInParam, NET_OUT_SNAP_FROM_RECORD* pstuOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_SCHEDULE_IN_INFO { char szName[64]; /// ??????? int nType; /// ???????: 0:???, 1:??, 2:?? NET_TSECT stuTimeSection[7][6]; /// ??????? char szResvered[260]; /// ??????? }NET_SCHEDULE_IN_INFO; ///@brief CLIENT_InsertScheduler ??? typedef struct tagNET_IN_INSERT_SCHEDULER { DWORD dwSize; /// ??????? int nScheduleNums; /// ?????? NET_SCHEDULE_IN_INFO stuSchedule[32]; /// ?????? }NET_IN_INSERT_SCHEDULER; ///@brief CLIENT_InsertScheduler ???? typedef struct tagNET_OUT_INSERT_SCHEDULER { DWORD dwSize; /// ??????? int nIDNum; /// ???ID???? int nID[32]; /// ???ID }NET_OUT_INSERT_SCHEDULER; ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_InsertScheduler(LLONG lLoginID, const NET_IN_INSERT_SCHEDULER* pstuInParam, NET_OUT_INSERT_SCHEDULER* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveScheduler ??? typedef struct tagNET_IN_REMOVE_SCHEDULER { DWORD dwSize; /// ??????? int nIDNum; /// ?????????ID???? int nID[32]; /// ?????????ID }NET_IN_REMOVE_SCHEDULER; ///@brief CLIENT_RemoveScheduler ???? typedef struct tagNET_OUT_REMOVE_SCHEDULER { DWORD dwSize; /// ??????? }NET_OUT_REMOVE_SCHEDULER; ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveScheduler(LLONG lLoginID, const NET_IN_REMOVE_SCHEDULER* pstuInParam, NET_OUT_REMOVE_SCHEDULER* pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyScheduler ??? typedef struct tagNET_IN_MODIFY_SCHEDULER { DWORD dwSize; /// ??????? int nIDNum; /// ???????? int nID[32]; /// ????????ID NET_SCHEDULE_IN_INFO stuSchedule[32]; /// ??????????? }NET_IN_MODIFY_SCHEDULER; ///@brief CLIENT_ModifyScheduler ???? typedef struct tagNET_OUT_MODIFY_SCHEDULER { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_SCHEDULER; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyScheduler(LLONG lLoginID, const NET_IN_MODIFY_SCHEDULER* pstuInParam, NET_OUT_MODIFY_SCHEDULER* pstuOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_SCHEDULE_OUT_INFO { UINT nID; /// ???ID int nType; /// ???????: 0:???, 1:??, 2:?? char szName[64]; /// ??????? NET_TSECT stuTimeSection[7][6]; /// ??????? char szResvered[256]; /// ??????? }NET_SCHEDULE_OUT_INFO; ///@brief CLIENT_GetSchedulerListInfoByID ??? typedef struct tagNET_IN_GET_SCHEDULER_LIST_INFO_BY_ID { DWORD dwSize; /// ??????? int nIDNum; /// ?????????ID???? int nID[32]; /// ?????????ID }NET_IN_GET_SCHEDULER_LIST_INFO_BY_ID; ///@brief CLIENT_GetSchedulerListInfoByID ???? typedef struct tagNET_OUT_GET_SCHEDULER_LIST_INFO_BY_ID { DWORD dwSize; /// ??????? int nRetScheduleNum; /// ??????????? NET_SCHEDULE_OUT_INFO stuScheduleInfo[32]; /// ?????? }NET_OUT_GET_SCHEDULER_LIST_INFO_BY_ID; ///@brief ???ID??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSchedulerListInfoByID(LLONG lLoginID, const NET_IN_GET_SCHEDULER_LIST_INFO_BY_ID* pstuInParam, NET_OUT_GET_SCHEDULER_LIST_INFO_BY_ID* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetSchedulerListInfoByType ??? typedef struct tagNET_IN_GET_SCHEDULER_LIST_INFO_BY_TYPE { DWORD dwSize; /// ??????? int nType; /// ???????: 0:???, 1:??, 2:??, 3:??????? }NET_IN_GET_SCHEDULER_LIST_INFO_BY_TYPE; ///@brief CLIENT_GetSchedulerListInfoByType ???? typedef struct tagNET_OUT_GET_SCHEDULER_LIST_INFO_BY_TYPE { DWORD dwSize; /// ??????? int nRetScheduleNum; /// ??????????? NET_SCHEDULE_OUT_INFO stuScheduleInfo[32]; /// ?????? }NET_OUT_GET_SCHEDULER_LIST_INFO_BY_TYPE; ///@brief ???ID??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetSchedulerListInfoByType(LLONG lLoginID, const NET_IN_GET_SCHEDULER_LIST_INFO_BY_TYPE* pstuInParam, NET_OUT_GET_SCHEDULER_LIST_INFO_BY_TYPE* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_STANDARD_REMOTE_STREAM_INFO { DWORD dwSize; /// ??????? EM_STREAM_PROTOCOL_TYPE emStreamProtocolType; /// ????????????? char szPath[256]; /// ???????? char szIp[64]; /// IP ??? UINT nPort; /// ??? char szUserName[64]; /// ????? char szPassword[64]; /// ???? int nChannel; /// ?????? UINT nSubtype; /// ?????????????????0????1??????1????2??????2; char szChannelId[256]; /// ??????? } NET_STANDARD_REMOTE_STREAM_INFO; /////////////////////////VTOManager?????? Start///////////////////////////////////// ///@brief ???????IP??????? typedef struct tagNET_VTO_IP_MODE_INFO { char szIP[40]; /// IP??? char szResvered1[4]; /// ?????? UINT nPort; /// ??? char szUsername[64]; /// ????? char szPassword[64]; /// ???? char szResvered[64]; /// ??????? }NET_VTO_IP_MODE_INFO; ///@brief ???????AutoReg??????? typedef struct tagNET_VTO_AUTO_REG_MODE_INFO { char szDevID[16]; /// ???ID?? char szResvered[64]; /// ??????? }NET_VTO_AUTO_REG_MODE_INFO; ///@brief DevType ?VTA??VTS??????? typedef struct tagNET_VTO_DETAIL_INFO { char szDevName[32]; /// ????? char szModel[128]; /// ?????? char szParentID[16]; /// ?????ID char szResvered[64]; /// ??????? }NET_VTO_DETAIL_INFO; ///@brief DevType ?Vto??Wall, Vistitor?????? typedef struct tagNET_VTO_INFO_DETAIL { BOOL bEnable; /// ?????????? char szMiddleNumber[16]; /// ???????? char szMachineAddress[128]; /// ???????????? char szRingFile[32]; /// ????????????????????????????? UINT nRingVolume; /// ?????????????????????????????? UINT nRtspPort; /// ??????Rtsp??? UINT nLockNumber; /// ??????????????? char szUnlockDtmf1[32]; /// Dtmf1?????? char szUnlockDtmf2[32]; /// Dtmf2?????? char szLinkIPC[32]; /// ????IPC????????? char szSN[32]; /// ????????????? char szVTOName[16]; /// VTO?????"Vto": ???????, "Wall": ?????, "Visitor": ???? char szType[32]; /// VTOInfo??Json key? char szResvered[64]; /// ??????? }NET_VTO_INFO_DETAIL; ///@brief VTO??????? typedef struct tagNET_VTO_DEV_DETAIL_INFO { int nDevType; /// ???????: 0:???, 1:VTO, 2:VTA, 3:VTS int nAccessMode; /// ?????????, 0:???, 1:IP??????, 2:???????? NET_VTO_IP_MODE_INFO stuIPMode; /// ???????IP??????? NET_VTO_AUTO_REG_MODE_INFO stuAutoRegMode; /// ?????????????????????? NET_VTO_DETAIL_INFO stuDetail; /// DevType ?VTA??VTS??????? NET_VTO_INFO_DETAIL stuVTOInfoDetail; /// DevType ?Vto??Wall, Vistitor?????? char szResvered[512]; /// ??????? }NET_VTO_DEV_DETAIL_INFO; ///@brief CLIENT_AddVTOManagerEx ??? typedef struct tagNET_IN_ADD_VTO_MANAGER_EX { DWORD dwSize; /// ??????? int nAddNum; /// ????????? NET_VTO_DEV_DETAIL_INFO stuAddInfo[128]; /// VTO??????? }NET_IN_ADD_VTO_MANAGER_EX; ///@brief CLIENT_AddVTOManagerEx ???? typedef struct tagNET_OUT_ADD_VTO_MANAGER_EX { DWORD dwSize; /// ??????? UINT nFailCount; /// ??????????? int nFailCodesNum; /// ??????? UINT nFailCodes[128]; /// ???????/?????? }NET_OUT_ADD_VTO_MANAGER_EX; ///@brief ????????VTOInfo??DevList???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddVTOManagerEx(LLONG lLoginID, const NET_IN_ADD_VTO_MANAGER_EX* pstuInParam, NET_OUT_ADD_VTO_MANAGER_EX* pstuOutParam, int nWaitTime); ///@brief ???????? typedef struct tagNET_VTO_INDEX_DETAIL_INFO { char szIP[40]; /// VTOInfo??Adress???????DevList??IP??? char szID[32]; /// VTOInfo??SN???????DevList??DevID??? char szType[16]; /// ???????????? char szResvered[256]; /// ??????? }NET_VTO_INDEX_DETAIL_INFO; ///@brief ?????????????? typedef struct tagNET_VTO_UPDATE_INFO { NET_VTO_INDEX_DETAIL_INFO stuIndexInfo; /// ??????? NET_VTO_DEV_DETAIL_INFO stuDetailInfo; /// ??????? char szResvered[256]; /// ??????? }NET_VTO_UPDATE_INFO; ///@brief CLIENT_UpdateVTOManagerEx ??? typedef struct tagNET_IN_UPDATE_VTO_MANAGER_EX { DWORD dwSize; /// ??????? int nUpdataInfoNum; /// ????????? NET_VTO_UPDATE_INFO stuUpdataInfo[128]; /// ????????VTO??? }NET_IN_UPDATE_VTO_MANAGER_EX; ///@brief CLIENT_UpdateVTOManagerEx ???? typedef struct tagNET_OUT_UPDATE_VTO_MANAGER_EX { DWORD dwSize; /// ??????? UINT nFailCount; /// ??????????? int nFailCodesNum; /// ??????? UINT nFailCodes[128]; /// ???????/?????? }NET_OUT_UPDATE_VTO_MANAGER_EX; ///@brief ????????VTO??? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpdateVTOManagerEx(LLONG lLoginID, const NET_IN_UPDATE_VTO_MANAGER_EX* pstuInParam, NET_OUT_UPDATE_VTO_MANAGER_EX* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveVTOManagerEx ??? typedef struct tagNET_IN_REMOVE_VTO_MANAGER_EX { DWORD dwSize; /// ??????? int nNum; /// ????????? NET_VTO_INDEX_DETAIL_INFO stuIndexInfo[128]; /// ?????????????? }NET_IN_REMOVE_VTO_MANAGER_EX; ///@brief CLIENT_RemoveVTOManagerEx ???? typedef struct tagNET_OUT_REMOVE_VTO_MANAGER_EX { DWORD dwSize; /// ??????? UINT nFailCount; /// ??????????? int nFailCodesNum; /// ??????? UINT nFailCodes[128]; /// ???????/?????? }NET_OUT_REMOVE_VTO_MANAGER_EX; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveVTOManagerEx(LLONG lLoginID, const NET_IN_REMOVE_VTO_MANAGER_EX* pstuInParam, NET_OUT_REMOVE_VTO_MANAGER_EX* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveAllVTOManagerEx ??? typedef struct tagNET_IN_REMOVE_ALL_VTO_MANAGER_EX { DWORD dwSize; /// ??????? }NET_IN_REMOVE_ALL_VTO_MANAGER_EX; ///@brief CLIENT_RemoveAllVTOManagerEx ???? typedef struct tagNET_OUT_REMOVE_ALL_VTO_MANAGER_EX { DWORD dwSize; /// ??????? }NET_OUT_REMOVE_ALL_VTO_MANAGER_EX; ///@brief ???VTOInfo??DevList?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveAllVTOManagerEx(LLONG lLoginID, const NET_IN_REMOVE_ALL_VTO_MANAGER_EX* pstuInParam, NET_OUT_REMOVE_ALL_VTO_MANAGER_EX* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetVTOManagerInfo ??? typedef struct tagNET_IN_GET_VTO_MANAGER_INFO { DWORD dwSize; /// ??????? char szType[16]; /// ????????, ??????????VTOInfo??DevList int nOffset; /// ????????????? }NET_IN_GET_VTO_MANAGER_INFO; ///@brief CLIENT_GetVTOManagerInfo ???? typedef struct tagNET_OUT_GET_VTO_MANAGER_INFO { DWORD dwSize; /// ??????? int nInfoNum; /// ??????????????? NET_VTO_DEV_DETAIL_INFO stuDetailInfo[128]; /// ??????????? BOOL bIsCompleted; /// ????????? }NET_OUT_GET_VTO_MANAGER_INFO; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVTOManagerInfo(LLONG lLoginID, const NET_IN_GET_VTO_MANAGER_INFO* pstuInParam, NET_OUT_GET_VTO_MANAGER_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_VTO_DEV_NODE_INFO { char szID[32]; /// ????????ID char szName[64]; /// ??????? char szParentID[32]; /// ??????ID char szResvered[256]; /// ??????? }NET_VTO_DEV_NODE_INFO; ///@brief CLIENT_GetVTOManagerRelation ??? typedef struct tagNET_IN_GET_VTO_MANAGER_RELATION { DWORD dwSize; /// ??????? int nOffset; /// ??????????????? }NET_IN_GET_VTO_MANAGER_RELATION; ///@brief CLIENT_GetVTOManagerRelation ???? typedef struct tagNET_OUT_GET_VTO_MANAGER_RELATION { DWORD dwSize; /// ??????? BOOL bIsCompleted; /// ???????? int nNodesNum; /// ?????????????????? NET_VTO_DEV_NODE_INFO stuNodes[128]; /// ?????????????? }NET_OUT_GET_VTO_MANAGER_RELATION; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVTOManagerRelation(LLONG lLoginID, const NET_IN_GET_VTO_MANAGER_RELATION* pstuInParam, NET_OUT_GET_VTO_MANAGER_RELATION* pstuOutParam, int nWaitTime); ///@brief CLIENT_SetVTOManagerRelation ??? typedef struct tagNET_IN_SET_VTO_MANAGER_RELATION { DWORD dwSize; /// ??????? int nNodeInfoNum; /// ????????????? NET_VTO_DEV_NODE_INFO stuNodes[128]; /// ????????? BOOL bNeedReset; /// ?????????????? }NET_IN_SET_VTO_MANAGER_RELATION; ///@brief CLIENT_SetVTOManagerRelation ???? typedef struct tagNET_OUT_SET_VTO_MANAGER_RELATION { DWORD dwSize; /// ??????? int nErrorCode; /// ?????????0???? }NET_OUT_SET_VTO_MANAGER_RELATION; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetVTOManagerRelation(LLONG lLoginID, const NET_IN_SET_VTO_MANAGER_RELATION* pstuInParam, NET_OUT_SET_VTO_MANAGER_RELATION* pstuOutParam, int nWaitTime); /////////////////////////VTOManager?????? Stop///////////////////////////////////// ///@brief ?????????????? typedef struct tagNET_ANALYSE_MANAGER_ANALYSE_TASK_INFO { DWORD dwSize; /// ??????? EM_DATA_SOURCE_TYPE emSourceType; /// ?????????, ???????EM_DATA_SOURCE_REMOTE_REALTIME_STREAM char szTaskUserData[512]; /// ???????? NET_STANDARD_REMOTE_STREAM_INFO stuRemoteStreamInfo; /// ????????? SouceType??RemoteStream????? NET_ANALYSE_TASK_GLOBAL stuGlobal; /// ??????? NET_ANALYSE_TASK_MODULE stuModule; /// ??????? NET_ANALYSE_RULE stuRulesInfo; /// ???????? BOOL bIsStart; /// ????????????????? ????TRUE?????????? BOOL bSaveIntelliFrame; /// ???????????TRUE-?????FALSE-??????????FALSE?????? int IsRepeat; /// ??????????,???0????????,1?????????? char szTaskName[128]; /// ???????? NET_ANALYSE_TASK_STREAM_INFO stuStreamInfo; /// ??????? }NET_ANALYSE_MANAGER_ANALYSE_TASK_INFO; ///@brief CLIENT_AddMultiAnalyseTask ??? typedef struct tagNET_IN_ADD_MULTI_ANALYSE_TASK_INFO { DWORD dwSize; /// ??????? int nTaskNum; /// ????????????????128 NET_ANALYSE_MANAGER_ANALYSE_TASK_INFO* pstuTaskInfo; /// ???????????????????????????????????????(nTaskNum*sizeof(NET_ANALYSE_MANAGER_ANALYSE_TASK_INFO)) }NET_IN_ADD_MULTI_ANALYSE_TASK_INFO; ///@brief ?????????????? typedef struct tagNET_ANALYSE_TASK_RESULT_INFO { char szPath[128]; /// ????????rtsp??? BOOL bResult; /// ????????????? UINT nTaskID; /// ????ID??????????0 BOOL bIsVirtualChannelValid; /// ???????????????????????? UINT nVirtualChannel; /// ????????????????? char szReserved[512]; /// ?????? }NET_ANALYSE_TASK_RESULT_INFO; ///@brief CLIENT_AddMultiAnalyseTask ???? typedef struct tagNET_OUT_ADD_MULTI_ANALYSE_TASK_INFO { DWORD dwSize; /// ??????? int nTaskResultNum; /// ??????????????????? NET_ANALYSE_TASK_RESULT_INFO stuTaskResult[128]; /// ??????????????????????????????? }NET_OUT_ADD_MULTI_ANALYSE_TASK_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddMultiAnalyseTask(LLONG lLoginID, const NET_IN_ADD_MULTI_ANALYSE_TASK_INFO* pstuInParam, NET_OUT_ADD_MULTI_ANALYSE_TASK_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveMultiAnalyseTask ??? typedef struct tagNET_IN_REMOVE_MULTI_ANALYSE_TASK_INFO { DWORD dwSize; /// ??????? int nTaskIDNum; /// ????ID???????????? UINT nTaskID[128]; /// ????ID???? }NET_IN_REMOVE_MULTI_ANALYSE_TASK_INFO; ///@brief CLIENT_RemoveMultiAnalyseTask ???? typedef struct tagNET_OUT_REMOVE_MULTI_ANALYSE_TASK_INFO { DWORD dwSize; /// ??????? int nTaskResultNum; /// ??????????????????? NET_ANALYSE_TASK_RESULT_INFO stuTaskResult[128]; /// ??????????????????????????????? }NET_OUT_REMOVE_MULTI_ANALYSE_TASK_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveMultiAnalyseTask(LLONG lLoginID, const NET_IN_REMOVE_MULTI_ANALYSE_TASK_INFO* pstuInParam, NET_OUT_REMOVE_MULTI_ANALYSE_TASK_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????????? typedef struct tagNET_NOTIFY_RECALL_INFO { char szCode[32]; /// ??????? char szMessage[1024]; /// ??????? char szReserved[1024]; /// ??????? }NET_NOTIFY_RECALL_INFO; ///@brief ?????????????????????????, lAttachRecalHandle ? CLIENT_AttachRecallInfo ???????? ///@param[out] lAttachRecalHandle ?????? ///@param[out] pstuGyroDataInfo ?????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyRecallInfo)(LLONG lAttachRecalHandle, NET_NOTIFY_RECALL_INFO* pstuRecallInfo, LDWORD dwUser); ///@brief CLIENT_AttachRecallInfo ?????? typedef struct tagNET_IN_ATTACH_RECALL_INFO { DWORD dwSize; /// ????????,????? fNotifyRecallInfo cbNotifyRecallInfo; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_RECALL_INFO; ///@brief CLIENT_AttachRecallInfo ?????? typedef struct tagNET_OUT_ATTACH_RECALL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_RECALL_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachRecallInfo(LLONG lLoginID,const NET_IN_ATTACH_RECALL_INFO* pstuInParam, NET_OUT_ATTACH_RECALL_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachRecallInfo(LLONG lAttachHandle); ///@brief CLIENT_CheckRecallAlgorithmData ??? typedef struct tagNET_IN_CHECK_RECALL_ALGORITHM_DATA_INFO { DWORD dwSize; /// ??????? int nUserIDListNum; /// ???ID???????????? char szUserIDList[10][32]; /// ???ID???? }NET_IN_CHECK_RECALL_ALGORITHM_DATA_INFO; ///@brief ???????????????? typedef struct tagNET_ACCESS_FACE_FRATURE_DATA { char szUserID[32]; /// ???ID int nFaceDataMD5Num; /// ?????MD5????????????????????? int nAlgorithmEigenMD5Num; /// ????????????MD5???????????????????? int nEigenValueNum; /// ???????????????????????????? int nFeatureCompareResultNum; /// ????????????????????????????????????????? char szFaceDataMD5[5][200]; /// ?????MD5? char szAlgorithmEigenMD5[5][200]; /// ????????????MD5? char szEigenValue[5][2048]; /// ?????????????2k UINT nFeatureCompareResult[5]; /// ??????????????????????,0??????????,1????????????,2???????????????????,3: ????????????? /// ??nFeatureCompareResultNum????????nFeatureCompareResultNum??????????????????????????? char szResvered[256]; /// ??????? }NET_ACCESS_FACE_FRATURE_DATA; ///@brief CLIENT_CheckRecallAlgorithmData ???? typedef struct tagNET_OUT_CHECK_RECALL_ALGORITHM_DATA_INFO { DWORD dwSize; /// ??????? int nFaceFeatureDataListNum; /// ????????????????????????????????? NET_ACCESS_FACE_FRATURE_DATA stuFaceFeatureDataList[10]; /// ???????????????????? }NET_OUT_CHECK_RECALL_ALGORITHM_DATA_INFO; ///@brief ??????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CheckRecallAlgorithmData(LLONG lLoginID, const NET_IN_CHECK_RECALL_ALGORITHM_DATA_INFO* pstuInParam, NET_OUT_CHECK_RECALL_ALGORITHM_DATA_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????????????????????????????? typedef struct tagNET_INTELLI_ENABLE_INFO { int nChannel; /// ???????? BOOL bEnable; /// ??????????? EM_SCENE_CLASS_TYPE emAlgorithmClass; /// ???????? UINT nState; /// ?????? 0:???, 1:????, 2:????????????, 3:????????????, 4:??????????,????????, 5:??????????? int nEnableRuleNum; /// ???????????????????? char szResvered[60]; /// ??????? }NET_INTELLI_ENABLE_INFO; ///@brief CLIENT_GetIntelliEnableInfo ??? typedef struct tagNET_IN_GET_INTELLI_ENABLE_INFO { DWORD dwSize; /// ??????? int nChannelsNum; /// ??????? UINT nChannels[256]; /// ????????, ???????????????? }NET_IN_GET_INTELLI_ENABLE_INFO; ///@brief CLIENT_GetIntelliEnableInfo ???? typedef struct tagNET_OUT_GET_INTELLI_ENABLE_INFO { DWORD dwSize; /// ??????? int nInfoNum; /// ???????? NET_INTELLI_ENABLE_INFO stuInfo[1024]; /// ????????????????????????????????????? }NET_OUT_GET_INTELLI_ENABLE_INFO; ///@brief ?????????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetIntelliEnableInfo(LLONG lLoginID, const NET_IN_GET_INTELLI_ENABLE_INFO* pstuInParam, NET_OUT_GET_INTELLI_ENABLE_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_SET_INTELLI_ENABLE_INFO { int nChannel; /// ???????? BOOL bEnable; /// ???????? EM_SCENE_CLASS_TYPE emAlgorithmClass; /// ???????? char szResvered[68]; /// ??????? }NET_SET_INTELLI_ENABLE_INFO; ///@brief CLIENT_SetIntelliEnableInfo ??? typedef struct tagNET_IN_SET_INTELLI_ENABLE_INFO { DWORD dwSize; /// ??????? int nInfoNum; /// ??????? NET_SET_INTELLI_ENABLE_INFO stuInfo[1024]; /// ????????????? }NET_IN_SET_INTELLI_ENABLE_INFO; ///@brief CLIENT_SetIntelliEnableInfo ???? typedef struct tagNET_OUT_SET_INTELLI_ENABLE_INFO { DWORD dwSize; /// ??????? int nErrorCodeNum; /// ?????????????? UINT nErrorCode[1024]; /// ?????? 0:???, 1:????, 2:???????????? }NET_OUT_SET_INTELLI_ENABLE_INFO; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetIntelliEnableInfo(LLONG lLoginID, const NET_IN_SET_INTELLI_ENABLE_INFO* pstuInParam, NET_OUT_SET_INTELLI_ENABLE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????????????? typedef struct tagNET_NOTIFY_INTELLI_ENABLE_INFO { NET_INTELLI_ENABLE_INFO stuInfo[1024]; /// ????????????????????????????????????? int nInfoNum; /// ????????????????????????????????????????? char szResvered[1028]; /// ??????? }NET_NOTIFY_INTELLI_ENABLE_INFO; ///@brief ?????????????????????????????, lAttachHandle ? CLIENT_AttachIntelliEnableInfo ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuIntelliEnableInfo ?????????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyIntelliEnableInfo)(LLONG lAttachHandle, NET_NOTIFY_INTELLI_ENABLE_INFO* pstuIntelliEnableInfo, LDWORD dwUser); ///@brief CLIENT_AttachIntelliEnableInfo ?????? typedef struct tagNET_IN_ATTACH_INTELLI_ENABLE_INFO { DWORD dwSize; /// ????????,????? fNotifyIntelliEnableInfo cbNotifyIntelliEnableInfo; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_INTELLI_ENABLE_INFO; ///@brief CLIENT_AttachIntelliEnableInfo ?????? typedef struct tagNET_OUT_ATTACH_INTELLI_ENABLE_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_INTELLI_ENABLE_INFO; ///@brief ?????????????????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachIntelliEnableInfo(LLONG lLoginID,const NET_IN_ATTACH_INTELLI_ENABLE_INFO* pstuInParam, NET_OUT_ATTACH_INTELLI_ENABLE_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????????????????????????????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachIntelliEnableInfo(LLONG lAttachHandle); ///@brief ??????????????????? typedef struct tagNET_IOTBOX_TAGS_INFO { char szTagName[64]; /// ???????????????????????????? char szDescribe[64]; /// ????????????????????????????? double dbValue; /// ??????????????????????? char szUnity[32]; /// ????????????????????????? char szResvered[64]; /// ??????? }NET_IOTBOX_TAGS_INFO; ///@brief ???????????????????? typedef struct tagNET_IOTBOX_CHANNEL_DEVICE_INFO { char szDeviceName[64]; /// ?????????? char szDeviceStatusName[128]; /// ??????????? double dbDeviceStatusValue; /// ????????? char szDeviceControlName[128]; /// ???????????? double dbDeviceControlValue; /// ?????????? char szResvered1[4]; /// ?????? int nTagsNum; /// ?????????????????????? NET_IOTBOX_TAGS_INFO stuTags[32]; /// ??????????????????? char szResvered[64]; /// ??????? }NET_IOTBOX_CHANNEL_DEVICE_INFO; ///@brief ??????????????? typedef struct tagNET_NET_IOTBOX_DEVICE_INFO { char szChannelName[64]; /// ????????????? char szChannelStatusName[128]; /// ??????????? double dbChannelStatusValue; /// ????????? char szChannelControlName[128]; /// ???????????? double dbChannelControlValue; /// ?????????? NET_IOTBOX_CHANNEL_DEVICE_INFO stuDevices[128]; /// ???????????????????? int nDevicesNum; /// ???????????????????????? char szResvered[68]; /// ??????? }NET_IOTBOX_DEVICE_INFO; ///@brief ??????????? typedef struct tagNET_NOTIFY_IOTBOX_COMM { NET_IOTBOX_DEVICE_INFO stuDeviceInfo[16]; /// ??????????? int nDeviceInfoNum; /// ??????????????? char szResvered[1028]; /// ??????? }NET_NOTIFY_IOTBOX_COMM; ///@brief ????485?????????????????, lAttachHandle ? CLIENT_AttachIotboxComm ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuIotboxComm ?????485?????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyIotboxRealdata)(LLONG lAttachHandle, NET_NOTIFY_IOTBOX_COMM* pstuIotboxComm, LDWORD dwUser); ///@brief CLIENT_AttachIotboxComm ?????? typedef struct tagNET_IN_ATTACH_IOTBOX_COMM { DWORD dwSize; /// ????????,????? fNotifyIotboxRealdata cbNotifyIotboxRealdata; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_IOTBOX_COMM; ///@brief CLIENT_AttachIotboxComm ?????? typedef struct tagNET_OUT_ATTACH_IOTBOX_COMM { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_IOTBOX_COMM; ///@brief ????485?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachIotboxComm(LLONG lLoginID,const NET_IN_ATTACH_IOTBOX_COMM* pstuInParam, NET_OUT_ATTACH_IOTBOX_COMM* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachIotboxComm(LLONG lAttachHandle); ///@brief CLIENT_GetStorageBoundTime ?????? typedef struct tagNET_IN_GET_STORAGE_BOUND_TIME_INFO { DWORD dwSize; /// ????????,????? int nChannelListNum; /// ???????????????? UINT* pnChannelList; /// ?????????, ?????????????????????????sizeof(UINT)*nChannelListNum }NET_IN_GET_STORAGE_BOUND_TIME_INFO; ///@brief ????????????? typedef struct tagNET_STORAGE_BOUND_TIME { UINT nChannel; /// ????? NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szReserved[1020]; /// ??????? }NET_STORAGE_BOUND_TIME; ///@brief CLIENT_GetStorageBoundTime ?????? typedef struct tagNET_OUT_GET_STORAGE_BOUND_TIME_INFO { DWORD dwSize; /// ????????,????? int nBoundTimeNum; /// ?????????????????????????, ??????????? NET_IN_GET_STORAGE_BOUND_TIME_INFO ???? nChannelListNum ??? NET_STORAGE_BOUND_TIME* pstuBoundTime; /// ?????????????, ?????????????????????????sizeof(NET_STORAGE_BOUND_TIME)*nBoundTimeNum int nRetBoundTimeNum; /// ???????????????????? char szReserved[4]; /// ?????? }NET_OUT_GET_STORAGE_BOUND_TIME_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetStorageBoundTime(LLONG lLoginID,const NET_IN_GET_STORAGE_BOUND_TIME_INFO* pstuInParam, NET_OUT_GET_STORAGE_BOUND_TIME_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????????????????? typedef struct tagNET_DELETE_FILTER_CONDITION { EM_SEX_TYPE emSex; /// ??? EM_PERSON_FEATURE_STATE emFeatureState; /// ????? char szName[64]; /// ???????? char szCertificateType[64]; /// ??????? char szID[64]; /// ????????? char szCountry[8]; /// ????, ????ISO3166??Z char szReserved[1024]; /// ??????? }NET_DELETE_FILTER_CONDITION; ///@brief CLIENT_DeletePersonByCondition ?????? typedef struct tagNET_IN_DELETE_PERSON_BY_CONDITION_INFO { DWORD dwSize; /// ????????,????? NET_DELETE_FILTER_CONDITION stuFilterCondition; /// ??????????????????????????? char szGroupID[64]; /// ?????ID char szUID[1024][32]; /// ?????????????????????????????????? int nUIDNum; /// ??????????????????? char szReserved[4]; /// ?????? }NET_IN_DELETE_PERSON_BY_CONDITION_INFO; ///@brief CLIENT_DeletePersonByCondition ?????? typedef struct tagNET_OUT_DELETE_PERSON_BY_CONDITION_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_DELETE_PERSON_BY_CONDITION_INFO; ///@brief ????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeletePersonByCondition(LLONG lLoginID,const NET_IN_DELETE_PERSON_BY_CONDITION_INFO* pstuInParam, NET_OUT_DELETE_PERSON_BY_CONDITION_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????? typedef struct tagNET_PACKAGE_STATISTICS_INFO { NET_TIME stuBeginTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nTotalCount; /// ???????? UINT nStatisticsInfoByGradeNum; /// ????????????????????? NET_IN_PACKAGE_STATISTICS_BYGRADE stuStatisticsInfoByGrade[10]; /// ??????????????? NET_IN_PACKAGE_STATISTICS_BYTYPE stuStatisticsInfoByType[300]; /// ????????????????? UINT nStatisticsInfoByTypeNum; /// ??????????????????????? char szResvered[252]; }NET_PACKAGE_STATISTICS_INFO; ///@brief ????????????????? typedef struct tagNET_NOTIFY_MASS_PACKAGE_STATISTICS { char szUUID[128]; /// ??????????? UINT nStatisticsInfoID; /// ??????ID int nStatisticsInfosNum; /// ?????????????? NET_PACKAGE_STATISTICS_INFO *pstuStatisticsInfos; /// ?????????? UINT nStatiticsType; /// ???????????: 0:???, 1:???????, 2:?????? char szResvered[1020]; /// ??????? }NET_NOTIFY_MASS_PACKAGE_STATISTICS; ///@brief ????X?????????????????????????????, lAttachHandle ? CLIENT_AttachXRayMassStatistics ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuMassPackageStatistics ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyMassPackageStatistics)(LLONG lAttachHandle, NET_NOTIFY_MASS_PACKAGE_STATISTICS* pstuMassPackageStatistics, LDWORD dwUser); ///@brief CLIENT_AttachXRayMassStatistics ?????? typedef struct tagNET_IN_ATTACH_XRAY_MASS_STATISTICS { DWORD dwSize; /// ????????,????? char szUUID[128]; /// ??????????? fNotifyMassPackageStatistics cbNotify; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_XRAY_MASS_STATISTICS; ///@brief CLIENT_AttachXRayMassStatistics ?????? typedef struct tagNET_OUT_ATTACH_XRAY_MASS_STATISTICS { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_XRAY_MASS_STATISTICS; ///@brief ????X????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachXRayMassStatistics(LLONG lLoginID,const NET_IN_ATTACH_XRAY_MASS_STATISTICS* pstuInParam, NET_OUT_ATTACH_XRAY_MASS_STATISTICS* pstuOutParam, int nWaitTime); ///@brief ???????X????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachXRayMassStatistics(LLONG lAttachHandle); ///@brief ?????????????? typedef struct tagNET_GATE_ALARM_STATISTICS_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? UINT nInNormalCount; /// ???????????(??????) UINT nInAlarmCount; /// ?????????? UINT nOutNormalCount; /// ?????????(??????) UINT nOutAlarmCount; /// ?????????? UINT nTempNormalCount; /// ???????????? UINT nTempAlarmCount; /// ?????????? NET_CLASSIFY_RESULT_STATISTICS_INFO stuClassifyResultStatistics[32]; /// ?????????????????? int nClassifyResultStatisticsNum; /// ?????????????????????? char szResvered[1020]; /// ??????? }NET_GATE_ALARM_STATISTICS_INFO; ///@brief ????????????????? typedef struct tagNET_NOTIFY_MASS_GATE_ALARM_STATISTICS { char szUUID[128]; /// ??????????? UINT nStatisticsInfoID; /// ??????ID int nStatisticsInfosNum; /// ?????????????????? NET_GATE_ALARM_STATISTICS_INFO *pstuStatisticsInfos; /// ?????????????? UINT nStatiticsType; /// ???????????, 0:???, 1:??????????, 2:????????? char szResvered[1020]; /// ??????? }NET_NOTIFY_MASS_GATE_ALARM_STATISTICS; ///@brief ??????????????????????????????, lAttachHandle ? CLIENT_AttachXRayMassStatistics ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuMassGateAlarmStatistics ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyMassGateAlarmStatistics)(LLONG lAttachHandle, NET_NOTIFY_MASS_GATE_ALARM_STATISTICS* pstuMassGateAlarmStatistics, LDWORD dwUser); ///@brief CLIENT_AttachSecurityGateAlarmMassStatistics ?????? typedef struct tagNET_IN_ATTACH_SECURITY_GATE_ALARM_MASS_STATISTICS { DWORD dwSize; /// ????????,????? char szUUID[128]; /// ??????????? fNotifyMassGateAlarmStatistics cbNotify; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_SECURITY_GATE_ALARM_MASS_STATISTICS; ///@brief CLIENT_AttachSecurityGateAlarmMassStatistics ?????? typedef struct tagNET_OUT_ATTACH_SECURITY_GATE_ALARM_MASS_STATISTICS { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_SECURITY_GATE_ALARM_MASS_STATISTICS; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachSecurityGateAlarmMassStatistics(LLONG lLoginID,const NET_IN_ATTACH_SECURITY_GATE_ALARM_MASS_STATISTICS* pstuInParam, NET_OUT_ATTACH_SECURITY_GATE_ALARM_MASS_STATISTICS* pstuOutParam, int nWaitTime); ///@brief ????????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachSecurityGateAlarmMassStatistics(LLONG lAttachHandle); ///@brief CLIENT_StartFindXRayPackageStatistics ?????????? typedef struct tagNET_IN_START_FIND_XRAY_PACKAGE_STATISTICS { DWORD dwSize; /// ??????? NET_TIME stuStartTime; /// ?????????? NET_TIME stuEndTime; /// ??????????? int nGranularity; /// ???????: 0 ????????, 1 ???????, 2 ???????, 3 ???????, 4 ?????5???? } NET_IN_START_FIND_XRAY_PACKAGE_STATISTICS; ///@brief CLIENT_StartFindXRayPackageStatistics ?????????? typedef struct tagNET_OUT_START_FIND_XRAY_PACKAGE_STATISTICS { DWORD dwSize; /// ??????? UINT nTotal; /// ???????? } NET_OUT_START_FIND_XRAY_PACKAGE_STATISTICS; ///@brief CLIENT_FindNextXRayPackageStatistics ?????????? typedef struct tagNET_IN_FIND_NEXT_XRAY_PACKAGE_STATISTICS { DWORD dwSize; /// ??????? UINT nOffset; /// ??????(????) UINT nCount; /// ??????????? } NET_IN_FIND_NEXT_XRAY_PACKAGE_STATISTICS; ///@brief X-ray machine package statistics typedef struct tagNET_XRAY_PACKAGE_STATISTICS_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ?????? UINT nStatisticsInfoByGradeNum; /// ????????????????????? NET_IN_PACKAGE_STATISTICS_BYGRADE stuStatisticsInfoByGrade[10]; /// ??????????????? UINT nStatisticsInfoByTypeNum; /// ??????????????????????? NET_IN_PACKAGE_STATISTICS_BYTYPE stuStatisticsInfoByType[300]; /// ????????????????? UINT nTotalCount; /// ???????? BYTE szReserved[1020]; /// ??????? } NET_XRAY_PACKAGE_STATISTICS_INFO; ///@brief CLIENT_FindNextXRayPackageStatistics ?????????? typedef struct tagNET_OUT_FIND_NEXT_XRAY_PACKAGE_STATISTICS { DWORD dwSize; /// ??????? UINT nMaxNum; /// ????????????????,????????NET_XRAY_PACKAGE_STATISTICS_INFO??nCount NET_XRAY_PACKAGE_STATISTICS_INFO *pstuPackageStatisticsInfo; /// X???????????, ???????????????, ?????NET_XRAY_PACKAGE_STATISTICS_INFO*nMaxNum UINT nRetNum; /// ????????????? } NET_OUT_FIND_NEXT_XRAY_PACKAGE_STATISTICS; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartFindXRayPackageStatistics(LLONG lLoginID, const NET_IN_START_FIND_XRAY_PACKAGE_STATISTICS* pstuInParam, NET_OUT_START_FIND_XRAY_PACKAGE_STATISTICS* pstuOutParam, int nWaitTime); ///@brief ??????????????, lFindID?CLIENT_StartFindXRayPackageStatistics??????????ID ///@param[in] lFindID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindNextXRayPackageStatistics(LLONG lFindID, const NET_IN_FIND_NEXT_XRAY_PACKAGE_STATISTICS* pstuInParam, NET_OUT_FIND_NEXT_XRAY_PACKAGE_STATISTICS* pstuOutParam, int nWaitTime); ///@brief ??????????????????, lFindID?CLIENT_StartFindXRayPackageStatistics??????????ID ///@param[in] lFindID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindXRayPackageStatistics(LLONG lFindID); ///@brief ?????????????? typedef struct tagNET_EAS_CHANNEL_ORI_DATA_REQ_INFO { int nDeviceChannel; /// ????EAS?????????????????????????????EAS???????????-1???????EAS??????? int nDetectChannel; /// ???EAS????????????????????????????3???????????1 - ???3????0-2?????-1????????????? char szResvered[1024]; /// ??????? }NET_EAS_CHANNEL_ORI_DATA_REQ_INFO; ///@brief CLIENT_GetEASChannelOriginalData ?????? typedef struct tagNET_IN_GET_EAS_CHANNEL_ORIGINAL_DATA_INFO { DWORD dwSize; /// ????????,????? int nEASChannelInfoNum; /// ????????????????????? NET_EAS_CHANNEL_ORI_DATA_REQ_INFO* pstuEASChannelInfo; /// ?????????????????????????????????????sizeof(NET_EAS_CHANNEL_ORI_DATA_REQ_INFO)*nEASChannelInfoNum }NET_IN_GET_EAS_CHANNEL_ORIGINAL_DATA_INFO; ///@brief ????????????? typedef struct tagNET_EAS_CHANNEL_ORI_DATA { int nData[4096]; /// ????????????4096?????? int nDataNum; /// ??????????????????????? int nUpperLimit; /// ??????? int nLowerLimit; /// ??????? char szResvered[1020]; /// ??????? }NET_EAS_CHANNEL_ORI_DATA; ///@brief ??????????????? typedef struct tagNET_EAS_CHANNEL_ORI_DATA_INFO { int nDeviceChannel; /// EAS????????0??? int nDetectChannel; /// ?????????????1 - ???3????0-2??? int nEASOriDataNum; /// ????????????????????????? NET_EAS_CHANNEL_ORI_DATA stuEASOriData[64]; /// ????????????? char szResvered[128]; /// ??????? }NET_EAS_CHANNEL_ORI_DATA_INFO; ///@brief CLIENT_GetEASChannelOriginalData ?????? typedef struct tagNET_OUT_GET_EAS_CHANNEL_ORIGINAL_DATA_INFO { DWORD dwSize; /// ????????,????? int nEASChannelOriDataNum; /// ??????????????????????????? NET_EAS_CHANNEL_ORI_DATA_INFO* pstuEASChannelOriData; /// ?????????????????????????????????????sizeof(NET_EAS_CHANNEL_ORI_DATA_INFO)*nEASChannelOriDataNum int nEASChannelOriDataRetNum; /// ????????????????????????????????? }NET_OUT_GET_EAS_CHANNEL_ORIGINAL_DATA_INFO; ///@brief AM??EAS????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetEASChannelOriginalData(LLONG lLoginID, NET_IN_GET_EAS_CHANNEL_ORIGINAL_DATA_INFO* pstuInParam, NET_OUT_GET_EAS_CHANNEL_ORIGINAL_DATA_INFO* pstuOutParam, int nWaitTime); ///@brief ????????? typedef struct tagNET_VT_CONTACTINFO_INFO_EX { BOOL bUseNickNameEx; /// ??????????????????????? char szNickNameEx[256]; /// ?????????????? char szResvered[2044]; /// ??????? }NET_VT_CONTACTINFO_INFO_EX; ///@brief ?????? typedef struct tagNET_VT_CONTACTINFO_INFO { char szFirstName[32]; /// ???? char szFamilyName[32]; /// ?? char szVTShortNumber[16]; /// ????????? char szVTMiddleNumber[16]; /// ?????????? char szVTLongNumber[32]; /// ??????????, ??VTH???????????????? char szVTNetAddress[40]; /// ???????????? char szVTOPosition[16]; /// ????????????????? char szNickName[32]; /// ??? char szNotes[32]; /// ??? char szType[32]; /// ????????????????, ??????????????????, ????????????????????, "VTH": ?????, "VTO": ????, "VTS": ??????, "VTA": ??????????? char szRegisterType[32]; /// ????: "public", "local" char szVTHPassword[32]; /// ??????? char szVTOBuilding[32]; /// ???????? char szVTOUnit[32]; /// ????????? char szGroupNumber[32]; /// ??????? UINT nChannel; /// ????????????????????????????? int nFloorsNum; /// ??????? char szFloors[256][4]; /// ???? BOOL bLiftControlByVTH; /// ??????????????? NET_VT_CONTACTINFO_INFO_EX* pContactInfoEx; /// ????????????????????? char szResvered[256 - POINTERSIZE]; /// ??????? }NET_VT_CONTACTINFO_INFO; ///@brief VTOInfo???? typedef struct tagNET_TALK_DEV_FRONT_DEV_INFO { BOOL bEnable; /// ?????? char szAddress[40]; /// Ip??? UINT nPort; /// ????????? char szType[32]; /// ??????????????, "Vto": ???????, "Wall": ?????, "Visitor": ???? char szMiddleNumber[16]; /// ???? char szMachineAddress[64]; /// ??????????? char szRingFile[64]; /// ???????????????????????????? UINT nRingVolume; /// ????????????????????????????? UINT nRtspPort; /// ?????Rtsp??? char szUnlockDtmf1[32]; /// Dtmf1?????? char szUnlockDtmf2[32]; /// Dtmf2?????? char szUsername[32]; /// ?????????? char szPassword[32]; /// ??????????? UINT nLockNumber; /// ?????????????? char szLinkIPC[32]; /// ????IPC????????? char szSN[32]; /// ???????????? BOOL bMachineAddressEx; /// ??????????????????????? char szMachineAddressEx[256]; /// ?????????????? }NET_TALK_DEV_FRONT_DEV_INFO; ///@brief ????????? typedef struct tagNET_TALK_DEV_DETAIL_INFO { char szNode[32]; /// ????????????????? NET_VT_CONTACTINFO_INFO stuContactInfo; /// ??????????? int nDevType; /// ?????????????, 0:???, 1:??? ?C VTAVTO, 2:??? other NET_TALK_DEV_FRONT_DEV_INFO stuFrontDevInfo; /// ???????????? char szResvered[248]; /// ??????? }NET_TALK_DEV_DETAIL_INFO; ///@brief CLIENT_InsertMultiTalkDev ??? typedef struct tagNET_IN_INSERT_MULTI_TALK_DEV { DWORD dwSize; /// ??????? int nInsertInfoNum; /// ????????? NET_TALK_DEV_DETAIL_INFO stuInsertInfo[128]; /// ??????????? }NET_IN_INSERT_MULTI_TALK_DEV; ///@brief CLIENT_InsertMultiTalkDev ???? typedef struct tagNET_OUT_INSERT_MULTI_TALK_DEV { DWORD dwSize; /// ??????? UINT nFailCount; /// ??????????? int nFailCodesNum; /// ??????? UINT nFailCodes[128]; /// ???????????, 0??????, 1?????? }NET_OUT_INSERT_MULTI_TALK_DEV; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_InsertMultiTalkDev(LLONG lLoginID, const NET_IN_INSERT_MULTI_TALK_DEV* pstuInParam, NET_OUT_INSERT_MULTI_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_TALK_DEV_UPDATE_INFO { NET_TALK_DEV_DETAIL_INFO stuInfo; /// ????????????? UINT nRecNo; /// ?????? char szResvered[60]; /// ??????? }NET_TALK_DEV_UPDATE_INFO; ///@brief CLIENT_UpdateMultiTalkDev ??? typedef struct tagNET_IN_UPDATE_MULTI_TALK_DEV { DWORD dwSize; /// ??????? int nUpdataInfoNum; /// ????????? NET_TALK_DEV_UPDATE_INFO stuUpdateInfo[128]; /// ????????????? }NET_IN_UPDATE_MULTI_TALK_DEV; ///@brief CLIENT_UpdateMultiTalkDev ???? typedef struct tagNET_OUT_UPDATE_MULTI_TALK_DEV { DWORD dwSize; /// ??????? UINT nFailCount; /// ??????????? int nFailCodesNum; /// ??????? UINT nFailCodes[128]; /// ???????/?????? }NET_OUT_UPDATE_MULTI_TALK_DEV; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_UpdateMultiTalkDev(LLONG lLoginID, const NET_IN_UPDATE_MULTI_TALK_DEV* pstuInParam, NET_OUT_UPDATE_MULTI_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_TALK_DEV_START_FIND_CONDITION { char szDevType[32]; /// ???????, "VTH": ?????, "VTO": ????, "VTS": ??????, "VTA": ??????????? char szMiddleNum[16]; /// ?????????? char szNode[64]; /// ?????????? char szResvered[64]; /// ??????? }NET_TALK_DEV_START_FIND_CONDITION, NET_TALK_DEV_CONDITION; ///@brief CLIENT_RemoveMultiTalkDev ??? typedef struct tagNET_IN_REMOVE_MULTI_TALK_DEV { DWORD dwSize; /// ??????? int nRemoveInfoNum; /// ????????? UINT nRemoveInfo[128]; /// ????????????? BOOL bUseRemoveCondition; /// ?????????????? NET_TALK_DEV_CONDITION stuRemoveCondition; /// ????????????? }NET_IN_REMOVE_MULTI_TALK_DEV; ///@brief CLIENT_RemoveMultiTalkDev ???? typedef struct tagNET_OUT_REMOVE_MULTI_TALK_DEV { DWORD dwSize; /// ??????? UINT nFailCount; /// ??????????? int nFailCodesNum; /// ??????? UINT nFailCodes[128]; /// ???????/?????? }NET_OUT_REMOVE_MULTI_TALK_DEV; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveMultiTalkDev(LLONG lLoginID, const NET_IN_REMOVE_MULTI_TALK_DEV* pstuInParam, NET_OUT_REMOVE_MULTI_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief CLIENT_RemoveAllTalkDev ??? typedef struct tagNET_IN_REMOVE_ALL_TALK_DEV { DWORD dwSize; /// ??????? }NET_IN_REMOVE_ALL_TALK_DEV; ///@brief CLIENT_RemoveAllTalkDev ???? typedef struct tagNET_OUT_REMOVE_ALL_TALK_DEV { DWORD dwSize; /// ??????? }NET_OUT_REMOVE_ALL_TALK_DEV; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveAllTalkDev(LLONG lLoginID, const NET_IN_REMOVE_ALL_TALK_DEV* pstuInParam, NET_OUT_REMOVE_ALL_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief CLIENT_StartFindTalkDev ?????????? typedef struct tagNET_IN_START_FIND_TALK_DEV { DWORD dwSize; /// ??????? NET_TALK_DEV_START_FIND_CONDITION stuCondition; /// ???????????? } NET_IN_START_FIND_TALK_DEV; ///@brief CLIENT_StartFindTalkDev ?????????? typedef struct tagNET_OUT_START_FIND_TALK_DEV { DWORD dwSize; /// ??????? UINT nTotal; /// ????????????? UINT nCaps; /// ???????, doFind?????????????????????? } NET_OUT_START_FIND_TALK_DEV; ///@brief CLIENT_DoFindFindTalkDev ?????????? typedef struct tagNET_IN_DO_FIND_TALK_DEV { DWORD dwSize; /// ??????? UINT nOffset; /// ???????????? UINT nCount; /// ???????????????????, ???????startFind?????nCaps??????? } NET_IN_DO_FIND_TALK_DEV; ///@brief ?????????? typedef struct tagNET_TALK_DEV_DO_FIND_INFO { NET_TALK_DEV_DETAIL_INFO stuInfo; /// ????????????? UINT nRecNo; /// ?????? char szResvered[60]; /// ??????? }NET_TALK_DEV_DO_FIND_INFO; ///@brief CLIENT_DoFindFindTalkDev ?????????? typedef struct tagNET_OUT_DO_FIND_TALK_DEV { DWORD dwSize; /// ??????? UINT nMaxNum; /// ????????????????,????????NET_IN_DO_FIND_TALK_DEV??nCount NET_TALK_DEV_DO_FIND_INFO* pstuInfo; /// ??????????, ???????????????, ?????NET_TALK_DEV_DO_FIND_INFO*nMaxNum UINT nRetNum; /// ????????????? } NET_OUT_DO_FIND_TALK_DEV; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartFindTalkDev(LLONG lLoginID, const NET_IN_START_FIND_TALK_DEV* pstuInParam, NET_OUT_START_FIND_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief ?????????, lFindID?CLIENT_StartFindTalkDev??????????ID ///@param[in] lFindID ?????? ///@param[in] pstuInParam ?????????? ///@param[out]pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindTalkDev(LLONG lFindID, const NET_IN_DO_FIND_TALK_DEV* pstuInParam, NET_OUT_DO_FIND_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief ??????????, lFindID?CLIENT_StartFindTalkDev??????????ID ///@param[in] lFindID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindTalkDev(LLONG lFindID); ///@brief ???????????? typedef struct tagNET_NOTIFY_TALK_DEV_TASK_STATE { char szTaskName[32]; /// ??????????? UINT nIndex; /// ?????????? UINT nErrorCode; /// ??????????????, 0:???, 1: ??????, 2: ??????????, 3: ??????, 4: IP??? char szResvered[1024]; /// ??????? }NET_NOTIFY_TALK_DEV_TASK_STATE; ///@brief ??????????????????????, lAttachHandle ? CLIENT_AttachTalkDev ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuTalkDevTaskState ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyTalkDevTaskState)(LLONG lAttachHandle, NET_NOTIFY_TALK_DEV_TASK_STATE* pstuTalkDevTaskState, LDWORD dwUser); ///@brief CLIENT_AttachTalkDev ?????? typedef struct tagNET_IN_ATTACH_TALK_DEV { DWORD dwSize; /// ????????,????? char szResvered[4]; /// ?????? fNotifyTalkDevTaskState cbNotify; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_TALK_DEV; ///@brief CLIENT_AttachTalkDev ?????? typedef struct tagNET_OUT_ATTACH_TALK_DEV { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_TALK_DEV; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachTalkDev(LLONG lLoginID,const NET_IN_ATTACH_TALK_DEV* pstuInParam, NET_OUT_ATTACH_TALK_DEV* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachTalkDev(LLONG lAttachHandle); ///@brief CLIENT_GetActiveChannelInfo ?????? typedef struct tagNET_IN_GET_ACTIVE_CHANNEL_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_ACTIVE_CHANNEL_INFO; ///@brief ?????? typedef struct tagNET_CAMERA_CHANNEL_INFO { UINT nChannel; /// ????? UINT nPort; /// ???? char szName[256]; /// ??????? char szSerialNo[64]; /// ?????? char szMac[64]; /// Mac??? char szAddress[64]; /// ???????????? char szProtocolType[32]; /// ????????????????? char szResvered[1024]; /// ??????? }NET_CAMERA_CHANNEL_INFO; ///@brief CLIENT_GetActiveChannelInfo ??????, ?????????????????? typedef struct tagNET_OUT_GET_ACTIVE_CHANNEL_INFO { DWORD dwSize; /// ????????,????? int nCameraChannelInfoNum; /// ??????????????????????????? NET_CAMERA_CHANNEL_INFO stuCameraChannelInfo[1024]; /// ?????? }NET_OUT_GET_ACTIVE_CHANNEL_INFO; ///@brief ??????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetActiveChannelInfo(LLONG lLoginID, const NET_IN_GET_ACTIVE_CHANNEL_INFO* pInParam, NET_OUT_GET_ACTIVE_CHANNEL_INFO* pOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_ARM_DETAIL_OPTIONS { NET_EM_SCENE_MODE emProfile; /// ???? EM_AREAARM_TRIGGERMODE emTriggerMode; /// ??????? char szName[64]; /// ?????????????????????????????? char szClientAddress[64]; /// ???????IP?????????????????TriggerMode?Remote?????????????? UINT nID; /// ????????????????????????????????????????????key????????? char szResvered[1020]; /// ??????? }NET_ARM_DETAIL_OPTIONS; ///@brief ??????????? typedef struct tagNET_TIP_SCHEME_GROUP_INFO { char szUUID[64]; /// ????????uuid char szTipGroupUUID[64]; /// ????uuid, ??XRayTipPictureManager.creatGroup?????GroupUUID int nWeight; /// ?????[0,100] char szResvered[124]; /// ??????? }NET_TIP_SCHEME_GROUP_INFO; ///@brief CLIENT_SetZoneArmMode ?????? typedef struct tagNET_IN_SET_ZONE_ARMODE_INFO { DWORD dwSize; /// ????????,????? int nZoneNum; /// ???????????????????? int nZones[256]; /// ????????????????????1????? char szPwd[64]; /// ???????? char szArmMode[32]; /// ????????:1."T":Total????/????????? 2."D" ???? NET_ARM_DETAIL_OPTIONS stuArmDetailOptions; /// ???????????? }NET_IN_SET_ZONE_ARMODE_INFO; ///@brief ????????? typedef struct tagNET_ARM_MODE_ZONE_ABNORMAL_INFO { char szName[32]; /// ???????? char szReason[32]; /// ????? int nIndex; /// ?????? char szResvered[1020]; /// ??????? }NET_ARM_MODE_ZONE_ABNORMAL_INFO; ///@brief ??????? typedef struct tagNET_AREA_ABNORMAL_INFO { int nArea; /// ????????Area??1-64 int nAlarmSourceNum; /// Area??????????????????????????????? int nAlarmSource[256]; /// Area??????????????????? int nZoneAbnormalNum; /// ????????????????????? NET_ARM_MODE_ZONE_ABNORMAL_INFO stuZoneAbnormal[1024]; /// ????????? char szResvered[128]; /// ??????? }NET_AREA_ABNORMAL_INFO; ///@brief ???????? typedef struct tagNET_ZONE_ARM_MODE_DEVICE_FAULT_INFO { char szName[32]; /// ??????? char szReason[32]; /// ????? char szResvered[1024]; /// ??????? }NET_ZONE_ARM_MODE_DEVICE_FAULT_INFO; ///@brief CLIENT_SetZoneArmMode ??????, ????????????????????? typedef struct tagNET_OUT_SET_ZONE_ARMODE_INFO { DWORD dwSize; /// ????????,????? int nArmResult; /// ???????,0: ???,1: ??? int nAreaAbnormalNum; /// ??????????????????? int nDeviceFaultNum; /// ???????????????????? int nAreaAbnormalRetNum; /// ????????????????????? UINT nCode; /// ?????? NET_AREA_ABNORMAL_INFO* pstuAreaAbnormal; /// ?????????????????????????????sizeof(NET_AREA_ABNORMAL_INFO)*nAreaAbnormalNum NET_ZONE_ARM_MODE_DEVICE_FAULT_INFO stuDeviceFault[64]; /// ???????? char szMessage[256]; /// ??????? }NET_OUT_SET_ZONE_ARMODE_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetZoneArmMode(LLONG lLoginID, const NET_IN_SET_ZONE_ARMODE_INFO* pstuInParam, NET_OUT_SET_ZONE_ARMODE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetZoneArmMode ?????? typedef struct tagNET_IN_GET_ZONE_ARMODE_INFO { DWORD dwSize; /// ????????,????? int nZoneNum; /// ???????????????????? int nZones[256]; /// ??????????????????????-1?????????????????????? }NET_IN_GET_ZONE_ARMODE_INFO; ///@brief CLIENT_GetZoneArmMode ?????? typedef struct tagNET_OUT_GET_ZONE_ARMODE_INFO { DWORD dwSize; /// ????????,????? int nStateNum; /// ????????????????????(????) char szState[256][32]; /// ????????:1."T":Total????/????????? 2."D" ???? }NET_OUT_GET_ZONE_ARMODE_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetZoneArmMode(LLONG lLoginID, const NET_IN_GET_ZONE_ARMODE_INFO* pstuInParam, NET_OUT_GET_ZONE_ARMODE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_CaptureAccessPersonCollectionCmd ?????? typedef struct tagNET_IN_CAPTURE_ACCESS_PERSON_COLLECTION_CMD { DWORD dwSize; /// ????????,????? int nType; /// ???????, 1-????, 2-???, 4-???, 8-??, 16-???, 32-???? char szUUID[128]; /// UUID int nAllowTime; /// ?????????????, ??????0-???????????? int nFaceCount; /// 0-??????????; >0???1????????????????????Type?????????? int nFingferCount; /// 0-??????????; >0???1????????????????????Type?????????? int nCardCount; /// 0-??????????; >0???1????????????????????Type?????????? int nIrisCount; /// 0-??????????; >0???1????????????????????Type?????????? char szUserID[64]; /// ???id }NET_IN_CAPTURE_ACCESS_PERSON_COLLECTION_CMD; ///@brief CLIENT_CaptureAccessPersonCollectionCmd ?????? typedef struct tagNET_OUT_CAPTURE_ACCESS_PERSON_COLLECTION_CMD { DWORD dwSize; /// ????????,????? }NET_OUT_CAPTURE_ACCESS_PERSON_COLLECTION_CMD; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CaptureAccessPersonCollectionCmd(LLONG lLoginID, const NET_IN_CAPTURE_ACCESS_PERSON_COLLECTION_CMD* pstuInParam, NET_OUT_CAPTURE_ACCESS_PERSON_COLLECTION_CMD* pstuOutParam, int nWaitTime); ///@brief ????????? typedef struct tagNET_NOTIFY_PERSON_COLLECTION_DATA_INFO { UINT nLength; /// ??????? UINT nOffset; /// ??????? UINT nType; /// ??????? char szResvered[116]; /// ??????? }NET_NOTIFY_PERSON_COLLECTION_DATA_INFO; ///@brief ???????????? typedef struct tagNET_NOTIFY_PERSON_COLLECTION_INFO { NET_TIME stuUTC; /// UTC??? char szUUID[128]; /// ?????????? char szUserID[64]; /// ???ID??? NET_NOTIFY_PERSON_COLLECTION_DATA_INFO stuDataInfo[20]; /// ????????? int nDataInfoNum; /// ????????????? char szResvered[1020]; /// ??????? }NET_NOTIFY_PERSON_COLLECTION_INFO; ///@brief ??????????????????????, lAttachHandle ? CLIENT_AttachAccessPersonCollection ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuTalkDevTaskState ???????????? ///@param[out] pBinData ?????????? ///@param[out] dwBinDataLen ????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyPersonCollection )(LLONG lAttachHandle, NET_NOTIFY_PERSON_COLLECTION_INFO* pstuPersonCollection, const char* pBinData, DWORD dwBinDataLen, LDWORD dwUser); ///@brief CLIENT_AttachAccessPersonCollection ?????? typedef struct tagNET_IN_ATTACH_ACCESS_PERSON_COLLECTION { DWORD dwSize; /// ????????,????? char szResvered[4]; /// ?????? fNotifyPersonCollection cbNotify; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_ACCESS_PERSON_COLLECTION; ///@brief CLIENT_AttachAccessPersonCollection ?????? typedef struct tagNET_OUT_ATTACH_ACCESS_PERSON_COLLECTION { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_ACCESS_PERSON_COLLECTION; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachAccessPersonCollection(LLONG lLoginID,const NET_IN_ATTACH_ACCESS_PERSON_COLLECTION* pstuInParam, NET_OUT_ATTACH_ACCESS_PERSON_COLLECTION* pstuOutParam, int nWaitTime); ///@brief ??????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachAccessPersonCollection(LLONG lAttachHandle); ///@brief ????????????? typedef struct tagNET_BINARY_DATA_INFO { int nType; /// ????????, -1-???, 0-??????, 1-?????????, 2-??????, 3-?????????, 4-??????, 5-?????????, 6-????base64, 7-?????????base64, 8-???????, 9-?????????, 10-???????? /// 11-???????????, 12-????????????(??), 13-???????????????(??), 14-????????????(??), 15-???????????????(??), 16-????????????(??), 17-???????????????(??), 18-????????????(??), 19-???????????????(??) int nOffset; /// ????? int nLength; /// ???? char szResvered[20]; /// ??????? }NET_BINARY_DATA_INFO; ///@brief ??????????? typedef struct tagNET_NOTIFY_PUSH_USER_INFO { char szUserID[64]; /// ???ID char szUserName[512]; /// ????? char szPassword[32]; /// ???? char szIDCardNo[20]; /// ??????? int nBinaryDataInfoNum; /// ????????????????? NET_BINARY_DATA_INFO stuBinaryDataInfo[20]; /// ????????????? int nCardNoNum; /// ??????? char szCardNo[5][32]; /// ???? int nFingerPrintDataNum; /// ????????????? int nFingerPrintDataLen[10]; /// ????????????? char szFingerPrintData[10][4096]; /// ?????????? char szUUID[64]; /// ??????ID char szResvered[1020]; /// ??????? }NET_NOTIFY_PUSH_USER_INFO; ///@brief ?????????????????, lAttachHandle ? CLIENT_AttachAccessPersonCollectionPushProc ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuPushUserInfo ????????????? ///@param[out] pBinData ?????????? ///@param[out] dwBinDataLen ????????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyPushUserInfo )(LLONG lAttachHandle, NET_NOTIFY_PUSH_USER_INFO* pstuPushUserInfo, const char* pBinData, DWORD dwBinDataLen, LDWORD dwUser); ///@brief CLIENT_AttachAccessPersonCollectionPushProc ?????? typedef struct tagNET_IN_ATTACH_ACCESS_PERSON_COLLECTION_PUSH_PROC { DWORD dwSize; /// ????????,????? char szResvered[4]; /// ?????? fNotifyPushUserInfo cbNotify; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_ACCESS_PERSON_COLLECTION_PUSH_PROC; ///@brief CLIENT_AttachAccessPersonCollectionPushProc ?????? typedef struct tagNET_OUT_ATTACH_ACCESS_PERSON_COLLECTION_PUSH_PROC { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_ACCESS_PERSON_COLLECTION_PUSH_PROC; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachAccessPersonCollectionPushProc(LLONG lLoginID,const NET_IN_ATTACH_ACCESS_PERSON_COLLECTION_PUSH_PROC* pstuInParam, NET_OUT_ATTACH_ACCESS_PERSON_COLLECTION_PUSH_PROC* pstuOutParam, int nWaitTime); ///@brief ???????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachAccessPersonCollectionPushProc(LLONG lAttachHandle); ///@brief CLIENT_ResponseAccessPersonCollectionResult ?????? typedef struct tagNET_IN_RESPONSE_ACCESS_PERSON_COLLECTION_RESULT { DWORD dwSize; /// ????????,????? UINT nResult; /// ?????? 0:?????? 1:??????? 2:????? char szUserID[64]; /// ???id char szUUID[64]; /// ??????ID }NET_IN_RESPONSE_ACCESS_PERSON_COLLECTION_RESULT; ///@brief CLIENT_ResponseAccessPersonCollectionResult ?????? typedef struct tagNET_OUT_RESPONSE_ACCESS_PERSON_COLLECTION_RESULT { DWORD dwSize; /// ????????,????? }NET_OUT_RESPONSE_ACCESS_PERSON_COLLECTION_RESULT; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ResponseAccessPersonCollectionResult(LLONG lLoginID, const NET_IN_RESPONSE_ACCESS_PERSON_COLLECTION_RESULT* pstuInParam, NET_OUT_RESPONSE_ACCESS_PERSON_COLLECTION_RESULT* pstuOutParam, int nWaitTime); ///@brief ???????? typedef struct tagNET_TIP_SCHEME_INFO { char szUUID[64]; /// ????uuid BOOL bEnable; /// ??? int nPackageInterval; /// ??????? char szBeginTime[32]; /// ????????????????? ?? "00:00:00" char szEndTime[32]; /// ?????????????????? ?? "23:59:59" UINT nTIPTime; /// ??????(s) int nTIPExternTime; /// ??????????(s) int nFloatingRange; /// ?????????????? int nTargetType; /// ??????????? 0:?????? 1:???????? 2:?????? char szName[128]; /// ???????? char szTargetValue[128][128]; /// ??????????? ????????????0?????????"Device" ????????????1???????????????? ????????????2?????????????? int nTargetValueNum; /// ?????????????? int nGroupsNum; /// ???????? NET_TIP_SCHEME_GROUP_INFO stuGroups[100]; ///??????????? char szResvered[1024]; /// ??????? }NET_TIP_SCHEME_INFO; ///@brief CLIENT_AddXRayTipScheme ?????? typedef struct tagNET_IN_ADD_XRAY_TIPSCHEME_INFO { DWORD dwSize; /// ????????,????? NET_TIP_SCHEME_INFO stuScheme; /// ???????? }NET_IN_ADD_XRAY_TIPSCHEME_INFO; ///@brief CLIENT_AddXRayTipScheme ?????? typedef struct tagNET_OUT_ADD_XRAY_TIPSCHEME_INFO { DWORD dwSize; /// ????????,????? int nGroupsUUIDNum; /// ??????uuid???? char szGroupsUUID[100][64]; /// ??????uuid char szUUID[64]; /// ????uuid }NET_OUT_ADD_XRAY_TIPSCHEME_INFO; ///@brief ????tip???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddXRayTipScheme(LLONG lLoginID, const NET_IN_ADD_XRAY_TIPSCHEME_INFO* pstuInParam, NET_OUT_ADD_XRAY_TIPSCHEME_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeleteXRayTipScheme ?????? typedef struct tagNET_IN_DELETE_XRAY_TIPSCHEME_INFO { DWORD dwSize; /// ????????,????? char szUUID[64]; /// ????uuid }NET_IN_DELETE_XRAY_TIPSCHEME_INFO; ///@brief CLIENT_DeleteXRayTipScheme ?????? typedef struct tagNET_OUT_DELETE_XRAY_TIPSCHEME_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_DELETE_XRAY_TIPSCHEME_INFO; ///@brief ???tip???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteXRayTipScheme(LLONG lLoginID, const NET_IN_DELETE_XRAY_TIPSCHEME_INFO* pstuInParam, NET_OUT_DELETE_XRAY_TIPSCHEME_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyXRayTipScheme ?????? typedef struct tagNET_IN_MODIFY_XRAY_TIPSCHEME_INFO { DWORD dwSize; /// ????????,????? NET_TIP_SCHEME_INFO stuScheme; /// ???????? }NET_IN_MODIFY_XRAY_TIPSCHEME_INFO; ///@brief CLIENT_ModifyXRayTipScheme ?????? typedef struct tagNET_OUT_MODIFY_XRAY_TIPSCHEME_INFO { DWORD dwSize; /// ????????,????? int nGroupsUUIDNum; /// ??????uuid???? char szGroupsUUID[100][64]; /// ??????uuid }NET_OUT_MODIFY_XRAY_TIPSCHEME_INFO; ///@brief ???tip???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyXRayTipScheme(LLONG lLoginID, const NET_IN_MODIFY_XRAY_TIPSCHEME_INFO* pstuInParam, NET_OUT_MODIFY_XRAY_TIPSCHEME_INFO* pstuOutParam, int nWaitTime); ///@brief ?????????????? typedef struct tagNET_TIP_SCHEME_PICTURE_INFO { char szUUID[64]; /// ??uuid BOOL bEnable; /// ????? char szResvered[252]; /// ??????? }NET_TIP_SCHEME_PICTURE_INFO; ///@brief CLIENT_ModifyXRayTipSchemePicture ?????? typedef struct tagNET_IN_MODIFY_XRAY_TIPSCHEME_PICTURE_INFO { DWORD dwSize; /// ????????,????? char szGroupUUID[64]; /// ??????uuid int nPictureNum; /// ?????? NET_TIP_SCHEME_PICTURE_INFO stuPictureList[32]; /// ?????????????? }NET_IN_MODIFY_XRAY_TIPSCHEME_PICTURE_INFO; ///@brief CLIENT_ModifyXRayTipSchemePicture ?????? typedef struct tagNET_OUT_MODIFY_XRAY_TIPSCHEME_PICTURE_INFO { DWORD dwSize; /// ????????,????? int nFailCodesNum; /// ????????? UINT nFailCodes[32]; /// ??????????, ?????????????? int nFailCount; /// ?????? }NET_OUT_MODIFY_XRAY_TIPSCHEME_PICTURE_INFO; ///@brief ???tip?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyXRayTipSchemePicture(LLONG lLoginID, const NET_IN_MODIFY_XRAY_TIPSCHEME_PICTURE_INFO* pstuInParam, NET_OUT_MODIFY_XRAY_TIPSCHEME_PICTURE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_CreatTipPictureGroup ?????? typedef struct tagNET_IN_CREAT_TIPPICTURE_GROUP_INFO { DWORD dwSize; /// ????????,????? UINT nGroupType; /// ?????? 0:CTI 1:FTI char szGroupName[128]; /// ??????????? }NET_IN_CREAT_TIPPICTURE_GROUP_INFO; ///@brief CLIENT_CreatTipPictureGroup ?????? typedef struct tagNET_OUT_CREAT_TIPPICTURE_GROUP_INFO { DWORD dwSize; /// ????????,????? UINT nGroupID; /// ?????ID char szGroupUUID[64]; /// ??uuid }NET_OUT_CREAT_TIPPICTURE_GROUP_INFO; ///@brief ????TIP???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CreatTipPictureGroup(LLONG lLoginID, const NET_IN_CREAT_TIPPICTURE_GROUP_INFO* pstuInParam, NET_OUT_CREAT_TIPPICTURE_GROUP_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyTipPictureGroup ?????? typedef struct tagNET_IN_MODIFY_TIPPICTURE_GROUP_INFO { DWORD dwSize; /// ????????,????? UINT nGroupID; /// ????ID char szGroupName[128]; /// ???????? BOOL bGroupEnable; /// ??????? UINT nGroupWeight; /// ?????[0,100] char szGroupUUID[64]; /// ??uuid int nGroupIDType; /// ??id???? 0??????GroupID 1??????GroupUUID }NET_IN_MODIFY_TIPPICTURE_GROUP_INFO; ///@brief CLIENT_ModifyTipPictureGroup ?????? typedef struct tagNET_OUT_MODIFY_TIPPICTURE_GROUP_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_MODIFY_TIPPICTURE_GROUP_INFO; ///@brief ???TIP???? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyTipPictureGroup(LLONG lLoginID, const NET_IN_MODIFY_TIPPICTURE_GROUP_INFO* pstuInParam, NET_OUT_MODIFY_TIPPICTURE_GROUP_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeleteTipPictureGroupByCondition ?????? typedef struct tagNET_IN_DELETE_TIPPICTURE_GROUP_BY_CONDITION_INFO { DWORD dwSize; /// ????????,????? char szGroupUUID[64]; /// ??UUID }NET_IN_DELETE_TIPPICTURE_GROUP_BY_CONDITION_INFO; ///@brief CLIENT_DeleteTipPictureGroupByCondition ?????? typedef struct tagNET_OUT_DELETE_TIPPICTURE_GROUP_BY_CONDITION_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_DELETE_TIPPICTURE_GROUP_BY_CONDITION_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteTipPictureGroupByCondition(LLONG lLoginID, const NET_IN_DELETE_TIPPICTURE_GROUP_BY_CONDITION_INFO* pstuInParam, NET_OUT_DELETE_TIPPICTURE_GROUP_BY_CONDITION_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? typedef struct tagNET_MULTI_APPEND_TIPPICTURE_INFO { int nLength; /// TIP???????? int nOffset; /// TIP????????????? char szPath[128]; /// U????????TIP???????????UUID char szName[128]; /// ?????? char szResvered[256]; /// ??????? }NET_MULTI_APPEND_TIPPICTURE_INFO; ///@brief CLIENT_MultiAppendTipPicture ?????? typedef struct tagNET_IN_MULTI_APPEND_TIPPICTURE_INFO { DWORD dwSize; /// ????????,????? UINT nGroupID; /// ????ID char szGroupUUID[64]; /// ??uuid int nGroupIDType; /// ?????? 0:CTI 1:FTI int nPictureInfoNum; /// ??????????? NET_MULTI_APPEND_TIPPICTURE_INFO stuPictureInfo[100]; /// ??????? /* ???????????? */ char *pBuffer; /// ??????,?????????? int nBufferLen; /// ??????????? }NET_IN_MULTI_APPEND_TIPPICTURE_INFO; ///@brief CLIENT_MultiAppendTipPicture ?????? typedef struct tagNET_OUT_MULTI_APPEND_TIPPICTURE_INFO { DWORD dwSize; /// ????????,????? int nPictureIDListNum; /// ???????ID???????? UINT nPictureIDList[100]; /// ???????ID???? int nErrorCodeNum; /// ??????????? int nErrorCode[100]; /// ??????? 0:??????? ???? int nPictureUUIDListNum; /// ??uuid???????? char szPictureUUIDList[100][64]; /// ??uuid???? }NET_OUT_MULTI_APPEND_TIPPICTURE_INFO; ///@brief ?????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MultiAppendTipPicture(LLONG lLoginID, const NET_IN_MULTI_APPEND_TIPPICTURE_INFO* pstuInParam, NET_OUT_MULTI_APPEND_TIPPICTURE_INFO* pstuOutParam, int nWaitTime); ///@brief ????????? typedef struct tagNET_MODIFY_TIPPICTURE_INFO { char szPictureName[128]; /// ???? UINT nPictureID; /// ??id BOOL bPictureEnable; /// ????? int nPictureIDType; /// ??ID???? 0??????PictureID 1??????PictureUUID char szPictureUUID[64]; /// ??uuid UINT nLength; /// tip??????,????????? UINT nOffset; /// tip????????????????????????? char szResvered[252]; /// ??????? }NET_MODIFY_TIPPICTURE_INFO; ///@brief CLIENT_ModifyTipPicture ?????? typedef struct tagNET_IN_MODIFY_TIPPICTURE_INFO { DWORD dwSize; /// ????????,????? int nPictureInfoNum; /// ??????????? NET_MODIFY_TIPPICTURE_INFO stuPictureInfo[100]; /// ??????? /* ???????????? */ char *pBuffer; /// ??????,?????????? int nBufferLen; /// ??????????? }NET_IN_MODIFY_TIPPICTURE_INFO; ///@brief CLIENT_ModifyTipPicture ?????? typedef struct tagNET_OUT_MODIFY_TIPPICTURE_INFO { DWORD dwSize; /// ????????,????? int nErrorCodeNum; /// ??????????? int nErrorCode[100]; /// ??????? 0:??????? }NET_OUT_MODIFY_TIPPICTURE_INFO; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyTipPicture(LLONG lLoginID, const NET_IN_MODIFY_TIPPICTURE_INFO* pstuInParam, NET_OUT_MODIFY_TIPPICTURE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeleteTipPictureByCondition ?????? typedef struct tagNET_IN_DELETE_TIPPICTURE_BY_CONDITION_INFO { DWORD dwSize; /// ????????,????? int nPictureUUIDNum; /// ?????? char szPictureUUIDList[32][64]; ///??uuid???? }NET_IN_DELETE_TIPPICTURE_BY_CONDITION_INFO; ///@brief CLIENT_DeleteTipPictureByCondition ?????? typedef struct tagNET_OUT_DELETE_TIPPICTURE_BY_CONDITION_INFO { DWORD dwSize; /// ????????,????? int nErrorCodeNum; /// ??????????? int nErrorCode[32]; /// ??????? 0:??????? }NET_OUT_DELETE_TIPPICTURE_BY_CONDITION_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteTipPictureByCondition(LLONG lLoginID, const NET_IN_DELETE_TIPPICTURE_BY_CONDITION_INFO* pstuInParam, NET_OUT_DELETE_TIPPICTURE_BY_CONDITION_INFO* pstuOutParam, int nWaitTime); ///////////////////////////-----------XRayOperatorInfoFind begin------------/////////////////////////////////////// ///@brief ???????????????????????,?????CLIENT_StartFindXRayOperator, CLIENT_FindNextXRayOperator typedef enum tagNET_EM_XRAY_OPERATOR_FIND_TYPE { NET_EM_USER_LOGIN_TIME = 1, /// ???????????,????????NET_USER_LOGIN_TIME_CONDITION_INFO??????????NET_USER_LOGIN_TIME_FIND_RESULT_INFO }NET_EM_XRAY_OPERATOR_FIND_TYPE; ///@brief NET_EM_USER_LOGIN_TIME ???????????,??????????? typedef struct tagNET_USER_LOGIN_TIME_CONDITION_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szUserNameArray[1024][64]; /// ????????? int nUserNameArrayNum; /// ????????????????? char szGroupName[64]; /// ??????? char szUserName[64]; /// ????? char szReserved[1020]; /// ?????? }NET_USER_LOGIN_TIME_CONDITION_INFO; ///@brief NET_EM_USER_LOGIN_TIME ??????????,???????????? typedef struct tagNET_USER_LOGIN_TIME_FIND_RESULT_INFO { char szUserName[64]; /// ????? char szGroupName[64]; /// ??????? NET_TIME stuLoginTime; /// ?????? NET_TIME stuLogoutTime; /// ?????? TP_U64 nLoginHour; /// ???????????????? char szMemo[128]; /// ??????? char szLocation[64]; /// ?????? char szSubLocation[64]; /// ??????? char szReserved[1024]; /// ?????? }NET_USER_LOGIN_TIME_FIND_RESULT_INFO; ///@brief CLIENT_StartFindXRayOperator ?????? typedef struct tagNET_IN_START_FIND_XRAY_OPERATOR_INFO { DWORD dwSize; /// ????????,????? NET_EM_XRAY_OPERATOR_FIND_TYPE emFindType; /// ??????? void* pstuFindCondition; /// ?????????????????????????????? }NET_IN_START_FIND_XRAY_OPERATOR_INFO; ///@brief CLIENT_StartFindXRayOperator ?????? typedef struct tagNET_OUT_START_FIND_XRAY_OPERATOR_INFO { DWORD dwSize; /// ????????,????? LLONG lFindHandle; /// ?????? UINT nToken; /// ??????? UINT nCount; /// ???????????? }NET_OUT_START_FIND_XRAY_OPERATOR_INFO; ///@brief ?????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindXRayOperator(LLONG lLoginID, const NET_IN_START_FIND_XRAY_OPERATOR_INFO* pstuInParam, NET_OUT_START_FIND_XRAY_OPERATOR_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_FindNextXRayOperator ?????? typedef struct tagNET_IN_FIND_NEXT_XRAY_OPERATOR_INFO { DWORD dwSize; /// ????????,????? LLONG lFindHandle; /// StartFind?????? UINT nCount; /// ???????????? }NET_IN_FIND_NEXT_XRAY_OPERATOR_INFO; ///@brief CLIENT_FindNextXRayOperator ?????? typedef struct tagNET_OUT_FIND_NEXT_XRAY_OPERATOR_INFO { DWORD dwSize; /// ????????,????? int nFindRetCount; /// ???????????????? void* pstuFindResult; /// ??????, ???????????????????????????????????????????????sizeof(??????????)*nCount??nCount????????????????? }NET_OUT_FIND_NEXT_XRAY_OPERATOR_INFO; ///@brief ????????????????????????????????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindNextXRayOperator(const NET_IN_FIND_NEXT_XRAY_OPERATOR_INFO* pstuInParam, NET_OUT_FIND_NEXT_XRAY_OPERATOR_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????????????????????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindXRayOperator(const LLONG lFindHandle); ///@brief CLIENT_SetXRayOperatorFindOffset ?????? typedef struct tagNET_IN_SET_FIND_OFFSET_INFO { DWORD dwSize; /// ????????,????? UINT nToken; /// ??????? UINT nOffset; /// ?????? }NET_IN_SET_FIND_OFFSET_INFO; ///@brief CLIENT_SetXRayOperatorFindOffset ?????? typedef struct tagNET_OUT_SET_FIND_OFFSET_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SET_FIND_OFFSET_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetXRayOperatorFindOffset(LLONG lLoginID, const NET_IN_SET_FIND_OFFSET_INFO* pstuInParam, NET_OUT_SET_FIND_OFFSET_INFO* pstuOutParam, int nWaitTime); ///////////////////////////-----------XRayOperatorInfoFind end------------/////////////////////////////////////// ///////////////////////////-----------XRayTIPSystemReportInfoFind begin------------/////////////////////////////////////// ///@brief TIP?????????,?????CLIENT_StartFindXRayOperator, CLIENT_FindNextXRayOperator typedef enum tagNET_FIND_EM_XRAY_TIPSYSTEM_FIND_TYPE { NET_FIND_EM_PICTURE_INJECTION_REPORT = 1, /// ???tip?????,???????: NET_PICTURE_INJECTION_REPORT_CONDITION_INFO ?????? NET_PICTURE_INJECTION_REPORT_FIND_RESULT_INFO NET_FIND_EM_SAFETY_OFFICER_PERFORMANCE, /// ????????????,???????: NET_SAFETY_OFFICER_PERFORMANCE_CONDITION_INFO ?????? NET_SAFETY_OFFICER_PERFORMANCE_FIND_RESULT_INFO NET_FIND_EM_SAFETY_OFFICER_COMPARE, /// ??????????????,???????: NET_SAFETY_OFFICER_COMPARE_CONDITION_INFO ?????? NET_SAFETY_OFFICER_COMPARE_FIND_RESULT_INFO NET_FIND_EM_OPERATE_LOG, /// ???tip???????,???????: NET_OPERATE_LOG_CONDITION_INFO ?????? NET_OPERATE_LOG_FIND_RESULT_INFO }NET_FIND_EM_XRAY_TIPSYSTEM_FIND_TYPE; ///@brief NET_FIND_EM_PICTURE_INJECTION_REPORT ???tip?????, ??????????? typedef struct tagNET_PICTURE_INJECTION_REPORT_CONDITION_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szReserved[1024]; /// ?????? }NET_PICTURE_INJECTION_REPORT_CONDITION_INFO; ///@brief NET_FIND_EM_PICTURE_INJECTION_REPORT ???tip?????, ?????????? typedef struct tagNET_PICTURE_INJECTION_REPORT_FIND_RESULT_INFO { char szDate[32]; /// ???? char szTime[32]; /// ??? char szUserName[64]; /// ????? char szLocation[64]; /// ??? char szSubLocation[64]; /// ???? char szLibName[64]; /// ?????? char szPicName[64]; /// ?????? char szResult[64]; /// ??????,"CheckOut"??????,"CheckWrong"??????,"UnCheck"????????,"InsertFalse"?????????? UINT nCheckOutTime; /// ?????? UINT nCheckWrongTime; /// ?????? UINT nUnCheckTime; /// ???????? char szReserved[1020]; /// ?????? }NET_PICTURE_INJECTION_REPORT_FIND_RESULT_INFO; ///@brief NET_FIND_EM_SAFETY_OFFICER_PERFORMANCE ????????????, ??????????? typedef struct tagNET_SAFETY_OFFICER_PERFORMANCE_CONDITION_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szUserName[64]; /// ????????? char szReserved[1024]; /// ?????? }NET_SAFETY_OFFICER_PERFORMANCE_CONDITION_INFO; ///@brief NET_FIND_EM_SAFETY_OFFICER_PERFORMANCE ????????????, ?????????? typedef struct tagNET_SAFETY_OFFICER_PERFORMANCE_FIND_RESULT_INFO { char szLocation[64]; /// ??? char szSubLocation[64]; /// ???? TP_U64 nPacketNum; /// ???????? TP_U64 nTIPNum; /// TIP??????? TP_U64 nCheckOut; /// ??????? TP_U64 nCheckWrong; /// ??????? TP_U64 nUnCheck; /// ????????? UINT nCheckPercent; /// ?????(??100??????)??????%????9545???95.45% UINT nWrongPercent; /// ?????(??100??????)??????%????? UINT nCheckOutTime; /// ?????????????? UINT nCheckWrongTime; /// ?????????????? UINT nEvaluationValue; /// ????? UINT nAverageCheckOutTime; /// ????????? char szDate[36]; /// ???? UINT nAverageUnCheckTime; /// ??????????? char szReserved[1020]; /// ?????? }NET_SAFETY_OFFICER_PERFORMANCE_FIND_RESULT_INFO; ///@brief NET_FIND_EM_SAFETY_OFFICER_COMPARE ??????????????, ??????????? typedef struct tagNET_SAFETY_OFFICER_COMPARE_CONDITION_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szUserName[1024][64]; /// ????????? int nUserNameNum; /// ????????????????? char szReserved[1020]; /// ?????? }NET_SAFETY_OFFICER_COMPARE_CONDITION_INFO; ///@brief NET_FIND_EM_SAFETY_OFFICER_COMPARE ??????????????, ?????????? typedef struct tagNET_SAFETY_OFFICER_COMPARE_FIND_RESULT_INFO { char szLocation[64]; /// ??? char szSubLocation[64]; /// ???? TP_U64 nDutyMin; /// ??????(????????) TP_U64 nDutyNum; /// ?????? TP_U64 nPacketNum; /// ???????? TP_U64 nTIPNum; /// TIP??????? TP_U64 nCheckOut; /// ??????? TP_U64 nCheckWrong; /// ??????? TP_U64 nUnCheck; /// ????????? UINT nCheckPercent; /// ?????(??100??????)??????%????9545???95.45% UINT nWrongPercent; /// ?????(??100??????)??????%????? UINT nCheckOutTime; /// ?????????????? UINT nCheckWrongTime; /// ?????????????? UINT nEvaluationValue; /// ????? UINT nAverageCheckOutTime; /// ????????? char szUserName[64]; /// ????? UINT nAverageUnCheckTime; /// ??????????? char szReserved[1020]; /// ?????? }NET_SAFETY_OFFICER_COMPARE_FIND_RESULT_INFO; ///@brief NET_FIND_EM_OPERATE_LOG ???tip???????, ??????????? typedef struct tagNET_OPERATE_LOG_CONDITION_INFO { NET_TIME stuStartTime; /// ?????? NET_TIME stuEndTime; /// ??????? char szReserved[1024]; /// ?????? }NET_OPERATE_LOG_CONDITION_INFO; ///@brief NET_FIND_EM_OPERATE_LOG ???tip???????, ?????????? typedef struct tagNET_OPERATE_LOG_FIND_RESULT_INFO { char szUserName[64]; /// ????? char szLocation[64]; /// ??? char szSubLocation[64]; /// ???? NET_TIME stuTime; /// ??? int nOperateType; /// ???????? /// 0???????????? /// 1???????????? /// 2?????????????? /// 3??????????????? char szReserved[1024]; /// ?????? }NET_OPERATE_LOG_FIND_RESULT_INFO; ///@brief CLIENT_StartFindXRayTIPSystem ?????? typedef struct tagNET_IN_START_FIND_XRAY_TIPSYSTEM_INFO { DWORD dwSize; /// ????????,????? NET_FIND_EM_XRAY_TIPSYSTEM_FIND_TYPE emFindType; /// ??????? void* pstuFindCondition; /// ???????, ????????????????????? }NET_IN_START_FIND_XRAY_TIPSYSTEM_INFO; ///@brief CLIENT_StartFindXRayTIPSystem ?????? typedef struct tagNET_OUT_START_FIND_XRAY_TIPSYSTEM_INFO { DWORD dwSize; /// ????????,????? LLONG lFindHandle; /// ?????? UINT nToken; /// ??????? UINT nCount; /// ???????????? }NET_OUT_START_FIND_XRAY_TIPSYSTEM_INFO; ///@brief TIP????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartFindXRayTIPSystem(LLONG lLoginID, const NET_IN_START_FIND_XRAY_TIPSYSTEM_INFO* pstuInParam, NET_OUT_START_FIND_XRAY_TIPSYSTEM_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_FindNextXRayTIPSystem ?????? typedef struct tagNET_IN_FIND_NEXT_XRAY_TIPSYSTEM_INFO { DWORD dwSize; /// ????????,????? LLONG lFindHandle; /// StartFind?????? UINT nCount; /// ???????????? }NET_IN_FIND_NEXT_XRAY_TIPSYSTEM_INFO; ///@brief CLIENT_FindNextXRayTIPSystem ?????? typedef struct tagNET_OUT_FIND_NEXT_XRAY_TIPSYSTEM_INFO { DWORD dwSize; /// ????????,????? int nFindRetCount; /// ???????????????? void* pstuFindResult; /// ??????, ?????????????????????????????????????????sizeof(??????????)*nCount??nCount????????????????? }NET_OUT_FIND_NEXT_XRAY_TIPSYSTEM_INFO; ///@brief TIP???????????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindNextXRayTIPSystem(const NET_IN_FIND_NEXT_XRAY_TIPSYSTEM_INFO* pstuInParam, NET_OUT_FIND_NEXT_XRAY_TIPSYSTEM_INFO* pstuOutParam, int nWaitTime); ///@brief TIP????????????? ///@param[in] lLoginID ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindXRayTIPSystem(const LLONG lFindHandle); ///@brief CLIENT_SetXRayOperatorFindOffset ?????? typedef struct tagNET_IN_SET_XRAY_TIP_SYSTEM_FIND_OFFSET_INFO { DWORD dwSize; /// ????????,????? UINT nToken; /// ??????? UINT nOffset; /// ?????? }NET_IN_SET_XRAY_TIP_SYSTEM_FIND_OFFSET_INFO; ///@brief CLIENT_SetXRayOperatorFindOffset ?????? typedef struct tagNET_OUT_SET_XRAY_TIP_SYSTEM_FIND_OFFSET_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SET_XRAY_TIP_SYSTEM_FIND_OFFSET_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetXRayTIPSystemFindOffset(LLONG lLoginID, const NET_IN_SET_XRAY_TIP_SYSTEM_FIND_OFFSET_INFO* pstuInParam, NET_OUT_SET_XRAY_TIP_SYSTEM_FIND_OFFSET_INFO* pstuOutParam, int nWaitTime); ///////////////////////////-----------XRayTIPSystemReportInfoFind end------------/////////////////////////////////////// ///@brief CLIENT_GetClassify ?????? typedef struct tagNET_IN_GET_CLASSIFY_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_CLASSIFY_INFO; ///@brief ??????? typedef struct tagNET_LABEL_LIMIT_INFO { UINT nMinNumMarkTypeLevel1; /// ????????????????????????????-1????????? UINT nMaxNumMarkTypeLevel1; /// ???????????????????????????-1????????? UINT nMinNumMarkTypeLevel2; /// ????????????????????????????-1????????? UINT nMaxNumMarkTypeLevel2; /// ???????????????????????????-1????????? UINT nMinNumMarkTypeLevel3; /// ?????????????????????????????-1????????? UINT nMaxNumMarkTypeLevel3; /// ????????????????????????????-1????????? char szResvered[240]; /// ??????? }NET_LABEL_LIMIT_INFO; ///@brief ?????? typedef struct tagNET_PRE_TRAIN_CHECK_INFO { int nImgFormatNum; /// ?????????????????? char szImgFormat[10][10]; /// ??????????? NET_LABEL_LIMIT_INFO stulabelLimit; /// ??????? UINT nMaxImgSize[2]; /// ????????????????? UINT nMinImgSize[2]; /// ?????????????????? UINT nMinObjNum; /// ???????????????????n?????????????????????????????????n?? UINT nminTrainDataListLen; /// ?????????????n?? int nNegativeSampleEnable; /// 0:?????????????? 1:???????????? char szResvered[252]; /// ??????? }NET_PRE_TRAIN_CHECK_INFO; ///@brief ??????????? typedef struct tagNET_CLASSIFY_RESOURCE_INFO { EM_AI_SOLUTION_ALGORITHM_TYPE emAlgorithmType; /// ????????????????????????AlgorithmTypeEnum UINT nMarkTypeLevel; /// OD????1??OC??OD+OC????3 NET_PRE_TRAIN_CHECK_INFO stupreTrainCheck; /// ?????? int nSupportMarkTypeShapeNum; /// ???????????????????? char szSupportMarkTypeShape[64][64]; /// ?????????????rect??poly??line??point??circular??ellipse??rotatingRectangle??parallelogram UINT nTrain; /// ?????????????(GPU) UINT nVerify; /// ??????????????(GPU) char szResvered[252]; /// ??????? }NET_CLASSIFY_RESOURCE_INFO; ///@brief ??????? typedef struct tagNET_RESULT_INFO { UINT nClassifyId; /// ????ID char szName[64]; /// ???????? char szConfigureUrl[256]; /// ?????????Url char szCoverImageUrl[256]; /// ??????????Url UINT nDeleteEnable; /// ????????????1????????0???????? char szIllustrationInfo[256]; /// ??????????Url char szInfo[256]; /// ??????????? UINT nStatus; /// ????????0????????1???????????2?????????3??????????? NET_CLASSIFY_RESOURCE_INFO stuClassifyResource; /// ??????????? char szFileName[64]; /// ??????????????? char szTrainingRequireUrl[256]; /// ??????url char szMD5[64]; /// ??????MD5? char szVersion[64]; /// ????????? UINT nGroupId; /// ???????????Id char szResvered[252]; /// ??????? }NET_RESULT_INFO; ///@brief CLIENT_GetClassify ?????? typedef struct tagNET_OUT_GET_CLASSIFY_INFO { DWORD dwSize; /// ????????,????? int nResultNum; /// ??????????? int nRetResultNum; ///???????????????? NET_RESULT_INFO* pstuResult; /// ???????????????????????????????sizeof(NET_RESULT_INFO)*nResultNum }NET_OUT_GET_CLASSIFY_INFO; ///@brief ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetClassify(LLONG lLoginID, const NET_IN_GET_CLASSIFY_INFO* pstuInParam, NET_OUT_GET_CLASSIFY_INFO* pstuOutParam, int nWaitTime); ///@brief ??????? typedef struct tagNET_TASK_CONDITION_INFO { char szName[64]; /// ??????????? UINT nModelStoreId; /// ??????????????????? UINT nClassifyId; /// ????ID char szResvered[252]; /// ??????? }NET_TASK_CONDITION_INFO; ///@brief CLIENT_FindTrainingTask ?????? typedef struct tagNET_IN_FIND_TRAININGTASK_INFO { DWORD dwSize; /// ????????,????? NET_TASK_CONDITION_INFO stuCondition; /// ??????? UINT nBegin; /// ???????????????begin???????????count????????? UINT nCount; /// ?????????????????? }NET_IN_FIND_TRAININGTASK_INFO; ///@brief ??????? typedef struct tagNET_TASK_PROPERTIES_INFO { char szProperty[64]; /// ???? int nPropertyValueNum; /// ????????? char szPropertyValue[30][64]; /// ????? char szResvered[252]; /// ??????? }NET_TASK_PROPERTIES_INFO; ///@brief ?????????? typedef struct tagNET_TASK_LABEL_LIST_INFO { char szMarkType[64]; /// ?????????? int nPropertiesNum; /// ?????????????? NET_TASK_PROPERTIES_INFO stuProperties[30]; /// ?????????? char szResvered[252]; /// ??????? }NET_TASK_LABEL_LIST_INFO; ///@brief ?????????? typedef struct tagNET_MASK_TASK_INFO { UINT nID; /// ???????ID char szName[64]; /// ??????????? char szResvered[252]; /// ??????? }NET_MASK_TASK_INFO; ///@brief ?????????? typedef struct tagNET_RESULT_TASK_INFO { UINT nID; /// ???????ID char szName[64]; /// ??????????? UINT nUserId; /// ???????ID UINT nClassifyId; /// ????ID char szStart[32]; /// "HH:mm:ss",??????????????? char szEnd[32]; /// "HH:mm:ss",???????????????? TP_U64 nStartTime; /// ???????????????????????,???????0 UINT nRunningTime; /// ?????????????,???????0 UINT nTotalIterationNumber; /// ????????? UINT nFinishedIterationNumber; /// ???????????? UINT nStatus; /// ????????0????????1?????????????2?????????????3??????????????4???????????5?????????? UINT nBaseModelId; /// ?????? UINT nEstimateTrainTime; /// ????????? int nLabelListNum; /// ?????????????? int nRetLabelListNum; /// ???????????????????????? NET_TASK_LABEL_LIST_INFO* pstuLabelList; /// ??????????,??????????????????????sizeof(NET_TASK_LABEL_LIST_INFO)*nLabelListNum int nMaskTaskInfoNum; /// ?????????????? NET_MASK_TASK_INFO stuMaskTaskInfo[99]; /// ?????????? UINT nModelStoreId; /// ?????ID char szErrorMsg[1024]; ///??????? char szResvered[252]; /// ??????? }NET_RESULT_TASK_INFO; ///@brief CLIENT_FindTrainingTask ?????? typedef struct tagNET_OUT_FIND_TRAININGTASK_INFO { DWORD dwSize; /// ????????,????? UINT nTotal; /// ??????????????????????? int nResultNum; /// ?????????????? int nRetResultNum; /// ??????????????????? NET_RESULT_TASK_INFO* pstuResult; /// ??????????????????????????????????sizeof(NET_RESULT_TASK_INFO)*nResultNum }NET_OUT_FIND_TRAININGTASK_INFO; ///@brief ????????????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindTrainingTask(LLONG lLoginID, const NET_IN_FIND_TRAININGTASK_INFO* pstuInParam, NET_OUT_FIND_TRAININGTASK_INFO* pstuOutParam, int nWaitTime); ///@brief ??????????????? typedef struct tagNET_NOTIFY_TRAIN_TASK_INFO { UINT nTaskId; /// ???????id UINT nStatus; /// ?????????0?????1???????2???????3???????4????????5????????????????????? UINT nTotalIterationNumber; /// ???????????????status??3?????????1????????????????????????????????? UINT nFinishedIterationNumber; /// ??????????????????status??3?????????1????????????????????????????????? UINT nRunningTime; /// ????????????? UINT nModelStatus; /// 0????????????????1?????????????2????????????3???????????????4. ??????????? char szResvered[1020]; /// ??????? }NET_NOTIFY_TRAIN_TASK_INFO; ///@brief ?????????????????????????????, lAttachHandle ? CLIENT_AttachTrainTask ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuTalkDevTaskState ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyTrainTaskdata )(LLONG lAttachHandle, NET_NOTIFY_TRAIN_TASK_INFO* pstuTrainTaskInfo, LDWORD dwUser); ///@brief CLIENT_AttachTrainTask ?????? typedef struct tagNET_IN_ATTACH_TRAIN_TASK_INFO { DWORD dwSize; /// ????????,????? int nTaskIdNum; /// ???????id??????? UINT nTaskId[128]; /// ???????id(?????????????????????????????????????????????????) fNotifyTrainTaskdata cbNotifyTrainTaskdata; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_TRAIN_TASK_INFO; ///@brief CLIENT_AttachTrainTask ?????? typedef struct tagNET_OUT_ATTACH_TRAIN_TASK_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_TRAIN_TASK_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachTrainTask(LLONG lLoginID,const NET_IN_ATTACH_TRAIN_TASK_INFO* pstuInParam, NET_OUT_ATTACH_TRAIN_TASK_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachTrainTask(LLONG lAttachHandle); ///@brief ??????? typedef struct tagNET_DEVICE_LIST_INFO { char szDeviceId[32]; /// ???ID BOOL bDeployEnable; /// ?????????? char szResvered[1020]; /// ??????? }NET_DEVICE_LIST_INFO; ///@brief CLIENT_SetDevDeployMode ?????? typedef struct tagNET_IN_SET_DEV_DEPLOY_MODE_INFO { DWORD dwSize; /// ????????,????? BOOL bFsuDeployEnable; /// FSU?????????? int nDeviceListNum; /// ??????????? NET_DEVICE_LIST_INFO stuDeviceList[128]; /// ??????? }NET_IN_SET_DEV_DEPLOY_MODE_INFO; ///@brief ???????????ID???? typedef struct tagNET_STATE_DEVICE_LIST_INFO { int nSuccess; /// ????????ID???? char szSuccessID[128][32]; /// ?????????ID???? int nFail; /// ????????ID???? char szFailID[128][32]; /// ???????????ID???? char szResvered[1024]; /// ??????? }NET_STATE_DEVICE_LIST_INFO; ///@brief CLIENT_SetDevDeployMode ?????? typedef struct tagNET_OUT_SET_DEV_DEPLOY_MODE_INFO { DWORD dwSize; /// ????????,????? NET_STATE_DEVICE_LIST_INFO stuStateList; /// ???????????ID???? }NET_OUT_SET_DEV_DEPLOY_MODE_INFO; ///@brief ???????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDevDeployMode(LLONG lLoginID, const NET_IN_SET_DEV_DEPLOY_MODE_INFO* pstuInParam, NET_OUT_SET_DEV_DEPLOY_MODE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetDevDeployMode ?????? typedef struct tagNET_IN_GET_DEV_DEPLOY_MODE_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_DEV_DEPLOY_MODE_INFO; ///@brief CLIENT_GetDevDeployMode ?????? typedef struct tagNET_OUT_GET_DEV_DEPLOY_MODE_INFO { DWORD dwSize; /// ????????,????? BOOL bFsuDeployEnable; /// FSU?????????? int nDeviceListNum; /// ??????????? NET_DEVICE_LIST_INFO stuDeviceList[128]; /// ??????? }NET_OUT_GET_DEV_DEPLOY_MODE_INFO; ///@brief ???????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDevDeployMode(LLONG lLoginID, const NET_IN_GET_DEV_DEPLOY_MODE_INFO* pstuInParam, NET_OUT_GET_DEV_DEPLOY_MODE_INFO* pstuOutParam, int nWaitTime); ///@brief ?????? typedef struct tagNET_USER_INFO { int nID; /// ???ID char szName[128]; /// ????? char szPassword[64]; /// ???? char szType[32]; /// ???????, ?????????? char szMemo[32]; /// ???? char szGroup[128]; /// ?????? UINT nAuthorityCount; /// ?????????? EM_AUTHORITY_MAIN_TYPE emAuthorityList[64]; /// ?????????? BOOL bReserved; /// ???????????, ?????????????? BOOL bSharable; /// ?????????? int nLevel; /// ???, 1~10??1???, 10??? int nMaxMonitorChannels; /// ???????????????, -1??????, 0??????... BOOL bAnonymous; /// ??????? char szReserved[1020]; /// ??????? }NET_USER_INFO; ///@brief CLIENT_GetUserInfoAll?????? typedef struct tagNET_IN_GET_USER_ALL_INFO { DWORD dwSize; /// ??????? }NET_IN_GET_USER_ALL_INFO; ///@brief CLIENT_GetUserInfoAll?????? typedef struct tagNET_OUT_GET_USER_ALL_INFO { DWORD dwSize; /// ??????? int nUserNum; /// ?????????? int nRetUserNum; /// ???????????????? NET_USER_INFO* pstuUserInfo; /// ?????? }NET_OUT_GET_USER_ALL_INFO; ///@brief ????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetUserInfoAll(LLONG lLoginID, const NET_IN_GET_USER_ALL_INFO* pstuInParam, NET_OUT_GET_USER_ALL_INFO* pstuOutParam, int nWaitTime); ///@brief ???????? typedef enum tagEM_EM_CENTRA_PROXY_ACTION { EM_CENTRA_PROXY_ACTION_UNKNOWN = -1, /// ??? EM_CENTRA_PROXY_ACTION_UNBLANKING = 0, /// ???????????? EM_CENTRA_PROXY_ACTION_PRIVIEW = 1, /// ?????????????? EM_CENTRA_PROXY_ACTION_DATA_TRANSMIT = 2, /// ?????????????? }EM_CENTRA_PROXY_ACTION; ///@brief ?????? typedef enum tagEM_CENTRA_PROXY_CODE { EM_CENTRA_PROXY_CODE_UNKNOWN = -1, /// ??? EM_CENTRA_PROXY_CODE_SUCCESS = 0, /// ??? EM_CENTRA_PROXY_CODE_FAIL = 1, /// ??? }EM_CENTRA_PROXY_CODE; ///@brief ??? typedef struct tagNET_VISITOR_CREDENTIALS_INFO { char szCertificateNumber[32]; /// ?????? char szCertificateType[64]; /// ??????? char szIssuingAuthority[128]; /// ?????????? char szReserved[512]; /// ??????? }NET_VISITOR_CREDENTIALS_INFO; ///@brief ????? typedef enum tagEM_VISITOR_STATUS { EM_VISITOR_STATUS_UNKNOWN = -1, /// ??? EM_VISITOR_STATUS_AUDIT, /// ??? EM_VISITOR_STATUS_RESERVATION, /// ??? EM_VISITOR_STATUS_VISITING, /// ??? EM_VISITOR_STATUS_DEPARTURE_VISIT /// ??? }EM_VISITOR_STATUS; ///@brief ???????????? typedef struct tagNET_VISITOR_TARGET_INFO { int nIntervieweeID; /// ??????ID int nWorkNumber; /// ????????? char szDepartment[128]; /// ???????? char szReserved[512]; /// ??????? }NET_VISITOR_TARGET_INFO; ///@brief ????????? typedef struct tagNET_VISITOR_TIME_INFO { char szScheduleInTime[64]; /// ????????? char szRealInTime[64]; /// ?????????? char szScheduleOutTime[64]; /// ???????? char szRealOutTime[64]; /// ????????? int nDuration; /// ????????? char szReserved[508]; /// ??????? }NET_VISITOR_TIME_INFO; ///@brief ?????????? typedef struct tagNET_VISITOR_ENTOURAGES_INFO { char szNames[64]; /// ??????????? char szReserved[256]; /// ??????? }NET_VISITOR_ENTOURAGES_INFO; #define VISITOR_PICTURE_MAX_SIZE 204800 ///@brief ????? typedef struct tagNET_VISITOR_PICTURE_INFO { int nIDPhotoSize; /// ????????? char* szIDPhoto; /// ??????(Base64), ???????????????????204800 int nCapturePicSize; /// ????????? char* szCapturePic; /// ??????(Base64), ???????????????????204800 int nCertificateHeadSize; /// ???????? char* szCertificateHead; /// ??????(Base64), ???????????????????204800 char szReserved[128]; /// ??????? }NET_VISITOR_PICTURE_INFO; ///@brief ?????? typedef struct tagNET_NEW_VISITOR_INFO { char szName[32]; /// ???? char szPhone[16]; /// ??????? char szCompany[128]; /// ???? NET_VISITOR_CREDENTIALS_INFO stCredentials; /// ??? char szAddress[128]; /// ?? char szReason[256]; /// ??????? char szCarNumber[32]; /// ???? char szItems[256]; /// ??????? NET_VISITOR_TARGET_INFO stTarget; /// ???????????? NET_VISITOR_TIME_INFO stTimeInfo; /// ????????? int nAreaIdList[64]; /// ?????????????? int nAreaIdListNum; /// ?????????????????????? int nVisitorTypeID; /// ???????ID char szInviteCode[256]; /// ??????(Base64) char szAccessCode[256]; /// ?????(Base64) NET_VISITOR_ENTOURAGES_INFO stEntourages[32]; /// ?????????? int nEntouragesNum; /// ?????????????????? int nBoxID; /// ???ID EM_VISITOR_STATUS emStatus; /// ????? EM_SEX_TYPE emSex; /// ??? NET_VISITOR_PICTURE_INFO stPicture; /// ????? int nID; /// ???ID char szReserved[1024]; /// ??????? }NET_NEW_VISITOR_INFO; ///@brief ????????? typedef struct tagNET_NEW_INTERVIEWEE_INFO { char szName[32]; /// ???? char szPhone[16]; /// ??????? char szWorkNumber[16]; /// ???? NET_VISITOR_CREDENTIALS_INFO stCredentials; /// ??? char szLocation[32]; /// ?????? int nID; /// ??? char szReserved[1020]; /// ??????? }NET_NEW_INTERVIEWEE_INFO; ///@brief ??????? typedef struct tagNET_VISITOR_AREALIST_INFO { char szAreaName[64]; /// ?????? int nAreaID; /// ????ID char szReserved[252]; /// ??????? }NET_VISITOR_AREALIST_INFO; ///@brief ??????????? typedef struct tagNET_VISITOR_TYPE_LIST_INFO { char szTypeName[64]; /// ????????? int nTypeID; /// ???????ID char szReserved[252]; /// ??????? }NET_VISITOR_TYPE_LIST_INFO; ///@brief ???????????Action????????????????? typedef struct tagNET_CENTRA_PROXY_DETAIL_INFO { NET_NEW_VISITOR_INFO stVisitor; /// ????????? NET_NEW_INTERVIEWEE_INFO stInterviewees[100]; /// ????????????? int nIntervieweesNum; /// ????????????????????? int nAreaListNum; /// ??????????????? NET_VISITOR_AREALIST_INFO stAreaList[64]; /// ??????? NET_VISITOR_TYPE_LIST_INFO stVistorTypeList[32]; /// ??????????? int nVistorTypeListNum; /// ??????????????????? int nErrorCode; /// ?????? 1 ??????? 2 ??? 3 ???????? 4 ??????????? 5 ??????????? 6 ???????????? 7 ????????????? int nTransMethod; /// ??????????? 0????????????????????? 1???????????????????????????? 2?????????????????????? /// 3?????????????????????????? 4??????????????????????????? 5???????????????????????? 6?????????????????? char szReserved[1020]; /// ??????? }NET_CENTRA_PROXY_DETAIL_INFO; ///@brief CLIENT_SetCentraProxyActionResult ?????? typedef struct tagNET_IN_SET_CENTRA_PROXY_ACTION_RESULT_INFO { DWORD dwSize; /// ????????,????? EM_CENTRA_PROXY_ACTION emAction; /// ????????,0:?????????????1:?????????????? char szTransID[36]; /// ????ID,????????????ID EM_CENTRA_PROXY_CODE emErrorCode; /// ??????,0:?????????1:??????? char szURL[1024]; /// ????????? NET_CENTRA_PROXY_DETAIL_INFO stDetailInfo; /// ????????Action????????????????? }NET_IN_SET_CENTRA_PROXY_ACTION_RESULT_INFO; ///@brief CLIENT_SetCentraProxyActionResult ?????? typedef struct tagNET_OUT_SET_CENTRA_PROXY_ACTION_RESULT_INFO { DWORD dwSize; /// ????????,????? EM_CENTRA_PROXY_ACTION emAction; /// ????????,0:?????????????1:?????????????? char szTransID[36]; /// ????ID,????????????ID EM_CENTRA_PROXY_CODE emRet1; /// ??????,0:?????1:???,???Action???????????? EM_CENTRA_PROXY_CODE emRet2; /// ??????,0:?????1:???,???Action??????????????? }NET_OUT_SET_CENTRA_PROXY_ACTION_RESULT_INFO; ///@brief ?????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetCentraProxyActionResult(LLONG lLoginID, const NET_IN_SET_CENTRA_PROXY_ACTION_RESULT_INFO* pstuInParam, NET_OUT_SET_CENTRA_PROXY_ACTION_RESULT_INFO* pstuOutParam, int nWaitTime); ///@brief ??????? typedef struct tagNET_NOTIFY_CENTRA_PROXY_ACTION_INFO { int nAction; /// ????????,0:?????????????1:?????????????? 2:?????????????? char szTransID[36]; /// ????ID,????????????ID char szDstDevCallNo[32]; /// ?????????? UINT nDoorChannel; /// ???????????????????????????????? NET_CENTRA_PROXY_DETAIL_INFO* pstDetailInfo; /// ????????Action?????????????????, ??SDK?????????? char szResvered[1020 - POINTERSIZE]; /// ??????? }NET_NOTIFY_CENTRA_PROXY_ACTION_INFO; ///@brief ??????????????????????????????, lAttachHandle ? CLIENT_AttachCentraProxyAction ???????? ///@param[out] lAttachHandle ?????? ///@param[out] pstuCentraProxyActionInfo ???????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK *fNotifyCentraProxyActiondata )(LLONG lAttachHandle, NET_NOTIFY_CENTRA_PROXY_ACTION_INFO* pstuCentraProxyActionInfo, LDWORD dwUser); ///@brief CLIENT_AttachCentraProxyAction ?????? typedef struct tagNET_IN_ATTACH_CENTRA_PROXY_ACTIONINFO { DWORD dwSize; /// ????????,????? EM_CENTRA_PROXY_ACTION emFilter; /// ????????,0:?????????????1:?????????????? fNotifyCentraProxyActiondata cbNotifyCentraProxyActiondata; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_CENTRA_PROXY_ACTION_INFO; ///@brief CLIENT_AttachTrainTask ?????? typedef struct tagNET_OUT_ATTACH_CENTRA_PROXY_ACTION_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ATTACH_CENTRA_PROXY_ACTION_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachCentraProxyAction(LLONG lLoginID,const NET_IN_ATTACH_CENTRA_PROXY_ACTION_INFO* pstuInParam, NET_OUT_ATTACH_CENTRA_PROXY_ACTION_INFO* pstuOutParam, int nWaitTime); ///@brief ????????????????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachCentraProxyAction(LLONG lAttachHandle); ///@brief ???? typedef enum tagEM_BIND_MODE { EM_BIND_MODE_UNKNOWN, /// ??? EM_BIND_MODE_AUTOMATIC, /// ??? EM_BIND_MODE_SEMIAUTOMATIC, /// ????? EM_BIND_MODE_MANUAL, /// ??? }EM_BIND_MODE; ///@brief CLIENT_SetBindMode ?????? typedef struct tagNET_IN_SET_BIND_MODE_INFO { DWORD dwSize; /// ????????,????? int nClassRoomId; /// ????id??,???0 EM_BIND_MODE emBindMode; /// ???? }NET_IN_SET_BIND_MODE_INFO; ///@brief CLIENT_SetBindMode ?????? typedef struct tagNET_OUT_SET_BIND_MODE_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SET_BIND_MODE_INFO; ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetBindMode(LLONG lLoginID, const NET_IN_SET_BIND_MODE_INFO* pstuInParam, NET_OUT_SET_BIND_MODE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_GetBindMode ?????? typedef struct tagNET_IN_GET_BIND_MODE_INFO { DWORD dwSize; /// ????????,????? int nClassRoomId; /// ????id??,???0 }NET_IN_GET_BIND_MODE_INFO; ///@brief CLIENT_GetBindMode ?????? typedef struct tagNET_OUT_GET_BIND_MODE_INFO { DWORD dwSize; /// ????????,????? EM_BIND_MODE emBindMode; /// ???? }NET_OUT_GET_BIND_MODE_INFO; ///@brief ??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetBindMode(LLONG lLoginID, const NET_IN_GET_BIND_MODE_INFO* pstuInParam, NET_OUT_GET_BIND_MODE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_BeginTransaction?????? typedef struct tagNET_IN_BEGIN_TRANSACTION_INFO { DWORD dwSize; /// ??????? }NET_IN_BEGIN_TRANSACTION_INFO; ///@brief CLIENT_BeginTransaction?????? typedef struct tagNET_OUT_BEGIN_TRANSACTION_INFO { DWORD dwSize; /// ??????? UINT nTransactionID; /// ????ID,0???????????????1???????????? }NET_OUT_BEGIN_TRANSACTION_INFO; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_BeginTransaction(LLONG lLoginID, const NET_IN_BEGIN_TRANSACTION_INFO* pstuInParam, NET_OUT_BEGIN_TRANSACTION_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_EndTransaction?????? typedef struct tagNET_IN_END_TRANSACTION_INFO { DWORD dwSize; /// ??????? UINT nTransactionID; /// ????ID,0???????????????1???????????? }NET_IN_END_TRANSACTION_INFO; ///@brief CLIENT_EndTransaction?????? typedef struct tagNET_OUT_END_TRANSACTION_INFO { DWORD dwSize; /// ??????? }NET_OUT_END_TRANSACTION_INFO; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_EndTransaction(LLONG lLoginID, const NET_IN_END_TRANSACTION_INFO* pstuInParam, NET_OUT_END_TRANSACTION_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyScheme?????? typedef struct tagNET_IN_MODIFY_SCHEME_INFO { DWORD dwSize; /// ??????? int nSchemeID; /// ??????????ID char szSchemeName[64]; /// ?????????????? }NET_IN_MODIFY_SCHEME_INFO; ///@brief CLIENT_ModifyScheme?????? typedef struct tagNET_OUT_MODIFY_SCHEME_INFO { DWORD dwSize; /// ??????? }NET_OUT_MODIFY_SCHEME_INFO; ///@brief ???????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyScheme(LLONG lLoginID, const NET_IN_MODIFY_SCHEME_INFO* pstuInParam, NET_OUT_MODIFY_SCHEME_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_ModifyScheme?????? typedef struct tagNET_IN_DELETE_SCHEME_INFO { DWORD dwSize; /// ??????? int nSchemeID; /// ??????????ID }NET_IN_DELETE_SCHEME_INFO; ///@brief CLIENT_ModifyScheme?????? typedef struct tagNET_OUT_DELETE_SCHEME_INFO { DWORD dwSize; /// ??????? }NET_OUT_DELETE_SCHEME_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteScheme(LLONG lLoginID, const NET_IN_DELETE_SCHEME_INFO* pstuInParam, NET_OUT_DELETE_SCHEME_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] emCfgOpType ???????????? ///@param[in] nChannelID ????? ///@param[in] szInBuffer ??????????, ??????????????????? ///@param[in] dwInBufferSize ?????????????? ///@param[in] waittime ????????, ???????? ///@param[in] nTransactionID ????ID ///@param[in] nSchemeID ??????????ID ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IntelliSchemeSetConfig(LLONG lLoginID, NET_EM_CFG_OPERATE_TYPE emCfgOpType, int nChannelID,void* szInBuffer, DWORD dwInBufferSize, int waittime,UINT nTransactionID ,int nSchemeID ); ///@brief ???????????????????????????? ///@param[in] lLoginID ?????? ///@param[in] szCommand ???????????? ///@param[in] nChannelID ????? ///@param[in] szInBuffer ??????????, ??????????????????? ///@param[in] dwInBufferSize ?????????????? ///@param[in] error ????????? ///@param[in] waittime ????????, ???????? ///@param[out] restart ??????? ///@param[in] nTransactionID ????ID ///@param[in] nSchemeID ??????????ID ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_IntelliSchemeSetNewDevConfig(LLONG lLoginID, char* szCommand, int nChannelID, char* szInBuffer, DWORD dwInBufferSize, int *error, int *restart, int waittime/*=500*/,UINT nTransactionID ,int nSchemeID); ///@brief CLIENT_BindCourseCompositeChannel ?????? typedef struct tagNET_IN_BIND_COURSE_COMPOSITR_CHANNEL_INFO { DWORD dwSize; /// ????????,????? int nClassRoomId; /// ????id??,???0 UINT nRealChannel; /// ???? }NET_IN_BIND_COURSE_COMPOSITR_CHANNEL_INFO; ///@brief CLIENT_BindCourseCompositeChannel ?????? typedef struct tagNET_OUT_BIND_COURSE_COMPOSITR_CHANNEL_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_BIND_COURSE_COMPOSITR_CHANNEL_INFO; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_BindCourseCompositeChannel(LLONG lLoginID, const NET_IN_BIND_COURSE_COMPOSITR_CHANNEL_INFO* pstuInParam, NET_OUT_BIND_COURSE_COMPOSITR_CHANNEL_INFO* pstuOutParam, int nWaitTime); ///@brief ??????? typedef struct tagNET_MEDIA_FILE_COURSE_INFO { char szCourseName[64]; /// ???????? char szTeacherName[64]; /// ??????? char szIntroduction[128]; /// ?????? UINT nLockState; /// ??????,1-??????,2-???? UINT nUploadType; /// ???????1.????? 2.????? 3.????? NET_TIME stuStartTime; /// ????????? NET_TIME stuEndTime; /// ?????????? char szVideoConferenceId[64]; /// ????ID UINT nVideoConferenceCreator; /// ????????????????????????????1???????????????????0 char byReserved[1020]; /// ?????? }NET_MEDIA_FILE_COURSE_INFO; ///@brief CLIENT_ModifyCoureMediaFile ?????? typedef struct tagNET_IN_MODIFY_COURSE_MEDIA_FILE_INFO { DWORD dwSize; /// ????????,????? int nIdNum; /// ??????????id??????????????,???????????????????????????? int* pnId; /// ??????????id??(????????????????sizeof(int)*nIdNum) NET_MEDIA_FILE_COURSE_INFO* pstuCourseInfo; /// ??????????????(????????????????sizeof(NET_MEDIA_FILE_COURSE_INFO)*nIdNum) }NET_IN_MODIFY_COURSE_MEDIA_FILE_INFO; ///@brief CLIENT_ModifyCoureMediaFile ?????? typedef struct tagNET_OUT_MODIFY_COURSE_MEDIA_FILE_INFO { DWORD dwSize; /// ????????,????? int nResultIdNum; /// ????????????id????????? int* pnResultId; /// ????????????id??,????-1,???????????????????,????-2,???????????????????,?????ID???????,(????????????????sizeof(int)*nResultIdNum) int nRetResultIdNum; /// ???????????????????id?????? }NET_OUT_MODIFY_COURSE_MEDIA_FILE_INFO; ///@brief ???????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ModifyCoureMediaFile(LLONG lLoginID, const NET_IN_MODIFY_COURSE_MEDIA_FILE_INFO* pstuInParam, NET_OUT_MODIFY_COURSE_MEDIA_FILE_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeletePlatfromUsers ??? typedef struct tagNET_IN_DELETE_PLATFROM_USERS { DWORD dwSize; /// ??????? int nUserListNum; /// ????????ID???????????? char szUserList[1024][128]; /// ????????ID???? }NET_IN_DELETE_PLATFROM_USERS; ///@brief ??????????????? typedef struct tagDELETE_PLATFROM_USERS_ERROR_INFO { int nCode; /// ?????? UINT nFailCount; /// ???????? int nFailCodesNum; /// nFailCodes???????????? UINT nFailCodes[1024]; /// ??????????????????????????0????????????????????????????????????????????????????????????? char szMessage[128]; /// ?????????? }DELETE_PLATFROM_USERS_ERROR_INFO; ///@brief CLIENT_DeletePlatfromUsers ???? typedef struct tagNET_OUT_DELETE_PLATFROM_USERS { DWORD dwSize; /// ??????? DELETE_PLATFROM_USERS_ERROR_INFO stuFailCodeInfo; /// ???????????????,??????FALSE?????????? }NET_OUT_DELETE_PLATFROM_USERS; ///@brief ???????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeletePlatfromUsers(LLONG lLoginID, const NET_IN_DELETE_PLATFROM_USERS* pstuInParam, NET_OUT_DELETE_PLATFROM_USERS* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeletePlatfromGroups ??? typedef struct tagNET_IN_DELETE_PLATFROM_GROUPS { DWORD dwSize; /// ??????? int nGroupListNum; /// ????????ID???????????? char szGroupList[64][32]; /// ????????ID???? }NET_IN_DELETE_PLATFROM_GROUPS; ///@brief ????????(?????????)??????? typedef struct tagDELETE_PLATFROM_GROUPS_ERROR_INFO { int nCode; /// ?????? UINT nFailCount; /// ???????? int nFailCodesNum; /// nFailCodes???????????? UINT nFailCodes[64]; /// ??????????????????????????0????????????????????????????????????????????????????????????? char szMessage[128]; /// ?????????? }DELETE_PLATFROM_GROUPS_ERROR_INFO; ///@brief CLIENT_DeletePlatfromGroups ???? typedef struct tagNET_OUT_DELETE_PLATFROM_GROUPS { DWORD dwSize; /// ??????? DELETE_PLATFROM_GROUPS_ERROR_INFO stuFailCodeInfo; /// ???????????????,??????FALSE?????????? }NET_OUT_DELETE_PLATFROM_GROUPS; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeletePlatfromGroups(LLONG lLoginID, const NET_IN_DELETE_PLATFROM_GROUPS* pstuInParam, NET_OUT_DELETE_PLATFROM_GROUPS* pstuOutParam, int nWaitTime); ///@brief CLIENT_DeletePlatfromWorkGroups ??? typedef struct tagNET_IN_DELETE_PLATFROM_WORK_GROUPS { DWORD dwSize; /// ??????? int nWorkGroupListNum; /// ?????????ID???????????? char szWorkGroupList[64][32]; /// ?????????ID???? }NET_IN_DELETE_PLATFROM_WORK_GROUPS; ///@brief CLIENT_DeletePlatfromWorkGroups ???? typedef struct tagNET_OUT_DELETE_PLATFROM_WORK_GROUPS { DWORD dwSize; /// ??????? DELETE_PLATFROM_GROUPS_ERROR_INFO stuFailCodeInfo; /// ????????????????????,??????FALSE?????????? }NET_OUT_DELETE_PLATFROM_WORK_GROUPS; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeletePlatfromWorkGroups(LLONG lLoginID, const NET_IN_DELETE_PLATFROM_WORK_GROUPS* pstuInParam, NET_OUT_DELETE_PLATFROM_WORK_GROUPS* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_LOGIN_RESTRICTION { char szUserName[128]; /// ????? BOOL bForeverRestriction; /// ??????????????????????????????????????????????? char szReserved[1024]; /// ?????? }NET_LOGIN_RESTRICTION; ///@brief CLIENT_SyncUsersLoginRestriction ??? typedef struct tagNET_IN_SYNC_USERS_LOGIN_RESTRICTION { DWORD dwSize; /// ??????? int nLoginRestrictionNum; /// ???????????????????????? NET_LOGIN_RESTRICTION* pstuLoginRestriction; /// ????????????????, (???????????????????sizeof(NET_LOGIN_RESTRICTION)*nLoginRestrictionNum) }NET_IN_SYNC_USERS_LOGIN_RESTRICTION; ///@brief CLIENT_SyncUsersLoginRestriction ???? typedef struct tagNET_OUT_SYNC_USERS_LOGIN_RESTRICTION { DWORD dwSize; /// ??????? DELETE_PLATFROM_USERS_ERROR_INFO stuFailCodeInfo; /// ??????????????????????,??????FALSE?????????? }NET_OUT_SYNC_USERS_LOGIN_RESTRICTION; ///@brief ??????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SyncUsersLoginRestriction(LLONG lLoginID, const NET_IN_SYNC_USERS_LOGIN_RESTRICTION* pstuInParam, NET_OUT_SYNC_USERS_LOGIN_RESTRICTION* pstuOutParam, int nWaitTime); ///@brief CLIENT_CreateCert?????? typedef struct tagNET_IN_CREATE_CERT_INFO { DWORD dwSize; /// ??????? EM_DIGITAL_CERTIFICATE_TYPE emDigitalCertificateType; /// ?????????? char szAlias[64]; /// ????????? EM_CERT_TYPE emType; /// ??????? int nUsefulLife; /// ?????????????????????? [0-9999] ?? char szCountry[4]; /// ?????????????????? char szProvince[64]; /// ??????????????? char szCity[64]; /// ??????????????? char szArea[64]; /// ??????????????????? char szCommonName[160]; /// CN?????????????????????A????????63?????????????????????63???????????????????? char szOrganization[64]; /// ???????????????? char szOrganizationUnit[64]; /// ?????? char szPubKeyAlg[64]; /// ??????? UINT nCreationType; /// ?????????0 ???????????, 1 ??????????? }NET_IN_CREATE_CERT_INFO; ///@brief CLIENT_CreateCert?????? typedef struct tagNET_OUT_CREATE_CERT_INFO { DWORD dwSize; /// ??????? EM_CERT_TYPE emType; /// ??????? NET_TIME stuEffectiveDate; /// ???????????,????"YYYY-MM-DD hh:mm:ss" NET_TIME stuExpirationDate; /// ?????????? char szCertSN[40]; /// ?????????????? char szRealCertSN[80]; /// ???????????? char szDeviceIdentifier[160]; /// ?????? int nFrom; /// ??????,0:?????????(??????????????????),1:???????????????????????????????????,2:?????????????????????? }NET_OUT_CREATE_CERT_INFO; ///@brief ????????????????CA??????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_CreateCert(LLONG lLoginID, const NET_IN_CREATE_CERT_INFO* pstuInParam, NET_OUT_CREATE_CERT_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_ExportCert?????? typedef struct tagNET_IN_EXPORT_CERT_INFO { DWORD dwSize; /// ??????? EM_DIGITAL_CERTIFICATE_TYPE emDigitalCertificateType; /// ?????????? char szCertSN[40]; /// ????????? }NET_IN_EXPORT_CERT_INFO; ///@brief CLIENT_ExportCert?????? typedef struct tagNET_OUT_EXPORT_CERT_INFO { DWORD dwSize; /// ??????? char szCert[1600]; /// ??????? }NET_OUT_EXPORT_CERT_INFO; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ExportCert(LLONG lLoginID, const NET_IN_EXPORT_CERT_INFO* pstuInParam, NET_OUT_EXPORT_CERT_INFO* pstuOutParam, int nWaitTime); ///@brief ??? CLIENT_AddClusterStateTask ????????? typedef struct tagNET_IN_ADD_CLUSTER_STATE_TASK_INFO { DWORD dwSize; /// ????????,????? int nClusterDate; /// ?????????????????????????????ClusterDate?????????? NET_TIME stuBeginDate; /// ????????,????????????????? NET_TIME stuEndDate; /// ?????????,????????????????? int nClusterType; /// ?????????1.??????? 2.???????? 3.???????????????WEB????, ?0?????????? int nTaskType; /// ??????: 0?????????????? 1 ?????????????????????&??????? ?????? }NET_IN_ADD_CLUSTER_STATE_TASK_INFO; ///@brief ??? CLIENT_AddClusterStateTask ????????? typedef struct tagNET_OUT_ADD_CLUSTER_STATE_TASK_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ADD_CLUSTER_STATE_TASK_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddClusterStateTask(LLONG lLoginID, const NET_IN_ADD_CLUSTER_STATE_TASK_INFO* pstInParam, NET_OUT_ADD_CLUSTER_STATE_TASK_INFO* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_FindClusterStateTask ????????? typedef struct tagNET_IN_FIND_CLUSTER_STATE_TASK_INFO { DWORD dwSize; /// ????????,????? }NET_IN_FIND_CLUSTER_STATE_TASK_INFO; ///@brief ?????????????? typedef struct tagNET_CLUSTER_STATE_TASK_INFO { int nTaskID; /// ????ID int nClusterDate; /// ?????????????????????????????ClusterDate?????????? NET_TIME stuBeginDate; /// ????????,????????????????? NET_TIME stuEndDate; /// ?????????,????????????????? int nClusterType; /// ?????????1.??????? 2.???????? 3.???????????????WEB????, ?0?????????? int nTaskType; /// ??????: 0?????????????? 1 ?????????????????????&??????? ?????? char szReserved[1016]; /// ?????? }NET_CLUSTER_STATE_TASK_INFO; ///@brief ??? CLIENT_FindClusterStateTask ????????? typedef struct tagNET_OUT_FIND_CLUSTER_STATE_TASK_INFO { DWORD dwSize; /// ????????,????? int nTaskCount; /// ??????????? NET_CLUSTER_STATE_TASK_INFO* pstuTaskList; /// ????????,??????256,(???????????????????sizeof(NET_CLUSTER_STATE_TASK_INFO)*nTaskListNum) int nTaskListNum; /// ????????????????????, ???????????????????pstuTaskList?????????????????? }NET_OUT_FIND_CLUSTER_STATE_TASK_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindClusterStateTask(LLONG lLoginID, const NET_IN_FIND_CLUSTER_STATE_TASK_INFO* pstInParam, NET_OUT_FIND_CLUSTER_STATE_TASK_INFO* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_RemoveClusterStateTask ????????? typedef struct tagNET_IN_REMOVE_CLUSTER_STATE_TASK_INFO { DWORD dwSize; /// ????????,????? int nTaskID; /// ????????????ID }NET_IN_REMOVE_CLUSTER_STATE_TASK_INFO; ///@brief ??? CLIENT_RemoveClusterStateTask ????????? typedef struct tagNET_OUT_REMOVE_CLUSTER_STATE_TASK_INFO { DWORD dwSize; /// ????????,????? int nTaskCount; /// ??????????? char szErrorMsg[256]; /// ?????? }NET_OUT_REMOVE_CLUSTER_STATE_TASK_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveClusterStateTask(LLONG lLoginID, const NET_IN_REMOVE_CLUSTER_STATE_TASK_INFO* pstInParam, NET_OUT_REMOVE_CLUSTER_STATE_TASK_INFO* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_GetDeviceCardParam ????????? typedef struct tagNET_IN_GET_DEVICE_CARD_PARAM_INFO { DWORD dwSize; /// ????????,????? }NET_IN_GET_DEVICE_CARD_PARAM_INFO; ///@brief ??? CLIENT_GetDeviceCardParam ????????? typedef struct tagNET_OUT_GET_DEVICE_CARD_PARAM_INFO { DWORD dwSize; /// ????????,????? UINT nCardParam; /// CardParam : ???bit?????????????????bit0: ???IC??????????? /// bit1: ???IC??? /// bit2: ???CPU????????????? /// bit3: ???CPU??????????(PSAM??????)??? /// bit4: ???NFC??????? /// bit5: ???desfire????? /// bit6: ???desfire????????????? }NET_OUT_GET_DEVICE_CARD_PARAM_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDeviceCardParam(LLONG lLoginID, const NET_IN_GET_DEVICE_CARD_PARAM_INFO* pstInParam, NET_OUT_GET_DEVICE_CARD_PARAM_INFO* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_SetDeviceCardParam ????????? typedef struct tagNET_IN_SET_DEVICE_CARD_PARAM_INFO { DWORD dwSize; /// ????????,????? UINT nCardParam; /// CardParam : ???bit?????????????????bit0: ???IC??????????? /// bit1: ???IC??? /// bit2: ???CPU????????????? /// bit3: ???CPU??????????(PSAM??????)??? /// bit4: ???NFC??????? /// bit5: ???desfire????? /// bit6: ???desfire????????????? }NET_IN_SET_DEVICE_CARD_PARAM_INFO; ///@brief ??? CLIENT_SetDeviceCardParam ????????? typedef struct tagNET_OUT_SET_DEVICE_CARD_PARAM_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SET_DEVICE_CARD_PARAM_INFO; ///@brief ?????????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetDeviceCardParam(LLONG lLoginID, const NET_IN_SET_DEVICE_CARD_PARAM_INFO* pstInParam, NET_OUT_SET_DEVICE_CARD_PARAM_INFO* pstOutParam , int nWaitTime); ///@brief ??? CLIENT_AddSoftTourPoint ????????? typedef struct tagNET_IN_ADD_SOFT_TOUR_POINT_INFO { DWORD dwSize; /// ????????,????? int nChannel; /// ???????? int nIndex; /// ?????????? int nPoint; /// ??????????????0???, ???? -1, ????????????????????????????? int nPresetIndex; /// ??????,????1??? int nDuration; /// ?????????????,???????? float fSpeed; /// ?????????????, ???????0~1 }NET_IN_ADD_SOFT_TOUR_POINT_INFO; ///@brief ??? CLIENT_AddSoftTourPoint ????????? typedef struct tagNET_OUT_ADD_SOFT_TOUR_POINT_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_ADD_SOFT_TOUR_POINT_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_AddSoftTourPoint(LLONG lLoginID, const NET_IN_ADD_SOFT_TOUR_POINT_INFO* pstuInParam, NET_OUT_ADD_SOFT_TOUR_POINT_INFO* pstuOutParam , int nWaitTime); ///@brief ??? CLIENT_RemoveTourPoint ????????? typedef struct tagNET_IN_REMOVE_TOUR_POINT_INFO { DWORD dwSize; /// ????????,????? int nChannel; /// ???????? int nIndex; /// ??????????,??1??? int nPoint; /// ??????????????0???,???? -1, ????????????? int nPresetIndex; /// ??????,nPoint ? -1 ????? }NET_IN_REMOVE_TOUR_POINT_INFO; ///@brief ??? CLIENT_RemoveTourPoint ????????? typedef struct tagNET_OUT_REMOVE_TOUR_POINT_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_REMOVE_TOUR_POINT_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RemoveTourPoint(LLONG lLoginID, const NET_IN_REMOVE_TOUR_POINT_INFO* pstuInParam, NET_OUT_REMOVE_TOUR_POINT_INFO* pstuOutParam , int nWaitTime); //////////////////////////////?????? Start///////////////////////////////// ///@brief web?????????:?????????????? CLIENT_TransmitInfoForWebEx CLIENT_NET_API BOOL CALL_METHOD CLIENT_TransmitInfoForWeb(LLONG lLoginID, char* szInBuffer, DWORD dwInBufferSize, char* szOutBuffer, DWORD dwOutBufferSize, void* pExtData, int waittime=500); ///@brief ?????????????????????????,?????CLIENT_GetDevConfig CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryConfig(LLONG lLoginID, int nConfigType, char *pConfigbuf, int maxlen, int *nConfigbuflen, int waittime=1000); ///@brief ??????????????????????????,?????CLIENT_SetDevConfig CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetupConfig(LLONG lLoginID, int nConfigType, char *pConfigbuf, int nConfigbuflen, int waittime=1000); ///@brief ?????????,?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_Reset(LLONG lLoginID, BOOL bReset); ///@brief ??????????? ?? ?????????,?????CLIENT_GetDevConfig CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryComProtocol(LLONG lLoginID, int nProtocolType, char *pProtocolBuffer, int maxlen, int *nProtocollen, int waittime=1000); ///@brief ?????????????????,?????CLIENT_StartTalkEx CLIENT_NET_API BOOL CALL_METHOD CLIENT_StartTalk(LLONG lRealHandle, BOOL bCustomSend=false); ///@brief ??????????????????,?????CLIENT_StopTalkEx CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopTalk(LLONG lRealHandle); ///@brief ?????????????????????????,?????CLIENT_TalkSendData CLIENT_NET_API BOOL CALL_METHOD CLIENT_SendTalkData_Custom(LLONG lRealHandle, char *pBuffer, DWORD dwBufSize); ///@brief ???????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetPlayerBufNumber(LLONG lRealHandle, DWORD dwBufNum); ///@brief ????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetFileByTime(LLONG lLoginID, int nChannelID, LPNET_TIME lpStartTime, LPNET_TIME lpStopTime, char *sSavedFileName); ///@brief ????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_PlayBackControl(LLONG lPlayHandle, DWORD dwControlCode, DWORD dwInValue, DWORD *lpOutValue); ///@brief ???????????? ?????????,?????CLIENT_QueryDevState CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetDEVWorkState(LLONG lLoginID, LPNET_DEV_WORKSTATE lpWorkState, int waittime=1000); ///@brief ??????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_QueryLogCallback(LLONG lLoginID, fLogDataCallBack cbLogData, LDWORD dwUser); ///@brief ?????????,pstRecIn??pstRecOut??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RecMngCtrlMpt300(LLONG lLoginID, const NET_IN_REC_MNG_CTRL_MPT300 *pstRecIn, NET_OUT_REC_MNG_CTRL_MPT300 *pstRecOut, int nWaitTime); ///@brief ????????????,pstInTransmit??pstOutTransmit??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_TransmitInfoDirectly(LLONG lLoginID, const NET_IN_TRANSMIT_DIRECTLY *pstInTransmit, NET_OUT_TRANSMIT_DIRECTLY *pstOutTransmit, int nWaittime = 1000); ///@brief ?????????????????? typedef void (CALLBACK *fTransmitInfoDirectlyCallBack)(LLONG lLoginID, LLONG lStartHandle, const char *pszOutBuf, DWORD dwBufLen, LDWORD dwUser); ///@brief ???????????,pstInTransmit??pstOutTransmit??????????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartTransmitInfoDirectly(LLONG lLoginID, const NET_IN_TRANSMIT_DIRECTLY *pstInTransmit, NET_OUT_TRANSMIT_DIRECTLY *pstOutTransmit, fTransmitInfoDirectlyCallBack cbDirectly, LDWORD dwUser, int nWaitTime = 1000); ///@brief ??????????????,pstInTransmit??pstOutTransmit??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopTransmitInfoDirectly(LLONG lStartHandle, const NET_IN_TRANSMIT_DIRECTLY *pstInTransmit, NET_OUT_TRANSMIT_DIRECTLY *pstOutTransmit, int nWaitTime = 1000); ///@brief ???VK,??????????,?????CLIENT_AttachVK??????????????vk??????vk CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetVK(LLONG lLoginID, const NET_IN_GET_VKINFO* pInParam, NET_OUT_GET_VKINFO* pOutParam, int nWaitTime); ///@brief GDPR?????? typedef enum EM_GDPR_VERSION { EM_GDPR_VERSION_NON = 0, /// ??GDPR??? EM_GDPR_VERSION_V1, /// GDPR V1????????V1?????????????? EM_GDPR_VERSION_V2, /// GDPR V2????????V2?????????????? }EM_GDPR_VERSION; ///@brief ???GDPR????????????????????? CLIENT_GetGDPRAbility ??? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetGDPRVersion(LLONG lLoginID, EM_GDPR_VERSION* pVersion, int nWaitTime); ///@brief ?????????? /// ??????????????, ???RegisterID?????????,pstuCfg??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetMobilePushNotify(LLONG lLoginID, const NET_MOBILE_PUSH_NOTIFY *pstuCfg, int *nError, int *nRestart, int nWaitTime = 1000); ///@brief ?????????? /// ?????????????????, ???RegisterID?????????,pstuIn??pstuOut??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelMobilePushNotify(LLONG lLoginID, const NET_MOBILE_PUSH_NOTIFY_DEL *pstuIn, NET_OUT_DELETECFG* pstuOut, int nWaitTime = 1000); ///@brief ?????????? /// ?????????????????, ???RegisterID+AppID?????????,AppID???????????,????????????????,pstuCfg??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetMobilePushNotifyCfg(LLONG lLoginID, NET_MOBILE_PUSH_NOTIFY_CFG *pstuCfg, int *nError, int nWaitTime = 1000); ///@brief ?????????? /// ??????????????????, ???RegisterID+AppID?????????,AppID???????????,????????????????,pstuCfg??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetMobilePushNotifyCfg(LLONG lLoginID, const NET_MOBILE_PUSH_NOTIFY_CFG *pstuCfg, int *nError, int *nRestart, int nWaitTime = 1000); ///@brief ?????????? /// ?????????????????, ???RegisterID+AppID?????????,AppID???????????,????????????????,pstuIn??pstuOut??????????????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DelMobilePushNotifyCfg(LLONG lLoginID, const NET_MOBILE_PUSH_NOTIFY_CFG_DEL *pstuIn, NET_OUT_DELETECFG* pstuOut, int nWaitTime = 1000); //////////////////////////////?????? End///////////////////////////////// ///@brief ??????????? typedef enum tagNET_EVENT_OPERATE_TYPE { NET_EVENT_OPERATE_TYPE_UNKOWN =0, ///??? NET_EVENT_OPERATE_TYPE_ADD, ///???? NET_EVENT_OPERATE_TYPE_DELETE, ///??? NET_EVENT_OPERATE_TYPE_MODIFY, ///??? }NET_EVENT_OPERATE_TYPE; ///@brief ?????????? typedef enum tagNET_EVENT_USER_TYPE { NET_EVENT_USER_TYPE_UNKOWN =0, ///??? NET_EVENT_USER_TYPE_KEYPAD, ///???? }NET_EVENT_USER_TYPE; ///@brief ?????????? typedef enum tagNET_EVENT_DEVICE_TYPE { NET_EVENT_DEVICE_TYPE_UNKOWN =0, ///??? NET_EVENT_DEVICE_TYPE_CARD, ///??? }NET_EVENT_DEVICE_TYPE; ///@brief RF?????????? (??? DH_ALARM_RF_JAMMING) typedef struct tagNET_ALARM_RF_JAMMING_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szDeviceName[256]; /// ??????? char szReserved[1024]; /// ??????? }NET_ALARM_RF_JAMMING_INFO; ///@brief ????????????? (??? DH_ALARM_ARMING_FAILURE) typedef struct tagNET_ALARM_ARMING_FAILURE_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? EM_ARM_TYPE emMode; /// ???????? char szReserved[1024]; /// ??????? }NET_ALARM_ARMING_FAILURE_INFO; ///@brief ???????????(?????????????)?????? (??? DH_ALARM_USER_MODIFIED) typedef struct tagNET_ALARM_USER_MODIFIED_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? char szUser[128]; /// ??????? NET_EVENT_OPERATE_TYPE emOpType; /// ???????? NET_EVENT_USER_TYPE emUserType; /// ??????? char szReserved[1024]; /// ??????? }NET_ALARM_USER_MODIFIED_INFO; ///@brief ????????????? (??? DH_ALARM_MANUAL_TEST) typedef struct tagNET_ALARM_MANUAL_TEST_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szSN[32]; /// ????????? char szName[32]; /// ??????? char szAreaName[128]; /// ??????????????? char szReserved[1024]; /// ??????? }NET_ALARM_MANUAL_TEST_INFO; ///@brief ?????????(?????????????)?????? (??? DH_ALARM_DEVICE_MODIFIED) typedef struct tagNET_ALARM_DEVICE_MODIFIED_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szUser[32]; /// ??????? NET_EVENT_OPERATE_TYPE emOpType; /// ???????? NET_EVENT_DEVICE_TYPE emDeviceType; /// ??????? char szReserved[1024];/// ??????? }NET_ALARM_DEVICE_MODIFIED_INFO; ///@brief ???????????????????? (??? DH_ALARM_ATS_FAULT) typedef struct tagNET_ALARM_ATS_FAULT_INFO { int nAction; /// ???????, 1:??? 2:?? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szReserved[1024];/// ??????? }NET_ALARM_ATS_FAULT_INFO; ///@brief ?????????????????????? (??? DH_ALARM_ARC_OFFLINE) typedef struct tagNET_ALARM_ARC_OFFLINE_INFO { int nAction; /// ???????, 1:??? 2:?? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szDetail[128]; /// ARC??????????? char szReserved[1024];/// ??????? }NET_ALARM_ARC_OFFLINE_INFO; ///@brief ??????????????? typedef struct tagNET_EVENT_AREAR_INFO { char szName[128]; /// ???????????? int nIndex; /// ?????????? char szRsd[64]; /// ??????? }NET_EVENT_AREAR_INFO; ///@brief wifi?????????? (??? DH_ALARM_WIFI_FAILURE) typedef struct tagNET_ALARM_WIFI_FAILURE_INFO { int nAction; /// ???????, 1:??? 2:?? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szSN[32]; /// ????????? char szName[64]; /// ??????? int nErrorCode; /// wifi????????? 1:???????;2:??????????????;3:?????????????;4:??????? int nAreaInfoNum; /// ??????????????? NET_EVENT_AREAR_INFO stuAreaInfo[64]; /// ??????????? char szReserved[1024];/// ??????? }NET_ALARM_WIFI_FAILURE_INFO; ///@brief ?????????? (??? DH_ALARM_OVER_TEMPERATURE) typedef struct tagNET_ALARM_OVER_TEMPERATURE_INFO { int nAction; /// ??????? 0:???? int nChannel; /// ????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? char szSN[32]; /// ????????? char szName[64]; /// ??????? int nTemperatureType; /// ???????? 0:?????????;1:??????????;2:?????????? int nAreaInfoNum; /// ??????????????? NET_EVENT_AREAR_INFO stuAreaInfo[64]; /// ??????????? char szReserved[1024]; /// ??????? }NET_ALARM_OVER_TEMPERATURE_INFO; ///@brief ?????????????????????????? typedef struct tagNET_DETECTION_OBJECT_INFO { char szObjectType[16]; /// ??????? ???"Human" NET_RECT_EX stuBoundingBox; /// ????????????????????????????[0,8192)???? UINT nObjectID; /// ???ID char szReserved[516]; /// ??????? }NET_DETECTION_OBJECT_INFO; ///@brief ??????????? (??? DH_ALARM_RAILING_PASS_DETECTION) typedef struct tagNET_DEV_EVENT_RAILING_PASS_DETECTION_INFO { int nChannelID; /// ?????,??0??? int nEventAction; /// ???????, 0??????????, 1??????, 2??????? UINT nRuleID; /// ?????????????,????????????????????? NET_TIME_EX stuUTC; /// ????????????,??????????????????UTC??? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ????????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? int nCount; /// ??????????? double dbPTS; /// ??????????,???????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ?????? DH_POINT_EX stuDetectLine[2]; /// ??????????????????????????????????????[0,8192)???? DH_POINT_EX stuDetectRegion[20]; /// ?????????,?????????????????????????[0,8192)???? int nDetectRegionPointNum; /// ?????????????? int nObjectsCount; /// ??????????????? NET_DETECTION_OBJECT_INFO stuObjects[100]; /// ??????????? char szReserved[1024]; /// ??????? }NET_DEV_EVENT_RAILING_PASS_DETECTION_INFO; ///@brief CLIENT_SyncAllUserName ?????? typedef struct tagNET_IN_SYNC_ALL_USER_NAME_INFO { DWORD dwSize; /// ????????,????? char szUserList[1024][128]; /// ???????????????? UINT nUserNum; /// ????????? }NET_IN_SYNC_ALL_USER_NAME_INFO; ///@brief CLIENT_SyncAllUserName ?????? typedef struct tagNET_OUT_SYNC_ALL_USER_NAME_INFO { DWORD dwSize; /// ????????,????? }NET_OUT_SYNC_ALL_USER_NAME_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SyncAllUserName(LLONG lLoginID, const NET_IN_SYNC_ALL_USER_NAME_INFO* pstuInParam, NET_OUT_SYNC_ALL_USER_NAME_INFO* pstuOutParam, int nWaitTime); ///@brief ???????? typedef struct tagNET_GROUP_INFO_INFO { char szName[128]; /// ???? char szMemo[128]; /// ??? char szAlias[128]; /// ??????????????????????????????????? char szAuthorityList[128][128]; /// ?????????? "AuthUserMag":??????? "AuthSysCfg":?????? "AuthSysInfo":????? "AuthManuCtr":??????? "AuthBackup":??????? "AuthStoreCfg":??????? "AuthEventCfg":??????? "AuthNetCfg":???????? /// "AuthRmtDevice":???????? "AuthPeripheral":??????? "AuthAVParam":????????? "AuthDisplay":??????? "AuthPTZ":??????? "AuthSecurity":??????? /// "AuthMaintence":?????? "Monitor_$(?????)":??? "Replay_$(?????)":??? "AuthTaskMag":??????? "AuthTraining":??????? "AuthRadar":?????? UINT nAuthorityNum; /// ??????? char szReserverd[252]; /// ?????? }NET_GROUP_INFO_INFO; ///@brief CLIENT_SyncGroups ?????? typedef struct tagNET_IN_SYNC_GROUPS_INFO { DWORD dwSize; /// ????????,????? UINT nStrategy; /// ???? 0?????? 1?????? NET_GROUP_INFO_INFO stuGroupInfos[64]; /// ??????????????????64??????? UINT nGroupInfosNum; /// ?????????? }NET_IN_SYNC_GROUPS_INFO; ///@brief CLIENT_SyncGroups ?????? typedef struct tagNET_OUT_SYNC_GROUPS_INFO { DWORD dwSize; /// ????????,????? UINT nFailCount; /// ???????? UINT nFailCodes[64]; /// ?????????????????????????? /// 0x11010000 : ????? Manager ??????, 0x11010001 : ?????????, ???????, 0x11010002 : ???????, 0x11010003 : ????????????,??????????????? /// 0x11010004 : ?????????(??????????????????????????????????????), 0x11010005 : ??????????????????????????, 0x11010006 : ??????? /// 0x11010006 : ???????, 0x11010007 : ????????, 0x11010008 : ???????, 0x1101000b : ??????????????, 0x1101000a : ???????, /// 0x1101000d : ???????????, 0x11010025 : ??????? UINT nFailCodesNum; /// ?????????? }NET_OUT_SYNC_GROUPS_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SyncGroups(LLONG lLoginID, const NET_IN_SYNC_GROUPS_INFO* pstuInParam, NET_OUT_SYNC_GROUPS_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_CREATOR_INFO_INFO { char szCellPhone[20]; /// ????? char szReserverdPhone[4]; /// ?????? char szMail[256]; /// ???? char szUserName[64]; /// ??????? char szReserverd[1024]; /// ?????? }NET_CREATOR_INFO_INFO; ///@brief ?????? typedef struct tagNET_USER_INFO_INFO { UINT nPwdScore; /// ???????? BOOL bReserved; /// ??????????????????????????? BOOL bSharable; /// ?????????????????????IP????????(?????) BOOL bAnonymous; /// ?????????????anonymity????????? NET_TIME_EX stuModifiedTime; /// ??????????????? NET_TIME_EX stuPasswordModifiedTime; /// ????????????? NET_CREATOR_INFO_INFO stuCreatorInfo; /// ????????????????? char szAlias[128]; /// ?????????????????????? char szName[128]; /// ????? char szPassword[128]; /// ???? char szMemo[32]; /// ??? char szGroup[32]; /// ???????????? char szWorkGroup[32]; /// ???????????? char szAuthorityList[128][128]; /// ?????????? "AuthUserMag":??????? "AuthSysCfg":?????? "AuthSysInfo":????? "AuthManuCtr":??????? "AuthBackup":??????? "AuthStoreCfg":??????? "AuthEventCfg":??????? "AuthNetCfg":???????? /// "AuthRmtDevice":???????? "AuthPeripheral":??????? "AuthAVParam":????????? "AuthDisplay":??????? "AuthPTZ":??????? "AuthSecurity":??????? /// "AuthMaintence":?????? "Monitor_$(?????)":??? "Replay_$(?????)":??? "AuthTaskMag":??????? "AuthTraining":??????? "AuthRadar":?????? UINT nAuthorityNum; /// ??????? BOOL bIsUsingMemoEx; /// ?????????szMemoEx char szMemoEx[128]; /// ???(???) char szReserverd[888]; /// ?????? }NET_USER_INFO_INFO; ///@brief CLIENT_SyncUsers ?????? typedef struct tagNET_IN_SYNC_USERS_INFO { DWORD dwSize; /// ????????,????? UINT nStrategy; /// ???? 0?????? 1?????? NET_USER_INFO_INFO* pStuUserInfos; /// ????????????????1024???????? UINT nUserInfoNum; /// ?????????? }NET_IN_SYNC_USERS_INFO; ///@brief CLIENT_SyncUsers ?????? typedef struct tagNET_OUT_SYNC_USERS_INFO { DWORD dwSize; /// ????????,????? UINT nFailCount; /// ???????? UINT nFailCodes[1024]; /// ??????????????????????????, ????userManager.ErrorCode /// 0x11010000 : ????? Manager ??????, 0x11010001 : ?????????, ???????, 0x11010002 : ???????, 0x11010003 : ????????????,??????????????? /// 0x11010004 : ?????????(??????????????????????????????????????), 0x11010005 : ??????????????????????????, 0x11010006 : ??????? /// 0x11010006 : ???????, 0x11010007 : ????????, 0x11010008 : ???????, 0x1101000b : ??????????????, 0x1101000a : ???????, /// 0x1101000d : ???????????, 0x11010025 : ??????? UINT nFailCodesNum; /// ?????????? }NET_OUT_SYNC_USERS_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SyncUsers(LLONG lLoginID, const NET_IN_SYNC_USERS_INFO* pstuInParam, NET_OUT_SYNC_USERS_INFO* pstuOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_WORK_GROUPS_INFO_INFO { char szName[32]; /// ?????????? char szAlias[128]; /// ????????? }NET_WORK_GROUPS_INFO_INFO; ///@brief CLIENT_SyncWorkGroups ?????? typedef struct tagNET_IN_SYNC_WORK_GROUPS_INFO { DWORD dwSize; /// ????????,????? UINT nStrategy; /// ???? 0?????? 1?????? NET_WORK_GROUPS_INFO_INFO stuWorkGroupInfos[64]; /// ??????????????????????64???????? UINT nWorkGroupInfoNum; /// ???????????????? }NET_IN_SYNC_WORK_GROUPS_INFO; ///@brief CLIENT_SyncWorkGroups ?????? typedef struct tagNET_OUT_SYNC_WORK_GROUPS_INFO { DWORD dwSize; /// ????????,????? UINT nFailCount; /// ???????? UINT nFailCodes[64]; /// ??????????????????????????, ????userManager.ErrorCode /// 0x11010000 : ????? Manager ??????, 0x11010001 : ?????????, ???????, 0x11010002 : ???????, 0x11010003 : ????????????,??????????????? /// 0x11010004 : ?????????(??????????????????????????????????????), 0x11010005 : ??????????????????????????, 0x11010006 : ??????? /// 0x11010006 : ???????, 0x11010007 : ????????, 0x11010008 : ???????, 0x1101000b : ??????????????, 0x1101000a : ???????, /// 0x1101000d : ???????????, 0x11010025 : ??????? UINT nFailCodesNum; /// ?????????? }NET_OUT_SYNC_WORK_GROUPS_INFO; ///@brief ?????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SyncWorkGroups(LLONG lLoginID, const NET_IN_SYNC_WORK_GROUPS_INFO* pstuInParam, NET_OUT_SYNC_WORK_GROUPS_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_StartFindAccessFingerprint ?????? typedef struct tagNET_IN_FINGERPRINT_START_FIND_INFO { DWORD dwSize; /// ????????,????? char szCondition[32]; /// ???????????????????? }NET_IN_FINGERPRINT_START_FIND_INFO; ///@brief CLIENT_StartFindAccessFingerprint ?????? typedef struct tagNET_OUT_FINGERPRINT_START_FIND_INFO { DWORD dwSize; /// ????????,????? UINT nTotal; /// ????????????? UINT nCaps; /// ??????? }NET_OUT_FINGERPRINT_START_FIND_INFO; ///@brief ????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return ????????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_StartFindAccessFingerprint(LLONG lLoginID, const NET_IN_FINGERPRINT_START_FIND_INFO* pstuInParam, NET_OUT_FINGERPRINT_START_FIND_INFO* pstuOutParam, int nWaitTime); ///@brief CLIENT_DoFindAccessFingerprint ?????? typedef struct tagNET_IN_FINGERPRINT_DO_FIND_INFO { DWORD dwSize; /// ????????,????? UINT nStartNo; /// ?????? UINT nCount; /// ??????????????????? }NET_IN_FINGERPRINT_DO_FIND_INFO; ///@brief ?????? typedef struct tagNET_FINGERPRINT_NEW_INFO { NET_TIME stuCreateTime; /// ??????? NET_TIME_EX stuCreateTimeRealUTC; /// UTC??? int nFingerprintID; /// ???ID(????????) int nForce; /// ????????????0???????????1?????????? char szFingerPrintName[32]; /// ??????? char szUserID[32]; /// ???ID char szFingerPrintData[1200]; /// ????????base64??? char szReserverd[1024]; /// ?????? }NET_FINGERPRINT_NEW_INFO; ///@brief CLIENT_DoFindAccessFingerprint ?????? typedef struct tagNET_OUT_FINGERPRINT_DO_FIND_INFO { DWORD dwSize; /// ????????,????? UINT nRetNum; /// ?????????????? NET_FINGERPRINT_NEW_INFO* pstuInfo; /// ?????????? UINT nMaxNum; /// ?????????? }NET_OUT_FINGERPRINT_DO_FIND_INFO; ///@brief ????????? ///@param[in] lFindHandle ?????? ///@param[in] pstuInParam ?????? ///@param[out] pstuOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE ?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DoFindAccessFingerprint(LLONG lFindHandle, const NET_IN_FINGERPRINT_DO_FIND_INFO* pstuInParam, NET_OUT_FINGERPRINT_DO_FIND_INFO* pstuOutParam, int nWaitTime); ///@brief ???????? ///@param[in] lFindHandle ?????? ///@return TRUE ?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_StopFindAccessFingerprint(LLONG lFindHandle); ///@brief ??????? EVENT_IVS_TRAFFIC_BRIGHT_LIGHT(??????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_BRIGHT_LIGHT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? double dbPTS; /// ????(?????????) UINT nUTCMS; /// ??????????? UINT nEventID; /// ??????????????????????? int nLane; /// ?????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? int nSpeed; /// ????????km/h char szReserved[4]; /// ??????? DH_MSG_OBJECT stuObject; /// ??????????? DH_MSG_OBJECT stuVehicle; /// ??????????? EVENT_COMM_INFO stuCommInfo; /// ????????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? }NET_DEV_EVENT_TRAFFIC_BRIGHT_LIGHT_INFO; ///@brief ??????????????? typedef struct tagNET_DEVICE_STATUS_MEDIA_INFO { UINT nMediaType; /// ????????????, 0:??? 1:?? 2:??? 3:??? UINT nMediaID; /// ?????ID char szResvered[64]; /// ??????? }NET_DEVICE_STATUS_MEDIA_INFO; ///@brief ???????? typedef struct tagNET_DEVICE_STATUS_INFO { UINT nAlarmID; /// ????ID UINT nSpeed; /// ????, ????km/h, ????0~250 UINT nAltitude; /// ???, ???????, ???????(m) UINT nLatitude; /// ????, ????????????? UINT nLongtitude; /// ????, ????????????? NET_TIME stuTime; /// ??????? UINT nVehicleStatus; /// ??????, ?????????????????, Bit0 ACC?? 0??1??, Bit1 ??????? 0??1??, Bit2 ??????? 0??1??, Bit3 ?????????0??1??, Bit4 ???????0?????1???, Bit5 ???????0?????1???, Bit10 ????????0??????1????? UINT nMediaNum; /// ??????????????????????? int nMediaInfoNum; /// ??????????????????? NET_DEVICE_STATUS_MEDIA_INFO stuMediaInfo[16]; /// ??????????????? UINT nAlarmSequence; /// ??????????? char szResvered[1020]; /// ??????? }NET_DEVICE_STATUS_INFO; ///@brief ??????? EVENT_IVS_FREQUENT_CHANGE_LANE(????????????????????)????????????????? typedef struct tagNET_DEV_EVENT_FREQUENT_CHANGE_LANE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_DEVICE_STATUS_INFO stuDeviceStatus; /// ????? UINT nAlarmLevel; /// ????????, 0:???, 01:???????, 02:???????? UINT nLineType; /// ??????, 0:???, 01:???? , 02:??? char szVideoPath[256]; /// ??????????FTP??????? char szReserverd[764]; /// ?????? }NET_DEV_EVENT_FREQUENT_CHANGE_LANE_INFO; ///@brief ??????? EVENT_IVS_PYROTECHNIC_DETECTION(???????)????????????????? typedef struct tagNET_DEV_EVENT_PYROTECHNIC_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? NET_DEVICE_STATUS_INFO stuDeviceStatus; /// ????? UINT nAlarmLevel; /// ????????, 0:???, 01:???????, 02:???????? char szVideoPath[256]; /// ??????????FTP??????? char szReserverd[768]; /// ?????? }NET_DEV_EVENT_PYROTECHNIC_DETECTION_INFO; ///@brief ??????? EVENT_IVS_TRAFFIC_STRANGE_CAR(??????????)????????????????? typedef struct tagNET_DEV_EVENT_TRAFFIC_STRANGE_CAR_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ??????? int nGroupID; /// ?????ID????????????????GroupID??? int nCountInGroup; /// ?????????????????? int nIndexInGroup; /// ????????????????? double dbPTS; /// ????(?????????) DH_MSG_OBJECT stuVehicle; /// ??????????? DH_MSG_OBJECT stuObject; /// ??????????? UINT nEventID; /// ??????????????????????? int nTriggerType; /// ????????, -1:???, 0: ??????, 1: ???, 2: ???, 3: RSU, 4: ??????, 5: ??????, 6: ???? int nMark; /// ?????????? int nFrameSequence; /// ??????????? int nLane; /// ?????? int nSequence; /// ?????????3-2-1/0??1????????????????0???????????? DEV_EVENT_TRAFFIC_TRAFFICCAR_INFO stuTrafficCar; /// ???????????????? EVENT_COMM_INFO stuCommInfo; /// ????????????? char szResvered[1024]; /// ??????? }NET_DEV_EVENT_TRAFFIC_STRANGE_CAR_INFO; ///@brief ??????? EVENT_IVS_SAME_OBJECT_SEARCH_COUNT(?????????????????)????????????????? typedef struct tagNET_DEV_EVENT_SAME_OBJECT_SEARCH_COUNT_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? double dbPTS; /// ??????????,???????? UINT nUTCMS; /// ??????????? UINT nEventID; /// ??????????????????????? int nGroupID; /// GroupID?????ID????????????????GroupID??? int nCountInGroup; /// CountInGroup?????????????????? int nIndexInGroup; /// IndexInGroup????????????????????1??? UINT nObjectsNum; /// ?????????????????? DH_MSG_OBJECT_EX2 stObjects[64]; /// ???????????????????64?????? char szAlgName[128]; /// ?????? char szObjectType[32]; /// ??????? UINT nObjectTypeID; /// ObjectType???????id UINT nAlarmId; /// ????????ID?????????????? SCENE_IMAGE_INFO stImage; /// ???? UINT nAlgId; /// ????????????????id int nCount; /// ??????? char szReserverd[1020]; /// ?????? }NET_DEV_EVENT_SAME_OBJECT_SEARCH_COUNT_INFO; ///@brief ??????? EVENT_IVS_VIDEO_OUT_SNAP(????????)????????????????? typedef struct tagNET_DEV_EVENT_IVS_VIDEO_OUT_SNAP_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nHeight; /// ?????? UINT nWidth; /// ?????? char szReserverd[1020]; /// ?????? }NET_DEV_EVENT_IVS_VIDEO_OUT_SNAP_INFO; ///@brief ??????????? typedef enum tagEM_POSTURE_TYPE { EM_POSTURE_TYPE_UNKNOWN, /// ??? EM_POSTURE_TYPE_LYING, /// ??????? EM_POSTURE_TYPE_UPRIGHT, /// ??????? EM_POSTURE_TYPE_BEND, /// ???????? EM_POSTURE_TYPE_SITGROUND, /// ???????? EM_POSTURE_TYPE_SITCHAIR, /// ???????? }EM_POSTURE_TYPE; ///@brief ??????? EVENT_IVS_POSE_EXCEPTION_NUM_DETECTION(??????????????????????????)????????????????? typedef struct tagNET_DEV_EVENT_IVS_POSE_EXCEPTION_NUM_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nRuleID; /// ????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nEventID; /// ??????????????????????? int nObjectsCount; /// ?????????????????? DH_MSG_OBJECT stuObjects[128]; /// ??????????? double dbPTS; /// ??????????,???????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? NET_POINT_EX stuDetectRegion[20]; /// ??????? int nDetectRegionCount; /// ?????????? int nPostureTypeCount; /// ?????????????? EM_POSTURE_TYPE emPostureType[32]; /// ??????????? char szReserverd[1024]; /// ?????? }NET_DEV_EVENT_IVS_POSE_EXCEPTION_NUM_DETECTION_INFO; ///@brief ??????? EVENT_IVS_HOSPITAL_APPRAISE(????????????????)????????????????? typedef struct tagNET_DEV_EVENT_HOSPITAL_APPRAISE_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nStatus; /// ??????????????, 0:???, 1:?????????, 2:?????????, 3:?????????? char szDevID[64]; /// ?????? char szAppraiseRequestID[128]; /// ?????????????ID NET_TIME stuAppraiseUTC; /// ????????utc??? NET_TIME stuDeliveryUTC; /// ?????????utc??? char szTemplateID[128]; /// ?????????? int nAppraiseListsCount; /// ?????????????????? NET_HOSPITAL_APPRAISE_LISTS_INFO stuAppraiseLists[32]; /// ?????????????? char szReserverd[1020]; /// ?????? }NET_DEV_EVENT_HOSPITAL_APPRAISE_INFO; ///@brief ??????? EVENT_IVS_GRANARY_TRANS_ACTION_DETECTION(???????????????)????????????????? typedef struct tagNET_DEV_EVENT_GRANARY_TRANS_ACTION_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? int nEventID; /// ??????????????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? UINT nPresetID; /// ?????????????????1??? int nObjectsCount; /// ?????????????????? DH_MSG_OBJECT stuObjects[128]; /// ??????????? double dbPTS; /// ??????????,???????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? NET_POINT_EX stuDetectRegion[20]; /// ??????? int nDetectRegionCount; /// ?????????? char szReserverd[1024]; /// ?????? }NET_DEV_EVENT_GRANARY_TRANS_ACTION_DETECTION_INFO; ///@brief ??????? EVENT_IVS_REGION_PROPORTION_DETECTION(????????????)????????????????? typedef struct tagNET_DEV_EVENT_REGION_PROPORTION_DETECTION_INFO { int nChannelID; /// ????? int nAction; /// 0:????,1:???, 2:?? NET_EVENT_INFO_EXTEND stuEventInfoEx; /// ?????????? NET_TIME_EX stuUTC; /// ???????????? UINT nEventID; /// ??????????????????????? char szName[128]; /// ??????? char szClass[16]; /// ??????????????? int nObjectsCount; /// ?????????????????? DH_MSG_OBJECT stuObjects[32]; /// ??????????? SCENE_IMAGE_INFO_EX stuSceneImage; /// ???? UINT nRatio; /// ?????????0~100 double dbPTS; /// ??????????,???????? char szReserverd[1024]; /// ?????? }NET_DEV_EVENT_REGION_PROPORTION_DETECTION_INFO; ///@brief CIENT_SetSplitWindowsInfo?????????? typedef struct tagNET_IN_SPLIT_SET_WINDOWS_INFO { DWORD dwSize; UINT nChannel; /// ???????????????????? char szCompositeID[64]; /// ?????ID DH_BLOCK_COLLECTION stuInfos; /// ??????? }NET_IN_SPLIT_SET_WINDOWS_INFO; ///@brief CIENT_SetSplitWindowsInfo?????????? typedef struct tagNET_OUT_SPLIT_SET_WINDOWS_INFO { DWORD dwSize; }NET_OUT_SPLIT_SET_WINDOWS_INFO; ///@brief ????????????? ///@param[in] lLoginID ???ID ///@param[in] pInParam ?????? ///@param[out] pOutParam ?????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE ?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetSplitWindowsInfo(LLONG lLoginID, const NET_IN_SPLIT_SET_WINDOWS_INFO* pInParam, NET_OUT_SPLIT_SET_WINDOWS_INFO* pOutParam, int nWaitTime); ///@brief ????????????????? typedef enum tagEM_VEHICLE_REG_DB_STATE_TYPE { EM_VEHICLE_REG_DB_STATE_TYPE_UNKNWON = 0, /// ??? EM_VEHICLE_REG_DB_STATE_TYPE_START, /// ??????? EM_VEHICLE_REG_DB_STATE_TYPE_RUN, /// ????????? EM_VEHICLE_REG_DB_STATE_TYPE_STOP, /// ??????? EM_VEHICLE_REG_DB_STATE_TYPE_CANCLE, /// ??????? } EM_VEHICLE_REG_DB_STATE_TYPE; ///@brief CLIENT_MultiAppendToVehicleRegisterDBEx ?????????? typedef struct tagNET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB_EX { DWORD dwSize; /// ??????? int nVehicleNum; /// ???????? NET_VEHICLE_INFO* pstuVehicles; /// ???????, ??????????,?????sizeof(NET_VEHICLE_INFO)*nVehicleNum BOOL bReplace; /// ??????????????, TRUE????, FALSE???? UINT nToken; /// ????????????token? EM_VEHICLE_REG_DB_STATE_TYPE emState; /// ??????????? } NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB_EX; ///@brief CLIENT_MultiAppendToVehicleRegisterDBEx ?????????? typedef struct tagNET_OUT_MULTI_APPEND_TO_VEHICLE_REG_DB_EX { DWORD dwSize; /// ??????? UINT nErrCodeNum; /// ?????????, ???????????? NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB_EX ????nVehicleNum??????? UINT nRetErrCodeNum; /// ??????????????, ???????????? NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB_EX ????nVehicleNum??????? EM_VEHICLE_REG_DB_OPERATOR_ERRCODE* pemErrCodes; /// ?????????, ??????????,?????sizeof(EM_VEHICLE_REG_DB_OPERATOR_ERRCODE)*nErrCodeNum UINT nUIDNum; /// ????UID???? UINT nRetUIDNum; /// ????????UID???? UINT* pnUID; /// ???????UID, ??????????,?????sizeof(UINT)*nUIDNum } NET_OUT_MULTI_APPEND_TO_VEHICLE_REG_DB_EX; ///@brief ???????????????(???) ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_MultiAppendToVehicleRegisterDBEx(LLONG lLoginID, const NET_IN_MULTI_APPEND_TO_VEHICLE_REG_DB_EX *pInParam, NET_OUT_MULTI_APPEND_TO_VEHICLE_REG_DB_EX *pOutParam, int nWaitTime); ///@brief CLIENT_DeleteVehicleRegisterDBByUUID ?????????? typedef struct tagNET_IN_DELETE_VEHICLE_REGISTER_DB_BY_UUID { DWORD dwSize; /// ??????? UINT nUUIDNum; /// ????????????UUID???????????? char szUUID[512][64]; /// ????????????UUID } NET_IN_DELETE_VEHICLE_REGISTER_DB_BY_UUID; ///@brief CLIENT_DeleteVehicleRegisterDBByUUID ?????????? typedef struct tagNET_OUT_DELETE_VEHICLE_REGISTER_DB_BY_UUID { DWORD dwSize; /// ??????? UINT nRetErrCodeNum; /// ????????? UINT nErrCode[512]; /// ?????????????????????,0: ???, 1: ?????????,2: ??????????? UINT nRetUIDNum; /// ????UID???????????? UINT nUID[512]; /// ????UID } NET_OUT_DELETE_VEHICLE_REGISTER_DB_BY_UUID; ///@brief ????UUID?????????????? ///@param[in] lLoginID: ?????? ///@param[in] pInParam: ??????????, ??????????????????? ///@param[out] pOutParam: ??????????, ??????????????????? ///@param[in] nWaitTime: ????????, ???????? ///@return TRUE??????FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DeleteVehicleRegisterDBByUUID(LLONG lLoginID, const NET_IN_DELETE_VEHICLE_REGISTER_DB_BY_UUID *pInParam, NET_OUT_DELETE_VEHICLE_REGISTER_DB_BY_UUID *pOutParam, int nWaitTime); ///@brief ???????????? typedef struct tagNET_RADIOMETRY_RULE_PARAM { BOOL bEnable; /// ??????????? UINT nRuleId; /// ???????,??????[1??10] NET_RECT stuRect; /// ?????????,????8192????? char szReserved[1024]; /// ?????? }NET_RADIOMETRY_RULE_PARAM; ///@brief CLIENT_SetUltravioletRuleParams ??? typedef struct tagNET_IN_SET_ULTRAVIOLET_RULE_PARAMS { DWORD dwSize; int nRuleParamNum; /// ???????????????????????? NET_RADIOMETRY_RULE_PARAM stuRuleParam[10]; /// ???????????? }NET_IN_SET_ULTRAVIOLET_RULE_PARAMS; ///@brief CLIENT_SetUltravioletRuleParams ???? typedef struct tagNET_OUT_SET_ULTRAVIOLET_RULE_PARAMS { DWORD dwSize; }NET_OUT_SET_ULTRAVIOLET_RULE_PARAMS; ///@brief ???????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_SetUltravioletRuleParams(LLONG lLoginID, const NET_IN_SET_ULTRAVIOLET_RULE_PARAMS* pInParam, NET_OUT_SET_ULTRAVIOLET_RULE_PARAMS* pOutParam,int nWaitTime); ///@brief CLIENT_GetUltravioletRulePhotonsNums ??? typedef struct tagNET_IN_GET_ULTRAVIOLET_RULE_PHOTONS_NUMS { DWORD dwSize; /// ????????????? }NET_IN_GET_ULTRAVIOLET_RULE_PHOTONS_NUMS; ///@brief ?????????????????????????? typedef struct tagNET_RADIOMETRY_RULE_INFO { UINT nRuleId; /// ??????? UINT nPhotonsNums; /// ??????????????? char szReserved[1024]; /// ?????? }NET_RADIOMETRY_RULE_INFO; ///@brief CLIENT_GetUltravioletRulePhotonsNums ???? typedef struct tagNET_OUT_GET_ULTRAVIOLET_RULE_PHOTONS_NUMS { DWORD dwSize; /// ????????????? int nRuleInfoNum; /// ?????????????????????????????????????? NET_RADIOMETRY_RULE_INFO stuRuleInfo[10]; /// ?????????????????????????? }NET_OUT_GET_ULTRAVIOLET_RULE_PHOTONS_NUMS; ///@brief ???????????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetUltravioletRulePhotonsNums(LLONG lLoginID, const NET_IN_GET_ULTRAVIOLET_RULE_PHOTONS_NUMS* pInParam, NET_OUT_GET_ULTRAVIOLET_RULE_PHOTONS_NUMS* pOutParam,int nWaitTime); ///@brief CLIENT_GetRecordModeModifyInfo ??? typedef struct tagNET_IN_GET_RECORD_MODE_MODIFY_INFO { DWORD dwSize; /// ????????????? int nChannel; /// ??????-1?????????????????>=0??????????????? }NET_IN_GET_RECORD_MODE_MODIFY_INFO; ///@brief ???????? typedef struct tagNET_RECORD_MODE_MODIFICATION_INFO { UINT nBeforeMode; /// ?????????????????, 0-??????, 1-??????, 2-?????? UINT nAfterMode; /// ???????????????????, 0-??????, 1-??????, 2-?????? NET_TIME stuTime; /// ???????????????? char szResvered[64]; /// ?????? }NET_RECORD_MODE_MODIFICATION_INFO; ///@brief ???????????????????? typedef struct tagNET_RECORD_MODE_MODIFICATION { BOOL bModeChanged; /// ?????????????? NET_RECORD_MODE_MODIFICATION_INFO stuMode; /// ??????????? BOOL bModeExtra1Changed; /// ??????1???????? NET_RECORD_MODE_MODIFICATION_INFO stuModeExtra1; /// ??????1????? BOOL bModeExtra2Changed; /// ??????2???????? NET_RECORD_MODE_MODIFICATION_INFO stuModeExtra2; /// ??????2????? char szReserved[260]; /// ?????? }NET_RECORD_MODE_MODIFICATION; ///@brief CLIENT_GetRecordModeModifyInfo ???? typedef struct tagNET_OUT_GET_RECORD_MODE_MODIFY_INFO { DWORD dwSize; /// ????????????? int nMaxInfoNum; /// ???????????????????????? NET_RECORD_MODE_MODIFICATION* pstuInfo; /// ????????????????????, ??????????,?????sizeof(NET_RECORD_MODE_MODIFICATION)*nMaxInfoNum int nRetInfoNum; /// ?????????? char szResvered[4]; /// ?????? }NET_OUT_GET_RECORD_MODE_MODIFY_INFO; ///@brief ??????????????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ??????????, ??????????????????? ///@param[out] pstuOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetRecordModeModifyInfo(LLONG lLoginID, const NET_IN_GET_RECORD_MODE_MODIFY_INFO* pstuInParam, NET_OUT_GET_RECORD_MODE_MODIFY_INFO* pstuOutParam,int nWaitTime); ///@brief ??????????????????? typedef struct tagNET_ENV_WAVE_FROM_DATA { UINT nSignalNum; /// ?????????? UINT nSignal[64]; /// ????????7.6MHZ??8.7MHZ??????????????????0~255 UINT nNoiseNum; /// ???????? UINT nNoise[64]; /// ??????7.6MHZ??8.7MHZ??????????????????0~255 UINT nThresholdNum; /// ??????? UINT nThreshold[64]; /// ?????7.6MHZ??8.7MHZ??????????????????0~255 char szReserved[1024]; /// ?????? }NET_ENV_WAVE_FROM_DATA; ///@brief EAS???????? typedef struct tagNET_EAS_WAVE_INFO { UINT nDeviceChannel; /// EAS????????0??? UINT nEnvWavefromDataNum; /// ??????????????????????? NET_ENV_WAVE_FROM_DATA stEnvWavefromData[64]; /// ??????????????????? ???0 -- ???1 ???1 -- ???2 ???3 -- ???3 char szReserved[2048]; /// ?????? }NET_EAS_WAVE_INFO; ///@brief ???????EAS??????????? typedef struct tagNET_CB_EAS_WAVE_INFO { UINT nSID; /// ??????????ID?? UINT nInfoNum; /// EAS???????????? NET_EAS_WAVE_INFO stInfo[64]; /// EAS???????? char szReserved[2048]; /// ?????? }NET_CB_EAS_WAVE_INFO; ///@brief EAS?????????????? ///@param[out] lAttachHandle ?????? ///@param[out] pstEASWaveInfo EAS??????????? ///@param[out] dwUser ?????? ///@return void typedef void (CALLBACK* fNotifyEASWaveInfo)(LLONG lAttachHandle, NET_CB_EAS_WAVE_INFO* pstEASWaveInfo, LDWORD dwUser); ///@brief ????EAS????????????? typedef struct tagNET_ENV_WAVE_FROM_DATA_CHANNEL { int nDeviceChannel; /// EAS??????-1??????????????-1??????????A???1. char szReserved[1020]; /// ?????? }NET_ENV_WAVE_FROM_DATA_CHANNEL; ///@brief CLIENT_AttachEASEnvWaveFromData ??? typedef struct tagNET_IN_ATTACH_ENV_WAVE_FROM_DATA { DWORD dwSize; /// ??????? UINT nInfoNum; /// EAS???????????? NET_ENV_WAVE_FROM_DATA_CHANNEL stInfo[64]; /// ????EAS????????????? fNotifyEASWaveInfo cbNotifyEASWaveInfo; /// ??????? LDWORD dwUser; /// ??????????? }NET_IN_ATTACH_ENV_WAVE_FROM_DATA; ///@brief CLIENT_AttachEASEnvWaveFromData ???? typedef struct tagNET_OUT_ATTACH_ENV_WAVE_FROM_DATA { DWORD dwSize; /// ??????? }NET_OUT_ATTACH_ENV_WAVE_FROM_DATA; ///@brief ????EAS?????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return ?????? CLIENT_NET_API LLONG CALL_METHOD CLIENT_AttachEASEnvWaveFromData(LLONG lLoginID, const NET_IN_ATTACH_ENV_WAVE_FROM_DATA* pstInParam, NET_OUT_ATTACH_ENV_WAVE_FROM_DATA* pstOutParam, int nWaitTime); ///@brief ???????EAS?????????? ///@param[in] lAttachHandle ?????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_DetachEASEnvWaveFromData(LLONG lAttachHandle); ///@brief ????????????????? typedef struct tagNET_ALARM_INFO_ALARM_TEST_DEVICE_INFO { int nDeviceChannel; /// ????EAS?????????????????????????????EAS???????????-1???????EAS???????????-1??????????A???1. char szReserved[2048]; /// ?????? }NET_ALARM_INFO_ALARM_TEST_DEVICE_INFO; ///@brief CLIENT_EASAlarmInfoAlarmTest ??? typedef struct tagNET_IN_ALARM_INFO_ALARM_TEST_DEVICE_INFO { DWORD dwSize; /// ??????? UINT nInfoNum; /// ?????????? NET_ALARM_INFO_ALARM_TEST_DEVICE_INFO* pstInfo; /// ?????? }NET_IN_ALARM_INFO_ALARM_TEST_DEVICE_INFO; ///@brief CLIENT_EASAlarmInfoAlarmTest ???? typedef struct tagNET_OUT_ALARM_INFO_ALARM_TEST_DEVICE_INFO { DWORD dwSize; /// ??????? }NET_OUT_ALARM_INFO_ALARM_TEST_DEVICE_INFO; ///@brief ??????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_EASAlarmInfoAlarmTest(LLONG lLoginID, const NET_IN_ALARM_INFO_ALARM_TEST_DEVICE_INFO* pstInParam, NET_OUT_ALARM_INFO_ALARM_TEST_DEVICE_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_FindFaceRecognitionUUID ?????? typedef struct tagNET_IN_FIND_FACE_RECOGNITION_UUID { DWORD dwSize; /// ????????,????? char szGroupID[64]; /// GroupID BOOL bUseRegisterStorageTime; /// ?????RegisterStorageTime??????? NET_TIME stuStartRegisterStorageTime; /// ?????? ????????????????????????????RegisterStorageTime?????????? NET_TIME stuEndRegisterStorageTime; /// ??????? BOOL bUseModifyTime; /// ?????ModifyTime??????? NET_TIME stuStartModifyTime; /// ?????? ????????????????????????????ModifyTime?????????? NET_TIME stuEndModifyTime; /// ??????? }NET_IN_FIND_FACE_RECOGNITION_UUID; ///@brief CLIENT_FindFaceRecognitionUUID ?????? typedef struct tagNET_OUT_FIND_FACE_RECOGNITION_UUID { DWORD dwSize; /// ????????,????? int nUUIDRetCount; /// UUID??????? UUIDArray* pUUID; /// ????????????, ????????????????????nUUIDMaxCount*sizeof(UUIDArray) int nUUIDMaxCount; /// UUID???????? char szResvered[4]; /// ?????? }NET_OUT_FIND_FACE_RECOGNITION_UUID; ///@brief ??????????????UUID ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_FindFaceRecognitionUUID(LLONG lLoginID,const NET_IN_FIND_FACE_RECOGNITION_UUID* pstuInParam, NET_OUT_FIND_FACE_RECOGNITION_UUID* pstuOutParam, int nWaitTime); ///@brief CLIENT_ListVideoOutput ??? typedef struct tagNET_IN_LIST_VIDEO_OUTPUT_INFO { DWORD dwSize; /// ??????? char szPath[260]; /// ??????? }NET_IN_LIST_VIDEO_OUTPUT_INFO; ///@brief ?????? typedef struct tagNET_ELEMEMT_FILE_INFO { char szFileType[64]; /// ?????????? NET_TIME stuCreateTime; /// ??????? NET_TIME stuModifyTime; /// ??????? double dbSize; /// ??????,????????????????????? char szPath[260]; /// ???????? char szReserved1[4]; /// ?????? char szDesc[128]; /// ???????????? char szReserved[1024]; /// ?????? }NET_ELEMEMT_FILE_INFO; ///@brief ????? typedef struct tagNET_ELEMEMT_DIRECTORY_INFO { NET_TIME stuCreateTime; /// ??????? char szPath[260]; /// ???????? char szReserved[1024]; /// ?????? }NET_ELEMEMT_DIRECTORY_INFO; ///@brief ????? typedef enum tagEM_ELEMEMT_TYPE { EM_ELEMEMT_TYPE_UNKNOWN, /// ??? EM_ELEMEMT_TYPE_FILE, /// ??? EM_ELEMEMT_TYPE_DIRECTORY, /// ?? }EM_ELEMEMT_TYPE; ///@brief ????????? typedef struct tagNET_ELEMEMT_INFO { EM_ELEMEMT_TYPE emType; /// ?????????? NET_ELEMEMT_FILE_INFO stuFileInfo; /// ??????,??????????????????? NET_ELEMEMT_DIRECTORY_INFO stuDirectoryInfo; /// ?????,?????????????????? }NET_ELEMEMT_INFO; ///@brief CLIENT_ListVideoOutput ???? typedef struct tagNET_OUT_LIST_VIDEO_OUTPUT_INFO { DWORD dwSize; /// ??????? UINT nElemetInfoNum; /// ????????????????????? NET_ELEMEMT_INFO* pstuElemetInfo; /// ????????????????????????????????????sizeof(NET_ELEMEMT_INFO)*nElemetInfoNum UINT nElemetInfoRetNum; /// ??????????????????????????? }NET_OUT_LIST_VIDEO_OUTPUT_INFO; ///@brief ?????????? ///@param[in] lLoginID ?????? ///@param[in] pstInParam ?????????? ///@param[out] pstOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_ListVideoOutput(LLONG lLoginID, const NET_IN_LIST_VIDEO_OUTPUT_INFO* pstInParam, NET_OUT_LIST_VIDEO_OUTPUT_INFO* pstOutParam, int nWaitTime); ///@brief CLIENT_GetConfigManagerCaps ?????? typedef struct tagNET_IN_GET_CONFIG_MANAGER_CAPS { DWORD dwSize; /// ????????,????? }NET_IN_GET_CONFIG_MANAGER_CAPS; ///@brief CLIENT_GetConfigManagerCaps ?????? typedef struct tagNET_OUT_GET_CONFIG_MANAGER_CAPS { DWORD dwSize; /// ????????,????? int nImportAndExportType; /// ??????????, ?????????????????????, 0:????, 1:???? BOOL bSupportPartExport; /// ???????????? UINT nSupportPartImport; /// ???????????? }NET_OUT_GET_CONFIG_MANAGER_CAPS; ///@brief ????????? ///@param[in] lLoginID ?????? ///@param[in] pstuInParam ?????????? ///@param[out] pstuOutParam ?????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_GetConfigManagerCaps(LLONG lLoginID,const NET_IN_GET_CONFIG_MANAGER_CAPS* pstuInParam, NET_OUT_GET_CONFIG_MANAGER_CAPS* pstuOutParam, int nWaitTime); ///@brief CLIENT_RadiometryGetCurTemperAll ?????? typedef struct tagNET_IN_RADIOMETRY_GET_CUR_TEMPER_ALL_INFO { DWORD dwSize; /// ????????,????? int nChannel; /// ?????????????????? }NET_IN_RADIOMETRY_GET_CUR_TEMPER_ALL_INFO; ///@brief ?????????? typedef struct tagNET_RADIOMETRY_TEMP_INFO { char szType[16]; /// ??????????? char szTemperatureUnit[16]; /// ??????(??????????????) char szName[64]; /// ???????? float fTemperAver; /// ??????????????? float fTemperMax; /// ?????? float fTemperMin; /// ?????? int nPresetId; /// ?????? int nRuleId; /// ?????? UINT nBlackBodySize; /// ?????????????????? char szReserved[1024]; /// ?????? }NET_RADIOMETRY_TEMP_INFO; ///@brief CLIENT_RadiometryGetCurTemperAll ?????? typedef struct tagNET_OUT_RADIOMETRY_GET_CUR_TEMPER_ALL_INFO { DWORD dwSize; /// ????????,????? NET_RADIOMETRY_TEMP_INFO* pstTempInfo; /// ????????????????????????????? UINT nMaxTempInfoNum; /// ?????????????????????????? UINT nRetTempInfoNum; /// ????????????????????????SDK??? }NET_OUT_RADIOMETRY_GET_CUR_TEMPER_ALL_INFO; ///@brief ???????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryGetCurTemperAll(LLONG lLoginID, const NET_IN_RADIOMETRY_GET_CUR_TEMPER_ALL_INFO* pInParam, NET_OUT_RADIOMETRY_GET_CUR_TEMPER_ALL_INFO* pOutParam, int nWaitTime); ///@brief ????????? typedef enum tagEM_RADIOMETRY_TEMPER_TYPE { EM_RADIOMETRY_TEMPER_TYPE_SPOT, /// ?? EM_RADIOMETRY_TEMPER_TYPE_AREA, /// ???? EM_RADIOMETRY_TEMPER_TYPE_LINE, /// ?? }EM_RADIOMETRY_TEMPER_TYPE; ///@brief ????????????????? typedef struct tagNET_RADIOMETRY_GET_TEMPER_CONDITION_INFO { char szName[64]; /// ??????????? int nPresetId; /// ?????? int nRuleId; /// ?????? int nChannel; /// ????? EM_RADIOMETRY_TEMPER_TYPE emType; /// ??????????? char szReserved[1024]; /// ?????? }NET_RADIOMETRY_GET_TEMPER_CONDITION_INFO; ///@brief CLIENT_RadiometryGetTemper ?????? typedef struct tagNET_IN_RADIOMETRY_GET_TEMPER_INFO { DWORD dwSize; /// ????????,????? NET_RADIOMETRY_GET_TEMPER_CONDITION_INFO stCondition; /// ????????????????? }NET_IN_RADIOMETRY_GET_TEMPER_INFO; ///@brief CLIENT_RadiometryGetTemper ?????? typedef struct tagNET_OUT_RADIOMETRY_GET_TEMPER_INFO { DWORD dwSize; /// ????????,????? NET_RADIOMETRY_TEMP_INFO stTempInfo; /// ????????????? }NET_OUT_RADIOMETRY_GET_TEMPER_INFO; ///@brief ????????????????? ///@param[in] lLoginID ?????? ///@param[in] pInParam ??????????, ??????????????????? ///@param[out] pOutParam ??????????, ??????????????????? ///@param[in] nWaitTime ????????, ???????? ///@return TRUE?????? FALSE?????? CLIENT_NET_API BOOL CALL_METHOD CLIENT_RadiometryGetTemper(LLONG lLoginID, const NET_IN_RADIOMETRY_GET_TEMPER_INFO* pInParam, NET_OUT_RADIOMETRY_GET_TEMPER_INFO* pOutParam, int nWaitTime); #ifdef __cplusplus } #endif #endif /// DHNETSDK_H